diff --git a/core/modules/action/action.module b/core/modules/action/action.module
index 7461302..5004a84 100644
--- a/core/modules/action/action.module
+++ b/core/modules/action/action.module
@@ -15,13 +15,13 @@ function action_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.action':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Actions module provides tasks that can be executed by the site such as unpublishing content, sending email messages, or blocking a user. Other modules can trigger these actions when specific system events happen; for example, when new content is posted or when a user logs in. Modules can also provide additional actions. For more information, see the <a href=":documentation">online documentation for the Actions module</a>.', array(':documentation' => 'https://www.drupal.org/documentation/modules/action')) . '</p>';
+      $output .= '<p>' . t('The Actions module provides tasks that can be executed by the site such as unpublishing content, sending email messages, or blocking a user. Other modules can trigger these actions when specific system events happen; for example, when new content is posted or when a user logs in. Modules can also provide additional actions. For more information, see the <a href=":documentation">online documentation for the Actions module</a>.', [':documentation' => 'https://www.drupal.org/documentation/modules/action']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Using simple actions') . '</dt>';
-      $output .= '<dd>' . t('<em>Simple actions</em> do not require configuration and are listed automatically as available on the <a href=":actions">Actions page</a>.', array(':actions' => \Drupal::url('entity.action.collection'))) . '</dd>';
+      $output .= '<dd>' . t('<em>Simple actions</em> do not require configuration and are listed automatically as available on the <a href=":actions">Actions page</a>.', [':actions' => \Drupal::url('entity.action.collection')]) . '</dd>';
       $output .= '<dt>' . t('Creating and configuring advanced actions') . '</dt>';
-      $output .= '<dd>' . t('<em>Advanced actions</em> are user-created and have to be configured individually. Create an advanced action on the <a href=":actions">Actions page</a> by selecting an action type from the drop-down list. Then configure your action, for example by specifying the recipient of an automated email message.', array(':actions' => \Drupal::url('entity.action.collection'))) . '</dd>';
+      $output .= '<dd>' . t('<em>Advanced actions</em> are user-created and have to be configured individually. Create an advanced action on the <a href=":actions">Actions page</a> by selecting an action type from the drop-down list. Then configure your action, for example by specifying the recipient of an automated email message.', [':actions' => \Drupal::url('entity.action.collection')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
diff --git a/core/modules/action/action.views_execution.inc b/core/modules/action/action.views_execution.inc
index 5b4f71f..71b8eeb 100644
--- a/core/modules/action/action.views_execution.inc
+++ b/core/modules/action/action.views_execution.inc
@@ -9,12 +9,12 @@
  * Implements hook_views_form_substitutions().
  */
 function action_views_form_substitutions() {
-  $select_all = array(
+  $select_all = [
     '#type' => 'checkbox',
     '#default_value' => FALSE,
-    '#attributes' => array('class' => array('action-table-select-all')),
-  );
-  return array(
+    '#attributes' => ['class' => ['action-table-select-all']],
+  ];
+  return [
     '<!--action-bulk-form-select-all-->' => drupal_render($select_all),
-  );
+  ];
 }
diff --git a/core/modules/action/src/ActionFormBase.php b/core/modules/action/src/ActionFormBase.php
index 7a5746a..3fafd03 100644
--- a/core/modules/action/src/ActionFormBase.php
+++ b/core/modules/action/src/ActionFormBase.php
@@ -58,32 +58,32 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function form(array $form, FormStateInterface $form_state) {
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#default_value' => $this->entity->label(),
       '#maxlength' => '255',
       '#description' => $this->t('A unique label for this advanced action. This label will be displayed in the interface of modules that integrate with actions.'),
-    );
+    ];
 
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $this->entity->id(),
       '#disabled' => !$this->entity->isNew(),
       '#maxlength' => 64,
       '#description' => $this->t('A unique name for this action. It must only contain lowercase letters, numbers and underscores.'),
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
-      ),
-    );
-    $form['plugin'] = array(
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
+      ],
+    ];
+    $form['plugin'] = [
       '#type' => 'value',
       '#value' => $this->entity->get('plugin'),
-    );
-    $form['type'] = array(
+    ];
+    $form['type'] = [
       '#type' => 'value',
       '#value' => $this->entity->getType(),
-    );
+    ];
 
     if ($this->plugin instanceof PluginFormInterface) {
       $form += $this->plugin->buildConfigurationForm($form, $form_state);
diff --git a/core/modules/action/src/ActionListBuilder.php b/core/modules/action/src/ActionListBuilder.php
index 0a54cd6..2167d8e 100644
--- a/core/modules/action/src/ActionListBuilder.php
+++ b/core/modules/action/src/ActionListBuilder.php
@@ -86,10 +86,10 @@ public function buildRow(EntityInterface $entity) {
    * {@inheritdoc}
    */
   public function buildHeader() {
-    $header = array(
+    $header = [
       'type' => t('Action type'),
       'label' => t('Label'),
-    ) + parent::buildHeader();
+    ] + parent::buildHeader();
     return $header;
   }
 
@@ -97,7 +97,7 @@ public function buildHeader() {
    * {@inheritdoc}
    */
   public function getDefaultOperations(EntityInterface $entity) {
-    $operations = $entity->isConfigurable() ? parent::getDefaultOperations($entity) : array();
+    $operations = $entity->isConfigurable() ? parent::getDefaultOperations($entity) : [];
     if (isset($operations['edit'])) {
       $operations['edit']['title'] = t('Configure');
     }
diff --git a/core/modules/action/src/Form/ActionAdminManageForm.php b/core/modules/action/src/Form/ActionAdminManageForm.php
index de48755..478e919 100644
--- a/core/modules/action/src/Form/ActionAdminManageForm.php
+++ b/core/modules/action/src/Form/ActionAdminManageForm.php
@@ -50,33 +50,33 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $actions = array();
+    $actions = [];
     foreach ($this->manager->getDefinitions() as $id => $definition) {
       if (is_subclass_of($definition['class'], '\Drupal\Core\Plugin\PluginFormInterface')) {
         $key = Crypt::hashBase64($id);
         $actions[$key] = $definition['label'] . '...';
       }
     }
-    $form['parent'] = array(
+    $form['parent'] = [
       '#type' => 'details',
       '#title' => $this->t('Create an advanced action'),
-      '#attributes' => array('class' => array('container-inline')),
+      '#attributes' => ['class' => ['container-inline']],
       '#open' => TRUE,
-    );
-    $form['parent']['action'] = array(
+    ];
+    $form['parent']['action'] = [
       '#type' => 'select',
       '#title' => $this->t('Action'),
       '#title_display' => 'invisible',
       '#options' => $actions,
       '#empty_option' => $this->t('Choose an advanced action'),
-    );
-    $form['parent']['actions'] = array(
+    ];
+    $form['parent']['actions'] = [
       '#type' => 'actions'
-    );
-    $form['parent']['actions']['submit'] = array(
+    ];
+    $form['parent']['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Create'),
-    );
+    ];
     return $form;
   }
 
@@ -87,7 +87,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form_state->getValue('action')) {
       $form_state->setRedirect(
         'action.admin_add',
-        array('action_id' => $form_state->getValue('action'))
+        ['action_id' => $form_state->getValue('action')]
       );
     }
   }
diff --git a/core/modules/action/src/Plugin/Action/EmailAction.php b/core/modules/action/src/Plugin/Action/EmailAction.php
index f238279..0f469ec 100644
--- a/core/modules/action/src/Plugin/Action/EmailAction.php
+++ b/core/modules/action/src/Plugin/Action/EmailAction.php
@@ -129,7 +129,7 @@ public function execute($entity = NULL) {
     // If the recipient is a registered user with a language preference, use
     // the recipient's preferred language. Otherwise, use the system default
     // language.
-    $recipient_accounts = $this->storage->loadByProperties(array('mail' => $recipient));
+    $recipient_accounts = $this->storage->loadByProperties(['mail' => $recipient]);
     $recipient_account = reset($recipient_accounts);
     if ($recipient_account) {
       $langcode = $recipient_account->getPreferredLangcode();
@@ -137,13 +137,13 @@ public function execute($entity = NULL) {
     else {
       $langcode = $this->languageManager->getDefaultLanguage()->getId();
     }
-    $params = array('context' => $this->configuration);
+    $params = ['context' => $this->configuration];
 
     if ($this->mailManager->mail('system', 'action_send_email', $recipient, $langcode, $params)) {
-      $this->logger->notice('Sent email to %recipient', array('%recipient' => $recipient));
+      $this->logger->notice('Sent email to %recipient', ['%recipient' => $recipient]);
     }
     else {
-      $this->logger->error('Unable to send email to %recipient', array('%recipient' => $recipient));
+      $this->logger->error('Unable to send email to %recipient', ['%recipient' => $recipient]);
     }
   }
 
@@ -151,39 +151,39 @@ public function execute($entity = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'recipient' => '',
       'subject' => '',
       'message' => '',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['recipient'] = array(
+    $form['recipient'] = [
       '#type' => 'textfield',
       '#title' => t('Recipient email address'),
       '#default_value' => $this->configuration['recipient'],
       '#maxlength' => '254',
       '#description' => t('You may also use tokens: [node:author:mail], [comment:author:mail], etc. Separate recipients with a comma.'),
-    );
-    $form['subject'] = array(
+    ];
+    $form['subject'] = [
       '#type' => 'textfield',
       '#title' => t('Subject'),
       '#default_value' => $this->configuration['subject'],
       '#maxlength' => '254',
       '#description' => t('The subject of the message.'),
-    );
-    $form['message'] = array(
+    ];
+    $form['message'] = [
       '#type' => 'textarea',
       '#title' => t('Message'),
       '#default_value' => $this->configuration['message'],
       '#cols' => '80',
       '#rows' => '20',
       '#description' => t('The message that should be sent. You may include placeholders like [node:title], [user:account-name], [user:display-name] and [comment:body] to represent data that will be different each time message is sent. Not all placeholders will be available in all contexts.'),
-    );
+    ];
     return $form;
   }
 
@@ -193,7 +193,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
   public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
     if (!$this->emailValidator->isValid($form_state->getValue('recipient')) && strpos($form_state->getValue('recipient'), ':mail') === FALSE) {
       // We want the literal %author placeholder to be emphasized in the error message.
-      $form_state->setErrorByName('recipient', t('Enter a valid email address or use a token email address such as %author.', array('%author' => '[node:author:mail]')));
+      $form_state->setErrorByName('recipient', t('Enter a valid email address or use a token email address such as %author.', ['%author' => '[node:author:mail]']));
     }
   }
 
diff --git a/core/modules/action/src/Plugin/Action/GotoAction.php b/core/modules/action/src/Plugin/Action/GotoAction.php
index 5c1b552..44e871b 100644
--- a/core/modules/action/src/Plugin/Action/GotoAction.php
+++ b/core/modules/action/src/Plugin/Action/GotoAction.php
@@ -103,22 +103,22 @@ public function execute($object = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'url' => '',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['url'] = array(
+    $form['url'] = [
       '#type' => 'textfield',
       '#title' => t('URL'),
-      '#description' => t('The URL to which the user should be redirected. This can be an internal URL like /node/1234 or an external URL like @url.', array('@url' => 'http://example.com')),
+      '#description' => t('The URL to which the user should be redirected. This can be an internal URL like /node/1234 or an external URL like @url.', ['@url' => 'http://example.com']),
       '#default_value' => $this->configuration['url'],
       '#required' => TRUE,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/action/src/Plugin/Action/MessageAction.php b/core/modules/action/src/Plugin/Action/MessageAction.php
index ab32b4c..c85d249 100644
--- a/core/modules/action/src/Plugin/Action/MessageAction.php
+++ b/core/modules/action/src/Plugin/Action/MessageAction.php
@@ -84,23 +84,23 @@ public function execute($entity = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'message' => '',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['message'] = array(
+    $form['message'] = [
       '#type' => 'textarea',
       '#title' => t('Message'),
       '#default_value' => $this->configuration['message'],
       '#required' => TRUE,
       '#rows' => '8',
       '#description' => t('The message to be displayed to the current user. You may include placeholders like [node:title], [user:account-name], [user:display-name] and [comment:body] to represent data that will be different each time message is sent. Not all placeholders will be available in all contexts.'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/action/src/Plugin/migrate/source/Action.php b/core/modules/action/src/Plugin/migrate/source/Action.php
index e983b00..ac14a44 100644
--- a/core/modules/action/src/Plugin/migrate/source/Action.php
+++ b/core/modules/action/src/Plugin/migrate/source/Action.php
@@ -27,12 +27,12 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'aid' => $this->t('Action ID'),
       'type' => $this->t('Module'),
       'callback' => $this->t('Callback function'),
       'parameters' => $this->t('Action configuration'),
-    );
+    ];
     if ($this->getModuleSchemaVersion('system') >= 7000) {
       $fields['label'] = $this->t('Label of the action');
     }
diff --git a/core/modules/action/tests/src/Functional/ActionListTest.php b/core/modules/action/tests/src/Functional/ActionListTest.php
index 2510e86..309160f 100644
--- a/core/modules/action/tests/src/Functional/ActionListTest.php
+++ b/core/modules/action/tests/src/Functional/ActionListTest.php
@@ -16,7 +16,7 @@ class ActionListTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('action');
+  public static $modules = ['action'];
 
   /**
    * Tests the behavior when there are no actions to list in the admin page.
diff --git a/core/modules/action/tests/src/Functional/ActionUninstallTest.php b/core/modules/action/tests/src/Functional/ActionUninstallTest.php
index 93e0bc0..6b52643 100644
--- a/core/modules/action/tests/src/Functional/ActionUninstallTest.php
+++ b/core/modules/action/tests/src/Functional/ActionUninstallTest.php
@@ -17,19 +17,19 @@ class ActionUninstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'action');
+  public static $modules = ['views', 'action'];
 
   /**
    * Tests Action uninstall.
    */
   public function testActionUninstall() {
-    \Drupal::service('module_installer')->uninstall(array('action'));
+    \Drupal::service('module_installer')->uninstall(['action']);
 
     $storage = $this->container->get('entity_type.manager')->getStorage('action');
     $storage->resetCache(['user_block_user_action']);
     $this->assertTrue($storage->load('user_block_user_action'), 'Configuration entity \'user_block_user_action\' still exists after uninstalling action module.' );
 
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('admin/people');
diff --git a/core/modules/action/tests/src/Functional/BulkFormTest.php b/core/modules/action/tests/src/Functional/BulkFormTest.php
index 7d32b94..439ffe4 100644
--- a/core/modules/action/tests/src/Functional/BulkFormTest.php
+++ b/core/modules/action/tests/src/Functional/BulkFormTest.php
@@ -18,7 +18,7 @@ class BulkFormTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'action_bulk_test');
+  public static $modules = ['node', 'action_bulk_test'];
 
   /**
    * Tests the bulk form.
@@ -31,30 +31,30 @@ public function testBulkForm() {
     $this->drupalGet('test_bulk_form_empty');
     $this->assertText(t('This view is empty.'), 'Empty text found on empty bulk form.');
 
-    $nodes = array();
+    $nodes = [];
     for ($i = 0; $i < 10; $i++) {
       // Ensure nodes are sorted in the same order they are inserted in the
       // array.
       $timestamp = REQUEST_TIME - $i;
-      $nodes[] = $this->drupalCreateNode(array(
+      $nodes[] = $this->drupalCreateNode([
         'sticky' => FALSE,
         'created' => $timestamp,
         'changed' => $timestamp,
-      ));
+      ]);
     }
 
     $this->drupalGet('test_bulk_form');
 
     // Test that the views edit header appears first.
-    $first_form_element = $this->xpath('//form/div[1][@id = :id]', array(':id' => 'edit-header'));
+    $first_form_element = $this->xpath('//form/div[1][@id = :id]', [':id' => 'edit-header']);
     $this->assertTrue($first_form_element, 'The views form edit header appears first.');
 
     $this->assertFieldById('edit-action', NULL, 'The action select field appears.');
 
     // Make sure a checkbox appears on all rows.
-    $edit = array();
+    $edit = [];
     for ($i = 0; $i < 10; $i++) {
-      $this->assertFieldById('edit-node-bulk-form-' . $i, NULL, format_string('The checkbox on row @row appears.', array('@row' => $i)));
+      $this->assertFieldById('edit-node-bulk-form-' . $i, NULL, format_string('The checkbox on row @row appears.', ['@row' => $i]));
       $edit["node_bulk_form[$i]"] = TRUE;
     }
 
@@ -67,12 +67,12 @@ public function testBulkForm() {
     $this->drupalGet('test_bulk_form');
 
     // Set all nodes to sticky and check that.
-    $edit += array('action' => 'node_make_sticky_action');
+    $edit += ['action' => 'node_make_sticky_action'];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
 
     foreach ($nodes as $node) {
       $changed_node = $node_storage->load($node->id());
-      $this->assertTrue($changed_node->isSticky(), format_string('Node @nid got marked as sticky.', array('@nid' => $node->id())));
+      $this->assertTrue($changed_node->isSticky(), format_string('Node @nid got marked as sticky.', ['@nid' => $node->id()]));
     }
 
     $this->assertText('Make content sticky was applied to 10 items.');
@@ -81,18 +81,18 @@ public function testBulkForm() {
     $node = $node_storage->load($nodes[0]->id());
     $this->assertTrue($node->isPublished(), 'The node is published.');
 
-    $edit = array('node_bulk_form[0]' => TRUE, 'action' => 'node_unpublish_action');
+    $edit = ['node_bulk_form[0]' => TRUE, 'action' => 'node_unpublish_action'];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
 
     $this->assertText('Unpublish content was applied to 1 item.');
 
     // Load the node again.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node = $node_storage->load($node->id());
     $this->assertFalse($node->isPublished(), 'A single node has been unpublished.');
 
     // The second node should still be published.
-    $node_storage->resetCache(array($nodes[1]->id()));
+    $node_storage->resetCache([$nodes[1]->id()]);
     $node = $node_storage->load($nodes[1]->id());
     $this->assertTrue($node->isPublished(), 'An unchecked node is still published.');
 
@@ -105,7 +105,7 @@ public function testBulkForm() {
     $view->save();
 
     $this->drupalGet('test_bulk_form');
-    $options = $this->xpath('//select[@id=:id]/option', array(':id' => 'edit-action'));
+    $options = $this->xpath('//select[@id=:id]/option', [':id' => 'edit-action']);
     $this->assertEqual(count($options), 2);
     $this->assertOption('edit-action', 'node_make_sticky_action');
     $this->assertOption('edit-action', 'node_make_unsticky_action');
@@ -137,17 +137,17 @@ public function testBulkForm() {
 
     $this->drupalGet('test_bulk_form');
     // Call the node delete action.
-    $edit = array();
+    $edit = [];
     for ($i = 0; $i < 5; $i++) {
       $edit["node_bulk_form[$i]"] = TRUE;
     }
-    $edit += array('action' => 'node_delete_action');
+    $edit += ['action' => 'node_delete_action'];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     // Make sure we don't show an action message while we are still on the
     // confirmation page.
     $errors = $this->xpath('//div[contains(@class, "messages--status")]');
     $this->assertFalse($errors, 'No action message shown.');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->assertText(t('Deleted 5 posts.'));
     // Check if we got redirected to the original page.
     $this->assertUrl('test_bulk_form');
diff --git a/core/modules/action/tests/src/Functional/ConfigurationTest.php b/core/modules/action/tests/src/Functional/ConfigurationTest.php
index 23d0a38..063e4a8 100644
--- a/core/modules/action/tests/src/Functional/ConfigurationTest.php
+++ b/core/modules/action/tests/src/Functional/ConfigurationTest.php
@@ -19,24 +19,24 @@ class ConfigurationTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('action');
+  public static $modules = ['action'];
 
   /**
    * Tests configuration of advanced actions through administration interface.
    */
   function testActionConfiguration() {
     // Create a user with permission to view the actions administration pages.
-    $user = $this->drupalCreateUser(array('administer actions'));
+    $user = $this->drupalCreateUser(['administer actions']);
     $this->drupalLogin($user);
 
     // Make a POST request to admin/config/system/actions.
-    $edit = array();
+    $edit = [];
     $edit['action'] = Crypt::hashBase64('action_goto_action');
     $this->drupalPostForm('admin/config/system/actions', $edit, t('Create'));
     $this->assertResponse(200);
 
     // Make a POST request to the individual action configuration page.
-    $edit = array();
+    $edit = [];
     $action_label = $this->randomMachineName();
     $edit['label'] = $action_label;
     $edit['id'] = strtolower($action_label);
@@ -52,7 +52,7 @@ function testActionConfiguration() {
     $this->clickLink(t('Configure'));
     preg_match('|admin/config/system/actions/configure/(.+)|', $this->getUrl(), $matches);
     $aid = $matches[1];
-    $edit = array();
+    $edit = [];
     $new_action_label = $this->randomMachineName();
     $edit['label'] = $new_action_label;
     $edit['url'] = 'admin';
@@ -72,12 +72,12 @@ function testActionConfiguration() {
     $this->drupalGet('admin/config/system/actions');
     $this->clickLink(t('Delete'));
     $this->assertResponse(200);
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm("admin/config/system/actions/configure/$aid/delete", $edit, t('Delete'));
     $this->assertResponse(200);
 
     // Make sure that the action was actually deleted.
-    $this->assertRaw(t('The action %action has been deleted.', array('%action' => $new_action_label)), 'Make sure that we get a delete confirmation message.');
+    $this->assertRaw(t('The action %action has been deleted.', ['%action' => $new_action_label]), 'Make sure that we get a delete confirmation message.');
     $this->drupalGet('admin/config/system/actions');
     $this->assertResponse(200);
     $this->assertNoText($new_action_label, "Make sure the action label does not appear on the overview page after we've deleted the action.");
diff --git a/core/modules/action/tests/src/Unit/Menu/ActionLocalTasksTest.php b/core/modules/action/tests/src/Unit/Menu/ActionLocalTasksTest.php
index 34d24b1..1959f65 100644
--- a/core/modules/action/tests/src/Unit/Menu/ActionLocalTasksTest.php
+++ b/core/modules/action/tests/src/Unit/Menu/ActionLocalTasksTest.php
@@ -12,7 +12,7 @@
 class ActionLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('action' => 'core/modules/action');
+    $this->directoryList = ['action' => 'core/modules/action'];
     parent::setUp();
   }
 
@@ -20,7 +20,7 @@ protected function setUp() {
    * Tests local task existence.
    */
   public function testActionLocalTasks() {
-    $this->assertLocalTasks('entity.action.collection', array(array('action.admin')));
+    $this->assertLocalTasks('entity.action.collection', [['action.admin']]);
   }
 
 }
diff --git a/core/modules/aggregator/aggregator.install b/core/modules/aggregator/aggregator.install
index 5edc503..9e05400 100644
--- a/core/modules/aggregator/aggregator.install
+++ b/core/modules/aggregator/aggregator.install
@@ -10,11 +10,11 @@
  */
 function aggregator_requirements($phase) {
   $has_curl = function_exists('curl_init');
-  $requirements = array();
-  $requirements['curl'] = array(
+  $requirements = [];
+  $requirements['curl'] = [
     'title' => t('cURL'),
     'value' => $has_curl ? t('Enabled') : t('Not found'),
-  );
+  ];
   if (!$has_curl) {
     $requirements['curl']['severity'] = REQUIREMENT_ERROR;
     $requirements['curl']['description'] = t('The Aggregator module requires the <a href="https://secure.php.net/manual/en/curl.setup.php">PHP cURL library</a>. For more information, see the <a href="https://www.drupal.org/requirements/php/curl">online information on installing the PHP cURL extension</a>.');
diff --git a/core/modules/aggregator/aggregator.module b/core/modules/aggregator/aggregator.module
index cf32734..0f856e3 100644
--- a/core/modules/aggregator/aggregator.module
+++ b/core/modules/aggregator/aggregator.module
@@ -25,35 +25,35 @@ function aggregator_help($route_name, RouteMatchInterface $route_match) {
       $path_validator = \Drupal::pathValidator();
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Aggregator module is an on-site syndicator and news reader that gathers and displays fresh content from RSS-, RDF-, and Atom-based feeds made available across the web. Thousands of sites (particularly news sites and blogs) publish their latest headlines in feeds, using a number of standardized XML-based formats. For more information, see the <a href=":aggregator-module">online documentation for the Aggregator module</a>.', array(':aggregator-module' => 'https://www.drupal.org/documentation/modules/aggregator')) . '</p>';
+      $output .= '<p>' . t('The Aggregator module is an on-site syndicator and news reader that gathers and displays fresh content from RSS-, RDF-, and Atom-based feeds made available across the web. Thousands of sites (particularly news sites and blogs) publish their latest headlines in feeds, using a number of standardized XML-based formats. For more information, see the <a href=":aggregator-module">online documentation for the Aggregator module</a>.', [':aggregator-module' => 'https://www.drupal.org/documentation/modules/aggregator']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       // Check if the aggregator sources View is enabled.
       if ($url = $path_validator->getUrlIfValid('aggregator/sources')) {
         $output .= '<dt>' . t('Viewing feeds') . '</dt>';
-        $output .= '<dd>' . t('Users view feed content in the <a href=":aggregator">main aggregator display</a>, or by <a href=":aggregator-sources">their source</a> (usually via an RSS feed reader). The most recent content in a feed can be displayed as a block through the <a href=":admin-block">Blocks administration page</a>.', array(':aggregator' => \Drupal::url('aggregator.page_last'), ':aggregator-sources' => $url->toString(), ':admin-block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+        $output .= '<dd>' . t('Users view feed content in the <a href=":aggregator">main aggregator display</a>, or by <a href=":aggregator-sources">their source</a> (usually via an RSS feed reader). The most recent content in a feed can be displayed as a block through the <a href=":admin-block">Blocks administration page</a>.', [':aggregator' => \Drupal::url('aggregator.page_last'), ':aggregator-sources' => $url->toString(), ':admin-block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       }
       $output .= '<dt>' . t('Adding, editing, and deleting feeds') . '</dt>';
-      $output .= '<dd>' . t('Administrators can add, edit, and delete feeds, and choose how often to check each feed for newly updated items on the <a href=":feededit">Aggregator administration page</a>.', array(':feededit' => \Drupal::url('aggregator.admin_overview'))) . '</dd>';
+      $output .= '<dd>' . t('Administrators can add, edit, and delete feeds, and choose how often to check each feed for newly updated items on the <a href=":feededit">Aggregator administration page</a>.', [':feededit' => \Drupal::url('aggregator.admin_overview')]) . '</dd>';
       $output .= '<dt>' . t('Configuring the display of feed items') . '</dt>';
-      $output .= '<dd>' . t('Administrators can choose how many items are displayed in the listing pages, which HTML tags are allowed in the content of feed items, and whether they should be trimmed to a maximum number of characters on the <a href=":settings">Aggregator settings page</a>.', array(':settings' => \Drupal::url('aggregator.admin_settings'))) . '</dd>';
+      $output .= '<dd>' . t('Administrators can choose how many items are displayed in the listing pages, which HTML tags are allowed in the content of feed items, and whether they should be trimmed to a maximum number of characters on the <a href=":settings">Aggregator settings page</a>.', [':settings' => \Drupal::url('aggregator.admin_settings')]) . '</dd>';
       $output .= '<dt>' . t('Discarding old feed items') . '</dt>';
-      $output .= '<dd>' . t('Administrators can choose whether to discard feed items that are older than a specified period of time on the <a href=":settings">Aggregator settings page</a>. This requires a correctly configured cron maintenance task (see below).', array(':settings' => \Drupal::url('aggregator.admin_settings'))) . '<dd>';
+      $output .= '<dd>' . t('Administrators can choose whether to discard feed items that are older than a specified period of time on the <a href=":settings">Aggregator settings page</a>. This requires a correctly configured cron maintenance task (see below).', [':settings' => \Drupal::url('aggregator.admin_settings')]) . '<dd>';
 
       $output .= '<dt>' . t('<abbr title="Outline Processor Markup Language">OPML</abbr> integration') . '</dt>';
       // Check if the aggregator opml View is enabled.
       if ($url = $path_validator->getUrlIfValid('aggregator/opml')) {
-        $output .= '<dd>' . t('A <a href=":aggregator-opml">machine-readable OPML file</a> of all feeds is available. OPML is an XML-based file format used to share outline-structured information such as a list of RSS feeds. Feeds can also be <a href=":import-opml">imported via an OPML file</a>.', array(':aggregator-opml' => $url->toString(), ':import-opml' => \Drupal::url('aggregator.opml_add'))) . '</dd>';
+        $output .= '<dd>' . t('A <a href=":aggregator-opml">machine-readable OPML file</a> of all feeds is available. OPML is an XML-based file format used to share outline-structured information such as a list of RSS feeds. Feeds can also be <a href=":import-opml">imported via an OPML file</a>.', [':aggregator-opml' => $url->toString(), ':import-opml' => \Drupal::url('aggregator.opml_add')]) . '</dd>';
       }
       $output .= '<dt>' . t('Configuring cron') . '</dt>';
-      $output .= '<dd>' . t('A working <a href=":cron">cron maintenance task</a> is required to update feeds automatically.', array(':cron' => \Drupal::url('system.cron_settings'))) . '</dd>';
+      $output .= '<dd>' . t('A working <a href=":cron">cron maintenance task</a> is required to update feeds automatically.', [':cron' => \Drupal::url('system.cron_settings')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
     case 'aggregator.admin_overview':
       // Don't use placeholders for possibility to change URLs for translators.
       $output = '<p>' . t('Many sites publish their headlines and posts in feeds, using a number of standardized XML-based formats. The aggregator supports <a href="http://en.wikipedia.org/wiki/Rss">RSS</a>, <a href="http://en.wikipedia.org/wiki/Resource_Description_Framework">RDF</a>, and <a href="http://en.wikipedia.org/wiki/Atom_%28standard%29">Atom</a>.') . '</p>';
-      $output .= '<p>' . t('Current feeds are listed below, and <a href=":addfeed">new feeds may be added</a>. For each feed, the <em>latest items</em> block may be enabled at the <a href=":block">blocks administration page</a>.', array(':addfeed' => \Drupal::url('aggregator.feed_add'), ':block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</p>';
+      $output .= '<p>' . t('Current feeds are listed below, and <a href=":addfeed">new feeds may be added</a>. For each feed, the <em>latest items</em> block may be enabled at the <a href=":block">blocks administration page</a>.', [':addfeed' => \Drupal::url('aggregator.feed_add'), ':block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</p>';
       return $output;
 
     case 'aggregator.feed_add':
@@ -68,66 +68,66 @@ function aggregator_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function aggregator_theme() {
-  return array(
-    'aggregator_feed' => array(
+  return [
+    'aggregator_feed' => [
       'render element' => 'elements',
       'file' => 'aggregator.theme.inc',
-    ),
-    'aggregator_item' => array(
+    ],
+    'aggregator_item' => [
       'render element' => 'elements',
       'file' => 'aggregator.theme.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
  * Implements hook_entity_extra_field_info().
  */
 function aggregator_entity_extra_field_info() {
-  $extra = array();
+  $extra = [];
 
-  $extra['aggregator_feed']['aggregator_feed'] = array(
-    'display' => array(
-      'items' => array(
+  $extra['aggregator_feed']['aggregator_feed'] = [
+    'display' => [
+      'items' => [
         'label' => t('Items'),
         'description' => t('Items associated with this feed'),
         'weight' => 0,
-      ),
+      ],
       // @todo Move to a formatter at https://www.drupal.org/node/2339917.
-      'image' => array(
+      'image' => [
         'label' => t('Image'),
         'description' => t('The feed image'),
         'weight' => 2,
-      ),
+      ],
       // @todo Move to a formatter at https://www.drupal.org/node/2149845.
-      'description' => array(
+      'description' => [
         'label' => t('Description'),
         'description' => t('The description of this feed'),
         'weight' => 3,
-      ),
-      'more_link' => array(
+      ],
+      'more_link' => [
         'label' => t('More link'),
         'description' => t('A more link to the feed detail page'),
         'weight' => 5,
-      ),
-      'feed_icon' => array(
+      ],
+      'feed_icon' => [
         'label' => t('Feed icon'),
         'description' => t('An icon that links to the feed URL'),
         'weight' => 6,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
-  $extra['aggregator_item']['aggregator_item'] = array(
-    'display' => array(
+  $extra['aggregator_item']['aggregator_item'] = [
+    'display' => [
       // @todo Move to a formatter at https://www.drupal.org/node/2149845.
-      'description' => array(
+      'description' => [
         'label' => t('Description'),
         'description' => t('The description of this feed item'),
         'weight' => 2,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   return $extra;
 }
diff --git a/core/modules/aggregator/src/AggregatorFeedViewsData.php b/core/modules/aggregator/src/AggregatorFeedViewsData.php
index 2eb0d34..b47f837 100644
--- a/core/modules/aggregator/src/AggregatorFeedViewsData.php
+++ b/core/modules/aggregator/src/AggregatorFeedViewsData.php
@@ -15,12 +15,12 @@ class AggregatorFeedViewsData extends EntityViewsData {
   public function getViewsData() {
     $data = parent::getViewsData();
 
-    $data['aggregator_feed']['table']['join'] = array(
-      'aggregator_item' => array(
+    $data['aggregator_feed']['table']['join'] = [
+      'aggregator_item' => [
         'left_field' => 'fid',
         'field' => 'fid',
-      ),
-    );
+      ],
+    ];
 
     $data['aggregator_feed']['fid']['help'] = $this->t('The unique ID of the aggregator feed.');
     $data['aggregator_feed']['fid']['argument']['id'] = 'aggregator_fid';
diff --git a/core/modules/aggregator/src/Controller/AggregatorController.php b/core/modules/aggregator/src/Controller/AggregatorController.php
index c84fb18..021e4d1 100644
--- a/core/modules/aggregator/src/Controller/AggregatorController.php
+++ b/core/modules/aggregator/src/Controller/AggregatorController.php
@@ -48,9 +48,9 @@ public static function create(ContainerInterface $container) {
    */
   public function feedAdd() {
     $feed = $this->entityManager()->getStorage('aggregator_feed')
-      ->create(array(
+      ->create([
         'refresh' => 3600,
-      ));
+      ]);
     return $this->entityFormBuilder()->getForm($feed);
   }
 
@@ -67,15 +67,15 @@ public function feedAdd() {
    */
   protected function buildPageList(array $items, $feed_source = '') {
     // Assemble output.
-    $build = array(
+    $build = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('aggregator-wrapper')),
-    );
-    $build['feed_source'] = is_array($feed_source) ? $feed_source : array('#markup' => $feed_source);
+      '#attributes' => ['class' => ['aggregator-wrapper']],
+    ];
+    $build['feed_source'] = is_array($feed_source) ? $feed_source : ['#markup' => $feed_source];
     if ($items) {
       $build['items'] = $this->entityManager()->getViewBuilder('aggregator_item')
         ->viewMultiple($items, 'default');
-      $build['pager'] = array('#type' => 'pager');
+      $build['pager'] = ['#type' => 'pager'];
     }
     return $build;
   }
@@ -94,8 +94,8 @@ protected function buildPageList(array $items, $feed_source = '') {
    */
   public function feedRefresh(FeedInterface $aggregator_feed) {
     $message = $aggregator_feed->refreshItems()
-      ? $this->t('There is new syndicated content from %site.', array('%site' => $aggregator_feed->label()))
-      : $this->t('There is no new syndicated content from %site.', array('%site' => $aggregator_feed->label()));
+      ? $this->t('There is new syndicated content from %site.', ['%site' => $aggregator_feed->label()])
+      : $this->t('There is no new syndicated content from %site.', ['%site' => $aggregator_feed->label()]);
     drupal_set_message($message);
     return $this->redirect('aggregator.admin_overview');
   }
@@ -111,22 +111,22 @@ public function adminOverview() {
     $feeds = $entity_manager->getStorage('aggregator_feed')
       ->loadMultiple();
 
-    $header = array($this->t('Title'), $this->t('Items'), $this->t('Last update'), $this->t('Next update'), $this->t('Operations'));
-    $rows = array();
+    $header = [$this->t('Title'), $this->t('Items'), $this->t('Last update'), $this->t('Next update'), $this->t('Operations')];
+    $rows = [];
     /** @var \Drupal\aggregator\FeedInterface[] $feeds */
     foreach ($feeds as $feed) {
-      $row = array();
+      $row = [];
       $row[] = $feed->link();
       $row[] = $this->formatPlural($entity_manager->getStorage('aggregator_item')->getItemCount($feed), '1 item', '@count items');
       $last_checked = $feed->getLastCheckedTime();
       $refresh_rate = $feed->getRefreshRate();
 
-      $row[] = ($last_checked ? $this->t('@time ago', array('@time' => $this->dateFormatter->formatInterval(REQUEST_TIME - $last_checked))) : $this->t('never'));
+      $row[] = ($last_checked ? $this->t('@time ago', ['@time' => $this->dateFormatter->formatInterval(REQUEST_TIME - $last_checked)]) : $this->t('never'));
       if (!$last_checked && $refresh_rate) {
         $next_update = $this->t('imminently');
       }
       elseif ($last_checked && $refresh_rate) {
-        $next_update = $next = $this->t('%time left', array('%time' => $this->dateFormatter->formatInterval($last_checked + $refresh_rate - REQUEST_TIME)));
+        $next_update = $next = $this->t('%time left', ['%time' => $this->dateFormatter->formatInterval($last_checked + $refresh_rate - REQUEST_TIME)]);
       }
       else {
         $next_update = $this->t('never');
@@ -136,33 +136,33 @@ public function adminOverview() {
         'title' => $this->t('Edit'),
         'url' => Url::fromRoute('entity.aggregator_feed.edit_form', ['aggregator_feed' => $feed->id()]),
       ];
-      $links['delete'] = array(
+      $links['delete'] = [
         'title' => $this->t('Delete'),
         'url' => Url::fromRoute('entity.aggregator_feed.delete_form', ['aggregator_feed' => $feed->id()]),
-      );
-      $links['delete_items'] = array(
+      ];
+      $links['delete_items'] = [
         'title' => $this->t('Delete items'),
         'url' => Url::fromRoute('aggregator.feed_items_delete', ['aggregator_feed' => $feed->id()]),
-      );
-      $links['update'] = array(
+      ];
+      $links['update'] = [
         'title' => $this->t('Update items'),
         'url' => Url::fromRoute('aggregator.feed_refresh', ['aggregator_feed' => $feed->id()]),
-      );
-      $row[] = array(
-        'data' => array(
+      ];
+      $row[] = [
+        'data' => [
           '#type' => 'operations',
           '#links' => $links,
-        ),
-      );
+        ],
+      ];
       $rows[] = $row;
     }
-    $build['feeds'] = array(
+    $build['feeds'] = [
       '#prefix' => '<h3>' . $this->t('Feed overview') . '</h3>',
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-      '#empty' => $this->t('No feeds available. <a href=":link">Add feed</a>.', array(':link' => $this->url('aggregator.feed_add'))),
-    );
+      '#empty' => $this->t('No feeds available. <a href=":link">Add feed</a>.', [':link' => $this->url('aggregator.feed_add')]),
+    ];
 
     return $build;
   }
@@ -176,7 +176,7 @@ public function adminOverview() {
   public function pageLast() {
     $items = $this->entityManager()->getStorage('aggregator_item')->loadAll(20);
     $build = $this->buildPageList($items);
-    $build['#attached']['feed'][] = array('aggregator/rss', $this->config('system.site')->get('name') . ' ' . $this->t('aggregator'));
+    $build['#attached']['feed'][] = ['aggregator/rss', $this->config('system.site')->get('name') . ' ' . $this->t('aggregator')];
     return $build;
   }
 
diff --git a/core/modules/aggregator/src/Entity/Feed.php b/core/modules/aggregator/src/Entity/Feed.php
index 834a55e..3b14e8c 100644
--- a/core/modules/aggregator/src/Entity/Feed.php
+++ b/core/modules/aggregator/src/Entity/Feed.php
@@ -88,11 +88,11 @@ public function refreshItems() {
    * {@inheritdoc}
    */
   public static function preCreate(EntityStorageInterface $storage, array &$values) {
-    $values += array(
+    $values += [
       'link' => '',
       'description' => '',
       'image' => '',
-    );
+    ];
   }
 
   /**
@@ -143,10 +143,10 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t('The name of the feed (or the name of the website providing the feed).'))
       ->setRequired(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE)
       ->addConstraint('FeedTitle');
 
@@ -154,15 +154,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('URL'))
       ->setDescription(t('The fully-qualified URL of the feed.'))
       ->setRequired(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'uri',
         'weight' => -3,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE)
       ->addConstraint('FeedUrl');
 
-    $intervals = array(900, 1800, 3600, 7200, 10800, 21600, 32400, 43200, 64800, 86400, 172800, 259200, 604800, 1209600, 2419200);
-    $period = array_map(array(\Drupal::service('date.formatter'), 'formatInterval'), array_combine($intervals, $intervals));
+    $intervals = [900, 1800, 3600, 7200, 10800, 21600, 32400, 43200, 64800, 86400, 172800, 259200, 604800, 1209600, 2419200];
+    $period = array_map([\Drupal::service('date.formatter'), 'formatInterval'], array_combine($intervals, $intervals));
     $period[AGGREGATOR_CLEAR_NEVER] = t('Never');
 
     $fields['refresh'] = BaseFieldDefinition::create('list_integer')
@@ -171,21 +171,21 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setSetting('unsigned', TRUE)
       ->setRequired(TRUE)
       ->setSetting('allowed_values', $period)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'options_select',
         'weight' => -2,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['checked'] = BaseFieldDefinition::create('timestamp')
       ->setLabel(t('Checked'))
       ->setDescription(t('Last time feed was checked for new items, as Unix timestamp.'))
       ->setDefaultValue(0)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'inline',
         'type' => 'timestamp_ago',
         'weight' => 1,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     $fields['queued'] = BaseFieldDefinition::create('timestamp')
@@ -196,15 +196,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields['link'] = BaseFieldDefinition::create('uri')
       ->setLabel(t('URL'))
       ->setDescription(t('The link of the feed.'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'inline',
         'weight' => 4,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     $fields['description'] = BaseFieldDefinition::create('string_long')
       ->setLabel(t('Description'))
-      ->setDescription(t("The parent website's description that comes from the @description element in the feed.", array('@description' => '<description>')));
+      ->setDescription(t("The parent website's description that comes from the @description element in the feed.", ['@description' => '<description>']));
 
     $fields['image'] = BaseFieldDefinition::create('uri')
       ->setLabel(t('Image'))
diff --git a/core/modules/aggregator/src/Entity/Item.php b/core/modules/aggregator/src/Entity/Item.php
index 969e4e4..ef0c6d2 100644
--- a/core/modules/aggregator/src/Entity/Item.php
+++ b/core/modules/aggregator/src/Entity/Item.php
@@ -61,11 +61,11 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRequired(TRUE)
       ->setDescription(t('The aggregator feed entity associated with this item.'))
       ->setSetting('target_type', 'aggregator_feed')
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'entity_reference_label',
         'weight' => 0,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['title'] = BaseFieldDefinition::create('string')
@@ -75,18 +75,18 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields['link'] = BaseFieldDefinition::create('uri')
       ->setLabel(t('Link'))
       ->setDescription(t('The link of the feed item.'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'region' => 'hidden',
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     $fields['author'] = BaseFieldDefinition::create('string')
       ->setLabel(t('Author'))
       ->setDescription(t('The author of the feed item.'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'weight' => 3,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     $fields['description'] = BaseFieldDefinition::create('string_long')
@@ -96,11 +96,11 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields['timestamp'] = BaseFieldDefinition::create('created')
       ->setLabel(t('Posted on'))
       ->setDescription(t('Posted date of the feed item, as a Unix timestamp.'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'timestamp_ago',
         'weight' => 1,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     // @todo Convert to a real UUID field in
diff --git a/core/modules/aggregator/src/FeedForm.php b/core/modules/aggregator/src/FeedForm.php
index 3447cc8..1580a30 100644
--- a/core/modules/aggregator/src/FeedForm.php
+++ b/core/modules/aggregator/src/FeedForm.php
@@ -20,12 +20,12 @@ public function save(array $form, FormStateInterface $form_state) {
     $label = $feed->label();
     $view_link = $feed->link($label, 'canonical');
     if ($status == SAVED_UPDATED) {
-      drupal_set_message($this->t('The feed %feed has been updated.', array('%feed' => $view_link)));
+      drupal_set_message($this->t('The feed %feed has been updated.', ['%feed' => $view_link]));
       $form_state->setRedirectUrl($feed->urlInfo('canonical'));
     }
     else {
-      $this->logger('aggregator')->notice('Feed %feed added.', array('%feed' => $feed->label(), 'link' => $this->l($this->t('View'), new Url('aggregator.admin_overview'))));
-      drupal_set_message($this->t('The feed %feed has been added.', array('%feed' => $view_link)));
+      $this->logger('aggregator')->notice('Feed %feed added.', ['%feed' => $feed->label(), 'link' => $this->l($this->t('View'), new Url('aggregator.admin_overview'))]);
+      drupal_set_message($this->t('The feed %feed has been added.', ['%feed' => $view_link]));
     }
   }
 
diff --git a/core/modules/aggregator/src/FeedStorage.php b/core/modules/aggregator/src/FeedStorage.php
index 5085e6d..ded3531 100644
--- a/core/modules/aggregator/src/FeedStorage.php
+++ b/core/modules/aggregator/src/FeedStorage.php
@@ -16,10 +16,10 @@ class FeedStorage extends SqlContentEntityStorage implements FeedStorageInterfac
    * {@inheritdoc}
    */
   public function getFeedIdsToRefresh() {
-    return $this->database->query('SELECT fid FROM {aggregator_feed} WHERE queued = 0 AND checked + refresh < :time AND refresh <> :never', array(
+    return $this->database->query('SELECT fid FROM {aggregator_feed} WHERE queued = 0 AND checked + refresh < :time AND refresh <> :never', [
       ':time' => REQUEST_TIME,
       ':never' => AGGREGATOR_CLEAR_NEVER,
-    ))->fetchCol();
+    ])->fetchCol();
   }
 
 }
diff --git a/core/modules/aggregator/src/FeedViewBuilder.php b/core/modules/aggregator/src/FeedViewBuilder.php
index 5ce69ff..1efaa30 100644
--- a/core/modules/aggregator/src/FeedViewBuilder.php
+++ b/core/modules/aggregator/src/FeedViewBuilder.php
@@ -68,65 +68,65 @@ public function buildComponents(array &$build, array $entities, array $displays,
 
         if ($view_mode == 'full') {
           // Also add the pager.
-          $build[$id]['pager'] = array('#type' => 'pager');
+          $build[$id]['pager'] = ['#type' => 'pager'];
         }
       }
 
       if ($display->getComponent('description')) {
-        $build[$id]['description'] = array(
+        $build[$id]['description'] = [
           '#markup' => $entity->getDescription(),
           '#allowed_tags' => _aggregator_allowed_tags(),
           '#prefix' => '<div class="feed-description">',
           '#suffix' => '</div>',
-        );
+        ];
       }
 
       if ($display->getComponent('image')) {
-        $image_link = array();
+        $image_link = [];
         // Render the image as link if it is available.
         $image = $entity->getImage();
         $label = $entity->label();
         $link_href = $entity->getWebsiteUrl();
         if ($image && $label && $link_href) {
-          $link_title = array(
+          $link_title = [
             '#theme' => 'image',
             '#uri' => $image,
             '#alt' => $label,
-          );
-          $image_link = array(
+          ];
+          $image_link = [
             '#type' => 'link',
             '#title' => $link_title,
             '#url' => Url::fromUri($link_href),
-            '#options' => array(
-              'attributes' => array('class' => array('feed-image')),
-            ),
-          );
+            '#options' => [
+              'attributes' => ['class' => ['feed-image']],
+            ],
+          ];
         }
         $build[$id]['image'] = $image_link;
       }
 
       if ($display->getComponent('feed_icon')) {
-        $build[$id]['feed_icon'] = array(
+        $build[$id]['feed_icon'] = [
           '#theme' => 'feed_icon',
           '#url' => $entity->getUrl(),
-          '#title' => t('@title feed', array('@title' => $entity->label())),
-        );
+          '#title' => t('@title feed', ['@title' => $entity->label()]),
+        ];
       }
 
       if ($display->getComponent('more_link')) {
         $title_stripped = strip_tags($entity->label());
-        $build[$id]['more_link'] = array(
+        $build[$id]['more_link'] = [
           '#type' => 'link',
-          '#title' => t('More<span class="visually-hidden"> posts about @title</span>', array(
+          '#title' => t('More<span class="visually-hidden"> posts about @title</span>', [
             '@title' => $title_stripped,
-          )),
+          ]),
           '#url' => Url::fromRoute('entity.aggregator_feed.canonical', ['aggregator_feed' => $entity->id()]),
-          '#options' => array(
-            'attributes' => array(
+          '#options' => [
+            'attributes' => [
               'title' => $title_stripped,
-            ),
-          ),
-        );
+            ],
+          ],
+        ];
       }
 
     }
diff --git a/core/modules/aggregator/src/Form/FeedDeleteForm.php b/core/modules/aggregator/src/Form/FeedDeleteForm.php
index bcf1a32..17a1798 100644
--- a/core/modules/aggregator/src/Form/FeedDeleteForm.php
+++ b/core/modules/aggregator/src/Form/FeedDeleteForm.php
@@ -28,9 +28,9 @@ protected function getRedirectUrl() {
    * {@inheritdoc}
    */
   protected function getDeletionMessage() {
-    return $this->t('The feed %label has been deleted.', array(
+    return $this->t('The feed %label has been deleted.', [
       '%label' => $this->entity->label(),
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/aggregator/src/Form/FeedItemsDeleteForm.php b/core/modules/aggregator/src/Form/FeedItemsDeleteForm.php
index 1117359..48c83dc 100644
--- a/core/modules/aggregator/src/Form/FeedItemsDeleteForm.php
+++ b/core/modules/aggregator/src/Form/FeedItemsDeleteForm.php
@@ -15,7 +15,7 @@ class FeedItemsDeleteForm extends ContentEntityConfirmFormBase {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete all items from the feed %feed?', array('%feed' => $this->entity->label()));
+    return $this->t('Are you sure you want to delete all items from the feed %feed?', ['%feed' => $this->entity->label()]);
   }
 
   /**
diff --git a/core/modules/aggregator/src/Form/OpmlFeedAdd.php b/core/modules/aggregator/src/Form/OpmlFeedAdd.php
index c78a8b7..59e70d9 100644
--- a/core/modules/aggregator/src/Form/OpmlFeedAdd.php
+++ b/core/modules/aggregator/src/Form/OpmlFeedAdd.php
@@ -63,33 +63,33 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $intervals = array(900, 1800, 3600, 7200, 10800, 21600, 32400, 43200, 64800, 86400, 172800, 259200, 604800, 1209600, 2419200);
-    $period = array_map(array(\Drupal::service('date.formatter'), 'formatInterval'), array_combine($intervals, $intervals));
+    $intervals = [900, 1800, 3600, 7200, 10800, 21600, 32400, 43200, 64800, 86400, 172800, 259200, 604800, 1209600, 2419200];
+    $period = array_map([\Drupal::service('date.formatter'), 'formatInterval'], array_combine($intervals, $intervals));
 
-    $form['upload'] = array(
+    $form['upload'] = [
       '#type' => 'file',
       '#title' => $this->t('OPML File'),
       '#description' => $this->t('Upload an OPML file containing a list of feeds to be imported.'),
-    );
-    $form['remote'] = array(
+    ];
+    $form['remote'] = [
       '#type' => 'url',
       '#title' => $this->t('OPML Remote URL'),
       '#maxlength' => 1024,
       '#description' => $this->t('Enter the URL of an OPML file. This file will be downloaded and processed only once on submission of the form.'),
-    );
-    $form['refresh'] = array(
+    ];
+    $form['refresh'] = [
       '#type' => 'select',
       '#title' => $this->t('Update interval'),
       '#default_value' => 3600,
       '#options' => $period,
-      '#description' => $this->t('The length of time between feed updates. Requires a correctly configured <a href=":cron">cron maintenance task</a>.', array(':cron' => $this->url('system.status'))),
-    );
+      '#description' => $this->t('The length of time between feed updates. Requires a correctly configured <a href=":cron">cron maintenance task</a>.', [':cron' => $this->url('system.status')]),
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Import'),
-    );
+    ];
 
     return $form;
   }
@@ -109,7 +109,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $validators = array('file_validate_extensions' => array('opml xml'));
+    $validators = ['file_validate_extensions' => ['opml xml']];
     if ($file = file_save_upload('upload', $validators, FALSE, 0)) {
       $data = file_get_contents($file->getFileUri());
     }
@@ -120,8 +120,8 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         $data = (string) $response->getBody();
       }
       catch (RequestException $e) {
-        $this->logger('aggregator')->warning('Failed to download OPML file due to "%error".', array('%error' => $e->getMessage()));
-        drupal_set_message($this->t('Failed to download OPML file due to "%error".', array('%error' => $e->getMessage())));
+        $this->logger('aggregator')->warning('Failed to download OPML file due to "%error".', ['%error' => $e->getMessage()]);
+        drupal_set_message($this->t('Failed to download OPML file due to "%error".', ['%error' => $e->getMessage()]));
         return;
       }
     }
@@ -136,7 +136,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     foreach ($feeds as $feed) {
       // Ensure URL is valid.
       if (!UrlHelper::isValid($feed['url'], TRUE)) {
-        drupal_set_message($this->t('The URL %url is invalid.', array('%url' => $feed['url'])), 'warning');
+        drupal_set_message($this->t('The URL %url is invalid.', ['%url' => $feed['url']]), 'warning');
         continue;
       }
 
@@ -151,20 +151,20 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $result = $this->feedStorage->loadMultiple($ids);
       foreach ($result as $old) {
         if (strcasecmp($old->label(), $feed['title']) == 0) {
-          drupal_set_message($this->t('A feed named %title already exists.', array('%title' => $old->label())), 'warning');
+          drupal_set_message($this->t('A feed named %title already exists.', ['%title' => $old->label()]), 'warning');
           continue 2;
         }
         if (strcasecmp($old->getUrl(), $feed['url']) == 0) {
-          drupal_set_message($this->t('A feed with the URL %url already exists.', array('%url' => $old->getUrl())), 'warning');
+          drupal_set_message($this->t('A feed with the URL %url already exists.', ['%url' => $old->getUrl()]), 'warning');
           continue 2;
         }
       }
 
-      $new_feed = $this->feedStorage->create(array(
+      $new_feed = $this->feedStorage->create([
         'title' => $feed['title'],
         'url' => $feed['url'],
         'refresh' => $form_state->getValue('refresh'),
-      ));
+      ]);
       $new_feed->save();
     }
 
@@ -189,7 +189,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
    * @todo Move this to a parser in https://www.drupal.org/node/1963540.
    */
   protected function parseOpml($opml) {
-    $feeds = array();
+    $feeds = [];
     $xml_parser = xml_parser_create();
     xml_parser_set_option($xml_parser, XML_OPTION_TARGET_ENCODING, 'utf-8');
     if (xml_parse_into_struct($xml_parser, $opml, $values)) {
@@ -197,7 +197,7 @@ protected function parseOpml($opml) {
         if ($entry['tag'] == 'OUTLINE' && isset($entry['attributes'])) {
           $item = $entry['attributes'];
           if (!empty($item['XMLURL']) && !empty($item['TEXT'])) {
-            $feeds[] = array('title' => $item['TEXT'], 'url' => $item['XMLURL']);
+            $feeds[] = ['title' => $item['TEXT'], 'url' => $item['XMLURL']];
           }
         }
       }
diff --git a/core/modules/aggregator/src/Form/SettingsForm.php b/core/modules/aggregator/src/Form/SettingsForm.php
index edd5741..48b2dfe 100644
--- a/core/modules/aggregator/src/Form/SettingsForm.php
+++ b/core/modules/aggregator/src/Form/SettingsForm.php
@@ -21,25 +21,25 @@ class SettingsForm extends ConfigFormBase {
    *
    * @var \Drupal\aggregator\Plugin\AggregatorPluginManager[]
    */
-  protected $managers = array();
+  protected $managers = [];
 
   /**
    * The instantiated plugin instances that have configuration forms.
    *
    * @var \Drupal\Core\Plugin\PluginFormInterface[]
    */
-  protected $configurableInstances = array();
+  protected $configurableInstances = [];
 
   /**
    * The aggregator plugin definitions.
    *
    * @var array
    */
-  protected $definitions = array(
-    'fetcher' => array(),
-    'parser' => array(),
-    'processor' => array(),
-  );
+  protected $definitions = [
+    'fetcher' => [],
+    'parser' => [],
+    'processor' => [],
+  ];
 
   /**
    * Constructs a \Drupal\aggregator\SettingsForm object.
@@ -58,15 +58,15 @@ class SettingsForm extends ConfigFormBase {
   public function __construct(ConfigFactoryInterface $config_factory, AggregatorPluginManager $fetcher_manager, AggregatorPluginManager $parser_manager, AggregatorPluginManager $processor_manager, TranslationInterface $string_translation) {
     parent::__construct($config_factory);
     $this->stringTranslation = $string_translation;
-    $this->managers = array(
+    $this->managers = [
       'fetcher' => $fetcher_manager,
       'parser' => $parser_manager,
       'processor' => $processor_manager,
-    );
+    ];
     // Get all available fetcher, parser and processor definitions.
-    foreach (array('fetcher', 'parser', 'processor') as $type) {
+    foreach (['fetcher', 'parser', 'processor'] as $type) {
       foreach ($this->managers[$type]->getDefinitions() as $id => $definition) {
-        $this->definitions[$type][$id] = SafeMarkup::format('@title <span class="description">@description</span>', array('@title' => $definition['title'], '@description' => $definition['description']));
+        $this->definitions[$type][$id] = SafeMarkup::format('@title <span class="description">@description</span>', ['@title' => $definition['title'], '@description' => $definition['description']]);
       }
     }
   }
@@ -105,56 +105,56 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('aggregator.settings');
 
     // Global aggregator settings.
-    $form['aggregator_allowed_html_tags'] = array(
+    $form['aggregator_allowed_html_tags'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Allowed HTML tags'),
       '#size' => 80,
       '#maxlength' => 255,
       '#default_value' => $config->get('items.allowed_html'),
       '#description' => $this->t('A space-separated list of HTML tags allowed in the content of feed items. Disallowed tags are stripped from the content.'),
-    );
+    ];
 
     // Only show basic configuration if there are actually options.
-    $basic_conf = array();
+    $basic_conf = [];
     if (count($this->definitions['fetcher']) > 1) {
-      $basic_conf['aggregator_fetcher'] = array(
+      $basic_conf['aggregator_fetcher'] = [
         '#type' => 'radios',
         '#title' => $this->t('Fetcher'),
         '#description' => $this->t('Fetchers download data from an external source. Choose a fetcher suitable for the external source you would like to download from.'),
         '#options' => $this->definitions['fetcher'],
         '#default_value' => $config->get('fetcher'),
-      );
+      ];
     }
     if (count($this->definitions['parser']) > 1) {
-      $basic_conf['aggregator_parser'] = array(
+      $basic_conf['aggregator_parser'] = [
         '#type' => 'radios',
         '#title' => $this->t('Parser'),
         '#description' => $this->t('Parsers transform downloaded data into standard structures. Choose a parser suitable for the type of feeds you would like to aggregate.'),
         '#options' => $this->definitions['parser'],
         '#default_value' => $config->get('parser'),
-      );
+      ];
     }
     if (count($this->definitions['processor']) > 1) {
-      $basic_conf['aggregator_processors'] = array(
+      $basic_conf['aggregator_processors'] = [
         '#type' => 'checkboxes',
         '#title' => $this->t('Processors'),
         '#description' => $this->t('Processors act on parsed feed data, for example they store feed items. Choose the processors suitable for your task.'),
         '#options' => $this->definitions['processor'],
         '#default_value' => $config->get('processors'),
-      );
+      ];
     }
     if (count($basic_conf)) {
-      $form['basic_conf'] = array(
+      $form['basic_conf'] = [
         '#type' => 'details',
         '#title' => $this->t('Basic configuration'),
         '#description' => $this->t('For most aggregation tasks, the default settings are fine.'),
         '#open' => TRUE,
-      );
+      ];
       $form['basic_conf'] += $basic_conf;
     }
 
     // Call buildConfigurationForm() on the active fetcher and parser.
-    foreach (array('fetcher', 'parser') as $type) {
+    foreach (['fetcher', 'parser'] as $type) {
       $active = $config->get($type);
       if (array_key_exists($active, $this->definitions[$type])) {
         $instance = $this->managers[$type]->createInstance($active);
@@ -169,7 +169,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Implementing processor plugins will expect an array at $form['processors'].
-    $form['processors'] = array();
+    $form['processors'] = [];
     // Call buildConfigurationForm() for each active processor.
     foreach ($this->definitions['processor'] as $id => $definition) {
       if (in_array($id, $config->get('processors'))) {
diff --git a/core/modules/aggregator/src/ItemViewBuilder.php b/core/modules/aggregator/src/ItemViewBuilder.php
index feb0ffa..feb35b5 100644
--- a/core/modules/aggregator/src/ItemViewBuilder.php
+++ b/core/modules/aggregator/src/ItemViewBuilder.php
@@ -20,12 +20,12 @@ public function buildComponents(array &$build, array $entities, array $displays,
       $display = $displays[$bundle];
 
       if ($display->getComponent('description')) {
-        $build[$id]['description'] = array(
+        $build[$id]['description'] = [
           '#markup' => $entity->getDescription(),
           '#allowed_tags' => _aggregator_allowed_tags(),
           '#prefix' => '<div class="item-description">',
           '#suffix' => '</div>',
-        );
+        ];
       }
     }
   }
diff --git a/core/modules/aggregator/src/ItemsImporter.php b/core/modules/aggregator/src/ItemsImporter.php
index df02564..aa18d65 100644
--- a/core/modules/aggregator/src/ItemsImporter.php
+++ b/core/modules/aggregator/src/ItemsImporter.php
@@ -95,7 +95,7 @@ public function refresh(FeedInterface $feed) {
     }
 
     // Store instances in an array so we dont have to instantiate new objects.
-    $processor_instances = array();
+    $processor_instances = [];
     foreach ($this->config->get('processors') as $processor) {
       try {
         $processor_instances[$processor] = $this->processorManager->createInstance($processor);
@@ -124,10 +124,10 @@ public function refresh(FeedInterface $feed) {
 
           // Log if feed URL has changed.
           if ($feed->getUrl() != $feed_url) {
-            $this->logger->notice('Updated URL for feed %title to %url.', array('%title' => $feed->label(), '%url' => $feed->getUrl()));
+            $this->logger->notice('Updated URL for feed %title to %url.', ['%title' => $feed->label(), '%url' => $feed->getUrl()]);
           }
 
-          $this->logger->notice('There is new syndicated content from %site.', array('%site' => $feed->label()));
+          $this->logger->notice('There is new syndicated content from %site.', ['%site' => $feed->label()]);
 
           // If there are items on the feed, let enabled processors process them.
           if (!empty($feed->items)) {
diff --git a/core/modules/aggregator/src/Plugin/AggregatorPluginManager.php b/core/modules/aggregator/src/Plugin/AggregatorPluginManager.php
index cd8a6e3..7310987 100644
--- a/core/modules/aggregator/src/Plugin/AggregatorPluginManager.php
+++ b/core/modules/aggregator/src/Plugin/AggregatorPluginManager.php
@@ -34,16 +34,16 @@ class AggregatorPluginManager extends DefaultPluginManager {
    *   The module handler.
    */
   public function __construct($type, \Traversable $namespaces, CacheBackendInterface $cache_backend, ModuleHandlerInterface $module_handler) {
-    $type_annotations = array(
+    $type_annotations = [
       'fetcher' => 'Drupal\aggregator\Annotation\AggregatorFetcher',
       'parser' => 'Drupal\aggregator\Annotation\AggregatorParser',
       'processor' => 'Drupal\aggregator\Annotation\AggregatorProcessor',
-    );
-    $plugin_interfaces = array(
+    ];
+    $plugin_interfaces = [
       'fetcher' => 'Drupal\aggregator\Plugin\FetcherInterface',
       'parser' => 'Drupal\aggregator\Plugin\ParserInterface',
       'processor' => 'Drupal\aggregator\Plugin\ProcessorInterface',
-    );
+    ];
 
     parent::__construct("Plugin/aggregator/$type", $namespaces, $module_handler, $plugin_interfaces[$type], $type_annotations[$type]);
     $this->setCacheBackend($cache_backend, 'aggregator_' . $type . '_plugins');
diff --git a/core/modules/aggregator/src/Plugin/AggregatorPluginSettingsBase.php b/core/modules/aggregator/src/Plugin/AggregatorPluginSettingsBase.php
index bc59ec5..403e6a3 100644
--- a/core/modules/aggregator/src/Plugin/AggregatorPluginSettingsBase.php
+++ b/core/modules/aggregator/src/Plugin/AggregatorPluginSettingsBase.php
@@ -25,7 +25,7 @@
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array();
+    return [];
   }
 
   /**
@@ -38,7 +38,7 @@ public function validateConfigurationForm(array &$form, FormStateInterface $form
    * {@inheritdoc}
    */
   public function calculateDependencies() {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/aggregator/src/Plugin/Block/AggregatorFeedBlock.php b/core/modules/aggregator/src/Plugin/Block/AggregatorFeedBlock.php
index 72e7a30..90d8f66 100644
--- a/core/modules/aggregator/src/Plugin/Block/AggregatorFeedBlock.php
+++ b/core/modules/aggregator/src/Plugin/Block/AggregatorFeedBlock.php
@@ -77,10 +77,10 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   public function defaultConfiguration() {
     // By default, the block will contain 10 feed items.
-    return array(
+    return [
       'block_count' => 10,
       'feed' => NULL,
-    );
+    ];
   }
 
   /**
@@ -96,23 +96,23 @@ protected function blockAccess(AccountInterface $account) {
    */
   public function blockForm($form, FormStateInterface $form_state) {
     $feeds = $this->feedStorage->loadMultiple();
-    $options = array();
+    $options = [];
     foreach ($feeds as $feed) {
       $options[$feed->id()] = $feed->label();
     }
-    $form['feed'] = array(
+    $form['feed'] = [
       '#type' => 'select',
       '#title' => $this->t('Select the feed that should be displayed'),
       '#default_value' => $this->configuration['feed'],
       '#options' => $options,
-    );
+    ];
     $range = range(2, 20);
-    $form['block_count'] = array(
+    $form['block_count'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of news items in block'),
       '#default_value' => $this->configuration['block_count'],
       '#options' => array_combine($range, $range),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/aggregator/src/Plugin/aggregator/fetcher/DefaultFetcher.php b/core/modules/aggregator/src/Plugin/aggregator/fetcher/DefaultFetcher.php
index 99ec48d..91c7ac3 100644
--- a/core/modules/aggregator/src/Plugin/aggregator/fetcher/DefaultFetcher.php
+++ b/core/modules/aggregator/src/Plugin/aggregator/fetcher/DefaultFetcher.php
@@ -112,8 +112,8 @@ public function fetch(FeedInterface $feed) {
       return TRUE;
     }
     catch (RequestException $e) {
-      $this->logger->warning('The feed from %site seems to be broken because of error "%error".', array('%site' => $feed->label(), '%error' => $e->getMessage()));
-      drupal_set_message(t('The feed from %site seems to be broken because of error "%error".', array('%site' => $feed->label(), '%error' => $e->getMessage())), 'warning');
+      $this->logger->warning('The feed from %site seems to be broken because of error "%error".', ['%site' => $feed->label(), '%error' => $e->getMessage()]);
+      drupal_set_message(t('The feed from %site seems to be broken because of error "%error".', ['%site' => $feed->label(), '%error' => $e->getMessage()]), 'warning');
       return FALSE;
     }
   }
diff --git a/core/modules/aggregator/src/Plugin/aggregator/parser/DefaultParser.php b/core/modules/aggregator/src/Plugin/aggregator/parser/DefaultParser.php
index 2fb3682..03fa55f 100644
--- a/core/modules/aggregator/src/Plugin/aggregator/parser/DefaultParser.php
+++ b/core/modules/aggregator/src/Plugin/aggregator/parser/DefaultParser.php
@@ -31,7 +31,7 @@ public function parse(FeedInterface $feed) {
     }
     catch (ExceptionInterface $e) {
       watchdog_exception('aggregator', $e);
-      drupal_set_message(t('The feed from %site seems to be broken because of error "%error".', array('%site' => $feed->label(), '%error' => $e->getMessage())), 'error');
+      drupal_set_message(t('The feed from %site seems to be broken because of error "%error".', ['%site' => $feed->label(), '%error' => $e->getMessage()]), 'error');
 
       return FALSE;
     }
@@ -42,10 +42,10 @@ public function parse(FeedInterface $feed) {
       $feed->setImage($image['uri']);
     }
     // Initialize items array.
-    $feed->items = array();
+    $feed->items = [];
     foreach ($channel as $item) {
       // Reset the parsed item.
-      $parsed_item = array();
+      $parsed_item = [];
       // Move the values to an array as expected by processors.
       $parsed_item['title'] = $item->getTitle();
       $parsed_item['guid'] = $item->getId();
diff --git a/core/modules/aggregator/src/Plugin/aggregator/processor/DefaultProcessor.php b/core/modules/aggregator/src/Plugin/aggregator/processor/DefaultProcessor.php
index 4469c51..525ef34 100644
--- a/core/modules/aggregator/src/Plugin/aggregator/processor/DefaultProcessor.php
+++ b/core/modules/aggregator/src/Plugin/aggregator/processor/DefaultProcessor.php
@@ -105,53 +105,53 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $config = $this->config('aggregator.settings');
     $processors = $config->get('processors');
     $info = $this->getPluginDefinition();
-    $counts = array(3, 5, 10, 15, 20, 25);
+    $counts = [3, 5, 10, 15, 20, 25];
     $items = array_map(function ($count) {
       return $this->formatPlural($count, '1 item', '@count items');
     }, array_combine($counts, $counts));
-    $intervals = array(3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 4838400, 9676800);
-    $period = array_map(array($this->dateFormatter, 'formatInterval'), array_combine($intervals, $intervals));
+    $intervals = [3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 4838400, 9676800];
+    $period = array_map([$this->dateFormatter, 'formatInterval'], array_combine($intervals, $intervals));
     $period[AGGREGATOR_CLEAR_NEVER] = t('Never');
 
-    $form['processors'][$info['id']] = array();
+    $form['processors'][$info['id']] = [];
     // Only wrap into details if there is a basic configuration.
     if (isset($form['basic_conf'])) {
-      $form['processors'][$info['id']] = array(
+      $form['processors'][$info['id']] = [
         '#type' => 'details',
         '#title' => t('Default processor settings'),
         '#description' => $info['description'],
         '#open' => in_array($info['id'], $processors),
-      );
+      ];
     }
 
-    $form['processors'][$info['id']]['aggregator_summary_items'] = array(
+    $form['processors'][$info['id']]['aggregator_summary_items'] = [
       '#type' => 'select',
       '#title' => t('Number of items shown in listing pages'),
       '#default_value' => $config->get('source.list_max'),
       '#empty_value' => 0,
       '#options' => $items,
-    );
+    ];
 
-    $form['processors'][$info['id']]['aggregator_clear'] = array(
+    $form['processors'][$info['id']]['aggregator_clear'] = [
       '#type' => 'select',
       '#title' => t('Discard items older than'),
       '#default_value' => $config->get('items.expire'),
       '#options' => $period,
-      '#description' => t('Requires a correctly configured <a href=":cron">cron maintenance task</a>.', array(':cron' => $this->url('system.status'))),
-    );
+      '#description' => t('Requires a correctly configured <a href=":cron">cron maintenance task</a>.', [':cron' => $this->url('system.status')]),
+    ];
 
-    $lengths = array(0, 200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000);
+    $lengths = [0, 200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000];
     $options = array_map(function($length) {
       return ($length == 0) ? t('Unlimited') : $this->formatPlural($length, '1 character', '@count characters');
     }, array_combine($lengths, $lengths));
 
-    $form['processors'][$info['id']]['aggregator_teaser_length'] = array(
+    $form['processors'][$info['id']]['aggregator_teaser_length'] = [
       '#type' => 'select',
       '#title' => t('Length of trimmed description'),
       '#default_value' => $config->get('items.teaser_length'),
       '#options' => $options,
       '#description' => t('The maximum number of characters used in the trimmed version of content.'),
-    );
+    ];
     return $form;
   }
 
@@ -185,13 +185,13 @@ public function process(FeedInterface $feed) {
       // we find a duplicate entry, we resolve it and pass along its ID is such
       // that we can update it if needed.
       if (!empty($item['guid'])) {
-        $values = array('fid' => $feed->id(), 'guid' => $item['guid']);
+        $values = ['fid' => $feed->id(), 'guid' => $item['guid']];
       }
       elseif ($item['link'] && $item['link'] != $feed->link && $item['link'] != $feed->url) {
-        $values = array('fid' => $feed->id(), 'link' => $item['link']);
+        $values = ['fid' => $feed->id(), 'link' => $item['link']];
       }
       else {
-        $values = array('fid' => $feed->id(), 'title' => $item['title']);
+        $values = ['fid' => $feed->id(), 'title' => $item['title']];
       }
 
       // Try to load an existing entry.
@@ -199,7 +199,7 @@ public function process(FeedInterface $feed) {
         $entry = reset($entry);
       }
       else {
-        $entry = Item::create(array('langcode' => $feed->language()->getId()));
+        $entry = Item::create(['langcode' => $feed->language()->getId()]);
       }
       if ($item['timestamp']) {
         $entry->setPostedTime($item['timestamp']);
@@ -231,7 +231,7 @@ public function delete(FeedInterface $feed) {
       $this->itemStorage->delete($items);
     }
     // @todo This should be moved out to caller with a different message maybe.
-    drupal_set_message(t('The news items from %site have been deleted.', array('%site' => $feed->label())));
+    drupal_set_message(t('The news items from %site have been deleted.', ['%site' => $feed->label()]));
   }
 
   /**
diff --git a/core/modules/aggregator/src/Plugin/migrate/source/AggregatorFeed.php b/core/modules/aggregator/src/Plugin/migrate/source/AggregatorFeed.php
index e623e5f..59244d4 100644
--- a/core/modules/aggregator/src/Plugin/migrate/source/AggregatorFeed.php
+++ b/core/modules/aggregator/src/Plugin/migrate/source/AggregatorFeed.php
@@ -26,7 +26,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'fid' => $this->t('The feed ID.'),
       'title' => $this->t('Title of the feed.'),
       'url' => $this->t('URL to the feed.'),
@@ -38,7 +38,7 @@ public function fields() {
       'etag' => $this->t('Entity tag HTTP response header.'),
       'modified' => $this->t('When the feed was last modified.'),
       'block' => $this->t("Number of items to display in the feed's block."),
-    );
+    ];
     if ($this->getModuleSchemaVersion('system') >= 7000) {
       $fields['queued'] = $this->t('Time when this feed was queued for refresh, 0 if not queued.');
     }
diff --git a/core/modules/aggregator/src/Plugin/migrate/source/AggregatorItem.php b/core/modules/aggregator/src/Plugin/migrate/source/AggregatorItem.php
index fc1c5c6..428c558 100644
--- a/core/modules/aggregator/src/Plugin/migrate/source/AggregatorItem.php
+++ b/core/modules/aggregator/src/Plugin/migrate/source/AggregatorItem.php
@@ -27,7 +27,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'iid' => $this->t('Primary Key: Unique ID for feed item.'),
       'fid' => $this->t('The {aggregator_feed}.fid to which this item belongs.'),
       'title' => $this->t('Title of the feed item.'),
@@ -36,7 +36,7 @@ public function fields() {
       'description' => $this->t('Body of the feed item.'),
       'timestamp' => $this->t('Post date of feed item, as a Unix timestamp.'),
       'guid' => $this->t('Unique identifier for the feed item.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/aggregator/src/Plugin/views/argument/Fid.php b/core/modules/aggregator/src/Plugin/views/argument/Fid.php
index bb912e1..90564d5 100644
--- a/core/modules/aggregator/src/Plugin/views/argument/Fid.php
+++ b/core/modules/aggregator/src/Plugin/views/argument/Fid.php
@@ -50,7 +50,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function titleQuery() {
-    $titles = array();
+    $titles = [];
 
     $feeds = $this->entityManager->getStorage('aggregator_feed')->loadMultiple($this->value);
     foreach ($feeds as $feed) {
diff --git a/core/modules/aggregator/src/Plugin/views/argument/Iid.php b/core/modules/aggregator/src/Plugin/views/argument/Iid.php
index 9468c98..44b4569 100644
--- a/core/modules/aggregator/src/Plugin/views/argument/Iid.php
+++ b/core/modules/aggregator/src/Plugin/views/argument/Iid.php
@@ -50,7 +50,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function titleQuery() {
-    $titles = array();
+    $titles = [];
 
     $items = $this->entityManager->getStorage('aggregator_item')->loadMultiple($this->value);
     foreach ($items as $feed) {
diff --git a/core/modules/aggregator/src/Plugin/views/row/Rss.php b/core/modules/aggregator/src/Plugin/views/row/Rss.php
index ef46466..464a285 100644
--- a/core/modules/aggregator/src/Plugin/views/row/Rss.php
+++ b/core/modules/aggregator/src/Plugin/views/row/Rss.php
@@ -48,31 +48,31 @@ public function render($row) {
       $item->{$name} = $field->value;
     }
 
-    $item->elements = array(
-      array(
+    $item->elements = [
+      [
         'key' => 'pubDate',
         // views_view_row_rss takes care about the escaping.
         'value' => gmdate('r', $entity->timestamp->value),
-      ),
-      array(
+      ],
+      [
         'key' => 'dc:creator',
         // views_view_row_rss takes care about the escaping.
         'value' => $entity->author->value,
-      ),
-      array(
+      ],
+      [
         'key' => 'guid',
         // views_view_row_rss takes care about the escaping.
         'value' => $entity->guid->value,
-        'attributes' => array('isPermaLink' => 'false'),
-      ),
-    );
+        'attributes' => ['isPermaLink' => 'false'],
+      ],
+    ];
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $item,
-    );
+    ];
     return $build;
   }
 
diff --git a/core/modules/aggregator/src/Tests/AddFeedTest.php b/core/modules/aggregator/src/Tests/AddFeedTest.php
index b7ffe5f..4dfeb95 100644
--- a/core/modules/aggregator/src/Tests/AddFeedTest.php
+++ b/core/modules/aggregator/src/Tests/AddFeedTest.php
@@ -39,8 +39,8 @@ public function testAddFeed() {
       'refresh' => '900',
     ];
     $this->drupalPostForm('aggregator/sources/add', $edit, t('Save'));
-    $this->assertRaw(t('A feed named %feed already exists. Enter a unique title.', array('%feed' => $feed->label())));
-    $this->assertRaw(t('A feed with this URL %url already exists. Enter a unique URL.', array('%url' => $feed->getUrl())));
+    $this->assertRaw(t('A feed named %feed already exists. Enter a unique title.', ['%feed' => $feed->label()]));
+    $this->assertRaw(t('A feed with this URL %url already exists. Enter a unique URL.', ['%url' => $feed->getUrl()]));
 
     // Delete feed.
     $this->deleteFeed($feed);
diff --git a/core/modules/aggregator/src/Tests/AggregatorAdminTest.php b/core/modules/aggregator/src/Tests/AggregatorAdminTest.php
index 487e0ef..3d09bbc 100644
--- a/core/modules/aggregator/src/Tests/AggregatorAdminTest.php
+++ b/core/modules/aggregator/src/Tests/AggregatorAdminTest.php
@@ -22,7 +22,7 @@ public function testSettingsPage() {
     $this->assertText('Test processor');
 
     // Set new values and enable test plugins.
-    $edit = array(
+    $edit = [
       'aggregator_allowed_html_tags' => '<a>',
       'aggregator_summary_items' => 10,
       'aggregator_clear' => 3600,
@@ -30,27 +30,27 @@ public function testSettingsPage() {
       'aggregator_fetcher' => 'aggregator_test_fetcher',
       'aggregator_parser' => 'aggregator_test_parser',
       'aggregator_processors[aggregator_test_processor]' => 'aggregator_test_processor',
-    );
+    ];
     $this->drupalPostForm('admin/config/services/aggregator/settings', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
 
     foreach ($edit as $name => $value) {
-      $this->assertFieldByName($name, $value, format_string('"@name" has correct default value.', array('@name' => $name)));
+      $this->assertFieldByName($name, $value, format_string('"@name" has correct default value.', ['@name' => $name]));
     }
 
     // Check for our test processor settings form.
     $this->assertText(t('Dummy length setting'));
     // Change its value to ensure that settingsSubmit is called.
-    $edit = array(
+    $edit = [
       'dummy_length' => 100,
-    );
+    ];
     $this->drupalPostForm('admin/config/services/aggregator/settings', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
     $this->assertFieldByName('dummy_length', 100, '"dummy_length" has correct default value.');
 
     // Make sure settings form is still accessible even after uninstalling a module
     // that provides the selected plugins.
-    $this->container->get('module_installer')->uninstall(array('aggregator_test'));
+    $this->container->get('module_installer')->uninstall(['aggregator_test']);
     $this->resetAll();
     $this->drupalGet('admin/config/services/aggregator/settings');
     $this->assertResponse(200);
diff --git a/core/modules/aggregator/src/Tests/AggregatorCronTest.php b/core/modules/aggregator/src/Tests/AggregatorCronTest.php
index 34a4cb9..9ebb2d2 100644
--- a/core/modules/aggregator/src/Tests/AggregatorCronTest.php
+++ b/core/modules/aggregator/src/Tests/AggregatorCronTest.php
@@ -16,30 +16,30 @@ public function testCron() {
     $this->createSampleNodes();
     $feed = $this->createFeed();
     $this->cronRun();
-    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField());
+    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
     $this->deleteFeedItems($feed);
-    $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField());
+    $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
     $this->cronRun();
-    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField());
+    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
 
     // Test feed locking when queued for update.
     $this->deleteFeedItems($feed);
     db_update('aggregator_feed')
       ->condition('fid', $feed->id())
-      ->fields(array(
+      ->fields([
         'queued' => REQUEST_TIME,
-      ))
+      ])
       ->execute();
     $this->cronRun();
-    $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField());
+    $this->assertEqual(0, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
     db_update('aggregator_feed')
       ->condition('fid', $feed->id())
-      ->fields(array(
+      ->fields([
         'queued' => 0,
-      ))
+      ])
       ->execute();
     $this->cronRun();
-    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField());
+    $this->assertEqual(5, db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField());
   }
 
 }
diff --git a/core/modules/aggregator/src/Tests/AggregatorRenderingTest.php b/core/modules/aggregator/src/Tests/AggregatorRenderingTest.php
index 888f1da..de7e401 100644
--- a/core/modules/aggregator/src/Tests/AggregatorRenderingTest.php
+++ b/core/modules/aggregator/src/Tests/AggregatorRenderingTest.php
@@ -17,7 +17,7 @@ class AggregatorRenderingTest extends AggregatorTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'test_page_test');
+  public static $modules = ['block', 'test_page_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -35,15 +35,15 @@ public function testBlockLinks() {
     $this->updateFeedItems($feed, $this->getDefaultFeedItemCount());
 
     // Need admin user to be able to access block admin.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer blocks',
       'access administration pages',
       'administer news feeds',
       'access news feeds',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
 
-    $block = $this->drupalPlaceBlock("aggregator_feed_block", array('label' => 'feed-' . $feed->label()));
+    $block = $this->drupalPlaceBlock("aggregator_feed_block", ['label' => 'feed-' . $feed->label()]);
 
     // Configure the feed that should be displayed.
     $block->getPlugin()->setConfigurationValue('feed', $feed->id());
@@ -56,20 +56,20 @@ public function testBlockLinks() {
 
     // Confirm items appear as links.
     $items = $this->container->get('entity.manager')->getStorage('aggregator_item')->loadByFeed($feed->id(), 1);
-    $links = $this->xpath('//a[@href = :href]', array(':href' => reset($items)->getLink()));
+    $links = $this->xpath('//a[@href = :href]', [':href' => reset($items)->getLink()]);
     $this->assert(isset($links[0]), 'Item link found.');
 
     // Find the expected read_more link.
     $href = $feed->url();
-    $links = $this->xpath('//a[@href = :href]', array(':href' => $href));
-    $this->assert(isset($links[0]), format_string('Link to href %href found.', array('%href' => $href)));
+    $links = $this->xpath('//a[@href = :href]', [':href' => $href]);
+    $this->assert(isset($links[0]), format_string('Link to href %href found.', ['%href' => $href]));
     $cache_tags_header = $this->drupalGetHeader('X-Drupal-Cache-Tags');
     $cache_tags = explode(' ', $cache_tags_header);
     $this->assertTrue(in_array('aggregator_feed:' . $feed->id(), $cache_tags));
 
     // Visit that page.
     $this->drupalGet($feed->urlInfo()->getInternalPath());
-    $correct_titles = $this->xpath('//h1[normalize-space(text())=:title]', array(':title' => $feed->label()));
+    $correct_titles = $this->xpath('//h1[normalize-space(text())=:title]', [':title' => $feed->label()]);
     $this->assertFalse(empty($correct_titles), 'Aggregator feed page is available and has the correct title.');
     $cache_tags = explode(' ', $this->drupalGetHeader('X-Drupal-Cache-Tags'));
     $this->assertTrue(in_array('aggregator_feed:' . $feed->id(), $cache_tags));
@@ -103,18 +103,18 @@ public function testFeedPage() {
 
     // Check for presence of an aggregator pager.
     $this->drupalGet('aggregator');
-    $elements = $this->xpath("//ul[contains(@class, :class)]", array(':class' => 'pager__items'));
+    $elements = $this->xpath("//ul[contains(@class, :class)]", [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Individual source page contains a pager.');
 
     // Check for sources page title.
     $this->drupalGet('aggregator/sources');
-    $titles = $this->xpath('//h1[normalize-space(text())=:title]', array(':title' => 'Sources'));
+    $titles = $this->xpath('//h1[normalize-space(text())=:title]', [':title' => 'Sources']);
     $this->assertTrue(!empty($titles), 'Source page contains correct title.');
 
     // Find the expected read_more link on the sources page.
     $href = $feed->url();
-    $links = $this->xpath('//a[@href = :href]', array(':href' => $href));
-    $this->assertTrue(isset($links[0]), SafeMarkup::format('Link to href %href found.', array('%href' => $href)));
+    $links = $this->xpath('//a[@href = :href]', [':href' => $href]);
+    $this->assertTrue(isset($links[0]), SafeMarkup::format('Link to href %href found.', ['%href' => $href]));
     $cache_tags_header = $this->drupalGetHeader('X-Drupal-Cache-Tags');
     $cache_tags = explode(' ', $cache_tags_header);
     $this->assertTrue(in_array('aggregator_feed:' . $feed->id(), $cache_tags));
@@ -139,7 +139,7 @@ public function testFeedPage() {
 
     // Check for the presence of a pager.
     $this->drupalGet('aggregator/sources/' . $feed->id());
-    $elements = $this->xpath("//ul[contains(@class, :class)]", array(':class' => 'pager__items'));
+    $elements = $this->xpath("//ul[contains(@class, :class)]", [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Individual source page contains a pager.');
     $cache_tags = explode(' ', $this->drupalGetHeader('X-Drupal-Cache-Tags'));
     $this->assertTrue(in_array('aggregator_feed:' . $feed->id(), $cache_tags));
diff --git a/core/modules/aggregator/src/Tests/AggregatorTestBase.php b/core/modules/aggregator/src/Tests/AggregatorTestBase.php
index 35bd9a9..f422489 100644
--- a/core/modules/aggregator/src/Tests/AggregatorTestBase.php
+++ b/core/modules/aggregator/src/Tests/AggregatorTestBase.php
@@ -37,10 +37,10 @@ protected function setUp() {
 
     // Create an Article node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer news feeds', 'access news feeds', 'create article content'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer news feeds', 'access news feeds', 'create article content']);
     $this->drupalLogin($this->adminUser);
     $this->drupalPlaceBlock('local_tasks_block');
   }
@@ -61,16 +61,16 @@ protected function setUp() {
    *
    * @see getFeedEditArray()
    */
-  public function createFeed($feed_url = NULL, array $edit = array()) {
+  public function createFeed($feed_url = NULL, array $edit = []) {
     $edit = $this->getFeedEditArray($feed_url, $edit);
     $this->drupalPostForm('aggregator/sources/add', $edit, t('Save'));
-    $this->assertText(t('The feed @name has been added.', array('@name' => $edit['title[0][value]'])), format_string('The feed @name has been added.', array('@name' => $edit['title[0][value]'])));
+    $this->assertText(t('The feed @name has been added.', ['@name' => $edit['title[0][value]']]), format_string('The feed @name has been added.', ['@name' => $edit['title[0][value]']]));
 
     // Verify that the creation message contains a link to a feed.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'aggregator/sources/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'aggregator/sources/']);
     $this->assert(isset($view_link), 'The message area contains a link to a feed');
 
-    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE title = :title AND url = :url", array(':title' => $edit['title[0][value]'], ':url' => $edit['url[0][value]']))->fetchField();
+    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE title = :title AND url = :url", [':title' => $edit['title[0][value]'], ':url' => $edit['url[0][value]']])->fetchField();
     $this->assertTrue(!empty($fid), 'The feed found in database.');
     return Feed::load($fid);
   }
@@ -82,8 +82,8 @@ public function createFeed($feed_url = NULL, array $edit = array()) {
    *   Feed object representing the feed.
    */
   public function deleteFeed(FeedInterface $feed) {
-    $this->drupalPostForm('aggregator/sources/' . $feed->id() . '/delete', array(), t('Delete'));
-    $this->assertRaw(t('The feed %title has been deleted.', array('%title' => $feed->label())), 'Feed deleted successfully.');
+    $this->drupalPostForm('aggregator/sources/' . $feed->id() . '/delete', [], t('Delete'));
+    $this->assertRaw(t('The feed %title has been deleted.', ['%title' => $feed->label()]), 'Feed deleted successfully.');
   }
 
   /**
@@ -98,19 +98,19 @@ public function deleteFeed(FeedInterface $feed) {
    * @return array
    *   A feed array.
    */
-  public function getFeedEditArray($feed_url = NULL, array $edit = array()) {
+  public function getFeedEditArray($feed_url = NULL, array $edit = []) {
     $feed_name = $this->randomMachineName(10);
     if (!$feed_url) {
-      $feed_url = \Drupal::url('view.frontpage.feed_1', array(), array(
-        'query' => array('feed' => $feed_name),
+      $feed_url = \Drupal::url('view.frontpage.feed_1', [], [
+        'query' => ['feed' => $feed_name],
         'absolute' => TRUE,
-      ));
+      ]);
     }
-    $edit += array(
+    $edit += [
       'title[0][value]' => $feed_name,
       'url[0][value]' => $feed_url,
       'refresh' => '900',
-    );
+    ];
     return $edit;
   }
 
@@ -126,19 +126,19 @@ public function getFeedEditArray($feed_url = NULL, array $edit = array()) {
    * @return \Drupal\aggregator\FeedInterface
    *   A feed object.
    */
-  public function getFeedEditObject($feed_url = NULL, array $values = array()) {
+  public function getFeedEditObject($feed_url = NULL, array $values = []) {
     $feed_name = $this->randomMachineName(10);
     if (!$feed_url) {
-      $feed_url = \Drupal::url('view.frontpage.feed_1', array(
-        'query' => array('feed' => $feed_name),
+      $feed_url = \Drupal::url('view.frontpage.feed_1', [
+        'query' => ['feed' => $feed_name],
         'absolute' => TRUE,
-      ));
+      ]);
     }
-    $values += array(
+    $values += [
       'title' => $feed_name,
       'url' => $feed_url,
       'refresh' => '900',
-    );
+    ];
     return Feed::create($values);
   }
 
@@ -168,7 +168,7 @@ public function getDefaultFeedItemCount() {
   public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
     // First, let's ensure we can get to the rss xml.
     $this->drupalGet($feed->getUrl());
-    $this->assertResponse(200, format_string(':url is reachable.', array(':url' => $feed->getUrl())));
+    $this->assertResponse(200, format_string(':url is reachable.', [':url' => $feed->getUrl()]));
 
     // Attempt to access the update link directly without an access token.
     $this->drupalGet('admin/config/services/aggregator/update/' . $feed->id());
@@ -179,15 +179,15 @@ public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
     $this->clickLink('Update items');
 
     // Ensure we have the right number of items.
-    $result = db_query('SELECT iid FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()));
-    $feed->items = array();
+    $result = db_query('SELECT iid FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()]);
+    $feed->items = [];
     foreach ($result as $item) {
       $feed->items[] = $item->iid;
     }
 
     if ($expected_count !== NULL) {
       $feed->item_count = count($feed->items);
-      $this->assertEqual($expected_count, $feed->item_count, format_string('Total items in feed equal to the total items in database (@val1 != @val2)', array('@val1' => $expected_count, '@val2' => $feed->item_count)));
+      $this->assertEqual($expected_count, $feed->item_count, format_string('Total items in feed equal to the total items in database (@val1 != @val2)', ['@val1' => $expected_count, '@val2' => $feed->item_count]));
     }
   }
 
@@ -198,8 +198,8 @@ public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
    *   Feed object representing the feed.
    */
   public function deleteFeedItems(FeedInterface $feed) {
-    $this->drupalPostForm('admin/config/services/aggregator/delete/' . $feed->id(), array(), t('Delete items'));
-    $this->assertRaw(t('The news items from %title have been deleted.', array('%title' => $feed->label())), 'Feed items deleted.');
+    $this->drupalPostForm('admin/config/services/aggregator/delete/' . $feed->id(), [], t('Delete items'));
+    $this->assertRaw(t('The news items from %title have been deleted.', ['%title' => $feed->label()]), 'Feed items deleted.');
   }
 
   /**
@@ -212,10 +212,10 @@ public function deleteFeedItems(FeedInterface $feed) {
    */
   public function updateAndDelete(FeedInterface $feed, $expected_count) {
     $this->updateFeedItems($feed, $expected_count);
-    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
+    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
     $this->assertTrue($count);
     $this->deleteFeedItems($feed);
-    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
+    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
     $this->assertTrue($count == 0);
   }
 
@@ -231,7 +231,7 @@ public function updateAndDelete(FeedInterface $feed, $expected_count) {
    *   TRUE if feed is unique.
    */
   public function uniqueFeed($feed_name, $feed_url) {
-    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", array(':title' => $feed_name, ':url' => $feed_url))->fetchField();
+    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", [':title' => $feed_name, ':url' => $feed_url])->fetchField();
     return (1 == $result);
   }
 
@@ -358,7 +358,7 @@ public function getHtmlEntitiesSample() {
   public function createSampleNodes($count = 5) {
     // Post $count article nodes.
     for ($i = 0; $i < $count; $i++) {
-      $edit = array();
+      $edit = [];
       $edit['title[0][value]'] = $this->randomMachineName();
       $edit['body[0][value]'] = $this->randomMachineName();
       $this->drupalPostForm('node/add/article', $edit, t('Save'));
@@ -372,10 +372,10 @@ public function enableTestPlugins() {
     $this->config('aggregator.settings')
       ->set('fetcher', 'aggregator_test_fetcher')
       ->set('parser', 'aggregator_test_parser')
-      ->set('processors', array(
+      ->set('processors', [
         'aggregator_test_processor' => 'aggregator_test_processor',
         'aggregator' => 'aggregator',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php b/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php
index 0324e3b..0dbb872 100644
--- a/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php
+++ b/core/modules/aggregator/src/Tests/FeedAdminDisplayTest.php
@@ -14,7 +14,7 @@ class FeedAdminDisplayTest extends AggregatorTestBase {
    */
   public function testFeedUpdateFields() {
     // Create scheduled feed.
-    $scheduled_feed = $this->createFeed(NULL, array('refresh' => '900'));
+    $scheduled_feed = $this->createFeed(NULL, ['refresh' => '900']);
 
     $this->drupalGet('admin/config/services/aggregator');
     $this->assertResponse(200, 'Aggregator feed overview page exists.');
@@ -40,7 +40,7 @@ public function testFeedUpdateFields() {
     $this->deleteFeed($scheduled_feed);
 
     // Create non-scheduled feed.
-    $non_scheduled_feed = $this->createFeed(NULL, array('refresh' => '0'));
+    $non_scheduled_feed = $this->createFeed(NULL, ['refresh' => '0']);
 
     $this->drupalGet('admin/config/services/aggregator');
     // The non scheduled feed shows that it has not been updated yet.
diff --git a/core/modules/aggregator/src/Tests/FeedLanguageTest.php b/core/modules/aggregator/src/Tests/FeedLanguageTest.php
index af8335e..98d04fa 100644
--- a/core/modules/aggregator/src/Tests/FeedLanguageTest.php
+++ b/core/modules/aggregator/src/Tests/FeedLanguageTest.php
@@ -16,14 +16,14 @@ class FeedLanguageTest extends AggregatorTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * List of langcodes.
    *
    * @var string[]
    */
-  protected $langcodes = array();
+  protected $langcodes = [];
 
   /**
    * {@inheritdoc}
@@ -32,12 +32,12 @@ protected function setUp() {
     parent::setUp();
 
     // Create test languages.
-    $this->langcodes = array(ConfigurableLanguage::load('en'));
+    $this->langcodes = [ConfigurableLanguage::load('en')];
     for ($i = 1; $i < 3; ++$i) {
-      $language = ConfigurableLanguage::create(array(
+      $language = ConfigurableLanguage::create([
         'id' => 'l' . $i,
         'label' => $this->randomString(),
-      ));
+      ]);
       $language->save();
       $this->langcodes[$i] = $language->id();
     }
@@ -57,10 +57,10 @@ public function testFeedLanguage() {
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
 
     /** @var \Drupal\aggregator\FeedInterface[] $feeds */
-    $feeds = array();
+    $feeds = [];
     // Create feeds.
-    $feeds[1] = $this->createFeed(NULL, array('langcode[0][value]' => $this->langcodes[1]));
-    $feeds[2] = $this->createFeed(NULL, array('langcode[0][value]' => $this->langcodes[2]));
+    $feeds[1] = $this->createFeed(NULL, ['langcode[0][value]' => $this->langcodes[1]]);
+    $feeds[2] = $this->createFeed(NULL, ['langcode[0][value]' => $this->langcodes[2]]);
 
     // Make sure that the language has been assigned.
     $this->assertEqual($feeds[1]->language()->getId(), $this->langcodes[1]);
@@ -74,7 +74,7 @@ public function testFeedLanguage() {
     // the one from the feed.
     foreach ($feeds as $feed) {
       /** @var \Drupal\aggregator\ItemInterface[] $items */
-      $items = entity_load_multiple_by_properties('aggregator_item', array('fid' => $feed->id()));
+      $items = entity_load_multiple_by_properties('aggregator_item', ['fid' => $feed->id()]);
       $this->assertTrue(count($items) > 0, 'Feed items were created.');
       foreach ($items as $item) {
         $this->assertEqual($item->language()->getId(), $feed->language()->getId());
diff --git a/core/modules/aggregator/src/Tests/UpdateFeedItemTest.php b/core/modules/aggregator/src/Tests/UpdateFeedItemTest.php
index ae78205..67e96f1 100644
--- a/core/modules/aggregator/src/Tests/UpdateFeedItemTest.php
+++ b/core/modules/aggregator/src/Tests/UpdateFeedItemTest.php
@@ -26,47 +26,47 @@ public function testUpdateFeedItem() {
     $this->deleteFeed($feed);
 
     // Test updating feed items without valid timestamp information.
-    $edit = array(
+    $edit = [
       'title[0][value]' => "Feed without publish timestamp",
       'url[0][value]' => $this->getRSS091Sample(),
-    );
+    ];
 
     $this->drupalGet($edit['url[0][value]']);
     $this->assertResponse(200);
 
     $this->drupalPostForm('aggregator/sources/add', $edit, t('Save'));
-    $this->assertText(t('The feed @name has been added.', array('@name' => $edit['title[0][value]'])), format_string('The feed @name has been added.', array('@name' => $edit['title[0][value]'])));
+    $this->assertText(t('The feed @name has been added.', ['@name' => $edit['title[0][value]']]), format_string('The feed @name has been added.', ['@name' => $edit['title[0][value]']]));
 
     // Verify that the creation message contains a link to a feed.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'aggregator/sources/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'aggregator/sources/']);
     $this->assert(isset($view_link), 'The message area contains a link to a feed');
 
-    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE url = :url", array(':url' => $edit['url[0][value]']))->fetchField();
+    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE url = :url", [':url' => $edit['url[0][value]']])->fetchField();
     $feed = Feed::load($fid);
 
     $feed->refreshItems();
-    $before = db_query('SELECT timestamp FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
+    $before = db_query('SELECT timestamp FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
 
     // Sleep for 3 second.
     sleep(3);
     db_update('aggregator_feed')
       ->condition('fid', $feed->id())
-      ->fields(array(
+      ->fields([
         'checked' => 0,
         'hash' => '',
         'etag' => '',
         'modified' => 0,
-      ))
+      ])
       ->execute();
     $feed->refreshItems();
 
-    $after = db_query('SELECT timestamp FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
-    $this->assertTrue($before === $after, format_string('Publish timestamp of feed item was not updated (@before === @after)', array('@before' => $before, '@after' => $after)));
+    $after = db_query('SELECT timestamp FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
+    $this->assertTrue($before === $after, format_string('Publish timestamp of feed item was not updated (@before === @after)', ['@before' => $before, '@after' => $after]));
 
     // Make sure updating items works even after uninstalling a module
     // that provides the selected plugins.
     $this->enableTestPlugins();
-    $this->container->get('module_installer')->uninstall(array('aggregator_test'));
+    $this->container->get('module_installer')->uninstall(['aggregator_test']);
     $this->updateFeedItems($feed);
     $this->assertResponse(200);
   }
diff --git a/core/modules/aggregator/src/Tests/UpdateFeedTest.php b/core/modules/aggregator/src/Tests/UpdateFeedTest.php
index 8c797a5..d230874 100644
--- a/core/modules/aggregator/src/Tests/UpdateFeedTest.php
+++ b/core/modules/aggregator/src/Tests/UpdateFeedTest.php
@@ -12,7 +12,7 @@ class UpdateFeedTest extends AggregatorTestBase {
    * Creates a feed and attempts to update it.
    */
   public function testUpdateFeed() {
-    $remaining_fields = array('title[0][value]', 'url[0][value]', '');
+    $remaining_fields = ['title[0][value]', 'url[0][value]', ''];
     foreach ($remaining_fields as $same_field) {
       $feed = $this->createFeed();
 
@@ -24,10 +24,10 @@ public function testUpdateFeed() {
         $edit[$same_field] = $feed->{$same_field}->value;
       }
       $this->drupalPostForm('aggregator/sources/' . $feed->id() . '/configure', $edit, t('Save'));
-      $this->assertText(t('The feed @name has been updated.', array('@name' => $edit['title[0][value]'])), format_string('The feed %name has been updated.', array('%name' => $edit['title[0][value]'])));
+      $this->assertText(t('The feed @name has been updated.', ['@name' => $edit['title[0][value]']]), format_string('The feed %name has been updated.', ['%name' => $edit['title[0][value]']]));
 
       // Verify that the creation message contains a link to a feed.
-      $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'aggregator/sources/'));
+      $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'aggregator/sources/']);
       $this->assert(isset($view_link), 'The message area contains a link to a feed');
 
       // Check feed data.
diff --git a/core/modules/aggregator/tests/modules/aggregator_test/src/Plugin/aggregator/processor/TestProcessor.php b/core/modules/aggregator/tests/modules/aggregator_test/src/Plugin/aggregator/processor/TestProcessor.php
index 2f73c5f..294697a 100644
--- a/core/modules/aggregator/tests/modules/aggregator_test/src/Plugin/aggregator/processor/TestProcessor.php
+++ b/core/modules/aggregator/tests/modules/aggregator_test/src/Plugin/aggregator/processor/TestProcessor.php
@@ -75,20 +75,20 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $processors = $this->config('aggregator.settings')->get('processors');
     $info = $this->getPluginDefinition();
 
-    $form['processors'][$info['id']] = array(
+    $form['processors'][$info['id']] = [
       '#type' => 'details',
       '#title' => t('Test processor settings'),
       '#description' => $info['description'],
       '#open' => in_array($info['id'], $processors),
-    );
+    ];
     // Add some dummy settings to verify settingsForm is called.
-    $form['processors'][$info['id']]['dummy_length'] = array(
+    $form['processors'][$info['id']]['dummy_length'] = [
       '#title' => t('Dummy length setting'),
       '#type' => 'number',
       '#min' => 1,
       '#max' => 1000,
       '#default_value' => $this->configuration['items']['dummy_length'],
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/aggregator/tests/src/Functional/AggregatorTestBase.php b/core/modules/aggregator/tests/src/Functional/AggregatorTestBase.php
index 9a07135..ddd98bb 100644
--- a/core/modules/aggregator/tests/src/Functional/AggregatorTestBase.php
+++ b/core/modules/aggregator/tests/src/Functional/AggregatorTestBase.php
@@ -34,10 +34,10 @@ protected function setUp() {
 
     // Create an Article node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer news feeds', 'access news feeds', 'create article content'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer news feeds', 'access news feeds', 'create article content']);
     $this->drupalLogin($this->adminUser);
     $this->drupalPlaceBlock('local_tasks_block');
   }
@@ -58,16 +58,16 @@ protected function setUp() {
    *
    * @see getFeedEditArray()
    */
-  public function createFeed($feed_url = NULL, array $edit = array()) {
+  public function createFeed($feed_url = NULL, array $edit = []) {
     $edit = $this->getFeedEditArray($feed_url, $edit);
     $this->drupalPostForm('aggregator/sources/add', $edit, t('Save'));
-    $this->assertText(t('The feed @name has been added.', array('@name' => $edit['title[0][value]'])), format_string('The feed @name has been added.', array('@name' => $edit['title[0][value]'])));
+    $this->assertText(t('The feed @name has been added.', ['@name' => $edit['title[0][value]']]), format_string('The feed @name has been added.', ['@name' => $edit['title[0][value]']]));
 
     // Verify that the creation message contains a link to a feed.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'aggregator/sources/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'aggregator/sources/']);
     $this->assert(isset($view_link), 'The message area contains a link to a feed');
 
-    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE title = :title AND url = :url", array(':title' => $edit['title[0][value]'], ':url' => $edit['url[0][value]']))->fetchField();
+    $fid = db_query("SELECT fid FROM {aggregator_feed} WHERE title = :title AND url = :url", [':title' => $edit['title[0][value]'], ':url' => $edit['url[0][value]']])->fetchField();
     $this->assertTrue(!empty($fid), 'The feed found in database.');
     return Feed::load($fid);
   }
@@ -79,8 +79,8 @@ public function createFeed($feed_url = NULL, array $edit = array()) {
    *   Feed object representing the feed.
    */
   public function deleteFeed(FeedInterface $feed) {
-    $this->drupalPostForm('aggregator/sources/' . $feed->id() . '/delete', array(), t('Delete'));
-    $this->assertRaw(t('The feed %title has been deleted.', array('%title' => $feed->label())), 'Feed deleted successfully.');
+    $this->drupalPostForm('aggregator/sources/' . $feed->id() . '/delete', [], t('Delete'));
+    $this->assertRaw(t('The feed %title has been deleted.', ['%title' => $feed->label()]), 'Feed deleted successfully.');
   }
 
   /**
@@ -95,19 +95,19 @@ public function deleteFeed(FeedInterface $feed) {
    * @return array
    *   A feed array.
    */
-  public function getFeedEditArray($feed_url = NULL, array $edit = array()) {
+  public function getFeedEditArray($feed_url = NULL, array $edit = []) {
     $feed_name = $this->randomMachineName(10);
     if (!$feed_url) {
-      $feed_url = \Drupal::url('view.frontpage.feed_1', array(), array(
-        'query' => array('feed' => $feed_name),
+      $feed_url = \Drupal::url('view.frontpage.feed_1', [], [
+        'query' => ['feed' => $feed_name],
         'absolute' => TRUE,
-      ));
+      ]);
     }
-    $edit += array(
+    $edit += [
       'title[0][value]' => $feed_name,
       'url[0][value]' => $feed_url,
       'refresh' => '900',
-    );
+    ];
     return $edit;
   }
 
@@ -123,19 +123,19 @@ public function getFeedEditArray($feed_url = NULL, array $edit = array()) {
    * @return \Drupal\aggregator\FeedInterface
    *   A feed object.
    */
-  public function getFeedEditObject($feed_url = NULL, array $values = array()) {
+  public function getFeedEditObject($feed_url = NULL, array $values = []) {
     $feed_name = $this->randomMachineName(10);
     if (!$feed_url) {
-      $feed_url = \Drupal::url('view.frontpage.feed_1', array(
-        'query' => array('feed' => $feed_name),
+      $feed_url = \Drupal::url('view.frontpage.feed_1', [
+        'query' => ['feed' => $feed_name],
         'absolute' => TRUE,
-      ));
+      ]);
     }
-    $values += array(
+    $values += [
       'title' => $feed_name,
       'url' => $feed_url,
       'refresh' => '900',
-    );
+    ];
     return Feed::create($values);
   }
 
@@ -165,7 +165,7 @@ public function getDefaultFeedItemCount() {
   public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
     // First, let's ensure we can get to the rss xml.
     $this->drupalGet($feed->getUrl());
-    $this->assertResponse(200, format_string(':url is reachable.', array(':url' => $feed->getUrl())));
+    $this->assertResponse(200, format_string(':url is reachable.', [':url' => $feed->getUrl()]));
 
     // Attempt to access the update link directly without an access token.
     $this->drupalGet('admin/config/services/aggregator/update/' . $feed->id());
@@ -176,15 +176,15 @@ public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
     $this->clickLink('Update items');
 
     // Ensure we have the right number of items.
-    $result = db_query('SELECT iid FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()));
-    $feed->items = array();
+    $result = db_query('SELECT iid FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()]);
+    $feed->items = [];
     foreach ($result as $item) {
       $feed->items[] = $item->iid;
     }
 
     if ($expected_count !== NULL) {
       $feed->item_count = count($feed->items);
-      $this->assertEqual($expected_count, $feed->item_count, format_string('Total items in feed equal to the total items in database (@val1 != @val2)', array('@val1' => $expected_count, '@val2' => $feed->item_count)));
+      $this->assertEqual($expected_count, $feed->item_count, format_string('Total items in feed equal to the total items in database (@val1 != @val2)', ['@val1' => $expected_count, '@val2' => $feed->item_count]));
     }
   }
 
@@ -195,8 +195,8 @@ public function updateFeedItems(FeedInterface $feed, $expected_count = NULL) {
    *   Feed object representing the feed.
    */
   public function deleteFeedItems(FeedInterface $feed) {
-    $this->drupalPostForm('admin/config/services/aggregator/delete/' . $feed->id(), array(), t('Delete items'));
-    $this->assertRaw(t('The news items from %title have been deleted.', array('%title' => $feed->label())), 'Feed items deleted.');
+    $this->drupalPostForm('admin/config/services/aggregator/delete/' . $feed->id(), [], t('Delete items'));
+    $this->assertRaw(t('The news items from %title have been deleted.', ['%title' => $feed->label()]), 'Feed items deleted.');
   }
 
   /**
@@ -209,10 +209,10 @@ public function deleteFeedItems(FeedInterface $feed) {
    */
   public function updateAndDelete(FeedInterface $feed, $expected_count) {
     $this->updateFeedItems($feed, $expected_count);
-    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
+    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
     $this->assertTrue($count);
     $this->deleteFeedItems($feed);
-    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', array(':fid' => $feed->id()))->fetchField();
+    $count = db_query('SELECT COUNT(*) FROM {aggregator_item} WHERE fid = :fid', [':fid' => $feed->id()])->fetchField();
     $this->assertTrue($count == 0);
   }
 
@@ -228,7 +228,7 @@ public function updateAndDelete(FeedInterface $feed, $expected_count) {
    *   TRUE if feed is unique.
    */
   public function uniqueFeed($feed_name, $feed_url) {
-    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", array(':title' => $feed_name, ':url' => $feed_url))->fetchField();
+    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", [':title' => $feed_name, ':url' => $feed_url])->fetchField();
     return (1 == $result);
   }
 
@@ -355,7 +355,7 @@ public function getHtmlEntitiesSample() {
   public function createSampleNodes($count = 5) {
     // Post $count article nodes.
     for ($i = 0; $i < $count; $i++) {
-      $edit = array();
+      $edit = [];
       $edit['title[0][value]'] = $this->randomMachineName();
       $edit['body[0][value]'] = $this->randomMachineName();
       $this->drupalPostForm('node/add/article', $edit, t('Save'));
@@ -369,10 +369,10 @@ public function enableTestPlugins() {
     $this->config('aggregator.settings')
       ->set('fetcher', 'aggregator_test_fetcher')
       ->set('parser', 'aggregator_test_parser')
-      ->set('processors', array(
+      ->set('processors', [
         'aggregator_test_processor' => 'aggregator_test_processor',
         'aggregator' => 'aggregator',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/aggregator/tests/src/Functional/DeleteFeedItemTest.php b/core/modules/aggregator/tests/src/Functional/DeleteFeedItemTest.php
index 95202b8..a8527f6 100644
--- a/core/modules/aggregator/tests/src/Functional/DeleteFeedItemTest.php
+++ b/core/modules/aggregator/tests/src/Functional/DeleteFeedItemTest.php
@@ -13,15 +13,15 @@ class DeleteFeedItemTest extends AggregatorTestBase {
    */
   public function testDeleteFeedItem() {
     // Create a bunch of test feeds.
-    $feed_urls = array();
+    $feed_urls = [];
     // No last-modified, no etag.
-    $feed_urls[] = \Drupal::url('aggregator_test.feed', array(), array('absolute' => TRUE));
+    $feed_urls[] = \Drupal::url('aggregator_test.feed', [], ['absolute' => TRUE]);
     // Last-modified, but no etag.
-    $feed_urls[] = \Drupal::url('aggregator_test.feed', array('use_last_modified' => 1), array('absolute' => TRUE));
+    $feed_urls[] = \Drupal::url('aggregator_test.feed', ['use_last_modified' => 1], ['absolute' => TRUE]);
     // No Last-modified, but etag.
-    $feed_urls[] = \Drupal::url('aggregator_test.feed', array('use_last_modified' => 0, 'use_etag' => 1), array('absolute' => TRUE));
+    $feed_urls[] = \Drupal::url('aggregator_test.feed', ['use_last_modified' => 0, 'use_etag' => 1], ['absolute' => TRUE]);
     // Last-modified and etag.
-    $feed_urls[] = \Drupal::url('aggregator_test.feed', array('use_last_modified' => 1, 'use_etag' => 1), array('absolute' => TRUE));
+    $feed_urls[] = \Drupal::url('aggregator_test.feed', ['use_last_modified' => 1, 'use_etag' => 1], ['absolute' => TRUE]);
 
     foreach ($feed_urls as $feed_url) {
       $feed = $this->createFeed($feed_url);
diff --git a/core/modules/aggregator/tests/src/Functional/DeleteFeedTest.php b/core/modules/aggregator/tests/src/Functional/DeleteFeedTest.php
index 5bf5bd3..7d75696 100644
--- a/core/modules/aggregator/tests/src/Functional/DeleteFeedTest.php
+++ b/core/modules/aggregator/tests/src/Functional/DeleteFeedTest.php
@@ -14,7 +14,7 @@ class DeleteFeedTest extends AggregatorTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   /**
    * Deletes a feed and ensures that all of its services are deleted.
@@ -43,7 +43,7 @@ public function testDeleteFeed() {
     $this->assertResponse(404, 'Deleted feed source does not exists.');
 
     // Check database for feed.
-    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", array(':title' => $feed1->label(), ':url' => $feed1->getUrl()))->fetchField();
+    $result = db_query("SELECT COUNT(*) FROM {aggregator_feed} WHERE title = :title AND url = :url", [':title' => $feed1->label(), ':url' => $feed1->getUrl()])->fetchField();
     $this->assertFalse($result, 'Feed not found in database');
   }
 
diff --git a/core/modules/aggregator/tests/src/Functional/FeedCacheTagsTest.php b/core/modules/aggregator/tests/src/Functional/FeedCacheTagsTest.php
index 1a30720..dc0aab9 100644
--- a/core/modules/aggregator/tests/src/Functional/FeedCacheTagsTest.php
+++ b/core/modules/aggregator/tests/src/Functional/FeedCacheTagsTest.php
@@ -17,7 +17,7 @@ class FeedCacheTagsTest extends EntityWithUriCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('aggregator');
+  public static $modules = ['aggregator'];
 
   /**
    * {@inheritdoc}
@@ -37,13 +37,13 @@ protected function setUp() {
    */
   protected function createEntity() {
     // Create a "Llama" feed.
-    $feed = Feed::create(array(
+    $feed = Feed::create([
       'title' => 'Llama',
       'url' => 'https://www.drupal.org/',
       'refresh' => 900,
       'checked' => 1389919932,
       'description' => 'Drupal.org',
-    ));
+    ]);
     $feed->save();
 
     return $feed;
diff --git a/core/modules/aggregator/tests/src/Functional/FeedParserTest.php b/core/modules/aggregator/tests/src/Functional/FeedParserTest.php
index 00c7b70..ecb2e50 100644
--- a/core/modules/aggregator/tests/src/Functional/FeedParserTest.php
+++ b/core/modules/aggregator/tests/src/Functional/FeedParserTest.php
@@ -30,7 +30,7 @@ public function testRSS091Sample() {
     $feed = $this->createFeed($this->getRSS091Sample());
     $feed->refreshItems();
     $this->drupalGet('aggregator/sources/' . $feed->id());
-    $this->assertResponse(200, format_string('Feed %name exists.', array('%name' => $feed->label())));
+    $this->assertResponse(200, format_string('Feed %name exists.', ['%name' => $feed->label()]));
     $this->assertText('First example feed item title');
     $this->assertLinkByHref('http://example.com/example-turns-one');
     $this->assertText('First example feed item description.');
@@ -53,19 +53,19 @@ public function testAtomSample() {
     $feed = $this->createFeed($this->getAtomSample());
     $feed->refreshItems();
     $this->drupalGet('aggregator/sources/' . $feed->id());
-    $this->assertResponse(200, format_string('Feed %name exists.', array('%name' => $feed->label())));
+    $this->assertResponse(200, format_string('Feed %name exists.', ['%name' => $feed->label()]));
     $this->assertText('Atom-Powered Robots Run Amok');
     $this->assertLinkByHref('http://example.org/2003/12/13/atom03');
     $this->assertText('Some text.');
-    $this->assertEqual('urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a', db_query('SELECT guid FROM {aggregator_item} WHERE link = :link', array(':link' => 'http://example.org/2003/12/13/atom03'))->fetchField(), 'Atom entry id element is parsed correctly.');
+    $this->assertEqual('urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a', db_query('SELECT guid FROM {aggregator_item} WHERE link = :link', [':link' => 'http://example.org/2003/12/13/atom03'])->fetchField(), 'Atom entry id element is parsed correctly.');
 
     // Check for second feed entry.
     $this->assertText('We tried to stop them, but we failed.');
     $this->assertLinkByHref('http://example.org/2003/12/14/atom03');
     $this->assertText('Some other text.');
-    $db_guid = db_query('SELECT guid FROM {aggregator_item} WHERE link = :link', array(
+    $db_guid = db_query('SELECT guid FROM {aggregator_item} WHERE link = :link', [
       ':link' => 'http://example.org/2003/12/14/atom03',
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual('urn:uuid:1225c695-cfb8-4ebb-bbbb-80da344efa6a', $db_guid, 'Atom entry id element is parsed correctly.');
   }
 
@@ -76,7 +76,7 @@ public function testHtmlEntitiesSample() {
     $feed = $this->createFeed($this->getHtmlEntitiesSample());
     $feed->refreshItems();
     $this->drupalGet('aggregator/sources/' . $feed->id());
-    $this->assertResponse(200, format_string('Feed %name exists.', array('%name' => $feed->label())));
+    $this->assertResponse(200, format_string('Feed %name exists.', ['%name' => $feed->label()]));
     $this->assertRaw("Quote&quot; Amp&amp;");
   }
 
@@ -85,12 +85,12 @@ public function testHtmlEntitiesSample() {
    */
   public function testRedirectFeed() {
     $redirect_url = Url::fromRoute('aggregator_test.redirect')->setAbsolute()->toString();
-    $feed = Feed::create(array('url' => $redirect_url, 'title' => $this->randomMachineName()));
+    $feed = Feed::create(['url' => $redirect_url, 'title' => $this->randomMachineName()]);
     $feed->save();
     $feed->refreshItems();
 
     // Make sure that the feed URL was updated correctly.
-    $this->assertEqual($feed->getUrl(), \Drupal::url('aggregator_test.feed', array(), array('absolute' => TRUE)));
+    $this->assertEqual($feed->getUrl(), \Drupal::url('aggregator_test.feed', [], ['absolute' => TRUE]));
   }
 
   /**
@@ -99,13 +99,13 @@ public function testRedirectFeed() {
   public function testInvalidFeed() {
     // Simulate a typo in the URL to force a curl exception.
     $invalid_url = 'http:/www.drupal.org';
-    $feed = Feed::create(array('url' => $invalid_url, 'title' => $this->randomMachineName()));
+    $feed = Feed::create(['url' => $invalid_url, 'title' => $this->randomMachineName()]);
     $feed->save();
 
     // Update the feed. Use the UI to be able to check the message easily.
     $this->drupalGet('admin/config/services/aggregator');
     $this->clickLink(t('Update items'));
-    $this->assertRaw(t('The feed from %title seems to be broken because of error', array('%title' => $feed->label())));
+    $this->assertRaw(t('The feed from %title seems to be broken because of error', ['%title' => $feed->label()]));
   }
 
 }
diff --git a/core/modules/aggregator/tests/src/Functional/FeedProcessorPluginTest.php b/core/modules/aggregator/tests/src/Functional/FeedProcessorPluginTest.php
index 5527d95..bdc63f5 100644
--- a/core/modules/aggregator/tests/src/Functional/FeedProcessorPluginTest.php
+++ b/core/modules/aggregator/tests/src/Functional/FeedProcessorPluginTest.php
@@ -45,7 +45,7 @@ public function testDelete() {
     $description = $feed->description->value ?: '';
     $this->updateAndDelete($feed, NULL);
     // Make sure the feed title is changed.
-    $entities = entity_load_multiple_by_properties('aggregator_feed', array('description' => $description));
+    $entities = entity_load_multiple_by_properties('aggregator_feed', ['description' => $description]);
     $this->assertTrue(empty($entities));
   }
 
@@ -53,11 +53,11 @@ public function testDelete() {
    * Test post-processing functionality.
    */
   public function testPostProcess() {
-    $feed = $this->createFeed(NULL, array('refresh' => 1800));
+    $feed = $this->createFeed(NULL, ['refresh' => 1800]);
     $this->updateFeedItems($feed);
     $feed_id = $feed->id();
     // Reset entity cache manually.
-    \Drupal::entityManager()->getStorage('aggregator_feed')->resetCache(array($feed_id));
+    \Drupal::entityManager()->getStorage('aggregator_feed')->resetCache([$feed_id]);
     // Reload the feed to get new values.
     $feed = Feed::load($feed_id);
     // Make sure its refresh rate doubled.
diff --git a/core/modules/aggregator/tests/src/Functional/ImportOpmlTest.php b/core/modules/aggregator/tests/src/Functional/ImportOpmlTest.php
index 8994e3f..2500b9e 100644
--- a/core/modules/aggregator/tests/src/Functional/ImportOpmlTest.php
+++ b/core/modules/aggregator/tests/src/Functional/ImportOpmlTest.php
@@ -14,7 +14,7 @@ class ImportOpmlTest extends AggregatorTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'help');
+  public static $modules = ['block', 'help'];
 
   /**
    * {@inheritdoc}
@@ -22,7 +22,7 @@ class ImportOpmlTest extends AggregatorTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $admin_user = $this->drupalCreateUser(array('administer news feeds', 'access news feeds', 'create article content', 'administer blocks'));
+    $admin_user = $this->drupalCreateUser(['administer news feeds', 'access news feeds', 'create article content', 'administer blocks']);
     $this->drupalLogin($admin_user);
   }
 
@@ -31,7 +31,7 @@ protected function setUp() {
    */
   public function openImportForm() {
     // Enable the help block.
-    $this->drupalPlaceBlock('help_block', array('region' => 'help'));
+    $this->drupalPlaceBlock('help_block', ['region' => 'help']);
 
     $this->drupalGet('admin/config/services/aggregator/add/opml');
     $this->assertText('A single OPML document may contain many feeds.', 'Found OPML help text.');
@@ -46,19 +46,19 @@ public function openImportForm() {
   public function validateImportFormFields() {
     $before = db_query('SELECT COUNT(*) FROM {aggregator_feed}')->fetchField();
 
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $edit, t('Import'));
     $this->assertRaw(t('<em>Either</em> upload a file or enter a URL.'), 'Error if no fields are filled.');
 
     $path = $this->getEmptyOpml();
-    $edit = array(
+    $edit = [
       'files[upload]' => $path,
       'remote' => file_create_url($path),
-    );
+    ];
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $edit, t('Import'));
     $this->assertRaw(t('<em>Either</em> upload a file or enter a URL.'), 'Error if both fields are filled.');
 
-    $edit = array('remote' => 'invalidUrl://empty');
+    $edit = ['remote' => 'invalidUrl://empty'];
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $edit, t('Import'));
     $this->assertText(t('The URL invalidUrl://empty is not valid.'), 'Error if the URL is invalid.');
 
@@ -76,7 +76,7 @@ protected function submitImportForm() {
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $form, t('Import'));
     $this->assertText(t('No new feed has been added.'), 'Attempting to upload invalid XML.');
 
-    $edit = array('remote' => file_create_url($this->getEmptyOpml()));
+    $edit = ['remote' => file_create_url($this->getEmptyOpml())];
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $edit, t('Import'));
     $this->assertText(t('No new feed has been added.'), 'Attempting to load empty OPML from remote URL.');
 
@@ -88,13 +88,13 @@ protected function submitImportForm() {
     $feeds[0] = $this->getFeedEditArray();
     $feeds[1] = $this->getFeedEditArray();
     $feeds[2] = $this->getFeedEditArray();
-    $edit = array(
+    $edit = [
       'files[upload]' => $this->getValidOpml($feeds),
       'refresh'       => '900',
-    );
+    ];
     $this->drupalPostForm('admin/config/services/aggregator/add/opml', $edit, t('Import'));
-    $this->assertRaw(t('A feed with the URL %url already exists.', array('%url' => $feeds[0]['url[0][value]'])), 'Verifying that a duplicate URL was identified');
-    $this->assertRaw(t('A feed named %title already exists.', array('%title' => $feeds[1]['title[0][value]'])), 'Verifying that a duplicate title was identified');
+    $this->assertRaw(t('A feed with the URL %url already exists.', ['%url' => $feeds[0]['url[0][value]']]), 'Verifying that a duplicate URL was identified');
+    $this->assertRaw(t('A feed named %title already exists.', ['%title' => $feeds[1]['title[0][value]']]), 'Verifying that a duplicate title was identified');
 
     $after = db_query('SELECT COUNT(*) FROM {aggregator_feed}')->fetchField();
     $this->assertEqual($after, 2, 'Verifying that two distinct feeds were added.');
diff --git a/core/modules/aggregator/tests/src/Functional/ItemCacheTagsTest.php b/core/modules/aggregator/tests/src/Functional/ItemCacheTagsTest.php
index 46b076c..09da343 100644
--- a/core/modules/aggregator/tests/src/Functional/ItemCacheTagsTest.php
+++ b/core/modules/aggregator/tests/src/Functional/ItemCacheTagsTest.php
@@ -19,7 +19,7 @@ class ItemCacheTagsTest extends EntityCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('aggregator');
+  public static $modules = ['aggregator'];
 
   /**
    * {@inheritdoc}
@@ -39,21 +39,21 @@ protected function setUp() {
    */
   protected function createEntity() {
     // Create a "Camelids" feed.
-    $feed = Feed::create(array(
+    $feed = Feed::create([
       'title' => 'Camelids',
       'url' => 'https://groups.drupal.org/not_used/167169',
       'refresh' => 900,
       'checked' => 1389919932,
       'description' => 'Drupal Core Group feed',
-    ));
+    ]);
     $feed->save();
 
     // Create a "Llama" aggregator feed item.
-    $item = Item::create(array(
+    $item = Item::create([
       'fid' => $feed->id(),
       'title' => t('Llama'),
       'path' => 'https://www.drupal.org/',
-    ));
+    ]);
     $item->save();
 
     return $item;
@@ -67,14 +67,14 @@ public function testEntityCreation() {
     \Drupal::cache('render')->set('foo', 'bar', CacheBackendInterface::CACHE_PERMANENT, $this->entity->getCacheTags());
 
     // Verify a cache hit.
-    $this->verifyRenderCache('foo', array('aggregator_feed:1'));
+    $this->verifyRenderCache('foo', ['aggregator_feed:1']);
 
     // Now create a feed item in that feed.
-    Item::create(array(
+    Item::create([
       'fid' => $this->entity->getFeedId(),
       'title' => t('Llama 2'),
       'path' => 'https://groups.drupal.org/',
-    ))->save();
+    ])->save();
 
     // Verify a cache miss.
     $this->assertFalse(\Drupal::cache('render')->get('foo'), 'Creating a new feed item invalidates the cache tag of the feed.');
diff --git a/core/modules/aggregator/tests/src/Kernel/FeedValidationTest.php b/core/modules/aggregator/tests/src/Kernel/FeedValidationTest.php
index 81a501e..d8804dd9 100644
--- a/core/modules/aggregator/tests/src/Kernel/FeedValidationTest.php
+++ b/core/modules/aggregator/tests/src/Kernel/FeedValidationTest.php
@@ -17,7 +17,7 @@ class FeedValidationTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('aggregator', 'options');
+  public static $modules = ['aggregator', 'options'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/aggregator/tests/src/Kernel/Migrate/d6/MigrateAggregatorConfigsTest.php b/core/modules/aggregator/tests/src/Kernel/Migrate/d6/MigrateAggregatorConfigsTest.php
index d8f1b6f..280a103 100644
--- a/core/modules/aggregator/tests/src/Kernel/Migrate/d6/MigrateAggregatorConfigsTest.php
+++ b/core/modules/aggregator/tests/src/Kernel/Migrate/d6/MigrateAggregatorConfigsTest.php
@@ -34,7 +34,7 @@ public function testAggregatorSettings() {
     $config = $this->config('aggregator.settings');
     $this->assertIdentical('aggregator', $config->get('fetcher'));
     $this->assertIdentical('aggregator', $config->get('parser'));
-    $this->assertIdentical(array('aggregator'), $config->get('processors'));
+    $this->assertIdentical(['aggregator'], $config->get('processors'));
     $this->assertIdentical(600, $config->get('items.teaser_length'));
     $this->assertIdentical('<a> <b> <br /> <dd> <dl> <dt> <em> <i> <li> <ol> <p> <strong> <u> <ul>', $config->get('items.allowed_html'));
     $this->assertIdentical(9676800, $config->get('items.expire'));
diff --git a/core/modules/aggregator/tests/src/Kernel/Views/IntegrationTest.php b/core/modules/aggregator/tests/src/Kernel/Views/IntegrationTest.php
index a72da23..39f57b2 100644
--- a/core/modules/aggregator/tests/src/Kernel/Views/IntegrationTest.php
+++ b/core/modules/aggregator/tests/src/Kernel/Views/IntegrationTest.php
@@ -21,14 +21,14 @@ class IntegrationTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('aggregator', 'aggregator_test_views', 'system', 'field', 'options', 'user');
+  public static $modules = ['aggregator', 'aggregator_test_views', 'system', 'field', 'options', 'user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_aggregator_items');
+  public static $testViews = ['test_aggregator_items'];
 
   /**
    * The entity storage for aggregator items.
@@ -53,7 +53,7 @@ protected function setUp($import_test_views = TRUE) {
     $this->installEntitySchema('aggregator_item');
     $this->installEntitySchema('aggregator_feed');
 
-    ViewTestData::createTestViews(get_class($this), array('aggregator_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['aggregator_test_views']);
 
     $this->itemStorage = $this->container->get('entity.manager')->getStorage('aggregator_item');
     $this->feedStorage = $this->container->get('entity.manager')->getStorage('aggregator_feed');
@@ -66,19 +66,19 @@ public function testAggregatorItemView() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = \Drupal::service('renderer');
 
-    $feed = $this->feedStorage->create(array(
+    $feed = $this->feedStorage->create([
       'title' => $this->randomMachineName(),
       'url' => 'https://www.drupal.org/',
       'refresh' => 900,
       'checked' => 123543535,
       'description' => $this->randomMachineName(),
-    ));
+    ]);
     $feed->save();
 
-    $items = array();
-    $expected = array();
+    $items = [];
+    $expected = [];
     for ($i = 0; $i < 10; $i++) {
-      $values = array();
+      $values = [];
       $values['fid'] = $feed->id();
       $values['timestamp'] = mt_rand(REQUEST_TIME - 10, REQUEST_TIME + 10);
       $values['title'] = $this->randomMachineName();
@@ -99,13 +99,13 @@ public function testAggregatorItemView() {
     $view = Views::getView('test_aggregator_items');
     $this->executeView($view);
 
-    $column_map = array(
+    $column_map = [
       'iid' => 'iid',
       'title' => 'title',
       'aggregator_item_timestamp' => 'timestamp',
       'description' => 'description',
       'aggregator_item_author' => 'author',
-    );
+    ];
     $this->assertIdenticalResultset($view, $expected, $column_map);
 
     // Ensure that the rendering of the linked title works as expected.
diff --git a/core/modules/aggregator/tests/src/Unit/Menu/AggregatorLocalTasksTest.php b/core/modules/aggregator/tests/src/Unit/Menu/AggregatorLocalTasksTest.php
index c9f6906..7a78ad9 100644
--- a/core/modules/aggregator/tests/src/Unit/Menu/AggregatorLocalTasksTest.php
+++ b/core/modules/aggregator/tests/src/Unit/Menu/AggregatorLocalTasksTest.php
@@ -15,7 +15,7 @@ class AggregatorLocalTasksTest extends LocalTaskIntegrationTestBase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->directoryList = array('aggregator' => 'core/modules/aggregator');
+    $this->directoryList = ['aggregator' => 'core/modules/aggregator'];
     parent::setUp();
   }
 
@@ -25,19 +25,19 @@ protected function setUp() {
    * @dataProvider getAggregatorAdminRoutes
    */
   public function testAggregatorAdminLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('aggregator.admin_overview', 'aggregator.admin_settings'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['aggregator.admin_overview', 'aggregator.admin_settings'],
+    ]);
   }
 
   /**
    * Provides a list of routes to test.
    */
   public function getAggregatorAdminRoutes() {
-    return array(
-      array('aggregator.admin_overview'),
-      array('aggregator.admin_settings'),
-    );
+    return [
+      ['aggregator.admin_overview'],
+      ['aggregator.admin_settings'],
+    ];
   }
 
   /**
@@ -46,9 +46,9 @@ public function getAggregatorAdminRoutes() {
    * @dataProvider getAggregatorSourceRoutes
    */
   public function testAggregatorSourceLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('entity.aggregator_feed.canonical', 'entity.aggregator_feed.edit_form', 'entity.aggregator_feed.delete_form'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['entity.aggregator_feed.canonical', 'entity.aggregator_feed.edit_form', 'entity.aggregator_feed.delete_form'],
+    ]);
     ;
   }
 
@@ -56,10 +56,10 @@ public function testAggregatorSourceLocalTasks($route) {
    * Provides a list of source routes to test.
    */
   public function getAggregatorSourceRoutes() {
-    return array(
-      array('entity.aggregator_feed.canonical'),
-      array('entity.aggregator_feed.edit_form'),
-    );
+    return [
+      ['entity.aggregator_feed.canonical'],
+      ['entity.aggregator_feed.edit_form'],
+    ];
   }
 
 }
diff --git a/core/modules/aggregator/tests/src/Unit/Plugin/AggregatorPluginSettingsBaseTest.php b/core/modules/aggregator/tests/src/Unit/Plugin/AggregatorPluginSettingsBaseTest.php
index 87a5d93..9267237 100644
--- a/core/modules/aggregator/tests/src/Unit/Plugin/AggregatorPluginSettingsBaseTest.php
+++ b/core/modules/aggregator/tests/src/Unit/Plugin/AggregatorPluginSettingsBaseTest.php
@@ -39,20 +39,20 @@ class AggregatorPluginSettingsBaseTest extends UnitTestCase {
    */
   protected function setUp() {
     $this->configFactory = $this->getConfigFactoryStub(
-      array(
-        'aggregator.settings' => array(
-          'processors' => array('aggregator_test'),
-        ),
-        'aggregator_test.settings' => array(),
-      )
+      [
+        'aggregator.settings' => [
+          'processors' => ['aggregator_test'],
+        ],
+        'aggregator_test.settings' => [],
+      ]
     );
-    foreach (array('fetcher', 'parser', 'processor') as $type) {
+    foreach (['fetcher', 'parser', 'processor'] as $type) {
       $this->managers[$type] = $this->getMockBuilder('Drupal\aggregator\Plugin\AggregatorPluginManager')
         ->disableOriginalConstructor()
         ->getMock();
       $this->managers[$type]->expects($this->once())
         ->method('getDefinitions')
-        ->will($this->returnValue(array('aggregator_test' => array('title' => '', 'description' => ''))));
+        ->will($this->returnValue(['aggregator_test' => ['title' => '', 'description' => '']]));
     }
 
     $this->settingsForm = new SettingsForm(
@@ -79,8 +79,8 @@ public function testSettingsForm() {
 
     $test_processor = $this->getMock(
       'Drupal\aggregator_test\Plugin\aggregator\processor\TestProcessor',
-      array('buildConfigurationForm', 'validateConfigurationForm', 'submitConfigurationForm'),
-      array(array(), 'aggregator_test', array('description' => ''), $this->configFactory)
+      ['buildConfigurationForm', 'validateConfigurationForm', 'submitConfigurationForm'],
+      [[], 'aggregator_test', ['description' => ''], $this->configFactory]
     );
     $test_processor->expects($this->at(0))
       ->method('buildConfigurationForm')
@@ -98,7 +98,7 @@ public function testSettingsForm() {
       ->with($this->equalTo('aggregator_test'))
       ->will($this->returnValue($test_processor));
 
-    $form = $this->settingsForm->buildForm(array(), $form_state);
+    $form = $this->settingsForm->buildForm([], $form_state);
     $this->settingsForm->validateForm($form, $form_state);
     $this->settingsForm->submitForm($form, $form_state);
   }
diff --git a/core/modules/ban/ban.install b/core/modules/ban/ban.install
index b2ea1fe..f3c003a 100644
--- a/core/modules/ban/ban.install
+++ b/core/modules/ban/ban.install
@@ -9,27 +9,27 @@
  * Implements hook_schema().
  */
 function ban_schema() {
-  $schema['ban_ip'] = array(
+  $schema['ban_ip'] = [
     'description' => 'Stores banned IP addresses.',
-    'fields' => array(
-      'iid' => array(
+    'fields' => [
+      'iid' => [
         'description' => 'Primary Key: unique ID for IP addresses.',
         'type' => 'serial',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'ip' => array(
+      ],
+      'ip' => [
         'description' => 'IP address',
         'type' => 'varchar_ascii',
         'length' => 40,
         'not null' => TRUE,
         'default' => '',
-      ),
-    ),
-    'indexes' => array(
-      'ip' => array('ip'),
-    ),
-    'primary key' => array('iid'),
-  );
+      ],
+    ],
+    'indexes' => [
+      'ip' => ['ip'],
+    ],
+    'primary key' => ['iid'],
+  ];
   return $schema;
 }
diff --git a/core/modules/ban/ban.module b/core/modules/ban/ban.module
index a1ee238..b8b72c5 100644
--- a/core/modules/ban/ban.module
+++ b/core/modules/ban/ban.module
@@ -15,11 +15,11 @@ function ban_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.ban':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Ban module allows administrators to ban visits to their site from individual IP addresses. For more information, see the <a href=":url">online documentation for the Ban module</a>.', array(':url' => 'https://www.drupal.org/documentation/modules/ban')) . '</p>';
+      $output .= '<p>' . t('The Ban module allows administrators to ban visits to their site from individual IP addresses. For more information, see the <a href=":url">online documentation for the Ban module</a>.', [':url' => 'https://www.drupal.org/documentation/modules/ban']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Banning IP addresses') . '</dt>';
-      $output .= '<dd>' . t('Administrators can enter IP addresses to ban on the <a href=":bans">IP address bans</a> page.', array(':bans' => \Drupal::url('ban.admin_page'))) . '</dd>';
+      $output .= '<dd>' . t('Administrators can enter IP addresses to ban on the <a href=":bans">IP address bans</a> page.', [':bans' => \Drupal::url('ban.admin_page')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
diff --git a/core/modules/ban/src/BanIpManager.php b/core/modules/ban/src/BanIpManager.php
index a92731c..d354f7a 100644
--- a/core/modules/ban/src/BanIpManager.php
+++ b/core/modules/ban/src/BanIpManager.php
@@ -30,7 +30,7 @@ public function __construct(Connection $connection) {
    * {@inheritdoc}
    */
   public function isBanned($ip) {
-    return (bool) $this->connection->query("SELECT * FROM {ban_ip} WHERE ip = :ip", array(':ip' => $ip))->fetchField();
+    return (bool) $this->connection->query("SELECT * FROM {ban_ip} WHERE ip = :ip", [':ip' => $ip])->fetchField();
   }
 
   /**
@@ -45,8 +45,8 @@ public function findAll() {
    */
   public function banIp($ip) {
     $this->connection->merge('ban_ip')
-      ->key(array('ip' => $ip))
-      ->fields(array('ip' => $ip))
+      ->key(['ip' => $ip])
+      ->fields(['ip' => $ip])
       ->execute();
   }
 
@@ -63,7 +63,7 @@ public function unbanIp($id) {
    * {@inheritdoc}
    */
   public function findById($ban_id) {
-    return $this->connection->query("SELECT ip FROM {ban_ip} WHERE iid = :iid", array(':iid' => $ban_id))->fetchField();
+    return $this->connection->query("SELECT ip FROM {ban_ip} WHERE iid = :iid", [':iid' => $ban_id])->fetchField();
   }
 
 }
diff --git a/core/modules/ban/src/Form/BanAdmin.php b/core/modules/ban/src/Form/BanAdmin.php
index a0c769f..731d065 100644
--- a/core/modules/ban/src/Form/BanAdmin.php
+++ b/core/modules/ban/src/Form/BanAdmin.php
@@ -52,47 +52,47 @@ public function getFormId() {
    *   address form field.
    */
   public function buildForm(array $form, FormStateInterface $form_state, $default_ip = '') {
-    $rows = array();
-    $header = array($this->t('banned IP addresses'), $this->t('Operations'));
+    $rows = [];
+    $header = [$this->t('banned IP addresses'), $this->t('Operations')];
     $result = $this->ipManager->findAll();
     foreach ($result as $ip) {
-      $row = array();
+      $row = [];
       $row[] = $ip->ip;
-      $links = array();
-      $links['delete'] = array(
+      $links = [];
+      $links['delete'] = [
         'title' => $this->t('Delete'),
         'url' => Url::fromRoute('ban.delete', ['ban_id' => $ip->iid]),
-      );
-      $row[] = array(
-        'data' => array(
+      ];
+      $row[] = [
+        'data' => [
           '#type' => 'operations',
           '#links' => $links,
-        ),
-      );
+        ],
+      ];
       $rows[] = $row;
     }
 
-    $form['ip'] = array(
+    $form['ip'] = [
       '#title' => $this->t('IP address'),
       '#type' => 'textfield',
       '#size' => 48,
       '#maxlength' => 40,
       '#default_value' => $default_ip,
       '#description' => $this->t('Enter a valid IP address.'),
-    );
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Add'),
-    );
+    ];
 
-    $form['ban_ip_banning_table'] = array(
+    $form['ban_ip_banning_table'] = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
       '#empty' => $this->t('No blocked IP addresses available.'),
       '#weight' => 120,
-    );
+    ];
     return $form;
   }
 
@@ -118,7 +118,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $ip = trim($form_state->getValue('ip'));
     $this->ipManager->banIp($ip);
-    drupal_set_message($this->t('The IP address %ip has been banned.', array('%ip' => $ip)));
+    drupal_set_message($this->t('The IP address %ip has been banned.', ['%ip' => $ip]));
     $form_state->setRedirect('ban.admin_page');
   }
 
diff --git a/core/modules/ban/src/Form/BanDelete.php b/core/modules/ban/src/Form/BanDelete.php
index a8a4962..3d14ca3 100644
--- a/core/modules/ban/src/Form/BanDelete.php
+++ b/core/modules/ban/src/Form/BanDelete.php
@@ -58,7 +58,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to unblock %ip?', array('%ip' => $this->banIp));
+    return $this->t('Are you sure you want to unblock %ip?', ['%ip' => $this->banIp]);
   }
 
   /**
@@ -93,8 +93,8 @@ public function buildForm(array $form, FormStateInterface $form_state, $ban_id =
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->ipManager->unbanIp($this->banIp);
-    $this->logger('user')->notice('Deleted %ip', array('%ip' => $this->banIp));
-    drupal_set_message($this->t('The IP address %ip was deleted.', array('%ip' => $this->banIp)));
+    $this->logger('user')->notice('Deleted %ip', ['%ip' => $this->banIp]);
+    drupal_set_message($this->t('The IP address %ip was deleted.', ['%ip' => $this->banIp]));
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
 
diff --git a/core/modules/ban/src/Plugin/migrate/destination/BlockedIp.php b/core/modules/ban/src/Plugin/migrate/destination/BlockedIp.php
index 94135fd..7c570bb 100644
--- a/core/modules/ban/src/Plugin/migrate/destination/BlockedIp.php
+++ b/core/modules/ban/src/Plugin/migrate/destination/BlockedIp.php
@@ -76,7 +76,7 @@ public function fields(MigrationInterface $migration = NULL) {
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $this->banManager->banIp($row->getDestinationProperty('ip'));
   }
 
diff --git a/core/modules/ban/tests/src/Functional/IpAddressBlockingTest.php b/core/modules/ban/tests/src/Functional/IpAddressBlockingTest.php
index 9738915..0a155fb 100644
--- a/core/modules/ban/tests/src/Functional/IpAddressBlockingTest.php
+++ b/core/modules/ban/tests/src/Functional/IpAddressBlockingTest.php
@@ -18,55 +18,55 @@ class IpAddressBlockingTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('ban');
+  public static $modules = ['ban'];
 
   /**
    * Tests various user input to confirm correct validation and saving of data.
    */
   function testIPAddressValidation() {
     // Create user.
-    $admin_user = $this->drupalCreateUser(array('ban IP addresses'));
+    $admin_user = $this->drupalCreateUser(['ban IP addresses']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('admin/config/people/ban');
 
     // Ban a valid IP address.
-    $edit = array();
+    $edit = [];
     $edit['ip'] = '1.2.3.3';
     $this->drupalPostForm('admin/config/people/ban', $edit, t('Add'));
-    $ip = db_query("SELECT iid from {ban_ip} WHERE ip = :ip", array(':ip' => $edit['ip']))->fetchField();
+    $ip = db_query("SELECT iid from {ban_ip} WHERE ip = :ip", [':ip' => $edit['ip']])->fetchField();
     $this->assertTrue($ip, 'IP address found in database.');
-    $this->assertRaw(t('The IP address %ip has been banned.', array('%ip' => $edit['ip'])), 'IP address was banned.');
+    $this->assertRaw(t('The IP address %ip has been banned.', ['%ip' => $edit['ip']]), 'IP address was banned.');
 
     // Try to block an IP address that's already blocked.
-    $edit = array();
+    $edit = [];
     $edit['ip'] = '1.2.3.3';
     $this->drupalPostForm('admin/config/people/ban', $edit, t('Add'));
     $this->assertText(t('This IP address is already banned.'));
 
     // Try to block a reserved IP address.
-    $edit = array();
+    $edit = [];
     $edit['ip'] = '255.255.255.255';
     $this->drupalPostForm('admin/config/people/ban', $edit, t('Add'));
     $this->assertText(t('Enter a valid IP address.'));
 
     // Try to block a reserved IP address.
-    $edit = array();
+    $edit = [];
     $edit['ip'] = 'test.example.com';
     $this->drupalPostForm('admin/config/people/ban', $edit, t('Add'));
     $this->assertText(t('Enter a valid IP address.'));
 
     // Submit an empty form.
-    $edit = array();
+    $edit = [];
     $edit['ip'] = '';
     $this->drupalPostForm('admin/config/people/ban', $edit, t('Add'));
     $this->assertText(t('Enter a valid IP address.'));
 
     // Pass an IP address as a URL parameter and submit it.
     $submit_ip = '1.2.3.4';
-    $this->drupalPostForm('admin/config/people/ban/' . $submit_ip, array(), t('Add'));
-    $ip = db_query("SELECT iid from {ban_ip} WHERE ip = :ip", array(':ip' => $submit_ip))->fetchField();
+    $this->drupalPostForm('admin/config/people/ban/' . $submit_ip, [], t('Add'));
+    $ip = db_query("SELECT iid from {ban_ip} WHERE ip = :ip", [':ip' => $submit_ip])->fetchField();
     $this->assertTrue($ip, 'IP address found in database');
-    $this->assertRaw(t('The IP address %ip has been banned.', array('%ip' => $submit_ip)), 'IP address was banned.');
+    $this->assertRaw(t('The IP address %ip has been banned.', ['%ip' => $submit_ip]), 'IP address was banned.');
 
     // Submit your own IP address. This fails, although it works when testing
     // manually.
@@ -85,7 +85,7 @@ function testIPAddressValidation() {
     $banIp->banIp($ip);
     $banIp->banIp($ip);
     $query = db_select('ban_ip', 'bip');
-    $query->fields('bip', array('iid'));
+    $query->fields('bip', ['iid']);
     $query->condition('bip.ip', $ip);
     $ip_count = $query->execute()->fetchAll();
     $this->assertEqual(1, count($ip_count));
@@ -93,7 +93,7 @@ function testIPAddressValidation() {
     $banIp->banIp($ip);
     $banIp->banIp($ip);
     $query = db_select('ban_ip', 'bip');
-    $query->fields('bip', array('iid'));
+    $query->fields('bip', ['iid']);
     $query->condition('bip.ip', $ip);
     $ip_count = $query->execute()->fetchAll();
     $this->assertEqual(1, count($ip_count));
diff --git a/core/modules/basic_auth/basic_auth.module b/core/modules/basic_auth/basic_auth.module
index ea64c5b..7d1d01f 100644
--- a/core/modules/basic_auth/basic_auth.module
+++ b/core/modules/basic_auth/basic_auth.module
@@ -15,7 +15,7 @@ function basic_auth_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.basic_auth':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The HTTP Basic Authentication module supplies an <a href="http://en.wikipedia.org/wiki/Basic_access_authentication">HTTP Basic authentication</a> provider for web service requests. This authentication provider authenticates requests using the HTTP Basic Authentication username and password, as an alternative to using Drupal\'s standard cookie-based authentication system. It is only useful if your site provides web services configured to use this type of authentication (for instance, the <a href=":rest_help">RESTful Web Services module</a>). For more information, see the <a href=":hba_do">online documentation for the HTTP Basic Authentication module</a>.', array(':hba_do' => 'https://www.drupal.org/documentation/modules/basic_auth', ':rest_help' => (\Drupal::moduleHandler()->moduleExists('rest')) ? \Drupal::url('help.page', array('name' => 'rest')) : '#')) . '</p>';
+      $output .= '<p>' . t('The HTTP Basic Authentication module supplies an <a href="http://en.wikipedia.org/wiki/Basic_access_authentication">HTTP Basic authentication</a> provider for web service requests. This authentication provider authenticates requests using the HTTP Basic Authentication username and password, as an alternative to using Drupal\'s standard cookie-based authentication system. It is only useful if your site provides web services configured to use this type of authentication (for instance, the <a href=":rest_help">RESTful Web Services module</a>). For more information, see the <a href=":hba_do">online documentation for the HTTP Basic Authentication module</a>.', [':hba_do' => 'https://www.drupal.org/documentation/modules/basic_auth', ':rest_help' => (\Drupal::moduleHandler()->moduleExists('rest')) ? \Drupal::url('help.page', ['name' => 'rest']) : '#']) . '</p>';
       return $output;
   }
 }
diff --git a/core/modules/basic_auth/src/Authentication/Provider/BasicAuth.php b/core/modules/basic_auth/src/Authentication/Provider/BasicAuth.php
index eac482c..c72e3f0 100644
--- a/core/modules/basic_auth/src/Authentication/Provider/BasicAuth.php
+++ b/core/modules/basic_auth/src/Authentication/Provider/BasicAuth.php
@@ -88,7 +88,7 @@ public function authenticate(Request $request) {
     // in to many different user accounts.  We have a reasonably high limit
     // since there may be only one apparent IP for all users at an institution.
     if ($this->flood->isAllowed('basic_auth.failed_login_ip', $flood_config->get('ip_limit'), $flood_config->get('ip_window'))) {
-      $accounts = $this->entityManager->getStorage('user')->loadByProperties(array('name' => $username, 'status' => 1));
+      $accounts = $this->entityManager->getStorage('user')->loadByProperties(['name' => $username, 'status' => 1]);
       $account = reset($accounts);
       if ($account) {
         if ($flood_config->get('uid_only')) {
@@ -127,9 +127,9 @@ public function authenticate(Request $request) {
    */
   public function challengeException(Request $request, \Exception $previous) {
     $site_name = $this->configFactory->get('system.site')->get('name');
-    $challenge = SafeMarkup::format('Basic realm="@realm"', array(
+    $challenge = SafeMarkup::format('Basic realm="@realm"', [
       '@realm' => !empty($site_name) ? $site_name : 'Access restricted',
-    ));
+    ]);
     return new UnauthorizedHttpException((string) $challenge, 'No authentication credentials provided.', $previous);
   }
 
diff --git a/core/modules/basic_auth/src/Tests/Authentication/BasicAuthTest.php b/core/modules/basic_auth/src/Tests/Authentication/BasicAuthTest.php
index 04bb0fd..45b9b35 100644
--- a/core/modules/basic_auth/src/Tests/Authentication/BasicAuthTest.php
+++ b/core/modules/basic_auth/src/Tests/Authentication/BasicAuthTest.php
@@ -22,7 +22,7 @@ class BasicAuthTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('basic_auth', 'router_test', 'locale', 'basic_auth_test');
+  public static $modules = ['basic_auth', 'router_test', 'locale', 'basic_auth_test'];
 
   /**
    * Test http basic authentication.
@@ -55,7 +55,7 @@ public function testBasicAuth() {
     $this->drupalGet('admin');
     $this->assertResponse('403', 'No authentication prompt for routes not explicitly defining authentication providers.');
 
-    $account = $this->drupalCreateUser(array('access administration pages'));
+    $account = $this->drupalCreateUser(['access administration pages']);
 
     $this->basicAuthGet(Url::fromRoute('system.admin'), $account->getUsername(), $account->pass_raw);
     $this->assertNoLink('Log out', 'User is not logged in');
@@ -82,7 +82,7 @@ function testGlobalLoginFloodControl() {
       ->set('user_limit', 4000)
       ->save();
 
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
     $incorrect_user = clone $user;
     $incorrect_user->pass_raw .= 'incorrect';
     $url = Url::fromRoute('router_test.11');
@@ -107,10 +107,10 @@ function testPerUserLoginFloodControl() {
       ->set('user_limit', 2)
       ->save();
 
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
     $incorrect_user = clone $user;
     $incorrect_user->pass_raw .= 'incorrect';
-    $user2 = $this->drupalCreateUser(array());
+    $user2 = $this->drupalCreateUser([]);
     $url = Url::fromRoute('router_test.11');
 
     // Try a failed login.
diff --git a/core/modules/basic_auth/src/Tests/BasicAuthTestTrait.php b/core/modules/basic_auth/src/Tests/BasicAuthTestTrait.php
index b5766fb..8a289b0 100644
--- a/core/modules/basic_auth/src/Tests/BasicAuthTestTrait.php
+++ b/core/modules/basic_auth/src/Tests/BasicAuthTestTrait.php
@@ -51,7 +51,7 @@ protected function basicAuthGet($path, $username, $password, array $options = []
    *
    * @see \Drupal\simpletest\WebTestBase::drupalPostForm()
    */
-  protected function basicAuthPostForm($path, $edit, $submit, $username, $password, array $options = array(), $form_html_id = NULL, $extra_post = NULL) {
+  protected function basicAuthPostForm($path, $edit, $submit, $username, $password, array $options = [], $form_html_id = NULL, $extra_post = NULL) {
     return $this->drupalPostForm($path, $edit, $submit, $options, $this->getBasicAuthHeaders($username, $password), $form_html_id, $extra_post);
   }
 
diff --git a/core/modules/big_pipe/tests/modules/big_pipe_test/src/Form/BigPipeTestForm.php b/core/modules/big_pipe/tests/modules/big_pipe_test/src/Form/BigPipeTestForm.php
index ccb15b7..c56ee32 100644
--- a/core/modules/big_pipe/tests/modules/big_pipe_test/src/Form/BigPipeTestForm.php
+++ b/core/modules/big_pipe/tests/modules/big_pipe_test/src/Form/BigPipeTestForm.php
@@ -20,14 +20,14 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $form['#token'] = FALSE;
 
-    $form['big_pipe'] = array(
+    $form['big_pipe'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('BigPipe works…'),
       '#options' => [
         'js' => $this->t('… with JavaScript'),
         'nojs' => $this->t('… without JavaScript'),
       ],
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/block/block.module b/core/modules/block/block.module
index 7e39da4..ee6a4a1 100644
--- a/core/modules/block/block.module
+++ b/core/modules/block/block.module
@@ -18,24 +18,24 @@
 function block_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.block':
-      $block_content = \Drupal::moduleHandler()->moduleExists('block_content') ? \Drupal::url('help.page', array('name' => 'block_content')) : '#';
+      $block_content = \Drupal::moduleHandler()->moduleExists('block_content') ? \Drupal::url('help.page', ['name' => 'block_content']) : '#';
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Block module allows you to place blocks in regions of your installed themes, and configure block settings. For more information, see the <a href=":blocks-documentation">online documentation for the Block module</a>.', array(':blocks-documentation' => 'https://www.drupal.org/documentation/modules/block/')) . '</p>';
+      $output .= '<p>' . t('The Block module allows you to place blocks in regions of your installed themes, and configure block settings. For more information, see the <a href=":blocks-documentation">online documentation for the Block module</a>.', [':blocks-documentation' => 'https://www.drupal.org/documentation/modules/block/']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Placing and moving blocks') . '</dt>';
-      $output .= '<dd>' . t('You can place a new block in a region by selecting <em>Place block</em> on the <a href=":blocks">Block layout page</a>. Once a block is placed, it can be moved to a different region by drag-and-drop or by using the <em>Region</em> drop-down list, and then clicking <em>Save blocks</em>.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</dd>';
+      $output .= '<dd>' . t('You can place a new block in a region by selecting <em>Place block</em> on the <a href=":blocks">Block layout page</a>. Once a block is placed, it can be moved to a different region by drag-and-drop or by using the <em>Region</em> drop-down list, and then clicking <em>Save blocks</em>.', [':blocks' => \Drupal::url('block.admin_display')]) . '</dd>';
       $output .= '<dt>' . t('Toggling between different themes') . '</dt>';
       $output .= '<dd>' . t('Blocks are placed and configured specifically for each theme. The Block layout page opens with the default theme, but you can toggle to other installed themes.') . '</dd>';
       $output .= '<dt>' . t('Demonstrating block regions for a theme') . '</dt>';
-      $output .= '<dd>' . t('You can see where the regions are for the current theme by clicking the <em>Demonstrate block regions</em> link on the <a href=":blocks">Block layout page</a>. Regions are specific to each theme.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</dd>';
+      $output .= '<dd>' . t('You can see where the regions are for the current theme by clicking the <em>Demonstrate block regions</em> link on the <a href=":blocks">Block layout page</a>. Regions are specific to each theme.', [':blocks' => \Drupal::url('block.admin_display')]) . '</dd>';
       $output .= '<dt>' . t('Configuring block settings') . '</dt>';
-      $output .= '<dd>' . t('To change the settings of an individual block click on the <em>Configure</em> link on the <a href=":blocks">Block layout page</a>. The available options vary depending on the module that provides the block. For all blocks you can change the block title and toggle whether to display it.', array(':blocks' => Drupal::url('block.admin_display'))) . '</dd>';
+      $output .= '<dd>' . t('To change the settings of an individual block click on the <em>Configure</em> link on the <a href=":blocks">Block layout page</a>. The available options vary depending on the module that provides the block. For all blocks you can change the block title and toggle whether to display it.', [':blocks' => Drupal::url('block.admin_display')]) . '</dd>';
       $output .= '<dt>' . t('Controlling visibility') . '</dt>';
       $output .= '<dd>' . t('You can control the visibility of a block by restricting it to specific pages, content types, and/or roles by setting the appropriate options under <em>Visibility settings</em> of the block configuration.') . '</dd>';
       $output .= '<dt>' . t('Adding custom blocks') . '</dt>';
-      $output .= '<dd>' . t('You can add custom blocks, if the <em>Custom Block</em> module is installed. For more information, see the <a href=":blockcontent-help">Custom Block help page</a>.', array(':blockcontent-help' => $block_content)) . '</dd>';
+      $output .= '<dd>' . t('You can add custom blocks, if the <em>Custom Block</em> module is installed. For more information, see the <a href=":blockcontent-help">Custom Block help page</a>.', [':blockcontent-help' => $block_content]) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -43,7 +43,7 @@ function block_help($route_name, RouteMatchInterface $route_match) {
     $demo_theme = $route_match->getParameter('theme') ?: \Drupal::config('system.theme')->get('default');
     $themes = \Drupal::service('theme_handler')->listInfo();
     $output = '<p>' . t('Block placement is specific to each theme on your site. Changes will not be saved until you click <em>Save blocks</em> at the bottom of the page.') . '</p>';
-    $output .= '<p>' . \Drupal::l(t('Demonstrate block regions (@theme)', array('@theme' => $themes[$demo_theme]->info['name'])), new Url('block.admin_demo', array('theme' => $demo_theme))) . '</p>';
+    $output .= '<p>' . \Drupal::l(t('Demonstrate block regions (@theme)', ['@theme' => $themes[$demo_theme]->info['name']]), new Url('block.admin_demo', ['theme' => $demo_theme])) . '</p>';
     return $output;
   }
 }
@@ -52,11 +52,11 @@ function block_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function block_theme() {
-  return array(
-    'block' => array(
+  return [
+    'block' => [
       'render element' => 'elements',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -65,12 +65,12 @@ function block_theme() {
 function block_page_top(array &$page_top) {
   if (\Drupal::routeMatch()->getRouteName() === 'block.admin_demo') {
     $theme = \Drupal::theme()->getActiveTheme()->getName();
-    $page_top['backlink'] = array(
+    $page_top['backlink'] = [
       '#type' => 'link',
       '#title' => t('Exit block region demonstration'),
-      '#options' => array('attributes' => array('class' => array('block-demo-backlink'))),
+      '#options' => ['attributes' => ['class' => ['block-demo-backlink']]],
       '#weight' => -10,
-    );
+    ];
     if (\Drupal::config('system.theme')->get('default') == $theme) {
       $page_top['backlink']['#url'] = Url::fromRoute('block.admin_display');
     }
@@ -108,12 +108,12 @@ function block_themes_installed($theme_list) {
  */
 function block_theme_initialize($theme) {
   // Initialize theme's blocks if none already registered.
-  $has_blocks = \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(array('theme' => $theme));
+  $has_blocks = \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(['theme' => $theme]);
   if (!$has_blocks) {
     $default_theme = \Drupal::config('system.theme')->get('default');
     // Apply only to new theme's visible regions.
     $regions = system_region_list($theme, REGIONS_VISIBLE);
-    $default_theme_blocks = \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(array('theme' => $default_theme));
+    $default_theme_blocks = \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(['theme' => $default_theme]);
     foreach ($default_theme_blocks as $default_theme_block_id => $default_theme_block) {
       if (strpos($default_theme_block_id, $default_theme . '_') === 0) {
         $id = str_replace($default_theme, $theme, $default_theme_block_id);
@@ -161,7 +161,7 @@ function block_rebuild() {
  * Implements hook_theme_suggestions_HOOK().
  */
 function block_theme_suggestions_block(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
 
   $suggestions[] = 'block__' . $variables['elements']['#configuration']['provider'];
   // Hyphens (-) and underscores (_) play a special role in theme suggestions.
diff --git a/core/modules/block/block.post_update.php b/core/modules/block/block.post_update.php
index d3544e8..bd0a67c 100644
--- a/core/modules/block/block.post_update.php
+++ b/core/modules/block/block.post_update.php
@@ -63,10 +63,10 @@ function block_post_update_disable_blocks_with_missing_contexts() {
     $message = t('Encountered an unknown context mapping key coming probably from a contributed or custom module: One or more mappings could not be updated. Please manually review your visibility settings for the following blocks, which are disabled now:');
     $message .= '<ul>';
     foreach ($blocks as $disabled_block_id => $disabled_block) {
-      $message .= '<li>' . t('@label (Visibility: @plugin_ids)', array(
+      $message .= '<li>' . t('@label (Visibility: @plugin_ids)', [
           '@label' => $disabled_block->get('settings')['label'],
           '@plugin_ids' => implode(', ', array_intersect_key($condition_plugin_id_label_map, array_flip(array_keys($block_update_8001[$disabled_block_id]['missing_context_ids']))))
-        )) . '</li>';
+        ]) . '</li>';
     }
     $message .= '</ul>';
 
diff --git a/core/modules/block/src/BlockForm.php b/core/modules/block/src/BlockForm.php
index 42dfbc3..b2d180a 100644
--- a/core/modules/block/src/BlockForm.php
+++ b/core/modules/block/src/BlockForm.php
@@ -140,57 +140,57 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['visibility'] = $this->buildVisibilityInterface([], $form_state);
 
     // If creating a new block, calculate a safe default machine name.
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'machine_name',
       '#maxlength' => 64,
       '#description' => $this->t('A unique name for this block instance. Must be alpha-numeric and underscore separated.'),
       '#default_value' => !$entity->isNew() ? $entity->id() : $this->getUniqueMachineName($entity),
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\block\Entity\Block::load',
         'replace_pattern' => '[^a-z0-9_.]+',
-        'source' => array('settings', 'label'),
-      ),
+        'source' => ['settings', 'label'],
+      ],
       '#required' => TRUE,
       '#disabled' => !$entity->isNew(),
-    );
+    ];
 
     // Theme settings.
     if ($entity->getTheme()) {
-      $form['theme'] = array(
+      $form['theme'] = [
         '#type' => 'value',
         '#value' => $theme,
-      );
+      ];
     }
     else {
-      $theme_options = array();
+      $theme_options = [];
       foreach ($this->themeHandler->listInfo() as $theme_name => $theme_info) {
         if (!empty($theme_info->status)) {
           $theme_options[$theme_name] = $theme_info->info['name'];
         }
       }
-      $form['theme'] = array(
+      $form['theme'] = [
         '#type' => 'select',
         '#options' => $theme_options,
         '#title' => t('Theme'),
         '#default_value' => $theme,
-        '#ajax' => array(
+        '#ajax' => [
           'callback' => '::themeSwitch',
           'wrapper' => 'edit-block-region-wrapper',
-        ),
-      );
+        ],
+      ];
     }
 
     // Hidden weight setting.
     $weight = $entity->isNew() ? $this->getRequest()->query->get('weight', 0) : $entity->getWeight();
-    $form['weight'] = array(
+    $form['weight'] = [
       '#type' => 'hidden',
       '#default_value' => $weight,
-    );
+    ];
 
     // Region settings.
     $entity_region = $entity->getRegion();
     $region = $entity->isNew() ? $this->getRequest()->query->get('region', $entity_region) : $entity_region;
-    $form['region'] = array(
+    $form['region'] = [
       '#type' => 'select',
       '#title' => $this->t('Region'),
       '#description' => $this->t('Select the region where this block should be displayed.'),
@@ -199,7 +199,7 @@ public function form(array $form, FormStateInterface $form_state) {
       '#options' => system_region_list($theme, REGIONS_VISIBLE),
       '#prefix' => '<div id="edit-block-region-wrapper">',
       '#suffix' => '</div>',
-    );
+    ];
     $form['#attached']['library'][] = 'block/drupal.block.admin';
     return $form;
   }
@@ -360,10 +360,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     drupal_set_message($this->t('The block configuration has been saved.'));
     $form_state->setRedirect(
       'block.admin_display_theme',
-      array(
+      [
         'theme' => $form_state->getValue('theme'),
-      ),
-      array('query' => array('block-placement' => Html::getClass($this->entity->id())))
+      ],
+      ['query' => ['block-placement' => Html::getClass($this->entity->id())]]
     );
   }
 
diff --git a/core/modules/block/src/BlockListBuilder.php b/core/modules/block/src/BlockListBuilder.php
index 6e5c968..37b2e8b 100644
--- a/core/modules/block/src/BlockListBuilder.php
+++ b/core/modules/block/src/BlockListBuilder.php
@@ -125,15 +125,15 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Build the form tree.
     $form['blocks'] = $this->buildBlocksForm();
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#tree' => FALSE,
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save blocks'),
       '#button_type' => 'primary',
-    );
+    ];
 
     return $form;
   }
@@ -150,29 +150,29 @@ protected function buildBlocksForm() {
     /** @var \Drupal\block\BlockInterface[] $entities */
     foreach ($entities as $entity_id => $entity) {
       $definition = $entity->getPlugin()->getPluginDefinition();
-      $blocks[$entity->getRegion()][$entity_id] = array(
+      $blocks[$entity->getRegion()][$entity_id] = [
         'label' => $entity->label(),
         'entity_id' => $entity_id,
         'weight' => $entity->getWeight(),
         'entity' => $entity,
         'category' => $definition['category'],
         'status' => $entity->status(),
-      );
+      ];
     }
 
-    $form = array(
+    $form = [
       '#type' => 'table',
-      '#header' => array(
+      '#header' => [
         $this->t('Block'),
         $this->t('Category'),
         $this->t('Region'),
         $this->t('Weight'),
         $this->t('Operations'),
-      ),
-      '#attributes' => array(
+      ],
+      '#attributes' => [
         'id' => 'blocks',
-      ),
-    );
+      ],
+    ];
 
     // Weights range from -delta to +delta, so delta should be at least half
     // of the amount of blocks present. This makes sure all blocks in the same
@@ -188,39 +188,39 @@ protected function buildBlocksForm() {
     // Loop over each region and build blocks.
     $regions = $this->systemRegionList($this->getThemeName(), REGIONS_VISIBLE);
     foreach ($regions as $region => $title) {
-      $form['#tabledrag'][] = array(
+      $form['#tabledrag'][] = [
         'action' => 'match',
         'relationship' => 'sibling',
         'group' => 'block-region-select',
         'subgroup' => 'block-region-' . $region,
         'hidden' => FALSE,
-      );
-      $form['#tabledrag'][] = array(
+      ];
+      $form['#tabledrag'][] = [
         'action' => 'order',
         'relationship' => 'sibling',
         'group' => 'block-weight',
         'subgroup' => 'block-weight-' . $region,
-      );
+      ];
 
-      $form['region-' . $region] = array(
-        '#attributes' => array(
-          'class' => array('region-title', 'region-title-' . $region),
+      $form['region-' . $region] = [
+        '#attributes' => [
+          'class' => ['region-title', 'region-title-' . $region],
           'no_striping' => TRUE,
-        ),
-      );
-      $form['region-' . $region]['title'] = array(
-        '#theme_wrappers' => array(
-          'container' => array(
-            '#attributes' => array('class' => 'region-title__action'),
-          )
-        ),
+        ],
+      ];
+      $form['region-' . $region]['title'] = [
+        '#theme_wrappers' => [
+          'container' => [
+            '#attributes' => ['class' => 'region-title__action'],
+          ]
+        ],
         '#prefix' => $title,
         '#type' => 'link',
         '#title' => $this->t('Place block <span class="visually-hidden">in the %region region</span>', ['%region' => $title]),
         '#url' => Url::fromRoute('block.admin_library', ['theme' => $this->getThemeName()], ['query' => ['region' => $region]]),
-        '#wrapper_attributes' => array(
+        '#wrapper_attributes' => [
           'colspan' => 5,
-        ),
+        ],
         '#attributes' => [
           'class' => ['use-ajax', 'button', 'button--small'],
           'data-dialog-type' => 'modal',
@@ -228,74 +228,74 @@ protected function buildBlocksForm() {
             'width' => 700,
           ]),
         ],
-      );
+      ];
 
-      $form['region-' . $region . '-message'] = array(
-        '#attributes' => array(
-          'class' => array(
+      $form['region-' . $region . '-message'] = [
+        '#attributes' => [
+          'class' => [
             'region-message',
             'region-' . $region . '-message',
             empty($blocks[$region]) ? 'region-empty' : 'region-populated',
-          ),
-        ),
-      );
-      $form['region-' . $region . '-message']['message'] = array(
+          ],
+        ],
+      ];
+      $form['region-' . $region . '-message']['message'] = [
         '#markup' => '<em>' . $this->t('No blocks in this region') . '</em>',
-        '#wrapper_attributes' => array(
+        '#wrapper_attributes' => [
           'colspan' => 5,
-        ),
-      );
+        ],
+      ];
 
       if (isset($blocks[$region])) {
         foreach ($blocks[$region] as $info) {
           $entity_id = $info['entity_id'];
 
-          $form[$entity_id] = array(
-            '#attributes' => array(
-              'class' => array('draggable'),
-            ),
-          );
+          $form[$entity_id] = [
+            '#attributes' => [
+              'class' => ['draggable'],
+            ],
+          ];
           $form[$entity_id]['#attributes']['class'][] = $info['status'] ? 'block-enabled' : 'block-disabled';
           if ($placement && $placement == Html::getClass($entity_id)) {
             $form[$entity_id]['#attributes']['class'][] = 'color-success';
             $form[$entity_id]['#attributes']['class'][] = 'js-block-placed';
           }
-          $form[$entity_id]['info'] = array(
+          $form[$entity_id]['info'] = [
             '#plain_text' => $info['status'] ? $info['label'] : $this->t('@label (disabled)', ['@label' => $info['label']]),
-            '#wrapper_attributes' => array(
-              'class' => array('block'),
-            ),
-          );
-          $form[$entity_id]['type'] = array(
+            '#wrapper_attributes' => [
+              'class' => ['block'],
+            ],
+          ];
+          $form[$entity_id]['type'] = [
             '#markup' => $info['category'],
-          );
-          $form[$entity_id]['region-theme']['region'] = array(
+          ];
+          $form[$entity_id]['region-theme']['region'] = [
             '#type' => 'select',
             '#default_value' => $region,
             '#required' => TRUE,
-            '#title' => $this->t('Region for @block block', array('@block' => $info['label'])),
+            '#title' => $this->t('Region for @block block', ['@block' => $info['label']]),
             '#title_display' => 'invisible',
             '#options' => $regions,
-            '#attributes' => array(
-              'class' => array('block-region-select', 'block-region-' . $region),
-            ),
-            '#parents' => array('blocks', $entity_id, 'region'),
-          );
-          $form[$entity_id]['region-theme']['theme'] = array(
+            '#attributes' => [
+              'class' => ['block-region-select', 'block-region-' . $region],
+            ],
+            '#parents' => ['blocks', $entity_id, 'region'],
+          ];
+          $form[$entity_id]['region-theme']['theme'] = [
             '#type' => 'hidden',
             '#value' => $this->getThemeName(),
-            '#parents' => array('blocks', $entity_id, 'theme'),
-          );
-          $form[$entity_id]['weight'] = array(
+            '#parents' => ['blocks', $entity_id, 'theme'],
+          ];
+          $form[$entity_id]['weight'] = [
             '#type' => 'weight',
             '#default_value' => $info['weight'],
             '#delta' => $weight_delta,
-            '#title' => $this->t('Weight for @block block', array('@block' => $info['label'])),
+            '#title' => $this->t('Weight for @block block', ['@block' => $info['label']]),
             '#title_display' => 'invisible',
-            '#attributes' => array(
-              'class' => array('block-weight', 'block-weight-' . $region),
-            ),
-          );
+            '#attributes' => [
+              'class' => ['block-weight', 'block-weight-' . $region],
+            ],
+          ];
           $form[$entity_id]['operations'] = $this->buildOperations($info['entity']);
         }
       }
@@ -362,7 +362,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $entities = $this->storage->loadMultiple(array_keys($form_state->getValue('blocks')));
     /** @var \Drupal\block\BlockInterface[] $entities */
     foreach ($entities as $entity_id => $entity) {
-      $entity_values = $form_state->getValue(array('blocks', $entity_id));
+      $entity_values = $form_state->getValue(['blocks', $entity_id]);
       $entity->setWeight($entity_values['weight']);
       $entity->setRegion($entity_values['region']);
       $entity->save();
diff --git a/core/modules/block/src/BlockRepository.php b/core/modules/block/src/BlockRepository.php
index 53620a0..4cdd710 100644
--- a/core/modules/block/src/BlockRepository.php
+++ b/core/modules/block/src/BlockRepository.php
@@ -48,10 +48,10 @@ public function __construct(EntityManagerInterface $entity_manager, ThemeManager
   public function getVisibleBlocksPerRegion(array &$cacheable_metadata = []) {
     $active_theme = $this->themeManager->getActiveTheme();
     // Build an array of the region names in the right order.
-    $empty = array_fill_keys($active_theme->getRegions(), array());
+    $empty = array_fill_keys($active_theme->getRegions(), []);
 
-    $full = array();
-    foreach ($this->blockStorage->loadByProperties(array('theme' => $active_theme->getName())) as $block_id => $block) {
+    $full = [];
+    foreach ($this->blockStorage->loadByProperties(['theme' => $active_theme->getName()]) as $block_id => $block) {
       /** @var \Drupal\block\BlockInterface $block */
       $access = $block->access('view', NULL, TRUE);
       $region = $block->getRegion();
diff --git a/core/modules/block/src/BlockViewBuilder.php b/core/modules/block/src/BlockViewBuilder.php
index d3f501b..3b20d7b 100644
--- a/core/modules/block/src/BlockViewBuilder.php
+++ b/core/modules/block/src/BlockViewBuilder.php
@@ -68,16 +68,16 @@ public function buildComponents(array &$build, array $entities, array $displays,
    * {@inheritdoc}
    */
   public function view(EntityInterface $entity, $view_mode = 'full', $langcode = NULL) {
-    $build = $this->viewMultiple(array($entity), $view_mode, $langcode);
+    $build = $this->viewMultiple([$entity], $view_mode, $langcode);
     return reset($build);
   }
 
   /**
    * {@inheritdoc}
    */
-  public function viewMultiple(array $entities = array(), $view_mode = 'full', $langcode = NULL) {
+  public function viewMultiple(array $entities = [], $view_mode = 'full', $langcode = NULL) {
     /** @var \Drupal\block\BlockInterface[] $entities */
-    $build = array();
+    $build = [];
     foreach ($entities as $entity) {
       $entity_id = $entity->id();
       $plugin = $entity->getPlugin();
@@ -87,7 +87,7 @@ public function viewMultiple(array $entities = array(), $view_mode = 'full', $la
 
       // Create the render array for the block as a whole.
       // @see template_preprocess_block().
-      $build[$entity_id] = array(
+      $build[$entity_id] = [
         '#cache' => [
           'keys' => ['entity_view', 'block', $entity->id()],
           'contexts' => Cache::mergeContexts(
@@ -98,7 +98,7 @@ public function viewMultiple(array $entities = array(), $view_mode = 'full', $la
           'max-age' => $plugin->getCacheMaxAge(),
         ],
         '#weight' => $entity->getWeight(),
-      );
+      ];
 
       // Allow altering of cacheability metadata or setting #create_placeholder.
       $this->moduleHandler->alter(['block_build', "block_build_" . $plugin->getBaseId()], $build[$entity_id], $plugin);
@@ -216,7 +216,7 @@ public static function preRender($build) {
       // #contextual_links is information about the *entire* block. Therefore,
       // we must move these properties from $content and merge them into the
       // top-level element.
-      foreach (array('#attributes', '#contextual_links') as $property) {
+      foreach (['#attributes', '#contextual_links'] as $property) {
         if (isset($content[$property])) {
           $build[$property] += $content[$property];
           unset($content[$property]);
@@ -231,10 +231,10 @@ public static function preRender($build) {
       // render cached, so we can avoid the work of having to repeatedly
       // determine whether the block is empty. For instance, modifying or adding
       // entities could cause the block to no longer be empty.
-      $build = array(
+      $build = [
         '#markup' => '',
         '#cache' => $build['#cache'],
-      );
+      ];
       // If $content is not empty, then it contains cacheability metadata, and
       // we must merge it with the existing cacheability metadata. This allows
       // blocks to be empty, yet still bubble cacheability metadata, to indicate
diff --git a/core/modules/block/src/Controller/BlockAddController.php b/core/modules/block/src/Controller/BlockAddController.php
index f983763..973a859 100644
--- a/core/modules/block/src/Controller/BlockAddController.php
+++ b/core/modules/block/src/Controller/BlockAddController.php
@@ -22,7 +22,7 @@ class BlockAddController extends ControllerBase {
    */
   public function blockAddConfigureForm($plugin_id, $theme) {
     // Create a block entity.
-    $entity = $this->entityManager()->getStorage('block')->create(array('plugin' => $plugin_id, 'theme' => $theme));
+    $entity = $this->entityManager()->getStorage('block')->create(['plugin' => $plugin_id, 'theme' => $theme]);
 
     return $this->entityFormBuilder()->getForm($entity);
   }
diff --git a/core/modules/block/src/Controller/BlockController.php b/core/modules/block/src/Controller/BlockController.php
index 58417d5..7398ff9 100644
--- a/core/modules/block/src/Controller/BlockController.php
+++ b/core/modules/block/src/Controller/BlockController.php
@@ -74,7 +74,7 @@ public function demo($theme) {
     $page = [
       '#title' => Html::escape($this->themeHandler->getName($theme)),
       '#type' => 'page',
-      '#attached' => array(
+      '#attached' => [
         'drupalSettings' => [
           // The block demonstration page is not marked as an administrative
           // page by \Drupal::service('router.admin_context')->isAdminRoute()
@@ -83,20 +83,20 @@ public function demo($theme) {
           // is an actual administrative page.
           'path' => ['currentPathIsAdmin' => TRUE],
         ],
-        'library' => array(
+        'library' => [
           'block/drupal.block.admin',
-        ),
-      ),
+        ],
+      ],
     ];
 
     // Show descriptions in each visible page region, nothing else.
     $visible_regions = $this->getVisibleRegionNames($theme);
     foreach (array_keys($visible_regions) as $region) {
-      $page[$region]['block_description'] = array(
+      $page[$region]['block_description'] = [
         '#type' => 'inline_template',
         '#template' => '<div class="block-region demo-block">{{ region_name }}</div>',
-        '#context' => array('region_name' => $visible_regions[$region]),
-      );
+        '#context' => ['region_name' => $visible_regions[$region]],
+      ];
     }
 
     return $page;
diff --git a/core/modules/block/src/Controller/CategoryAutocompleteController.php b/core/modules/block/src/Controller/CategoryAutocompleteController.php
index a856670..c95fd47 100644
--- a/core/modules/block/src/Controller/CategoryAutocompleteController.php
+++ b/core/modules/block/src/Controller/CategoryAutocompleteController.php
@@ -51,10 +51,10 @@ public static function create(ContainerInterface $container) {
    */
   public function autocomplete(Request $request) {
     $typed_category = $request->query->get('q');
-    $matches = array();
+    $matches = [];
     foreach ($this->blockManager->getCategories() as $category) {
       if (stripos($category, $typed_category) === 0) {
-        $matches[] = array('value' => $category, 'label' => Html::escape($category));
+        $matches[] = ['value' => $category, 'label' => Html::escape($category)];
       }
     }
     return new JsonResponse($matches);
diff --git a/core/modules/block/src/Entity/Block.php b/core/modules/block/src/Entity/Block.php
index 63b5205..a0bbd25 100644
--- a/core/modules/block/src/Entity/Block.php
+++ b/core/modules/block/src/Entity/Block.php
@@ -66,7 +66,7 @@ class Block extends ConfigEntityBase implements BlockInterface, EntityWithPlugin
    *
    * @var array
    */
-  protected $settings = array();
+  protected $settings = [];
 
   /**
    * The region this block is placed in.
diff --git a/core/modules/block/src/EventSubscriber/BlockPageDisplayVariantSubscriber.php b/core/modules/block/src/EventSubscriber/BlockPageDisplayVariantSubscriber.php
index 2c85587..5faf8b8 100644
--- a/core/modules/block/src/EventSubscriber/BlockPageDisplayVariantSubscriber.php
+++ b/core/modules/block/src/EventSubscriber/BlockPageDisplayVariantSubscriber.php
@@ -27,7 +27,7 @@ public function onSelectPageDisplayVariant(PageDisplayVariantSelectionEvent $eve
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[RenderEvents::SELECT_PAGE_DISPLAY_VARIANT][] = array('onSelectPageDisplayVariant');
+    $events[RenderEvents::SELECT_PAGE_DISPLAY_VARIANT][] = ['onSelectPageDisplayVariant'];
     return $events;
   }
 
diff --git a/core/modules/block/src/Form/BlockDeleteForm.php b/core/modules/block/src/Form/BlockDeleteForm.php
index 63cdb92..5209b32 100644
--- a/core/modules/block/src/Form/BlockDeleteForm.php
+++ b/core/modules/block/src/Form/BlockDeleteForm.php
@@ -28,10 +28,10 @@ public function getConfirmText() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to remove the @entity-type %label?', array(
+    return $this->t('Are you sure you want to remove the @entity-type %label?', [
       '@entity-type' => $this->getEntity()->getEntityType()->getLowercaseLabel(),
       '%label' => $this->getEntity()->label(),
-    ));
+    ]);
   }
 
   /**
@@ -39,10 +39,10 @@ public function getQuestion() {
    */
   protected function getDeletionMessage() {
     $entity = $this->getEntity();
-    return $this->t('The @entity-type %label has been removed.', array(
+    return $this->t('The @entity-type %label has been removed.', [
       '@entity-type' => $entity->getEntityType()->getLowercaseLabel(),
       '%label' => $entity->label(),
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/block/src/Plugin/Derivative/ThemeLocalTask.php b/core/modules/block/src/Plugin/Derivative/ThemeLocalTask.php
index 74da932..927cb61 100644
--- a/core/modules/block/src/Plugin/Derivative/ThemeLocalTask.php
+++ b/core/modules/block/src/Plugin/Derivative/ThemeLocalTask.php
@@ -48,7 +48,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       if ($this->themeHandler->hasUi($theme_name)) {
         $this->derivatives[$theme_name] = $base_plugin_definition;
         $this->derivatives[$theme_name]['title'] = $theme->info['name'];
-        $this->derivatives[$theme_name]['route_parameters'] = array('theme' => $theme_name);
+        $this->derivatives[$theme_name]['route_parameters'] = ['theme' => $theme_name];
       }
       // Default task!
       if ($default_theme == $theme_name) {
diff --git a/core/modules/block/src/Plugin/migrate/destination/EntityBlock.php b/core/modules/block/src/Plugin/migrate/destination/EntityBlock.php
index c904a37..537b160 100644
--- a/core/modules/block/src/Plugin/migrate/destination/EntityBlock.php
+++ b/core/modules/block/src/Plugin/migrate/destination/EntityBlock.php
@@ -17,10 +17,10 @@ class EntityBlock extends EntityConfigBase {
    */
   protected function getEntityId(Row $row) {
     // Try to find the block by its plugin ID and theme.
-    $properties = array(
+    $properties = [
       'plugin' => $row->getDestinationProperty('plugin'),
       'theme' => $row->getDestinationProperty('theme'),
-    );
+    ];
     $blocks = array_keys($this->storage->loadByProperties($properties));
     return reset($blocks);
   }
diff --git a/core/modules/block/src/Plugin/migrate/process/BlockPluginId.php b/core/modules/block/src/Plugin/migrate/process/BlockPluginId.php
index cd4bce5..0852567 100644
--- a/core/modules/block/src/Plugin/migrate/process/BlockPluginId.php
+++ b/core/modules/block/src/Plugin/migrate/process/BlockPluginId.php
@@ -47,12 +47,12 @@ public function __construct(array $configuration, $plugin_id, array $plugin_defi
    */
   public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration = NULL) {
     $entity_manager = $container->get('entity.manager');
-    $migration_configuration = array(
-      'migration' => array(
+    $migration_configuration = [
+      'migration' => [
         'd6_custom_block',
         'd7_custom_block',
-      ),
-    );
+      ],
+    ];
     return new static(
       $configuration,
       $plugin_id,
diff --git a/core/modules/block/src/Plugin/migrate/process/BlockRegion.php b/core/modules/block/src/Plugin/migrate/process/BlockRegion.php
index 8aba3ee..0eb984f 100644
--- a/core/modules/block/src/Plugin/migrate/process/BlockRegion.php
+++ b/core/modules/block/src/Plugin/migrate/process/BlockRegion.php
@@ -43,7 +43,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    * {@inheritdoc}
    */
   public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
-    $regions = array();
+    $regions = [];
     foreach ($container->get('theme_handler')->listInfo() as $key => $theme) {
       $regions[$key] = $theme->info['regions'];
     }
diff --git a/core/modules/block/src/Plugin/migrate/process/BlockSettings.php b/core/modules/block/src/Plugin/migrate/process/BlockSettings.php
index 9f11be8..68e8f18 100644
--- a/core/modules/block/src/Plugin/migrate/process/BlockSettings.php
+++ b/core/modules/block/src/Plugin/migrate/process/BlockSettings.php
@@ -21,7 +21,7 @@ class BlockSettings extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     list($plugin, $delta, $old_settings, $title) = $value;
-    $settings = array();
+    $settings = [];
     $settings['label'] = $title;
     if ($title) {
       $settings['label_display'] = BlockPluginInterface::BLOCK_LABEL_VISIBLE;
diff --git a/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php b/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
index e38d60b..8860791 100644
--- a/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
+++ b/core/modules/block/src/Plugin/migrate/process/BlockVisibility.php
@@ -59,12 +59,12 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    * {@inheritdoc}
    */
   public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration = NULL) {
-    $migration_configuration = array(
-      'migration' => array(
+    $migration_configuration = [
+      'migration' => [
         'd6_user_role',
         'd7_user_role',
-      ),
-    );
+      ],
+    ];
     return new static(
       $configuration,
       $plugin_id,
@@ -80,18 +80,18 @@ public static function create(ContainerInterface $container, array $configuratio
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     list($old_visibility, $pages, $roles) = $value;
 
-    $visibility = array();
+    $visibility = [];
 
     // If the block is assigned to specific roles, add the user_role condition.
     if ($roles) {
-      $visibility['user_role'] = array(
+      $visibility['user_role'] = [
         'id' => 'user_role',
-        'roles' => array(),
-        'context_mapping' => array(
+        'roles' => [],
+        'context_mapping' => [
           'user' => '@user.current_user_context:current_user',
-        ),
+        ],
         'negate' => FALSE,
-      );
+      ];
 
       foreach ($roles as $key => $role_id) {
         $roles[$key] = $this->migrationPlugin->transform($role_id, $migrate_executable, $row, $destination_property);
@@ -104,12 +104,12 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
       if ($old_visibility == 2) {
         // If the PHP module is present, migrate the visibility code unaltered.
         if ($this->moduleHandler->moduleExists('php')) {
-          $visibility['php'] = array(
+          $visibility['php'] = [
             'id' => 'php',
             // PHP code visibility could not be negated in Drupal 6 or 7.
             'negate' => FALSE,
             'php' => $pages,
-          );
+          ];
         }
         // Skip the row if we're configured to. If not, we don't need to do
         // anything else -- the block will simply have no PHP or request_path
@@ -123,11 +123,11 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
         foreach ($paths as $key => $path) {
           $paths[$key] = $path === '<front>' ? $path : '/' . ltrim($path, '/');
         }
-        $visibility['request_path'] = array(
+        $visibility['request_path'] = [
           'id' => 'request_path',
           'negate' => !$old_visibility,
           'pages' => implode("\n", $paths),
-        );
+        ];
       }
     }
 
diff --git a/core/modules/block/src/Plugin/migrate/source/Block.php b/core/modules/block/src/Plugin/migrate/source/Block.php
index b691283..df4c0e9 100644
--- a/core/modules/block/src/Plugin/migrate/source/Block.php
+++ b/core/modules/block/src/Plugin/migrate/source/Block.php
@@ -81,7 +81,7 @@ protected function initializeIterator() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'bid' => $this->t('The block numeric identifier.'),
       'module' => $this->t('The module providing the block.'),
       'delta' => $this->t('The block\'s delta.'),
@@ -93,7 +93,7 @@ public function fields() {
       'pages' => $this->t('Pages list.'),
       'title' => $this->t('Block title.'),
       'cache' => $this->t('Cache rule.'),
-    );
+    ];
   }
 
   /**
@@ -117,7 +117,7 @@ public function prepareRow(Row $row) {
     $delta = $row->getSourceProperty('delta');
 
     $query = $this->select($this->blockRoleTable, 'br')
-      ->fields('br', array('rid'))
+      ->fields('br', ['rid'])
       ->condition('module', $module)
       ->condition('delta', $delta);
     $query->join($this->userRoleTable, 'ur', 'br.rid = ur.rid');
@@ -125,7 +125,7 @@ public function prepareRow(Row $row) {
       ->fetchCol();
     $row->setSourceProperty('roles', $roles);
 
-    $settings = array();
+    $settings = [];
     switch ($module) {
       case 'aggregator':
         list($type, $id) = explode('-', $delta);
@@ -152,7 +152,7 @@ public function prepareRow(Row $row) {
         $settings['forum']['block_num'] = $this->variableGet('forum_block_num_' . $delta, 5);
         break;
       case 'statistics':
-        foreach (array('statistics_block_top_day_num', 'statistics_block_top_all_num', 'statistics_block_top_last_num') as $name) {
+        foreach (['statistics_block_top_day_num', 'statistics_block_top_all_num', 'statistics_block_top_last_num'] as $name) {
           $settings['statistics'][$name] = $this->variableGet($name, 0);
         }
         break;
diff --git a/core/modules/block/src/Tests/BlockAdminThemeTest.php b/core/modules/block/src/Tests/BlockAdminThemeTest.php
index ab444d5..7736e05 100644
--- a/core/modules/block/src/Tests/BlockAdminThemeTest.php
+++ b/core/modules/block/src/Tests/BlockAdminThemeTest.php
@@ -16,14 +16,14 @@ class BlockAdminThemeTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'contextual');
+  public static $modules = ['block', 'contextual'];
 
   /**
    * Check for the accessibility of the admin theme on the block admin page.
    */
   function testAdminTheme() {
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer themes'));
+    $admin_user = $this->drupalCreateUser(['administer blocks', 'administer themes']);
     $this->drupalLogin($admin_user);
 
     // Ensure that access to block admin page is denied when theme is not
@@ -32,7 +32,7 @@ function testAdminTheme() {
     $this->assertResponse(403);
 
     // Install admin theme and confirm that tab is accessible.
-    \Drupal::service('theme_handler')->install(array('bartik'));
+    \Drupal::service('theme_handler')->install(['bartik']);
     $edit['admin_theme'] = 'bartik';
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
     $this->drupalGet('admin/structure/block/list/bartik');
diff --git a/core/modules/block/src/Tests/BlockLanguageCacheTest.php b/core/modules/block/src/Tests/BlockLanguageCacheTest.php
index fd5871e..269536d 100644
--- a/core/modules/block/src/Tests/BlockLanguageCacheTest.php
+++ b/core/modules/block/src/Tests/BlockLanguageCacheTest.php
@@ -18,25 +18,25 @@ class BlockLanguageCacheTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'language', 'menu_ui');
+  public static $modules = ['block', 'language', 'menu_ui'];
 
   /**
    * List of langcodes.
    *
    * @var array
    */
-  protected $langcodes = array();
+  protected $langcodes = [];
 
   protected function setUp() {
     parent::setUp();
 
     // Create test languages.
-    $this->langcodes = array(ConfigurableLanguage::load('en'));
+    $this->langcodes = [ConfigurableLanguage::load('en')];
     for ($i = 1; $i < 3; ++$i) {
-      $language = ConfigurableLanguage::create(array(
+      $language = ConfigurableLanguage::create([
         'id' => 'l' . $i,
         'label' => $this->randomString(),
-      ));
+      ]);
       $language->save();
       $this->langcodes[$i] = $language;
     }
@@ -47,16 +47,16 @@ protected function setUp() {
    */
   public function testBlockLinks() {
     // Create admin user to be able to access block admin.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer blocks',
       'access administration pages',
       'administer menu',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
 
     // Create the block cache for all languages.
     foreach ($this->langcodes as $langcode) {
-      $this->drupalGet('admin/structure/block', array('language' => $langcode));
+      $this->drupalGet('admin/structure/block', ['language' => $langcode]);
       $this->clickLinkPartialName('Place block');
     }
 
@@ -64,11 +64,11 @@ public function testBlockLinks() {
     $edit['label'] = $this->randomMachineName();
     $edit['id'] = Unicode::strtolower($edit['label']);
     $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save'));
-    $this->assertText(t('Menu @label has been added.', array('@label' => $edit['label'])));
+    $this->assertText(t('Menu @label has been added.', ['@label' => $edit['label']]));
 
     // Check that the block is listed for all languages.
     foreach ($this->langcodes as $langcode) {
-      $this->drupalGet('admin/structure/block', array('language' => $langcode));
+      $this->drupalGet('admin/structure/block', ['language' => $langcode]);
       $this->clickLinkPartialName('Place block');
       $this->assertText($edit['label']);
     }
diff --git a/core/modules/block/src/Tests/BlockRenderOrderTest.php b/core/modules/block/src/Tests/BlockRenderOrderTest.php
index faf667e..d74a90a 100644
--- a/core/modules/block/src/Tests/BlockRenderOrderTest.php
+++ b/core/modules/block/src/Tests/BlockRenderOrderTest.php
@@ -17,14 +17,14 @@ class BlockRenderOrderTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'block');
+  public static $modules = ['node', 'block'];
 
   protected function setUp() {
     parent::setUp();
     // Create a test user.
-    $end_user = $this->drupalCreateUser(array(
+    $end_user = $this->drupalCreateUser([
       'access content',
-    ));
+    ]);
     $this->drupalLogin($end_user);
   }
 
@@ -34,32 +34,32 @@ protected function setUp() {
   function testBlockRenderOrder() {
     // Enable test blocks and place them in the same region.
     $region = 'header';
-    $test_blocks = array(
-      'stark_powered' => array(
+    $test_blocks = [
+      'stark_powered' => [
         'weight' => '-3',
         'id' => 'stark_powered',
         'label' => 'Test block A',
-      ),
-      'stark_by' => array(
+      ],
+      'stark_by' => [
         'weight' => '3',
         'id' => 'stark_by',
         'label' => 'Test block C',
-      ),
-      'stark_drupal' => array(
+      ],
+      'stark_drupal' => [
         'weight' => '3',
         'id' => 'stark_drupal',
         'label' => 'Test block B',
-      ),
-    );
+      ],
+    ];
 
     // Place the test blocks.
     foreach ($test_blocks as $test_block) {
-      $this->drupalPlaceBlock('system_powered_by_block', array(
+      $this->drupalPlaceBlock('system_powered_by_block', [
         'label' => $test_block['label'],
         'region' => $region,
         'weight' => $test_block['weight'],
         'id' => $test_block['id'],
-      ));
+      ]);
     }
 
     $this->drupalGet('');
diff --git a/core/modules/block/src/Tests/BlockSystemBrandingTest.php b/core/modules/block/src/Tests/BlockSystemBrandingTest.php
index f3dfa3c..b5025e8 100644
--- a/core/modules/block/src/Tests/BlockSystemBrandingTest.php
+++ b/core/modules/block/src/Tests/BlockSystemBrandingTest.php
@@ -14,7 +14,7 @@ class BlockSystemBrandingTest extends BlockTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'system');
+  public static $modules = ['block', 'system'];
 
   /**
    * {@inheritdoc}
@@ -26,7 +26,7 @@ protected function setUp() {
       ->set('slogan', 'Community plumbing')
       ->save();
     // Add the system branding block to the page.
-    $this->drupalPlaceBlock('system_branding_block', array('region' => 'header', 'id' => 'site-branding'));
+    $this->drupalPlaceBlock('system_branding_block', ['region' => 'header', 'id' => 'site-branding']);
   }
 
   /**
diff --git a/core/modules/block/src/Tests/BlockTest.php b/core/modules/block/src/Tests/BlockTest.php
index 57f4647..e6066c4 100644
--- a/core/modules/block/src/Tests/BlockTest.php
+++ b/core/modules/block/src/Tests/BlockTest.php
@@ -24,12 +24,12 @@ function testBlockVisibility() {
     $title = $this->randomMachineName(8);
     // Enable a standard block.
     $default_theme = $this->config('system.theme')->get('default');
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName(8)),
       'region' => 'sidebar_first',
       'settings[label]' => $title,
       'settings[label_display]' => TRUE,
-    );
+    ];
     // Set the block to be hidden on any user path, and to be shown only to
     // authenticated users.
     $edit['visibility[request_path][pages]'] = '/user*';
@@ -69,11 +69,11 @@ public function testBlockToggleVisibility() {
     $title = $this->randomMachineName(8);
     // Enable a standard block.
     $default_theme = $this->config('system.theme')->get('default');
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName(8)),
       'region' => 'sidebar_first',
       'settings[label]' => $title,
-    );
+    ];
     $block_id = $edit['id'];
     // Set the block to be shown only to authenticated users.
     $edit['visibility[user_role][roles][' . RoleInterface::AUTHENTICATED_ID . ']'] = TRUE;
@@ -105,12 +105,12 @@ function testBlockVisibilityListedEmpty() {
     $title = $this->randomMachineName(8);
     // Enable a standard block.
     $default_theme = $this->config('system.theme')->get('default');
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName(8)),
       'region' => 'sidebar_first',
       'settings[label]' => $title,
       'visibility[request_path][negate]' => TRUE,
-    );
+    ];
     // Set the block to be hidden on any user path, and to be shown only to
     // authenticated users.
     $this->drupalPostForm('admin/structure/block/add/' . $block_name . '/' . $default_theme, $edit, t('Save block'));
@@ -185,7 +185,7 @@ function testBlock() {
     $this->clickLink('Disable');
 
     // Select the 'Powered by Drupal' block to be configured and moved.
-    $block = array();
+    $block = [];
     $block['id'] = 'system_powered_by_block';
     $block['settings[label]'] = $this->randomMachineName(8);
     $block['settings[label_display]'] = TRUE;
@@ -193,7 +193,7 @@ function testBlock() {
     $block['region'] = 'header';
 
     // Set block title to confirm that interface works and override any custom titles.
-    $this->drupalPostForm('admin/structure/block/add/' . $block['id'] . '/' . $block['theme'], array('settings[label]' => $block['settings[label]'], 'settings[label_display]' => $block['settings[label_display]'], 'id' => $block['id'], 'region' => $block['region']), t('Save block'));
+    $this->drupalPostForm('admin/structure/block/add/' . $block['id'] . '/' . $block['theme'], ['settings[label]' => $block['settings[label]'], 'settings[label_display]' => $block['settings[label_display]'], 'id' => $block['id'], 'region' => $block['region']], t('Save block'));
     $this->assertText(t('The block configuration has been saved.'), 'Block title set.');
     // Check to see if the block was created by checking its configuration.
     $instance = Block::load($block['id']);
@@ -217,23 +217,23 @@ function testBlock() {
     $this->assertNoText(t($block['settings[label]']));
     // Check for <div id="block-my-block-instance-name"> if the machine name
     // is my_block_instance_name.
-    $xpath = $this->buildXPathQuery('//div[@id=:id]/*', array(':id' => 'block-' . str_replace('_', '-', strtolower($block['id']))));
+    $xpath = $this->buildXPathQuery('//div[@id=:id]/*', [':id' => 'block-' . str_replace('_', '-', strtolower($block['id']))]);
     $this->assertNoFieldByXPath($xpath, FALSE, 'Block found in no regions.');
 
     // Test deleting the block from the edit form.
     $this->drupalGet('admin/structure/block/manage/' . $block['id']);
     $this->clickLink(t('Remove block'));
-    $this->assertRaw(t('Are you sure you want to remove the block @name?', array('@name' => $block['settings[label]'])));
-    $this->drupalPostForm(NULL, array(), t('Remove'));
-    $this->assertRaw(t('The block %name has been removed.', array('%name' => $block['settings[label]'])));
+    $this->assertRaw(t('Are you sure you want to remove the block @name?', ['@name' => $block['settings[label]']]));
+    $this->drupalPostForm(NULL, [], t('Remove'));
+    $this->assertRaw(t('The block %name has been removed.', ['%name' => $block['settings[label]']]));
 
     // Test deleting a block via "Configure block" link.
     $block = $this->drupalPlaceBlock('system_powered_by_block');
-    $this->drupalGet('admin/structure/block/manage/' . $block->id(), array('query' => array('destination' => 'admin')));
+    $this->drupalGet('admin/structure/block/manage/' . $block->id(), ['query' => ['destination' => 'admin']]);
     $this->clickLink(t('Remove block'));
-    $this->assertRaw(t('Are you sure you want to remove the block @name?', array('@name' => $block->label())));
-    $this->drupalPostForm(NULL, array(), t('Remove'));
-    $this->assertRaw(t('The block %name has been removed.', array('%name' => $block->label())));
+    $this->assertRaw(t('Are you sure you want to remove the block @name?', ['@name' => $block->label()]));
+    $this->drupalPostForm(NULL, [], t('Remove'));
+    $this->assertRaw(t('The block %name has been removed.', ['%name' => $block->label()]));
     $this->assertUrl('admin');
     $this->assertNoRaw($block->id());
   }
@@ -249,7 +249,7 @@ public function testBlockThemeSelector() {
       $this->drupalGet('admin/structure/block/list/' . $theme);
       $this->assertTitle(t('Block layout') . ' | Drupal');
       // Select the 'Powered by Drupal' block to be placed.
-      $block = array();
+      $block = [];
       $block['id'] = strtolower($this->randomMachineName());
       $block['theme'] = $theme;
       $block['region'] = 'content';
@@ -260,7 +260,7 @@ public function testBlockThemeSelector() {
       // Set the default theme and ensure the block is placed.
       $theme_settings->set('default', $theme)->save();
       $this->drupalGet('');
-      $elements = $this->xpath('//div[@id = :id]', array(':id' => Html::getUniqueId('block-' . $block['id'])));
+      $elements = $this->xpath('//div[@id = :id]', [':id' => Html::getUniqueId('block-' . $block['id'])]);
       $this->assertTrue(!empty($elements), 'The block was found.');
     }
   }
@@ -270,11 +270,11 @@ public function testBlockThemeSelector() {
    */
   function testThemeName() {
     // Enable the help block.
-    $this->drupalPlaceBlock('help_block', array('region' => 'help'));
+    $this->drupalPlaceBlock('help_block', ['region' => 'help']);
     $this->drupalPlaceBlock('local_tasks_block');
     // Explicitly set the default and admin themes.
     $theme = 'block_test_specialchars_theme';
-    \Drupal::service('theme_handler')->install(array($theme));
+    \Drupal::service('theme_handler')->install([$theme]);
     \Drupal::service('router.builder')->rebuild();
     $this->drupalGet('admin/structure/block');
     $this->assertEscaped('<"Cat" & \'Mouse\'>');
@@ -292,20 +292,20 @@ function testHideBlockTitle() {
     $id = strtolower($this->randomMachineName(8));
     // Enable a standard block.
     $default_theme = $this->config('system.theme')->get('default');
-    $edit = array(
+    $edit = [
       'id' => $id,
       'region' => 'sidebar_first',
       'settings[label]' => $title,
-    );
+    ];
     $this->drupalPostForm('admin/structure/block/add/' . $block_name . '/' . $default_theme, $edit, t('Save block'));
     $this->assertText('The block configuration has been saved.', 'Block was saved');
 
     $this->drupalGet('user');
     $this->assertNoText($title, 'Block title was not displayed by default.');
 
-    $edit = array(
+    $edit = [
       'settings[label_display]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/block/manage/' . $id, $edit, t('Save block'));
     $this->assertText('The block configuration has been saved.', 'Block was saved');
 
@@ -330,24 +330,24 @@ function testHideBlockTitle() {
    */
   function moveBlockToRegion(array $block, $region) {
     // Set the created block to a specific region.
-    $block += array('theme' => $this->config('system.theme')->get('default'));
-    $edit = array();
+    $block += ['theme' => $this->config('system.theme')->get('default')];
+    $edit = [];
     $edit['blocks[' . $block['id'] . '][region]'] = $region;
     $this->drupalPostForm('admin/structure/block', $edit, t('Save blocks'));
 
     // Confirm that the block was moved to the proper region.
-    $this->assertText(t('The block settings have been updated.'), format_string('Block successfully moved to %region_name region.', array( '%region_name' => $region)));
+    $this->assertText(t('The block settings have been updated.'), format_string('Block successfully moved to %region_name region.', [ '%region_name' => $region]));
 
     // Confirm that the block is being displayed.
     $this->drupalGet('');
     $this->assertText(t($block['settings[label]']), 'Block successfully being displayed on the page.');
 
     // Confirm that the custom block was found at the proper region.
-    $xpath = $this->buildXPathQuery('//div[@class=:region-class]//div[@id=:block-id]/*', array(
+    $xpath = $this->buildXPathQuery('//div[@class=:region-class]//div[@id=:block-id]/*', [
       ':region-class' => 'region region-' . Html::getClass($region),
       ':block-id' => 'block-' . str_replace('_', '-', strtolower($block['id'])),
-    ));
-    $this->assertFieldByXPath($xpath, NULL, t('Block found in %region_name region.', array('%region_name' => Html::getClass($region))));
+    ]);
+    $this->assertFieldByXPath($xpath, NULL, t('Block found in %region_name region.', ['%region_name' => Html::getClass($region)]));
   }
 
   /**
@@ -367,7 +367,7 @@ public function testBlockCacheTags() {
     $config->save();
 
     // Place the "Powered by Drupal" block.
-    $block = $this->drupalPlaceBlock('system_powered_by_block', array('id' => 'powered'));
+    $block = $this->drupalPlaceBlock('system_powered_by_block', ['id' => 'powered']);
 
     // Prime the page cache.
     $this->drupalGet('<front>');
@@ -377,26 +377,26 @@ public function testBlockCacheTags() {
     // both the page and block caches.
     $this->drupalGet('<front>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = [\Drupal::url('<front>', [], ['absolute' => TRUE]), 'html'];
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       'config:block_list',
       'block_view',
       'config:block.block.powered',
       'config:user.role.anonymous',
       'http_response',
       'rendered',
-    );
+    ];
     sort($expected_cache_tags);
     $keys = \Drupal::service('cache_contexts_manager')->convertTokensToKeys(['languages:language_interface', 'theme', 'user.permissions'])->getKeys();
     $this->assertIdentical($cache_entry->tags, $expected_cache_tags);
     $cache_entry = \Drupal::cache('render')->get('entity_view:block:powered:' . implode(':', $keys));
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       'block_view',
       'config:block.block.powered',
       'rendered',
-    );
+    ];
     sort($expected_cache_tags);
     $this->assertIdentical($cache_entry->tags, $expected_cache_tags);
 
@@ -411,17 +411,17 @@ public function testBlockCacheTags() {
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
 
     // Place the "Powered by Drupal" block another time; verify a cache miss.
-    $block_2 = $this->drupalPlaceBlock('system_powered_by_block', array('id' => 'powered-2'));
+    $block_2 = $this->drupalPlaceBlock('system_powered_by_block', ['id' => 'powered-2']);
     $this->drupalGet('<front>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags.
     $this->drupalGet('<front>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = [\Drupal::url('<front>', [], ['absolute' => TRUE]), 'html'];
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       'config:block_list',
       'block_view',
       'config:block.block.powered',
@@ -429,23 +429,23 @@ public function testBlockCacheTags() {
       'config:user.role.anonymous',
       'http_response',
       'rendered',
-    );
+    ];
     sort($expected_cache_tags);
     $this->assertEqual($cache_entry->tags, $expected_cache_tags);
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       'block_view',
       'config:block.block.powered',
       'rendered',
-    );
+    ];
     sort($expected_cache_tags);
     $keys = \Drupal::service('cache_contexts_manager')->convertTokensToKeys(['languages:language_interface', 'theme', 'user.permissions'])->getKeys();
     $cache_entry = \Drupal::cache('render')->get('entity_view:block:powered:' . implode(':', $keys));
     $this->assertIdentical($cache_entry->tags, $expected_cache_tags);
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       'block_view',
       'config:block.block.powered-2',
       'rendered',
-    );
+    ];
     sort($expected_cache_tags);
     $keys = \Drupal::service('cache_contexts_manager')->convertTokensToKeys(['languages:language_interface', 'theme', 'user.permissions'])->getKeys();
     $cache_entry = \Drupal::cache('render')->get('entity_view:block:powered-2:' . implode(':', $keys));
@@ -456,7 +456,7 @@ public function testBlockCacheTags() {
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
 
     // Delete the "Powered by Drupal" blocks; verify a cache miss.
-    entity_delete_multiple('block', array('powered', 'powered-2'));
+    entity_delete_multiple('block', ['powered', 'powered-2']);
     $this->drupalGet('<front>');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
   }
diff --git a/core/modules/block/src/Tests/BlockTestBase.php b/core/modules/block/src/Tests/BlockTestBase.php
index 970de52..71f0ae6 100644
--- a/core/modules/block/src/Tests/BlockTestBase.php
+++ b/core/modules/block/src/Tests/BlockTestBase.php
@@ -15,7 +15,7 @@
    *
    * @var array
    */
-  public static $modules = array('block', 'filter', 'test_page_test', 'help', 'block_test');
+  public static $modules = ['block', 'filter', 'test_page_test', 'help', 'block_test'];
 
   /**
    * A list of theme regions to test.
@@ -38,31 +38,31 @@ protected function setUp() {
     $this->config('system.site')->set('page.front', '/test-page')->save();
 
     // Create Full HTML text format.
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
-    ));
+    ]);
     $full_html_format->save();
 
     // Create and log in an administrative user having access to the Full HTML
     // text format.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer blocks',
       $full_html_format->getPermissionName(),
       'access administration pages',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
 
     // Define the existing regions.
-    $this->regions = array(
+    $this->regions = [
       'header',
       'sidebar_first',
       'content',
       'sidebar_second',
       'footer',
-    );
+    ];
     $block_storage = $this->container->get('entity_type.manager')->getStorage('block');
-    $blocks = $block_storage->loadByProperties(array('theme' => $this->config('system.theme')->get('default')));
+    $blocks = $block_storage->loadByProperties(['theme' => $this->config('system.theme')->get('default')]);
     foreach ($blocks as $block) {
       $block->delete();
     }
diff --git a/core/modules/block/src/Tests/BlockUiTest.php b/core/modules/block/src/Tests/BlockUiTest.php
index 65183cd..5f18ae1 100644
--- a/core/modules/block/src/Tests/BlockUiTest.php
+++ b/core/modules/block/src/Tests/BlockUiTest.php
@@ -17,7 +17,7 @@ class BlockUiTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test', 'help', 'condition_test');
+  public static $modules = ['block', 'block_test', 'help', 'condition_test'];
 
   protected $regions;
 
@@ -43,30 +43,30 @@ class BlockUiTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
     // Create and log in an administrative user.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer blocks',
       'access administration pages',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
 
     // Enable some test blocks.
-    $this->blockValues = array(
-      array(
+    $this->blockValues = [
+      [
         'label' => 'Tools',
         'tr' => '5',
         'plugin_id' => 'system_menu_block:tools',
-        'settings' => array('region' => 'sidebar_second', 'id' => 'tools'),
+        'settings' => ['region' => 'sidebar_second', 'id' => 'tools'],
         'test_weight' => '-1',
-      ),
-      array(
+      ],
+      [
         'label' => 'Powered by Drupal',
         'tr' => '16',
         'plugin_id' => 'system_powered_by_block',
-        'settings' => array('region' => 'footer', 'id' => 'powered'),
+        'settings' => ['region' => 'footer', 'id' => 'powered'],
         'test_weight' => '0',
-      ),
-    );
-    $this->blocks = array();
+      ],
+    ];
+    $this->blocks = [];
     foreach ($this->blockValues as $values) {
       $this->blocks[] = $this->drupalPlaceBlock($values['plugin_id'], $values['settings']);
     }
@@ -76,13 +76,13 @@ protected function setUp() {
    * Test block demo page exists and functions correctly.
    */
   public function testBlockDemoUiPage() {
-    $this->drupalPlaceBlock('help_block', array('region' => 'help'));
+    $this->drupalPlaceBlock('help_block', ['region' => 'help']);
     $this->drupalGet('admin/structure/block');
-    $this->clickLink(t('Demonstrate block regions (@theme)', array('@theme' => 'Classy')));
-    $elements = $this->xpath('//div[contains(@class, "region-highlighted")]/div[contains(@class, "block-region") and contains(text(), :title)]', array(':title' => 'Highlighted'));
+    $this->clickLink(t('Demonstrate block regions (@theme)', ['@theme' => 'Classy']));
+    $elements = $this->xpath('//div[contains(@class, "region-highlighted")]/div[contains(@class, "block-region") and contains(text(), :title)]', [':title' => 'Highlighted']);
     $this->assertTrue(!empty($elements), 'Block demo regions are shown.');
 
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
     $this->drupalGet('admin/structure/block/demo/test_theme');
     $this->assertEscaped('<strong>Test theme</strong>');
 
@@ -163,11 +163,11 @@ function testBlockAdminUiPage() {
    * Tests the block categories on the listing page.
    */
   public function testCandidateBlockList() {
-    $arguments = array(
+    $arguments = [
       ':title' => 'Display message',
       ':category' => 'Block test',
       ':href' => 'admin/structure/block/add/test_block_instantiation/classy',
-    );
+    ];
     $pattern = '//tr[.//td/div[text()=:title] and .//td[text()=:category] and .//td//a[contains(@href, :href)]]';
 
     $this->drupalGet('admin/structure/block');
@@ -190,11 +190,11 @@ public function testCandidateBlockList() {
    * Tests the behavior of unsatisfied context-aware blocks.
    */
   public function testContextAwareUnsatisfiedBlocks() {
-    $arguments = array(
+    $arguments = [
       ':category' => 'Block test',
       ':href' => 'admin/structure/block/add/test_context_aware_unsatisfied/classy',
       ':text' => 'Test context-aware unsatisfied block',
-    );
+    ];
 
     $this->drupalGet('admin/structure/block');
     $this->clickLinkPartialName('Place block');
@@ -215,11 +215,11 @@ public function testContextAwareBlocks() {
     $this->assertNoRaw($expected_text);
 
     $block_url = 'admin/structure/block/add/test_context_aware/classy';
-    $arguments = array(
+    $arguments = [
       ':title' => 'Test context-aware block',
       ':category' => 'Block test',
       ':href' => $block_url,
-    );
+    ];
     $pattern = '//tr[.//td/div[text()=:title] and .//td[text()=:category] and .//td//a[contains(@href, :href)]]';
 
     $this->drupalGet('admin/structure/block');
@@ -282,7 +282,7 @@ public function testMachineNameSuggestion() {
    */
   public function testBlockPlacementIndicator() {
     // Select the 'Powered by Drupal' block to be placed.
-    $block = array();
+    $block = [];
     $block['id'] = strtolower($this->randomMachineName());
     $block['theme'] = 'classy';
     $block['region'] = 'content';
@@ -292,7 +292,7 @@ public function testBlockPlacementIndicator() {
     $this->assertUrl('admin/structure/block/list/classy?block-placement=' . Html::getClass($block['id']));
 
     // Resaving the block page will remove the block indicator.
-    $this->drupalPostForm(NULL, array(), t('Save blocks'));
+    $this->drupalPostForm(NULL, [], t('Save blocks'));
     $this->assertUrl('admin/structure/block/list/classy');
   }
 
diff --git a/core/modules/block/src/Tests/NonDefaultBlockAdminTest.php b/core/modules/block/src/Tests/NonDefaultBlockAdminTest.php
index 218832d..9f3590c 100644
--- a/core/modules/block/src/Tests/NonDefaultBlockAdminTest.php
+++ b/core/modules/block/src/Tests/NonDefaultBlockAdminTest.php
@@ -16,7 +16,7 @@ class NonDefaultBlockAdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   /**
    * {@inheritdoc}
@@ -31,10 +31,10 @@ protected function setUp() {
    * Test non-default theme admin.
    */
   function testNonDefaultBlockAdmin() {
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer themes'));
+    $admin_user = $this->drupalCreateUser(['administer blocks', 'administer themes']);
     $this->drupalLogin($admin_user);
     $new_theme = 'bartik';
-    \Drupal::service('theme_handler')->install(array($new_theme));
+    \Drupal::service('theme_handler')->install([$new_theme]);
     $this->drupalGet('admin/structure/block/list/' . $new_theme);
     $this->assertText('Bartik(' . t('active tab') . ')', 'Tab for non-default theme found.');
   }
diff --git a/core/modules/block/src/Tests/Views/DisplayBlockTest.php b/core/modules/block/src/Tests/Views/DisplayBlockTest.php
index 31f531c..3d35845 100644
--- a/core/modules/block/src/Tests/Views/DisplayBlockTest.php
+++ b/core/modules/block/src/Tests/Views/DisplayBlockTest.php
@@ -26,19 +26,19 @@ class DisplayBlockTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'block_test_views', 'test_page_test', 'contextual', 'views_ui');
+  public static $modules = ['node', 'block_test_views', 'test_page_test', 'contextual', 'views_ui'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view_block', 'test_view_block2');
+  public static $testViews = ['test_view_block', 'test_view_block2'];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('block_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['block_test_views']);
     $this->enableViewsTestModule();
   }
 
@@ -46,10 +46,10 @@ protected function setUp() {
    * Tests default and custom block categories.
    */
   public function testBlockCategory() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer views', 'administer blocks')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views', 'administer blocks']));
 
     // Create a new view in the UI.
-    $edit = array();
+    $edit = [];
     $edit['label'] = $this->randomString();
     $edit['id'] = strtolower($this->randomMachineName());
     $edit['show[wizard_key]'] = 'standard:views_test_data';
@@ -62,20 +62,20 @@ public function testBlockCategory() {
 
     // Test that the block was given a default category corresponding to its
     // base table.
-    $arguments = array(
-      ':href' => \Drupal::Url('block.admin_add', array(
+    $arguments = [
+      ':href' => \Drupal::Url('block.admin_add', [
         'plugin_id' => 'views_block:' . $edit['id'] . '-block_1',
         'theme' => 'classy',
-      )),
+      ]),
       ':category' => t('Lists (Views)'),
-    );
+    ];
     $this->drupalGet('admin/structure/block');
     $this->clickLinkPartialName('Place block');
     $elements = $this->xpath($pattern, $arguments);
     $this->assertTrue(!empty($elements), 'The test block appears in the category for its base table.');
 
     // Duplicate the block before changing the category.
-    $this->drupalPostForm('admin/structure/views/view/' . $edit['id'] . '/edit/block_1', array(), t('Duplicate @display_title', array('@display_title' => 'Block')));
+    $this->drupalPostForm('admin/structure/views/view/' . $edit['id'] . '/edit/block_1', [], t('Duplicate @display_title', ['@display_title' => 'Block']));
     $this->assertUrl('admin/structure/views/view/' . $edit['id'] . '/edit/block_2');
 
     // Change the block category to a random string.
@@ -84,13 +84,13 @@ public function testBlockCategory() {
     $this->assertTrue(!empty($link));
     $this->clickLink(t('Lists (Views)'));
     $category = $this->randomString();
-    $this->drupalPostForm(NULL, array('block_category' => $category), t('Apply'));
+    $this->drupalPostForm(NULL, ['block_category' => $category], t('Apply'));
 
     // Duplicate the block after changing the category.
-    $this->drupalPostForm(NULL, array(), t('Duplicate @display_title', array('@display_title' => 'Block')));
+    $this->drupalPostForm(NULL, [], t('Duplicate @display_title', ['@display_title' => 'Block']));
     $this->assertUrl('admin/structure/views/view/' . $edit['id'] . '/edit/block_3');
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Test that the blocks are listed under the correct categories.
     $arguments[':category'] = $category;
@@ -99,23 +99,23 @@ public function testBlockCategory() {
     $elements = $this->xpath($pattern, $arguments);
     $this->assertTrue(!empty($elements), 'The test block appears in the custom category.');
 
-    $arguments = array(
-      ':href' => \Drupal::Url('block.admin_add', array(
+    $arguments = [
+      ':href' => \Drupal::Url('block.admin_add', [
         'plugin_id' => 'views_block:' . $edit['id'] . '-block_2',
         'theme' => 'classy',
-      )),
+      ]),
       ':category' => t('Lists (Views)'),
-    );
+    ];
     $elements = $this->xpath($pattern, $arguments);
     $this->assertTrue(!empty($elements), 'The first duplicated test block remains in the original category.');
 
-    $arguments = array(
-      ':href' => \Drupal::Url('block.admin_add', array(
+    $arguments = [
+      ':href' => \Drupal::Url('block.admin_add', [
         'plugin_id' => 'views_block:' . $edit['id'] . '-block_3',
         'theme' => 'classy',
-      )),
+      ]),
       ':category' => $category,
-    );
+    ];
     $elements = $this->xpath($pattern, $arguments);
     $this->assertTrue(!empty($elements), 'The second duplicated test block appears in the custom category.');
   }
@@ -126,13 +126,13 @@ public function testBlockCategory() {
   public function testDeleteBlockDisplay() {
     // To test all combinations possible we first place create two instances
     // of the block display of the first view.
-    $block_1 = $this->drupalPlaceBlock('views_block:test_view_block-block_1', array('label' => 'test_view_block-block_1:1'));
-    $block_2 = $this->drupalPlaceBlock('views_block:test_view_block-block_1', array('label' => 'test_view_block-block_1:2'));
+    $block_1 = $this->drupalPlaceBlock('views_block:test_view_block-block_1', ['label' => 'test_view_block-block_1:1']);
+    $block_2 = $this->drupalPlaceBlock('views_block:test_view_block-block_1', ['label' => 'test_view_block-block_1:2']);
 
     // Then we add one instance of blocks for each of the two displays of the
     // second view.
-    $block_3 = $this->drupalPlaceBlock('views_block:test_view_block2-block_1', array('label' => 'test_view_block2-block_1'));
-    $block_4 = $this->drupalPlaceBlock('views_block:test_view_block2-block_2', array('label' => 'test_view_block2-block_2'));
+    $block_3 = $this->drupalPlaceBlock('views_block:test_view_block2-block_1', ['label' => 'test_view_block2-block_1']);
+    $block_4 = $this->drupalPlaceBlock('views_block:test_view_block2-block_2', ['label' => 'test_view_block2-block_2']);
 
     $this->drupalGet('test-page');
     $this->assertBlockAppears($block_1);
@@ -177,7 +177,7 @@ public function testDeleteBlockDisplay() {
    * Test the block form for a Views block.
    */
   public function testViewsBlockForm() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer blocks')));
+    $this->drupalLogin($this->drupalCreateUser(['administer blocks']));
     $default_theme = $this->config('system.theme')->get('default');
     $this->drupalGet('admin/structure/block/add/views_block:test_view_block-block_1/' . $default_theme);
     $elements = $this->xpath('//input[@name="label"]');
@@ -239,7 +239,7 @@ public function testViewsBlockForm() {
    */
   public function testBlockRendering() {
     // Create a block and set a custom title.
-    $block = $this->drupalPlaceBlock('views_block:test_view_block-block_1', array('label' => 'test_view_block-block_1:1', 'views_label' => 'Custom title'));
+    $block = $this->drupalPlaceBlock('views_block:test_view_block-block_1', ['label' => 'test_view_block-block_1:1', 'views_label' => 'Custom title']);
     $this->drupalGet('');
 
     $result = $this->xpath('//div[contains(@class, "region-sidebar-first")]/div[contains(@class, "block-views")]/h2');
@@ -276,7 +276,7 @@ public function testBlockEmptyRendering() {
     $view = View::load('test_view_block');
     $view->invalidateCaches();
 
-    $block = $this->drupalPlaceBlock('views_block:test_view_block-block_1', array('label' => 'test_view_block-block_1:1', 'views_label' => 'Custom title'));
+    $block = $this->drupalPlaceBlock('views_block:test_view_block-block_1', ['label' => 'test_view_block-block_1:1', 'views_label' => 'Custom title']);
     $this->drupalGet('');
     $this->assertEqual(1, count($this->xpath('//div[contains(@class, "block-views-blocktest-view-block-block-1")]')));
 
@@ -349,7 +349,7 @@ public function testBlockEmptyRendering() {
    * Tests the contextual links on a Views block.
    */
   public function testBlockContextualLinks() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer views', 'access contextual links', 'administer blocks')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views', 'access contextual links', 'administer blocks']));
     $block = $this->drupalPlaceBlock('views_block:test_view_block-block_1');
     $cached_block = $this->drupalPlaceBlock('views_block:test_view_block-block_1');
     $this->drupalGet('test-page');
@@ -357,13 +357,13 @@ public function testBlockContextualLinks() {
     $id = 'block:block=' . $block->id() . ':langcode=en|entity.view.edit_form:view=test_view_block:location=block&name=test_view_block&display_id=block_1&langcode=en';
     $cached_id = 'block:block=' . $cached_block->id() . ':langcode=en|entity.view.edit_form:view=test_view_block:location=block&name=test_view_block&display_id=block_1&langcode=en';
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:assertContextualLinkPlaceHolder()
-    $this->assertRaw('<div' . new Attribute(array('data-contextual-id' => $id)) . '></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $id)));
-    $this->assertRaw('<div' . new Attribute(array('data-contextual-id' => $cached_id)) . '></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $cached_id)));
+    $this->assertRaw('<div' . new Attribute(['data-contextual-id' => $id]) . '></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $id]));
+    $this->assertRaw('<div' . new Attribute(['data-contextual-id' => $cached_id]) . '></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $cached_id]));
 
     // Get server-rendered contextual links.
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:renderContextualLinks()
-    $post = array('ids[0]' => $id, 'ids[1]' => $cached_id);
-    $response = $this->drupalPostWithFormat('contextual/render', 'json', $post, array('query' => array('destination' => 'test-page')));
+    $post = ['ids[0]' => $id, 'ids[1]' => $cached_id];
+    $response = $this->drupalPostWithFormat('contextual/render', 'json', $post, ['query' => ['destination' => 'test-page']]);
     $this->assertResponse(200);
     $json = Json::decode($response);
     $this->assertIdentical($json[$id], '<ul class="contextual-links"><li class="block-configure"><a href="' . base_path() . 'admin/structure/block/manage/' . $block->id() . '">Configure block</a></li><li class="entityviewedit-form"><a href="' . base_path() . 'admin/structure/views/view/test_view_block/edit/block_1">Edit view</a></li></ul>');
diff --git a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestBlockInstantiation.php b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestBlockInstantiation.php
index e5ad8da..0d14639 100644
--- a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestBlockInstantiation.php
+++ b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestBlockInstantiation.php
@@ -21,9 +21,9 @@ class TestBlockInstantiation extends BlockBase {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'display_message' => 'no message set',
-    );
+    ];
   }
 
   /**
@@ -37,11 +37,11 @@ protected function blockAccess(AccountInterface $account) {
    * {@inheritdoc}
    */
   public function blockForm($form, FormStateInterface $form_state) {
-    $form['display_message'] = array(
+    $form['display_message'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Display message'),
       '#default_value' => $this->configuration['display_message'],
-    );
+    ];
     return $form;
   }
 
@@ -56,9 +56,9 @@ public function blockSubmit($form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function build() {
-    return array(
+    return [
       '#children' => $this->configuration['display_message'],
-    );
+    ];
   }
 
 }
diff --git a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestCacheBlock.php b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestCacheBlock.php
index b395b92..5fec14c 100644
--- a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestCacheBlock.php
+++ b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestCacheBlock.php
@@ -20,7 +20,7 @@ class TestCacheBlock extends BlockBase {
   public function build() {
     $content = \Drupal::state()->get('block_test.content');
 
-    $build = array();
+    $build = [];
     if (!empty($content)) {
       $build['#markup'] = $content;
     }
diff --git a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestContextAwareBlock.php b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestContextAwareBlock.php
index bc7f20b..7db350d 100644
--- a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestContextAwareBlock.php
+++ b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestContextAwareBlock.php
@@ -25,11 +25,11 @@ class TestContextAwareBlock extends BlockBase {
   public function build() {
     /** @var $user \Drupal\user\UserInterface */
     $user = $this->getContextValue('user');
-    return array(
+    return [
       '#prefix' => '<div id="' . $this->getPluginId() . '--username">',
       '#suffix' => '</div>',
       '#markup' => $user ? $user->getUsername() : 'No context mapping selected.' ,
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestHtmlBlock.php b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestHtmlBlock.php
index de90af4..35f08c4 100644
--- a/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestHtmlBlock.php
+++ b/core/modules/block/tests/modules/block_test/src/Plugin/Block/TestHtmlBlock.php
@@ -18,10 +18,10 @@ class TestHtmlBlock extends BlockBase {
    * {@inheritdoc}
    */
   public function build() {
-    return array(
+    return [
       '#attributes' => \Drupal::state()->get('block_test.attributes'),
       '#children' => \Drupal::state()->get('block_test.content'),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/block/tests/src/Functional/BlockCacheTest.php b/core/modules/block/tests/src/Functional/BlockCacheTest.php
index 9285c64..4ea433f 100644
--- a/core/modules/block/tests/src/Functional/BlockCacheTest.php
+++ b/core/modules/block/tests/src/Functional/BlockCacheTest.php
@@ -17,7 +17,7 @@ class BlockCacheTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test', 'test_page_test');
+  public static $modules = ['block', 'block_test', 'test_page_test'];
 
   /**
    * A user with permission to create and edit books and to administer blocks.
@@ -51,7 +51,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create an admin user, log in and enable test blocks.
-    $this->adminUser = $this->drupalCreateUser(array('administer blocks', 'access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['administer blocks', 'access administration pages']);
     $this->drupalLogin($this->adminUser);
 
     // Create additional users to test caching modes.
@@ -87,7 +87,7 @@ function testCachePerRole() {
     $this->assertText($old_content, 'Block is served from the cache.');
 
     // Clear the cache and verify that the stale data is no longer there.
-    Cache::invalidateTags(array('block_view'));
+    Cache::invalidateTags(['block_view']);
     $this->drupalGet('');
     $this->assertNoText($old_content, 'Block cache clear removes stale cache data.');
     $this->assertText($current_content, 'Fresh block content is displayed after clearing the cache.');
diff --git a/core/modules/block/tests/src/Functional/BlockHiddenRegionTest.php b/core/modules/block/tests/src/Functional/BlockHiddenRegionTest.php
index e2965dc..c515515 100644
--- a/core/modules/block/tests/src/Functional/BlockHiddenRegionTest.php
+++ b/core/modules/block/tests/src/Functional/BlockHiddenRegionTest.php
@@ -22,17 +22,17 @@ class BlockHiddenRegionTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test', 'search');
+  public static $modules = ['block', 'block_test', 'search'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create administrative user.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer blocks',
       'administer themes',
       'search content',
-      )
+      ]
     );
 
     $this->drupalLogin($this->adminUser);
@@ -53,7 +53,7 @@ public function testBlockNotInHiddenRegion() {
     $theme = 'block_test_theme';
     // We need to install a non-hidden theme so that there is more than one
     // local task.
-    \Drupal::service('theme_handler')->install(array($theme, 'stark'));
+    \Drupal::service('theme_handler')->install([$theme, 'stark']);
     $this->config('system.theme')
       ->set('default', $theme)
       ->save();
diff --git a/core/modules/block/tests/src/Functional/BlockHookOperationTest.php b/core/modules/block/tests/src/Functional/BlockHookOperationTest.php
index 9cb2272..3a5c1ff 100644
--- a/core/modules/block/tests/src/Functional/BlockHookOperationTest.php
+++ b/core/modules/block/tests/src/Functional/BlockHookOperationTest.php
@@ -17,14 +17,14 @@ class BlockHookOperationTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'entity_test');
+  public static $modules = ['block', 'entity_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $permissions = array(
+    $permissions = [
       'administer blocks',
-    );
+    ];
 
     // Create and log in user.
     $admin_user = $this->drupalCreateUser($permissions);
@@ -38,7 +38,7 @@ public function testBlockOperationAlter() {
     // Add a test block, any block will do.
     // Set the machine name so the test_operation link can be built later.
     $block_id = Unicode::strtolower($this->randomMachineName(16));
-    $this->drupalPlaceBlock('system_powered_by_block', array('id' => $block_id));
+    $this->drupalPlaceBlock('system_powered_by_block', ['id' => $block_id]);
 
     // Get the Block listing.
     $this->drupalGet('admin/structure/block');
diff --git a/core/modules/block/tests/src/Functional/BlockHtmlTest.php b/core/modules/block/tests/src/Functional/BlockHtmlTest.php
index 89bbcf9..9436990 100644
--- a/core/modules/block/tests/src/Functional/BlockHtmlTest.php
+++ b/core/modules/block/tests/src/Functional/BlockHtmlTest.php
@@ -16,7 +16,7 @@ class BlockHtmlTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test');
+  public static $modules = ['block', 'block_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -24,9 +24,9 @@ protected function setUp() {
     $this->drupalLogin($this->rootUser);
 
     // Enable the test_html block, to test HTML ID and attributes.
-    \Drupal::state()->set('block_test.attributes', array('data-custom-attribute' => 'foo'));
+    \Drupal::state()->set('block_test.attributes', ['data-custom-attribute' => 'foo']);
     \Drupal::state()->set('block_test.content', $this->randomMachineName());
-    $this->drupalPlaceBlock('test_html', array('id' => 'test_html_block'));
+    $this->drupalPlaceBlock('test_html', ['id' => 'test_html_block']);
 
     // Enable a menu block, to test more complicated HTML.
     $this->drupalPlaceBlock('system_menu_block:admin');
@@ -43,7 +43,7 @@ function testHtml() {
     $this->assertFieldByXPath('//div[@id="block-test-html-block" and @data-custom-attribute="foo"]', NULL, 'HTML ID and attributes for test block are valid and on the same DOM element.');
 
     // Ensure expected markup for a menu block.
-    $elements = $this->xpath('//nav[contains(@class, :nav-class)]/ul[contains(@class, :ul-class)]/li', array(':nav-class' => 'block-menu', ':ul-class' => 'menu'));
+    $elements = $this->xpath('//nav[contains(@class, :nav-class)]/ul[contains(@class, :ul-class)]/li', [':nav-class' => 'block-menu', ':ul-class' => 'menu']);
     $this->assertTrue(!empty($elements), 'The proper block markup was found.');
   }
 
diff --git a/core/modules/block/tests/src/Functional/BlockInvalidRegionTest.php b/core/modules/block/tests/src/Functional/BlockInvalidRegionTest.php
index b0e08b9..9b18633 100644
--- a/core/modules/block/tests/src/Functional/BlockInvalidRegionTest.php
+++ b/core/modules/block/tests/src/Functional/BlockInvalidRegionTest.php
@@ -18,16 +18,16 @@ class BlockInvalidRegionTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test');
+  public static $modules = ['block', 'block_test'];
 
   protected function setUp() {
     parent::setUp();
     // Create an admin user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer site configuration',
       'access administration pages',
       'administer blocks',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
@@ -40,14 +40,14 @@ function testBlockInInvalidRegion() {
     \Drupal::configFactory()->getEditable('block.block.' . $block->id())->set('region', 'invalid_region')->save();
     $block = Block::load($block->id());
 
-    $warning_message = t('The block %info was assigned to the invalid region %region and has been disabled.', array('%info' => $block->id(), '%region' => 'invalid_region'));
+    $warning_message = t('The block %info was assigned to the invalid region %region and has been disabled.', ['%info' => $block->id(), '%region' => 'invalid_region']);
 
     // Clearing the cache should disable the test block placed in the invalid region.
-    $this->drupalPostForm('admin/config/development/performance', array(), 'Clear all caches');
+    $this->drupalPostForm('admin/config/development/performance', [], 'Clear all caches');
     $this->assertRaw($warning_message, 'Enabled block was in the invalid region and has been disabled.');
 
     // Clear the cache to check if the warning message is not triggered.
-    $this->drupalPostForm('admin/config/development/performance', array(), 'Clear all caches');
+    $this->drupalPostForm('admin/config/development/performance', [], 'Clear all caches');
     $this->assertNoRaw($warning_message, 'Disabled block in the invalid region will not trigger the warning.');
 
     // Place disabled test block in the invalid region of the default theme.
@@ -55,7 +55,7 @@ function testBlockInInvalidRegion() {
     $block = Block::load($block->id());
 
     // Clear the cache to check if the warning message is not triggered.
-    $this->drupalPostForm('admin/config/development/performance', array(), 'Clear all caches');
+    $this->drupalPostForm('admin/config/development/performance', [], 'Clear all caches');
     $this->assertNoRaw($warning_message, 'Disabled block in the invalid region will not trigger the warning.');
   }
 
diff --git a/core/modules/block/tests/src/Functional/BlockLanguageTest.php b/core/modules/block/tests/src/Functional/BlockLanguageTest.php
index 7e0a0e1..cf1b877 100644
--- a/core/modules/block/tests/src/Functional/BlockLanguageTest.php
+++ b/core/modules/block/tests/src/Functional/BlockLanguageTest.php
@@ -23,19 +23,19 @@ class BlockLanguageTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'block', 'content_translation');
+  public static $modules = ['language', 'block', 'content_translation'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a new user, allow him to manage the blocks and the languages.
-    $this->adminUser = $this->drupalCreateUser(array('administer blocks', 'administer languages'));
+    $this->adminUser = $this->drupalCreateUser(['administer blocks', 'administer languages']);
     $this->drupalLogin($this->adminUser);
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     $this->assertText('French', 'Language added successfully.');
   }
@@ -52,17 +52,17 @@ public function testLanguageBlockVisibility() {
     $this->assertNoField('visibility[language][context_mapping][language]', 'Language type field is not visible.');
 
     // Enable a standard block and set the visibility setting for one language.
-    $edit = array(
+    $edit = [
       'visibility[language][langcodes][en]' => TRUE,
       'id' => strtolower($this->randomMachineName(8)),
       'region' => 'sidebar_first',
-    );
+    ];
     $this->drupalPostForm('admin/structure/block/add/system_powered_by_block' . '/' . $default_theme, $edit, t('Save block'));
 
     // Change the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
 
     // Check that a page has a block.
@@ -79,16 +79,16 @@ public function testLanguageBlockVisibility() {
    */
   public function testLanguageBlockVisibilityLanguageDelete() {
     // Enable a standard block and set the visibility setting for one language.
-    $edit = array(
-      'visibility' => array(
-        'language' => array(
-          'langcodes' => array(
+    $edit = [
+      'visibility' => [
+        'language' => [
+          'langcodes' => [
             'fr' => 'fr',
-          ),
+          ],
           'context_mapping' => ['language' => '@language.current_language_context:language_interface'],
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     $block = $this->drupalPlaceBlock('system_powered_by_block', $edit);
 
     // Check that we have the language in config after saving the setting.
@@ -96,7 +96,7 @@ public function testLanguageBlockVisibilityLanguageDelete() {
     $this->assertEqual('fr', $visibility['language']['langcodes']['fr'], 'Language is set in the block configuration.');
 
     // Delete the language.
-    $this->drupalPostForm('admin/config/regional/language/delete/fr', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/fr', [], t('Delete'));
 
     // Check that the language is no longer stored in the configuration after
     // it is deleted.
diff --git a/core/modules/block/tests/src/Functional/BlockTemplateSuggestionsTest.php b/core/modules/block/tests/src/Functional/BlockTemplateSuggestionsTest.php
index ca13c58..61a3745 100644
--- a/core/modules/block/tests/src/Functional/BlockTemplateSuggestionsTest.php
+++ b/core/modules/block/tests/src/Functional/BlockTemplateSuggestionsTest.php
@@ -17,7 +17,7 @@ class BlockTemplateSuggestionsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   /**
    * Tests template suggestions from block_theme_suggestions_block().
@@ -27,22 +27,22 @@ function testBlockThemeHookSuggestions() {
     // an underscore (not transformed) and a hyphen (transformed to underscore),
     // and generates possibilities for each level of derivative.
     // @todo Clarify this comment.
-    $block = Block::create(array(
+    $block = Block::create([
       'plugin' => 'system_menu_block:admin',
       'region' => 'footer',
       'id' => 'machinename',
-    ));
+    ]);
 
-    $variables = array();
+    $variables = [];
     $plugin = $block->getPlugin();
     $variables['elements']['#configuration'] = $plugin->getConfiguration();
     $variables['elements']['#plugin_id'] = $plugin->getPluginId();
     $variables['elements']['#id'] = $block->id();
     $variables['elements']['#base_plugin_id'] = $plugin->getBaseId();
     $variables['elements']['#derivative_plugin_id'] = $plugin->getDerivativeId();
-    $variables['elements']['content'] = array();
+    $variables['elements']['content'] = [];
     $suggestions = block_theme_suggestions_block($variables);
-    $this->assertEqual($suggestions, array('block__system', 'block__system_menu_block', 'block__system_menu_block__admin', 'block__machinename'));
+    $this->assertEqual($suggestions, ['block__system', 'block__system_menu_block', 'block__system_menu_block__admin', 'block__machinename']);
   }
 
 }
diff --git a/core/modules/block/tests/src/Functional/NewDefaultThemeBlocksTest.php b/core/modules/block/tests/src/Functional/NewDefaultThemeBlocksTest.php
index 5c23a66..767a7da 100644
--- a/core/modules/block/tests/src/Functional/NewDefaultThemeBlocksTest.php
+++ b/core/modules/block/tests/src/Functional/NewDefaultThemeBlocksTest.php
@@ -16,7 +16,7 @@ class NewDefaultThemeBlocksTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   /**
    * Check the enabled Bartik blocks are correctly copied over.
@@ -25,22 +25,22 @@ function testNewDefaultThemeBlocks() {
     $default_theme = $this->config('system.theme')->get('default');
 
     // Add two instances of the user login block.
-    $this->drupalPlaceBlock('user_login_block', array(
+    $this->drupalPlaceBlock('user_login_block', [
       'id' => $default_theme . '_' . strtolower($this->randomMachineName(8)),
-    ));
-    $this->drupalPlaceBlock('user_login_block', array(
+    ]);
+    $this->drupalPlaceBlock('user_login_block', [
       'id' => $default_theme . '_' . strtolower($this->randomMachineName(8)),
-    ));
+    ]);
 
     // Add an instance of a different block.
-    $this->drupalPlaceBlock('system_powered_by_block', array(
+    $this->drupalPlaceBlock('system_powered_by_block', [
       'id' => $default_theme . '_' . strtolower($this->randomMachineName(8)),
-    ));
+    ]);
 
     // Install a different theme.
     $new_theme = 'bartik';
     $this->assertFalse($new_theme == $default_theme, 'The new theme is different from the previous default theme.');
-    \Drupal::service('theme_handler')->install(array($new_theme));
+    \Drupal::service('theme_handler')->install([$new_theme]);
     $this->config('system.theme')
       ->set('default', $new_theme)
       ->save();
diff --git a/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php b/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
index a401ea5..2bf41e0 100644
--- a/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
@@ -18,7 +18,7 @@ class BlockConfigSchemaTest extends KernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array(
+  public static $modules = [
     'block',
     'aggregator',
     'book',
@@ -32,7 +32,7 @@ class BlockConfigSchemaTest extends KernelTestBase {
     'taxonomy',
     'user',
     'text',
-  );
+  ];
 
   /**
    * The typed config manager.
@@ -59,7 +59,7 @@ protected function setUp() {
     $this->installEntitySchema('block_content');
     $this->installEntitySchema('taxonomy_term');
     $this->installEntitySchema('node');
-    $this->installSchema('book', array('book'));
+    $this->installSchema('book', ['book']);
   }
 
   /**
@@ -68,20 +68,20 @@ protected function setUp() {
   public function testBlockConfigSchema() {
     foreach ($this->blockManager->getDefinitions() as $block_id => $definition) {
       $id = strtolower($this->randomMachineName());
-      $block = Block::create(array(
+      $block = Block::create([
         'id' => $id,
         'theme' => 'classy',
         'weight' => 00,
         'status' => TRUE,
         'region' => 'content',
         'plugin' => $block_id,
-        'settings' => array(
+        'settings' => [
           'label' => $this->randomMachineName(),
           'provider' => 'system',
           'label_display' => FALSE,
-        ),
-        'visibility' => array(),
-      ));
+        ],
+        'visibility' => [],
+      ]);
       $block->save();
 
       $config = $this->config("block.block.$id");
diff --git a/core/modules/block/tests/src/Kernel/BlockInterfaceTest.php b/core/modules/block/tests/src/Kernel/BlockInterfaceTest.php
index 5959c0d..48d63a3 100644
--- a/core/modules/block/tests/src/Kernel/BlockInterfaceTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockInterfaceTest.php
@@ -13,7 +13,7 @@
  */
 class BlockInterfaceTest extends KernelTestBase {
 
-  public static $modules = array('system', 'block', 'block_test', 'user');
+  public static $modules = ['system', 'block', 'block_test', 'user'];
 
   /**
    * Test configuration and subsequent form() and build() method calls.
@@ -31,16 +31,16 @@ class BlockInterfaceTest extends KernelTestBase {
    */
   public function testBlockInterface() {
     $manager = $this->container->get('plugin.manager.block');
-    $configuration = array(
+    $configuration = [
       'label' => 'Custom Display Message',
-    );
-    $expected_configuration = array(
+    ];
+    $expected_configuration = [
       'id' => 'test_block_instantiation',
       'label' => 'Custom Display Message',
       'provider' => 'block_test',
       'label_display' => BlockPluginInterface::BLOCK_LABEL_VISIBLE,
       'display_message' => 'no message set',
-    );
+    ];
     // Initial configuration of the block at construction time.
     /** @var $display_block \Drupal\Core\Block\BlockPluginInterface */
     $display_block = $manager->createInstance('test_block_instantiation', $configuration);
@@ -52,46 +52,46 @@ public function testBlockInterface() {
     $this->assertIdentical($display_block->getConfiguration(), $expected_configuration, 'The block configuration was updated correctly.');
     $definition = $display_block->getPluginDefinition();
 
-    $expected_form = array(
-      'provider' => array(
+    $expected_form = [
+      'provider' => [
         '#type' => 'value',
         '#value' => 'block_test',
-      ),
-      'admin_label' => array(
+      ],
+      'admin_label' => [
         '#type' => 'item',
         '#title' => t('Block description'),
         '#plain_text' => $definition['admin_label'],
-      ),
-      'label' => array(
+      ],
+      'label' => [
         '#type' => 'textfield',
         '#title' => 'Title',
         '#maxlength' => 255,
         '#default_value' => 'Custom Display Message',
         '#required' => TRUE,
-      ),
-      'label_display' => array(
+      ],
+      'label_display' => [
         '#type' => 'checkbox',
         '#title' => 'Display title',
         '#default_value' => TRUE,
         '#return_value' => 'visible',
-      ),
-      'context_mapping' => array(),
-      'display_message' => array(
+      ],
+      'context_mapping' => [],
+      'display_message' => [
         '#type' => 'textfield',
         '#title' => t('Display message'),
         '#default_value' => 'My custom display message.',
-      ),
-    );
+      ],
+    ];
     $form_state = new FormState();
     // Ensure there are no form elements that do not belong to the plugin.
-    $actual_form = $display_block->buildConfigurationForm(array(), $form_state);
+    $actual_form = $display_block->buildConfigurationForm([], $form_state);
     // Remove the visibility sections, as that just tests condition plugins.
     unset($actual_form['visibility'], $actual_form['visibility_tabs']);
     $this->assertIdentical($this->castSafeStrings($actual_form), $this->castSafeStrings($expected_form), 'Only the expected form elements were present.');
 
-    $expected_build = array(
+    $expected_build = [
       '#children' => 'My custom display message.',
-    );
+    ];
     // Ensure the build array is proper.
     $this->assertIdentical($display_block->build(), $expected_build, 'The plugin returned the appropriate build array.');
 
diff --git a/core/modules/block/tests/src/Kernel/BlockStorageUnitTest.php b/core/modules/block/tests/src/Kernel/BlockStorageUnitTest.php
index d31c92c..2a7c771 100644
--- a/core/modules/block/tests/src/Kernel/BlockStorageUnitTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockStorageUnitTest.php
@@ -21,7 +21,7 @@ class BlockStorageUnitTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test', 'system');
+  public static $modules = ['block', 'block_test', 'system'];
 
   /**
    * The block storage.
@@ -56,7 +56,7 @@ public function testBlockCRUD() {
   protected function createTests() {
     // Attempt to create a block without a plugin.
     try {
-      $entity = $this->controller->create(array());
+      $entity = $this->controller->create([]);
       $entity->getPlugin();
       $this->fail('A block without a plugin was created with no exception thrown.');
     }
@@ -65,12 +65,12 @@ protected function createTests() {
     }
 
     // Create a block with only required values.
-    $entity = $this->controller->create(array(
+    $entity = $this->controller->create([
       'id' => 'test_block',
       'theme' => 'stark',
       'region' => 'content',
       'plugin' => 'test_html',
-    ));
+    ]);
     $entity->save();
 
     $this->assertTrue($entity instanceof Block, 'The newly created entity is a Block.');
@@ -81,24 +81,24 @@ protected function createTests() {
     unset($actual_properties['uuid']);
 
     // Ensure that default values are filled in.
-    $expected_properties = array(
+    $expected_properties = [
       'langcode' => \Drupal::languageManager()->getDefaultLanguage()->getId(),
       'status' => TRUE,
-      'dependencies' => array('module' => array('block_test'), 'theme' => array('stark')),
+      'dependencies' => ['module' => ['block_test'], 'theme' => ['stark']],
       'id' => 'test_block',
       'theme' => 'stark',
       'region' => 'content',
       'weight' => NULL,
       'provider' => NULL,
       'plugin' => 'test_html',
-      'settings' => array(
+      'settings' => [
         'id' => 'test_html',
         'label' => '',
         'provider' => 'block_test',
         'label_display' => BlockPluginInterface::BLOCK_LABEL_VISIBLE,
-      ),
-      'visibility' => array(),
-    );
+      ],
+      'visibility' => [],
+    ];
 
     $this->assertIdentical($actual_properties, $expected_properties);
 
@@ -148,7 +148,7 @@ public function testDefaultBlocks() {
     $this->assertTrue(empty($entities), 'There are no blocks initially.');
 
     // Install the block_test.module, so that its default config is installed.
-    $this->installConfig(array('block_test'));
+    $this->installConfig(['block_test']);
 
     $entities = $this->controller->loadMultiple();
     $entity = reset($entities);
diff --git a/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php b/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
index 64b2109..71c4f55 100644
--- a/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockViewBuilderTest.php
@@ -20,7 +20,7 @@ class BlockViewBuilderTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test', 'system', 'user');
+  public static $modules = ['block', 'block_test', 'system', 'user'];
 
   /**
    * The block being tested.
@@ -56,11 +56,11 @@ protected function setUp() {
     \Drupal::state()->set('block_test.content', 'Llamas &gt; unicorns!');
 
     // Create a block with only required values.
-    $this->block = $this->controller->create(array(
+    $this->block = $this->controller->create([
       'id' => 'test_block',
       'theme' => 'stark',
       'plugin' => 'test_cache',
-    ));
+    ]);
     $this->block->save();
 
     $this->container->get('cache.render')->deleteAll();
@@ -74,17 +74,17 @@ protected function setUp() {
   public function testBasicRendering() {
     \Drupal::state()->set('block_test.content', '');
 
-    $entity = $this->controller->create(array(
+    $entity = $this->controller->create([
       'id' => 'test_block1',
       'theme' => 'stark',
       'plugin' => 'test_html',
-    ));
+    ]);
     $entity->save();
 
     // Test the rendering of a block.
     $entity = Block::load('test_block1');
     $output = entity_view($entity, 'block');
-    $expected = array();
+    $expected = [];
     $expected[] = '<div id="block-test-block1">';
     $expected[] = '  ';
     $expected[] = '    ';
@@ -98,17 +98,17 @@ public function testBasicRendering() {
     Html::resetSeenIds();
 
     // Test the rendering of a block with a given title.
-    $entity = $this->controller->create(array(
+    $entity = $this->controller->create([
       'id' => 'test_block2',
       'theme' => 'stark',
       'plugin' => 'test_html',
-      'settings' => array(
+      'settings' => [
         'label' => 'Powered by Bananas',
-      ),
-    ));
+      ],
+    ]);
     $entity->save();
     $output = entity_view($entity, 'block');
-    $expected = array();
+    $expected = [];
     $expected[] = '<div id="block-test-block2">';
     $expected[] = '  ';
     $expected[] = '      <h2>Powered by Bananas</h2>';
@@ -128,11 +128,11 @@ public function testBlockViewBuilderCache() {
     $this->verifyRenderCacheHandling();
 
     // Create an empty block.
-    $this->block = $this->controller->create(array(
+    $this->block = $this->controller->create([
       'id' => 'test_block',
       'theme' => 'stark',
       'plugin' => 'test_cache',
-    ));
+    ]);
     $this->block->save();
     \Drupal::state()->set('block_test.content', NULL);
 
diff --git a/core/modules/block/tests/src/Unit/BlockConfigEntityUnitTest.php b/core/modules/block/tests/src/Unit/BlockConfigEntityUnitTest.php
index 453cdcc..8df0e93 100644
--- a/core/modules/block/tests/src/Unit/BlockConfigEntityUnitTest.php
+++ b/core/modules/block/tests/src/Unit/BlockConfigEntityUnitTest.php
@@ -69,20 +69,20 @@ protected function setUp() {
    * @covers ::calculateDependencies
    */
   public function testCalculateDependencies() {
-    $values = array('theme' => 'stark');
+    $values = ['theme' => 'stark'];
     // Mock the entity under test so that we can mock getPluginCollections().
     $entity = $this->getMockBuilder('\Drupal\block\Entity\Block')
-      ->setConstructorArgs(array($values, $this->entityTypeId))
-      ->setMethods(array('getPluginCollections'))
+      ->setConstructorArgs([$values, $this->entityTypeId])
+      ->setMethods(['getPluginCollections'])
       ->getMock();
     // Create a configurable plugin that would add a dependency.
     $instance_id = $this->randomMachineName();
-    $instance = new TestConfigurablePlugin(array(), $instance_id, array('provider' => 'test'));
+    $instance = new TestConfigurablePlugin([], $instance_id, ['provider' => 'test']);
 
     // Create a plugin collection to contain the instance.
     $plugin_collection = $this->getMockBuilder('\Drupal\Core\Plugin\DefaultLazyPluginCollection')
       ->disableOriginalConstructor()
-      ->setMethods(array('get'))
+      ->setMethods(['get'])
       ->getMock();
     $plugin_collection->expects($this->atLeastOnce())
       ->method('get')
@@ -93,7 +93,7 @@ public function testCalculateDependencies() {
     // Return the mocked plugin collection.
     $entity->expects($this->once())
       ->method('getPluginCollections')
-      ->will($this->returnValue(array($plugin_collection)));
+      ->will($this->returnValue([$plugin_collection]));
 
     $dependencies = $entity->calculateDependencies()->getDependencies();
     $this->assertContains('test', $dependencies['module']);
diff --git a/core/modules/block/tests/src/Unit/BlockFormTest.php b/core/modules/block/tests/src/Unit/BlockFormTest.php
index d8efe2b..b846349 100644
--- a/core/modules/block/tests/src/Unit/BlockFormTest.php
+++ b/core/modules/block/tests/src/Unit/BlockFormTest.php
@@ -88,7 +88,7 @@ protected function setUp() {
    * @see \Drupal\block\BlockForm::getUniqueMachineName()
    */
   public function testGetUniqueMachineName() {
-    $blocks = array();
+    $blocks = [];
 
     $blocks['test'] = $this->getBlockMockWithMachineName('test');
     $blocks['other_test'] = $this->getBlockMockWithMachineName('other_test');
@@ -102,7 +102,7 @@ public function testGetUniqueMachineName() {
 
     $query->expects($this->exactly(5))
       ->method('execute')
-      ->will($this->returnValue(array('test', 'other_test', 'other_test_1', 'other_test_2')));
+      ->will($this->returnValue(['test', 'other_test', 'other_test_1', 'other_test_2']));
 
     $this->storage->expects($this->exactly(5))
       ->method('getQuery')
diff --git a/core/modules/block/tests/src/Unit/BlockRepositoryTest.php b/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
index aab11fe..5584b0b 100644
--- a/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
+++ b/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
@@ -116,25 +116,25 @@ public function testGetVisibleBlocksPerRegion(array $blocks_config, array $expec
   }
 
   public function providerBlocksConfig() {
-    $blocks_config = array(
-      'block1' => array(
+    $blocks_config = [
+      'block1' => [
         AccessResult::allowed(), 'top', 0
-      ),
+      ],
       // Test a block without access.
-      'block2' => array(
+      'block2' => [
         AccessResult::forbidden(), 'bottom', 0
-      ),
+      ],
       // Test some blocks in the same region with specific weight.
-      'block4' => array(
+      'block4' => [
         AccessResult::allowed(), 'bottom', 5
-      ),
-      'block3' => array(
+      ],
+      'block3' => [
         AccessResult::allowed(), 'bottom', 5
-      ),
-      'block5' => array(
+      ],
+      'block5' => [
         AccessResult::allowed(), 'bottom', -5
-      ),
-    );
+      ],
+    ];
 
     $test_cases = [];
     $test_cases[] = [$blocks_config,
diff --git a/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php b/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
index c47d65a..d91ebbc 100644
--- a/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
+++ b/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
@@ -24,7 +24,7 @@ protected function setUp() {
     $block_manager = $this->getMock('Drupal\Core\Block\BlockManagerInterface');
     $block_manager->expects($this->any())
       ->method('getCategories')
-      ->will($this->returnValue(array('Comment', 'Node', 'None & Such', 'User')));
+      ->will($this->returnValue(['Comment', 'Node', 'None & Such', 'User']));
 
     $this->autocompleteController = new CategoryAutocompleteController($block_manager);
   }
@@ -43,9 +43,9 @@ protected function setUp() {
    */
   public function testAutocompleteSuggestions($string, $suggestions) {
     $suggestions = array_map(function ($suggestion) {
-      return array('value' => $suggestion, 'label' => Html::escape($suggestion));
+      return ['value' => $suggestion, 'label' => Html::escape($suggestion)];
     }, $suggestions);
-    $result = $this->autocompleteController->autocomplete(new Request(array('q' => $string)));
+    $result = $this->autocompleteController->autocomplete(new Request(['q' => $string]));
     $this->assertSame($suggestions, json_decode($result->getContent(), TRUE));
   }
 
@@ -55,30 +55,30 @@ public function testAutocompleteSuggestions($string, $suggestions) {
    * @return array
    */
   public function providerTestAutocompleteSuggestions() {
-    $test_parameters = array();
-    $test_parameters[] = array(
+    $test_parameters = [];
+    $test_parameters[] = [
       'string' => 'Com',
-      'suggestions' => array(
+      'suggestions' => [
         'Comment',
-      ),
-    );
-    $test_parameters[] = array(
+      ],
+    ];
+    $test_parameters[] = [
       'string' => 'No',
-      'suggestions' => array(
+      'suggestions' => [
         'Node',
         'None & Such',
-      ),
-    );
-    $test_parameters[] = array(
+      ],
+    ];
+    $test_parameters[] = [
       'string' => 'us',
-      'suggestions' => array(
+      'suggestions' => [
         'User',
-      ),
-    );
-    $test_parameters[] = array(
+      ],
+    ];
+    $test_parameters[] = [
       'string' => 'Banana',
-      'suggestions' => array(),
-    );
+      'suggestions' => [],
+    ];
     return $test_parameters;
   }
 
diff --git a/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php b/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
index a513c4e..6d7dbf2 100644
--- a/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
+++ b/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
@@ -13,33 +13,33 @@
 class BlockLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('block' => 'core/modules/block');
+    $this->directoryList = ['block' => 'core/modules/block'];
     parent::setUp();
 
-    $config_factory = $this->getConfigFactoryStub(array('system.theme' => array(
+    $config_factory = $this->getConfigFactoryStub(['system.theme' => [
       'default' => 'test_c',
-    )));
+    ]]);
 
-    $themes = array();
-    $themes['test_a'] = (object) array(
+    $themes = [];
+    $themes['test_a'] = (object) [
       'status' => 1,
-      'info' => array(
+      'info' => [
         'name' => 'test_a',
         'hidden' => TRUE,
-      ),
-    );
-    $themes['test_b'] = (object) array(
+      ],
+    ];
+    $themes['test_b'] = (object) [
       'status' => 1,
-      'info' => array(
+      'info' => [
         'name' => 'test_b',
-      ),
-    );
-    $themes['test_c'] = (object) array(
+      ],
+    ];
+    $themes['test_c'] = (object) [
       'status' => 1,
-      'info' => array(
+      'info' => [
         'name' => 'test_c',
-      ),
-    );
+      ],
+    ];
     $theme_handler = $this->getMock('Drupal\Core\Extension\ThemeHandlerInterface');
     $theme_handler->expects($this->any())
       ->method('listInfo')
@@ -63,7 +63,7 @@ protected function setUp() {
    * Tests the admin edit local task.
    */
   public function testBlockAdminLocalTasks() {
-    $this->assertLocalTasks('entity.block.edit_form', array(array('entity.block.edit_form')));
+    $this->assertLocalTasks('entity.block.edit_form', [['entity.block.edit_form']]);
   }
 
   /**
@@ -79,10 +79,10 @@ public function testBlockAdminDisplay($route, $expected) {
    * Provides a list of routes to test.
    */
   public function providerTestBlockAdminDisplay() {
-    return array(
-      array('block.admin_display', array(array('block.admin_display'), array('block.admin_display_theme:test_b', 'block.admin_display_theme:test_c'))),
-      array('block.admin_display_theme', array(array('block.admin_display'), array('block.admin_display_theme:test_b', 'block.admin_display_theme:test_c'))),
-    );
+    return [
+      ['block.admin_display', [['block.admin_display'], ['block.admin_display_theme:test_b', 'block.admin_display_theme:test_c']]],
+      ['block.admin_display_theme', [['block.admin_display'], ['block.admin_display_theme:test_b', 'block.admin_display_theme:test_c']]],
+    ];
   }
 
 }
diff --git a/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php b/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
index 7701eca..1569411 100644
--- a/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
+++ b/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
@@ -44,7 +44,7 @@ class BlockPageVariantTest extends UnitTestCase {
    * @return \Drupal\block\Plugin\DisplayVariant\BlockPageVariant|\PHPUnit_Framework_MockObject_MockObject
    *   A mocked display variant plugin.
    */
-  public function setUpDisplayVariant($configuration = array(), $definition = array()) {
+  public function setUpDisplayVariant($configuration = [], $definition = []) {
 
     $container = new Container();
     $cache_context_manager = $this->getMockBuilder('Drupal\Core\Cache\CacheContextsManager')
@@ -60,37 +60,37 @@ public function setUpDisplayVariant($configuration = array(), $definition = arra
     $this->blockViewBuilder = $this->getMock('Drupal\Core\Entity\EntityViewBuilderInterface');
 
     return $this->getMockBuilder('Drupal\block\Plugin\DisplayVariant\BlockPageVariant')
-      ->setConstructorArgs(array($configuration, 'test', $definition, $this->blockRepository, $this->blockViewBuilder, ['config:block_list']))
-      ->setMethods(array('getRegionNames'))
+      ->setConstructorArgs([$configuration, 'test', $definition, $this->blockRepository, $this->blockViewBuilder, ['config:block_list']])
+      ->setMethods(['getRegionNames'])
       ->getMock();
   }
 
   public function providerBuild() {
-    $blocks_config = array(
-      'block1' => array(
+    $blocks_config = [
+      'block1' => [
         // region, is main content block, is messages block, is title block
         'top', FALSE, FALSE, FALSE,
-      ),
+      ],
       // Test multiple blocks in the same region.
-      'block2' => array(
+      'block2' => [
         'bottom', FALSE, FALSE, FALSE,
-      ),
-      'block3' => array(
+      ],
+      'block3' => [
         'bottom', FALSE, FALSE, FALSE,
-      ),
+      ],
       // Test a block implementing MainContentBlockPluginInterface.
-      'block4' => array(
+      'block4' => [
         'center', TRUE, FALSE, FALSE,
-      ),
+      ],
       // Test a block implementing MessagesBlockPluginInterface.
-      'block5' => array(
+      'block5' => [
         'center', FALSE, TRUE, FALSE,
-      ),
+      ],
       // Test a block implementing TitleBlockPluginInterface.
-      'block6' => array(
+      'block6' => [
         'center', FALSE, FALSE, TRUE,
-      ),
-    );
+      ],
+    ];
 
     $test_cases = [];
     $test_cases[] = [$blocks_config, 6,
@@ -219,7 +219,7 @@ public function testBuild(array $blocks_config, $visible_block_count, array $exp
     }
     $this->blockViewBuilder->expects($this->exactly($visible_block_count))
       ->method('view')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
     $this->blockRepository->expects($this->once())
       ->method('getVisibleBlocksPerRegion')
       ->willReturnCallback(function (&$cacheable_metadata) use ($blocks) {
diff --git a/core/modules/block_content/block_content.module b/core/modules/block_content/block_content.module
index e0b5729..1b32a52 100644
--- a/core/modules/block_content/block_content.module
+++ b/core/modules/block_content/block_content.module
@@ -15,25 +15,25 @@
 function block_content_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.block_content':
-      $field_ui = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#';
+      $field_ui = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#';
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Custom Block module allows you to create and manage custom <em>block types</em> and <em>content-containing blocks</em> from the <a href = ":block-library" >Custom block library<a/> page. Custom block types have fields; see the <a href=":field-help">Field module help</a> for more information. Once created, custom blocks can be placed in regions just like blocks provided by other modules; see the <a href=":blocks">Block module help</a> page for details. For more information, see the <a href=":online-help">online documentation for the Custom Block module</a>.', array(':block-library' => \Drupal::url('entity.block_content.collection'), ':block-content' => \Drupal::url('entity.block_content.collection'), ':field-help' => \Drupal::url('help.page', array('name' => 'field')), ':blocks' => \Drupal::url('help.page', array('name' => 'block')), ':online-help' => 'https://www.drupal.org/documentation/modules/block_content')) . '</p>';
+      $output .= '<p>' . t('The Custom Block module allows you to create and manage custom <em>block types</em> and <em>content-containing blocks</em> from the <a href = ":block-library" >Custom block library<a/> page. Custom block types have fields; see the <a href=":field-help">Field module help</a> for more information. Once created, custom blocks can be placed in regions just like blocks provided by other modules; see the <a href=":blocks">Block module help</a> page for details. For more information, see the <a href=":online-help">online documentation for the Custom Block module</a>.', [':block-library' => \Drupal::url('entity.block_content.collection'), ':block-content' => \Drupal::url('entity.block_content.collection'), ':field-help' => \Drupal::url('help.page', ['name' => 'field']), ':blocks' => \Drupal::url('help.page', ['name' => 'block']), ':online-help' => 'https://www.drupal.org/documentation/modules/block_content']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating and managing custom block types') . '</dt>';
-      $output .= '<dd>' . t('Users with the <em>Administer blocks</em> permission can create and edit custom block types with fields and display settings, from the <a href=":types">Block types</a> page in the Custom block library. For more information about managing fields and display settings, see the <a href=":field-ui">Field UI module help</a>.', array(':types' => \Drupal::url('entity.block_content_type.collection'), ':field-ui' => $field_ui)) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Administer blocks</em> permission can create and edit custom block types with fields and display settings, from the <a href=":types">Block types</a> page in the Custom block library. For more information about managing fields and display settings, see the <a href=":field-ui">Field UI module help</a>.', [':types' => \Drupal::url('entity.block_content_type.collection'), ':field-ui' => $field_ui]) . '</dd>';
       $output .= '<dt>' . t('Creating custom blocks') . '</dt>';
-      $output .= '<dd>' . t('Users with the <em>Administer blocks</em> permission can create, edit, and delete custom blocks of each defined custom block type, from the <a href=":block-library">Blocks</a> page in the Custom block library. After creating a block, place it in a region from the <a href=":blocks">Block layout</a> page; see the <a href=":block_help">Block module help</a> for more information about placing blocks.', array(':blocks' => \Drupal::url('block.admin_display'), ':block-library' => \Drupal::url('entity.block_content.collection'), ':block_help' => \Drupal::url('help.page', array('name' => 'block')))) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Administer blocks</em> permission can create, edit, and delete custom blocks of each defined custom block type, from the <a href=":block-library">Blocks</a> page in the Custom block library. After creating a block, place it in a region from the <a href=":blocks">Block layout</a> page; see the <a href=":block_help">Block module help</a> for more information about placing blocks.', [':blocks' => \Drupal::url('block.admin_display'), ':block-library' => \Drupal::url('entity.block_content.collection'), ':block_help' => \Drupal::url('help.page', ['name' => 'block'])]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
     case 'entity.block_content.collection':
-      $output = '<p>' . t('Blocks in the block library belong to <a href=":types">Custom block types</a>, each with its own fields and display settings. After creating a block, place it in a region from the <a href=":blocks">Block layout</a> page.', array(':types' => \Drupal::url('entity.block_content_type.collection'), ':blocks' => \Drupal::url('block.admin_display'))) . '</p>';
+      $output = '<p>' . t('Blocks in the block library belong to <a href=":types">Custom block types</a>, each with its own fields and display settings. After creating a block, place it in a region from the <a href=":blocks">Block layout</a> page.', [':types' => \Drupal::url('entity.block_content_type.collection'), ':blocks' => \Drupal::url('block.admin_display')]) . '</p>';
       return $output;
 
     case 'entity.block_content_type.collection':
-      $output = '<p>' . t('Each block type has its own fields and display settings. Create blocks of each type on the <a href=":block-library">Blocks</a> page in the custom block library.', array(':block-library' => \Drupal::url('entity.block_content.collection'))) . '</p>';
+      $output = '<p>' . t('Each block type has its own fields and display settings. Create blocks of each type on the <a href=":block-library">Blocks</a> page in the custom block library.', [':block-library' => \Drupal::url('entity.block_content.collection')]) . '</p>';
       return $output;
 
   }
@@ -43,12 +43,12 @@ function block_content_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function block_content_theme($existing, $type, $theme, $path) {
-  return array(
-    'block_content_add_list' => array(
-      'variables' => array('content' => NULL),
+  return [
+    'block_content_add_list' => [
+      'variables' => ['content' => NULL],
       'file' => 'block_content.pages.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -83,23 +83,23 @@ function block_content_add_body_field($block_type_id, $label = 'Body') {
       'field_storage' => FieldStorageConfig::loadByName('block_content', 'body'),
       'bundle' => $block_type_id,
       'label' => $label,
-      'settings' => array('display_summary' => FALSE),
+      'settings' => ['display_summary' => FALSE],
     ]);
     $field->save();
 
     // Assign widget settings for the 'default' form mode.
     entity_get_form_display('block_content', $block_type_id, 'default')
-      ->setComponent('body', array(
+      ->setComponent('body', [
         'type' => 'text_textarea_with_summary',
-      ))
+      ])
       ->save();
 
     // Assign display settings for 'default' view mode.
     entity_get_display('block_content', $block_type_id, 'default')
-      ->setComponent('body', array(
+      ->setComponent('body', [
         'label' => 'hidden',
         'type' => 'text_default',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/block_content/block_content.pages.inc b/core/modules/block_content/block_content.pages.inc
index 8629690..e50e717 100644
--- a/core/modules/block_content/block_content.pages.inc
+++ b/core/modules/block_content/block_content.pages.inc
@@ -19,18 +19,18 @@
  * @see block_content_add_page()
  */
 function template_preprocess_block_content_add_list(&$variables) {
-  $variables['types'] = array();
+  $variables['types'] = [];
   $query = \Drupal::request()->query->all();
   foreach ($variables['content'] as $type) {
-    $variables['types'][$type->id()] = array(
-      'link' => \Drupal::l($type->label(), new Url('block_content.add_form', array('block_content_type' => $type->id()), array('query' => $query))),
-      'description' => array(
+    $variables['types'][$type->id()] = [
+      'link' => \Drupal::l($type->label(), new Url('block_content.add_form', ['block_content_type' => $type->id()], ['query' => $query])),
+      'description' => [
         '#markup' => $type->getDescription(),
-      ),
+      ],
       'title' => $type->label(),
-      'localized_options' => array(
+      'localized_options' => [
         'query' => $query,
-      ),
-    );
+      ],
+    ];
   }
 }
diff --git a/core/modules/block_content/src/BlockContentForm.php b/core/modules/block_content/src/BlockContentForm.php
index b3f50f7..eefd4e9 100644
--- a/core/modules/block_content/src/BlockContentForm.php
+++ b/core/modules/block_content/src/BlockContentForm.php
@@ -27,7 +27,7 @@ public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
 
     if ($this->operation == 'edit') {
-      $form['#title'] = $this->t('Edit custom block %label', array('%label' => $block->label()));
+      $form['#title'] = $this->t('Edit custom block %label', ['%label' => $block->label()]);
     }
     // Override the default CSS class name, since the user-defined custom block
     // type name in 'TYPE-block-form' potentially clashes with third-party class
@@ -45,10 +45,10 @@ public function save(array $form, FormStateInterface $form_state) {
 
     $insert = $block->isNew();
     $block->save();
-    $context = array('@type' => $block->bundle(), '%info' => $block->label());
+    $context = ['@type' => $block->bundle(), '%info' => $block->label()];
     $logger = $this->logger('block_content');
     $block_type = $this->getBundleEntity();
-    $t_args = array('@type' => $block_type->label(), '%info' => $block->label());
+    $t_args = ['@type' => $block_type->label(), '%info' => $block->label()];
 
     if ($insert) {
       $logger->notice('@type: added %info.', $context);
@@ -68,10 +68,10 @@ public function save(array $form, FormStateInterface $form_state) {
         }
         $form_state->setRedirect(
           'block.admin_add',
-          array(
+          [
             'plugin_id' => 'block_content:' . $block->uuid(),
             'theme' => $theme,
-          )
+          ]
         );
       }
       else {
diff --git a/core/modules/block_content/src/BlockContentTranslationHandler.php b/core/modules/block_content/src/BlockContentTranslationHandler.php
index b446cde..612613b 100644
--- a/core/modules/block_content/src/BlockContentTranslationHandler.php
+++ b/core/modules/block_content/src/BlockContentTranslationHandler.php
@@ -16,7 +16,7 @@ class BlockContentTranslationHandler extends ContentTranslationHandler {
    */
   protected function entityFormTitle(EntityInterface $entity) {
     $block_type = BlockContentType::load($entity->bundle());
-    return t('<em>Edit @type</em> @title', array('@type' => $block_type->label(), '@title' => $entity->label()));
+    return t('<em>Edit @type</em> @title', ['@type' => $block_type->label(), '@title' => $entity->label()]);
   }
 
 }
diff --git a/core/modules/block_content/src/BlockContentTypeForm.php b/core/modules/block_content/src/BlockContentTypeForm.php
index d864e8d..4e140b1 100644
--- a/core/modules/block_content/src/BlockContentTypeForm.php
+++ b/core/modules/block_content/src/BlockContentTypeForm.php
@@ -25,65 +25,65 @@ public function form(array $form, FormStateInterface $form_state) {
       $form['#title'] = $this->t('Add custom block type');
     }
     else {
-      $form['#title'] = $this->t('Edit %label custom block type', array('%label' => $block_type->label()));
+      $form['#title'] = $this->t('Edit %label custom block type', ['%label' => $block_type->label()]);
     }
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => t('Label'),
       '#maxlength' => 255,
       '#default_value' => $block_type->label(),
       '#description' => t("Provide a label for this block type to help identify it in the administration pages."),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $block_type->id(),
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\block_content\Entity\BlockContentType::load',
-      ),
+      ],
       '#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
-    );
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'textarea',
       '#default_value' => $block_type->getDescription(),
       '#description' => t('Enter a description for this block type.'),
       '#title' => t('Description'),
-    );
+    ];
 
-    $form['revision'] = array(
+    $form['revision'] = [
       '#type' => 'checkbox',
       '#title' => t('Create new revision'),
       '#default_value' => $block_type->shouldCreateNewRevision(),
       '#description' => t('Create a new revision by default for this block type.'),
-    );
+    ];
 
     if ($this->moduleHandler->moduleExists('language')) {
-      $form['language'] = array(
+      $form['language'] = [
         '#type' => 'details',
         '#title' => t('Language settings'),
         '#group' => 'additional_settings',
-      );
+      ];
 
       $language_configuration = ContentLanguageSettings::loadByEntityTypeBundle('block_content', $block_type->id());
-      $form['language']['language_configuration'] = array(
+      $form['language']['language_configuration'] = [
         '#type' => 'language_configuration',
-        '#entity_information' => array(
+        '#entity_information' => [
           'entity_type' => 'block_content',
           'bundle' => $block_type->id(),
-        ),
+        ],
         '#default_value' => $language_configuration,
-      );
+      ];
 
       $form['#submit'][] = 'language_configuration_element_submit';
     }
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Save'),
-    );
+    ];
 
     return $this->protectBundleIdElement($form);
   }
@@ -98,13 +98,13 @@ public function save(array $form, FormStateInterface $form_state) {
     $edit_link = $this->entity->link($this->t('Edit'));
     $logger = $this->logger('block_content');
     if ($status == SAVED_UPDATED) {
-      drupal_set_message(t('Custom block type %label has been updated.', array('%label' => $block_type->label())));
-      $logger->notice('Custom block type %label has been updated.', array('%label' => $block_type->label(), 'link' => $edit_link));
+      drupal_set_message(t('Custom block type %label has been updated.', ['%label' => $block_type->label()]));
+      $logger->notice('Custom block type %label has been updated.', ['%label' => $block_type->label(), 'link' => $edit_link]);
     }
     else {
       block_content_add_body_field($block_type->id());
-      drupal_set_message(t('Custom block type %label has been added.', array('%label' => $block_type->label())));
-      $logger->notice('Custom block type %label has been added.', array('%label' => $block_type->label(), 'link' => $edit_link));
+      drupal_set_message(t('Custom block type %label has been added.', ['%label' => $block_type->label()]));
+      $logger->notice('Custom block type %label has been added.', ['%label' => $block_type->label(), 'link' => $edit_link]);
     }
 
     $form_state->setRedirectUrl($this->entity->urlInfo('collection'));
diff --git a/core/modules/block_content/src/BlockContentViewBuilder.php b/core/modules/block_content/src/BlockContentViewBuilder.php
index 322a087..29c668c 100644
--- a/core/modules/block_content/src/BlockContentViewBuilder.php
+++ b/core/modules/block_content/src/BlockContentViewBuilder.php
@@ -15,13 +15,13 @@ class BlockContentViewBuilder extends EntityViewBuilder {
    * {@inheritdoc}
    */
   public function view(EntityInterface $entity, $view_mode = 'full', $langcode = NULL) {
-    return $this->viewMultiple(array($entity), $view_mode, $langcode)[0];
+    return $this->viewMultiple([$entity], $view_mode, $langcode)[0];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function viewMultiple(array $entities = array(), $view_mode = 'full', $langcode = NULL) {
+  public function viewMultiple(array $entities = [], $view_mode = 'full', $langcode = NULL) {
     $build_list = parent::viewMultiple($entities, $view_mode, $langcode);
     // Apply the buildMultiple() #pre_render callback immediately, to make
     // bubbling of attributes and contextual links to the actual block work.
@@ -48,10 +48,10 @@ protected function alterBuild(array &$build, EntityInterface $entity, EntityView
     parent::alterBuild($build, $entity, $display, $view_mode);
     // Add contextual links for this custom block.
     if (!$entity->isNew()) {
-      $build['#contextual_links']['block_content'] = array(
-        'route_parameters' => array('block_content' => $entity->id()),
-        'metadata' => array('changed' => $entity->getChangedTime()),
-      );
+      $build['#contextual_links']['block_content'] = [
+        'route_parameters' => ['block_content' => $entity->id()],
+        'metadata' => ['changed' => $entity->getChangedTime()],
+      ];
     }
   }
 
diff --git a/core/modules/block_content/src/BlockContentViewsData.php b/core/modules/block_content/src/BlockContentViewsData.php
index 1d5d46f..010ede0 100644
--- a/core/modules/block_content/src/BlockContentViewsData.php
+++ b/core/modules/block_content/src/BlockContentViewsData.php
@@ -23,13 +23,13 @@ public function getViewsData() {
 
     $data['block_content_field_data']['type']['field']['id'] = 'field';
 
-    $data['block_content']['block_content_listing_empty'] = array(
+    $data['block_content']['block_content_listing_empty'] = [
       'title' => $this->t('Empty block library behavior'),
       'help' => $this->t('Provides a link to add a new block.'),
-      'area' => array(
+      'area' => [
         'id' => 'block_content_listing_empty',
-      ),
-    );
+      ],
+    ];
     // Advertise this table as a possible base table.
     $data['block_content_field_revision']['table']['base']['help'] = $this->t('Block Content revision is a history of changes to block content.');
     $data['block_content_field_revision']['table']['base']['defaults']['title'] = 'info';
diff --git a/core/modules/block_content/src/Controller/BlockContentController.php b/core/modules/block_content/src/Controller/BlockContentController.php
index 1caad74..7c1f8aa 100644
--- a/core/modules/block_content/src/Controller/BlockContentController.php
+++ b/core/modules/block_content/src/Controller/BlockContentController.php
@@ -79,14 +79,14 @@ public function add(Request $request) {
       return $this->addForm($type, $request);
     }
     if (count($types) === 0) {
-      return array(
+      return [
         '#markup' => $this->t('You have not created any block types yet. Go to the <a href=":url">block type creation page</a> to add a new block type.', [
           ':url' => Url::fromRoute('block_content.type_add')->toString(),
         ]),
-      );
+      ];
     }
 
-    return array('#theme' => 'block_content_add_list', '#content' => $types);
+    return ['#theme' => 'block_content_add_list', '#content' => $types];
   }
 
   /**
@@ -101,9 +101,9 @@ public function add(Request $request) {
    *   A form array as expected by drupal_render().
    */
   public function addForm(BlockContentTypeInterface $block_content_type, Request $request) {
-    $block = $this->blockContentStorage->create(array(
+    $block = $this->blockContentStorage->create([
       'type' => $block_content_type->id()
-    ));
+    ]);
     if (($theme = $request->query->get('theme')) && in_array($theme, array_keys($this->themeHandler->listInfo()))) {
       // We have navigated to this page from the block library and will keep track
       // of the theme for redirecting the user to the configuration page for the
@@ -123,7 +123,7 @@ public function addForm(BlockContentTypeInterface $block_content_type, Request $
    *   The page title.
    */
   public function getAddFormTitle(BlockContentTypeInterface $block_content_type) {
-    return $this->t('Add %type custom block', array('%type' => $block_content_type->label()));
+    return $this->t('Add %type custom block', ['%type' => $block_content_type->label()]);
   }
 
 }
diff --git a/core/modules/block_content/src/Entity/BlockContent.php b/core/modules/block_content/src/Entity/BlockContent.php
index 7c06ed8..11c0c54 100644
--- a/core/modules/block_content/src/Entity/BlockContent.php
+++ b/core/modules/block_content/src/Entity/BlockContent.php
@@ -126,7 +126,7 @@ public static function postDelete(EntityStorageInterface $storage, array $entiti
    * {@inheritdoc}
    */
   public function getInstances() {
-    return \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(array('plugin' => 'block_content:' . $this->uuid()));
+    return \Drupal::entityTypeManager()->getStorage('block')->loadByProperties(['plugin' => 'block_content:' . $this->uuid()]);
   }
 
   /**
@@ -178,10 +178,10 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRevisionable(TRUE)
       ->setTranslatable(TRUE)
       ->setRequired(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE)
       ->addConstraint('UniqueField', []);
 
@@ -189,13 +189,13 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Revision log message'))
       ->setDescription(t('The log entry explaining the changes in this revision.'))
       ->setRevisionable(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textarea',
         'weight' => 25,
-        'settings' => array(
+        'settings' => [
           'rows' => 4,
-        ),
-      ));
+        ],
+      ]);
 
     $fields['changed'] = BaseFieldDefinition::create('changed')
       ->setLabel(t('Changed'))
diff --git a/core/modules/block_content/src/Form/BlockContentDeleteForm.php b/core/modules/block_content/src/Form/BlockContentDeleteForm.php
index 3fe725d..035ec4c 100644
--- a/core/modules/block_content/src/Form/BlockContentDeleteForm.php
+++ b/core/modules/block_content/src/Form/BlockContentDeleteForm.php
@@ -16,10 +16,10 @@ class BlockContentDeleteForm extends ContentEntityDeleteForm {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $instances = $this->entity->getInstances();
 
-    $form['message'] = array(
+    $form['message'] = [
       '#markup' => $this->formatPlural(count($instances), 'This will also remove 1 placed block instance.', 'This will also remove @count placed block instances.'),
       '#access' => !empty($instances),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/block_content/src/Form/BlockContentTypeDeleteForm.php b/core/modules/block_content/src/Form/BlockContentTypeDeleteForm.php
index b68e695..aea4ab5 100644
--- a/core/modules/block_content/src/Form/BlockContentTypeDeleteForm.php
+++ b/core/modules/block_content/src/Form/BlockContentTypeDeleteForm.php
@@ -18,8 +18,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ->condition('type', $this->entity->id())
       ->execute();
     if (!empty($blocks)) {
-      $caption = '<p>' . $this->formatPlural(count($blocks), '%label is used by 1 custom block on your site. You can not remove this block type until you have removed all of the %label blocks.', '%label is used by @count custom blocks on your site. You may not remove %label until you have removed all of the %label custom blocks.', array('%label' => $this->entity->label())) . '</p>';
-      $form['description'] = array('#markup' => $caption);
+      $caption = '<p>' . $this->formatPlural(count($blocks), '%label is used by 1 custom block on your site. You can not remove this block type until you have removed all of the %label blocks.', '%label is used by @count custom blocks on your site. You may not remove %label until you have removed all of the %label custom blocks.', ['%label' => $this->entity->label()]) . '</p>';
+      $form['description'] = ['#markup' => $caption];
       return $form;
     }
     else {
diff --git a/core/modules/block_content/src/Plugin/Block/BlockContentBlock.php b/core/modules/block_content/src/Plugin/Block/BlockContentBlock.php
index 2afd040..e97e740 100644
--- a/core/modules/block_content/src/Plugin/Block/BlockContentBlock.php
+++ b/core/modules/block_content/src/Plugin/Block/BlockContentBlock.php
@@ -105,11 +105,11 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'status' => TRUE,
       'info' => '',
       'view_mode' => 'full',
-    );
+    ];
   }
 
   /**
@@ -122,14 +122,14 @@ public function blockForm($form, FormStateInterface $form_state) {
     $block = $this->entityManager->loadEntityByUuid('block_content', $uuid);
     $options = $this->entityManager->getViewModeOptionsByBundle('block_content', $block->bundle());
 
-    $form['view_mode'] = array(
+    $form['view_mode'] = [
       '#type' => 'select',
       '#options' => $options,
       '#title' => $this->t('View mode'),
       '#description' => $this->t('Output the block in this view mode.'),
       '#default_value' => $this->configuration['view_mode'],
       '#access' => (count($options) > 1),
-    );
+    ];
     $form['title']['#description'] = $this->t('The title of the block as shown to the user.');
     return $form;
   }
@@ -161,13 +161,13 @@ public function build() {
       return $this->entityManager->getViewBuilder($block->getEntityTypeId())->view($block, $this->configuration['view_mode']);
     }
     else {
-      return array(
-        '#markup' => $this->t('Block with uuid %uuid does not exist. <a href=":url">Add custom block</a>.', array(
+      return [
+        '#markup' => $this->t('Block with uuid %uuid does not exist. <a href=":url">Add custom block</a>.', [
           '%uuid' => $this->getDerivativeId(),
           ':url' => $this->urlGenerator->generate('block_content.add_page')
-        )),
+        ]),
         '#access' => $this->account->hasPermission('administer blocks')
-      );
+      ];
     }
   }
 
diff --git a/core/modules/block_content/src/Plugin/Derivative/BlockContent.php b/core/modules/block_content/src/Plugin/Derivative/BlockContent.php
index ab56445..25806c5 100644
--- a/core/modules/block_content/src/Plugin/Derivative/BlockContent.php
+++ b/core/modules/block_content/src/Plugin/Derivative/BlockContent.php
@@ -50,9 +50,9 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     foreach ($block_contents as $block_content) {
       $this->derivatives[$block_content->uuid()] = $base_plugin_definition;
       $this->derivatives[$block_content->uuid()]['admin_label'] = $block_content->label();
-      $this->derivatives[$block_content->uuid()]['config_dependencies']['content'] = array(
+      $this->derivatives[$block_content->uuid()]['config_dependencies']['content'] = [
         $block_content->getConfigDependencyName()
-      );
+      ];
     }
     return parent::getDerivativeDefinitions($base_plugin_definition);
   }
diff --git a/core/modules/block_content/src/Plugin/migrate/source/d6/Box.php b/core/modules/block_content/src/Plugin/migrate/source/d6/Box.php
index 4135233..a28927b 100644
--- a/core/modules/block_content/src/Plugin/migrate/source/d6/Box.php
+++ b/core/modules/block_content/src/Plugin/migrate/source/d6/Box.php
@@ -18,7 +18,7 @@ class Box extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('boxes', 'b')
-      ->fields('b', array('bid', 'body', 'info', 'format'));
+      ->fields('b', ['bid', 'body', 'info', 'format']);
     $query->orderBy('b.bid');
 
     return $query;
@@ -28,12 +28,12 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'bid' => $this->t('The numeric identifier of the block/box'),
       'body' => $this->t('The block/box content'),
       'info' => $this->t('Admin title of the block/box.'),
       'format' => $this->t('Input format of the custom block/box content.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/block_content/src/Plugin/migrate/source/d7/BlockCustom.php b/core/modules/block_content/src/Plugin/migrate/source/d7/BlockCustom.php
index 4aee2a4..ea33682 100644
--- a/core/modules/block_content/src/Plugin/migrate/source/d7/BlockCustom.php
+++ b/core/modules/block_content/src/Plugin/migrate/source/d7/BlockCustom.php
@@ -24,12 +24,12 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'bid' => $this->t('The numeric identifier of the block/box'),
       'body' => $this->t('The block/box content'),
       'info' => $this->t('Admin title of the block/box.'),
       'format' => $this->t('Input format of the custom block/box content.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/block_content/src/Plugin/views/area/ListingEmpty.php b/core/modules/block_content/src/Plugin/views/area/ListingEmpty.php
index d2bd026..e412f18 100644
--- a/core/modules/block_content/src/Plugin/views/area/ListingEmpty.php
+++ b/core/modules/block_content/src/Plugin/views/area/ListingEmpty.php
@@ -71,19 +71,19 @@ public static function create(ContainerInterface $container, array $configuratio
   public function render($empty = FALSE) {
     if (!$empty || !empty($this->options['empty'])) {
       /** @var \Drupal\Core\Access\AccessResultInterface|\Drupal\Core\Cache\CacheableDependencyInterface $access_result */
-      $access_result = $this->accessManager->checkNamedRoute('block_content.add_page', array(), $this->currentUser, TRUE);
-      $element = array(
-        '#markup' => $this->t('Add a <a href=":url">custom block</a>.', array(':url' => Url::fromRoute('block_content.add_page')->toString())),
+      $access_result = $this->accessManager->checkNamedRoute('block_content.add_page', [], $this->currentUser, TRUE);
+      $element = [
+        '#markup' => $this->t('Add a <a href=":url">custom block</a>.', [':url' => Url::fromRoute('block_content.add_page')->toString()]),
         '#access' => $access_result->isAllowed(),
         '#cache' => [
           'contexts' => $access_result->getCacheContexts(),
           'tags' => $access_result->getCacheTags(),
           'max-age' => $access_result->getCacheMaxAge(),
         ],
-      );
+      ];
       return $element;
     }
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/block_content/src/Tests/BlockContentCreationTest.php b/core/modules/block_content/src/Tests/BlockContentCreationTest.php
index e45892c..ac9e824 100644
--- a/core/modules/block_content/src/Tests/BlockContentCreationTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentCreationTest.php
@@ -21,17 +21,17 @@ class BlockContentCreationTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block_content_test', 'dblog', 'field_ui');
+  public static $modules = ['block_content_test', 'dblog', 'field_ui'];
 
   /**
    * Permissions to grant admin user.
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer blocks',
     'administer block_content display'
-  );
+  ];
 
   /**
    * Sets the test up.
@@ -48,22 +48,22 @@ public function testBlockContentCreation() {
     $this->drupalLogin($this->adminUser);
 
     // Create a block.
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = 'Test Block';
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
 
     // Check that the Basic block has been created.
-    $this->assertRaw(format_string('@block %name has been created.', array(
+    $this->assertRaw(format_string('@block %name has been created.', [
       '@block' => 'basic',
       '%name' => $edit['info[0][value]']
-    )), 'Basic block created.');
+    ]), 'Basic block created.');
 
     // Check that the view mode setting is hidden because only one exists.
     $this->assertNoFieldByXPath('//select[@name="settings[view_mode]"]', NULL, 'View mode setting hidden because only one exists');
 
     // Check that the block exists in the database.
-    $blocks = entity_load_multiple_by_properties('block_content', array('info' => $edit['info[0][value]']));
+    $blocks = entity_load_multiple_by_properties('block_content', ['info' => $edit['info[0][value]']]);
     $block = reset($blocks);
     $this->assertTrue($block, 'Custom Block found in database.');
 
@@ -72,9 +72,9 @@ public function testBlockContentCreation() {
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
 
     // Check that the Basic block has been created.
-    $this->assertRaw(format_string('A custom block with block description %value already exists.', array(
+    $this->assertRaw(format_string('A custom block with block description %value already exists.', [
       '%value' => $edit['info[0][value]']
-    )));
+    ]));
     $this->assertResponse(200);
   }
 
@@ -83,28 +83,28 @@ public function testBlockContentCreation() {
    */
   public function testBlockContentCreationMultipleViewModes() {
     // Add a new view mode and verify if it is selected as expected.
-    $this->drupalLogin($this->drupalCreateUser(array('administer display modes')));
+    $this->drupalLogin($this->drupalCreateUser(['administer display modes']));
     $this->drupalGet('admin/structure/display-modes/view/add/block_content');
-    $edit = array(
+    $edit = [
       'id' => 'test_view_mode',
       'label' => 'Test View Mode',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('Saved the %label view mode.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Saved the %label view mode.', ['%label' => $edit['label']]));
 
     $this->drupalLogin($this->adminUser);
 
     // Create a block.
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = 'Test Block';
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
 
     // Check that the Basic block has been created.
-    $this->assertRaw(format_string('@block %name has been created.', array(
+    $this->assertRaw(format_string('@block %name has been created.', [
       '@block' => 'basic',
       '%name' => $edit['info[0][value]']
-    )), 'Basic block created.');
+    ]), 'Basic block created.');
 
     // Save our block permanently
     $this->drupalPostForm(NULL, ['region' => 'content'], t('Save block'));
@@ -114,9 +114,9 @@ public function testBlockContentCreationMultipleViewModes() {
     $this->drupalGet('admin/structure/block/block-content/types');
     $this->clickLink(t('Manage display'));
     $this->drupalGet('admin/structure/block/block-content/manage/basic/display');
-    $custom_view_mode = array(
+    $custom_view_mode = [
       'display_modes_custom[test_view_mode]' => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $custom_view_mode, t('Save'));
 
     // Go to the configure page and change the view mode.
@@ -143,7 +143,7 @@ public function testBlockContentCreationMultipleViewModes() {
     $this->assertFieldByXPath('//select[@name="settings[view_mode]"]/option[@selected="selected"]/@value', 'test_view_mode', 'View mode changed to Test View Mode');
 
     // Check that the block exists in the database.
-    $blocks = entity_load_multiple_by_properties('block_content', array('info' => $edit['info[0][value]']));
+    $blocks = entity_load_multiple_by_properties('block_content', ['info' => $edit['info[0][value]']]);
     $block = reset($blocks);
     $this->assertTrue($block, 'Custom Block found in database.');
 
@@ -152,9 +152,9 @@ public function testBlockContentCreationMultipleViewModes() {
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
 
     // Check that the Basic block has been created.
-    $this->assertRaw(format_string('A custom block with block description %value already exists.', array(
+    $this->assertRaw(format_string('A custom block with block description %value already exists.', [
       '%value' => $edit['info[0][value]']
-    )));
+    ]));
     $this->assertResponse(200);
   }
 
@@ -165,20 +165,20 @@ public function testBlockContentCreationMultipleViewModes() {
    * type is being used.
    */
   public function testDefaultBlockContentCreation() {
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     // Don't pass the custom block type in the url so the default is forced.
     $this->drupalPostForm('block/add', $edit, t('Save'));
 
     // Check that the block has been created and that it is a basic block.
-    $this->assertRaw(format_string('@block %name has been created.', array(
+    $this->assertRaw(format_string('@block %name has been created.', [
       '@block' => 'basic',
       '%name' => $edit['info[0][value]'],
-    )), 'Basic block created.');
+    ]), 'Basic block created.');
 
     // Check that the block exists in the database.
-    $blocks = entity_load_multiple_by_properties('block_content', array('info' => $edit['info[0][value]']));
+    $blocks = entity_load_multiple_by_properties('block_content', ['info' => $edit['info[0][value]']]);
     $block = reset($blocks);
     $this->assertTrue($block, 'Default Custom Block found in database.');
   }
@@ -199,7 +199,7 @@ public function testFailedBlockCreation() {
     if (Database::getConnection()->supportsTransactions()) {
       // Check that the block does not exist in the database.
       $id = db_select('block_content_field_data', 'b')
-        ->fields('b', array('id'))
+        ->fields('b', ['id'])
         ->condition('info', 'fail_creation')
         ->execute()
         ->fetchField();
@@ -208,7 +208,7 @@ public function testFailedBlockCreation() {
     else {
       // Check that the block exists in the database.
       $id = db_select('block_content_field_data', 'b')
-        ->fields('b', array('id'))
+        ->fields('b', ['id'])
         ->condition('info', 'fail_creation')
         ->execute()
         ->fetchField();
@@ -225,18 +225,18 @@ public function testFailedBlockCreation() {
    */
   public function testBlockDelete() {
     // Create a block.
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = $this->randomMachineName(8);
     $body = $this->randomMachineName(16);
     $edit['body[0][value]'] = $body;
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
 
     // Place the block.
-    $instance = array(
+    $instance = [
       'id' => Unicode::strtolower($edit['info[0][value]']),
       'settings[label]' => $edit['info[0][value]'],
       'region' => 'sidebar_first',
-    );
+    ];
     $block = BlockContent::load(1);
     $url = 'admin/structure/block/add/block_content:' . $block->uuid() . '/' . $this->config('system.theme')->get('default');
     $this->drupalPostForm($url, $instance, t('Save block'));
@@ -254,11 +254,11 @@ public function testBlockDelete() {
     $this->drupalGet('block/1/delete');
     $this->assertText(\Drupal::translation()->formatPlural(1, 'This will also remove 1 placed block instance.', 'This will also remove @count placed block instance.'));
 
-    $this->drupalPostForm(NULL, array(), 'Delete');
-    $this->assertRaw(t('The custom block %name has been deleted.', array('%name' => $edit['info[0][value]'])));
+    $this->drupalPostForm(NULL, [], 'Delete');
+    $this->assertRaw(t('The custom block %name has been deleted.', ['%name' => $edit['info[0][value]']]));
 
     // Create another block and force the plugin cache to flush.
-    $edit2 = array();
+    $edit2 = [];
     $edit2['info[0][value]'] = $this->randomMachineName(8);
     $body2 = $this->randomMachineName(16);
     $edit2['body[0][value]'] = $body2;
@@ -268,7 +268,7 @@ public function testBlockDelete() {
 
     // Create another block with no instances, and test we don't get a
     // confirmation message about deleting instances.
-    $edit3 = array();
+    $edit3 = [];
     $edit3['info[0][value]'] = $this->randomMachineName(8);
     $body = $this->randomMachineName(16);
     $edit3['body[0][value]'] = $body;
@@ -286,16 +286,16 @@ public function testConfigDependencies() {
     $block = $this->createBlockContent();
     // Place the block.
     $block_placement_id = Unicode::strtolower($block->label());
-    $instance = array(
+    $instance = [
       'id' => $block_placement_id,
       'settings[label]' => $block->label(),
       'region' => 'sidebar_first',
-    );
+    ];
     $block = BlockContent::load(1);
     $url = 'admin/structure/block/add/block_content:' . $block->uuid() . '/' . $this->config('system.theme')->get('default');
     $this->drupalPostForm($url, $instance, t('Save block'));
 
-    $dependencies = \Drupal::service('config.manager')->findConfigEntityDependentsAsEntities('content', array($block->getConfigDependencyName()));
+    $dependencies = \Drupal::service('config.manager')->findConfigEntityDependentsAsEntities('content', [$block->getConfigDependencyName()]);
     $block_placement = reset($dependencies);
     $this->assertEqual($block_placement_id, $block_placement->id(), "The block placement config entity has a dependency on the block content entity.");
   }
diff --git a/core/modules/block_content/src/Tests/BlockContentListTest.php b/core/modules/block_content/src/Tests/BlockContentListTest.php
index be8ea5e..e00706e 100644
--- a/core/modules/block_content/src/Tests/BlockContentListTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentListTest.php
@@ -18,13 +18,13 @@ class BlockContentListTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_content', 'config_translation');
+  public static $modules = ['block', 'block_content', 'config_translation'];
 
   /**
    * Tests the custom block listing page.
    */
   public function testListing() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer blocks', 'translate configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['administer blocks', 'translate configuration']));
     $this->drupalGet('admin/structure/block/block-content');
 
     // Test for the page title.
@@ -39,7 +39,7 @@ public function testListing() {
     $this->assertEqual(count($elements), 2, 'Correct number of table header cells found.');
 
     // Test the contents of each th cell.
-    $expected_items = array(t('Block description'), t('Operations'));
+    $expected_items = [t('Block description'), t('Operations')];
     foreach ($elements as $key => $element) {
       $this->assertEqual($element[0], $expected_items[$key]);
     }
@@ -51,7 +51,7 @@ public function testListing() {
     $this->assertLink($link_text);
     $this->clickLink($link_text);
     $this->assertResponse(200);
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = $label;
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm(NULL, $edit, t('Save'));
@@ -72,14 +72,14 @@ public function testListing() {
     $blocks = $this->container
       ->get('entity.manager')
       ->getStorage('block_content')
-      ->loadByProperties(array('info' => $label));
+      ->loadByProperties(['info' => $label]);
     $block = reset($blocks);
     if (!empty($block)) {
       $this->assertLinkByHref('block/' . $block->id());
       $this->clickLink(t('Edit'));
       $this->assertResponse(200);
-      $this->assertTitle(strip_tags(t('Edit custom block %label', array('%label' => $label)) . ' | Drupal'));
-      $edit = array('info[0][value]' => $new_label);
+      $this->assertTitle(strip_tags(t('Edit custom block %label', ['%label' => $label]) . ' | Drupal'));
+      $edit = ['info[0][value]' => $new_label];
       $this->drupalPostForm(NULL, $edit, t('Save'));
     }
     else {
@@ -95,8 +95,8 @@ public function testListing() {
     $delete_text = t('Delete');
     $this->clickLink($delete_text);
     $this->assertResponse(200);
-    $this->assertTitle(strip_tags(t('Are you sure you want to delete the custom block %label?', array('%label' => $new_label)) . ' | Drupal'));
-    $this->drupalPostForm(NULL, array(), $delete_text);
+    $this->assertTitle(strip_tags(t('Are you sure you want to delete the custom block %label?', ['%label' => $new_label]) . ' | Drupal'));
+    $this->drupalPostForm(NULL, [], $delete_text);
 
     // Verify that the text of the label and machine name does not appear in
     // the list (though it may appear elsewhere on the page).
diff --git a/core/modules/block_content/src/Tests/BlockContentListViewsTest.php b/core/modules/block_content/src/Tests/BlockContentListViewsTest.php
index de0ff3b..77117fb 100644
--- a/core/modules/block_content/src/Tests/BlockContentListViewsTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentListViewsTest.php
@@ -22,7 +22,7 @@ class BlockContentListViewsTest extends BlockContentTestBase {
    * Tests the custom block listing page.
    */
   public function testListing() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer blocks', 'translate configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['administer blocks', 'translate configuration']));
     $this->drupalGet('admin/structure/block/block-content');
 
     // Test for the page title.
@@ -58,7 +58,7 @@ public function testListing() {
     $this->assertLink($link_text);
     $this->clickLink($link_text);
     $this->assertResponse(200);
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = $label;
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm(NULL, $edit, t('Save'));
@@ -79,14 +79,14 @@ public function testListing() {
     $blocks = $this->container
       ->get('entity.manager')
       ->getStorage('block_content')
-      ->loadByProperties(array('info' => $label));
+      ->loadByProperties(['info' => $label]);
     $block = reset($blocks);
     if (!empty($block)) {
       $this->assertLinkByHref('block/' . $block->id());
       $this->clickLink(t('Edit'));
       $this->assertResponse(200);
-      $this->assertTitle(strip_tags(t('Edit custom block %label', array('%label' => $label)) . ' | Drupal'));
-      $edit = array('info[0][value]' => $new_label);
+      $this->assertTitle(strip_tags(t('Edit custom block %label', ['%label' => $label]) . ' | Drupal'));
+      $edit = ['info[0][value]' => $new_label];
       $this->drupalPostForm(NULL, $edit, t('Save'));
     }
     else {
@@ -102,8 +102,8 @@ public function testListing() {
     $delete_text = t('Delete');
     $this->clickLink($delete_text);
     $this->assertResponse(200);
-    $this->assertTitle(strip_tags(t('Are you sure you want to delete the custom block %label?', array('%label' => $new_label)) . ' | Drupal'));
-    $this->drupalPostForm(NULL, array(), $delete_text);
+    $this->assertTitle(strip_tags(t('Are you sure you want to delete the custom block %label?', ['%label' => $new_label]) . ' | Drupal'));
+    $this->drupalPostForm(NULL, [], $delete_text);
 
     // Verify that the text of the label and machine name does not appear in
     // the list (though it may appear elsewhere on the page).
diff --git a/core/modules/block_content/src/Tests/BlockContentTestBase.php b/core/modules/block_content/src/Tests/BlockContentTestBase.php
index 28c6e22..3794478 100644
--- a/core/modules/block_content/src/Tests/BlockContentTestBase.php
+++ b/core/modules/block_content/src/Tests/BlockContentTestBase.php
@@ -31,16 +31,16 @@
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer blocks'
-  );
+  ];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('block', 'block_content');
+  public static $modules = ['block', 'block_content'];
 
   /**
    * Whether or not to auto-create the basic block type during setup.
@@ -78,11 +78,11 @@ protected function setUp() {
    */
   protected function createBlockContent($title = FALSE, $bundle = 'basic', $save = TRUE) {
     $title = $title ?: $this->randomMachineName();
-    $block_content = BlockContent::create(array(
+    $block_content = BlockContent::create([
       'info' => $title,
       'type' => $bundle,
       'langcode' => 'en'
-    ));
+    ]);
     if ($block_content && $save === TRUE) {
       $block_content->save();
     }
@@ -101,11 +101,11 @@ protected function createBlockContent($title = FALSE, $bundle = 'basic', $save =
    *   Created custom block type.
    */
   protected function createBlockContentType($label, $create_body = FALSE) {
-    $bundle = BlockContentType::create(array(
+    $bundle = BlockContentType::create([
       'id' => $label,
       'label' => $label,
       'revision' => FALSE,
-    ));
+    ]);
     $bundle->save();
     if ($create_body) {
       block_content_add_body_field($bundle->id());
diff --git a/core/modules/block_content/src/Tests/BlockContentTranslationUITest.php b/core/modules/block_content/src/Tests/BlockContentTranslationUITest.php
index 332bf3d..198beee 100644
--- a/core/modules/block_content/src/Tests/BlockContentTranslationUITest.php
+++ b/core/modules/block_content/src/Tests/BlockContentTranslationUITest.php
@@ -19,13 +19,13 @@ class BlockContentTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'block',
     'field_ui',
     'block_content'
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -57,11 +57,11 @@ protected function setUp() {
    */
   protected function setupBundle() {
     // Create the basic bundle since it is provided by standard.
-    $bundle = BlockContentType::create(array(
+    $bundle = BlockContentType::create([
       'id' => $this->bundle,
       'label' => $this->bundle,
       'revision' => FALSE
-    ));
+    ]);
     $bundle->save();
   }
 
@@ -69,12 +69,12 @@ protected function setupBundle() {
    * {@inheritdoc}
    */
   public function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array(
+    return array_merge(parent::getTranslatorPermissions(), [
       'translate any entity',
       'access administration pages',
       'administer blocks',
       'administer block_content fields'
-    ));
+    ]);
   }
 
   /**
@@ -93,11 +93,11 @@ public function getTranslatorPermissions() {
   protected function createBlockContent($title = FALSE, $bundle = FALSE) {
     $title = $title ?: $this->randomMachineName();
     $bundle = $bundle ?: $this->bundle;
-    $block_content = BlockContent::create(array(
+    $block_content = BlockContent::create([
       'info' => $title,
       'type' => $bundle,
       'langcode' => 'en'
-    ));
+    ]);
     $block_content->save();
     return $block_content;
   }
@@ -106,7 +106,7 @@ protected function createBlockContent($title = FALSE, $bundle = FALSE) {
    * {@inheritdoc}
    */
   protected function getNewEntityValues($langcode) {
-    return array('info' => Unicode::strtolower($this->randomMachineName())) + parent::getNewEntityValues($langcode);
+    return ['info' => Unicode::strtolower($this->randomMachineName())] + parent::getNewEntityValues($langcode);
   }
 
   /**
@@ -135,7 +135,7 @@ protected function doTestBasicTranslation() {
     $values = $this->getNewEntityValues($default_langcode);
     $storage = \Drupal::entityManager()->getStorage($this->entityTypeId);
     /** @var \Drupal\Core\Entity\ContentEntityInterface $entity */
-    $entity = $storage->create(array('type' => 'basic') + $values);
+    $entity = $storage->create(['type' => 'basic'] + $values);
     $entity->save();
     $entity->addTranslation('it', $values);
 
@@ -159,11 +159,11 @@ protected function doTestBasicTranslation() {
   public function testDisabledBundle() {
     // Create a bundle that does not have translation enabled.
     $disabled_bundle = $this->randomMachineName();
-    $bundle = BlockContentType::create(array(
+    $bundle = BlockContentType::create([
       'id' => $disabled_bundle,
       'label' => $disabled_bundle,
       'revision' => FALSE
-    ));
+    ]);
     $bundle->save();
 
     // Create a block content for each bundle.
@@ -171,7 +171,7 @@ public function testDisabledBundle() {
     $disabled_block_content = $this->createBlockContent(FALSE, $bundle->id());
 
     // Make sure that only a single row was inserted into the block table.
-    $rows = db_query('SELECT * FROM {block_content_field_data} WHERE id = :id', array(':id' => $enabled_block_content->id()))->fetchAll();
+    $rows = db_query('SELECT * FROM {block_content_field_data} WHERE id = :id', [':id' => $enabled_block_content->id()])->fetchAll();
     $this->assertEqual(1, count($rows));
   }
 
@@ -188,15 +188,15 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('<em>Edit @type</em> @title [%language translation]', array(
+        $title = t('<em>Edit @type</em> @title [%language translation]', [
           '@type' => $entity->bundle(),
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/block_content/src/Tests/BlockContentTypeTest.php b/core/modules/block_content/src/Tests/BlockContentTypeTest.php
index 8f6ffe1..e69394b 100644
--- a/core/modules/block_content/src/Tests/BlockContentTypeTest.php
+++ b/core/modules/block_content/src/Tests/BlockContentTypeTest.php
@@ -17,17 +17,17 @@ class BlockContentTypeTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_ui');
+  public static $modules = ['field_ui'];
 
   /**
    * Permissions to grant admin user.
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer blocks',
     'administer block_content fields'
-  );
+  ];
 
   /**
    * Whether or not to create an initial block type.
@@ -56,10 +56,10 @@ public function testBlockContentTypeCreation() {
     $this->clickLink('block type creation page');
 
     // Create a block type via the user interface.
-    $edit = array(
+    $edit = [
       'id' => 'foo',
       'label' => 'title for foo',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $block_type = BlockContentType::load('foo');
     $this->assertTrue($block_type, 'The new block type has been created.');
@@ -107,9 +107,9 @@ public function testBlockContentTypeEditing() {
     $this->assertRaw('Body', 'Body field was found.');
 
     // Change the block type name.
-    $edit = array(
+    $edit = [
       'label' => 'Bar',
-    );
+    ];
     $this->drupalGet('admin/structure/block/block-content/manage/basic');
     $this->assertTitle(format_string('Edit @type custom block type | Drupal', ['@type' => 'basic']));
     $this->drupalPostForm(NULL, $edit, t('Save'));
@@ -121,9 +121,9 @@ public function testBlockContentTypeEditing() {
     $this->assertUrl(\Drupal::url('block_content.add_form', ['block_content_type' => 'basic'], ['absolute' => TRUE]), [], 'Original machine name was used in URL.');
 
     // Remove the body field.
-    $this->drupalPostForm('admin/structure/block/block-content/manage/basic/fields/block_content.basic.body/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/block/block-content/manage/basic/fields/block_content.basic.body/delete', [], t('Delete'));
     // Resave the settings for this type.
-    $this->drupalPostForm('admin/structure/block/block-content/manage/basic', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/block/block-content/manage/basic', [], t('Save'));
     // Check that the body field doesn't exist.
     $this->drupalGet('block/add/basic');
     $this->assertNoRaw('Body', 'Body field was not found.');
@@ -146,7 +146,7 @@ public function testBlockContentTypeDeletion() {
     // Attempt to delete the block type, which should not be allowed.
     $this->drupalGet('admin/structure/block/block-content/manage/' . $type->id() . '/delete');
     $this->assertRaw(
-      t('%label is used by 1 custom block on your site. You can not remove this block type until you have removed all of the %label blocks.', array('%label' => $type->label())),
+      t('%label is used by 1 custom block on your site. You can not remove this block type until you have removed all of the %label blocks.', ['%label' => $type->label()]),
       'The block type will not be deleted until all blocks of that type are removed.'
     );
     $this->assertNoText(t('This action cannot be undone.'), 'The block type deletion confirmation form is not available.');
@@ -156,7 +156,7 @@ public function testBlockContentTypeDeletion() {
     // Attempt to delete the block type, which should now be allowed.
     $this->drupalGet('admin/structure/block/block-content/manage/' . $type->id() . '/delete');
     $this->assertRaw(
-      t('Are you sure you want to delete the custom block type %type?', array('%type' => $type->id())),
+      t('Are you sure you want to delete the custom block type %type?', ['%type' => $type->id()]),
       'The block type is available for deletion.'
     );
     $this->assertText(t('This action cannot be undone.'), 'The custom block type deletion confirmation form is available.');
@@ -197,22 +197,22 @@ public function testsBlockContentAddTypes() {
         $this->clickLink(t('Add custom block'));
         // The seven theme has markup inside the link, we cannot use clickLink().
         if ($default_theme == 'seven') {
-          $options = $theme != $default_theme ? array('query' => array('theme' => $theme)) : array();
-          $this->assertLinkByHref(\Drupal::url('block_content.add_form', array('block_content_type' => 'foo'), $options));
+          $options = $theme != $default_theme ? ['query' => ['theme' => $theme]] : [];
+          $this->assertLinkByHref(\Drupal::url('block_content.add_form', ['block_content_type' => 'foo'], $options));
           $this->drupalGet('block/add/foo', $options);
         }
         else {
           $this->clickLink('foo');
         }
         // Create a new block.
-        $edit = array('info[0][value]' => $this->randomMachineName(8));
+        $edit = ['info[0][value]' => $this->randomMachineName(8)];
         $this->drupalPostForm(NULL, $edit, t('Save'));
-        $blocks = $storage->loadByProperties(array('info' => $edit['info[0][value]']));
+        $blocks = $storage->loadByProperties(['info' => $edit['info[0][value]']]);
         if (!empty($blocks)) {
           $block = reset($blocks);
-          $this->assertUrl(\Drupal::url('block.admin_add', array('plugin_id' => 'block_content:' . $block->uuid(), 'theme' => $theme), array('absolute' => TRUE)));
+          $this->assertUrl(\Drupal::url('block.admin_add', ['plugin_id' => 'block_content:' . $block->uuid(), 'theme' => $theme], ['absolute' => TRUE]));
           $this->drupalPostForm(NULL, ['region' => 'content'], t('Save block'));
-          $this->assertUrl(\Drupal::url('block.admin_display_theme', array('theme' => $theme), array('absolute' => TRUE, 'query' => array('block-placement' => Html::getClass($edit['info[0][value]'])))));
+          $this->assertUrl(\Drupal::url('block.admin_display_theme', ['theme' => $theme], ['absolute' => TRUE, 'query' => ['block-placement' => Html::getClass($edit['info[0][value]'])]]));
         }
         else {
           $this->fail('Could not load created block.');
@@ -225,11 +225,11 @@ public function testsBlockContentAddTypes() {
     $this->drupalGet('admin/structure/block/block-content');
     $this->clickLink(t('Add custom block'));
     $this->clickLink('foo');
-    $edit = array('info[0][value]' => $this->randomMachineName(8));
+    $edit = ['info[0][value]' => $this->randomMachineName(8)];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $blocks = $storage->loadByProperties(array('info' => $edit['info[0][value]']));
+    $blocks = $storage->loadByProperties(['info' => $edit['info[0][value]']]);
     if (!empty($blocks)) {
-      $this->assertUrl(\Drupal::url('entity.block_content.collection', array(), array('absolute' => TRUE)));
+      $this->assertUrl(\Drupal::url('entity.block_content.collection', [], ['absolute' => TRUE]));
     }
     else {
       $this->fail('Could not load created block.');
diff --git a/core/modules/block_content/src/Tests/Views/BlockContentFieldFilterTest.php b/core/modules/block_content/src/Tests/Views/BlockContentFieldFilterTest.php
index 5a46ddd..905a7a0 100644
--- a/core/modules/block_content/src/Tests/Views/BlockContentFieldFilterTest.php
+++ b/core/modules/block_content/src/Tests/Views/BlockContentFieldFilterTest.php
@@ -15,14 +15,14 @@ class BlockContentFieldFilterTest extends BlockContentTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_field_filters');
+  public static $testViews = ['test_field_filters'];
 
   /**
    * List of block_content infos by language.
@@ -49,15 +49,15 @@ function setUp() {
     $field_storage->save();
 
     // Set up block_content infos.
-    $this->blockContentInfos = array(
+    $this->blockContentInfos = [
       'en' => 'Food in Paris',
       'es' => 'Comida en Paris',
       'fr' => 'Nouriture en Paris',
-    );
+    ];
 
     // Create block_content with translations.
     $block_content = $this->createBlockContent(['info' => $this->blockContentInfos['en'], 'langcode' => 'en', 'type' => 'basic', 'body' => [['value' => $this->blockContentInfos['en']]]]);
-    foreach (array('es', 'fr') as $langcode) {
+    foreach (['es', 'fr'] as $langcode) {
       $translation = $block_content->addTranslation($langcode, ['info' => $this->blockContentInfos[$langcode]]);
       $translation->body->value = $this->blockContentInfos[$langcode];
     }
@@ -70,19 +70,19 @@ function setUp() {
   public function testFilters() {
     // Test the info filter page, which filters for info contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-info-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida info filter');
+    $this->assertPageCounts('test-info-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida info filter');
 
     // Test the body filter page, which filters for body contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-body-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida body filter');
+    $this->assertPageCounts('test-body-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida body filter');
 
     // Test the info Paris filter page, which filters for info contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-info-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris info filter');
+    $this->assertPageCounts('test-info-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris info filter');
 
     // Test the body Paris filter page, which filters for body contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-body-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris body filter');
+    $this->assertPageCounts('test-body-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris body filter');
   }
 
   /**
diff --git a/core/modules/block_content/src/Tests/Views/BlockContentIntegrationTest.php b/core/modules/block_content/src/Tests/Views/BlockContentIntegrationTest.php
index d92c5be..8ec17e2 100644
--- a/core/modules/block_content/src/Tests/Views/BlockContentIntegrationTest.php
+++ b/core/modules/block_content/src/Tests/Views/BlockContentIntegrationTest.php
@@ -14,23 +14,23 @@ class BlockContentIntegrationTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_block_content_view');
+  public static $testViews = ['test_block_content_view'];
 
   /**
    * Tests basic block_content view with a block_content_type argument.
    */
   public function testBlockContentViewTypeArgument() {
     // Create two content types with three block_contents each.
-    $types = array();
-    $all_ids = array();
-    $block_contents = array();
+    $types = [];
+    $all_ids = [];
+    $block_contents = [];
     for ($i = 0; $i < 2; $i++) {
       $type = $this->createBlockContentType();
       $types[] = $type;
 
       for ($j = 0; $j < 5; $j++) {
         // Ensure the right order of the block_contents.
-        $block_content = $this->createBlockContent(array('type' => $type->id()));
+        $block_content = $this->createBlockContent(['type' => $type->id()]);
         $block_contents[$type->id()][$block_content->id()] = $block_content;
         $all_ids[] = $block_content->id();
       }
@@ -55,9 +55,9 @@ public function testBlockContentViewTypeArgument() {
    * @param array $expected_ids
    *   An array of block_content IDs.
    */
-  protected function assertIds(array $expected_ids = array()) {
+  protected function assertIds(array $expected_ids = []) {
     $result = $this->xpath('//span[@class="field-content"]');
-    $ids = array();
+    $ids = [];
     foreach ($result as $element) {
       $ids[] = (int) $element;
     }
diff --git a/core/modules/block_content/src/Tests/Views/BlockContentRedirectTest.php b/core/modules/block_content/src/Tests/Views/BlockContentRedirectTest.php
index ff80665..828aa84 100644
--- a/core/modules/block_content/src/Tests/Views/BlockContentRedirectTest.php
+++ b/core/modules/block_content/src/Tests/Views/BlockContentRedirectTest.php
@@ -21,18 +21,18 @@ class BlockContentRedirectTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_content', 'views');
+  public static $modules = ['block', 'block_content', 'views'];
 
   /**
    * Tests the redirect destination when editing block content.
    */
   public function testRedirectDestination() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer blocks')));
+    $this->drupalLogin($this->drupalCreateUser(['administer blocks']));
     $this->drupalGet('admin/structure/block/block-content');
 
     // Create a custom block.
     $this->clickLink('custom block');
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = 'Test redirect destination';
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm(NULL, $edit, 'Save');
diff --git a/core/modules/block_content/src/Tests/Views/BlockContentTestBase.php b/core/modules/block_content/src/Tests/Views/BlockContentTestBase.php
index 65d33c88..db665c9 100644
--- a/core/modules/block_content/src/Tests/Views/BlockContentTestBase.php
+++ b/core/modules/block_content/src/Tests/Views/BlockContentTestBase.php
@@ -25,26 +25,26 @@
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer blocks',
-  );
+  ];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('block', 'block_content', 'block_content_test_views');
+  public static $modules = ['block', 'block_content', 'block_content_test_views'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp($import_test_views);
     // Ensure the basic bundle exists. This is provided by the standard profile.
-    $this->createBlockContentType(array('id' => 'basic'));
+    $this->createBlockContentType(['id' => 'basic']);
 
     $this->adminUser = $this->drupalCreateUser($this->permissions);
 
     if ($import_test_views) {
-      ViewTestData::createTestViews(get_class($this), array('block_content_test_views'));
+      ViewTestData::createTestViews(get_class($this), ['block_content_test_views']);
     }
   }
 
@@ -58,17 +58,17 @@ protected function setUp($import_test_views = TRUE) {
    * @return \Drupal\block_content\Entity\BlockContent
    *   Created custom block.
    */
-  protected function createBlockContent(array $settings = array()) {
+  protected function createBlockContent(array $settings = []) {
     $status = 0;
-    $settings += array(
+    $settings += [
       'info' => $this->randomMachineName(),
       'type' => 'basic',
       'langcode' => 'en',
-    );
+    ];
     if ($block_content = BlockContent::create($settings)) {
       $status = $block_content->save();
     }
-    $this->assertEqual($status, SAVED_NEW, SafeMarkup::format('Created block content %info.', array('%info' => $block_content->label())));
+    $this->assertEqual($status, SAVED_NEW, SafeMarkup::format('Created block content %info.', ['%info' => $block_content->label()]));
     return $block_content;
   }
 
@@ -81,7 +81,7 @@ protected function createBlockContent(array $settings = array()) {
    * @return \Drupal\block_content\Entity\BlockContentType
    *   Created custom block type.
    */
-  protected function createBlockContentType(array $values = array()) {
+  protected function createBlockContentType(array $values = []) {
     // Find a non-existent random type name.
     if (!isset($values['id'])) {
       do {
@@ -91,16 +91,16 @@ protected function createBlockContentType(array $values = array()) {
     else {
       $id = $values['id'];
     }
-    $values += array(
+    $values += [
       'id' => $id,
       'label' => $id,
       'revision' => FALSE
-    );
+    ];
     $bundle = BlockContentType::create($values);
     $status = $bundle->save();
     block_content_add_body_field($bundle->id());
 
-    $this->assertEqual($status, SAVED_NEW, SafeMarkup::format('Created block content type %bundle.', array('%bundle' => $bundle->id())));
+    $this->assertEqual($status, SAVED_NEW, SafeMarkup::format('Created block content type %bundle.', ['%bundle' => $bundle->id()]));
     return $bundle;
   }
 
diff --git a/core/modules/block_content/src/Tests/Views/FieldTypeTest.php b/core/modules/block_content/src/Tests/Views/FieldTypeTest.php
index f14653f..e9aa336 100644
--- a/core/modules/block_content/src/Tests/Views/FieldTypeTest.php
+++ b/core/modules/block_content/src/Tests/Views/FieldTypeTest.php
@@ -16,18 +16,18 @@ class FieldTypeTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_field_type');
+  public static $testViews = ['test_field_type'];
 
   public function testFieldType() {
     $block_content = $this->createBlockContent();
-    $expected_result[] = array(
+    $expected_result[] = [
       'id' => $block_content->id(),
       'type' => $block_content->bundle(),
-    );
-    $column_map = array(
+    ];
+    $column_map = [
       'id' => 'id',
       'type:target_id' => 'type',
-    );
+    ];
 
     $view = Views::getView('test_field_type');
     $this->executeView($view);
diff --git a/core/modules/block_content/src/Tests/Views/RevisionRelationshipsTest.php b/core/modules/block_content/src/Tests/Views/RevisionRelationshipsTest.php
index 516705d..7bad093 100644
--- a/core/modules/block_content/src/Tests/Views/RevisionRelationshipsTest.php
+++ b/core/modules/block_content/src/Tests/Views/RevisionRelationshipsTest.php
@@ -20,72 +20,72 @@ class RevisionRelationshipsTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('block_content' , 'block_content_test_views');
+  public static $modules = ['block_content' , 'block_content_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_block_content_revision_id', 'test_block_content_revision_revision_id');
+  public static $testViews = ['test_block_content_revision_id', 'test_block_content_revision_revision_id'];
 
   protected function setUp() {
     parent::setUp();
-    BlockContentType::create(array(
+    BlockContentType::create([
       'id' => 'basic',
       'label' => 'basic',
       'revision' => TRUE,
-    ));
-    ViewTestData::createTestViews(get_class($this), array('block_content_test_views'));
+    ]);
+    ViewTestData::createTestViews(get_class($this), ['block_content_test_views']);
   }
 
   /**
    * Create a block_content with revision and rest result count for both views.
    */
   public function testBlockContentRevisionRelationship() {
-    $block_content = BlockContent::create(array(
+    $block_content = BlockContent::create([
       'info' => $this->randomMachineName(),
       'type' => 'basic',
       'langcode' => 'en',
-    ));
+    ]);
     $block_content->save();
     // Create revision of the block_content.
     $block_content_revision = clone $block_content;
     $block_content_revision->setNewRevision();
     $block_content_revision->save();
-    $column_map = array(
+    $column_map = [
       'revision_id' => 'revision_id',
       'id_1' => 'id_1',
       'block_content_field_data_block_content_field_revision_id' => 'block_content_field_data_block_content_field_revision_id',
-    );
+    ];
 
     // Here should be two rows.
     $view_id = Views::getView('test_block_content_revision_id');
-    $this->executeView($view_id, array($block_content->id()));
-    $resultset_id = array(
-      array(
+    $this->executeView($view_id, [$block_content->id()]);
+    $resultset_id = [
+      [
         'revision_id' => '1',
         'id_1' => '1',
         'block_content_field_data_block_content_field_revision_id' => '1',
-      ),
-      array(
+      ],
+      [
         'revision_id' => '2',
         'id_1' => '1',
         'block_content_field_data_block_content_field_revision_id' => '1',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view_id, $resultset_id, $column_map);
 
     // There should be only one row with active revision 2.
     $view_revision_id = Views::getView('test_block_content_revision_revision_id');
-    $this->executeView($view_revision_id, array($block_content->id()));
-    $resultset_revision_id = array(
-      array(
+    $this->executeView($view_revision_id, [$block_content->id()]);
+    $resultset_revision_id = [
+      [
         'revision_id' => '2',
         'id_1' => '1',
         'block_content_field_data_block_content_field_revision_id' => '1',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view_revision_id, $resultset_revision_id, $column_map);
   }
 
diff --git a/core/modules/block_content/tests/modules/block_content_test/block_content_test.module b/core/modules/block_content/tests/modules/block_content_test/block_content_test.module
index 57ea2a6..0489a61 100644
--- a/core/modules/block_content/tests/modules/block_content_test/block_content_test.module
+++ b/core/modules/block_content/tests/modules/block_content_test/block_content_test.module
@@ -15,9 +15,9 @@
  */
 function block_content_test_block_content_view(array &$build, BlockContent $block_content, $view_mode) {
   // Add extra content.
-  $build['extra_content'] = array(
+  $build['extra_content'] = [
     '#markup' => '<blink>Yowser</blink>',
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/block_content/tests/src/Functional/BlockContentCacheTagsTest.php b/core/modules/block_content/tests/src/Functional/BlockContentCacheTagsTest.php
index f44a773..e00de6b 100644
--- a/core/modules/block_content/tests/src/Functional/BlockContentCacheTagsTest.php
+++ b/core/modules/block_content/tests/src/Functional/BlockContentCacheTagsTest.php
@@ -20,29 +20,29 @@ class BlockContentCacheTagsTest extends EntityCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('block_content');
+  public static $modules = ['block_content'];
 
   /**
    * {@inheritdoc}
    */
   protected function createEntity() {
-    $block_content_type = BlockContentType::create(array(
+    $block_content_type = BlockContentType::create([
       'id' => 'basic',
       'label' => 'basic',
       'revision' => FALSE
-    ));
+    ]);
     $block_content_type->save();
     block_content_add_body_field($block_content_type->id());
 
     // Create a "Llama" custom block.
-    $block_content = BlockContent::create(array(
+    $block_content = BlockContent::create([
       'info' => 'Llama',
       'type' => 'basic',
-      'body' => array(
+      'body' => [
         'value' => 'The name "llama" was adopted by European settlers from native Peruvians.',
         'format' => 'plain_text',
-      ),
-    ));
+      ],
+    ]);
     $block_content->save();
 
     return $block_content;
diff --git a/core/modules/block_content/tests/src/Functional/BlockContentPageViewTest.php b/core/modules/block_content/tests/src/Functional/BlockContentPageViewTest.php
index 8c55da3..355faf1 100644
--- a/core/modules/block_content/tests/src/Functional/BlockContentPageViewTest.php
+++ b/core/modules/block_content/tests/src/Functional/BlockContentPageViewTest.php
@@ -14,7 +14,7 @@ class BlockContentPageViewTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block_content_test');
+  public static $modules = ['block_content_test'];
 
   /**
    * Checks block edit and fallback functionality.
diff --git a/core/modules/block_content/tests/src/Functional/BlockContentRevisionsTest.php b/core/modules/block_content/tests/src/Functional/BlockContentRevisionsTest.php
index 33f75ed..fa88c64 100644
--- a/core/modules/block_content/tests/src/Functional/BlockContentRevisionsTest.php
+++ b/core/modules/block_content/tests/src/Functional/BlockContentRevisionsTest.php
@@ -37,8 +37,8 @@ protected function setUp() {
     // Create initial block.
     $block = $this->createBlockContent('initial');
 
-    $blocks = array();
-    $logs = array();
+    $blocks = [];
+    $logs = [];
 
     // Get original block.
     $blocks[] = $block->getRevisionId();
@@ -74,9 +74,9 @@ public function testRevisions() {
         ->getStorage('block_content')
         ->loadRevision($revision_id);
       // Verify revision log is the same.
-      $this->assertEqual($loaded->getRevisionLogMessage(), $logs[$delta], format_string('Correct log message found for revision @revision', array(
+      $this->assertEqual($loaded->getRevisionLogMessage(), $logs[$delta], format_string('Correct log message found for revision @revision', [
         '@revision' => $loaded->getRevisionId(),
-      )));
+      ]));
       if ($delta > 0) {
         $this->assertTrue($loaded->getRevisionUser() instanceof UserInterface, 'Revision User found.');
         $this->assertTrue(is_numeric($loaded->getRevisionUserId()), 'Revision User ID found.');
diff --git a/core/modules/block_content/tests/src/Functional/BlockContentSaveTest.php b/core/modules/block_content/tests/src/Functional/BlockContentSaveTest.php
index a68f423..0f7ae5a 100644
--- a/core/modules/block_content/tests/src/Functional/BlockContentSaveTest.php
+++ b/core/modules/block_content/tests/src/Functional/BlockContentSaveTest.php
@@ -16,7 +16,7 @@ class BlockContentSaveTest extends BlockContentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block_content_test');
+  public static $modules = ['block_content_test'];
 
   /**
    * Sets the test up.
@@ -35,12 +35,12 @@ public function testImport() {
     $max_id = db_query('SELECT MAX(id) FROM {block_content}')->fetchField();
     $test_id = $max_id + mt_rand(1000, 1000000);
     $info = $this->randomMachineName(8);
-    $block_array = array(
+    $block_array = [
       'info' => $info,
-      'body' => array('value' => $this->randomMachineName(32)),
+      'body' => ['value' => $this->randomMachineName(32)],
       'type' => 'basic',
       'id' => $test_id
-    );
+    ];
     $block = BlockContent::create($block_array);
     $block->enforceIsNew(TRUE);
     $block->save();
diff --git a/core/modules/block_content/tests/src/Functional/BlockContentTestBase.php b/core/modules/block_content/tests/src/Functional/BlockContentTestBase.php
index e5e7736..45c7e26 100644
--- a/core/modules/block_content/tests/src/Functional/BlockContentTestBase.php
+++ b/core/modules/block_content/tests/src/Functional/BlockContentTestBase.php
@@ -28,16 +28,16 @@
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer blocks'
-  );
+  ];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('block', 'block_content');
+  public static $modules = ['block', 'block_content'];
 
   /**
    * Whether or not to auto-create the basic block type during setup.
@@ -75,11 +75,11 @@ protected function setUp() {
    */
   protected function createBlockContent($title = FALSE, $bundle = 'basic', $save = TRUE) {
     $title = $title ?: $this->randomMachineName();
-    $block_content = BlockContent::create(array(
+    $block_content = BlockContent::create([
       'info' => $title,
       'type' => $bundle,
       'langcode' => 'en'
-    ));
+    ]);
     if ($block_content && $save === TRUE) {
       $block_content->save();
     }
@@ -98,11 +98,11 @@ protected function createBlockContent($title = FALSE, $bundle = 'basic', $save =
    *   Created custom block type.
    */
   protected function createBlockContentType($label, $create_body = FALSE) {
-    $bundle = BlockContentType::create(array(
+    $bundle = BlockContentType::create([
       'id' => $label,
       'label' => $label,
       'revision' => FALSE,
-    ));
+    ]);
     $bundle->save();
     if ($create_body) {
       block_content_add_body_field($bundle->id());
diff --git a/core/modules/block_content/tests/src/Functional/PageEditTest.php b/core/modules/block_content/tests/src/Functional/PageEditTest.php
index bab2a29..41638bd 100644
--- a/core/modules/block_content/tests/src/Functional/PageEditTest.php
+++ b/core/modules/block_content/tests/src/Functional/PageEditTest.php
@@ -27,7 +27,7 @@ public function testPageEdit() {
     $title_key = 'info[0][value]';
     $body_key = 'body[0][value]';
     // Create block to edit.
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = Unicode::strtolower($this->randomMachineName(8));
     $edit[$body_key] = $this->randomMachineName(16);
     $this->drupalPostForm('block/add/basic', $edit, t('Save'));
@@ -43,7 +43,7 @@ public function testPageEdit() {
     $this->assertFieldByName($body_key, $edit[$body_key], 'Body field displayed.');
 
     // Edit the content of the block.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     // Stay on the current page, without reloading.
@@ -51,21 +51,21 @@ public function testPageEdit() {
 
     // Edit the same block, creating a new revision.
     $this->drupalGet("block/" . $block->id());
-    $edit = array();
+    $edit = [];
     $edit['info[0][value]'] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     $edit['revision'] = TRUE;
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Ensure that the block revision has been created.
-    \Drupal::entityManager()->getStorage('block_content')->resetCache(array($block->id()));
+    \Drupal::entityManager()->getStorage('block_content')->resetCache([$block->id()]);
     $revised_block = BlockContent::load($block->id());
     $this->assertNotIdentical($block->getRevisionId(), $revised_block->getRevisionId(), 'A new revision has been created.');
 
     // Test deleting the block.
     $this->drupalGet("block/" . $revised_block->id());
     $this->clickLink(t('Delete'));
-    $this->assertText(format_string('Are you sure you want to delete the custom block @label?', array('@label' => $revised_block->label())));
+    $this->assertText(format_string('Are you sure you want to delete the custom block @label?', ['@label' => $revised_block->label()]));
   }
 
 }
diff --git a/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentBodyFieldTest.php b/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentBodyFieldTest.php
index 0bf29fd..7d34373 100644
--- a/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentBodyFieldTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentBodyFieldTest.php
@@ -15,7 +15,7 @@
  */
 class MigrateBlockContentBodyFieldTest extends MigrateDrupal7TestBase {
 
-  public static $modules = array('block', 'block_content', 'filter', 'text');
+  public static $modules = ['block', 'block_content', 'filter', 'text'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentTypeTest.php b/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentTypeTest.php
index 9a3cbf0..4accc20 100644
--- a/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentTypeTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Migrate/MigrateBlockContentTypeTest.php
@@ -13,7 +13,7 @@
  */
 class MigrateBlockContentTypeTest extends MigrateDrupal7TestBase {
 
-  public static $modules = array('block', 'block_content', 'filter', 'text');
+  public static $modules = ['block', 'block_content', 'filter', 'text'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/block_content/tests/src/Kernel/Migrate/d7/MigrateCustomBlockTest.php b/core/modules/block_content/tests/src/Kernel/Migrate/d7/MigrateCustomBlockTest.php
index 42990db..706a7cc 100644
--- a/core/modules/block_content/tests/src/Kernel/Migrate/d7/MigrateCustomBlockTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Migrate/d7/MigrateCustomBlockTest.php
@@ -13,11 +13,11 @@
  */
 class MigrateCustomBlockTest extends MigrateDrupal7TestBase {
 
-  public static $modules = array(
+  public static $modules = [
     'block_content',
     'filter',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php b/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
index 3ab934c..ced7e84 100644
--- a/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
+++ b/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
@@ -13,32 +13,32 @@
 class BlockContentLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'block' => 'core/modules/block',
       'block_content' => 'core/modules/block_content',
-    );
+    ];
     parent::setUp();
 
-    $config_factory = $this->getConfigFactoryStub(array('system.theme' => array(
+    $config_factory = $this->getConfigFactoryStub(['system.theme' => [
       'default' => 'test_c',
-    )));
+    ]]);
 
-    $themes = array();
-    $themes['test_a'] = (object) array(
+    $themes = [];
+    $themes['test_a'] = (object) [
       'status' => 0,
-    );
-    $themes['test_b'] = (object) array(
+    ];
+    $themes['test_b'] = (object) [
       'status' => 1,
-      'info' => array(
+      'info' => [
         'name' => 'test_b',
-      ),
-    );
-    $themes['test_c'] = (object) array(
+      ],
+    ];
+    $themes['test_c'] = (object) [
       'status' => 1,
-      'info' => array(
+      'info' => [
         'name' => 'test_c',
-      ),
-    );
+      ],
+    ];
     $theme_handler = $this->getMock('Drupal\Core\Extension\ThemeHandlerInterface');
     $theme_handler->expects($this->any())
       ->method('listInfo')
@@ -56,25 +56,25 @@ protected function setUp() {
    * @dataProvider getBlockContentListingRoutes
    */
   public function testBlockContentListLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array(
+    $this->assertLocalTasks($route, [
+      0 => [
         'block.admin_display',
         'entity.block_content.collection',
-      ),
-      1 => array(
+      ],
+      1 => [
         'block_content.list_sub',
         'entity.block_content_type.collection',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
    * Provides a list of routes to test.
    */
   public function getBlockContentListingRoutes() {
-    return array(
-      array('entity.block_content.collection', 'entity.block_content_type.collection'),
-    );
+    return [
+      ['entity.block_content.collection', 'entity.block_content_type.collection'],
+    ];
   }
 
 }
diff --git a/core/modules/book/book.install b/core/modules/book/book.install
index 76ddc81..7704483 100644
--- a/core/modules/book/book.install
+++ b/core/modules/book/book.install
@@ -17,119 +17,119 @@ function book_uninstall() {
  * Implements hook_schema().
  */
 function book_schema() {
-  $schema['book'] = array(
+  $schema['book'] = [
   'description' => 'Stores book outline information. Uniquely defines the location of each node in the book outline',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => "The book page's {node}.nid.",
-      ),
-      'bid' => array(
+      ],
+      'bid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => "The book ID is the {book}.nid of the top-level page.",
-      ),
-      'pid' => array(
+      ],
+      'pid' => [
         'description' => 'The parent ID (pid) is the id of the node above in the hierarchy, or zero if the node is at the top level in its outline.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'has_children' => array(
+      ],
+      'has_children' => [
         'description' => 'Flag indicating whether any nodes have this node as a parent (1 = children exist, 0 = no children).',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'size' => 'small',
-      ),
-      'weight' => array(
+      ],
+      'weight' => [
         'description' => 'Weight among book entries in the same book at the same depth.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'depth' => array(
+      ],
+      'depth' => [
         'description' => 'The depth relative to the top level. A link with pid == 0 will have depth == 1.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'size' => 'small',
-      ),
-      'p1' => array(
+      ],
+      'p1' => [
         'description' => 'The first nid in the materialized path. If N = depth, then pN must equal the nid. If depth > 1 then p(N-1) must equal the pid. All pX where X > depth must equal zero. The columns p1 .. p9 are also called the parents.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p2' => array(
+      ],
+      'p2' => [
         'description' => 'The second nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p3' => array(
+      ],
+      'p3' => [
         'description' => 'The third nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p4' => array(
+      ],
+      'p4' => [
         'description' => 'The fourth nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p5' => array(
+      ],
+      'p5' => [
         'description' => 'The fifth nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p6' => array(
+      ],
+      'p6' => [
         'description' => 'The sixth nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p7' => array(
+      ],
+      'p7' => [
         'description' => 'The seventh nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p8' => array(
+      ],
+      'p8' => [
         'description' => 'The eighth nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'p9' => array(
+      ],
+      'p9' => [
         'description' => 'The ninth nid in the materialized path. See p1.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('nid'),
-    'indexes' => array(
-      'book_parents' => array('bid', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['nid'],
+    'indexes' => [
+      'book_parents' => ['bid', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6', 'p7', 'p8', 'p9'],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/book/book.module b/core/modules/book/book.module
index ecccb74..988201e 100644
--- a/core/modules/book/book.module
+++ b/core/modules/book/book.module
@@ -25,17 +25,17 @@ function book_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.book':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Book module is used for creating structured, multi-page content, such as site resource guides, manuals, and wikis. It allows you to create content that has chapters, sections, subsections, or any similarly-tiered structure. Enabling the module creates a new content type <em>Book page</em>. For more information, see the <a href=":book">online documentation for the Book module</a>.', array(':book' => 'https://www.drupal.org/documentation/modules/book')) . '</p>';
+      $output .= '<p>' . t('The Book module is used for creating structured, multi-page content, such as site resource guides, manuals, and wikis. It allows you to create content that has chapters, sections, subsections, or any similarly-tiered structure. Enabling the module creates a new content type <em>Book page</em>. For more information, see the <a href=":book">online documentation for the Book module</a>.', [':book' => 'https://www.drupal.org/documentation/modules/book']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Adding and managing book content') . '</dt>';
       $output .= '<dd>' . t('Books have a hierarchical structure, called a <em>book outline</em>. Each book outline can have nested pages up to nine levels deep. Multiple content types can be configured to behave as a book outline. From the content edit form, it is possible to add a page to a book outline or create a new book.') . '</dd>';
-      $output .= '<dd>' . t('You can assign separate permissions for <em>creating new books</em> as well as <em>creating</em>, <em>editing</em> and <em>deleting</em> book content. Users with the <em>Administer book outlines</em> permission can add <em>any</em> type of content to a book by selecting the appropriate book outline while editing the content. They can also view a list of all books, and edit and rearrange section titles on the <a href=":admin-book">Book list page</a>.', array(':admin-book' => \Drupal::url('book.admin'))) . '</dd>';
+      $output .= '<dd>' . t('You can assign separate permissions for <em>creating new books</em> as well as <em>creating</em>, <em>editing</em> and <em>deleting</em> book content. Users with the <em>Administer book outlines</em> permission can add <em>any</em> type of content to a book by selecting the appropriate book outline while editing the content. They can also view a list of all books, and edit and rearrange section titles on the <a href=":admin-book">Book list page</a>.', [':admin-book' => \Drupal::url('book.admin')]) . '</dd>';
       $output .= '<dt>' . t('Configuring content types for books') . '</dt>';
-      $output .= '<dd>' . t('The <em>Book page</em> content type is the initial content type enabled for book outlines. On the <a href=":admin-settings">Book settings page</a> you can configure content types that can used in book outlines.', array(':admin-settings' => \Drupal::url('book.settings'))) . '</dd>';
-      $output .= '<dd>' . t('Users with the <em>Add content and child pages to books</em> permission will see a link to <em>Add child page</em> when viewing a content item that is part of a book outline. This link will allow users to create a new content item of the content type you select on the <a href=":admin-settings">Book settings page</a>. By default this is the <em>Book page</em> content type.', array(':admin-settings' => \Drupal::url('book.settings'))) . '</dd>';
+      $output .= '<dd>' . t('The <em>Book page</em> content type is the initial content type enabled for book outlines. On the <a href=":admin-settings">Book settings page</a> you can configure content types that can used in book outlines.', [':admin-settings' => \Drupal::url('book.settings')]) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Add content and child pages to books</em> permission will see a link to <em>Add child page</em> when viewing a content item that is part of a book outline. This link will allow users to create a new content item of the content type you select on the <a href=":admin-settings">Book settings page</a>. By default this is the <em>Book page</em> content type.', [':admin-settings' => \Drupal::url('book.settings')]) . '</dd>';
       $output .= '<dt>' . t('Book navigation') . '</dt>';
-      $output .= '<dd>' . t("Book pages have a default book-specific navigation block. This navigation block contains links that lead to the previous and next pages in the book, and to the level above the current page in the book's structure. This block can be enabled on the <a href=':admin-block'>Blocks layout page</a>. For book pages to show up in the book navigation, they must be added to a book outline.", array(':admin-block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+      $output .= '<dd>' . t("Book pages have a default book-specific navigation block. This navigation block contains links that lead to the previous and next pages in the book, and to the level above the current page in the book's structure. This block can be enabled on the <a href=':admin-block'>Blocks layout page</a>. For book pages to show up in the book navigation, they must be added to a book outline.", [':admin-block' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       $output .= '<dt>' . t('Collaboration') . '</dt>';
       $output .= '<dd>' . t('Books can be created collaboratively, as they allow users with appropriate permissions to add pages into existing books, and add those pages to a custom table of contents.') . '</dd>';
       $output .= '<dt>' . t('Printing books') . '</dt>';
@@ -47,7 +47,7 @@ function book_help($route_name, RouteMatchInterface $route_match) {
       return '<p>' . t('The book module offers a means to organize a collection of related content pages, collectively known as a book. When viewed, this content automatically displays links to adjacent book pages, providing a simple navigation system for creating and reviewing structured content.') . '</p>';
 
     case 'entity.node.book_outline_form':
-      return '<p>' . t('The outline feature allows you to include pages in the <a href=":book">Book hierarchy</a>, as well as move them within the hierarchy or to <a href=":book-admin">reorder an entire book</a>.', array(':book' => \Drupal::url('book.render'), ':book-admin' => \Drupal::url('book.admin'))) . '</p>';
+      return '<p>' . t('The outline feature allows you to include pages in the <a href=":book">Book hierarchy</a>, as well as move them within the hierarchy or to <a href=":book-admin">reorder an entire book</a>.', [':book' => \Drupal::url('book.render'), ':book-admin' => \Drupal::url('book.admin')]) . '</p>';
   }
 }
 
@@ -55,23 +55,23 @@ function book_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function book_theme() {
-  return array(
-    'book_navigation' => array(
-      'variables' => array('book_link' => NULL),
-    ),
-    'book_tree' => array(
-      'variables' => array('items' => array(), 'attributes' => array()),
-    ),
-    'book_export_html' => array(
-      'variables' => array('title' => NULL, 'contents' => NULL, 'depth' => NULL),
-    ),
-    'book_all_books_block' => array(
+  return [
+    'book_navigation' => [
+      'variables' => ['book_link' => NULL],
+    ],
+    'book_tree' => [
+      'variables' => ['items' => [], 'attributes' => []],
+    ],
+    'book_export_html' => [
+      'variables' => ['title' => NULL, 'contents' => NULL, 'depth' => NULL],
+    ],
+    'book_all_books_block' => [
       'render element' => 'book_menus',
-    ),
-    'book_node_export_html' => array(
-      'variables' => array('node' => NULL, 'content' => NULL, 'children' => NULL),
-    ),
-  );
+    ],
+    'book_node_export_html' => [
+      'variables' => ['node' => NULL, 'content' => NULL, 'children' => NULL],
+    ],
+  ];
 }
 
 /**
@@ -97,31 +97,31 @@ function book_node_links_alter(array &$links, NodeInterface $node, array &$conte
         $child_type = \Drupal::config('book.settings')->get('child_type');
         $access_control_handler = \Drupal::entityManager()->getAccessControlHandler('node');
         if (($account->hasPermission('add content to books') || $account->hasPermission('administer book outlines')) && $access_control_handler->createAccess($child_type) && $node->isPublished() && $node->book['depth'] < BookManager::BOOK_MAX_DEPTH) {
-          $book_links['book_add_child'] = array(
+          $book_links['book_add_child'] = [
             'title' => t('Add child page'),
             'url' => Url::fromRoute('node.add', ['node_type' => $child_type], ['query' => ['parent' => $node->id()]]),
-          );
+          ];
         }
 
         if ($account->hasPermission('access printer-friendly version')) {
-          $book_links['book_printer'] = array(
+          $book_links['book_printer'] = [
             'title' => t('Printer-friendly version'),
             'url' => Url::fromRoute('book.export', [
               'type' => 'html',
               'node' => $node->id(),
             ]),
-            'attributes' => array('title' => t('Show a printer-friendly version of this book page and its sub-pages.'))
-          );
+            'attributes' => ['title' => t('Show a printer-friendly version of this book page and its sub-pages.')]
+          ];
         }
       }
     }
 
     if (!empty($book_links)) {
-      $links['book'] = array(
+      $links['book'] = [
         '#theme' => 'links__node__book',
         '#links' => $book_links,
-        '#attributes' => array('class' => array('links', 'inline')),
-      );
+        '#attributes' => ['class' => ['links', 'inline']],
+      ];
     }
   }
 }
@@ -148,17 +148,17 @@ function book_form_node_form_alter(&$form, FormStateInterface $form_state, $form
     $collapsed = !($node->isNew() && !empty($node->book['pid']));
     $form = \Drupal::service('book.manager')->addFormElements($form, $form_state, $node, $account, $collapsed);
     // The "js-hide" class hides submit button when Javascript is enabled.
-    $form['book']['pick-book'] = array(
+    $form['book']['pick-book'] = [
       '#type' => 'submit',
       '#value' => t('Change book (update list of parents)'),
-      '#submit' => array('book_pick_book_nojs_submit'),
+      '#submit' => ['book_pick_book_nojs_submit'],
       '#weight' => 20,
-      '#attributes' => array(
-        'class' => array(
+      '#attributes' => [
+        'class' => [
           'js-hide',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     $form['#entity_builders'][] = 'book_node_builder';
   }
 }
@@ -232,7 +232,7 @@ function book_node_view(array &$build, EntityInterface $node, EntityViewDisplayI
       if (!$book_node->access()) {
         return;
       }
-      $build['book_navigation'] = array(
+      $build['book_navigation'] = [
         '#theme' => 'book_navigation',
         '#book_link' => $node->book,
         '#weight' => 100,
@@ -241,7 +241,7 @@ function book_node_view(array &$build, EntityInterface $node, EntityViewDisplayI
         '#cache' => [
           'tags' => $node->getEntityType()->getListCacheTags(),
         ],
-      );
+      ];
     }
   }
 }
@@ -295,7 +295,7 @@ function book_node_prepare_form(NodeInterface $node, $operation, FormStateInterf
   // Prepare defaults for the add/edit form.
   $account = \Drupal::currentUser();
   if (empty($node->book) && ($account->hasPermission('add content to books') || $account->hasPermission('administer book outlines'))) {
-    $node->book = array();
+    $node->book = [];
 
     $query = \Drupal::request()->query;
     if ($node->isNew() && !is_null($query->get('parent')) && is_numeric($query->get('parent'))) {
@@ -341,10 +341,10 @@ function book_form_node_confirm_form_alter(&$form, FormStateInterface $form_stat
   }
 
   if (isset($node->book) && $node->book['has_children']) {
-    $form['book_warning'] = array(
-      '#markup' => '<p>' . t('%title is part of a book outline, and has associated child pages. If you proceed with deletion, the child pages will be relocated automatically.', array('%title' => $node->label())) . '</p>',
+    $form['book_warning'] = [
+      '#markup' => '<p>' . t('%title is part of a book outline, and has associated child pages. If you proceed with deletion, the child pages will be relocated automatically.', ['%title' => $node->label()]) . '</p>',
       '#weight' => -10,
-    );
+    ];
   }
 }
 
@@ -365,13 +365,13 @@ function book_form_node_confirm_form_alter(&$form, FormStateInterface $form_stat
 function template_preprocess_book_all_books_block(&$variables) {
   // Remove all non-renderable elements.
   $elements = $variables['book_menus'];
-  $variables['book_menus'] = array();
+  $variables['book_menus'] = [];
   foreach (Element::children($elements) as $index) {
-    $variables['book_menus'][] = array(
+    $variables['book_menus'][] = [
       'id' => $index,
       'menu' => $elements[$index],
       'title' => $elements[$index]['#book_title'],
-    );
+    ];
   }
 }
 
@@ -391,7 +391,7 @@ function template_preprocess_book_navigation(&$variables) {
   // Provide extra variables for themers. Not needed by default.
   $variables['book_id'] = $book_link['bid'];
   $variables['book_title'] = $book_link['link_title'];
-  $variables['book_url'] = \Drupal::url('entity.node.canonical', array('node' => $book_link['bid']));
+  $variables['book_url'] = \Drupal::url('entity.node.canonical', ['node' => $book_link['bid']]);
   $variables['current_depth'] = $book_link['depth'];
   $variables['tree'] = '';
 
@@ -401,14 +401,14 @@ function template_preprocess_book_navigation(&$variables) {
   if ($book_link['nid']) {
     $variables['tree'] = $book_outline->childrenLinks($book_link);
 
-    $build = array();
+    $build = [];
 
     if ($prev = $book_outline->prevLink($book_link)) {
-      $prev_href = \Drupal::url('entity.node.canonical', array('node' => $prev['nid']));
-      $build['#attached']['html_head_link'][][] = array(
+      $prev_href = \Drupal::url('entity.node.canonical', ['node' => $prev['nid']]);
+      $build['#attached']['html_head_link'][][] = [
         'rel' => 'prev',
         'href' => $prev_href,
-      );
+      ];
       $variables['prev_url'] = $prev_href;
       $variables['prev_title'] = $prev['title'];
     }
@@ -416,21 +416,21 @@ function template_preprocess_book_navigation(&$variables) {
     /** @var \Drupal\book\BookManagerInterface $book_manager */
     $book_manager = \Drupal::service('book.manager');
     if ($book_link['pid'] && $parent = $book_manager->loadBookLink($book_link['pid'])) {
-      $parent_href = \Drupal::url('entity.node.canonical', array('node' => $book_link['pid']));
-      $build['#attached']['html_head_link'][][] = array(
+      $parent_href = \Drupal::url('entity.node.canonical', ['node' => $book_link['pid']]);
+      $build['#attached']['html_head_link'][][] = [
         'rel' => 'up',
         'href' => $parent_href,
-      );
+      ];
       $variables['parent_url'] = $parent_href;
       $variables['parent_title'] = $parent['title'];
     }
 
     if ($next = $book_outline->nextLink($book_link)) {
-      $next_href = \Drupal::url('entity.node.canonical', array('node' => $next['nid']));
-      $build['#attached']['html_head_link'][][] = array(
+      $next_href = \Drupal::url('entity.node.canonical', ['node' => $next['nid']]);
+      $build['#attached']['html_head_link'][][] = [
         'rel' => 'next',
         'href' => $next_href,
-      );
+      ];
       $variables['next_url'] = $next_href;
       $variables['next_title'] = $next['title'];
     }
@@ -442,7 +442,7 @@ function template_preprocess_book_navigation(&$variables) {
 
   $variables['has_links'] = FALSE;
   // Link variables to filter for values and set state of the flag variable.
-  $links = array('prev_url', 'prev_title', 'parent_url', 'parent_title', 'next_url', 'next_title');
+  $links = ['prev_url', 'prev_title', 'parent_url', 'parent_title', 'next_url', 'next_title'];
   foreach ($links as $link) {
     if (isset($variables[$link])) {
       // Flag when there is a value.
@@ -475,7 +475,7 @@ function template_preprocess_book_export_html(&$variables) {
   $variables['language_rtl'] = ($language_interface->getDirection() == LanguageInterface::DIRECTION_RTL);
 
   // HTML element attributes.
-  $attributes = array();
+  $attributes = [];
   $attributes['lang'] = $language_interface->getId();
   $attributes['dir'] = $language_interface->getDirection();
   $variables['html_attributes'] = new Attribute($attributes);
diff --git a/core/modules/book/src/BookBreadcrumbBuilder.php b/core/modules/book/src/BookBreadcrumbBuilder.php
index ed39a53..90591d8 100644
--- a/core/modules/book/src/BookBreadcrumbBuilder.php
+++ b/core/modules/book/src/BookBreadcrumbBuilder.php
@@ -56,10 +56,10 @@ public function applies(RouteMatchInterface $route_match) {
    * {@inheritdoc}
    */
   public function build(RouteMatchInterface $route_match) {
-    $book_nids = array();
+    $book_nids = [];
     $breadcrumb = new Breadcrumb();
 
-    $links = array(Link::createFromRoute($this->t('Home'), '<front>'));
+    $links = [Link::createFromRoute($this->t('Home'), '<front>')];
     $book = $route_match->getParameter('node')->book;
     $depth = 1;
     // We skip the current node.
@@ -76,7 +76,7 @@ public function build(RouteMatchInterface $route_match) {
           $breadcrumb->addCacheableDependency($access);
           if ($access->isAllowed()) {
             $breadcrumb->addCacheableDependency($parent_book);
-            $links[] = Link::createFromRoute($parent_book->label(), 'entity.node.canonical', array('node' => $parent_book->id()));
+            $links[] = Link::createFromRoute($parent_book->label(), 'entity.node.canonical', ['node' => $parent_book->id()]);
           }
         }
         $depth++;
diff --git a/core/modules/book/src/BookExport.php b/core/modules/book/src/BookExport.php
index 8261c42e..a323370 100644
--- a/core/modules/book/src/BookExport.php
+++ b/core/modules/book/src/BookExport.php
@@ -73,8 +73,8 @@ public function bookExportHtml(NodeInterface $node) {
     }
 
     $tree = $this->bookManager->bookSubtreeData($node->book);
-    $contents = $this->exportTraverse($tree, array($this, 'bookNodeExport'));
-    return array(
+    $contents = $this->exportTraverse($tree, [$this, 'bookNodeExport']);
+    return [
       '#theme' => 'book_export_html',
       '#title' => $node->label(),
       '#contents' => $contents,
@@ -82,7 +82,7 @@ public function bookExportHtml(NodeInterface $node) {
       '#cache' => [
         'tags' => $node->getEntityType()->getListCacheTags(),
       ],
-    );
+    ];
   }
 
   /**
@@ -101,9 +101,9 @@ public function bookExportHtml(NodeInterface $node) {
    */
   protected function exportTraverse(array $tree, $callable) {
     // If there is no valid callable, use the default callback.
-    $callable = !empty($callable) ? $callable : array($this, 'bookNodeExport');
+    $callable = !empty($callable) ? $callable : [$this, 'bookNodeExport'];
 
-    $build = array();
+    $build = [];
     foreach ($tree as $data) {
       // Note- access checking is already performed when building the tree.
       if ($node = $this->nodeStorage->load($data['link']['nid'])) {
@@ -133,12 +133,12 @@ protected function bookNodeExport(NodeInterface $node, $children = '') {
     $build = $this->viewBuilder->view($node, 'print', NULL);
     unset($build['#theme']);
 
-    return array(
+    return [
       '#theme' => 'book_node_export_html',
       '#content' => $build,
       '#node' => $node,
       '#children' => $children,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/book/src/BookManager.php b/core/modules/book/src/BookManager.php
index 60754be..3e14c40 100644
--- a/core/modules/book/src/BookManager.php
+++ b/core/modules/book/src/BookManager.php
@@ -92,7 +92,7 @@ public function getAllBooks() {
    * Loads Books Array.
    */
   protected function loadBooks() {
-    $this->books = array();
+    $this->books = [];
     $nids = $this->bookOutlineStorage->getBooks();
 
     if ($nids) {
@@ -117,15 +117,15 @@ protected function loadBooks() {
    * {@inheritdoc}
    */
   public function getLinkDefaults($nid) {
-    return array(
+    return [
       'original_bid' => 0,
       'nid' => $nid,
       'bid' => 0,
       'pid' => 0,
       'has_children' => 0,
       'weight' => 0,
-      'options' => array(),
-    );
+      'options' => [],
+    ];
   }
 
   /**
@@ -159,40 +159,40 @@ public function addFormElements(array $form, FormStateInterface $form_state, Nod
     if ($form_state->hasValue('book')) {
       $node->book = $form_state->getValue('book');
     }
-    $form['book'] = array(
+    $form['book'] = [
       '#type' => 'details',
       '#title' => $this->t('Book outline'),
       '#weight' => 10,
       '#open' => !$collapsed,
       '#group' => 'advanced',
-      '#attributes' => array(
-        'class' => array('book-outline-form'),
-      ),
-      '#attached' => array(
-        'library' => array('book/drupal.book'),
-      ),
+      '#attributes' => [
+        'class' => ['book-outline-form'],
+      ],
+      '#attached' => [
+        'library' => ['book/drupal.book'],
+      ],
       '#tree' => TRUE,
-    );
-    foreach (array('nid', 'has_children', 'original_bid', 'parent_depth_limit') as $key) {
-      $form['book'][$key] = array(
+    ];
+    foreach (['nid', 'has_children', 'original_bid', 'parent_depth_limit'] as $key) {
+      $form['book'][$key] = [
         '#type' => 'value',
         '#value' => $node->book[$key],
-      );
+      ];
     }
 
     $form['book']['pid'] = $this->addParentSelectFormElements($node->book);
 
     // @see \Drupal\book\Form\BookAdminEditForm::bookAdminTableTree(). The
     // weight may be larger than 15.
-    $form['book']['weight'] = array(
+    $form['book']['weight'] = [
       '#type' => 'weight',
       '#title' => $this->t('Weight'),
       '#default_value' => $node->book['weight'],
       '#delta' => max(15, abs($node->book['weight'])),
       '#weight' => 5,
       '#description' => $this->t('Pages at a given level are ordered first by weight and then by title.'),
-    );
-    $options = array();
+    ];
+    $options = [];
     $nid = !$node->isNew() ? $node->id() : 'new';
     if ($node->id() && ($nid == $node->book['original_bid']) && ($node->book['parent_depth_limit'] == 0)) {
       // This is the top level node in a maximum depth book and thus cannot be
@@ -207,15 +207,15 @@ public function addFormElements(array $form, FormStateInterface $form_state, Nod
 
     if ($account->hasPermission('create new books') && ($nid == 'new' || ($nid != $node->book['original_bid']))) {
       // The node can become a new book, if it is not one already.
-      $options = array($nid => $this->t('- Create a new book -')) + $options;
+      $options = [$nid => $this->t('- Create a new book -')] + $options;
     }
     if (!$node->book['bid']) {
       // The node is not currently in the hierarchy.
-      $options = array(0 => $this->t('- None -')) + $options;
+      $options = [0 => $this->t('- None -')] + $options;
     }
 
     // Add a drop-down to select the destination book.
-    $form['book']['bid'] = array(
+    $form['book']['bid'] = [
       '#type' => 'select',
       '#title' => $this->t('Book'),
       '#default_value' => $node->book['bid'],
@@ -223,14 +223,14 @@ public function addFormElements(array $form, FormStateInterface $form_state, Nod
       '#access' => (bool) $options,
       '#description' => $this->t('Your page will be a part of the selected book.'),
       '#weight' => -5,
-      '#attributes' => array('class' => array('book-title-select')),
-      '#ajax' => array(
+      '#attributes' => ['class' => ['book-title-select']],
+      '#ajax' => [
         'callback' => 'book_form_update',
         'wrapper' => 'edit-book-plid-wrapper',
         'effect' => 'fade',
         'speed' => 'fast',
-      ),
-    );
+      ],
+    ];
     return $form;
   }
 
@@ -281,8 +281,8 @@ public function updateOutline(NodeInterface $node) {
   /**
    * {@inheritdoc}
    */
-  public function getBookParents(array $item, array $parent = array()) {
-    $book = array();
+  public function getBookParents(array $item, array $parent = []) {
+    $book = [];
     if ($item['pid'] == 0) {
       $book['p1'] = $item['nid'];
       for ($i = 2; $i <= static::BOOK_MAX_DEPTH; $i++) {
@@ -325,15 +325,15 @@ public function getBookParents(array $item, array $parent = array()) {
   protected function addParentSelectFormElements(array $book_link) {
     $config = $this->configFactory->get('book.settings');
     if ($config->get('override_parent_selector')) {
-      return array();
+      return [];
     }
     // Offer a message or a drop-down to choose a different parent page.
-    $form = array(
+    $form = [
       '#type' => 'hidden',
       '#value' => -1,
       '#prefix' => '<div id="edit-book-plid-wrapper">',
       '#suffix' => '</div>',
-    );
+    ];
 
     if ($book_link['nid'] === $book_link['bid']) {
       // This is a book - at the top level.
@@ -348,16 +348,16 @@ protected function addParentSelectFormElements(array $book_link) {
       $form['#prefix'] .= '<em>' . $this->t('No book selected.') . '</em>';
     }
     else {
-      $form = array(
+      $form = [
         '#type' => 'select',
         '#title' => $this->t('Parent item'),
         '#default_value' => $book_link['pid'],
-        '#description' => $this->t('The parent page in the book. The maximum depth for a book and all child pages is @maxdepth. Some pages in the selected book may not be available as parents if selecting them would exceed this limit.', array('@maxdepth' => static::BOOK_MAX_DEPTH)),
-        '#options' => $this->getTableOfContents($book_link['bid'], $book_link['parent_depth_limit'], array($book_link['nid'])),
-        '#attributes' => array('class' => array('book-title-select')),
+        '#description' => $this->t('The parent page in the book. The maximum depth for a book and all child pages is @maxdepth. Some pages in the selected book may not be available as parents if selecting them would exceed this limit.', ['@maxdepth' => static::BOOK_MAX_DEPTH]),
+        '#options' => $this->getTableOfContents($book_link['bid'], $book_link['parent_depth_limit'], [$book_link['nid']]),
+        '#attributes' => ['class' => ['book-title-select']],
         '#prefix' => '<div id="edit-book-plid-wrapper">',
         '#suffix' => '</div>',
-      );
+      ];
     }
     $this->renderer->addCacheableDependency($form, $config);
 
@@ -388,7 +388,7 @@ protected function addParentSelectFormElements(array $book_link) {
    *   children).
    */
   protected function recurseTableOfContents(array $tree, $indent, array &$toc, array $exclude, $depth_limit) {
-    $nids = array();
+    $nids = [];
     foreach ($tree as $data) {
       if ($data['link']['depth'] > $depth_limit) {
         // Don't iterate through any links on this level.
@@ -417,9 +417,9 @@ protected function recurseTableOfContents(array $tree, $indent, array &$toc, arr
   /**
    * {@inheritdoc}
    */
-  public function getTableOfContents($bid, $depth_limit, array $exclude = array()) {
+  public function getTableOfContents($bid, $depth_limit, array $exclude = []) {
     $tree = $this->bookTreeAllData($bid);
-    $toc = array();
+    $toc = [];
     $this->recurseTableOfContents($tree, '', $toc, $exclude, $depth_limit);
 
     return $toc;
@@ -443,14 +443,14 @@ public function deleteFromBook($nid) {
     }
     $this->updateOriginalParent($original);
     $this->books = NULL;
-    Cache::invalidateTags(array('bid:' . $original['bid']));
+    Cache::invalidateTags(['bid:' . $original['bid']]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function bookTreeAllData($bid, $link = NULL, $max_depth = NULL) {
-    $tree = &drupal_static(__METHOD__, array());
+    $tree = &drupal_static(__METHOD__, []);
     $language_interface = \Drupal::languageManager()->getCurrentLanguage();
 
     // Use $nid as a flag for whether the data being loaded is for the whole
@@ -462,10 +462,10 @@ public function bookTreeAllData($bid, $link = NULL, $max_depth = NULL) {
 
     if (!isset($tree[$cid])) {
       // If the tree data was not in the static cache, build $tree_parameters.
-      $tree_parameters = array(
+      $tree_parameters = [
         'min_depth' => 1,
         'max_depth' => $max_depth,
-      );
+      ];
       if ($nid) {
         $active_trail = $this->getActiveTrailIds($bid, $link);
         $tree_parameters['expanded'] = $active_trail;
@@ -486,7 +486,7 @@ public function bookTreeAllData($bid, $link = NULL, $max_depth = NULL) {
   public function getActiveTrailIds($bid, $link) {
     // The tree is for a single item, so we need to match the values in its
     // p columns and 0 (the top level) with the plid values of other links.
-    $active_trail = array(0);
+    $active_trail = [0];
     for ($i = 1; $i < static::BOOK_MAX_DEPTH; $i++) {
       if (!empty($link["p$i"])) {
         $active_trail[] = $link["p$i"];
@@ -600,7 +600,7 @@ protected function buildItems(array $tree) {
    * @return array
    *   A fully built book tree.
    */
-  protected function bookTreeBuild($bid, array $parameters = array()) {
+  protected function bookTreeBuild($bid, array $parameters = []) {
     // Build the book tree.
     $data = $this->doBookTreeBuild($bid, $parameters);
     // Check access for the current user to each item in the tree.
@@ -639,9 +639,9 @@ protected function bookTreeBuild($bid, array $parameters = array()) {
    *
    * @see \Drupal\book\BookOutlineStorageInterface::getBookMenuTree()
    */
-  protected function doBookTreeBuild($bid, array $parameters = array()) {
+  protected function doBookTreeBuild($bid, array $parameters = []) {
     // Static cache of already built menu trees.
-    $trees = &drupal_static(__METHOD__, array());
+    $trees = &drupal_static(__METHOD__, []);
     $language_interface = \Drupal::languageManager()->getCurrentLanguage();
 
     // Build the cache id; sort parents to prevent duplicate storage and remove
@@ -664,18 +664,18 @@ protected function doBookTreeBuild($bid, array $parameters = array()) {
       $result = $this->bookOutlineStorage->getBookMenuTree($bid, $parameters, $min_depth, static::BOOK_MAX_DEPTH);
 
       // Build an ordered array of links using the query result object.
-      $links = array();
+      $links = [];
       foreach ($result as $link) {
         $link = (array) $link;
         $links[$link['nid']] = $link;
       }
-      $active_trail = (isset($parameters['active_trail']) ? $parameters['active_trail'] : array());
+      $active_trail = (isset($parameters['active_trail']) ? $parameters['active_trail'] : []);
       $data['tree'] = $this->buildBookOutlineData($links, $active_trail, $min_depth);
-      $data['node_links'] = array();
+      $data['node_links'] = [];
       $this->bookTreeCollectNodeLinks($data['tree'], $data['node_links']);
 
       // Cache the data, if it is not already in the cache.
-      \Drupal::cache('data')->set($tree_cid, $data, Cache::PERMANENT, array('bid:' . $bid));
+      \Drupal::cache('data')->set($tree_cid, $data, Cache::PERMANENT, ['bid:' . $bid]);
       $trees[$tree_cid] = $data;
     }
 
@@ -705,7 +705,7 @@ public function bookTreeGetFlat(array $book_link) {
     if (!isset($this->bookTreeFlattened[$book_link['nid']])) {
       // Call $this->bookTreeAllData() to take advantage of caching.
       $tree = $this->bookTreeAllData($book_link['bid'], $book_link, $book_link['depth'] + 1);
-      $this->bookTreeFlattened[$book_link['nid']] = array();
+      $this->bookTreeFlattened[$book_link['nid']] = [];
       $this->flatBookTree($tree, $this->bookTreeFlattened[$book_link['nid']]);
     }
 
@@ -735,7 +735,7 @@ protected function flatBookTree(array $tree, array &$flat) {
    * {@inheritdoc}
    */
   public function loadBookLink($nid, $translate = TRUE) {
-    $links = $this->loadBookLinks(array($nid), $translate);
+    $links = $this->loadBookLinks([$nid], $translate);
     return isset($links[$nid]) ? $links[$nid] : FALSE;
   }
 
@@ -744,7 +744,7 @@ public function loadBookLink($nid, $translate = TRUE) {
    */
   public function loadBookLinks($nids, $translate = TRUE) {
     $result = $this->bookOutlineStorage->loadMultiple($nids, $translate);
-    $links = array();
+    $links = [];
     foreach ($result as $link) {
       if ($translate) {
         $this->bookLinkTranslate($link);
@@ -779,7 +779,7 @@ public function saveBookLink(array $link, $new) {
         // Update the bid for this page and all children.
         if ($link['pid'] == 0) {
           $link['depth'] = 1;
-          $parent = array();
+          $parent = [];
         }
         // In case the form did not specify a proper PID we use the BID as new
         // parent.
@@ -801,11 +801,11 @@ public function saveBookLink(array $link, $new) {
         $this->updateParent($link);
       }
       // Update the weight and pid.
-      $this->bookOutlineStorage->update($link['nid'], array(
+      $this->bookOutlineStorage->update($link['nid'], [
         'weight' => $link['weight'],
         'pid' => $link['pid'],
         'bid' => $link['bid'],
-      ));
+      ]);
     }
     $cache_tags = [];
     foreach ($affected_bids as $bid) {
@@ -825,16 +825,16 @@ public function saveBookLink(array $link, $new) {
    */
   protected function moveChildren(array $link, array $original) {
     $p = 'p1';
-    $expressions = array();
+    $expressions = [];
     for ($i = 1; $i <= $link['depth']; $p = 'p' . ++$i) {
-      $expressions[] = array($p, ":p_$i", array(":p_$i" => $link[$p]));
+      $expressions[] = [$p, ":p_$i", [":p_$i" => $link[$p]]];
     }
     $j = $original['depth'] + 1;
     while ($i <= static::BOOK_MAX_DEPTH && $j <= static::BOOK_MAX_DEPTH) {
-      $expressions[] = array('p' . $i++, 'p' . $j++, array());
+      $expressions[] = ['p' . $i++, 'p' . $j++, []];
     }
     while ($i <= static::BOOK_MAX_DEPTH) {
-      $expressions[] = array('p' . $i++, 0, array());
+      $expressions[] = ['p' . $i++, 0, []];
     }
 
     $shift = $link['depth'] - $original['depth'];
@@ -868,7 +868,7 @@ protected function updateParent(array $link) {
       // Nothing to update.
       return TRUE;
     }
-    return $this->bookOutlineStorage->update($link['pid'], array('has_children' => 1));
+    return $this->bookOutlineStorage->update($link['pid'], ['has_children' => 1]);
   }
 
   /**
@@ -897,7 +897,7 @@ protected function updateOriginalParent(array $original) {
     // Update the parent. If the original link did not have children, then the
     // parent now does not have children. If the original had children, then the
     // the parent has children now (still).
-    return $this->bookOutlineStorage->update($original['pid'], array('has_children' => $parent_has_children));
+    return $this->bookOutlineStorage->update($original['pid'], ['has_children' => $parent_has_children]);
   }
 
   /**
@@ -926,7 +926,7 @@ protected function setParents(array &$link, array $parent) {
   /**
    * {@inheritdoc}
    */
-  public function bookTreeCheckAccess(&$tree, $node_links = array()) {
+  public function bookTreeCheckAccess(&$tree, $node_links = []) {
     if ($node_links) {
       // @todo Extract that into its own method.
       $nids = array_keys($node_links);
@@ -954,7 +954,7 @@ public function bookTreeCheckAccess(&$tree, $node_links = array()) {
    *   The book tree to operate on.
    */
   protected function doBookTreeCheckAccess(&$tree) {
-    $new_tree = array();
+    $new_tree = [];
     foreach ($tree as $key => $v) {
       $item = &$tree[$key]['link'];
       $this->bookLinkTranslate($item);
@@ -993,7 +993,7 @@ public function bookLinkTranslate(&$link) {
       }
       // The node label will be the value for the current user's language.
       $link['title'] = $node->label();
-      $link['options'] = array();
+      $link['options'] = [];
     }
     return $link;
   }
@@ -1021,7 +1021,7 @@ public function bookLinkTranslate(&$link) {
    *     array will be empty if the book link has no items in its sub-tree
    *     having a depth greater than or equal to $depth.
    */
-  protected function buildBookOutlineData(array $links, array $parents = array(), $depth = 1) {
+  protected function buildBookOutlineData(array $links, array $parents = [], $depth = 1) {
     // Reverse the array so we can use the more efficient array_pop() function.
     $links = array_reverse($links);
     return $this->buildBookOutlineRecursive($links, $parents, $depth);
@@ -1047,16 +1047,16 @@ protected function buildBookOutlineData(array $links, array $parents = array(),
    *   Book tree.
    */
   protected function buildBookOutlineRecursive(&$links, $parents, $depth) {
-    $tree = array();
+    $tree = [];
     while ($item = array_pop($links)) {
       // We need to determine if we're on the path to root so we can later build
       // the correct active trail.
       $item['in_active_trail'] = in_array($item['nid'], $parents);
       // Add the current link to the tree.
-      $tree[$item['nid']] = array(
+      $tree[$item['nid']] = [
         'link' => $item,
-        'below' => array(),
-      );
+        'below' => [],
+      ];
       // Look ahead to the next link, but leave it on the array so it's
       // available to other recursive function calls if we return or build a
       // sub-tree.
@@ -1080,7 +1080,7 @@ protected function buildBookOutlineRecursive(&$links, $parents, $depth) {
    * {@inheritdoc}
    */
   public function bookSubtreeData($link) {
-    $tree = &drupal_static(__METHOD__, array());
+    $tree = &drupal_static(__METHOD__, []);
 
     // Generate a cache ID (cid) specific for this $link.
     $cid = 'book-links:subtree-cid:' . $link['nid'];
@@ -1101,23 +1101,23 @@ public function bookSubtreeData($link) {
       // If the subtree data was not in the cache, $data will be NULL.
       if (!isset($data)) {
         $result = $this->bookOutlineStorage->getBookSubtree($link, static::BOOK_MAX_DEPTH);
-        $links = array();
+        $links = [];
         foreach ($result as $item) {
           $links[] = $item;
         }
-        $data['tree'] = $this->buildBookOutlineData($links, array(), $link['depth']);
-        $data['node_links'] = array();
+        $data['tree'] = $this->buildBookOutlineData($links, [], $link['depth']);
+        $data['node_links'] = [];
         $this->bookTreeCollectNodeLinks($data['tree'], $data['node_links']);
         // Compute the real cid for book subtree data.
         $tree_cid = 'book-links:subtree-data:' . hash('sha256', serialize($data));
         // Cache the data, if it is not already in the cache.
 
         if (!\Drupal::cache('data')->get($tree_cid)) {
-          \Drupal::cache('data')->set($tree_cid, $data, Cache::PERMANENT, array('bid:' . $link['bid']));
+          \Drupal::cache('data')->set($tree_cid, $data, Cache::PERMANENT, ['bid:' . $link['bid']]);
         }
         // Cache the cid of the (shared) data using the book and item-specific
         // cid.
-        \Drupal::cache('data')->set($cid, $tree_cid, Cache::PERMANENT, array('bid:' . $link['bid']));
+        \Drupal::cache('data')->set($cid, $tree_cid, Cache::PERMANENT, ['bid:' . $link['bid']]);
       }
       // Check access for the current user to each item in the tree.
       $this->bookTreeCheckAccess($data['tree'], $data['node_links']);
diff --git a/core/modules/book/src/BookManagerInterface.php b/core/modules/book/src/BookManagerInterface.php
index 70d0107..5402bf5 100644
--- a/core/modules/book/src/BookManagerInterface.php
+++ b/core/modules/book/src/BookManagerInterface.php
@@ -108,7 +108,7 @@ public function loadBookLinks($nids, $translate = TRUE);
    *   An array of (menu link ID, title) pairs for use as options for selecting
    *   a book page.
    */
-  public function getTableOfContents($bid, $depth_limit, array $exclude = array());
+  public function getTableOfContents($bid, $depth_limit, array $exclude = []);
 
   /**
    * Finds the depth limit for items in the parent select.
@@ -207,7 +207,7 @@ public function saveBookLink(array $link, $new);
    */
   public function getLinkDefaults($nid);
 
-  public function getBookParents(array $item, array $parent = array());
+  public function getBookParents(array $item, array $parent = []);
 
   /**
    * Builds the common elements of the book form for the node and outline forms.
@@ -262,7 +262,7 @@ public function bookTreeOutput(array $tree);
    *   A collection of node link references generated from $tree by
    *   menu_tree_collect_node_links().
    */
-  public function bookTreeCheckAccess(&$tree, $node_links = array());
+  public function bookTreeCheckAccess(&$tree, $node_links = []);
 
   /**
    * Gets the data representing a subtree of the book hierarchy.
diff --git a/core/modules/book/src/BookOutline.php b/core/modules/book/src/BookOutline.php
index bc03b7c..ec28d50 100644
--- a/core/modules/book/src/BookOutline.php
+++ b/core/modules/book/src/BookOutline.php
@@ -105,7 +105,7 @@ public function nextLink(array $book_link) {
   public function childrenLinks(array $book_link) {
     $flat = $this->bookManager->bookTreeGetFlat($book_link);
 
-    $children = array();
+    $children = [];
 
     if ($book_link['has_children']) {
       // Walk through the array until we find the current page.
diff --git a/core/modules/book/src/BookOutlineStorage.php b/core/modules/book/src/BookOutlineStorage.php
index 92076cb..4f61b5c 100644
--- a/core/modules/book/src/BookOutlineStorage.php
+++ b/core/modules/book/src/BookOutlineStorage.php
@@ -43,7 +43,7 @@ public function hasBooks() {
    * {@inheritdoc}
    */
   public function loadMultiple($nids, $access = TRUE) {
-    $query = $this->connection->select('book', 'b', array('fetch' => \PDO::FETCH_ASSOC));
+    $query = $this->connection->select('book', 'b', ['fetch' => \PDO::FETCH_ASSOC]);
     $query->fields('b');
     $query->condition('b.nid', $nids, 'IN');
 
@@ -89,7 +89,7 @@ public function delete($nid) {
    */
   public function loadBookChildren($pid) {
     return $this->connection
-      ->query("SELECT * FROM {book} WHERE pid = :pid", array(':pid' => $pid))
+      ->query("SELECT * FROM {book} WHERE pid = :pid", [':pid' => $pid])
       ->fetchAllAssoc('nid', \PDO::FETCH_ASSOC);
   }
 
@@ -128,12 +128,12 @@ public function getBookMenuTree($bid, $parameters, $min_depth, $max_depth) {
   public function insert($link, $parents) {
     return $this->connection
       ->insert('book')
-      ->fields(array(
+      ->fields([
         'nid' => $link['nid'],
         'bid' => $link['bid'],
         'pid' => $link['pid'],
         'weight' => $link['weight'],
-        ) + $parents
+        ] + $parents
       )
       ->execute();
   }
@@ -154,13 +154,13 @@ public function update($nid, $fields) {
    */
   public function updateMovedChildren($bid, $original, $expressions, $shift) {
     $query = $this->connection->update('book');
-    $query->fields(array('bid' => $bid));
+    $query->fields(['bid' => $bid]);
 
     foreach ($expressions as $expression) {
       $query->expression($expression[0], $expression[1], $expression[2]);
     }
 
-    $query->expression('depth', 'depth + :depth', array(':depth' => $shift));
+    $query->expression('depth', 'depth + :depth', [':depth' => $shift]);
     $query->condition('bid', $original['bid']);
     $p = 'p1';
     for ($i = 1; !empty($original[$p]); $p = 'p' . ++$i) {
@@ -186,7 +186,7 @@ public function countOriginalLinkChildren($original) {
    * {@inheritdoc}
    */
   public function getBookSubtree($link, $max_depth) {
-    $query = db_select('book', 'b', array('fetch' => \PDO::FETCH_ASSOC));
+    $query = db_select('book', 'b', ['fetch' => \PDO::FETCH_ASSOC]);
     $query->fields('b');
     $query->condition('b.bid', $link['bid']);
 
diff --git a/core/modules/book/src/Controller/BookController.php b/core/modules/book/src/Controller/BookController.php
index 920afeb..b92c3e3 100644
--- a/core/modules/book/src/Controller/BookController.php
+++ b/core/modules/book/src/Controller/BookController.php
@@ -73,9 +73,9 @@ public static function create(ContainerInterface $container) {
    *   A render array representing the administrative page content.
    */
   public function adminOverview() {
-    $rows = array();
+    $rows = [];
 
-    $headers = array(t('Book'), t('Operations'));
+    $headers = [t('Book'), t('Operations')];
     // Add any recognized books to the table list.
     foreach ($this->bookManager->getAllBooks() as $book) {
       /** @var \Drupal\Core\Url $url */
@@ -83,28 +83,28 @@ public function adminOverview() {
       if (isset($book['options'])) {
         $url->setOptions($book['options']);
       }
-      $row = array(
+      $row = [
         $this->l($book['title'], $url),
-      );
-      $links = array();
-      $links['edit'] = array(
+      ];
+      $links = [];
+      $links['edit'] = [
         'title' => t('Edit order and titles'),
         'url' => Url::fromRoute('book.admin_edit', ['node' => $book['nid']]),
-      );
-      $row[] = array(
-        'data' => array(
+      ];
+      $row[] = [
+        'data' => [
           '#type' => 'operations',
           '#links' => $links,
-        ),
-      );
+        ],
+      ];
       $rows[] = $row;
     }
-    return array(
+    return [
       '#type' => 'table',
       '#header' => $headers,
       '#rows' => $rows,
       '#empty' => t('No books available.'),
-    );
+    ];
   }
 
   /**
@@ -114,17 +114,17 @@ public function adminOverview() {
    *   A render array representing the listing of all books content.
    */
   public function bookRender() {
-    $book_list = array();
+    $book_list = [];
     foreach ($this->bookManager->getAllBooks() as $book) {
       $book_list[] = $this->l($book['title'], $book['url']);
     }
-    return array(
+    return [
       '#theme' => 'item_list',
       '#items' => $book_list,
       '#cache' => [
         'tags' => \Drupal::entityManager()->getDefinition('node')->getListCacheTags(),
       ],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/book/src/Form/BookAdminEditForm.php b/core/modules/book/src/Form/BookAdminEditForm.php
index 1753944..e91f52e 100644
--- a/core/modules/book/src/Form/BookAdminEditForm.php
+++ b/core/modules/book/src/Form/BookAdminEditForm.php
@@ -70,10 +70,10 @@ public function buildForm(array $form, FormStateInterface $form_state, NodeInter
     $form['#title'] = $node->label();
     $form['#node'] = $node;
     $this->bookAdminTable($node, $form);
-    $form['save'] = array(
+    $form['save'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save book pages'),
-    );
+    ];
 
     return $form;
   }
@@ -101,7 +101,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       foreach (Element::children($form['table']) as $key) {
         if ($form['table'][$key]['#item']) {
           $row = $form['table'][$key];
-          $values = $form_state->getValue(array('table', $key));
+          $values = $form_state->getValue(['table', $key]);
 
           // Update menu item if moved.
           if ($row['parent']['pid']['#default_value'] != $values['pid'] || $row['weight']['#default_value'] != $values['weight']) {
@@ -114,18 +114,18 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
           // Update the title if changed.
           if ($row['title']['#default_value'] != $values['title']) {
             $node = $this->nodeStorage->load($values['nid']);
-            $node->revision_log = $this->t('Title changed from %original to %current.', array('%original' => $node->label(), '%current' => $values['title']));
+            $node->revision_log = $this->t('Title changed from %original to %current.', ['%original' => $node->label(), '%current' => $values['title']]);
             $node->title = $values['title'];
             $node->book['link_title'] = $values['title'];
             $node->setNewRevision();
             $node->save();
-            $this->logger('content')->notice('book: updated %title.', array('%title' => $node->label(), 'link' => $node->link($this->t('View'))));
+            $this->logger('content')->notice('book: updated %title.', ['%title' => $node->label(), 'link' => $node->link($this->t('View'))]);
           }
         }
       }
     }
 
-    drupal_set_message($this->t('Updated book %title.', array('%title' => $form['#node']->label())));
+    drupal_set_message($this->t('Updated book %title.', ['%title' => $form['#node']->label()]));
   }
 
   /**
@@ -139,7 +139,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
    * @see self::buildForm()
    */
   protected function bookAdminTable(NodeInterface $node, array &$form) {
-    $form['table'] = array(
+    $form['table'] = [
       '#type' => 'table',
       '#header' => [
         $this->t('Title'),
@@ -164,7 +164,7 @@ protected function bookAdminTable(NodeInterface $node, array &$form) {
           'group' => 'book-weight',
         ],
       ],
-    );
+    ];
 
     $tree = $this->bookManager->bookSubtreeData($node->book);
     // Do not include the book item itself.
@@ -173,14 +173,14 @@ protected function bookAdminTable(NodeInterface $node, array &$form) {
       $hash = Crypt::hashBase64(serialize($tree['below']));
       // Store the hash value as a hidden form element so that we can detect
       // if another user changed the book hierarchy.
-      $form['tree_hash'] = array(
+      $form['tree_hash'] = [
         '#type' => 'hidden',
         '#default_value' => $hash,
-      );
-      $form['tree_current_hash'] = array(
+      ];
+      $form['tree_current_hash'] = [
         '#type' => 'value',
         '#value' => $hash,
-      );
+      ];
       $this->bookAdminTableTree($tree['below'], $form['table']);
     }
   }
diff --git a/core/modules/book/src/Form/BookOutlineForm.php b/core/modules/book/src/Form/BookOutlineForm.php
index 8b4e364..1d63aac 100644
--- a/core/modules/book/src/Form/BookOutlineForm.php
+++ b/core/modules/book/src/Form/BookOutlineForm.php
@@ -107,7 +107,7 @@ protected function actions(array $form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     $form_state->setRedirect(
       'entity.node.canonical',
-      array('node' => $this->entity->id())
+      ['node' => $this->entity->id()]
     );
     $book_link = $form_state->getValue('book');
     if (!$book_link['bid']) {
diff --git a/core/modules/book/src/Form/BookRemoveForm.php b/core/modules/book/src/Form/BookRemoveForm.php
index 4848fa2..e31c094 100644
--- a/core/modules/book/src/Form/BookRemoveForm.php
+++ b/core/modules/book/src/Form/BookRemoveForm.php
@@ -65,7 +65,7 @@ public function buildForm(array $form, FormStateInterface $form_state, NodeInter
    * {@inheritdoc}
    */
   public function getDescription() {
-    $title = array('%title' => $this->node->label());
+    $title = ['%title' => $this->node->label()];
     if ($this->node->book['has_children']) {
       return $this->t('%title has associated child pages, which will be relocated automatically to maintain their connection to the book. To recreate the hierarchy (as it was before removing this page), %title may be added again using the Outline tab, and each of its former child pages will need to be relocated manually.', $title);
     }
@@ -85,7 +85,7 @@ public function getConfirmText() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to remove %title from the book hierarchy?', array('%title' => $this->node->label()));
+    return $this->t('Are you sure you want to remove %title from the book hierarchy?', ['%title' => $this->node->label()]);
   }
 
   /**
diff --git a/core/modules/book/src/Form/BookSettingsForm.php b/core/modules/book/src/Form/BookSettingsForm.php
index 058d0cd..29590cc 100644
--- a/core/modules/book/src/Form/BookSettingsForm.php
+++ b/core/modules/book/src/Form/BookSettingsForm.php
@@ -30,22 +30,22 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $types = node_type_get_names();
     $config = $this->config('book.settings');
-    $form['book_allowed_types'] = array(
+    $form['book_allowed_types'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Content types allowed in book outlines'),
       '#default_value' => $config->get('allowed_types'),
       '#options' => $types,
-      '#description' => $this->t('Users with the %outline-perm permission can add all content types.', array('%outline-perm' => $this->t('Administer book outlines'))),
+      '#description' => $this->t('Users with the %outline-perm permission can add all content types.', ['%outline-perm' => $this->t('Administer book outlines')]),
       '#required' => TRUE,
-    );
-    $form['book_child_type'] = array(
+    ];
+    $form['book_child_type'] = [
       '#type' => 'radios',
       '#title' => $this->t('Content type for the <em>Add child page</em> link'),
       '#default_value' => $config->get('child_type'),
       '#options' => $types,
       '#required' => TRUE,
-    );
-    $form['array_filter'] = array('#type' => 'value', '#value' => TRUE);
+    ];
+    $form['array_filter'] = ['#type' => 'value', '#value' => TRUE];
 
     return parent::buildForm($form, $form_state);
   }
@@ -55,8 +55,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    */
   public function validateForm(array &$form, FormStateInterface $form_state) {
     $child_type = $form_state->getValue('book_child_type');
-    if ($form_state->isValueEmpty(array('book_allowed_types', $child_type))) {
-      $form_state->setErrorByName('book_child_type', $this->t('The content type for the %add-child link must be one of those selected as an allowed book outline type.', array('%add-child' => $this->t('Add child page'))));
+    if ($form_state->isValueEmpty(['book_allowed_types', $child_type])) {
+      $form_state->setErrorByName('book_child_type', $this->t('The content type for the %add-child link must be one of those selected as an allowed book outline type.', ['%add-child' => $this->t('Add child page')]));
     }
 
     parent::validateForm($form, $form_state);
diff --git a/core/modules/book/src/Plugin/Block/BookNavigationBlock.php b/core/modules/book/src/Plugin/Block/BookNavigationBlock.php
index a7b0f1e..7b0156f 100644
--- a/core/modules/book/src/Plugin/Block/BookNavigationBlock.php
+++ b/core/modules/book/src/Plugin/Block/BookNavigationBlock.php
@@ -86,26 +86,26 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'block_mode' => "all pages",
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   function blockForm($form, FormStateInterface $form_state) {
-    $options = array(
+    $options = [
       'all pages' => $this->t('Show block on all pages'),
       'book pages' => $this->t('Show block only on book pages'),
-    );
-    $form['book_block_mode'] = array(
+    ];
+    $form['book_block_mode'] = [
       '#type' => 'radios',
       '#title' => $this->t('Book navigation block display'),
       '#options' => $options,
       '#default_value' => $this->configuration['block_mode'],
       '#description' => $this->t("If <em>Show block on all pages</em> is selected, the block will contain the automatically generated menus for all of the site's books. If <em>Show block only on book pages</em> is selected, the block will contain only the one menu corresponding to the current page's book. In this case, if the current page is not in a book, no block will be displayed. The <em>Page specific visibility settings</em> or other visibility settings can be used in addition to selectively display this block."),
-      );
+      ];
 
     return $form;
   }
@@ -127,8 +127,8 @@ public function build() {
       $current_bid = empty($node->book['bid']) ? 0 : $node->book['bid'];
     }
     if ($this->configuration['block_mode'] == 'all pages') {
-      $book_menus = array();
-      $pseudo_tree = array(0 => array('below' => FALSE));
+      $book_menus = [];
+      $pseudo_tree = [0 => ['below' => FALSE]];
       foreach ($this->bookManager->getAllBooks() as $book_id => $book) {
         if ($book['bid'] == $current_bid) {
           // If the current page is a node associated with a book, the menu
@@ -146,14 +146,14 @@ public function build() {
           $pseudo_tree[0]['link'] = $book;
           $book_menus[$book_id] = $this->bookManager->bookTreeOutput($pseudo_tree);
         }
-        $book_menus[$book_id] += array(
+        $book_menus[$book_id] += [
           '#book_title' => $book['title'],
-        );
+        ];
       }
       if ($book_menus) {
-        return array(
+        return [
           '#theme' => 'book_all_books_block',
-        ) + $book_menus;
+        ] + $book_menus;
       }
     }
     elseif ($current_bid) {
@@ -175,7 +175,7 @@ public function build() {
         }
       }
     }
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/book/src/Plugin/migrate/source/d6/Book.php b/core/modules/book/src/Plugin/migrate/source/d6/Book.php
index 76833aa..f41bb42 100644
--- a/core/modules/book/src/Plugin/migrate/source/d6/Book.php
+++ b/core/modules/book/src/Plugin/migrate/source/d6/Book.php
@@ -17,9 +17,9 @@ class Book extends DrupalSqlBase {
    * {@inheritdoc}
    */
   public function query() {
-    $query = $this->select('book', 'b')->fields('b', array('nid', 'bid'));
+    $query = $this->select('book', 'b')->fields('b', ['nid', 'bid']);
     $query->join('menu_links', 'ml', 'b.mlid = ml.mlid');
-    $ml_fields = array('mlid', 'plid', 'weight', 'has_children', 'depth');
+    $ml_fields = ['mlid', 'plid', 'weight', 'has_children', 'depth'];
     for ($i = 1; $i <= 9; $i++) {
       $field = "p$i";
       $ml_fields[] = $field;
@@ -42,7 +42,7 @@ public function getIds() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'nid' => $this->t('Node ID'),
       'bid' => $this->t('Book ID'),
       'mlid' => $this->t('Menu link ID'),
@@ -57,7 +57,7 @@ public function fields() {
       'p7' => $this->t('The seventh mlid in the materialized path. See p1.'),
       'p8' => $this->t('The eighth mlid in the materialized path. See p1.'),
       'p9' => $this->t('The ninth mlid in the materialized path. See p1.'),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/book/src/Tests/BookBreadcrumbTest.php b/core/modules/book/src/Tests/BookBreadcrumbTest.php
index 57e1b3d..d2f4d5d 100644
--- a/core/modules/book/src/Tests/BookBreadcrumbTest.php
+++ b/core/modules/book/src/Tests/BookBreadcrumbTest.php
@@ -16,7 +16,7 @@ class BookBreadcrumbTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('book', 'block', 'book_breadcrumb_test');
+  public static $modules = ['book', 'block', 'book_breadcrumb_test'];
 
   /**
    * A book node.
@@ -48,8 +48,8 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create users.
-    $this->bookAuthor = $this->drupalCreateUser(array('create new books', 'create book content', 'edit own book content', 'add content to books'));
-    $this->adminUser = $this->drupalCreateUser(array('create new books', 'create book content', 'edit any book content', 'delete any book content', 'add content to books', 'administer blocks', 'administer permissions', 'administer book outlines', 'administer content types', 'administer site configuration'));
+    $this->bookAuthor = $this->drupalCreateUser(['create new books', 'create book content', 'edit own book content', 'add content to books']);
+    $this->adminUser = $this->drupalCreateUser(['create new books', 'create book content', 'edit any book content', 'delete any book content', 'add content to books', 'administer blocks', 'administer permissions', 'administer book outlines', 'administer content types', 'administer site configuration']);
   }
 
   /**
@@ -76,7 +76,7 @@ protected function createBreadcrumbBook() {
      *      |- Node 5
      *  |- Node 6
      */
-    $nodes = array();
+    $nodes = [];
     $nodes[0] = $this->createBookNode($book->id());
     $nodes[1] = $this->createBookNode($book->id(), $nodes[0]->id());
     $nodes[2] = $this->createBookNode($book->id(), $nodes[0]->id());
@@ -107,7 +107,7 @@ protected function createBookNode($book_nid, $parent = NULL) {
     // that when sorted nodes stay in same order.
     static $number = 0;
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = str_pad($number, 2, '0', STR_PAD_LEFT) . ' - SimpleTest test node ' . $this->randomMachineName(10);
     $edit['body[0][value]'] = 'SimpleTest test body ' . $this->randomMachineName(32) . ' ' . $this->randomMachineName(32);
     $edit['book[bid]'] = $book_nid;
@@ -146,7 +146,7 @@ public function testBreadcrumbTitleUpdates() {
     $this->drupalGet($nodes[4]->toUrl());
     // Fetch each node title in the current breadcrumb.
     $links = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
-    $got_breadcrumb = array();
+    $got_breadcrumb = [];
     foreach ($links as $link) {
       $got_breadcrumb[] = (string) $link;
     }
@@ -160,7 +160,7 @@ public function testBreadcrumbTitleUpdates() {
     $this->drupalGet($nodes[4]->toUrl());
     // Fetch each node title in the current breadcrumb.
     $links = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
-    $got_breadcrumb = array();
+    $got_breadcrumb = [];
     foreach ($links as $link) {
       $got_breadcrumb[] = (string) $link;
     }
@@ -181,7 +181,7 @@ public function testBreadcrumbAccessUpdates() {
     $this->drupalPostForm($nodes[3]->toUrl('edit-form'), $edit, 'Save');
     $this->drupalGet($nodes[4]->toUrl());
     $links = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
-    $got_breadcrumb = array();
+    $got_breadcrumb = [];
     foreach ($links as $link) {
       $got_breadcrumb[] = (string) $link;
     }
@@ -191,7 +191,7 @@ public function testBreadcrumbAccessUpdates() {
     $config->set('hide', TRUE)->save();
     $this->drupalGet($nodes[4]->toUrl());
     $links = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
-    $got_breadcrumb = array();
+    $got_breadcrumb = [];
     foreach ($links as $link) {
       $got_breadcrumb[] = (string) $link;
     }
diff --git a/core/modules/book/src/Tests/BookInstallTest.php b/core/modules/book/src/Tests/BookInstallTest.php
index ba70a9b..9933b1c 100644
--- a/core/modules/book/src/Tests/BookInstallTest.php
+++ b/core/modules/book/src/Tests/BookInstallTest.php
@@ -17,7 +17,7 @@ class BookInstallTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/book/src/Tests/BookTest.php b/core/modules/book/src/Tests/BookTest.php
index cdd61c6..183674f 100644
--- a/core/modules/book/src/Tests/BookTest.php
+++ b/core/modules/book/src/Tests/BookTest.php
@@ -20,7 +20,7 @@ class BookTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('book', 'block', 'node_access_test', 'book_test');
+  public static $modules = ['book', 'block', 'node_access_test', 'book_test'];
 
   /**
    * A book node.
@@ -69,10 +69,10 @@ protected function setUp() {
     node_access_rebuild();
 
     // Create users.
-    $this->bookAuthor = $this->drupalCreateUser(array('create new books', 'create book content', 'edit own book content', 'add content to books'));
-    $this->webUser = $this->drupalCreateUser(array('access printer-friendly version', 'node test view'));
-    $this->webUserWithoutNodeAccess = $this->drupalCreateUser(array('access printer-friendly version'));
-    $this->adminUser = $this->drupalCreateUser(array('create new books', 'create book content', 'edit any book content', 'delete any book content', 'add content to books', 'administer blocks', 'administer permissions', 'administer book outlines', 'node test view', 'administer content types', 'administer site configuration'));
+    $this->bookAuthor = $this->drupalCreateUser(['create new books', 'create book content', 'edit own book content', 'add content to books']);
+    $this->webUser = $this->drupalCreateUser(['access printer-friendly version', 'node test view']);
+    $this->webUserWithoutNodeAccess = $this->drupalCreateUser(['access printer-friendly version']);
+    $this->adminUser = $this->drupalCreateUser(['create new books', 'create book content', 'edit any book content', 'delete any book content', 'add content to books', 'administer blocks', 'administer permissions', 'administer book outlines', 'node test view', 'administer content types', 'administer site configuration']);
   }
 
   /**
@@ -96,7 +96,7 @@ function createBook() {
      *  |- Node 3
      *  |- Node 4
      */
-    $nodes = array();
+    $nodes = [];
     $nodes[] = $this->createBookNode($book->id()); // Node 0.
     $nodes[] = $this->createBookNode($book->id(), $nodes[0]->book['nid']); // Node 1.
     $nodes[] = $this->createBookNode($book->id(), $nodes[0]->book['nid']); // Node 2.
@@ -159,8 +159,8 @@ function testEmptyBook() {
 
     // Log in as a user with access to the book outline and save the form.
     $this->drupalLogin($this->adminUser);
-    $this->drupalPostForm('admin/structure/book/' . $book->id(), array(), t('Save book pages'));
-    $this->assertText(t('Updated book @book.', array('@book' => $book->label())));
+    $this->drupalPostForm('admin/structure/book/' . $book->id(), [], t('Save book pages'));
+    $this->assertText(t('Updated book @book.', ['@book' => $book->label()]));
   }
 
   /**
@@ -175,12 +175,12 @@ function testBook() {
 
     // Check that book pages display along with the correct outlines and
     // previous/next links.
-    $this->checkBookNode($book, array($nodes[0], $nodes[3], $nodes[4]), FALSE, FALSE, $nodes[0], array());
-    $this->checkBookNode($nodes[0], array($nodes[1], $nodes[2]), $book, $book, $nodes[1], array($book));
-    $this->checkBookNode($nodes[1], NULL, $nodes[0], $nodes[0], $nodes[2], array($book, $nodes[0]));
-    $this->checkBookNode($nodes[2], NULL, $nodes[1], $nodes[0], $nodes[3], array($book, $nodes[0]));
-    $this->checkBookNode($nodes[3], NULL, $nodes[2], $book, $nodes[4], array($book));
-    $this->checkBookNode($nodes[4], NULL, $nodes[3], $book, FALSE, array($book));
+    $this->checkBookNode($book, [$nodes[0], $nodes[3], $nodes[4]], FALSE, FALSE, $nodes[0], []);
+    $this->checkBookNode($nodes[0], [$nodes[1], $nodes[2]], $book, $book, $nodes[1], [$book]);
+    $this->checkBookNode($nodes[1], NULL, $nodes[0], $nodes[0], $nodes[2], [$book, $nodes[0]]);
+    $this->checkBookNode($nodes[2], NULL, $nodes[1], $nodes[0], $nodes[3], [$book, $nodes[0]]);
+    $this->checkBookNode($nodes[3], NULL, $nodes[2], $book, $nodes[4], [$book]);
+    $this->checkBookNode($nodes[4], NULL, $nodes[3], $book, FALSE, [$book]);
 
     $this->drupalLogout();
     $this->drupalLogin($this->bookAuthor);
@@ -203,14 +203,14 @@ function testBook() {
     $this->drupalLogout();
     $this->drupalLogin($this->webUser);
     // Verify the new outline - make sure we don't get stale cached data.
-    $this->checkBookNode($nodes[3], array($nodes[5]), $nodes[2], $book, $nodes[5], array($book));
-    $this->checkBookNode($nodes[4], NULL, $nodes[5], $book, FALSE, array($book));
+    $this->checkBookNode($nodes[3], [$nodes[5]], $nodes[2], $book, $nodes[5], [$book]);
+    $this->checkBookNode($nodes[4], NULL, $nodes[5], $book, FALSE, [$book]);
     $this->drupalLogout();
     // Create a second book, and move an existing book page into it.
     $this->drupalLogin($this->bookAuthor);
     $other_book = $this->createBookNode('new');
     $node = $this->createBookNode($book->id());
-    $edit = array('book[bid]' => $other_book->id());
+    $edit = ['book[bid]' => $other_book->id()];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
 
     $this->drupalLogout();
@@ -220,8 +220,8 @@ function testBook() {
     // First we must set $this->book to the second book, so that the
     // correct regex will be generated for testing the outline.
     $this->book = $other_book;
-    $this->checkBookNode($other_book, array($node), FALSE, FALSE, $node, array());
-    $this->checkBookNode($node, NULL, $other_book, $other_book, FALSE, array($other_book));
+    $this->checkBookNode($other_book, [$node], FALSE, FALSE, $node, []);
+    $this->checkBookNode($node, NULL, $other_book, $other_book, FALSE, [$other_book]);
 
     // Test that we can save a book programatically.
     $this->drupalLogin($this->bookAuthor);
@@ -255,38 +255,38 @@ function checkBookNode(EntityInterface $node, $nodes, $previous = FALSE, $up = F
 
     // Check outline structure.
     if ($nodes !== NULL) {
-      $this->assertPattern($this->generateOutlinePattern($nodes), format_string('Node @number outline confirmed.', array('@number' => $number)));
+      $this->assertPattern($this->generateOutlinePattern($nodes), format_string('Node @number outline confirmed.', ['@number' => $number]));
     }
     else {
-      $this->pass(format_string('Node %number does not have outline.', array('%number' => $number)));
+      $this->pass(format_string('Node %number does not have outline.', ['%number' => $number]));
     }
 
     // Check previous, up, and next links.
     if ($previous) {
       /** @var \Drupal\Core\Url $url */
       $url = $previous->urlInfo();
-      $url->setOptions(array('attributes' => array('rel' => array('prev'), 'title' => t('Go to previous page'))));
-      $text = SafeMarkup::format('<b>‹</b> @label', array('@label' => $previous->label()));
+      $url->setOptions(['attributes' => ['rel' => ['prev'], 'title' => t('Go to previous page')]]);
+      $text = SafeMarkup::format('<b>‹</b> @label', ['@label' => $previous->label()]);
       $this->assertRaw(\Drupal::l($text, $url), 'Previous page link found.');
     }
 
     if ($up) {
       /** @var \Drupal\Core\Url $url */
       $url = $up->urlInfo();
-      $url->setOptions(array('attributes' => array('title' => t('Go to parent page'))));
+      $url->setOptions(['attributes' => ['title' => t('Go to parent page')]]);
       $this->assertRaw(\Drupal::l('Up', $url), 'Up page link found.');
     }
 
     if ($next) {
       /** @var \Drupal\Core\Url $url */
       $url = $next->urlInfo();
-      $url->setOptions(array('attributes' => array('rel' => array('next'), 'title' => t('Go to next page'))));
-      $text = SafeMarkup::format('@label <b>›</b>', array('@label' => $next->label()));
+      $url->setOptions(['attributes' => ['rel' => ['next'], 'title' => t('Go to next page')]]);
+      $text = SafeMarkup::format('@label <b>›</b>', ['@label' => $next->label()]);
       $this->assertRaw(\Drupal::l($text, $url), 'Next page link found.');
     }
 
     // Compute the expected breadcrumb.
-    $expected_breadcrumb = array();
+    $expected_breadcrumb = [];
     $expected_breadcrumb[] = \Drupal::url('<front>');
     foreach ($breadcrumb as $a_node) {
       $expected_breadcrumb[] = $a_node->url();
@@ -294,7 +294,7 @@ function checkBookNode(EntityInterface $node, $nodes, $previous = FALSE, $up = F
 
     // Fetch links in the current breadcrumb.
     $links = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
-    $got_breadcrumb = array();
+    $got_breadcrumb = [];
     foreach ($links as $link) {
       $got_breadcrumb[] = (string) $link['href'];
     }
@@ -344,7 +344,7 @@ function createBookNode($book_nid, $parent = NULL) {
     // since it uniquely identifies each call to createBookNode().
     static $number = 0; // Used to ensure that when sorted nodes stay in same order.
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = str_pad($number, 2, '0', STR_PAD_LEFT) . ' - SimpleTest test node ' . $this->randomMachineName(10);
     $edit['body[0][value]'] = 'SimpleTest test body ' . $this->randomMachineName(32) . ' ' . $this->randomMachineName(32);
     $edit['book[bid]'] = $book_nid;
@@ -410,7 +410,7 @@ function testBookExport() {
     // Now grant anonymous users permission to view the printer-friendly
     // version and verify that node access restrictions still prevent them from
     // seeing it.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access printer-friendly version'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access printer-friendly version']);
     $this->drupalGet('book/export/html/' . $this->book->id());
     $this->assertResponse('403', 'Anonymous user properly forbidden from seeing the printer-friendly version when denied by node access.');
   }
@@ -425,7 +425,7 @@ function testBookNavigationBlock() {
     $block = $this->drupalPlaceBlock('book_navigation');
 
     // Give anonymous users the permission 'node test view'.
-    $edit = array();
+    $edit = [];
     $edit[RoleInterface::ANONYMOUS_ID . '[node test view]'] = TRUE;
     $this->drupalPostForm('admin/people/permissions/' . RoleInterface::ANONYMOUS_ID, $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), "Permission 'node test view' successfully assigned to anonymous users.");
@@ -434,7 +434,7 @@ function testBookNavigationBlock() {
     $nodes = $this->createBook();
     $this->drupalGet('<front>');
     $this->assertText($block->label(), 'Book navigation block is displayed.');
-    $this->assertText($this->book->label(), format_string('Link to book root (@title) is displayed.', array('@title' => $nodes[0]->label())));
+    $this->assertText($this->book->label(), format_string('Link to book root (@title) is displayed.', ['@title' => $nodes[0]->label()]));
     $this->assertNoText($nodes[0]->label(), 'No links to individual book pages are displayed.');
   }
 
@@ -485,8 +485,8 @@ public function testGetTableOfContents() {
     $diff = array_diff($expected_nids, array_keys($options));
     $this->assertTrue(empty($diff), 'Found all expected option keys');
     // Exclude Node 3.
-    $options = $manager->getTableOfContents($book->id(), 3, array($nodes[3]->id()));
-    $expected_nids = array($book->id(), $nodes[0]->id(), $nodes[1]->id(), $nodes[2]->id(), $nodes[4]->id());
+    $options = $manager->getTableOfContents($book->id(), 3, [$nodes[3]->id()]);
+    $expected_nids = [$book->id(), $nodes[0]->id(), $nodes[1]->id(), $nodes[2]->id(), $nodes[4]->id()];
     $this->assertEqual(count($options), count($expected_nids));
     $diff = array_diff($expected_nids, array_keys($options));
     $this->assertTrue(empty($diff), 'Found all expected option keys after excluding Node 3');
@@ -497,10 +497,10 @@ public function testGetTableOfContents() {
    */
   function testNavigationBlockOnAccessModuleInstalled() {
     $this->drupalLogin($this->adminUser);
-    $block = $this->drupalPlaceBlock('book_navigation', array('block_mode' => 'book pages'));
+    $block = $this->drupalPlaceBlock('book_navigation', ['block_mode' => 'book pages']);
 
     // Give anonymous users the permission 'node test view'.
-    $edit = array();
+    $edit = [];
     $edit[RoleInterface::ANONYMOUS_ID . '[node test view]'] = TRUE;
     $this->drupalPostForm('admin/people/permissions/' . RoleInterface::ANONYMOUS_ID, $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), "Permission 'node test view' successfully assigned to anonymous users.");
@@ -530,13 +530,13 @@ function testBookDelete() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $nodes = $this->createBook();
     $this->drupalLogin($this->adminUser);
-    $edit = array();
+    $edit = [];
 
     // Test access to delete top-level and child book nodes.
     $this->drupalGet('node/' . $this->book->id() . '/outline/remove');
     $this->assertResponse('403', 'Deleting top-level book node properly forbidden.');
     $this->drupalPostForm('node/' . $nodes[4]->id() . '/outline/remove', $edit, t('Remove'));
-    $node_storage->resetCache(array($nodes[4]->id()));
+    $node_storage->resetCache([$nodes[4]->id()]);
     $node4 = $node_storage->load($nodes[4]->id());
     $this->assertTrue(empty($node4->book), 'Deleting child book node properly allowed.');
 
@@ -546,7 +546,7 @@ function testBookDelete() {
     }
     entity_delete_multiple('node', $nids);
     $this->drupalPostForm('node/' . $this->book->id() . '/outline/remove', $edit, t('Remove'));
-    $node_storage->resetCache(array($this->book->id()));
+    $node_storage->resetCache([$this->book->id()]);
     $node = $node_storage->load($this->book->id());
     $this->assertTrue(empty($node->book), 'Deleting childless top-level book node properly allowed.');
 
@@ -577,7 +577,7 @@ public function testBookOutline() {
     $this->drupalLogin($this->bookAuthor);
 
     // Create new node not yet a book.
-    $empty_book = $this->drupalCreateNode(array('type' => 'book'));
+    $empty_book = $this->drupalCreateNode(['type' => 'book']);
     $this->drupalGet('node/' . $empty_book->id() . '/outline');
     $this->assertNoLink(t('Book outline'), 'Book Author is not allowed to outline');
 
@@ -587,7 +587,7 @@ public function testBookOutline() {
     $this->assertOptionSelected('edit-book-bid', 0, 'Node does not belong to a book');
     $this->assertNoLink(t('Remove from book outline'));
 
-    $edit = array();
+    $edit = [];
     $edit['book[bid]'] = '1';
     $this->drupalPostForm('node/' . $empty_book->id() . '/outline', $edit, t('Add to book outline'));
     $node = \Drupal::entityManager()->getStorage('node')->load($empty_book->id());
@@ -606,11 +606,11 @@ public function testBookOutline() {
     $this->drupalGet('node/' . $book->id() . '/outline');
     $this->assertRaw(t('Book outline'));
     $this->clickLink(t('Remove from book outline'));
-    $this->assertRaw(t('Are you sure you want to remove %title from the book hierarchy?', array('%title' => $book->label())));
+    $this->assertRaw(t('Are you sure you want to remove %title from the book hierarchy?', ['%title' => $book->label()]));
 
     // Create a new node and set the book after the node was created.
-    $node = $this->drupalCreateNode(array('type' => 'book'));
-    $edit = array();
+    $node = $this->drupalCreateNode(['type' => 'book']);
+    $edit = [];
     $edit['book[bid]'] = $node->id();
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     $node = \Drupal::entityManager()->getStorage('node')->load($node->id());
@@ -634,7 +634,7 @@ public function testSaveBookLink() {
     $book_manager = \Drupal::service('book.manager');
 
     // Mock a link for a new book.
-    $link = array('nid' => 1, 'has_children' => 0, 'original_bid' => 0, 'parent_depth_limit' => 8, 'pid' => 0, 'weight' => 0, 'bid' => 1);
+    $link = ['nid' => 1, 'has_children' => 0, 'original_bid' => 0, 'parent_depth_limit' => 8, 'pid' => 0, 'weight' => 0, 'bid' => 1];
     $new = TRUE;
 
     // Save the link.
diff --git a/core/modules/book/src/Tests/Views/BookRelationshipTest.php b/core/modules/book/src/Tests/Views/BookRelationshipTest.php
index 2302e8b..c1f8728 100644
--- a/core/modules/book/src/Tests/Views/BookRelationshipTest.php
+++ b/core/modules/book/src/Tests/Views/BookRelationshipTest.php
@@ -19,14 +19,14 @@ class BookRelationshipTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_book_view');
+  public static $testViews = ['test_book_view'];
 
   /**
    * Modules to install.
    *
    * @var array
    */
-  public static $modules = array('book_test_views', 'book', 'views');
+  public static $modules = ['book_test_views', 'book', 'views'];
 
   /**
    * A book node.
@@ -50,14 +50,14 @@ protected function setUp() {
 
     // Create users.
     $this->bookAuthor = $this->drupalCreateUser(
-      array(
+      [
         'create new books',
         'create book content',
         'edit own book content',
         'add content to books',
-      )
+      ]
     );
-    ViewTestData::createTestViews(get_class($this), array('book_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['book_test_views']);
   }
 
   /**
@@ -70,7 +70,7 @@ protected function createBook() {
     $this->book = $this->createBookNode('new');
     $book = $this->book;
 
-    $nodes = array();
+    $nodes = [];
     // Node 0.
     $nodes[] = $this->createBookNode($book->id());
     // Node 1.
@@ -110,7 +110,7 @@ protected function createBookNode($book_nid, $parent = NULL) {
     // Used to ensure that when sorted nodes stay in same order.
     static $number = 0;
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $number . ' - SimpleTest test node ' . $this->randomMachineName(10);
     $edit['body[0][value]'] = 'SimpleTest test body ' . $this->randomMachineName(32) . ' ' . $this->randomMachineName(32);
     $edit['book[bid]'] = $book_nid;
diff --git a/core/modules/book/tests/src/Kernel/BookUninstallTest.php b/core/modules/book/tests/src/Kernel/BookUninstallTest.php
index bcd0812..9430991 100644
--- a/core/modules/book/tests/src/Kernel/BookUninstallTest.php
+++ b/core/modules/book/tests/src/Kernel/BookUninstallTest.php
@@ -27,11 +27,11 @@ protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('user');
     $this->installEntitySchema('node');
-    $this->installSchema('book', array('book'));
-    $this->installSchema('node', array('node_access'));
-    $this->installConfig(array('node', 'book', 'field'));
+    $this->installSchema('book', ['book']);
+    $this->installSchema('node', ['node_access']);
+    $this->installConfig(['node', 'book', 'field']);
     // For uninstall to work.
-    $this->installSchema('user', array('users_data'));
+    $this->installSchema('user', ['users_data']);
   }
 
   /**
@@ -42,17 +42,17 @@ public function testBookUninstall() {
     $validation_reasons = \Drupal::service('module_installer')->validateUninstall(['book']);
     $this->assertEqual([], $validation_reasons, 'The book module is not required.');
 
-    $content_type = NodeType::create(array(
+    $content_type = NodeType::create([
       'type' => $this->randomMachineName(),
       'name' => $this->randomString(),
-    ));
+    ]);
     $content_type->save();
     $book_config = $this->config('book.settings');
     $allowed_types = $book_config->get('allowed_types');
     $allowed_types[] = $content_type->id();
     $book_config->set('allowed_types', $allowed_types)->save();
 
-    $node = Node::create(array('title' => $this->randomString(), 'type' => $content_type->id()));
+    $node = Node::create(['title' => $this->randomString(), 'type' => $content_type->id()]);
     $node->book['bid'] = 'new';
     $node->save();
 
@@ -60,7 +60,7 @@ public function testBookUninstall() {
     $validation_reasons = \Drupal::service('module_installer')->validateUninstall(['book']);
     $this->assertEqual(['To uninstall Book, delete all content that is part of a book'], $validation_reasons['book']);
 
-    $book_node = Node::create(array('title' => $this->randomString(), 'type' => 'book'));
+    $book_node = Node::create(['title' => $this->randomString(), 'type' => 'book']);
     $book_node->book['bid'] = FALSE;
     $book_node->save();
 
@@ -79,7 +79,7 @@ public function testBookUninstall() {
     $module_data = _system_rebuild_module_data();
     $this->assertFalse(isset($module_data['book']->info['required']), 'The book module is not required.');
 
-    $node = Node::create(array('title' => $this->randomString(), 'type' => $content_type->id()));
+    $node = Node::create(['title' => $this->randomString(), 'type' => $content_type->id()]);
     $node->save();
     // One node exists but is not part of a book therefore the book module is
     // not required.
@@ -87,7 +87,7 @@ public function testBookUninstall() {
     $this->assertEqual([], $validation_reasons, 'The book module is not required.');
 
     // Uninstall the Book module and check the node type is deleted.
-    \Drupal::service('module_installer')->uninstall(array('book'));
+    \Drupal::service('module_installer')->uninstall(['book']);
     $this->assertNull(NodeType::load('book'), "The book node type does not exist.");
   }
 
diff --git a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
index ee3c0b2..17a3bff 100644
--- a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
+++ b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
@@ -34,7 +34,7 @@ public function testBookSettings() {
     $config = $this->config('book.settings');
     $this->assertIdentical('book', $config->get('child_type'));
     $this->assertIdentical('all pages', $config->get('block.navigation.mode'));
-    $this->assertIdentical(array('book'), $config->get('allowed_types'));
+    $this->assertIdentical(['book'], $config->get('allowed_types'));
     $this->assertConfigSchema(\Drupal::service('config.typed'), 'book.settings', $config->get());
   }
 
diff --git a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookTest.php b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookTest.php
index ffcc3fe..f6f1730 100644
--- a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookTest.php
+++ b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookTest.php
@@ -32,7 +32,7 @@ protected function setUp() {
    * Tests the Drupal 6 book structure to Drupal 8 migration.
    */
   public function testBook() {
-    $nodes = Node::loadMultiple(array(4, 5, 6, 7, 8));
+    $nodes = Node::loadMultiple([4, 5, 6, 7, 8]);
     $this->assertIdentical('4', $nodes[4]->book['bid']);
     $this->assertIdentical('0', $nodes[4]->book['pid']);
 
@@ -53,8 +53,8 @@ public function testBook() {
     $this->assertIdentical('5', $tree['49990 Node 4 4']['below']['50000 Node 5 5']['link']['nid']);
     $this->assertIdentical('6', $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 6 6']['link']['nid']);
     $this->assertIdentical('7', $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 7 7']['link']['nid']);
-    $this->assertIdentical(array(), $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 6 6']['below']);
-    $this->assertIdentical(array(), $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 7 7']['below']);
+    $this->assertIdentical([], $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 6 6']['below']);
+    $this->assertIdentical([], $tree['49990 Node 4 4']['below']['50000 Node 5 5']['below']['50000 Node 7 7']['below']);
   }
 
 }
diff --git a/core/modules/book/tests/src/Unit/BookManagerTest.php b/core/modules/book/tests/src/Unit/BookManagerTest.php
index fdecbbe..d783553 100644
--- a/core/modules/book/tests/src/Unit/BookManagerTest.php
+++ b/core/modules/book/tests/src/Unit/BookManagerTest.php
@@ -59,7 +59,7 @@ class BookManagerTest extends UnitTestCase {
   protected function setUp() {
     $this->entityManager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
     $this->translation = $this->getStringTranslationStub();
-    $this->configFactory = $this->getConfigFactoryStub(array());
+    $this->configFactory = $this->getConfigFactoryStub([]);
     $this->bookOutlineStorage = $this->getMock('Drupal\book\BookOutlineStorageInterface');
     $this->renderer = $this->getMock('\Drupal\Core\Render\RendererInterface');
     $this->bookManager = new BookManager($this->entityManager, $this->translation, $this->configFactory, $this->bookOutlineStorage, $this->renderer);
@@ -81,7 +81,7 @@ public function testGetBookParents($book, $parent, $expected) {
    *   The test data.
    */
   public function providerTestGetBookParents() {
-    $empty = array(
+    $empty = [
       'p1' => 0,
       'p2' => 0,
       'p3' => 0,
@@ -91,27 +91,27 @@ public function providerTestGetBookParents() {
       'p7' => 0,
       'p8' => 0,
       'p9' => 0,
-    );
-    return array(
+    ];
+    return [
       // Provides a book without an existing parent.
-      array(
-        array('pid' => 0, 'nid' => 12),
-        array(),
-        array('depth' => 1, 'p1' => 12) + $empty,
-      ),
+      [
+        ['pid' => 0, 'nid' => 12],
+        [],
+        ['depth' => 1, 'p1' => 12] + $empty,
+      ],
       // Provides a book with an existing parent.
-      array(
-        array('pid' => 11, 'nid' => 12),
-        array('nid' => 11, 'depth' => 1, 'p1' => 11,),
-        array('depth' => 2, 'p1' => 11, 'p2' => 12) + $empty,
-      ),
+      [
+        ['pid' => 11, 'nid' => 12],
+        ['nid' => 11, 'depth' => 1, 'p1' => 11,],
+        ['depth' => 2, 'p1' => 11, 'p2' => 12] + $empty,
+      ],
       // Provides a book with two existing parents.
-      array(
-        array('pid' => 11, 'nid' => 12),
-        array('nid' => 11, 'depth' => 2, 'p1' => 10, 'p2' => 11),
-        array('depth' => 3, 'p1' => 10, 'p2' => 11, 'p3' => 12) + $empty,
-      ),
-    );
+      [
+        ['pid' => 11, 'nid' => 12],
+        ['nid' => 11, 'depth' => 2, 'p1' => 10, 'p2' => 11],
+        ['depth' => 3, 'p1' => 10, 'p2' => 11, 'p3' => 12] + $empty,
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php b/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
index 927241f..5b7662c 100644
--- a/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
+++ b/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
@@ -12,10 +12,10 @@
 class BookLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'book' => 'core/modules/book',
       'node' => 'core/modules/node',
-    );
+    ];
     parent::setUp();
   }
 
@@ -26,19 +26,19 @@ protected function setUp() {
    */
   public function testBookAdminLocalTasks($route) {
 
-    $this->assertLocalTasks($route, array(
-      0 => array('book.admin', 'book.settings'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['book.admin', 'book.settings'],
+    ]);
   }
 
   /**
    * Provides a list of routes to test.
    */
   public function getBookAdminRoutes() {
-    return array(
-      array('book.admin'),
-      array('book.settings'),
-    );
+    return [
+      ['book.admin'],
+      ['book.settings'],
+    ];
   }
 
   /**
@@ -47,19 +47,19 @@ public function getBookAdminRoutes() {
    * @dataProvider getBookNodeRoutes
    */
   public function testBookNodeLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('entity.node.book_outline_form', 'entity.node.canonical', 'entity.node.edit_form', 'entity.node.delete_form', 'entity.node.version_history',),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['entity.node.book_outline_form', 'entity.node.canonical', 'entity.node.edit_form', 'entity.node.delete_form', 'entity.node.version_history',],
+    ]);
   }
 
   /**
    * Provides a list of routes to test.
    */
   public function getBookNodeRoutes() {
-    return array(
-      array('entity.node.canonical'),
-      array('entity.node.book_outline_form'),
-    );
+    return [
+      ['entity.node.canonical'],
+      ['entity.node.book_outline_form'],
+    ];
   }
 
 }
diff --git a/core/modules/breakpoint/breakpoint.module b/core/modules/breakpoint/breakpoint.module
index 103edd9..a0fd468 100644
--- a/core/modules/breakpoint/breakpoint.module
+++ b/core/modules/breakpoint/breakpoint.module
@@ -15,13 +15,13 @@ function breakpoint_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.breakpoint':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Breakpoint module keeps track of the height, width, and resolution breakpoints where a responsive design needs to change in order to respond to different devices being used to view the site. This module does not have a user interface. For more information, see the <a href=":docs">online documentation for the Breakpoint module</a>.', array(':docs' => 'https://www.drupal.org/documentation/modules/breakpoint')) . '</p>';
+      $output .= '<p>' . t('The Breakpoint module keeps track of the height, width, and resolution breakpoints where a responsive design needs to change in order to respond to different devices being used to view the site. This module does not have a user interface. For more information, see the <a href=":docs">online documentation for the Breakpoint module</a>.', [':docs' => 'https://www.drupal.org/documentation/modules/breakpoint']) . '</p>';
       $output .= '<h4>' . t('Terminology') . '</h4>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Breakpoint') . '</dt>';
       $output .= '<dd>' . t('A breakpoint separates the height or width of viewports (screens, printers, and other media output types) into steps. For instance, a width breakpoint of 40em creates two steps: one for widths up to 40em and one for widths above 40em. Breakpoints can be used to define when layouts should shift from one form to another, when images should be resized, and other changes that need to respond to changes in viewport height or width.') . '</dd>';
       $output .= '<dt>' . t('Media query') . '</dt>';
-      $output .= '<dd>' . t('<a href=":w3">Media  queries</a> are a formal way to encode breakpoints. For instance, a width breakpoint at 40em would be written as the media query "(min-width: 40em)". Breakpoints are really just media queries with some additional meta-data, such as a name and multiplier information.', array(':w3' => 'http://www.w3.org/TR/css3-mediaqueries/')) . '</dd>';
+      $output .= '<dd>' . t('<a href=":w3">Media  queries</a> are a formal way to encode breakpoints. For instance, a width breakpoint at 40em would be written as the media query "(min-width: 40em)". Breakpoints are really just media queries with some additional meta-data, such as a name and multiplier information.', [':w3' => 'http://www.w3.org/TR/css3-mediaqueries/']) . '</dd>';
       $output .= '<dt>' . t('Resolution multiplier') . '</dt>';
       $output .= '<dd>' . t('Resolution multipliers are a measure of the viewport\'s device resolution, defined to be the ratio between the physical pixel size of the active device and the <a href="http://en.wikipedia.org/wiki/Device_independent_pixel">device-independent pixel</a> size. The Breakpoint module defines multipliers of 1, 1.5, and 2; when defining breakpoints, modules and themes can define which multipliers apply to each breakpoint.') . '</dd>';
       $output .= '<dt>' . t('Breakpoint group') . '</dt>';
diff --git a/core/modules/breakpoint/src/Breakpoint.php b/core/modules/breakpoint/src/Breakpoint.php
index 0c51e63..0928d55 100644
--- a/core/modules/breakpoint/src/Breakpoint.php
+++ b/core/modules/breakpoint/src/Breakpoint.php
@@ -16,7 +16,7 @@ class Breakpoint extends PluginBase implements BreakpointInterface {
    * {@inheritdoc}
    */
   public function getLabel() {
-    return $this->t($this->pluginDefinition['label'], array(), array('context' => 'breakpoint'));
+    return $this->t($this->pluginDefinition['label'], [], ['context' => 'breakpoint']);
   }
 
   /**
diff --git a/core/modules/breakpoint/src/BreakpointManager.php b/core/modules/breakpoint/src/BreakpointManager.php
index 693ffa9..30caf27 100644
--- a/core/modules/breakpoint/src/BreakpointManager.php
+++ b/core/modules/breakpoint/src/BreakpointManager.php
@@ -50,7 +50,7 @@ class BreakpointManager extends DefaultPluginManager implements BreakpointManage
   /**
    * {@inheritdoc}
    */
-  protected $defaults = array(
+  protected $defaults = [
     // Human readable label for breakpoint.
     'label' => '',
     // The media query for the breakpoint.
@@ -58,14 +58,14 @@ class BreakpointManager extends DefaultPluginManager implements BreakpointManage
     // Weight used for ordering breakpoints.
     'weight' => 0,
     // Breakpoint multipliers.
-    'multipliers' => array(),
+    'multipliers' => [],
     // The breakpoint group.
     'group' => '',
     // Default class for breakpoint implementations.
     'class' => 'Drupal\breakpoint\Breakpoint',
     // The plugin id. Set by the plugin system based on the top-level YAML key.
     'id' => '',
-  );
+  ];
 
   /**
    * The theme handler.
@@ -86,7 +86,7 @@ class BreakpointManager extends DefaultPluginManager implements BreakpointManage
    *
    * @var array
    */
-  protected $instances = array();
+  protected $instances = [];
 
   /**
    * Constructs a new BreakpointManager instance.
@@ -106,7 +106,7 @@ public function __construct(ModuleHandlerInterface $module_handler, ThemeHandler
     $this->themeHandler = $theme_handler;
     $this->setStringTranslation($string_translation);
     $this->alterInfo('breakpoints');
-    $this->setCacheBackend($cache_backend, 'breakpoints', array('breakpoints'));
+    $this->setCacheBackend($cache_backend, 'breakpoints', ['breakpoints']);
   }
 
   /**
@@ -153,19 +153,19 @@ public function getBreakpointsByGroup($group) {
         $this->breakpointsByGroup[$group] = $cache->data;
       }
       else {
-        $breakpoints = array();
+        $breakpoints = [];
         foreach ($this->getDefinitions() as $plugin_id => $plugin_definition) {
           if ($plugin_definition['group'] == $group) {
             $breakpoints[$plugin_id] = $plugin_definition;
           }
         }
-        uasort($breakpoints, array('Drupal\Component\Utility\SortArray', 'sortByWeightElement'));
-        $this->cacheBackend->set($this->cacheKey . ':' . $group, $breakpoints, Cache::PERMANENT, array('breakpoints'));
+        uasort($breakpoints, ['Drupal\Component\Utility\SortArray', 'sortByWeightElement']);
+        $this->cacheBackend->set($this->cacheKey . ':' . $group, $breakpoints, Cache::PERMANENT, ['breakpoints']);
         $this->breakpointsByGroup[$group] = $breakpoints;
       }
     }
 
-    $instances = array();
+    $instances = [];
     foreach ($this->breakpointsByGroup[$group] as $plugin_id => $definition) {
       if (!isset($this->instances[$plugin_id])) {
         $this->instances[$plugin_id] = $this->createInstance($plugin_id);
@@ -184,16 +184,16 @@ public function getGroups() {
       $groups = $cache->data;
     }
     else {
-      $groups = array();
+      $groups = [];
       foreach ($this->getDefinitions() as $plugin_definition) {
         if (!isset($groups[$plugin_definition['group']])) {
           $groups[$plugin_definition['group']] = $plugin_definition['group'];
         }
       }
-      $this->cacheBackend->set($this->cacheKey . '::groups', $groups, Cache::PERMANENT, array('breakpoints'));
+      $this->cacheBackend->set($this->cacheKey . '::groups', $groups, Cache::PERMANENT, ['breakpoints']);
     }
     // Get the labels. This is not cacheable due to translation.
-    $group_labels = array();
+    $group_labels = [];
     foreach ($groups as $group) {
       $group_labels[$group] = $this->getGroupLabel($group);
     }
@@ -205,7 +205,7 @@ public function getGroups() {
    * {@inheritdoc}
    */
   public function getGroupProviders($group) {
-    $providers = array();
+    $providers = [];
     $breakpoints = $this->getBreakpointsByGroup($group);
     foreach ($breakpoints as $breakpoint) {
       $provider = $breakpoint->getProvider();
@@ -229,7 +229,7 @@ public function getGroupProviders($group) {
   public function clearCachedDefinitions() {
     parent::clearCachedDefinitions();
     $this->breakpointsByGroup = NULL;
-    $this->instances = array();
+    $this->instances = [];
   }
 
   /**
@@ -251,7 +251,7 @@ protected function getGroupLabel($group) {
     }
     else {
       // Custom group label that should be translatable.
-      $label = $this->t($group, array(), array('context' => 'breakpoint'));
+      $label = $this->t($group, [], ['context' => 'breakpoint']);
     }
     return $label;
   }
diff --git a/core/modules/breakpoint/tests/src/Kernel/BreakpointDiscoveryTest.php b/core/modules/breakpoint/tests/src/Kernel/BreakpointDiscoveryTest.php
index 7683ea1..dc81757 100644
--- a/core/modules/breakpoint/tests/src/Kernel/BreakpointDiscoveryTest.php
+++ b/core/modules/breakpoint/tests/src/Kernel/BreakpointDiscoveryTest.php
@@ -16,11 +16,11 @@ class BreakpointDiscoveryTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'breakpoint', 'breakpoint_module_test');
+  public static $modules = ['system', 'breakpoint', 'breakpoint_module_test'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('breakpoint_theme_test'));
+    \Drupal::service('theme_handler')->install(['breakpoint_theme_test']);
   }
 
   /**
@@ -28,56 +28,56 @@ protected function setUp() {
    */
   public function testThemeBreakpoints() {
     // Verify the breakpoint group for breakpoint_theme_test was created.
-    $expected_breakpoints = array(
-      'breakpoint_theme_test.mobile' => array(
+    $expected_breakpoints = [
+      'breakpoint_theme_test.mobile' => [
         'label' => 'mobile',
         'mediaQuery' => '(min-width: 0px)',
         'weight' => 0,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.mobile',
         'group' => 'breakpoint_theme_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_theme_test.narrow' => array(
+      ],
+      'breakpoint_theme_test.narrow' => [
         'label' => 'narrow',
         'mediaQuery' => '(min-width: 560px)',
         'weight' => 1,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.narrow',
         'group' => 'breakpoint_theme_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_theme_test.wide' => array(
+      ],
+      'breakpoint_theme_test.wide' => [
         'label' => 'wide',
         'mediaQuery' => '(min-width: 851px)',
         'weight' => 2,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.wide',
         'group' => 'breakpoint_theme_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_theme_test.tv' => array(
+      ],
+      'breakpoint_theme_test.tv' => [
         'label' => 'tv',
         'mediaQuery' => 'only screen and (min-width: 1220px)',
         'weight' => 3,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.tv',
         'group' => 'breakpoint_theme_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-    );
+      ],
+    ];
 
     $breakpoints = \Drupal::service('breakpoint.manager')->getBreakpointsByGroup('breakpoint_theme_test');
     foreach ($expected_breakpoints as $id => $expected_breakpoint) {
@@ -93,46 +93,46 @@ public function testThemeBreakpoints() {
    */
   public function testCustomBreakpointGroups() {
     // Verify the breakpoint group for breakpoint_theme_test.group2 was created.
-    $expected_breakpoints = array(
-      'breakpoint_theme_test.group2.narrow' => array(
+    $expected_breakpoints = [
+      'breakpoint_theme_test.group2.narrow' => [
         'label' => 'narrow',
         'mediaQuery' => '(min-width: 560px)',
         'weight' => 0,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
           '2x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.group2.narrow',
         'group' => 'breakpoint_theme_test.group2',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_theme_test.group2.wide' => array(
+      ],
+      'breakpoint_theme_test.group2.wide' => [
         'label' => 'wide',
         'mediaQuery' => '(min-width: 851px)',
         'weight' => 1,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
           '2x',
-        ),
+        ],
         'provider' => 'breakpoint_theme_test',
         'id' => 'breakpoint_theme_test.group2.wide',
         'group' => 'breakpoint_theme_test.group2',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_module_test.breakpoint_theme_test.group2.tv' => array(
+      ],
+      'breakpoint_module_test.breakpoint_theme_test.group2.tv' => [
         'label' => 'tv',
         'mediaQuery' => '(min-width: 6000px)',
         'weight' => 2,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_module_test',
         'id' => 'breakpoint_module_test.breakpoint_theme_test.group2.tv',
         'group' => 'breakpoint_theme_test.group2',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-    );
+      ],
+    ];
 
     $breakpoints = \Drupal::service('breakpoint.manager')->getBreakpointsByGroup('breakpoint_theme_test.group2');
     foreach ($expected_breakpoints as $id => $expected_breakpoint) {
@@ -144,33 +144,33 @@ public function testCustomBreakpointGroups() {
    * Test the breakpoint group created for a module.
    */
   public function testModuleBreakpoints() {
-    $expected_breakpoints = array(
-      'breakpoint_module_test.mobile' => array(
+    $expected_breakpoints = [
+      'breakpoint_module_test.mobile' => [
         'label' => 'mobile',
         'mediaQuery' => '(min-width: 0px)',
         'weight' => 0,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
-        ),
+        ],
         'provider' => 'breakpoint_module_test',
         'id' => 'breakpoint_module_test.mobile',
         'group' => 'breakpoint_module_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-      'breakpoint_module_test.standard' => array(
+      ],
+      'breakpoint_module_test.standard' => [
         'label' => 'standard',
         'mediaQuery' => '(min-width: 560px)',
         'weight' => 1,
-        'multipliers' => array(
+        'multipliers' => [
           '1x',
           '2x',
-        ),
+        ],
         'provider' => 'breakpoint_module_test',
         'id' => 'breakpoint_module_test.standard',
         'group' => 'breakpoint_module_test',
         'class' => 'Drupal\\breakpoint\\Breakpoint',
-      ),
-    );
+      ],
+    ];
 
     $breakpoints = \Drupal::service('breakpoint.manager')->getBreakpointsByGroup('breakpoint_module_test');
     $this->assertEqual(array_keys($expected_breakpoints), array_keys($breakpoints));
@@ -180,20 +180,20 @@ public function testModuleBreakpoints() {
    * Test the collection of breakpoint groups.
    */
   public function testBreakpointGroups() {
-    $expected = array(
+    $expected = [
       'bartik' => 'Bartik',
       'breakpoint_module_test' => 'Breakpoint test module',
       'breakpoint_theme_test' => 'Breakpoint test theme',
       'breakpoint_theme_test.group2' => 'breakpoint_theme_test.group2',
-    );
+    ];
     $breakpoint_groups = \Drupal::service('breakpoint.manager')->getGroups();
     // Ensure the order is as expected. Should be sorted by label.
     $this->assertIdentical($expected, $this->castSafeStrings($breakpoint_groups));
 
-    $expected = array(
+    $expected = [
       'breakpoint_theme_test' => 'theme',
       'breakpoint_module_test' => 'module',
-    );
+    ];
     $breakpoint_group_providers = \Drupal::service('breakpoint.manager')->getGroupProviders('breakpoint_theme_test.group2');
     $this->assertEqual($expected, $breakpoint_group_providers);
   }
diff --git a/core/modules/breakpoint/tests/src/Unit/BreakpointTest.php b/core/modules/breakpoint/tests/src/Unit/BreakpointTest.php
index bdd5cd9..4b8fd88 100644
--- a/core/modules/breakpoint/tests/src/Unit/BreakpointTest.php
+++ b/core/modules/breakpoint/tests/src/Unit/BreakpointTest.php
@@ -24,9 +24,9 @@ class BreakpointTest extends UnitTestCase {
    *
    * @var array
    */
-  protected $pluginDefinition = array(
+  protected $pluginDefinition = [
     'id' => 'breakpoint',
-  );
+  ];
 
   /**
    * The breakpoint under test.
@@ -52,7 +52,7 @@ protected function setUp() {
    * Sets up the breakpoint defaults.
    */
   protected function setupBreakpoint() {
-    $this->breakpoint = new Breakpoint(array(), $this->pluginId, $this->pluginDefinition);
+    $this->breakpoint = new Breakpoint([], $this->pluginId, $this->pluginDefinition);
     $this->breakpoint->setStringTranslation($this->stringTranslation);
   }
 
@@ -62,7 +62,7 @@ protected function setupBreakpoint() {
   public function testGetLabel() {
     $this->pluginDefinition['label'] = 'Test label';
     $this->setupBreakpoint();
-    $this->assertEquals(new TranslatableMarkup('Test label', array(), array('context' => 'breakpoint'), $this->stringTranslation), $this->breakpoint->getLabel());
+    $this->assertEquals(new TranslatableMarkup('Test label', [], ['context' => 'breakpoint'], $this->stringTranslation), $this->breakpoint->getLabel());
   }
 
   /**
@@ -88,9 +88,9 @@ public function testGetMediaQuery() {
    * @covers ::getMultipliers
    */
   public function testGetMultipliers() {
-    $this->pluginDefinition['multipliers'] = array('1x', '2x');
+    $this->pluginDefinition['multipliers'] = ['1x', '2x'];
     $this->setupBreakpoint();
-    $this->assertSame(array('1x', '2x'), $this->breakpoint->getMultipliers());
+    $this->assertSame(['1x', '2x'], $this->breakpoint->getMultipliers());
   }
 
   /**
diff --git a/core/modules/ckeditor/ckeditor.admin.inc b/core/modules/ckeditor/ckeditor.admin.inc
index 14b2fd7..8a8f68c 100644
--- a/core/modules/ckeditor/ckeditor.admin.inc
+++ b/core/modules/ckeditor/ckeditor.admin.inc
@@ -29,8 +29,8 @@ function template_preprocess_ckeditor_settings_toolbar(&$variables) {
   // Create lists of active and disabled buttons.
   $editor = $variables['editor'];
   $plugins = $variables['plugins'];
-  $buttons = array();
-  $multiple_buttons = array();
+  $buttons = [];
+  $multiple_buttons = [];
   foreach ($plugins as $plugin_buttons) {
     foreach ($plugin_buttons as $button_name => $button) {
       $button['name'] = $button_name;
@@ -40,11 +40,11 @@ function template_preprocess_ckeditor_settings_toolbar(&$variables) {
       $buttons[$button_name] = $button;
     }
   }
-  $button_groups = array();
-  $active_buttons = array();
+  $button_groups = [];
+  $active_buttons = [];
   $settings = $editor->getSettings();
   foreach ($settings['toolbar']['rows'] as $row_number => $row) {
-    $button_groups[$row_number] = array();
+    $button_groups[$row_number] = [];
     foreach ($row as $group) {
       foreach ($group['items'] as $button_name) {
         if (isset($buttons[$button_name])) {
@@ -75,31 +75,31 @@ function template_preprocess_ckeditor_settings_toolbar(&$variables) {
       $value = $button['image_alternative'];
     }
     elseif (isset($button['image']) || isset($button['image' . $rtl])) {
-      $value = array(
+      $value = [
         '#theme' => 'image',
         '#uri' => isset($button['image' . $rtl]) ? $button['image' . $rtl] : $button['image'],
         '#title' => $button['label'],
         '#prefix' => '<a href="#" role="button" title="' . $button['label'] . '" aria-label="' . $button['label'] . '"><span class="cke_button_icon">',
         '#suffix' => '</span></a>',
-      );
+      ];
     }
     else {
       $value = '?';
     }
 
     // Build the button attributes.
-    $attributes = array(
+    $attributes = [
       'data-drupal-ckeditor-button-name' => $button['name'],
-    );
+    ];
     if (!empty($button['attributes'])) {
       $attributes = array_merge($attributes, $button['attributes']);
     }
 
     // Build the button item.
-    $button_item = array(
+    $button_item = [
       'value' => $value,
       'attributes' => new Attribute($attributes),
-    );
+    ];
     // If this button has group information, add it to the attributes.
     if (!empty($button['group'])) {
       $button_item['group'] = $button['group'];
@@ -114,14 +114,14 @@ function template_preprocess_ckeditor_settings_toolbar(&$variables) {
   };
 
   // Assemble list of disabled buttons (which are always a single row).
-  $variables['active_buttons'] = array();
+  $variables['active_buttons'] = [];
   foreach ($active_buttons as $row_number => $button_row) {
     foreach ($button_groups[$row_number] as $group_name) {
       $group_name = (string) $group_name;
-      $variables['active_buttons'][$row_number][$group_name] = array(
+      $variables['active_buttons'][$row_number][$group_name] = [
         'group_name_class' => Html::getClass($group_name),
-        'buttons' => array(),
-      );
+        'buttons' => [],
+      ];
       $buttons = array_filter($button_row, function ($button) use ($group_name) {
         return (string) $button['group'] === $group_name;
       });
@@ -131,12 +131,12 @@ function template_preprocess_ckeditor_settings_toolbar(&$variables) {
     }
   }
   // Assemble list of disabled buttons (which are always a single row).
-  $variables['disabled_buttons'] = array();
+  $variables['disabled_buttons'] = [];
   foreach ($disabled_buttons as $button) {
     $variables['disabled_buttons'][] = $build_button_item($button, $rtl);
   }
   // Assemble list of multiple buttons that may be added multiple times.
-  $variables['multiple_buttons'] = array();
+  $variables['multiple_buttons'] = [];
   foreach ($multiple_buttons as $button) {
     $variables['multiple_buttons'][] = $build_button_item($button, $rtl);
   }
diff --git a/core/modules/ckeditor/ckeditor.module b/core/modules/ckeditor/ckeditor.module
index 115afe2..7905253 100644
--- a/core/modules/ckeditor/ckeditor.module
+++ b/core/modules/ckeditor/ckeditor.module
@@ -17,21 +17,21 @@ function ckeditor_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.ckeditor':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The CKEditor module provides a highly-accessible, highly-usable visual text editor and adds a toolbar to text fields. Users can use buttons to format content and to create semantically correct and valid HTML. The CKEditor module uses the framework provided by the <a href=":text_editor">Text Editor module</a>. It requires JavaScript to be enabled in the browser. For more information, see the <a href=":doc_url">online documentation for the CKEditor module</a> and the <a href=":cke_url">CKEditor website</a>.', array( ':doc_url' => 'https://www.drupal.org/documentation/modules/ckeditor', ':cke_url' => 'http://ckeditor.com', ':text_editor' => \Drupal::url('help.page', array('name' => 'editor')))) . '</p>';
+      $output .= '<p>' . t('The CKEditor module provides a highly-accessible, highly-usable visual text editor and adds a toolbar to text fields. Users can use buttons to format content and to create semantically correct and valid HTML. The CKEditor module uses the framework provided by the <a href=":text_editor">Text Editor module</a>. It requires JavaScript to be enabled in the browser. For more information, see the <a href=":doc_url">online documentation for the CKEditor module</a> and the <a href=":cke_url">CKEditor website</a>.', [ ':doc_url' => 'https://www.drupal.org/documentation/modules/ckeditor', ':cke_url' => 'http://ckeditor.com', ':text_editor' => \Drupal::url('help.page', ['name' => 'editor'])]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Enabling CKEditor for individual text formats') . '</dt>';
-      $output .= '<dd>' . t('CKEditor has to be enabled and configured separately for individual text formats from the <a href=":formats">Text formats and editors page</a> because the filter settings for each text format can be different. For more information, see the <a href=":text_editor">Text Editor help page</a> and <a href=":filter">Filter help page</a>.', array(':formats' => \Drupal::url('filter.admin_overview'), ':text_editor' => \Drupal::url('help.page', array('name' => 'editor')), ':filter' => \Drupal::url('help.page', array('name' => 'filter')))) . '</dd>';
+      $output .= '<dd>' . t('CKEditor has to be enabled and configured separately for individual text formats from the <a href=":formats">Text formats and editors page</a> because the filter settings for each text format can be different. For more information, see the <a href=":text_editor">Text Editor help page</a> and <a href=":filter">Filter help page</a>.', [':formats' => \Drupal::url('filter.admin_overview'), ':text_editor' => \Drupal::url('help.page', ['name' => 'editor']), ':filter' => \Drupal::url('help.page', ['name' => 'filter'])]) . '</dd>';
       $output .= '<dt>' . t('Configuring the toolbar') . '</dt>';
       $output .= '<dd>' . t('When CKEditor is chosen from the <em>Text editor</em> drop-down menu, its toolbar configuration is displayed. You can add and remove buttons from the <em>Active toolbar</em> by dragging and dropping them, and additional rows can be added to organize the buttons.') . '</dd>';
       $output .= '<dt>' . t('Formatting content') . '</dt>';
-      $output .= '<dd>' . t('CKEditor only allow users to format content in accordance with the filter configuration of the specific text format. If a text format excludes certain HTML tags, the corresponding toolbar buttons are not displayed to users when they edit a text field in this format. For more information see the <a href=":filter">Filter help page</a>.', array(':filter' => \Drupal::url('help.page', array('name' => 'filter')))) . '</dd>';
+      $output .= '<dd>' . t('CKEditor only allow users to format content in accordance with the filter configuration of the specific text format. If a text format excludes certain HTML tags, the corresponding toolbar buttons are not displayed to users when they edit a text field in this format. For more information see the <a href=":filter">Filter help page</a>.', [':filter' => \Drupal::url('help.page', ['name' => 'filter'])]) . '</dd>';
       $output .= '<dt>' . t('Toggling between formatted text and HTML source') . '</dt>';
       $output .= '<dd>' . t('If the <em>Source</em> button is available in the toolbar, users can click this button to disable the visual editor and edit the HTML source directly. After toggling back, the visual editor uses the allowed HTML tags to format the text — independent of whether buttons for these tags are available in the toolbar. If the text format is set to <em>limit the use of HTML tags</em>, then all excluded tags will be stripped out of the HTML source when the user toggles back to the text editor.') . '</dd>';
       $output .= '<dt>' . t('Check my spelling as I type') . '</dt>';
       $output .= '<dd>' . t('By default, CKEditor is configured to leverage your browser\'s spell check capability. Make sure your browser\'s spell checker is enabled in your browser\'s settings. To access suggested corrections for misspelled words, it may be necessary to hold the <em>Control</em> or <em>command</em> (Mac) key while right-clicking the misspelling.') . '</dd>';
       $output .= '<dt>' . t('Accessibility features') . '</dt>';
-      $output .= '<dd>' . t('The built in WYSIWYG editor (CKEditor) comes with a number of <a href=":features">accessibility features</a>. CKEditor comes with built in <a href=":shortcuts">keyboard shortcuts</a>, which can be beneficial for both power users and keyboard only users.', array(':features' => 'http://docs.ckeditor.com/#!/guide/dev_a11y', ':shortcuts' => 'http://docs.ckeditor.com/#!/guide/dev_shortcuts')) . '</dd>';
+      $output .= '<dd>' . t('The built in WYSIWYG editor (CKEditor) comes with a number of <a href=":features">accessibility features</a>. CKEditor comes with built in <a href=":shortcuts">keyboard shortcuts</a>, which can be beneficial for both power users and keyboard only users.', [':features' => 'http://docs.ckeditor.com/#!/guide/dev_a11y', ':shortcuts' => 'http://docs.ckeditor.com/#!/guide/dev_shortcuts']) . '</dd>';
       $output .= '<dt>' . t('Generating accessible content') . '</dt>';
       $output .= '<dd>' . t('HTML tables can be created with both table headers as well as caption/summary elements. Alt text is required by default on images added through CKEditor (note that this can be overridden). Semantic HTML5 figure/figcaption are available to add captions to images.') . '</dd>';
       $output .= '</dl>';
@@ -43,12 +43,12 @@ function ckeditor_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function ckeditor_theme() {
-  return array(
-    'ckeditor_settings_toolbar' => array(
+  return [
+    'ckeditor_settings_toolbar' => [
       'file' => 'ckeditor.admin.inc',
-      'variables' => array('editor' => NULL, 'plugins' => NULL),
-    ),
-  );
+      'variables' => ['editor' => NULL, 'plugins' => NULL],
+    ],
+  ];
 }
 
 /**
@@ -79,7 +79,7 @@ function ckeditor_ckeditor_css_alter(array &$css, Editor $editor) {
  * @endcode
  */
 function _ckeditor_theme_css($theme = NULL) {
-  $css = array();
+  $css = [];
   if (!isset($theme)) {
     $theme = \Drupal::config('system.theme')->get('default');
   }
diff --git a/core/modules/ckeditor/src/CKEditorPluginBase.php b/core/modules/ckeditor/src/CKEditorPluginBase.php
index 2fb4798..99f2663 100644
--- a/core/modules/ckeditor/src/CKEditorPluginBase.php
+++ b/core/modules/ckeditor/src/CKEditorPluginBase.php
@@ -41,14 +41,14 @@ function isInternal() {
    * {@inheritdoc}
    */
   function getDependencies(Editor $editor) {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   function getLibraries(Editor $editor) {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/ckeditor/src/CKEditorPluginManager.php b/core/modules/ckeditor/src/CKEditorPluginManager.php
index dd3315a..735cfa6 100644
--- a/core/modules/ckeditor/src/CKEditorPluginManager.php
+++ b/core/modules/ckeditor/src/CKEditorPluginManager.php
@@ -68,8 +68,8 @@ public function __construct(\Traversable $namespaces, CacheBackendInterface $cac
   public function getEnabledPluginFiles(Editor $editor, $include_internal_plugins = FALSE) {
     $plugins = array_keys($this->getDefinitions());
     $toolbar_buttons = $this->getEnabledButtons($editor);
-    $enabled_plugins = array();
-    $additional_plugins = array();
+    $enabled_plugins = [];
+    $additional_plugins = [];
 
     foreach ($plugins as $plugin_id) {
       $plugin = $this->createInstance($plugin_id);
@@ -139,7 +139,7 @@ public static function getEnabledButtons(Editor $editor) {
    */
   public function getButtons() {
     $plugins = array_keys($this->getDefinitions());
-    $buttons_plugins = array();
+    $buttons_plugins = [];
 
     foreach ($plugins as $plugin_id) {
       $plugin = $this->createInstance($plugin_id);
@@ -167,16 +167,16 @@ public function injectPluginSettingsForm(array &$form, FormStateInterface $form_
     foreach (array_keys($definitions) as $plugin_id) {
       $plugin = $this->createInstance($plugin_id);
       if ($plugin instanceof CKEditorPluginConfigurableInterface) {
-        $plugin_settings_form = array();
-        $form['plugins'][$plugin_id] = array(
+        $plugin_settings_form = [];
+        $form['plugins'][$plugin_id] = [
           '#type' => 'details',
           '#title' => $definitions[$plugin_id]['label'],
           '#open' => TRUE,
           '#group' => 'editor][settings][plugin_settings',
-          '#attributes' => array(
+          '#attributes' => [
             'data-ckeditor-plugin-id' => $plugin_id,
-          ),
-        );
+          ],
+        ];
         // Provide enough metadata for the drupal.ckeditor.admin library to
         // allow it to automatically show/hide the vertical tab containing the
         // settings for this plugin. Only do this if it's a CKEditor plugin that
@@ -206,7 +206,7 @@ public function injectPluginSettingsForm(array &$form, FormStateInterface $form_
    */
   public function getCssFiles(Editor $editor) {
     $enabled_plugins = array_keys($this->getEnabledPluginFiles($editor, TRUE));
-    $css_files = array();
+    $css_files = [];
 
     foreach ($enabled_plugins as $plugin_id) {
       $plugin = $this->createInstance($plugin_id);
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImage.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImage.php
index 8529adb..90d4eae 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImage.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImage.php
@@ -29,31 +29,31 @@ public function getFile() {
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    return array(
+    return [
       'core/drupal.ajax',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getConfig(Editor $editor) {
-    return array(
+    return [
       'drupalImage_dialogTitleAdd' => $this->t('Insert Image'),
       'drupalImage_dialogTitleEdit' => $this->t('Edit Image'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getButtons() {
-    return array(
-      'DrupalImage' => array(
+    return [
+      'DrupalImage' => [
         'label' => $this->t('Image'),
         'image' => drupal_get_path('module', 'ckeditor') . '/js/plugins/drupalimage/icons/drupalimage.png',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -66,7 +66,7 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
     $form_state->loadInclude('editor', 'admin.inc');
     $form['image_upload'] = editor_image_upload_settings_form($editor);
     $form['image_upload']['#attached']['library'][] = 'ckeditor/drupal.ckeditor.drupalimage.admin';
-    $form['image_upload']['#element_validate'][] = array($this, 'validateImageUploadSettings');
+    $form['image_upload']['#element_validate'][] = [$this, 'validateImageUploadSettings'];
     return $form;
   }
 
@@ -80,9 +80,9 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
    * @see editor_image_upload_settings_form()
    */
   function validateImageUploadSettings(array $element, FormStateInterface $form_state) {
-    $settings = &$form_state->getValue(array('editor', 'settings', 'plugins', 'drupalimage', 'image_upload'));
+    $settings = &$form_state->getValue(['editor', 'settings', 'plugins', 'drupalimage', 'image_upload']);
     $form_state->get('editor')->setImageUploadSettings($settings);
-    $form_state->unsetValue(array('editor', 'settings', 'plugins', 'drupalimage'));
+    $form_state->unsetValue(['editor', 'settings', 'plugins', 'drupalimage']);
   }
 
 }
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImageCaption.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImageCaption.php
index 16c3759..4241c3c 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImageCaption.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalImageCaption.php
@@ -30,16 +30,16 @@ public function isInternal() {
    * {@inheritdoc}
    */
   public function getDependencies(Editor $editor) {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    return array(
+    return [
       'ckeditor/drupal.ckeditor.plugins.drupalimagecaption',
-    );
+    ];
   }
 
   /**
@@ -54,24 +54,24 @@ public function getFile() {
    */
   public function getConfig(Editor $editor) {
     $format = $editor->getFilterFormat();
-    return array(
+    return [
       'image2_captionedClass' => 'caption caption-img',
-      'image2_alignClasses' => array('align-left', 'align-center', 'align-right'),
+      'image2_alignClasses' => ['align-left', 'align-center', 'align-right'],
       'drupalImageCaption_captionPlaceholderText' => $this->t('Enter caption here'),
       // Only enable those parts of DrupalImageCaption for which the
       // corresponding Drupal text filters are enabled.
       'drupalImageCaption_captionFilterEnabled' => $format->filters('filter_caption')->status,
       'drupalImageCaption_alignFilterEnabled' => $format->filters('filter_align')->status,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getCssFiles(Editor $editor) {
-    return array(
+    return [
       drupal_get_path('module', 'ckeditor') . '/css/plugins/drupalimagecaption/ckeditor.drupalimagecaption.css'
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalLink.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalLink.php
index f347ebf..a6363f6 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalLink.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/DrupalLink.php
@@ -27,19 +27,19 @@ public function getFile() {
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    return array(
+    return [
       'core/drupal.ajax',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getConfig(Editor $editor) {
-    return array(
+    return [
       'drupalLink_dialogTitleAdd' => $this->t('Add Link'),
       'drupalLink_dialogTitleEdit' => $this->t('Edit Link'),
-    );
+    ];
   }
 
   /**
@@ -47,16 +47,16 @@ public function getConfig(Editor $editor) {
    */
   public function getButtons() {
     $path = drupal_get_path('module', 'ckeditor') . '/js/plugins/drupallink';
-    return array(
-      'DrupalLink' => array(
+    return [
+      'DrupalLink' => [
         'label' => $this->t('Link'),
         'image' => $path . '/icons/drupallink.png',
-      ),
-      'DrupalUnlink' => array(
+      ],
+      'DrupalUnlink' => [
         'label' => $this->t('Unlink'),
         'image' => $path . '/icons/drupalunlink.png',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php
index 5011282..9a04ce7 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Internal.php
@@ -100,14 +100,14 @@ public function getFile() {
    */
   public function getConfig(Editor $editor) {
     // Reasonable defaults that provide expected basic behavior.
-    $config = array(
+    $config = [
       'customConfig' => '', // Don't load CKEditor's config.js file.
       'pasteFromWordPromptCleanup' => TRUE,
       'resize_dir' => 'vertical',
-      'justifyClasses' => array('text-align-left', 'text-align-center', 'text-align-right', 'text-align-justify'),
+      'justifyClasses' => ['text-align-left', 'text-align-center', 'text-align-right', 'text-align-justify'],
       'entities' => FALSE,
       'disableNativeSpellChecker' => FALSE,
-    );
+    ];
 
     // Add the allowedContent setting, which ensures CKEditor only allows tags
     // and attributes that are allowed by the text format for this text editor.
@@ -144,145 +144,145 @@ public function getButtons() {
       ];
     };
 
-    return array(
+    return [
       // "basicstyles" plugin.
-      'Bold' => array(
+      'Bold' => [
         'label' => $this->t('Bold'),
         'image_alternative' => $button('bold'),
         'image_alternative_rtl' => $button('bold', 'rtl'),
-      ),
-      'Italic' => array(
+      ],
+      'Italic' => [
         'label' => $this->t('Italic'),
         'image_alternative' => $button('italic'),
         'image_alternative_rtl' => $button('italic', 'rtl'),
-      ),
-      'Underline' => array(
+      ],
+      'Underline' => [
         'label' => $this->t('Underline'),
         'image_alternative' => $button('underline'),
         'image_alternative_rtl' => $button('underline', 'rtl'),
-      ),
-      'Strike' => array(
+      ],
+      'Strike' => [
         'label' => $this->t('Strike-through'),
         'image_alternative' => $button('strike'),
         'image_alternative_rtl' => $button('strike', 'rtl'),
-      ),
-      'Superscript' => array(
+      ],
+      'Superscript' => [
         'label' => $this->t('Superscript'),
         'image_alternative' => $button('super script'),
         'image_alternative_rtl' => $button('super script', 'rtl'),
-      ),
-      'Subscript' => array(
+      ],
+      'Subscript' => [
         'label' => $this->t('Subscript'),
         'image_alternative' => $button('sub script'),
         'image_alternative_rtl' => $button('sub script', 'rtl'),
-      ),
+      ],
       // "removeformat" plugin.
-      'RemoveFormat' => array(
+      'RemoveFormat' => [
         'label' => $this->t('Remove format'),
         'image_alternative' => $button('remove format'),
         'image_alternative_rtl' => $button('remove format', 'rtl'),
-      ),
+      ],
       // "justify" plugin.
-      'JustifyLeft' => array(
+      'JustifyLeft' => [
         'label' => $this->t('Align left'),
         'image_alternative' => $button('justify left'),
         'image_alternative_rtl' => $button('justify left', 'rtl'),
-      ),
-      'JustifyCenter' => array(
+      ],
+      'JustifyCenter' => [
         'label' => $this->t('Align center'),
         'image_alternative' => $button('justify center'),
         'image_alternative_rtl' => $button('justify center', 'rtl'),
-      ),
-      'JustifyRight' => array(
+      ],
+      'JustifyRight' => [
         'label' => $this->t('Align right'),
         'image_alternative' => $button('justify right'),
         'image_alternative_rtl' => $button('justify right', 'rtl'),
-      ),
-      'JustifyBlock' => array(
+      ],
+      'JustifyBlock' => [
         'label' => $this->t('Justify'),
         'image_alternative' => $button('justify block'),
         'image_alternative_rtl' => $button('justify block', 'rtl'),
-      ),
+      ],
       // "list" plugin.
-      'BulletedList' => array(
+      'BulletedList' => [
         'label' => $this->t('Bullet list'),
         'image_alternative' => $button('bulleted list'),
         'image_alternative_rtl' => $button('bulleted list', 'rtl'),
-      ),
-      'NumberedList' => array(
+      ],
+      'NumberedList' => [
         'label' => $this->t('Numbered list'),
         'image_alternative' => $button('numbered list'),
         'image_alternative_rtl' => $button('numbered list', 'rtl'),
-      ),
+      ],
       // "indent" plugin.
-      'Outdent' => array(
+      'Outdent' => [
         'label' => $this->t('Outdent'),
         'image_alternative' => $button('outdent'),
         'image_alternative_rtl' => $button('outdent', 'rtl'),
-      ),
-      'Indent' => array(
+      ],
+      'Indent' => [
         'label' => $this->t('Indent'),
         'image_alternative' => $button('indent'),
         'image_alternative_rtl' => $button('indent', 'rtl'),
-      ),
+      ],
       // "undo" plugin.
-      'Undo' => array(
+      'Undo' => [
         'label' => $this->t('Undo'),
         'image_alternative' => $button('undo'),
         'image_alternative_rtl' => $button('undo', 'rtl'),
-      ),
-      'Redo' => array(
+      ],
+      'Redo' => [
         'label' => $this->t('Redo'),
         'image_alternative' => $button('redo'),
         'image_alternative_rtl' => $button('redo', 'rtl'),
-      ),
+      ],
       // "blockquote" plugin.
-      'Blockquote' => array(
+      'Blockquote' => [
         'label' => $this->t('Blockquote'),
         'image_alternative' => $button('blockquote'),
         'image_alternative_rtl' => $button('blockquote', 'rtl'),
-      ),
+      ],
       // "horizontalrule" plugin
-      'HorizontalRule' => array(
+      'HorizontalRule' => [
         'label' => $this->t('Horizontal rule'),
         'image_alternative' => $button('horizontal rule'),
         'image_alternative_rtl' => $button('horizontal rule', 'rtl'),
-      ),
+      ],
       // "clipboard" plugin.
-      'Cut' => array(
+      'Cut' => [
         'label' => $this->t('Cut'),
         'image_alternative' => $button('cut'),
         'image_alternative_rtl' => $button('cut', 'rtl'),
-      ),
-      'Copy' => array(
+      ],
+      'Copy' => [
         'label' => $this->t('Copy'),
         'image_alternative' => $button('copy'),
         'image_alternative_rtl' => $button('copy', 'rtl'),
-      ),
-      'Paste' => array(
+      ],
+      'Paste' => [
         'label' => $this->t('Paste'),
         'image_alternative' => $button('paste'),
         'image_alternative_rtl' => $button('paste', 'rtl'),
-      ),
+      ],
       // "pastetext" plugin.
-      'PasteText' => array(
+      'PasteText' => [
         'label' => $this->t('Paste Text'),
         'image_alternative' => $button('paste text'),
         'image_alternative_rtl' => $button('paste text', 'rtl'),
-      ),
+      ],
       // "pastefromword" plugin.
-      'PasteFromWord' => array(
+      'PasteFromWord' => [
         'label' => $this->t('Paste from Word'),
         'image_alternative' => $button('paste from word'),
         'image_alternative_rtl' => $button('paste from word', 'rtl'),
-      ),
+      ],
       // "specialchar" plugin.
-      'SpecialChar' => array(
+      'SpecialChar' => [
         'label' => $this->t('Character map'),
         'image_alternative' => $button('special char'),
         'image_alternative_rtl' => $button('special char', 'rtl'),
-      ),
-      'Format' => array(
+      ],
+      'Format' => [
         'label' => $this->t('HTML block format'),
         'image_alternative' => [
           '#type' => 'inline_template',
@@ -291,33 +291,33 @@ public function getButtons() {
             'format_text' => $this->t('Format'),
           ],
         ],
-      ),
+      ],
       // "table" plugin.
-      'Table' => array(
+      'Table' => [
         'label' => $this->t('Table'),
         'image_alternative' => $button('table'),
         'image_alternative_rtl' => $button('table', 'rtl'),
-      ),
+      ],
       // "showblocks" plugin.
-      'ShowBlocks' => array(
+      'ShowBlocks' => [
         'label' => $this->t('Show blocks'),
         'image_alternative' => $button('show blocks'),
         'image_alternative_rtl' => $button('show blocks', 'rtl'),
-      ),
+      ],
       // "sourcearea" plugin.
-      'Source' => array(
+      'Source' => [
         'label' => $this->t('Source code'),
         'image_alternative' => $button('source'),
         'image_alternative_rtl' => $button('source', 'rtl'),
-      ),
+      ],
       // "maximize" plugin.
-      'Maximize' => array(
+      'Maximize' => [
         'label' => $this->t('Maximize'),
         'image_alternative' => $button('maximize'),
         'image_alternative_rtl' => $button('maximize', 'rtl'),
-      ),
+      ],
       // No plugin, separator "button" for toolbar builder UI use only.
-      '-' => array(
+      '-' => [
         'label' => $this->t('Separator'),
         'image_alternative' => [
           '#type' => 'inline_template',
@@ -326,13 +326,13 @@ public function getButtons() {
             'button_separator_text' => $this->t('Button separator'),
           ],
         ],
-        'attributes' => array(
-          'class' => array('ckeditor-button-separator'),
+        'attributes' => [
+          'class' => ['ckeditor-button-separator'],
           'data-drupal-ckeditor-type' => 'separator',
-        ),
+        ],
         'multiple' => TRUE,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -350,7 +350,7 @@ protected function generateFormatTagsSetting(Editor $editor) {
     // When no text format is associated yet, assume no tag is allowed.
     // @see \Drupal\Editor\EditorInterface::hasAssociatedFilterFormat()
     if (!$editor->hasAssociatedFilterFormat()) {
-      return array();
+      return [];
     }
 
     $format = $editor->getFilterFormat();
@@ -416,7 +416,7 @@ protected function generateACFSettings(Editor $editor) {
 
     // When nothing is disallowed, set allowedContent to true.
     if (!in_array(FilterInterface::TYPE_HTML_RESTRICTOR, $filter_types)) {
-      return array(TRUE, FALSE);
+      return [TRUE, FALSE];
     }
     // Generate setting that accurately reflects allowed tags and attributes.
     else {
@@ -441,10 +441,10 @@ protected function generateACFSettings(Editor $editor) {
       // When all HTML is allowed, also set allowedContent to true and
       // disallowedContent to false.
       if ($html_restrictions === FALSE) {
-        return array(TRUE, FALSE);
+        return [TRUE, FALSE];
       }
-      $allowed = array();
-      $disallowed = array();
+      $allowed = [];
+      $disallowed = [];
       if (isset($html_restrictions['forbidden_tags'])) {
         foreach ($html_restrictions['forbidden_tags'] as $tag) {
           $disallowed[$tag] = TRUE;
@@ -453,11 +453,11 @@ protected function generateACFSettings(Editor $editor) {
       foreach ($html_restrictions['allowed'] as $tag => $attributes) {
         // Tell CKEditor the tag is allowed, but no attributes.
         if ($attributes === FALSE) {
-          $allowed[$tag] = array(
+          $allowed[$tag] = [
             'attributes' => FALSE,
             'styles' => FALSE,
             'classes' => FALSE,
-          );
+          ];
         }
         // Tell CKEditor the tag is allowed, as well as any attribute on it. The
         // "style" and "class" attributes are handled separately by CKEditor:
@@ -465,11 +465,11 @@ protected function generateACFSettings(Editor $editor) {
         // attributes, unless you state specific values for them that are
         // allowed. Or, in this case: any value for them is allowed.
         elseif ($attributes === TRUE) {
-          $allowed[$tag] = array(
+          $allowed[$tag] = [
             'attributes' => TRUE,
             'styles' => TRUE,
             'classes' => TRUE,
-          );
+          ];
           // We've just marked that any value for the "style" and "class"
           // attributes is allowed. However, that may not be the case: the "*"
           // tag may still apply restrictions.
@@ -518,11 +518,11 @@ protected function generateACFSettings(Editor $editor) {
         elseif (is_array($attributes)) {
           // Set defaults (these will be overridden below if more specific
           // values are present).
-          $allowed[$tag] = array(
+          $allowed[$tag] = [
             'attributes' => FALSE,
             'styles' => FALSE,
             'classes' => FALSE,
-          );
+          ];
           // Configure allowed attributes, allowed "style" attribute values and
           // allowed "class" attribute values.
           // CKEditor only allows specific values for the "class" and "style"
@@ -600,7 +600,7 @@ protected function generateACFSettings(Editor $editor) {
       ksort($allowed);
       ksort($disallowed);
 
-      return array($allowed, $disallowed);
+      return [$allowed, $disallowed];
     }
   }
 
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Language.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Language.php
index 980d5e9..31ce08f 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Language.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/Language.php
@@ -104,7 +104,7 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
     }
 
     $predefined_languages = LanguageManager::getStandardLanguageList();
-    $form['language_list'] = array(
+    $form['language_list'] = [
       '#title' => $this->t('Language list'),
       '#title_display' => 'invisible',
       '#type' => 'select',
@@ -118,7 +118,7 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
         '@count' => count($predefined_languages),
       ]),
       '#attached' => ['library' => ['ckeditor/drupal.ckeditor.language.admin']],
-    );
+    ];
 
     return $form;
   }
@@ -127,9 +127,9 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
    * {@inheritdoc}
    */
   function getCssFiles(Editor $editor) {
-    return array(
+    return [
         drupal_get_path('module', 'ckeditor') . '/css/plugins/language/ckeditor.language.css'
-    );
+    ];
   }
 
 }
diff --git a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
index 9c4f224..7b3386e 100644
--- a/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
+++ b/core/modules/ckeditor/src/Plugin/CKEditorPlugin/StylesCombo.php
@@ -36,7 +36,7 @@ public function getFile() {
    * {@inheritdoc}
    */
   public function getConfig(Editor $editor) {
-    $config = array();
+    $config = [];
     $settings = $editor->getSettings();
     if (!isset($settings['plugins']['stylescombo']['styles'])) {
       return $config;
@@ -50,8 +50,8 @@ public function getConfig(Editor $editor) {
    * {@inheritdoc}
    */
   public function getButtons() {
-    return array(
-      'Styles' => array(
+    return [
+      'Styles' => [
         'label' => $this->t('Font style'),
         'image_alternative' => [
           '#type' => 'inline_template',
@@ -60,8 +60,8 @@ public function getButtons() {
             'styles_text' => $this->t('Styles'),
           ],
         ],
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -69,25 +69,25 @@ public function getButtons() {
    */
   public function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
     // Defaults.
-    $config = array('styles' => '');
+    $config = ['styles' => ''];
     $settings = $editor->getSettings();
     if (isset($settings['plugins']['stylescombo'])) {
       $config = $settings['plugins']['stylescombo'];
     }
 
-    $form['styles'] = array(
+    $form['styles'] = [
       '#title' => $this->t('Styles'),
       '#title_display' => 'invisible',
       '#type' => 'textarea',
       '#default_value' => $config['styles'],
       '#description' => $this->t('A list of classes that will be provided in the "Styles" dropdown. Enter one or more classes on each line in the format: element.classA.classB|Label. Example: h1.title|Title. Advanced example: h1.fancy.title|Fancy title.<br />These styles should be available in your theme\'s CSS file.'),
-      '#attached' => array(
-        'library' => array('ckeditor/drupal.ckeditor.stylescombo.admin'),
-      ),
-      '#element_validate' => array(
-        array($this, 'validateStylesValue'),
-      ),
-    );
+      '#attached' => [
+        'library' => ['ckeditor/drupal.ckeditor.stylescombo.admin'],
+      ],
+      '#element_validate' => [
+        [$this, 'validateStylesValue'],
+      ],
+    ];
 
     return $form;
   }
@@ -120,7 +120,7 @@ public function validateStylesValue(array $element, FormStateInterface $form_sta
    *   syntax is invalid.
    */
   protected function generateStylesSetSetting($styles) {
-    $styles_set = array();
+    $styles_set = [];
 
     // Early-return when empty.
     $styles = trim($styles);
@@ -128,7 +128,7 @@ protected function generateStylesSetSetting($styles) {
       return $styles_set;
     }
 
-    $styles = str_replace(array("\r\n", "\r"), "\n", $styles);
+    $styles = str_replace(["\r\n", "\r"], "\n", $styles);
     foreach (explode("\n", $styles) as $style) {
       $style = trim($style);
 
@@ -149,14 +149,14 @@ protected function generateStylesSetSetting($styles) {
 
       // Build the data structure CKEditor's stylescombo plugin expects.
       // @see http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Styles
-      $configured_style = array(
+      $configured_style = [
         'name' => trim($label),
         'element' => trim($element),
-      );
+      ];
       if (!empty($classes)) {
-        $configured_style['attributes'] = array(
+        $configured_style['attributes'] = [
           'class' => implode(' ', array_map('trim', $classes))
-        );
+        ];
       }
       $styles_set[] = $configured_style;
     }
diff --git a/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php b/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php
index ba054a6..d3a7f6b 100644
--- a/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php
+++ b/core/modules/ckeditor/src/Plugin/Editor/CKEditor.php
@@ -102,36 +102,36 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function getDefaultSettings() {
-    return array(
-      'toolbar' => array(
-        'rows' => array(
+    return [
+      'toolbar' => [
+        'rows' => [
           // Button groups.
-          array(
-            array(
+          [
+            [
               'name' => $this->t('Formatting'),
-              'items' => array('Bold', 'Italic',),
-            ),
-            array(
+              'items' => ['Bold', 'Italic',],
+            ],
+            [
               'name' => $this->t('Links'),
-              'items' => array('DrupalLink', 'DrupalUnlink',),
-            ),
-            array(
+              'items' => ['DrupalLink', 'DrupalUnlink',],
+            ],
+            [
               'name' => $this->t('Lists'),
-              'items' => array('BulletedList', 'NumberedList',),
-            ),
-            array(
+              'items' => ['BulletedList', 'NumberedList',],
+            ],
+            [
               'name' => $this->t('Media'),
-              'items' => array('Blockquote', 'DrupalImage',),
-            ),
-            array(
+              'items' => ['Blockquote', 'DrupalImage',],
+            ],
+            [
               'name' => $this->t('Tools'),
-              'items' => array('Source',),
-            ),
-          ),
-        ),
-      ),
+              'items' => ['Source',],
+            ],
+          ],
+        ],
+      ],
       'plugins' => ['language' => ['language_list' => 'un']],
-    );
+    ];
   }
 
   /**
@@ -140,39 +140,39 @@ public function getDefaultSettings() {
   public function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
     $settings = $editor->getSettings();
 
-    $ckeditor_settings_toolbar = array(
+    $ckeditor_settings_toolbar = [
       '#theme' => 'ckeditor_settings_toolbar',
       '#editor' => $editor,
       '#plugins' => $this->ckeditorPluginManager->getButtons(),
-    );
-    $form['toolbar'] = array(
+    ];
+    $form['toolbar'] = [
       '#type' => 'container',
-      '#attached' => array(
-        'library' => array('ckeditor/drupal.ckeditor.admin'),
+      '#attached' => [
+        'library' => ['ckeditor/drupal.ckeditor.admin'],
         'drupalSettings' => [
           'ckeditor' => [
             'toolbarAdmin' => (string) $this->renderer->renderPlain($ckeditor_settings_toolbar),
           ],
         ],
-      ),
-      '#attributes' => array('class' => array('ckeditor-toolbar-configuration')),
-    );
+      ],
+      '#attributes' => ['class' => ['ckeditor-toolbar-configuration']],
+    ];
 
-    $form['toolbar']['button_groups'] = array(
+    $form['toolbar']['button_groups'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Toolbar buttons'),
       '#default_value' => json_encode($settings['toolbar']['rows']),
-      '#attributes' => array('class' => array('ckeditor-toolbar-textarea')),
-    );
+      '#attributes' => ['class' => ['ckeditor-toolbar-textarea']],
+    ];
 
     // CKEditor plugin settings, if any.
-    $form['plugin_settings'] = array(
+    $form['plugin_settings'] = [
       '#type' => 'vertical_tabs',
       '#title' => $this->t('CKEditor plugin settings'),
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'ckeditor-plugin-settings',
-      ),
-    );
+      ],
+    ];
     $this->ckeditorPluginManager->injectPluginSettingsForm($form, $form_state, $editor);
     if (count(Element::children($form['plugins'])) === 0) {
       unset($form['plugins']);
@@ -186,7 +186,7 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
     // settings to be updated accordingly.
     // Get a list of all external plugins and their corresponding files.
     $plugins = array_keys($this->ckeditorPluginManager->getDefinitions());
-    $all_external_plugins = array();
+    $all_external_plugins = [];
     foreach ($plugins as $plugin_id) {
       $plugin = $this->ckeditorPluginManager->createInstance($plugin_id);
       if (!$plugin->isInternal()) {
@@ -196,37 +196,37 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
     // Get a list of all buttons that are provided by all plugins.
     $all_buttons = array_reduce($this->ckeditorPluginManager->getButtons(), function($result, $item) {
       return array_merge($result, array_keys($item));
-    }, array());
+    }, []);
     // Build a fake Editor object, which we'll use to generate JavaScript
     // settings for this fake Editor instance.
-    $fake_editor = Editor::create(array(
+    $fake_editor = Editor::create([
       'format' => $editor->id(),
       'editor' => 'ckeditor',
-      'settings' => array(
+      'settings' => [
         // Single toolbar row, single button group, all existing buttons.
-        'toolbar' => array(
-         'rows' => array(
-           0 => array(
-             0 => array(
+        'toolbar' => [
+         'rows' => [
+           0 => [
+             0 => [
                'name' => 'All existing buttons',
                'items' => $all_buttons,
-             )
-           )
-         ),
-        ),
+             ]
+           ]
+         ],
+        ],
         'plugins' => $settings['plugins'],
-      ),
-    ));
+      ],
+    ]);
     $config = $this->getJSSettings($fake_editor);
     // Remove the ACF configuration that is generated based on filter settings,
     // because otherwise we cannot retrieve per-feature metadata.
     unset($config['allowedContent']);
-    $form['hidden_ckeditor'] = array(
+    $form['hidden_ckeditor'] = [
       '#markup' => '<div id="ckeditor-hidden" class="hidden"></div>',
-      '#attached' => array(
+      '#attached' => [
         'drupalSettings' => ['ckeditor' => ['hiddenCKEditorConfig' => $config]],
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
@@ -238,7 +238,7 @@ public function settingsFormSubmit(array $form, FormStateInterface $form_state)
     // Modify the toolbar settings by reference. The values in
     // $form_state->getValue(array('editor', 'settings')) will be saved directly
     // by editor_form_filter_admin_format_submit().
-    $toolbar_settings = &$form_state->getValue(array('editor', 'settings', 'toolbar'));
+    $toolbar_settings = &$form_state->getValue(['editor', 'settings', 'toolbar']);
 
     // The rows key is not built into the form structure, so decode the button
     // groups data into this new key and remove the button_groups key.
@@ -246,8 +246,8 @@ public function settingsFormSubmit(array $form, FormStateInterface $form_state)
     unset($toolbar_settings['button_groups']);
 
     // Remove the plugin settings' vertical tabs state; no need to save that.
-    if ($form_state->hasValue(array('editor', 'settings', 'plugins'))) {
-      $form_state->unsetValue(array('editor', 'settings', 'plugin_settings'));
+    if ($form_state->hasValue(['editor', 'settings', 'plugins'])) {
+      $form_state->unsetValue(['editor', 'settings', 'plugin_settings']);
     }
   }
 
@@ -255,7 +255,7 @@ public function settingsFormSubmit(array $form, FormStateInterface $form_state)
    * {@inheritdoc}
    */
   public function getJSSettings(Editor $editor) {
-    $settings = array();
+    $settings = [];
 
     // Get the settings for all enabled plugins, even the internal ones.
     $enabled_plugins = array_keys($this->ckeditorPluginManager->getEnabledPluginFiles($editor, TRUE));
@@ -279,7 +279,7 @@ public function getJSSettings(Editor $editor) {
 
     // Next, set the most fundamental CKEditor settings.
     $external_plugin_files = $this->ckeditorPluginManager->getEnabledPluginFiles($editor);
-    $settings += array(
+    $settings += [
       'toolbar' => $this->buildToolbarJSSetting($editor),
       'contentsCss' => $this->buildContentsCssJSSetting($editor),
       'extraPlugins' => implode(',', array_keys($external_plugin_files)),
@@ -290,15 +290,15 @@ public function getJSSettings(Editor $editor) {
       // styles.js by default.
       // See http://dev.ckeditor.com/ticket/9992#comment:9.
       'stylesSet' => FALSE,
-    );
+    ];
 
     // Finally, set Drupal-specific CKEditor settings.
     $root_relative_file_url = function ($uri) {
       return file_url_transform_relative(file_create_url($uri));
     };
-    $settings += array(
+    $settings += [
       'drupalExternalPlugins' => array_map($root_relative_file_url, $external_plugin_files),
-    );
+    ];
 
     // Parse all CKEditor plugin JavaScript files for translations.
     if ($this->moduleHandler->moduleExists('locale')) {
@@ -326,7 +326,7 @@ public function getLangcodes() {
       $langcodes = $langcode_cache->data;
     }
     if (empty($langcodes)) {
-      $langcodes = array();
+      $langcodes = [];
       // Collect languages included with CKEditor based on file listing.
       $files = scandir('core/assets/vendor/ckeditor/lang');
       foreach ($files as $file) {
@@ -341,7 +341,7 @@ public function getLangcodes() {
     // Get language mapping if available to map to Drupal language codes.
     // This is configurable in the user interface and not expensive to get, so
     // we don't include it in the cached language list.
-    $language_mappings = $this->moduleHandler->moduleExists('language') ? language_get_browser_drupal_langcode_mappings() : array();
+    $language_mappings = $this->moduleHandler->moduleExists('language') ? language_get_browser_drupal_langcode_mappings() : [];
     foreach ($langcodes as $langcode) {
       // If this language code is available in a Drupal mapping, use that to
       // compute a possibility for matching from the Drupal langcode to the
@@ -363,9 +363,9 @@ public function getLangcodes() {
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    $libraries = array(
+    $libraries = [
       'ckeditor/drupal.ckeditor',
-    );
+    ];
 
     // Get the required libraries for any enabled plugins.
     $enabled_plugins = array_keys($this->ckeditorPluginManager->getEnabledPluginFiles($editor));
@@ -389,7 +389,7 @@ public function getLibraries(Editor $editor) {
    *   An array containing the "toolbar" configuration.
    */
   public function buildToolbarJSSetting(Editor $editor) {
-    $toolbar = array();
+    $toolbar = [];
 
     $settings = $editor->getSettings();
     foreach ($settings['toolbar']['rows'] as $row) {
@@ -412,15 +412,15 @@ public function buildToolbarJSSetting(Editor $editor) {
    *   An array containing the "contentsCss" configuration.
    */
   public function buildContentsCssJSSetting(Editor $editor) {
-    $css = array(
+    $css = [
       drupal_get_path('module', 'ckeditor') . '/css/ckeditor-iframe.css',
       drupal_get_path('module', 'system') . '/css/components/align.module.css',
-    );
+    ];
     $this->moduleHandler->alter('ckeditor_css', $css, $editor);
     // Get a list of all enabled plugins' iframe instance CSS files.
     $plugins_css = array_reduce($this->ckeditorPluginManager->getCssFiles($editor), function($result, $item) {
       return array_merge($result, array_values($item));
-    }, array());
+    }, []);
     $css = array_merge($css, $plugins_css);
     $css = array_merge($css, _ckeditor_theme_css());
     $css = array_map('file_create_url', $css);
diff --git a/core/modules/ckeditor/src/Tests/CKEditorAdminTest.php b/core/modules/ckeditor/src/Tests/CKEditorAdminTest.php
index d10180d..ed08c26 100644
--- a/core/modules/ckeditor/src/Tests/CKEditorAdminTest.php
+++ b/core/modules/ckeditor/src/Tests/CKEditorAdminTest.php
@@ -20,7 +20,7 @@ class CKEditorAdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'editor', 'ckeditor');
+  public static $modules = ['filter', 'editor', 'ckeditor'];
 
   /**
    * A user with the 'administer filters' permission.
@@ -33,16 +33,16 @@ protected function setUp() {
     parent::setUp();
 
     // Create text format.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
 
     // Create admin user.
-    $this->adminUser = $this->drupalCreateUser(array('administer filters'));
+    $this->adminUser = $this->drupalCreateUser(['administer filters']);
   }
 
   /**
@@ -70,43 +70,43 @@ function testExistingFormat() {
     $this->assertTrue(((string) $options[0]['selected']) === 'selected', 'Option 1 ("None") is selected.');
 
     // Select the "CKEditor" editor and click the "Save configuration" button.
-    $edit = array(
+    $edit = [
       'editor[editor]' => 'ckeditor',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->assertRaw(t('You must configure the selected text editor.'));
 
     // Ensure the CKEditor editor returns the expected default settings.
-    $expected_default_settings = array(
-      'toolbar' => array(
-        'rows' => array(
+    $expected_default_settings = [
+      'toolbar' => [
+        'rows' => [
           // Button groups
-          array(
-            array(
+          [
+            [
               'name' => 'Formatting',
-              'items' => array('Bold', 'Italic',),
-            ),
-            array(
+              'items' => ['Bold', 'Italic',],
+            ],
+            [
               'name' => 'Links',
-              'items' => array('DrupalLink', 'DrupalUnlink',),
-            ),
-            array(
+              'items' => ['DrupalLink', 'DrupalUnlink',],
+            ],
+            [
               'name' => 'Lists',
-              'items' => array('BulletedList', 'NumberedList',),
-            ),
-            array(
+              'items' => ['BulletedList', 'NumberedList',],
+            ],
+            [
               'name' => 'Media',
-              'items' => array('Blockquote', 'DrupalImage',),
-            ),
-            array(
+              'items' => ['Blockquote', 'DrupalImage',],
+            ],
+            [
               'name' => 'Tools',
-              'items' => array('Source',),
-            ),
-          ),
-        ),
-      ),
+              'items' => ['Source',],
+            ],
+          ],
+        ],
+      ],
       'plugins' => ['language' => ['language_list' => 'un']],
-    );
+    ];
     $this->assertIdentical($this->castSafeStrings($ckeditor->getDefaultSettings()), $expected_default_settings);
 
     // Keep the "CKEditor" editor selected and click the "Configure" button.
@@ -115,11 +115,11 @@ function testExistingFormat() {
     $this->assertFalse($editor, 'No Editor config entity exists yet.');
 
     // Ensure that drupalSettings is correct.
-    $ckeditor_settings_toolbar = array(
+    $ckeditor_settings_toolbar = [
       '#theme' => 'ckeditor_settings_toolbar',
       '#editor' => Editor::create(['editor' => 'ckeditor']),
       '#plugins' => $this->container->get('plugin.manager.ckeditor.plugin')->getButtons(),
-    );
+    ];
     $this->assertEqual(
       $this->drupalSettings['ckeditor']['toolbarAdmin'],
       $this->container->get('renderer')->renderPlain($ckeditor_settings_toolbar),
@@ -148,9 +148,9 @@ function testExistingFormat() {
 
     // Configure the Styles plugin, and ensure the updated settings are saved.
     $this->drupalGet('admin/config/content/formats/manage/filtered_html');
-    $edit = array(
+    $edit = [
       'editor[settings][plugins][stylescombo][styles]' => "h1.title|Title\np.callout|Callout\n\n",
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $expected_settings['plugins']['stylescombo']['styles'] = "h1.title|Title\np.callout|Callout\n\n";
     $editor = Editor::load('filtered_html');
@@ -161,13 +161,13 @@ function testExistingFormat() {
     // done via drag and drop, but here we can only emulate the end result of
     // that interaction). Test multiple toolbar rows and a divider within a row.
     $this->drupalGet('admin/config/content/formats/manage/filtered_html');
-    $expected_settings['toolbar']['rows'][0][] = array(
+    $expected_settings['toolbar']['rows'][0][] = [
       'name' => 'Action history',
-      'items' => array('Undo', '|', 'Redo', 'JustifyCenter'),
-    );
-    $edit = array(
+      'items' => ['Undo', '|', 'Redo', 'JustifyCenter'],
+    ];
+    $edit = [
       'editor[settings][toolbar][button_groups]' => json_encode($expected_settings['toolbar']['rows']),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $editor = Editor::load('filtered_html');
     $this->assertTrue($editor instanceof Editor, 'An Editor config entity exists.');
@@ -191,7 +191,7 @@ function testExistingFormat() {
 
     // Now enable the ckeditor_test module, which provides one configurable
     // CKEditor plugin — this should not affect the Editor config entity.
-    \Drupal::service('module_installer')->install(array('ckeditor_test'));
+    \Drupal::service('module_installer')->install(['ckeditor_test']);
     $this->resetAll();
     $this->container->get('plugin.manager.ckeditor.plugin')->clearCachedDefinitions();
     $this->drupalGet('admin/config/content/formats/manage/filtered_html');
@@ -203,9 +203,9 @@ function testExistingFormat() {
 
     // Finally, check the "Ultra llama mode" checkbox.
     $this->drupalGet('admin/config/content/formats/manage/filtered_html');
-    $edit = array(
+    $edit = [
       'editor[settings][plugins][llama_contextual_and_button][ultra_llama_mode]' => '1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->drupalGet('admin/config/content/formats/manage/filtered_html');
     $ultra_llama_mode_checkbox = $this->xpath('//input[@type="checkbox" and @name="editor[settings][plugins][llama_contextual_and_button][ultra_llama_mode]" and @checked="checked"]');
@@ -239,11 +239,11 @@ function testNewFormat() {
 
     // Name our fancy new text format, select the "CKEditor" editor and click
     // the "Configure" button.
-    $edit = array(
+    $edit = [
       'name' => 'My amazing text format',
       'format' => 'amazing_format',
       'editor[editor]' => 'ckeditor',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'editor_configure');
     $filter_format = FilterFormat::load('amazing_format');
     $this->assertFalse($filter_format, 'No FilterFormat config entity exists yet.');
diff --git a/core/modules/ckeditor/src/Tests/CKEditorLoadingTest.php b/core/modules/ckeditor/src/Tests/CKEditorLoadingTest.php
index 6efe647..6de5467 100644
--- a/core/modules/ckeditor/src/Tests/CKEditorLoadingTest.php
+++ b/core/modules/ckeditor/src/Tests/CKEditorLoadingTest.php
@@ -18,7 +18,7 @@ class CKEditorLoadingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'editor', 'ckeditor', 'node');
+  public static $modules = ['filter', 'editor', 'ckeditor', 'node'];
 
   /**
    * An untrusted user with access to only the 'plain_text' format.
@@ -38,12 +38,12 @@ protected function setUp() {
     parent::setUp();
 
     // Create text format, associate CKEditor.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
     $editor = Editor::create([
       'format' => 'filtered_html',
@@ -53,22 +53,22 @@ protected function setUp() {
 
     // Create a second format without an associated editor so a drop down select
     // list is created when selecting formats.
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
 
     // Create node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
-    $this->untrustedUser = $this->drupalCreateUser(array('create article content', 'edit any article content'));
-    $this->normalUser = $this->drupalCreateUser(array('create article content', 'edit any article content', 'use text format filtered_html', 'use text format full_html'));
+    $this->untrustedUser = $this->drupalCreateUser(['create article content', 'edit any article content']);
+    $this->normalUser = $this->drupalCreateUser(['create article content', 'edit any article content', 'use text format filtered_html', 'use text format full_html']);
   }
 
   /**
@@ -101,13 +101,13 @@ function testLoading() {
     list($settings, $editor_settings_present, $editor_js_present, $body, $format_selector) = $this->getThingsToCheck();
     $ckeditor_plugin = $this->container->get('plugin.manager.editor')->createInstance('ckeditor');
     $editor = Editor::load('filtered_html');
-    $expected = array('formats' => array('filtered_html' => array(
+    $expected = ['formats' => ['filtered_html' => [
       'format' => 'filtered_html',
       'editor' => 'ckeditor',
       'editorSettings' => $this->castSafeStrings($ckeditor_plugin->getJSSettings($editor)),
       'editorSupportsContentFiltering' => TRUE,
       'isXssSafe' => FALSE,
-    )));
+    ]]];
     $this->assertTrue($editor_settings_present, "Text Editor module's JavaScript settings are on the page.");
     $this->assertIdentical($expected, $this->castSafeStrings($settings['editor']), "Text Editor module's JavaScript settings on the page are correct.");
     $this->assertTrue($editor_js_present, 'Text Editor JavaScript is present.');
@@ -122,7 +122,7 @@ function testLoading() {
     // NOTE: the tests in CKEditorTest already ensure that changing the
     // configuration also results in modified CKEditor configuration, so we
     // don't test that here.
-    \Drupal::service('module_installer')->install(array('ckeditor_test'));
+    \Drupal::service('module_installer')->install(['ckeditor_test']);
     $this->container->get('plugin.manager.ckeditor.plugin')->clearCachedDefinitions();
     $editor_settings = $editor->getSettings();
     $editor_settings['toolbar']['rows'][0][0]['items'][] = 'Llama';
@@ -130,15 +130,15 @@ function testLoading() {
     $editor->save();
     $this->drupalGet('node/add/article');
     list($settings, $editor_settings_present, $editor_js_present, $body, $format_selector) = $this->getThingsToCheck();
-    $expected = array(
-      'formats' => array(
-        'filtered_html' => array(
+    $expected = [
+      'formats' => [
+        'filtered_html' => [
           'format' => 'filtered_html',
           'editor' => 'ckeditor',
           'editorSettings' => $this->castSafeStrings($ckeditor_plugin->getJSSettings($editor)),
           'editorSupportsContentFiltering' => TRUE,
           'isXssSafe' => FALSE,
-    )));
+    ]]];
     $this->assertTrue($editor_settings_present, "Text Editor module's JavaScript settings are on the page.");
     $this->assertIdentical($expected, $this->castSafeStrings($settings['editor']), "Text Editor module's JavaScript settings on the page are correct.");
     $this->assertTrue($editor_js_present, 'Text Editor JavaScript is present.');
@@ -226,7 +226,7 @@ function testExternalStylesheets() {
 
   protected function getThingsToCheck() {
     $settings = $this->getDrupalSettings();
-    return array(
+    return [
       // JavaScript settings.
       $settings,
       // Editor.module's JS settings present.
@@ -239,7 +239,7 @@ protected function getThingsToCheck() {
       $this->xpath('//textarea[@id="edit-body-0-value"]'),
       // Format selector.
       $this->xpath('//select[contains(@class, "filter-list")]'),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorPluginManagerTest.php b/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorPluginManagerTest.php
index 92c448b..fc79273 100644
--- a/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorPluginManagerTest.php
+++ b/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorPluginManagerTest.php
@@ -18,7 +18,7 @@ class CKEditorPluginManagerTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'filter', 'editor', 'ckeditor');
+  public static $modules = ['system', 'user', 'filter', 'editor', 'ckeditor'];
 
   /**
    * The manager for "CKEditor plugin" plugins.
@@ -33,12 +33,12 @@ protected function setUp() {
     // Install the Filter module.
 
     // Create text format, associate CKEditor.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
     $editor = Editor::create([
       'format' => 'filtered_html',
@@ -57,27 +57,27 @@ function testEnabledPlugins() {
     // Case 1: no CKEditor plugins.
     $definitions = array_keys($this->manager->getDefinitions());
     sort($definitions);
-    $this->assertIdentical(array('drupalimage', 'drupalimagecaption', 'drupallink', 'internal', 'language', 'stylescombo'), $definitions, 'No CKEditor plugins found besides the built-in ones.');
-    $enabled_plugins = array(
+    $this->assertIdentical(['drupalimage', 'drupalimagecaption', 'drupallink', 'internal', 'language', 'stylescombo'], $definitions, 'No CKEditor plugins found besides the built-in ones.');
+    $enabled_plugins = [
       'drupalimage' => drupal_get_path('module', 'ckeditor') . '/js/plugins/drupalimage/plugin.js',
       'drupallink' => drupal_get_path('module', 'ckeditor') . '/js/plugins/drupallink/plugin.js',
-    );
+    ];
     $this->assertIdentical($enabled_plugins, $this->manager->getEnabledPluginFiles($editor), 'Only built-in plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $enabled_plugins, $this->manager->getEnabledPluginFiles($editor, TRUE), 'Only the "internal" plugin is enabled.');
+    $this->assertIdentical(['internal' => NULL] + $enabled_plugins, $this->manager->getEnabledPluginFiles($editor, TRUE), 'Only the "internal" plugin is enabled.');
 
     // Enable the CKEditor Test module, which has the Llama plugin (plus four
     // variations of it, to cover all possible ways a plugin can be enabled) and
     // clear the editor manager's cache so it is picked up.
-    $this->enableModules(array('ckeditor_test'));
+    $this->enableModules(['ckeditor_test']);
     $this->manager = $this->container->get('plugin.manager.ckeditor.plugin');
     $this->manager->clearCachedDefinitions();
 
     // Case 2: CKEditor plugins are available.
     $plugin_ids = array_keys($this->manager->getDefinitions());
     sort($plugin_ids);
-    $this->assertIdentical(array('drupalimage', 'drupalimagecaption', 'drupallink', 'internal', 'language', 'llama', 'llama_button', 'llama_contextual', 'llama_contextual_and_button', 'llama_css', 'stylescombo'), $plugin_ids, 'Additional CKEditor plugins found.');
+    $this->assertIdentical(['drupalimage', 'drupalimagecaption', 'drupallink', 'internal', 'language', 'llama', 'llama_button', 'llama_contextual', 'llama_contextual_and_button', 'llama_css', 'stylescombo'], $plugin_ids, 'Additional CKEditor plugins found.');
     $this->assertIdentical($enabled_plugins, $this->manager->getEnabledPluginFiles($editor), 'Only the internal plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $enabled_plugins, $this->manager->getEnabledPluginFiles($editor, TRUE), 'Only the "internal" plugin is enabled.');
+    $this->assertIdentical(['internal' => NULL] + $enabled_plugins, $this->manager->getEnabledPluginFiles($editor, TRUE), 'Only the "internal" plugin is enabled.');
 
     // Case 3: enable each of the newly available plugins, if possible:
     // a. Llama: cannot be enabled, since it does not implement
@@ -100,33 +100,33 @@ function testEnabledPlugins() {
     $settings['toolbar']['rows'][0][0]['items'][] = 'Llama';
     $editor->setSettings($settings);
     $editor->save();
-    $file = array();
+    $file = [];
     $file['b'] = drupal_get_path('module', 'ckeditor_test') . '/js/llama_button.js';
     $file['c'] = drupal_get_path('module', 'ckeditor_test') . '/js/llama_contextual.js';
     $file['cb'] = drupal_get_path('module', 'ckeditor_test') . '/js/llama_contextual_and_button.js';
     $file['css'] = drupal_get_path('module', 'ckeditor_test') . '/js/llama_css.js';
-    $expected = $enabled_plugins + array('llama_button' => $file['b'], 'llama_contextual_and_button' => $file['cb']);
+    $expected = $enabled_plugins + ['llama_button' => $file['b'], 'llama_contextual_and_button' => $file['cb']];
     $this->assertIdentical($expected, $this->manager->getEnabledPluginFiles($editor), 'The LlamaButton and LlamaContextualAndButton plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LlamaButton and LlamaContextualAndButton plugins are enabled.');
+    $this->assertIdentical(['internal' => NULL] + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LlamaButton and LlamaContextualAndButton plugins are enabled.');
     $settings['toolbar'] = $original_toolbar;
     $settings['toolbar']['rows'][0][0]['items'][] = 'Strike';
     $editor->setSettings($settings);
     $editor->save();
-    $expected = $enabled_plugins + array('llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb']);
+    $expected = $enabled_plugins + ['llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb']];
     $this->assertIdentical($expected, $this->manager->getEnabledPluginFiles($editor), 'The  LLamaContextual and LlamaContextualAndButton plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LlamaContextual and LlamaContextualAndButton plugins are enabled.');
+    $this->assertIdentical(['internal' => NULL] + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LlamaContextual and LlamaContextualAndButton plugins are enabled.');
     $settings['toolbar']['rows'][0][0]['items'][] = 'Llama';
     $editor->setSettings($settings);
     $editor->save();
-    $expected = $enabled_plugins + array('llama_button' => $file['b'], 'llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb']);
+    $expected = $enabled_plugins + ['llama_button' => $file['b'], 'llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb']];
     $this->assertIdentical($expected, $this->manager->getEnabledPluginFiles($editor), 'The LlamaButton, LlamaContextual and LlamaContextualAndButton plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LLamaButton, LlamaContextual and LlamaContextualAndButton plugins are enabled.');
+    $this->assertIdentical(['internal' => NULL] + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LLamaButton, LlamaContextual and LlamaContextualAndButton plugins are enabled.');
     $settings['toolbar']['rows'][0][0]['items'][] = 'LlamaCSS';
     $editor->setSettings($settings);
     $editor->save();
-    $expected = $enabled_plugins + array('llama_button' => $file['b'], 'llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb'], 'llama_css' => $file['css']);
+    $expected = $enabled_plugins + ['llama_button' => $file['b'], 'llama_contextual' => $file['c'], 'llama_contextual_and_button' => $file['cb'], 'llama_css' => $file['css']];
     $this->assertIdentical($expected, $this->manager->getEnabledPluginFiles($editor), 'The LlamaButton, LlamaContextual, LlamaContextualAndButton and LlamaCSS plugins are enabled.');
-    $this->assertIdentical(array('internal' => NULL) + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LLamaButton, LlamaContextual, LlamaContextualAndButton and LlamaCSS plugins are enabled.');
+    $this->assertIdentical(['internal' => NULL] + $expected, $this->manager->getEnabledPluginFiles($editor, TRUE), 'The LLamaButton, LlamaContextual, LlamaContextualAndButton and LlamaCSS plugins are enabled.');
   }
 
   /**
@@ -137,11 +137,11 @@ function testCssFiles() {
     $editor = Editor::load('filtered_html');
 
     // Case 1: no CKEditor iframe instance CSS file.
-    $this->assertIdentical(array(), $this->manager->getCssFiles($editor), 'No iframe instance CSS file found.');
+    $this->assertIdentical([], $this->manager->getCssFiles($editor), 'No iframe instance CSS file found.');
 
     // Enable the CKEditor Test module, which has the LlamaCss plugin and
     // clear the editor manager's cache so it is picked up.
-    $this->enableModules(array('ckeditor_test'));
+    $this->enableModules(['ckeditor_test']);
     $this->manager = $this->container->get('plugin.manager.ckeditor.plugin');
     $settings = $editor->getSettings();
     // LlamaCss: automatically enabled by adding its 'LlamaCSS' button.
@@ -150,9 +150,9 @@ function testCssFiles() {
     $editor->save();
 
     // Case 2: CKEditor iframe instance CSS file.
-    $expected = array(
-      'llama_css' => array(drupal_get_path('module', 'ckeditor_test') . '/css/llama.css')
-    );
+    $expected = [
+      'llama_css' => [drupal_get_path('module', 'ckeditor_test') . '/css/llama.css']
+    ];
     $this->assertIdentical($expected, $this->manager->getCssFiles($editor), 'Iframe instance CSS file found.');
   }
 
diff --git a/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorTest.php b/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorTest.php
index 3711a54..9e159c3 100644
--- a/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorTest.php
+++ b/core/modules/ckeditor/tests/modules/src/Kernel/CKEditorTest.php
@@ -19,7 +19,7 @@ class CKEditorTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'filter', 'editor', 'ckeditor', 'filter_test');
+  public static $modules = ['system', 'user', 'filter', 'editor', 'ckeditor', 'filter_test'];
 
   /**
    * An instance of the "CKEditor" text editor plugin.
@@ -41,19 +41,19 @@ protected function setUp() {
     // Install the Filter module.
 
     // Create text format, associate CKEditor.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<h2 id> <h3> <h4> <h5> <h6> <p> <br> <strong> <a href hreflang>',
-          )
-        ),
-      ),
-    ));
+          ]
+        ],
+      ],
+    ]);
     $filtered_html_format->save();
     $editor = Editor::create([
       'format' => 'filtered_html',
@@ -72,7 +72,7 @@ function testGetJSSettings() {
     $editor = Editor::load('filtered_html');
 
     // Default toolbar.
-    $expected_config = $this->getDefaultInternalConfig() + array(
+    $expected_config = $this->getDefaultInternalConfig() + [
       'drupalImage_dialogTitleAdd' => 'Insert Image',
       'drupalImage_dialogTitleEdit' => 'Edit Image',
       'drupalLink_dialogTitleAdd' => 'Add Link',
@@ -84,11 +84,11 @@ function testGetJSSettings() {
       'extraPlugins' => 'drupalimage,drupallink',
       'language' => 'en',
       'stylesSet' => FALSE,
-      'drupalExternalPlugins' => array(
+      'drupalExternalPlugins' => [
         'drupalimage' => file_url_transform_relative(file_create_url('core/modules/ckeditor/js/plugins/drupalimage/plugin.js')),
         'drupallink' => file_url_transform_relative(file_create_url('core/modules/ckeditor/js/plugins/drupallink/plugin.js')),
-      ),
-    );
+      ],
+    ];
     $expected_config = $this->castSafeStrings($expected_config);
     ksort($expected_config);
     ksort($expected_config['allowedContent']);
@@ -96,7 +96,7 @@ function testGetJSSettings() {
 
     // Customize the configuration: add button, have two contextually enabled
     // buttons, and configure a CKEditor plugin setting.
-    $this->enableModules(array('ckeditor_test'));
+    $this->enableModules(['ckeditor_test']);
     $this->container->get('plugin.manager.editor')->clearCachedDefinitions();
     $this->ckeditor = $this->container->get('plugin.manager.editor')->createInstance('ckeditor');
     $this->container->get('plugin.manager.ckeditor.plugin')->clearCachedDefinitions();
@@ -121,16 +121,16 @@ function testGetJSSettings() {
     $format->filters('filter_html')->settings['allowed_html'] .= '<pre class> <h1> <blockquote class="*"> <address class="foo bar-* *">';
     $format->save();
 
-    $expected_config['allowedContent']['pre'] = array('attributes' => 'class', 'styles' => FALSE, 'classes' => TRUE);
-    $expected_config['allowedContent']['h1'] = array('attributes' => FALSE, 'styles' => FALSE, 'classes' => FALSE);
-    $expected_config['allowedContent']['blockquote'] = array('attributes' => 'class', 'styles' => FALSE, 'classes' => TRUE);
-    $expected_config['allowedContent']['address'] = array('attributes' => 'class', 'styles' => FALSE, 'classes' => 'foo,bar-*');
+    $expected_config['allowedContent']['pre'] = ['attributes' => 'class', 'styles' => FALSE, 'classes' => TRUE];
+    $expected_config['allowedContent']['h1'] = ['attributes' => FALSE, 'styles' => FALSE, 'classes' => FALSE];
+    $expected_config['allowedContent']['blockquote'] = ['attributes' => 'class', 'styles' => FALSE, 'classes' => TRUE];
+    $expected_config['allowedContent']['address'] = ['attributes' => 'class', 'styles' => FALSE, 'classes' => 'foo,bar-*'];
     $expected_config['format_tags'] = 'p;h1;h2;h3;h4;h5;h6;pre';
     ksort($expected_config['allowedContent']);
     $this->assertIdentical($expected_config, $this->castSafeStrings($this->ckeditor->getJSSettings($editor)), 'Generated JS settings are correct for customized configuration.');
 
     // Disable the filter_html filter: allow *all *tags.
-    $format->setFilterConfig('filter_html', array('status' => 0));
+    $format->setFilterConfig('filter_html', ['status' => 0]);
     $format->save();
 
     $expected_config['allowedContent'] = TRUE;
@@ -139,73 +139,73 @@ function testGetJSSettings() {
     $this->assertIdentical($expected_config, $this->castSafeStrings($this->ckeditor->getJSSettings($editor)), 'Generated JS settings are correct for customized configuration.');
 
     // Enable the filter_test_restrict_tags_and_attributes filter.
-    $format->setFilterConfig('filter_test_restrict_tags_and_attributes', array(
+    $format->setFilterConfig('filter_test_restrict_tags_and_attributes', [
       'status' => 1,
-      'settings' => array(
-        'restrictions' => array(
-          'allowed' => array(
+      'settings' => [
+        'restrictions' => [
+          'allowed' => [
             'p' => TRUE,
-            'a' => array(
+            'a' => [
               'href' => TRUE,
-              'rel' => array('nofollow' => TRUE),
-              'class' => array('external' => TRUE),
-              'target' => array('_blank' => FALSE),
-            ),
-            'span' => array(
-              'class' => array('dodo' => FALSE),
-              'property' => array('dc:*' => TRUE),
-              'rel' => array('foaf:*' => FALSE),
-              'style' => array('underline' => FALSE, 'color' => FALSE, 'font-size' => TRUE),
-            ),
-            '*' => array(
+              'rel' => ['nofollow' => TRUE],
+              'class' => ['external' => TRUE],
+              'target' => ['_blank' => FALSE],
+            ],
+            'span' => [
+              'class' => ['dodo' => FALSE],
+              'property' => ['dc:*' => TRUE],
+              'rel' => ['foaf:*' => FALSE],
+              'style' => ['underline' => FALSE, 'color' => FALSE, 'font-size' => TRUE],
+            ],
+            '*' => [
               'style' => FALSE,
               'on*' => FALSE,
-              'class' => array('is-a-hipster-llama' => TRUE, 'and-more' => TRUE),
+              'class' => ['is-a-hipster-llama' => TRUE, 'and-more' => TRUE],
               'data-*' => TRUE,
-            ),
+            ],
             'del' => FALSE,
-          ),
-        ),
-      ),
-    ));
+          ],
+        ],
+      ],
+    ]);
     $format->save();
 
-    $expected_config['allowedContent'] = array(
-      'p' => array(
+    $expected_config['allowedContent'] = [
+      'p' => [
         'attributes' => TRUE,
         'styles' => FALSE,
         'classes' => 'is-a-hipster-llama,and-more',
-      ),
-      'a' => array(
+      ],
+      'a' => [
         'attributes' => 'href,rel,class,target',
         'styles' => FALSE,
         'classes' => 'external',
-      ),
-      'span' => array(
+      ],
+      'span' => [
         'attributes' => 'class,property,rel,style',
         'styles' => 'font-size',
         'classes' => FALSE,
-      ),
-      '*' => array(
+      ],
+      '*' => [
         'attributes' => 'class,data-*',
         'styles' => FALSE,
         'classes' => 'is-a-hipster-llama,and-more',
-      ),
-      'del' => array(
+      ],
+      'del' => [
         'attributes' => FALSE,
         'styles' => FALSE,
         'classes' => FALSE,
-      ),
-    );
-    $expected_config['disallowedContent'] = array(
-      'span' => array(
+      ],
+    ];
+    $expected_config['disallowedContent'] = [
+      'span' => [
         'styles' => 'underline,color',
         'classes' => 'dodo',
-      ),
-      '*' => array(
+      ],
+      '*' => [
         'attributes' => 'on*',
-      ),
-    );
+      ],
+    ];
     $expected_config['format_tags'] = 'p';
     ksort($expected_config);
     ksort($expected_config['allowedContent']);
@@ -232,7 +232,7 @@ function testBuildToolbarJSSetting() {
     $this->assertIdentical($expected, $this->castSafeStrings($this->ckeditor->buildToolbarJSSetting($editor)), '"toolbar" configuration part of JS settings built correctly for customized toolbar.');
 
     // Enable the editor_test module, customize further.
-    $this->enableModules(array('ckeditor_test'));
+    $this->enableModules(['ckeditor_test']);
     $this->container->get('plugin.manager.ckeditor.plugin')->clearCachedDefinitions();
     // Override the label of a toolbar component.
     $settings['toolbar']['rows'][0][0]['name'] = 'JunkScience';
@@ -255,7 +255,7 @@ function testBuildContentsCssJSSetting() {
     $this->assertIdentical($expected, $this->ckeditor->buildContentsCssJSSetting($editor), '"contentsCss" configuration part of JS settings built correctly for default toolbar.');
 
     // Enable the editor_test module, which implements hook_ckeditor_css_alter().
-    $this->enableModules(array('ckeditor_test'));
+    $this->enableModules(['ckeditor_test']);
     $expected[] = file_url_transform_relative(file_create_url(drupal_get_path('module', 'ckeditor_test') . '/ckeditor_test.css'));
     $this->assertIdentical($expected, $this->ckeditor->buildContentsCssJSSetting($editor), '"contentsCss" configuration part of JS settings built correctly while a hook_ckeditor_css_alter() implementation exists.');
 
@@ -315,7 +315,7 @@ function testStylesComboGetConfig() {
     $settings['plugins']['stylescombo']['styles'] = '';
     $editor->setSettings($settings);
     $editor->save();
-    $expected['stylesSet'] = array();
+    $expected['stylesSet'] = [];
     $this->assertIdentical($expected, $stylescombo_plugin->getConfig($editor), '"StylesCombo" plugin configuration built correctly for customized toolbar.');
 
     // Configure the optional "styles" setting in odd ways that shouldn't affect
@@ -333,10 +333,10 @@ function testStylesComboGetConfig() {
     $settings['plugins']['stylescombo']['styles'] = "h1.title|Title\np.mAgical.Callout|Callout";
     $editor->setSettings($settings);
     $editor->save();
-    $expected['stylesSet'] = array(
-      array('name' => 'Title', 'element' => 'h1', 'attributes' => array('class' => 'title')),
-      array('name' => 'Callout', 'element' => 'p', 'attributes' => array('class' => 'mAgical Callout')),
-    );
+    $expected['stylesSet'] = [
+      ['name' => 'Title', 'element' => 'h1', 'attributes' => ['class' => 'title']],
+      ['name' => 'Callout', 'element' => 'p', 'attributes' => ['class' => 'mAgical Callout']],
+    ];
     $this->assertIdentical($expected, $stylescombo_plugin->getConfig($editor), '"StylesCombo" plugin configuration built correctly for customized toolbar.');
 
     // Same configuration, but now interspersed with nonsense. Should yield the
@@ -350,7 +350,7 @@ function testStylesComboGetConfig() {
     $settings['plugins']['stylescombo']['styles'] = "      h1 |  Title ";
     $editor->setSettings($settings);
     $editor->save();
-    $expected['stylesSet'] = array(array('name' => 'Title', 'element' => 'h1'));
+    $expected['stylesSet'] = [['name' => 'Title', 'element' => 'h1']];
     $this->assertIdentical($expected, $stylescombo_plugin->getConfig($editor), '"StylesCombo" plugin configuration built correctly for customized toolbar.');
 
     // Invalid syntax should cause stylesSet to be set to FALSE.
@@ -366,8 +366,8 @@ function testStylesComboGetConfig() {
    */
   function testLanguages() {
     // Get CKEditor supported language codes and spot-check.
-    $this->enableModules(array('language'));
-    $this->installConfig(array('language'));
+    $this->enableModules(['language']);
+    $this->installConfig(['language']);
     $langcodes = $this->ckeditor->getLangcodes();
 
     // Language codes transformed with browser mappings.
@@ -390,14 +390,14 @@ function testLanguages() {
    * Tests that CKEditor plugins participate in JS translation.
    */
   function testJSTranslation() {
-    $this->enableModules(array('language', 'locale'));
+    $this->enableModules(['language', 'locale']);
     $this->installSchema('locale', 'locales_source');
     $this->installSchema('locale', 'locales_location');
     $this->installSchema('locale', 'locales_target');
     $editor = Editor::load('filtered_html');
     $this->ckeditor->getJSSettings($editor);
     $localeStorage = $this->container->get('locale.storage');
-    $string = $localeStorage->findString(array('source' => 'Edit Link', 'context' => ''));
+    $string = $localeStorage->findString(['source' => 'Edit Link', 'context' => '']);
     $this->assertTrue(!empty($string), 'String from JavaScript file saved.');
 
     // With locale module, CKEditor should not adhere to the language selected.
@@ -428,14 +428,14 @@ protected function assertCKEditorLanguage($langcode = 'fr') {
   }
 
   protected function getDefaultInternalConfig() {
-    return array(
+    return [
       'customConfig' => '',
       'pasteFromWordPromptCleanup' => TRUE,
       'resize_dir' => 'vertical',
-      'justifyClasses' => array('text-align-left', 'text-align-center', 'text-align-right', 'text-align-justify'),
+      'justifyClasses' => ['text-align-left', 'text-align-center', 'text-align-right', 'text-align-justify'],
       'entities' => FALSE,
       'disableNativeSpellChecker' => FALSE,
-    );
+    ];
   }
 
   protected function getDefaultAllowedContentConfig() {
@@ -454,42 +454,42 @@ protected function getDefaultAllowedContentConfig() {
   }
 
   protected function getDefaultDisallowedContentConfig() {
-    return array(
-      '*' => array('attributes' => 'on*'),
-    );
+    return [
+      '*' => ['attributes' => 'on*'],
+    ];
   }
 
   protected function getDefaultToolbarConfig() {
-    return array(
-      array(
+    return [
+      [
         'name' => 'Formatting',
-        'items' => array('Bold', 'Italic',),
-      ),
-      array(
+        'items' => ['Bold', 'Italic',],
+      ],
+      [
         'name' => 'Links',
-        'items' => array('DrupalLink', 'DrupalUnlink',),
-      ),
-      array(
+        'items' => ['DrupalLink', 'DrupalUnlink',],
+      ],
+      [
         'name' => 'Lists',
-        'items' => array('BulletedList', 'NumberedList',),
-      ),
-      array(
+        'items' => ['BulletedList', 'NumberedList',],
+      ],
+      [
         'name' => 'Media',
-        'items' => array('Blockquote', 'DrupalImage',),
-      ),
-      array(
+        'items' => ['Blockquote', 'DrupalImage',],
+      ],
+      [
         'name' => 'Tools',
-        'items' => array('Source',),
-      ),
+        'items' => ['Source',],
+      ],
       '/',
-    );
+    ];
   }
 
   protected function getDefaultContentsCssConfig() {
-    return array(
+    return [
       file_url_transform_relative(file_create_url('core/modules/ckeditor/css/ckeditor-iframe.css')),
       file_url_transform_relative(file_create_url('core/modules/system/css/components/align.module.css')),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/Llama.php b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/Llama.php
index 932b05c..012579d 100644
--- a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/Llama.php
+++ b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/Llama.php
@@ -30,14 +30,14 @@ class Llama extends PluginBase implements CKEditorPluginInterface {
    * {@inheritdoc}
    */
   function getDependencies(Editor $editor) {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   function getLibraries(Editor $editor) {
-    return array();
+    return [];
   }
 
   /**
@@ -58,7 +58,7 @@ function getFile() {
    * {@inheritdoc}
    */
   public function getConfig(Editor $editor) {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaButton.php b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaButton.php
index 7520dfd..4568192 100644
--- a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaButton.php
+++ b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaButton.php
@@ -18,11 +18,11 @@ class LlamaButton extends Llama implements CKEditorPluginButtonsInterface {
    * {@inheritdoc}
    */
   function getButtons() {
-    return array(
-      'Llama' => array(
+    return [
+      'Llama' => [
         'label' => t('Insert Llama'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php
index 43060d9..5e1955f 100644
--- a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php
+++ b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaContextualAndButton.php
@@ -39,11 +39,11 @@ function isEnabled(Editor $editor) {
    * {@inheritdoc}
    */
   function getButtons() {
-    return array(
-      'Llama' => array(
+    return [
+      'Llama' => [
         'label' => t('Insert Llama'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -58,17 +58,17 @@ function getFile() {
    */
   function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
     // Defaults.
-    $config = array('ultra_llama_mode' => FALSE);
+    $config = ['ultra_llama_mode' => FALSE];
     $settings = $editor->getSettings();
     if (isset($settings['plugins']['llama_contextual_and_button'])) {
       $config = $settings['plugins']['llama_contextual_and_button'];
     }
 
-    $form['ultra_llama_mode'] = array(
+    $form['ultra_llama_mode'] = [
       '#title' => t('Ultra llama mode'),
       '#type' => 'checkbox',
       '#default_value' => $config['ultra_llama_mode'],
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaCss.php b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaCss.php
index 294b39c..d3b9a7f 100644
--- a/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaCss.php
+++ b/core/modules/ckeditor/tests/modules/src/Plugin/CKEditorPlugin/LlamaCss.php
@@ -20,20 +20,20 @@ class LlamaCss extends Llama implements CKEditorPluginButtonsInterface, CKEditor
    * {@inheritdoc}
    */
   function getButtons() {
-    return array(
-      'LlamaCSS' => array(
+    return [
+      'LlamaCSS' => [
         'label' => t('Insert Llama CSS'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   function getCssFiles(Editor $editor) {
-    return array(
+    return [
       drupal_get_path('module', 'ckeditor_test') . '/css/llama.css'
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/color/color.install b/core/modules/color/color.install
index 7f61338..3cc098c 100644
--- a/core/modules/color/color.install
+++ b/core/modules/color/color.install
@@ -9,15 +9,15 @@
  * Implements hook_requirements().
  */
 function color_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   if ($phase == 'runtime') {
     // Check for the PHP GD library.
     if (function_exists('imagegd2')) {
       $info = gd_info();
-      $requirements['color_gd'] = array(
+      $requirements['color_gd'] = [
         'value' => $info['GD Version'],
-      );
+      ];
 
       // Check for PNG support.
       if (!function_exists('imagecreatefrompng')) {
@@ -26,11 +26,11 @@ function color_requirements($phase) {
       }
     }
     else {
-      $requirements['color_gd'] = array(
+      $requirements['color_gd'] = [
         'value' => t('Not installed'),
         'severity' => REQUIREMENT_ERROR,
         'description' => t('The GD library for PHP is missing or outdated. Check the <a href="http://php.net/manual/book.image.php">PHP image documentation</a> for information on how to correct this.'),
-      );
+      ];
     }
     $requirements['color_gd']['title'] = t('GD library PNG support');
   }
diff --git a/core/modules/color/color.module b/core/modules/color/color.module
index 3cae045..20d099a 100644
--- a/core/modules/color/color.module
+++ b/core/modules/color/color.module
@@ -23,11 +23,11 @@ function color_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.color':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Color module allows users with the <em>Administer site configuration</em> permission to change the color scheme (color of links, backgrounds, text, and other theme elements) of compatible themes. For more information, see the <a href=":color_do">online documentation for the Color module</a>.', array(':color_do' => 'https://www.drupal.org/documentation/modules/color')) . '</p>';
+      $output .= '<p>' . t('The Color module allows users with the <em>Administer site configuration</em> permission to change the color scheme (color of links, backgrounds, text, and other theme elements) of compatible themes. For more information, see the <a href=":color_do">online documentation for the Color module</a>.', [':color_do' => 'https://www.drupal.org/documentation/modules/color']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Changing colors') . '</dt>';
-      $output .= '<dd><p>' . t('To change the color settings, select the <em>Settings</em> link for your theme on the <a href=":appearance">Appearance</a> page. If the color picker does not appear then the theme is not compatible with the Color module.', array(':appearance' => \Drupal::url('system.themes_page'))) . '</p>';
+      $output .= '<dd><p>' . t('To change the color settings, select the <em>Settings</em> link for your theme on the <a href=":appearance">Appearance</a> page. If the color picker does not appear then the theme is not compatible with the Color module.', [':appearance' => \Drupal::url('system.themes_page')]) . '</p>';
       $output .= '<p>' . t('The Color module saves a modified copy of the theme\'s specified stylesheets in the files directory. If you make any manual changes to your theme\'s stylesheet, <em>you must save your color settings again, even if you haven\'t changed the colors</em>. This step is required because the module stylesheets in the files directory need to be recreated to reflect your changes.') . '</p></dd>';
       $output .= '</dl>';
       return $output;
@@ -38,11 +38,11 @@ function color_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function color_theme() {
-  return array(
-    'color_scheme_form' => array(
+  return [
+    'color_scheme_form' => [
       'render element' => 'form',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -51,14 +51,14 @@ function color_theme() {
 function color_form_system_theme_settings_alter(&$form, FormStateInterface $form_state) {
   $build_info = $form_state->getBuildInfo();
   if (isset($build_info['args'][0]) && ($theme = $build_info['args'][0]) && color_get_info($theme) && function_exists('gd_info')) {
-    $form['color'] = array(
+    $form['color'] = [
       '#type' => 'details',
       '#title' => t('Color scheme'),
       '#open' => TRUE,
       '#weight' => -1,
-      '#attributes' => array('id' => 'color_scheme_form'),
+      '#attributes' => ['id' => 'color_scheme_form'],
       '#theme' => 'color_scheme_form',
-    );
+    ];
     $form['color'] += color_scheme_form($form, $form_state, $theme);
     $form['#validate'][] = 'color_scheme_form_validate';
     // Ensure color submission happens first so we can unset extra values.
@@ -137,7 +137,7 @@ function color_block_view_pre_render(array $build) {
  * Retrieves the Color module information for a particular theme.
  */
 function color_get_info($theme) {
-  static $theme_info = array();
+  static $theme_info = [];
 
   if (isset($theme_info[$theme])) {
     return $theme_info[$theme];
@@ -148,21 +148,21 @@ function color_get_info($theme) {
   if ($path && file_exists($file)) {
     include $file;
     // Add in default values.
-    $info += array(
+    $info += [
       // CSS files (excluding @import) to rewrite with new color scheme.
-      'css' => array(),
+      'css' => [],
       // Files to copy.
-      'copy' => array(),
+      'copy' => [],
       // Gradient definitions.
-      'gradients' => array(),
+      'gradients' => [],
       // Color areas to fill (x, y, width, height).
-      'fill' => array(),
+      'fill' => [],
       // Coordinates of all the theme slices (x, y, width, height) with their
       // filename as used in the stylesheet.
-      'slices' => array(),
+      'slices' => [],
       // Reference color used for blending.
       'blend_target' => '#ffffff',
-    );
+    ];
     $theme_info[$theme] = $info;
     return $info;
   }
@@ -200,9 +200,9 @@ function color_get_palette($theme, $default = FALSE) {
 function color_scheme_form($complete_form, FormStateInterface $form_state, $theme) {
   $info = color_get_info($theme);
 
-  $info['schemes'][''] = array('title' => t('Custom'), 'colors' => array());
-  $color_sets = array();
-  $schemes = array();
+  $info['schemes'][''] = ['title' => t('Custom'), 'colors' => []];
+  $color_sets = [];
+  $schemes = [];
   foreach ($info['schemes'] as $key => $scheme) {
     $color_sets[$key] = $scheme['title'];
     $schemes[$key] = $scheme['colors'];
@@ -233,16 +233,16 @@ function color_scheme_form($complete_form, FormStateInterface $form_state, $them
 
   // Add scheme selector.
   $default_palette = color_get_palette($theme, TRUE);
-  $form['scheme'] = array(
+  $form['scheme'] = [
     '#type' => 'select',
     '#title' => t('Color set'),
     '#options' => $color_sets,
     '#default_value' => $scheme_name,
-    '#attached' => array(
-      'library' => array(
+    '#attached' => [
+      'library' => [
         'color/drupal.color',
         'color/admin',
-      ),
+      ],
       // Add custom JavaScript.
       'drupalSettings' => [
         'color' => [
@@ -251,8 +251,8 @@ function color_scheme_form($complete_form, FormStateInterface $form_state, $them
         ],
         'gradients' => $info['gradients'],
       ],
-    ),
-  );
+    ],
+  ];
 
   // Add palette fields. Use the configuration if available.
   $palette = $current_scheme ?: $default_palette;
@@ -260,22 +260,22 @@ function color_scheme_form($complete_form, FormStateInterface $form_state, $them
   $form['palette']['#tree'] = TRUE;
   foreach ($palette as $name => $value) {
     if (isset($names[$name])) {
-      $form['palette'][$name] = array(
+      $form['palette'][$name] = [
         '#type' => 'textfield',
         '#title' => $names[$name],
         '#value_callback' => 'color_palette_color_value',
         '#default_value' => $value,
         '#size' => 8,
-        '#attributes' => array('dir' => LanguageInterface::DIRECTION_LTR),
-      );
+        '#attributes' => ['dir' => LanguageInterface::DIRECTION_LTR],
+      ];
     }
   }
-  $form['theme'] = array('#type' => 'value', '#value' => $theme);
+  $form['theme'] = ['#type' => 'value', '#value' => $theme];
   if (isset($info['#attached'])) {
     $form['#attached'] = $info['#attached'];
     unset($info['#attached']);
   }
-  $form['info'] = array('#type' => 'value', '#value' => $info);
+  $form['info'] = ['#type' => 'value', '#value' => $info];
 
   return $form;
 }
@@ -360,7 +360,7 @@ function color_scheme_form_validate($form, FormStateInterface $form_state) {
   // Only accept hexadecimal CSS color strings to avoid XSS upon use.
   foreach ($form_state->getValue('palette') as $key => $color) {
     if (!color_valid_hexadecimal_string($color)) {
-      $form_state->setErrorByName('palette][' . $key, t('You must enter a valid hexadecimal color value for %name.', array('%name' => $form['color']['palette'][$key]['#title'])));
+      $form_state->setErrorByName('palette][' . $key, t('You must enter a valid hexadecimal color value for %name.', ['%name' => $form['color']['palette'][$key]['#title']]));
     }
   }
 }
@@ -373,7 +373,7 @@ function color_scheme_form_validate($form, FormStateInterface $form_state) {
 function color_scheme_form_submit($form, FormStateInterface $form_state) {
 
   // Avoid color settings spilling over to theme settings.
-  $color_settings = array('theme', 'palette', 'scheme');
+  $color_settings = ['theme', 'palette', 'scheme'];
   if ($form_state->hasValue('info')) {
     $color_settings[] = 'info';
   }
@@ -414,7 +414,7 @@ function color_scheme_form_submit($form, FormStateInterface $form_state) {
     $memory_limit = ini_get('memory_limit');
     $size = Bytes::toInt($memory_limit);
     if (!Environment::checkMemoryLimit($usage + $required, $memory_limit)) {
-      drupal_set_message(t('There is not enough memory available to PHP to change this theme\'s color scheme. You need at least %size more. Check the <a href="http://php.net/manual/ini.core.php#ini.sect.resource-limits">PHP documentation</a> for more information.', array('%size' => format_size($usage + $required - $size))), 'error');
+      drupal_set_message(t('There is not enough memory available to PHP to change this theme\'s color scheme. You need at least %size more. Check the <a href="http://php.net/manual/ini.core.php#ini.sect.resource-limits">PHP documentation</a> for more information.', ['%size' => format_size($usage + $required - $size)]), 'error');
       return;
     }
   }
@@ -446,7 +446,7 @@ function color_scheme_form_submit($form, FormStateInterface $form_state) {
   $paths['target'] = $paths['target'] . '/';
   $paths['id'] = $id;
   $paths['source'] = drupal_get_path('theme', $theme) . '/';
-  $paths['files'] = $paths['map'] = array();
+  $paths['files'] = $paths['map'] = [];
 
   // Save palette and logo location.
   $config
@@ -469,10 +469,10 @@ function color_scheme_form_submit($form, FormStateInterface $form_state) {
   }
 
   // Rewrite theme stylesheets.
-  $css = array();
+  $css = [];
   foreach ($info['css'] as $stylesheet) {
     // Build a temporary array with CSS files.
-    $files = array();
+    $files = [];
     if (file_exists($paths['source'] . $stylesheet)) {
       $files[] = $stylesheet;
     }
@@ -489,7 +489,7 @@ function color_scheme_form_submit($form, FormStateInterface $form_state) {
       $css_optimizer->rewriteFileURIBasePath = base_path() . dirname($paths['source'] . $file) . '/';
 
       // Prefix all paths within this CSS file, ignoring absolute paths.
-      $style = preg_replace_callback('/url\([\'"]?(?![a-z]+:|\/+)([^\'")]+)[\'"]?\)/i', array($css_optimizer, 'rewriteFileURI'), $style);
+      $style = preg_replace_callback('/url\([\'"]?(?![a-z]+:|\/+)([^\'")]+)[\'"]?\)/i', [$css_optimizer, 'rewriteFileURI'], $style);
 
       // Rewrite stylesheet with new colors.
       $style = _color_rewrite_stylesheet($theme, $info, $paths, $palette, $style);
@@ -729,7 +729,7 @@ function _color_shift($given, $ref1, $ref2, $target) {
  * Converts a hex triplet into a GD color.
  */
 function _color_gd($img, $hex) {
-  $c = array_merge(array($img), _color_unpack($hex));
+  $c = array_merge([$img], _color_unpack($hex));
   return call_user_func_array('imagecolorallocate', $c);
 }
 
@@ -739,7 +739,7 @@ function _color_gd($img, $hex) {
 function _color_blend($img, $hex1, $hex2, $alpha) {
   $in1 = _color_unpack($hex1);
   $in2 = _color_unpack($hex2);
-  $out = array($img);
+  $out = [$img];
   for ($i = 0; $i < 3; ++$i) {
     $out[] = $in1[$i] + ($in2[$i] - $in1[$i]) * $alpha;
   }
@@ -784,11 +784,11 @@ function _color_hsl2rgb($hsl) {
   $m2 = ($l <= 0.5) ? $l * ($s + 1) : $l + $s - $l * $s;
   $m1 = $l * 2 - $m2;
 
-  return array(
+  return [
     _color_hue2rgb($m1, $m2, $h + 0.33333),
     _color_hue2rgb($m1, $m2, $h),
     _color_hue2rgb($m1, $m2, $h - 0.33333),
-  );
+  ];
 }
 
 /**
@@ -828,5 +828,5 @@ function _color_rgb2hsl($rgb) {
     $h /= 6;
   }
 
-  return array($h, $s, $l);
+  return [$h, $s, $l];
 }
diff --git a/core/modules/color/tests/modules/color_test/themes/color_test_theme/color/color.inc b/core/modules/color/tests/modules/color_test/themes/color_test_theme/color/color.inc
index b88e8ea..ee77a5a 100644
--- a/core/modules/color/tests/modules/color_test/themes/color_test_theme/color/color.inc
+++ b/core/modules/color/tests/modules/color_test/themes/color_test_theme/color/color.inc
@@ -5,29 +5,29 @@
  * Lists available colors and color schemes for the Color test theme.
  */
 
-$info = array(
-  'fields' => array(
+$info = [
+  'fields' => [
     'bg' => t('Main background'),
     'text' => t('Text color'),
-  ),
-  'schemes' => array(
-    'default' => array(
+  ],
+  'schemes' => [
+    'default' => [
       'title' => t('Default'),
-      'colors' => array(
+      'colors' => [
         'bg' => '#ff0000',
         'text' => '#0000ff',
-      ),
-    ),
-    'custom' => array(
+      ],
+    ],
+    'custom' => [
       'title' => t('Custom'),
-      'colors' => array(
+      'colors' => [
         'bg' => '#ff0000',
         'text' => '#3b3b3b',
-      ),
-    ),
-  ),
-  'css' => array(
+      ],
+    ],
+  ],
+  'css' => [
     'css/colors.css',
-  ),
+  ],
   'preview_html' => 'color/preview.html',
-);
+];
diff --git a/core/modules/color/tests/src/Functional/ColorConfigSchemaTest.php b/core/modules/color/tests/src/Functional/ColorConfigSchemaTest.php
index 157deb8..e55275d 100644
--- a/core/modules/color/tests/src/Functional/ColorConfigSchemaTest.php
+++ b/core/modules/color/tests/src/Functional/ColorConfigSchemaTest.php
@@ -16,7 +16,7 @@ class ColorConfigSchemaTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('color');
+  public static $modules = ['color'];
 
   /**
    * A user with administrative permissions.
@@ -30,10 +30,10 @@ class ColorConfigSchemaTest extends BrowserTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('bartik'));
+    \Drupal::service('theme_handler')->install(['bartik']);
 
     // Create user.
-    $this->adminUser = $this->drupalCreateUser(array('administer themes'));
+    $this->adminUser = $this->drupalCreateUser(['administer themes']);
     $this->drupalLogin($this->adminUser);
   }
 
diff --git a/core/modules/color/tests/src/Functional/ColorTest.php b/core/modules/color/tests/src/Functional/ColorTest.php
index dc44566..8416913 100644
--- a/core/modules/color/tests/src/Functional/ColorTest.php
+++ b/core/modules/color/tests/src/Functional/ColorTest.php
@@ -17,7 +17,7 @@ class ColorTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('color', 'color_test', 'block', 'file');
+  public static $modules = ['color', 'color_test', 'block', 'file'];
 
   /**
    * A user with administrative permissions.
@@ -50,25 +50,25 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $this->bigUser = $this->drupalCreateUser(array('administer themes'));
+    $this->bigUser = $this->drupalCreateUser(['administer themes']);
 
     // This tests the color module in Bartik.
-    $this->themes = array(
-      'bartik' => array(
+    $this->themes = [
+      'bartik' => [
         'palette_input' => 'palette[bg]',
         'scheme' => 'slate',
         'scheme_color' => '#3b3b3b',
-      ),
-      'color_test_theme' => array(
+      ],
+      'color_test_theme' => [
         'palette_input' => 'palette[bg]',
         'scheme' => 'custom',
         'scheme_color' => '#3b3b3b',
-      ),
-    );
+      ],
+    ];
     \Drupal::service('theme_handler')->install(array_keys($this->themes));
 
     // Array filled with valid and not valid color values.
-    $this->colorTests = array(
+    $this->colorTests = [
       '#000' => TRUE,
       '#123456' => TRUE,
       '#abcdef' => TRUE,
@@ -78,7 +78,7 @@ protected function setUp() {
       '#00000' => FALSE,
       '123456' => FALSE,
       '#00000g' => FALSE,
-    );
+    ];
   }
 
   /**
@@ -138,7 +138,7 @@ function _testColor($theme, $test_values) {
     $config->set('css.preprocess', 1);
     $config->save();
     $this->drupalGet('<front>');
-    $stylesheets = \Drupal::state()->get('drupal_css_cache_files') ?: array();
+    $stylesheets = \Drupal::state()->get('drupal_css_cache_files') ?: [];
     $stylesheet_content = '';
     foreach ($stylesheets as $uri) {
       $stylesheet_content .= join("\n", file(drupal_realpath($uri)));
@@ -178,10 +178,10 @@ function testValidColor() {
    */
   function testLogoSettingOverride() {
     $this->drupalLogin($this->bigUser);
-    $edit = array(
+    $edit = [
       'default_logo' => FALSE,
       'logo_path' => 'core/misc/druplicon.png',
-    );
+    ];
     $this->drupalPostForm('admin/appearance/settings', $edit, t('Save configuration'));
 
     // Ensure that the overridden logo is present in Bartik, which is colorable.
diff --git a/core/modules/comment/comment.api.php b/core/modules/comment/comment.api.php
index 7b922cb..ec6b4ce 100644
--- a/core/modules/comment/comment.api.php
+++ b/core/modules/comment/comment.api.php
@@ -31,16 +31,16 @@
  * @see \Drupal\comment\CommentViewBuilder::buildLinks()
  */
 function hook_comment_links_alter(array &$links, CommentInterface $entity, array &$context) {
-  $links['mymodule'] = array(
+  $links['mymodule'] = [
     '#theme' => 'links__comment__mymodule',
-    '#attributes' => array('class' => array('links', 'inline')),
-    '#links' => array(
-      'comment-report' => array(
+    '#attributes' => ['class' => ['links', 'inline']],
+    '#links' => [
+      'comment-report' => [
         'title' => t('Report'),
         'url' => Url::fromRoute('comment_test.report', ['comment' => $entity->id()], ['query' => ['token' => \Drupal::getContainer()->get('csrf_token')->get("comment/{$entity->id()}/report")]]),
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/comment/comment.install b/core/modules/comment/comment.install
index ca356eb..a0d819e 100644
--- a/core/modules/comment/comment.install
+++ b/core/modules/comment/comment.install
@@ -15,7 +15,7 @@
  */
 function comment_uninstall() {
   // Remove the comment fields.
-  $fields = entity_load_multiple_by_properties('field_storage_config', array('type' => 'comment'));
+  $fields = entity_load_multiple_by_properties('field_storage_config', ['type' => 'comment']);
   foreach ($fields as $field) {
     $field->delete();
   }
@@ -37,78 +37,78 @@ function comment_install() {
  * Implements hook_schema().
  */
 function comment_schema() {
-  $schema['comment_entity_statistics'] = array(
+  $schema['comment_entity_statistics'] = [
     'description' => 'Maintains statistics of entity and comments posts to show "new" and "updated" flags.',
-    'fields' => array(
-      'entity_id' => array(
+    'fields' => [
+      'entity_id' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The entity_id of the entity for which the statistics are compiled.',
-      ),
-      'entity_type' => array(
+      ],
+      'entity_type' => [
         'type' => 'varchar_ascii',
         'not null' => TRUE,
         'default' => 'node',
         'length' => EntityTypeInterface::ID_MAX_LENGTH,
         'description' => 'The entity_type of the entity to which this comment is a reply.',
-      ),
-      'field_name' => array(
+      ],
+      'field_name' => [
         'type' => 'varchar_ascii',
         'not null' => TRUE,
         'default' => '',
         'length' => FieldStorageConfig::NAME_MAX_LENGTH,
         'description' => 'The field_name of the field that was used to add this comment.',
-      ),
-      'cid' => array(
+      ],
+      'cid' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {comment}.cid of the last comment.',
-      ),
-      'last_comment_timestamp' => array(
+      ],
+      'last_comment_timestamp' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The Unix timestamp of the last comment that was posted within this node, from {comment}.changed.',
-      ),
-      'last_comment_name' => array(
+      ],
+      'last_comment_name' => [
         'type' => 'varchar',
         'length' => 60,
         'not null' => FALSE,
         'description' => 'The name of the latest author to post a comment on this node, from {comment}.name.',
-      ),
-      'last_comment_uid' => array(
+      ],
+      'last_comment_uid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The user ID of the latest author to post a comment on this node, from {comment}.uid.',
-      ),
-      'comment_count' => array(
+      ],
+      'comment_count' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The total number of comments on this entity.',
-      ),
-    ),
-    'primary key' => array('entity_id', 'entity_type', 'field_name'),
-    'indexes' => array(
-      'last_comment_timestamp' => array('last_comment_timestamp'),
-      'comment_count' => array('comment_count'),
-      'last_comment_uid' => array('last_comment_uid'),
-    ),
-    'foreign keys' => array(
-      'last_comment_author' => array(
+      ],
+    ],
+    'primary key' => ['entity_id', 'entity_type', 'field_name'],
+    'indexes' => [
+      'last_comment_timestamp' => ['last_comment_timestamp'],
+      'comment_count' => ['comment_count'],
+      'last_comment_uid' => ['last_comment_uid'],
+    ],
+    'foreign keys' => [
+      'last_comment_author' => [
         'table' => 'users',
-        'columns' => array(
+        'columns' => [
           'last_comment_uid' => 'uid',
-        ),
-      ),
-    ),
-  );
+        ],
+      ],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/comment/comment.module b/core/modules/comment/comment.module
index ae81315..ee26510 100644
--- a/core/modules/comment/comment.module
+++ b/core/modules/comment/comment.module
@@ -68,19 +68,19 @@ function comment_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.comment':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Comment module allows users to comment on site content, set commenting defaults and permissions, and moderate comments. For more information, see the <a href=":comment">online documentation for the Comment module</a>.', array(':comment' => 'https://www.drupal.org/documentation/modules/comment')) . '</p>';
+      $output .= '<p>' . t('The Comment module allows users to comment on site content, set commenting defaults and permissions, and moderate comments. For more information, see the <a href=":comment">online documentation for the Comment module</a>.', [':comment' => 'https://www.drupal.org/documentation/modules/comment']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Enabling commenting') . '</dt>';
-      $output .= '<dd>' . t('Comment functionality can be enabled for any entity sub-type (for example, a <a href=":content-type">content type</a>) by adding a <em>Comments</em> field on its <em>Manage fields page</em>. Adding or removing commenting for an entity through the user interface requires the <a href=":field_ui">Field UI</a> module to be enabled, even though the commenting functionality works without it. For more information on fields and entities, see the <a href=":field">Field module help page</a>.', array(':content-type' => (\Drupal::moduleHandler()->moduleExists('node')) ? \Drupal::url('entity.node_type.collection') : '#', ':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('Comment functionality can be enabled for any entity sub-type (for example, a <a href=":content-type">content type</a>) by adding a <em>Comments</em> field on its <em>Manage fields page</em>. Adding or removing commenting for an entity through the user interface requires the <a href=":field_ui">Field UI</a> module to be enabled, even though the commenting functionality works without it. For more information on fields and entities, see the <a href=":field">Field module help page</a>.', [':content-type' => (\Drupal::moduleHandler()->moduleExists('node')) ? \Drupal::url('entity.node_type.collection') : '#', ':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Configuring commenting settings') . '</dt>';
       $output .= '<dd>' . t('Commenting settings can be configured by editing the <em>Comments</em> field on the <em>Manage fields page</em> of an entity type if the <em>Field UI module</em> is enabled. Configuration includes the label of the comments field, the number of comments to be displayed, and whether they are shown in threaded list. Commenting can be be configured as: <em>Open</em> to allow new comments, <em>Closed</em> to view existing comments, but prevent new comments, or <em>Hidden</em> to hide existing comments and prevent new comments. Changing this configuration for an entity type will not change existing entity items.') . '</dd>';
       $output .= '<dt>' . t('Overriding default settings') . '</dt>';
       $output .= '<dd>' . t('Users with the appropriate permissions can override the default commenting settings of an entity type when they create an item of that type.') . '</dd>';
       $output .= '<dt>' . t('Adding comment types') . '</dt>';
-      $output .= '<dd>' . t('Additional <em>comment types</em> can be created per entity sub-type and added on the <a href=":field">Comment types page</a>. If there are multiple comment types available you can select the appropriate one after adding a <em>Comments field</em>.', array(':field' => \Drupal::url('entity.comment_type.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Additional <em>comment types</em> can be created per entity sub-type and added on the <a href=":field">Comment types page</a>. If there are multiple comment types available you can select the appropriate one after adding a <em>Comments field</em>.', [':field' => \Drupal::url('entity.comment_type.collection')]) . '</dd>';
       $output .= '<dt>' . t('Approving and managing comments') . '</dt>';
-      $output .= '<dd>' . t('Comments from users who have the <em>Skip comment approval</em> permission are published immediately. All other comments are placed in the <a href=":comment-approval">Unapproved comments</a> queue, until a user who has permission to <em>Administer comments and comment settings</em> publishes or deletes them. Published comments can be bulk managed on the <a href=":admin-comment">Published comments</a> administration page. When a comment has no replies, it remains editable by its author, as long as the author has <em>Edit own comments</em> permission.', array(':comment-approval' => \Drupal::url('comment.admin_approval'), ':admin-comment' => \Drupal::url('comment.admin'))) . '</dd>';
+      $output .= '<dd>' . t('Comments from users who have the <em>Skip comment approval</em> permission are published immediately. All other comments are placed in the <a href=":comment-approval">Unapproved comments</a> queue, until a user who has permission to <em>Administer comments and comment settings</em> publishes or deletes them. Published comments can be bulk managed on the <a href=":admin-comment">Published comments</a> administration page. When a comment has no replies, it remains editable by its author, as long as the author has <em>Edit own comments</em> permission.', [':comment-approval' => \Drupal::url('comment.admin_approval'), ':admin-comment' => \Drupal::url('comment.admin')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -96,10 +96,10 @@ function comment_help($route_name, RouteMatchInterface $route_match) {
 function comment_uri(CommentInterface $comment) {
   return new Url(
     'entity.comment.canonical',
-    array(
+    [
       'comment' => $comment->id(),
-    ),
-    array('fragment' => 'comment-' . $comment->id())
+    ],
+    ['fragment' => 'comment-' . $comment->id()]
   );
 }
 
@@ -107,23 +107,23 @@ function comment_uri(CommentInterface $comment) {
  * Implements hook_entity_extra_field_info().
  */
 function comment_entity_extra_field_info() {
-  $return = array();
+  $return = [];
   foreach (CommentType::loadMultiple() as $comment_type) {
-    $return['comment'][$comment_type->id()] = array(
-      'form' => array(
-        'author' => array(
+    $return['comment'][$comment_type->id()] = [
+      'form' => [
+        'author' => [
           'label' => t('Author'),
           'description' => t('Author textfield'),
           'weight' => -2,
-        ),
-      ),
-    );
-    $return['comment'][$comment_type->id()]['display']['links'] = array(
+        ],
+      ],
+    ];
+    $return['comment'][$comment_type->id()]['display']['links'] = [
       'label' => t('Links'),
       'description' => t('Comment operation links'),
       'weight' => 100,
       'visible' => TRUE,
-    );
+    ];
   }
 
   return $return;
@@ -133,14 +133,14 @@ function comment_entity_extra_field_info() {
  * Implements hook_theme().
  */
 function comment_theme() {
-  return array(
-    'comment' => array(
+  return [
+    'comment' => [
       'render element' => 'elements',
-    ),
-    'field__comment' => array(
+    ],
+    'field__comment' => [
       'base hook' => 'field',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -150,15 +150,15 @@ function comment_field_config_create(FieldConfigInterface $field) {
   if ($field->getType() == 'comment' && !$field->isSyncing()) {
     // Assign default values for the field.
     $default_value = $field->getDefaultValueLiteral();
-    $default_value += array(array());
-    $default_value[0] += array(
+    $default_value += [[]];
+    $default_value[0] += [
       'status' => CommentItemInterface::OPEN,
       'cid' => 0,
       'last_comment_timestamp' => 0,
       'last_comment_name' => '',
       'last_comment_uid' => 0,
       'comment_count' => 0,
-    );
+    ];
     $field->setDefaultValue($default_value);
   }
 }
@@ -227,14 +227,14 @@ function comment_entity_view(array &$build, EntityInterface $entity, EntityViewD
       if ($entity->hasField($field_name) && $entity->get($field_name)->status != CommentItemInterface::HIDDEN) {
         // Add a comments RSS element which is a URL to the comments of this
         // entity.
-        $options = array(
+        $options = [
           'fragment' => 'comments',
           'absolute' => TRUE,
-        );
-        $entity->rss_elements[] = array(
+        ];
+        $entity->rss_elements[] = [
           'key' => 'comments',
           'value' => $entity->url('canonical', $options),
-        );
+        ];
       }
     }
   }
@@ -457,7 +457,7 @@ function comment_node_update_index(EntityInterface $node) {
     }
   }
 
-  $build = array();
+  $build = [];
 
   if ($index_comments) {
     foreach (\Drupal::service('comment.manager')->getFields('node') as $field_name => $info) {
@@ -517,7 +517,7 @@ function comment_node_search_result(EntityInterface $node) {
   // Do not make a string if there are no comment fields, or no comments exist
   // or all comment fields are hidden.
   if ($comments > 0 || $open) {
-    return array('comment' => \Drupal::translation()->formatPlural($comments, '1 comment', '@count comments'));
+    return ['comment' => \Drupal::translation()->formatPlural($comments, '1 comment', '@count comments')];
   }
 }
 
@@ -527,7 +527,7 @@ function comment_node_search_result(EntityInterface $node) {
 function comment_user_cancel($edit, $account, $method) {
   switch ($method) {
     case 'user_cancel_block_unpublish':
-      $comments = entity_load_multiple_by_properties('comment', array('uid' => $account->id()));
+      $comments = entity_load_multiple_by_properties('comment', ['uid' => $account->id()]);
       foreach ($comments as $comment) {
         $comment->setPublished(CommentInterface::NOT_PUBLISHED);
         $comment->save();
@@ -536,7 +536,7 @@ function comment_user_cancel($edit, $account, $method) {
 
     case 'user_cancel_reassign':
       /** @var \Drupal\comment\CommentInterface[] $comments */
-      $comments = entity_load_multiple_by_properties('comment', array('uid' => $account->id()));
+      $comments = entity_load_multiple_by_properties('comment', ['uid' => $account->id()]);
       foreach ($comments as $comment) {
         $comment->setOwnerId(0);
         $comment->setAuthorName(\Drupal::config('user.settings')->get('anonymous'));
@@ -568,7 +568,7 @@ function comment_user_predelete($account) {
  *   An array as expected by drupal_render().
  */
 function comment_preview(CommentInterface $comment, FormStateInterface $form_state) {
-  $preview_build = array();
+  $preview_build = [];
   $entity = $comment->getCommentedEntity();
 
   if (!$form_state->getErrors()) {
@@ -580,7 +580,7 @@ function comment_preview(CommentInterface $comment, FormStateInterface $form_sta
   }
 
   if ($comment->hasParentComment()) {
-    $build = array();
+    $build = [];
     $parent = $comment->getParentComment();
     if ($parent && $parent->isPublished()) {
       $build = \Drupal::entityTypeManager()->getViewBuilder('comment')->view($parent);
@@ -636,10 +636,10 @@ function template_preprocess_comment(&$variables) {
   $variables['threaded'] = $variables['elements']['#comment_threaded'];
 
   $account = $comment->getOwner();
-  $username = array(
+  $username = [
     '#theme' => 'username',
     '#account' => $account,
-  );
+  ];
   $variables['author'] = drupal_render($username);
   $variables['author_id'] = $comment->getOwnerId();
   $variables['new_indicator_timestamp'] = $comment->getChangedTime();
@@ -658,7 +658,7 @@ function template_preprocess_comment(&$variables) {
     $variables['user_picture'] = user_view($account, 'compact');
   }
   else {
-    $variables['user_picture'] = array();
+    $variables['user_picture'] = [];
   }
 
   if (isset($comment->in_preview)) {
@@ -667,25 +667,25 @@ function template_preprocess_comment(&$variables) {
   }
   else {
     $uri = $comment->permalink();
-    $attributes = $uri->getOption('attributes') ?: array();
-    $attributes += array('class' => array('permalink'), 'rel' => 'bookmark');
+    $attributes = $uri->getOption('attributes') ?: [];
+    $attributes += ['class' => ['permalink'], 'rel' => 'bookmark'];
     $uri->setOption('attributes', $attributes);
     $variables['title'] = \Drupal::l($comment->getSubject(), $uri);
 
     $variables['permalink'] = \Drupal::l(t('Permalink'), $comment->permalink());
   }
 
-  $variables['submitted'] = t('Submitted by @username on @datetime', array('@username' => $variables['author'], '@datetime' => $variables['created']));
+  $variables['submitted'] = t('Submitted by @username on @datetime', ['@username' => $variables['author'], '@datetime' => $variables['created']]);
 
   if ($comment->hasParentComment()) {
     // Fetch and store the parent comment information for use in templates.
     $comment_parent = $comment->getParentComment();
     $account_parent = $comment_parent->getOwner();
     $variables['parent_comment'] = $comment_parent;
-    $username = array(
+    $username = [
       '#theme' => 'username',
       '#account' => $account_parent,
-    );
+    ];
     $variables['parent_author'] = drupal_render($username);
     $variables['parent_created'] = format_date($comment_parent->getCreatedTime());
     // Avoid calling format_date() twice on the same timestamp.
@@ -696,13 +696,13 @@ function template_preprocess_comment(&$variables) {
       $variables['parent_changed'] = format_date($comment_parent->getChangedTime());
     }
     $permalink_uri_parent = $comment_parent->permalink();
-    $attributes = $permalink_uri_parent->getOption('attributes') ?: array();
-    $attributes += array('class' => array('permalink'), 'rel' => 'bookmark');
+    $attributes = $permalink_uri_parent->getOption('attributes') ?: [];
+    $attributes += ['class' => ['permalink'], 'rel' => 'bookmark'];
     $permalink_uri_parent->setOption('attributes', $attributes);
     $variables['parent_title'] = \Drupal::l($comment_parent->getSubject(), $permalink_uri_parent);
     $variables['parent_permalink'] = \Drupal::l(t('Parent permalink'), $permalink_uri_parent);
     $variables['parent'] = t('In reply to @parent_title by @parent_username',
-        array('@parent_username' => $variables['parent_author'], '@parent_title' => $variables['parent_title']));
+        ['@parent_username' => $variables['parent_author'], '@parent_title' => $variables['parent_title']]);
   }
   else {
     $variables['parent_comment'] = '';
diff --git a/core/modules/comment/comment.tokens.inc b/core/modules/comment/comment.tokens.inc
index 5af2e6a..8841441 100644
--- a/core/modules/comment/comment.tokens.inc
+++ b/core/modules/comment/comment.tokens.inc
@@ -15,11 +15,11 @@
  * Implements hook_token_info().
  */
 function comment_token_info() {
-  $type = array(
+  $type = [
     'name' => t('Comments'),
     'description' => t('Tokens for comments posted on the site.'),
     'needs-data' => 'comment',
-  );
+  ];
 
   $tokens = [];
   // Provide a integration for each entity type except comment.
@@ -45,76 +45,76 @@ function comment_token_info() {
   }
 
   // Core comment tokens
-  $comment['cid'] = array(
+  $comment['cid'] = [
     'name' => t("Comment ID"),
     'description' => t("The unique ID of the comment."),
-  );
-  $comment['hostname'] = array(
+  ];
+  $comment['hostname'] = [
     'name' => t("IP Address"),
     'description' => t("The IP address of the computer the comment was posted from."),
-  );
-  $comment['mail'] = array(
+  ];
+  $comment['mail'] = [
     'name' => t("Email address"),
     'description' => t("The email address left by the comment author."),
-  );
-  $comment['homepage'] = array(
+  ];
+  $comment['homepage'] = [
     'name' => t("Home page"),
     'description' => t("The home page URL left by the comment author."),
-  );
-  $comment['title'] = array(
+  ];
+  $comment['title'] = [
     'name' => t("Title"),
     'description' => t("The title of the comment."),
-  );
-  $comment['body'] = array(
+  ];
+  $comment['body'] = [
     'name' => t("Content"),
     'description' => t("The formatted content of the comment itself."),
-  );
-  $comment['langcode'] = array(
+  ];
+  $comment['langcode'] = [
     'name' => t('Language code'),
     'description' => t('The language code of the language the comment is written in.'),
-  );
-  $comment['url'] = array(
+  ];
+  $comment['url'] = [
     'name' => t("URL"),
     'description' => t("The URL of the comment."),
-  );
-  $comment['edit-url'] = array(
+  ];
+  $comment['edit-url'] = [
     'name' => t("Edit URL"),
     'description' => t("The URL of the comment's edit page."),
-  );
+  ];
 
   // Chained tokens for comments
-  $comment['created'] = array(
+  $comment['created'] = [
     'name' => t("Date created"),
     'description' => t("The date the comment was posted."),
     'type' => 'date',
-  );
-  $comment['changed'] = array(
+  ];
+  $comment['changed'] = [
     'name' => t("Date changed"),
     'description' => t("The date the comment was most recently updated."),
     'type' => 'date',
-  );
-  $comment['parent'] = array(
+  ];
+  $comment['parent'] = [
     'name' => t("Parent"),
     'description' => t("The comment's parent, if comment threading is active."),
     'type' => 'comment',
-  );
-  $comment['entity'] = array(
+  ];
+  $comment['entity'] = [
     'name' => t("Entity"),
     'description' => t("The entity the comment was posted to."),
     'type' => 'entity',
-  );
-  $comment['author'] = array(
+  ];
+  $comment['author'] = [
     'name' => t("Author"),
     'description' => t("The author name of the comment."),
     'type' => 'user',
-  );
+  ];
 
-  return array(
-    'types' => array('comment' => $type),
-    'tokens' => array(
+  return [
+    'types' => ['comment' => $type],
+    'tokens' => [
       'comment' => $comment,
-    ) + $tokens,
-  );
+    ] + $tokens,
+  ];
 }
 
 /**
@@ -123,7 +123,7 @@ function comment_token_info() {
 function comment_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['langcode'])) {
     $url_options['language'] = \Drupal::languageManager()->getLanguage($options['langcode']);
     $langcode = $options['langcode'];
@@ -131,7 +131,7 @@ function comment_tokens($type, $tokens, array $data, array $options, BubbleableM
   else {
     $langcode = NULL;
   }
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'comment' && !empty($data['comment'])) {
     /** @var \Drupal\comment\CommentInterface $comment */
@@ -230,23 +230,23 @@ function comment_tokens($type, $tokens, array $data, array $options, BubbleableM
     // Chained token relationships.
     if ($entity_tokens = $token_service->findwithPrefix($tokens, 'entity')) {
       $entity = $comment->getCommentedEntity();
-      $replacements += $token_service->generate($comment->getCommentedEntityTypeId(), $entity_tokens, array($comment->getCommentedEntityTypeId() => $entity), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate($comment->getCommentedEntityTypeId(), $entity_tokens, [$comment->getCommentedEntityTypeId() => $entity], $options, $bubbleable_metadata);
     }
 
     if ($date_tokens = $token_service->findwithPrefix($tokens, 'created')) {
-      $replacements += $token_service->generate('date', $date_tokens, array('date' => $comment->getCreatedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $date_tokens, ['date' => $comment->getCreatedTime()], $options, $bubbleable_metadata);
     }
 
     if ($date_tokens = $token_service->findwithPrefix($tokens, 'changed')) {
-      $replacements += $token_service->generate('date', $date_tokens, array('date' => $comment->getChangedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $date_tokens, ['date' => $comment->getChangedTime()], $options, $bubbleable_metadata);
     }
 
     if (($parent_tokens = $token_service->findwithPrefix($tokens, 'parent')) && $parent = $comment->getParentComment()) {
-      $replacements += $token_service->generate('comment', $parent_tokens, array('comment' => $parent), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('comment', $parent_tokens, ['comment' => $parent], $options, $bubbleable_metadata);
     }
 
     if (($author_tokens = $token_service->findwithPrefix($tokens, 'author')) && $account = $comment->getOwner()) {
-      $replacements += $token_service->generate('user', $author_tokens, array('user' => $account), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('user', $author_tokens, ['user' => $account], $options, $bubbleable_metadata);
     }
   }
   // Replacement tokens for any content entities that have comment field.
diff --git a/core/modules/comment/comment.views.inc b/core/modules/comment/comment.views.inc
index fb11a4f..11abede 100644
--- a/core/modules/comment/comment.views.inc
+++ b/core/modules/comment/comment.views.inc
@@ -13,14 +13,14 @@
 function comment_views_data_alter(&$data) {
   // New comments are only supported for node table because it requires the
   // history table.
-  $data['node']['new_comments'] = array(
+  $data['node']['new_comments'] = [
     'title' => t('New comments'),
     'help' => t('The number of new comments on the node.'),
-    'field' => array(
+    'field' => [
       'id' => 'node_new_comments',
       'no group by' => TRUE,
-    ),
-  );
+    ],
+  ];
 
   // Provide a integration for each entity type except comment.
   foreach (\Drupal::entityManager()->getDefinitions() as $entity_type_id => $entity_type) {
@@ -29,25 +29,25 @@ function comment_views_data_alter(&$data) {
     }
     $fields = \Drupal::service('comment.manager')->getFields($entity_type_id);
     $base_table = $entity_type->getDataTable() ?: $entity_type->getBaseTable();
-    $args = array('@entity_type' => $entity_type_id);
+    $args = ['@entity_type' => $entity_type_id];
 
     if ($fields) {
-      $data[$base_table]['comments_link'] = array(
-        'field' => array(
+      $data[$base_table]['comments_link'] = [
+        'field' => [
           'title' => t('Add comment link'),
           'help' => t('Display the standard add comment link used on regular @entity_type, which will only display if the viewing user has access to add a comment.', $args),
           'id' => 'comment_entity_link',
-        ),
-      );
+        ],
+      ];
 
       // Multilingual properties are stored in data table.
       if (!($table = $entity_type->getDataTable())) {
         $table = $entity_type->getBaseTable();
       }
-      $data[$table]['uid_touch'] = array(
+      $data[$table]['uid_touch'] = [
         'title' => t('User posted or commented'),
         'help' => t('Display nodes only if a user posted the @entity_type or commented on the @entity_type.', $args),
-        'argument' => array(
+        'argument' => [
           'field' => 'uid',
           'name table' => 'users_field_data',
           'name field' => 'name',
@@ -55,40 +55,40 @@ function comment_views_data_alter(&$data) {
           'no group by' => TRUE,
           'entity_type' => $entity_type_id,
           'entity_id' => $entity_type->getKey('id'),
-        ),
-        'filter' => array(
+        ],
+        'filter' => [
           'field' => 'uid',
           'name table' => 'users_field_data',
           'name field' => 'name',
           'id' => 'comment_user_uid',
           'entity_type' => $entity_type_id,
           'entity_id' => $entity_type->getKey('id'),
-        ),
-      );
+        ],
+      ];
 
       foreach ($fields as $field_name => $field) {
-        $data[$base_table][$field_name . '_cid'] = array(
-          'title' => t('Comments of the @entity_type using field: @field_name', $args + array('@field_name' => $field_name)),
+        $data[$base_table][$field_name . '_cid'] = [
+          'title' => t('Comments of the @entity_type using field: @field_name', $args + ['@field_name' => $field_name]),
           'help' => t('Relate all comments on the @entity_type. This will create 1 duplicate record for every comment. Usually if you need this it is better to create a comment view.', $args),
-          'relationship' => array(
+          'relationship' => [
             'group' => t('Comment'),
             'label' => t('Comments'),
             'base' => 'comment_field_data',
             'base field' => 'entity_id',
             'relationship field' => $entity_type->getKey('id'),
             'id' => 'standard',
-            'extra' => array(
-              array(
+            'extra' => [
+              [
                 'field' => 'entity_type',
                 'value' => $entity_type_id,
-              ),
-              array(
+              ],
+              [
                 'field' => 'field_name',
                 'value' => $field_name,
-              ),
-            ),
-          ),
-        );
+              ],
+            ],
+          ],
+        ];
       }
     }
   }
diff --git a/core/modules/comment/src/CommentAccessControlHandler.php b/core/modules/comment/src/CommentAccessControlHandler.php
index 639575a..bcb0fd7 100644
--- a/core/modules/comment/src/CommentAccessControlHandler.php
+++ b/core/modules/comment/src/CommentAccessControlHandler.php
@@ -67,23 +67,23 @@ protected function checkFieldAccess($operation, FieldDefinitionInterface $field_
     if ($operation == 'edit') {
       // Only users with the "administer comments" permission can edit
       // administrative fields.
-      $administrative_fields = array(
+      $administrative_fields = [
         'uid',
         'status',
         'created',
         'date',
-      );
+      ];
       if (in_array($field_definition->getName(), $administrative_fields, TRUE)) {
         return AccessResult::allowedIfHasPermission($account, 'administer comments');
       }
 
       // No user can change read-only fields.
-      $read_only_fields = array(
+      $read_only_fields = [
         'hostname',
         'changed',
         'cid',
         'thread',
-      );
+      ];
       // These fields can be edited during comment creation.
       $create_only_fields = [
         'comment_type',
diff --git a/core/modules/comment/src/CommentForm.php b/core/modules/comment/src/CommentForm.php
index 3a2e704..28231b8 100644
--- a/core/modules/comment/src/CommentForm.php
+++ b/core/modules/comment/src/CommentForm.php
@@ -91,7 +91,7 @@ public function form(array $form, FormStateInterface $form_state) {
 
     // Use #comment-form as unique jump target, regardless of entity type.
     $form['#id'] = Html::getUniqueId('comment_form');
-    $form['#theme'] = array('comment_form__' . $entity->getEntityTypeId() . '__' . $entity->bundle() . '__' . $field_name, 'comment_form');
+    $form['#theme'] = ['comment_form__' . $entity->getEntityTypeId() . '__' . $entity->bundle() . '__' . $field_name, 'comment_form'];
 
     $anonymous_contact = $field_definition->getSetting('anonymous');
     $is_admin = $comment->id() && $this->currentUser->hasPermission('administer comments');
@@ -104,7 +104,7 @@ public function form(array $form, FormStateInterface $form_state) {
     // If not replying to a comment, use our dedicated page callback for new
     // Comments on entities.
     if (!$comment->id() && !$comment->hasParentComment()) {
-      $form['#action'] = $this->url('comment.reply', array('entity_type' => $entity->getEntityTypeId(), 'entity' => $entity->id(), 'field_name' => $field_name));
+      $form['#action'] = $this->url('comment.reply', ['entity_type' => $entity->getEntityTypeId(), 'entity' => $entity->id(), 'field_name' => $field_name]);
     }
 
     $comment_preview = $form_state->get('comment_preview');
@@ -112,13 +112,13 @@ public function form(array $form, FormStateInterface $form_state) {
       $form += $comment_preview;
     }
 
-    $form['author'] = array();
+    $form['author'] = [];
     // Display author information in a details element for comment moderators.
     if ($is_admin) {
-      $form['author'] += array(
+      $form['author'] += [
         '#type' => 'details',
         '#title' => $this->t('Administration'),
-      );
+      ];
     }
 
     // Prepare default values for form elements.
@@ -129,9 +129,9 @@ public function form(array $form, FormStateInterface $form_state) {
       }
       $status = $comment->getStatus();
       if (empty($comment_preview)) {
-        $form['#title'] = $this->t('Edit comment %title', array(
+        $form['#title'] = $this->t('Edit comment %title', [
           '%title' => $comment->getSubject(),
-        ));
+        ]);
       }
     }
     else {
@@ -162,7 +162,7 @@ public function form(array $form, FormStateInterface $form_state) {
     // The name field is displayed when an anonymous user is adding a comment or
     // when a user with the permission 'administer comments' is editing an
     // existing comment from an anonymous user.
-    $form['author']['name'] = array(
+    $form['author']['name'] = [
       '#type' => 'textfield',
       '#title' => $is_admin ? $this->t('Name for @anonymous', ['@anonymous' => $config->get('anonymous')]) : $this->t('Your name'),
       '#default_value' => $author,
@@ -173,20 +173,20 @@ public function form(array $form, FormStateInterface $form_state) {
       '#attributes' => [
         'data-drupal-default-value' => $config->get('anonymous'),
       ],
-    );
+    ];
 
     if ($is_admin) {
       // When editing a comment only display the name textfield if the uid field
       // is empty.
       $form['author']['name']['#states'] = [
         'visible' => [
-          ':input[name="uid"]' => array('empty' => TRUE),
+          ':input[name="uid"]' => ['empty' => TRUE],
         ],
       ];
     }
 
     // Add author email and homepage fields depending on the current user.
-    $form['author']['mail'] = array(
+    $form['author']['mail'] = [
       '#type' => 'email',
       '#title' => $this->t('Email'),
       '#default_value' => $comment->getAuthorEmail(),
@@ -195,36 +195,36 @@ public function form(array $form, FormStateInterface $form_state) {
       '#size' => 30,
       '#description' => $this->t('The content of this field is kept private and will not be shown publicly.'),
       '#access' => ($comment->getOwner()->isAnonymous() && $is_admin) || ($this->currentUser->isAnonymous() && $anonymous_contact != COMMENT_ANONYMOUS_MAYNOT_CONTACT),
-    );
+    ];
 
-    $form['author']['homepage'] = array(
+    $form['author']['homepage'] = [
       '#type' => 'url',
       '#title' => $this->t('Homepage'),
       '#default_value' => $comment->getHomepage(),
       '#maxlength' => 255,
       '#size' => 30,
       '#access' => $is_admin || ($this->currentUser->isAnonymous() && $anonymous_contact != COMMENT_ANONYMOUS_MAYNOT_CONTACT),
-    );
+    ];
 
     // Add administrative comment publishing options.
-    $form['author']['date'] = array(
+    $form['author']['date'] = [
       '#type' => 'datetime',
       '#title' => $this->t('Authored on'),
       '#default_value' => $date,
       '#size' => 20,
       '#access' => $is_admin,
-    );
+    ];
 
-    $form['author']['status'] = array(
+    $form['author']['status'] = [
       '#type' => 'radios',
       '#title' => $this->t('Status'),
       '#default_value' => $status,
-      '#options' => array(
+      '#options' => [
         CommentInterface::PUBLISHED => $this->t('Published'),
         CommentInterface::NOT_PUBLISHED => $this->t('Not published'),
-      ),
+      ],
       '#access' => $is_admin,
-    );
+    ];
 
     return parent::form($form, $form_state, $comment);
   }
@@ -250,12 +250,12 @@ protected function actions(array $form, FormStateInterface $form_state) {
     // already previewing the submission.
     $element['submit']['#access'] = ($comment->id() && $this->currentUser->hasPermission('administer comments')) || $preview_mode != DRUPAL_REQUIRED || $form_state->get('comment_preview');
 
-    $element['preview'] = array(
+    $element['preview'] = [
       '#type' => 'submit',
       '#value' => $this->t('Preview'),
       '#access' => $preview_mode != DRUPAL_DISABLED,
-      '#submit' => array('::submitForm', '::preview'),
-    );
+      '#submit' => ['::submitForm', '::preview'],
+    ];
 
     return $element;
   }
@@ -365,10 +365,10 @@ public function save(array $form, FormStateInterface $form_state) {
       $form_state->setValue('cid', $comment->id());
 
       // Add a log entry.
-      $logger->notice('Comment posted: %subject.', array(
+      $logger->notice('Comment posted: %subject.', [
           '%subject' => $comment->getSubject(),
           'link' => $this->l(t('View'), $comment->urlInfo()->setOption('fragment', 'comment-' . $comment->id()))
-        ));
+        ]);
 
       // Explain the approval queue if necessary.
       if (!$comment->isPublished()) {
@@ -379,7 +379,7 @@ public function save(array $form, FormStateInterface $form_state) {
       else {
         drupal_set_message($this->t('Your comment has been posted.'));
       }
-      $query = array();
+      $query = [];
       // Find the current display page for this comment.
       $field_definition = $this->entityManager->getFieldDefinitions($entity->getEntityTypeId(), $entity->bundle())[$field_name];
       $page = $this->entityManager->getStorage('comment')->getDisplayOrdinal($comment, $field_definition->getSetting('default_mode'), $field_definition->getSetting('per_page'));
@@ -391,8 +391,8 @@ public function save(array $form, FormStateInterface $form_state) {
       $uri->setOption('fragment', 'comment-' . $comment->id());
     }
     else {
-      $logger->warning('Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', array('%subject' => $comment->getSubject()));
-      drupal_set_message($this->t('Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', array('%subject' => $comment->getSubject())), 'error');
+      $logger->warning('Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', ['%subject' => $comment->getSubject()]);
+      drupal_set_message($this->t('Comment: unauthorized comment submitted or comment submitted to a closed post %subject.', ['%subject' => $comment->getSubject()]), 'error');
       // Redirect the user to the entity they are commenting on.
     }
     $form_state->setRedirectUrl($uri);
diff --git a/core/modules/comment/src/CommentLazyBuilders.php b/core/modules/comment/src/CommentLazyBuilders.php
index 4eeeb59..730c840 100644
--- a/core/modules/comment/src/CommentLazyBuilders.php
+++ b/core/modules/comment/src/CommentLazyBuilders.php
@@ -99,13 +99,13 @@ public function __construct(EntityManagerInterface $entity_manager, EntityFormBu
    *   A renderable array containing the comment form.
    */
   public function renderForm($commented_entity_type_id, $commented_entity_id, $field_name, $comment_type_id) {
-    $values = array(
+    $values = [
       'entity_type' => $commented_entity_type_id,
       'entity_id' => $commented_entity_id,
       'field_name' => $field_name,
       'comment_type' => $comment_type_id,
       'pid' => NULL,
-    );
+    ];
     $comment = $this->entityManager->getStorage('comment')->create($values);
     return $this->entityFormBuilder->getForm($comment);
   }
@@ -126,11 +126,11 @@ public function renderForm($commented_entity_type_id, $commented_entity_id, $fie
    *   A renderable array representing the comment links.
    */
   public function renderLinks($comment_entity_id, $view_mode, $langcode, $is_in_preview) {
-    $links = array(
+    $links = [
       '#theme' => 'links__comment',
-      '#pre_render' => array('drupal_pre_render_links'),
-      '#attributes' => array('class' => array('links', 'inline')),
-    );
+      '#pre_render' => ['drupal_pre_render_links'],
+      '#attributes' => ['class' => ['links', 'inline']],
+    ];
 
     if (!$is_in_preview) {
       /** @var \Drupal\comment\CommentInterface $entity */
@@ -140,11 +140,11 @@ public function renderLinks($comment_entity_id, $view_mode, $langcode, $is_in_pr
       $links['comment'] = $this->buildLinks($entity, $commented_entity);
 
       // Allow other modules to alter the comment links.
-      $hook_context = array(
+      $hook_context = [
         'view_mode' => $view_mode,
         'langcode' => $langcode,
         'commented_entity' => $commented_entity,
-      );
+      ];
       $this->moduleHandler->alter('comment_links', $links, $entity, $hook_context);
     }
     return $links;
@@ -162,25 +162,25 @@ public function renderLinks($comment_entity_id, $view_mode, $langcode, $is_in_pr
    *   An array that can be processed by drupal_pre_render_links().
    */
   protected function buildLinks(CommentInterface $entity, EntityInterface $commented_entity) {
-    $links = array();
+    $links = [];
     $status = $commented_entity->get($entity->getFieldName())->status;
 
     if ($status == CommentItemInterface::OPEN) {
       if ($entity->access('delete')) {
-        $links['comment-delete'] = array(
+        $links['comment-delete'] = [
           'title' => t('Delete'),
           'url' => $entity->urlInfo('delete-form'),
-        );
+        ];
       }
 
       if ($entity->access('update')) {
-        $links['comment-edit'] = array(
+        $links['comment-edit'] = [
           'title' => t('Edit'),
           'url' => $entity->urlInfo('edit-form'),
-        );
+        ];
       }
       if ($entity->access('create')) {
-        $links['comment-reply'] = array(
+        $links['comment-reply'] = [
           'title' => t('Reply'),
           'url' => Url::fromRoute('comment.reply', [
             'entity_type' => $entity->getCommentedEntityTypeId(),
@@ -188,13 +188,13 @@ protected function buildLinks(CommentInterface $entity, EntityInterface $comment
             'field_name' => $entity->getFieldName(),
             'pid' => $entity->id(),
           ]),
-        );
+        ];
       }
       if (!$entity->isPublished() && $entity->access('approve')) {
-        $links['comment-approve'] = array(
+        $links['comment-approve'] = [
           'title' => t('Approve'),
           'url' => Url::fromRoute('comment.approve', ['comment' => $entity->id()]),
-        );
+        ];
       }
       if (empty($links) && $this->currentUser->isAnonymous()) {
         $links['comment-forbidden']['title'] = $this->commentManager->forbiddenMessage($commented_entity, $entity->getFieldName());
@@ -203,18 +203,18 @@ protected function buildLinks(CommentInterface $entity, EntityInterface $comment
 
     // Add translations link for translation-enabled comment bundles.
     if ($this->moduleHandler->moduleExists('content_translation') && $this->access($entity)->isAllowed()) {
-      $links['comment-translations'] = array(
+      $links['comment-translations'] = [
         'title' => t('Translate'),
         'url' => $entity->urlInfo('drupal:content-translation-overview'),
-      );
+      ];
     }
 
-    return array(
+    return [
       '#theme' => 'links__comment__comment',
       // The "entity" property is specified to be present, so no need to check.
       '#links' => $links,
-      '#attributes' => array('class' => array('links', 'inline')),
-    );
+      '#attributes' => ['class' => ['links', 'inline']],
+    ];
   }
 
   /**
diff --git a/core/modules/comment/src/CommentLinkBuilder.php b/core/modules/comment/src/CommentLinkBuilder.php
index 9998e3f..c7cbc18 100644
--- a/core/modules/comment/src/CommentLinkBuilder.php
+++ b/core/modules/comment/src/CommentLinkBuilder.php
@@ -75,7 +75,7 @@ public function __construct(AccountInterface $current_user, CommentManagerInterf
    * {@inheritdoc}
    */
   public function buildCommentedEntityLinks(FieldableEntityInterface $entity, array &$context) {
-    $entity_links = array();
+    $entity_links = [];
     $view_mode = $context['view_mode'];
     if ($view_mode == 'search_index' || $view_mode == 'search_result' || $view_mode == 'print' || $view_mode == 'rss') {
       // Do not add any links if the entity is displayed for:
@@ -83,7 +83,7 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
       // - constructing a search result excerpt.
       // - print.
       // - rss.
-      return array();
+      return [];
     }
 
     $fields = $this->commentManager->getFields($entity->getEntityTypeId());
@@ -92,7 +92,7 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
       if (!$entity->hasField($field_name)) {
         continue;
       }
-      $links = array();
+      $links = [];
       $commenting_status = $entity->get($field_name)->status;
       if ($commenting_status != CommentItemInterface::HIDDEN) {
         // Entity has commenting status open or closed.
@@ -103,23 +103,23 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
           // entity is open to new comments, and there currently are none.
           if ($this->currentUser->hasPermission('access comments')) {
             if (!empty($entity->get($field_name)->comment_count)) {
-              $links['comment-comments'] = array(
+              $links['comment-comments'] = [
                 'title' => $this->formatPlural($entity->get($field_name)->comment_count, '1 comment', '@count comments'),
-                'attributes' => array('title' => $this->t('Jump to the first comment.')),
+                'attributes' => ['title' => $this->t('Jump to the first comment.')],
                 'fragment' => 'comments',
                 'url' => $entity->urlInfo(),
-              );
+              ];
               if ($this->moduleHandler->moduleExists('history')) {
-                $links['comment-new-comments'] = array(
+                $links['comment-new-comments'] = [
                   'title' => '',
                   'url' => Url::fromRoute('<current>'),
-                  'attributes' => array(
+                  'attributes' => [
                     'class' => 'hidden',
                     'title' => $this->t('Jump to the first new comment.'),
                     'data-history-node-last-comment-timestamp' => $entity->get($field_name)->last_comment_timestamp,
                     'data-history-node-field-name' => $field_name,
-                  ),
-                );
+                  ],
+                ];
               }
             }
           }
@@ -127,12 +127,12 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
           if ($commenting_status == CommentItemInterface::OPEN) {
             $comment_form_location = $field_definition->getSetting('form_location');
             if ($this->currentUser->hasPermission('post comments')) {
-              $links['comment-add'] = array(
+              $links['comment-add'] = [
                 'title' => $this->t('Add new comment'),
                 'language' => $entity->language(),
-                'attributes' => array('title' => $this->t('Share your thoughts and opinions.')),
+                'attributes' => ['title' => $this->t('Share your thoughts and opinions.')],
                 'fragment' => 'comment-form',
-              );
+              ];
               if ($comment_form_location == CommentItemInterface::FORM_SEPARATE_PAGE) {
                 $links['comment-add']['url'] = Url::fromRoute('comment.reply', [
                   'entity_type' => $entity->getEntityTypeId(),
@@ -145,9 +145,9 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
               }
             }
             elseif ($this->currentUser->isAnonymous()) {
-              $links['comment-forbidden'] = array(
+              $links['comment-forbidden'] = [
                 'title' => $this->commentManager->forbiddenMessage($entity, $field_name),
-              );
+              ];
             }
           }
         }
@@ -161,11 +161,11 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
               // Show the "post comment" link if the form is on another page, or
               // if there are existing comments that the link will skip past.
               if ($comment_form_location == CommentItemInterface::FORM_SEPARATE_PAGE || (!empty($entity->get($field_name)->comment_count) && $this->currentUser->hasPermission('access comments'))) {
-                $links['comment-add'] = array(
+                $links['comment-add'] = [
                   'title' => $this->t('Add new comment'),
-                  'attributes' => array('title' => $this->t('Share your thoughts and opinions.')),
+                  'attributes' => ['title' => $this->t('Share your thoughts and opinions.')],
                   'fragment' => 'comment-form',
-                );
+                ];
                 if ($comment_form_location == CommentItemInterface::FORM_SEPARATE_PAGE) {
                   $links['comment-add']['url'] = Url::fromRoute('comment.reply', [
                     'entity_type' => $entity->getEntityTypeId(),
@@ -179,20 +179,20 @@ public function buildCommentedEntityLinks(FieldableEntityInterface $entity, arra
               }
             }
             elseif ($this->currentUser->isAnonymous()) {
-              $links['comment-forbidden'] = array(
+              $links['comment-forbidden'] = [
                 'title' => $this->commentManager->forbiddenMessage($entity, $field_name),
-              );
+              ];
             }
           }
         }
       }
 
       if (!empty($links)) {
-        $entity_links['comment__' . $field_name] = array(
+        $entity_links['comment__' . $field_name] = [
           '#theme' => 'links__entity__comment__' . $field_name,
           '#links' => $links,
-          '#attributes' => array('class' => array('links', 'inline')),
-        );
+          '#attributes' => ['class' => ['links', 'inline']],
+        ];
         if ($view_mode == 'teaser' && $this->moduleHandler->moduleExists('history') && $this->currentUser->isAuthenticated()) {
           $entity_links['comment__' . $field_name]['#cache']['contexts'][] = 'user';
           $entity_links['comment__' . $field_name]['#attached']['library'][] = 'comment/drupal.node-new-comments-link';
diff --git a/core/modules/comment/src/CommentManager.php b/core/modules/comment/src/CommentManager.php
index fb1c61e..80cc427 100644
--- a/core/modules/comment/src/CommentManager.php
+++ b/core/modules/comment/src/CommentManager.php
@@ -90,11 +90,11 @@ public function __construct(EntityManagerInterface $entity_manager, ConfigFactor
   public function getFields($entity_type_id) {
     $entity_type = $this->entityManager->getDefinition($entity_type_id);
     if (!$entity_type->entityClassImplements(FieldableEntityInterface::class)) {
-      return array();
+      return [];
     }
 
     $map = $this->entityManager->getFieldMapByFieldType('comment');
-    return isset($map[$entity_type_id]) ? $map[$entity_type_id] : array();
+    return isset($map[$entity_type_id]) ? $map[$entity_type_id] : [];
   }
 
   /**
@@ -103,28 +103,28 @@ public function getFields($entity_type_id) {
   public function addBodyField($comment_type_id) {
     if (!FieldConfig::loadByName('comment', $comment_type_id, 'comment_body')) {
       // Attaches the body field by default.
-      $field = $this->entityManager->getStorage('field_config')->create(array(
+      $field = $this->entityManager->getStorage('field_config')->create([
         'label' => 'Comment',
         'bundle' => $comment_type_id,
         'required' => TRUE,
         'field_storage' => FieldStorageConfig::loadByName('comment', 'comment_body'),
-      ));
+      ]);
       $field->save();
 
       // Assign widget settings for the 'default' form mode.
       entity_get_form_display('comment', $comment_type_id, 'default')
-        ->setComponent('comment_body', array(
+        ->setComponent('comment_body', [
           'type' => 'text_textarea',
-        ))
+        ])
         ->save();
 
       // Assign display settings for the 'default' view mode.
       entity_get_display('comment', $comment_type_id, 'default')
-        ->setComponent('comment_body', array(
+        ->setComponent('comment_body', [
           'label' => 'hidden',
           'type' => 'text_default',
           'weight' => 0,
-        ))
+        ])
         ->save();
     }
   }
@@ -151,24 +151,24 @@ public function forbiddenMessage(EntityInterface $entity, $field_name) {
           'entity' => $entity->id(),
           'field_name' => $field_name,
         ];
-        $destination = array('destination' => $this->url('comment.reply', $comment_reply_parameters, array('fragment' => 'comment-form')));
+        $destination = ['destination' => $this->url('comment.reply', $comment_reply_parameters, ['fragment' => 'comment-form'])];
       }
       else {
-        $destination = array('destination' => $entity->url('canonical', array('fragment' => 'comment-form')));
+        $destination = ['destination' => $entity->url('canonical', ['fragment' => 'comment-form'])];
       }
 
       if ($this->userConfig->get('register') != USER_REGISTER_ADMINISTRATORS_ONLY) {
         // Users can register themselves.
-        return $this->t('<a href=":login">Log in</a> or <a href=":register">register</a> to post comments', array(
-          ':login' => $this->urlGenerator->generateFromRoute('user.login', array(), array('query' => $destination)),
-          ':register' => $this->urlGenerator->generateFromRoute('user.register', array(), array('query' => $destination)),
-        ));
+        return $this->t('<a href=":login">Log in</a> or <a href=":register">register</a> to post comments', [
+          ':login' => $this->urlGenerator->generateFromRoute('user.login', [], ['query' => $destination]),
+          ':register' => $this->urlGenerator->generateFromRoute('user.register', [], ['query' => $destination]),
+        ]);
       }
       else {
         // Only admins can add new users, no public registration.
-        return $this->t('<a href=":login">Log in</a> to post comments', array(
-          ':login' => $this->urlGenerator->generateFromRoute('user.login', array(), array('query' => $destination)),
-        ));
+        return $this->t('<a href=":login">Log in</a> to post comments', [
+          ':login' => $this->urlGenerator->generateFromRoute('user.login', [], ['query' => $destination]),
+        ]);
       }
     }
     return '';
diff --git a/core/modules/comment/src/CommentStatistics.php b/core/modules/comment/src/CommentStatistics.php
index 74061ee..3c6b571 100644
--- a/core/modules/comment/src/CommentStatistics.php
+++ b/core/modules/comment/src/CommentStatistics.php
@@ -65,14 +65,14 @@ public function __construct(Connection $database, AccountInterface $current_user
    * {@inheritdoc}
    */
   public function read($entities, $entity_type, $accurate = TRUE) {
-    $options = $accurate ? array() : array('target' => 'replica');
+    $options = $accurate ? [] : ['target' => 'replica'];
     $stats = $this->database->select('comment_entity_statistics', 'ces', $options)
       ->fields('ces')
       ->condition('ces.entity_id', array_keys($entities), 'IN')
       ->condition('ces.entity_type', $entity_type)
       ->execute();
 
-    $statistics_records = array();
+    $statistics_records = [];
     while ($entry = $stats->fetchObject()) {
       $statistics_records[] = $entry;
     }
@@ -94,7 +94,7 @@ public function delete(EntityInterface $entity) {
    */
   public function create(FieldableEntityInterface $entity, $fields) {
     $query = $this->database->insert('comment_entity_statistics')
-      ->fields(array(
+      ->fields([
         'entity_id',
         'entity_type',
         'field_name',
@@ -103,7 +103,7 @@ public function create(FieldableEntityInterface $entity, $fields) {
         'last_comment_name',
         'last_comment_uid',
         'comment_count',
-      ));
+      ]);
     foreach ($fields as $field_name => $detail) {
       // Skip fields that entity does not have.
       if (!$entity->hasField($field_name)) {
@@ -127,7 +127,7 @@ public function create(FieldableEntityInterface $entity, $fields) {
       if ($entity instanceof EntityChangedInterface) {
         $last_comment_timestamp = $entity->getChangedTimeAcrossTranslations();
       }
-      $query->values(array(
+      $query->values([
         'entity_id' => $entity->id(),
         'entity_type' => $entity->getEntityTypeId(),
         'field_name' => $field_name,
@@ -136,7 +136,7 @@ public function create(FieldableEntityInterface $entity, $fields) {
         'last_comment_name' => NULL,
         'last_comment_uid' => $last_comment_uid,
         'comment_count' => 0,
-      ));
+      ]);
     }
     $query->execute();
   }
@@ -145,24 +145,24 @@ public function create(FieldableEntityInterface $entity, $fields) {
    * {@inheritdoc}
    */
   public function getMaximumCount($entity_type) {
-    return $this->database->query('SELECT MAX(comment_count) FROM {comment_entity_statistics} WHERE entity_type = :entity_type', array(':entity_type' => $entity_type))->fetchField();
+    return $this->database->query('SELECT MAX(comment_count) FROM {comment_entity_statistics} WHERE entity_type = :entity_type', [':entity_type' => $entity_type])->fetchField();
   }
 
   /**
    * {@inheritdoc}
    */
   public function getRankingInfo() {
-    return array(
-      'comments' => array(
+    return [
+      'comments' => [
         'title' => t('Number of comments'),
-        'join' => array(
+        'join' => [
           'type' => 'LEFT',
           'table' => 'comment_entity_statistics',
           'alias' => 'ces',
           // Default to comment field as this is the most common use case for
           // nodes.
           'on' => "ces.entity_id = i.sid AND ces.entity_type = 'node' AND ces.field_name = 'comment'",
-        ),
+        ],
         // Inverse law that maps the highest view count on the site to 1 and 0
         // to 0. Note that the ROUND here is necessary for PostgreSQL and SQLite
         // in order to ensure that the :comment_scale argument is treated as
@@ -170,9 +170,9 @@ public function getRankingInfo() {
         // values in as strings instead of numbers in complex expressions like
         // this.
         'score' => '2.0 - 2.0 / (1.0 + ces.comment_count * (ROUND(:comment_scale, 4)))',
-        'arguments' => array(':comment_scale' => \Drupal::state()->get('comment.node_comment_statistics_scale') ?: 0),
-      ),
-    );
+        'arguments' => [':comment_scale' => \Drupal::state()->get('comment.node_comment_statistics_scale') ?: 0],
+      ],
+    ];
   }
 
   /**
@@ -198,7 +198,7 @@ public function update(CommentInterface $comment) {
     if ($count > 0) {
       // Comments exist.
       $last_reply = $this->database->select('comment_field_data', 'c')
-        ->fields('c', array('cid', 'name', 'changed', 'uid'))
+        ->fields('c', ['cid', 'name', 'changed', 'uid'])
         ->condition('c.entity_id', $comment->getCommentedEntityId())
         ->condition('c.entity_type', $comment->getCommentedEntityTypeId())
         ->condition('c.field_name', $comment->getFieldName())
@@ -210,18 +210,18 @@ public function update(CommentInterface $comment) {
         ->fetchObject();
       // Use merge here because entity could be created before comment field.
       $this->database->merge('comment_entity_statistics')
-        ->fields(array(
+        ->fields([
           'cid' => $last_reply->cid,
           'comment_count' => $count,
           'last_comment_timestamp' => $last_reply->changed,
           'last_comment_name' => $last_reply->uid ? '' : $last_reply->name,
           'last_comment_uid' => $last_reply->uid,
-        ))
-        ->keys(array(
+        ])
+        ->keys([
           'entity_id' => $comment->getCommentedEntityId(),
           'entity_type' => $comment->getCommentedEntityTypeId(),
           'field_name' => $comment->getFieldName(),
-        ))
+        ])
         ->execute();
     }
     else {
@@ -238,7 +238,7 @@ public function update(CommentInterface $comment) {
         $last_comment_uid = $this->currentUser->id();
       }
       $this->database->update('comment_entity_statistics')
-        ->fields(array(
+        ->fields([
           'cid' => 0,
           'comment_count' => 0,
           // Use the changed date of the entity if it's set, or default to
@@ -246,7 +246,7 @@ public function update(CommentInterface $comment) {
           'last_comment_timestamp' => ($entity instanceof EntityChangedInterface) ? $entity->getChangedTimeAcrossTranslations() : REQUEST_TIME,
           'last_comment_name' => '',
           'last_comment_uid' => $last_comment_uid,
-        ))
+        ])
         ->condition('entity_id', $comment->getCommentedEntityId())
         ->condition('entity_type', $comment->getCommentedEntityTypeId())
         ->condition('field_name', $comment->getFieldName())
@@ -255,7 +255,7 @@ public function update(CommentInterface $comment) {
 
     // Reset the cache of the commented entity so that when the entity is loaded
     // the next time, the statistics will be loaded again.
-    $this->entityManager->getStorage($comment->getCommentedEntityTypeId())->resetCache(array($comment->getCommentedEntityId()));
+    $this->entityManager->getStorage($comment->getCommentedEntityTypeId())->resetCache([$comment->getCommentedEntityId()]);
   }
 
 }
diff --git a/core/modules/comment/src/CommentStorage.php b/core/modules/comment/src/CommentStorage.php
index cc4fdcf..d164d8a 100644
--- a/core/modules/comment/src/CommentStorage.php
+++ b/core/modules/comment/src/CommentStorage.php
@@ -147,7 +147,7 @@ public function getNewCommentPageNumber($total_comments, $new_comments, Fieldabl
 
       // 1. Find all the threads with a new comment.
       $unread_threads_query = $this->database->select('comment_field_data', 'comment')
-        ->fields('comment', array('thread'))
+        ->fields('comment', ['thread'])
         ->condition('entity_id', $entity->id())
         ->condition('entity_type', $entity->getEntityTypeId())
         ->condition('field_name', $field_name)
@@ -161,7 +161,7 @@ public function getNewCommentPageNumber($total_comments, $new_comments, Fieldabl
       $first_thread_query = $this->database->select($unread_threads_query, 'thread');
       $first_thread_query->addExpression('SUBSTRING(thread, 1, (LENGTH(thread) - 1))', 'torder');
       $first_thread = $first_thread_query
-        ->fields('thread', array('thread'))
+        ->fields('thread', ['thread'])
         ->orderBy('torder')
         ->range(0, 1)
         ->execute()
@@ -176,13 +176,13 @@ public function getNewCommentPageNumber($total_comments, $new_comments, Fieldabl
                         AND field_name = :field_name
                         AND status = :status
                         AND SUBSTRING(thread, 1, (LENGTH(thread) - 1)) < :thread
-                        AND default_langcode = 1', array(
+                        AND default_langcode = 1', [
         ':status' => CommentInterface::PUBLISHED,
         ':entity_id' => $entity->id(),
         ':field_name' => $field_name,
         ':entity_type' => $entity->getEntityTypeId(),
         ':thread' => $first_thread,
-      ))->fetchField();
+      ])->fetchField();
     }
 
     return $comments_per_page > 0 ? (int) ($count / $comments_per_page) : 0;
@@ -193,7 +193,7 @@ public function getNewCommentPageNumber($total_comments, $new_comments, Fieldabl
    */
   public function getChildCids(array $comments) {
     return $this->database->select('comment_field_data', 'c')
-      ->fields('c', array('cid'))
+      ->fields('c', ['cid'])
       ->condition('pid', array_keys($comments), 'IN')
       ->condition('default_langcode', 1)
       ->execute()
@@ -312,7 +312,7 @@ public function loadThread(EntityInterface $entity, $field_name, $mode, $comment
 
     $cids = $query->execute()->fetchCol();
 
-    $comments = array();
+    $comments = [];
     if ($cids) {
       $comments = $this->loadMultiple($cids);
     }
diff --git a/core/modules/comment/src/CommentStorageSchema.php b/core/modules/comment/src/CommentStorageSchema.php
index ee663c0..2106a8e 100644
--- a/core/modules/comment/src/CommentStorageSchema.php
+++ b/core/modules/comment/src/CommentStorageSchema.php
@@ -17,9 +17,9 @@ class CommentStorageSchema extends SqlContentEntityStorageSchema {
   protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $reset = FALSE) {
     $schema = parent::getEntitySchema($entity_type, $reset);
 
-    $schema['comment_field_data']['indexes'] += array(
-      'comment__status_pid' => array('pid', 'status'),
-      'comment__num_new' => array(
+    $schema['comment_field_data']['indexes'] += [
+      'comment__status_pid' => ['pid', 'status'],
+      'comment__num_new' => [
         'entity_id',
         'entity_type',
         'comment_type',
@@ -27,14 +27,14 @@ protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $res
         'created',
         'cid',
         'thread',
-      ),
-      'comment__entity_langcode' => array(
+      ],
+      'comment__entity_langcode' => [
         'entity_id',
         'entity_type',
         'comment_type',
         'default_langcode',
-      ),
-    );
+      ],
+    ];
 
     return $schema;
   }
diff --git a/core/modules/comment/src/CommentTranslationHandler.php b/core/modules/comment/src/CommentTranslationHandler.php
index 98afe3b..a0abe4b 100644
--- a/core/modules/comment/src/CommentTranslationHandler.php
+++ b/core/modules/comment/src/CommentTranslationHandler.php
@@ -30,7 +30,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
    * {@inheritdoc}
    */
   protected function entityFormTitle(EntityInterface $entity) {
-    return t('Edit comment @subject', array('@subject' => $entity->label()));
+    return t('Edit comment @subject', ['@subject' => $entity->label()]);
   }
 
   /**
diff --git a/core/modules/comment/src/CommentTypeForm.php b/core/modules/comment/src/CommentTypeForm.php
index 594726a..9cb147f 100644
--- a/core/modules/comment/src/CommentTypeForm.php
+++ b/core/modules/comment/src/CommentTypeForm.php
@@ -71,32 +71,32 @@ public function form(array $form, FormStateInterface $form_state) {
 
     $comment_type = $this->entity;
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => t('Label'),
       '#maxlength' => 255,
       '#default_value' => $comment_type->label(),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $comment_type->id(),
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\comment\Entity\CommentType::load',
-      ),
+      ],
       '#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
       '#disabled' => !$comment_type->isNew(),
-    );
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'textarea',
       '#default_value' => $comment_type->getDescription(),
       '#description' => t('Describe this comment type. The text will be displayed on the <em>Comment types</em> administration overview page.'),
       '#title' => t('Description'),
-    );
+    ];
 
     if ($comment_type->isNew()) {
-      $options = array();
+      $options = [];
       foreach ($this->entityManager->getDefinitions() as $entity_type) {
         // Only expose entities that have field UI enabled, only those can
         // get comment fields added in the UI.
@@ -104,47 +104,47 @@ public function form(array $form, FormStateInterface $form_state) {
           $options[$entity_type->id()] = $entity_type->getLabel();
         }
       }
-      $form['target_entity_type_id'] = array(
+      $form['target_entity_type_id'] = [
         '#type' => 'select',
         '#default_value' => $comment_type->getTargetEntityTypeId(),
         '#title' => t('Target entity type'),
         '#options' => $options,
         '#description' => t('The target entity type can not be changed after the comment type has been created.')
-      );
+      ];
     }
     else {
-      $form['target_entity_type_id_display'] = array(
+      $form['target_entity_type_id_display'] = [
         '#type' => 'item',
         '#markup' => $this->entityManager->getDefinition($comment_type->getTargetEntityTypeId())->getLabel(),
         '#title' => t('Target entity type'),
-      );
+      ];
     }
 
     if ($this->moduleHandler->moduleExists('content_translation')) {
-      $form['language'] = array(
+      $form['language'] = [
         '#type' => 'details',
         '#title' => t('Language settings'),
         '#group' => 'additional_settings',
-      );
+      ];
 
       $language_configuration = ContentLanguageSettings::loadByEntityTypeBundle('comment', $comment_type->id());
-      $form['language']['language_configuration'] = array(
+      $form['language']['language_configuration'] = [
         '#type' => 'language_configuration',
-        '#entity_information' => array(
+        '#entity_information' => [
           'entity_type' => 'comment',
           'bundle' => $comment_type->id(),
-        ),
+        ],
         '#default_value' => $language_configuration,
-      );
+      ];
 
       $form['#submit'][] = 'language_configuration_element_submit';
     }
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Save'),
-    );
+    ];
 
     return $form;
   }
@@ -158,13 +158,13 @@ public function save(array $form, FormStateInterface $form_state) {
 
     $edit_link = $this->entity->link($this->t('Edit'));
     if ($status == SAVED_UPDATED) {
-      drupal_set_message(t('Comment type %label has been updated.', array('%label' => $comment_type->label())));
-      $this->logger->notice('Comment type %label has been updated.', array('%label' => $comment_type->label(), 'link' => $edit_link));
+      drupal_set_message(t('Comment type %label has been updated.', ['%label' => $comment_type->label()]));
+      $this->logger->notice('Comment type %label has been updated.', ['%label' => $comment_type->label(), 'link' => $edit_link]);
     }
     else {
       $this->commentManager->addBodyField($comment_type->id());
-      drupal_set_message(t('Comment type %label has been added.', array('%label' => $comment_type->label())));
-      $this->logger->notice('Comment type %label has been added.', array('%label' => $comment_type->label(), 'link' => $edit_link));
+      drupal_set_message(t('Comment type %label has been added.', ['%label' => $comment_type->label()]));
+      $this->logger->notice('Comment type %label has been added.', ['%label' => $comment_type->label(), 'link' => $edit_link]);
     }
 
     $form_state->setRedirectUrl($comment_type->urlInfo('collection'));
diff --git a/core/modules/comment/src/CommentViewBuilder.php b/core/modules/comment/src/CommentViewBuilder.php
index 5771ed5..ec6d49a 100644
--- a/core/modules/comment/src/CommentViewBuilder.php
+++ b/core/modules/comment/src/CommentViewBuilder.php
@@ -88,7 +88,7 @@ public function buildComponents(array &$build, array $entities, array $displays,
     }
 
     // Pre-load associated users into cache to leverage multiple loading.
-    $uids = array();
+    $uids = [];
     foreach ($entities as $entity) {
       $uids[] = $entity->getOwnerId();
     }
@@ -125,7 +125,7 @@ public function buildComponents(array &$build, array $entities, array $displays,
 
       $display = $displays[$entity->bundle()];
       if ($display->getComponent('links')) {
-        $build[$id]['links'] = array(
+        $build[$id]['links'] = [
           '#lazy_builder' => ['comment.lazy_builders:renderLinks', [
             $entity->id(),
             $view_mode,
@@ -133,11 +133,11 @@ public function buildComponents(array &$build, array $entities, array $displays,
             !empty($entity->in_preview),
           ]],
           '#create_placeholder' => TRUE,
-        );
+        ];
       }
 
       if (!isset($build[$id]['#attached'])) {
-        $build[$id]['#attached'] = array();
+        $build[$id]['#attached'] = [];
       }
       $build[$id]['#attached']['library'][] = 'comment/drupal.comment-by-viewer';
       if ($this->moduleHandler->moduleExists('history') && $this->currentUser->isAuthenticated()) {
diff --git a/core/modules/comment/src/CommentViewsData.php b/core/modules/comment/src/CommentViewsData.php
index e4ca5b0..52af015 100644
--- a/core/modules/comment/src/CommentViewsData.php
+++ b/core/modules/comment/src/CommentViewsData.php
@@ -36,148 +36,148 @@ public function getViewsData() {
     $data['comment_field_data']['created']['title'] = $this->t('Post date');
     $data['comment_field_data']['created']['help'] = $this->t('Date and time of when the comment was created.');
 
-    $data['comment_field_data']['created_fulldata'] = array(
+    $data['comment_field_data']['created_fulldata'] = [
       'title' => $this->t('Created date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['created_year_month'] = array(
+    $data['comment_field_data']['created_year_month'] = [
       'title' => $this->t('Created year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['created_year'] = array(
+    $data['comment_field_data']['created_year'] = [
       'title' => $this->t('Created year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['created_month'] = array(
+    $data['comment_field_data']['created_month'] = [
       'title' => $this->t('Created month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['created_day'] = array(
+    $data['comment_field_data']['created_day'] = [
       'title' => $this->t('Created day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['created_week'] = array(
+    $data['comment_field_data']['created_week'] = [
       'title' => $this->t('Created week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
     $data['comment_field_data']['changed']['title'] = $this->t('Updated date');
     $data['comment_field_data']['changed']['help'] = $this->t('Date and time of when the comment was last updated.');
 
-    $data['comment_field_data']['changed_fulldata'] = array(
+    $data['comment_field_data']['changed_fulldata'] = [
       'title' => $this->t('Changed date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['changed_year_month'] = array(
+    $data['comment_field_data']['changed_year_month'] = [
       'title' => $this->t('Changed year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['changed_year'] = array(
+    $data['comment_field_data']['changed_year'] = [
       'title' => $this->t('Changed year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['changed_month'] = array(
+    $data['comment_field_data']['changed_month'] = [
       'title' => $this->t('Changed month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['changed_day'] = array(
+    $data['comment_field_data']['changed_day'] = [
       'title' => $this->t('Changed day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['changed_week'] = array(
+    $data['comment_field_data']['changed_week'] = [
       'title' => $this->t('Changed week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
     $data['comment_field_data']['status']['title'] = $this->t('Approved status');
     $data['comment_field_data']['status']['help'] = $this->t('Whether the comment is approved (or still in the moderation queue).');
     $data['comment_field_data']['status']['filter']['label'] = $this->t('Approved comment status');
     $data['comment_field_data']['status']['filter']['type'] = 'yes-no';
 
-    $data['comment']['approve_comment'] = array(
-      'field' => array(
+    $data['comment']['approve_comment'] = [
+      'field' => [
         'title' => $this->t('Link to approve comment'),
         'help' => $this->t('Provide a simple link to approve the comment.'),
         'id' => 'comment_link_approve',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment']['replyto_comment'] = array(
-      'field' => array(
+    $data['comment']['replyto_comment'] = [
+      'field' => [
         'title' => $this->t('Link to reply-to comment'),
         'help' => $this->t('Provide a simple link to reply to the comment.'),
         'id' => 'comment_link_reply',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_field_data']['thread']['field'] = array(
+    $data['comment_field_data']['thread']['field'] = [
       'title' => $this->t('Depth'),
       'help' => $this->t('Display the depth of the comment if it is threaded.'),
       'id' => 'comment_depth',
-    );
-    $data['comment_field_data']['thread']['sort'] = array(
+    ];
+    $data['comment_field_data']['thread']['sort'] = [
       'title' => $this->t('Thread'),
       'help' => $this->t('Sort by the threaded order. This will keep child comments together with their parents.'),
       'id' => 'comment_thread',
-    );
+    ];
     unset($data['comment_field_data']['thread']['filter']);
     unset($data['comment_field_data']['thread']['argument']);
 
@@ -189,24 +189,24 @@ public function getViewsData() {
         continue;
       }
       if ($fields = \Drupal::service('comment.manager')->getFields($type)) {
-        $data['comment_field_data'][$type] = array(
-          'relationship' => array(
+        $data['comment_field_data'][$type] = [
+          'relationship' => [
             'title' => $entity_type->getLabel(),
-            'help' => $this->t('The @entity_type to which the comment is a reply to.', array('@entity_type' => $entity_type->getLabel())),
+            'help' => $this->t('The @entity_type to which the comment is a reply to.', ['@entity_type' => $entity_type->getLabel()]),
             'base' => $entity_type->getDataTable() ?: $entity_type->getBaseTable(),
             'base field' => $entity_type->getKey('id'),
             'relationship field' => 'entity_id',
             'id' => 'standard',
             'label' => $entity_type->getLabel(),
-            'extra' => array(
-              array(
+            'extra' => [
+              [
                 'field' => 'entity_type',
                 'value' => $type,
                 'table' => 'comment_field_data'
-              ),
-            ),
-          ),
-        );
+              ],
+            ],
+          ],
+        ];
       }
     }
 
@@ -237,84 +237,84 @@ public function getViewsData() {
       // {comment_entity_statistics} for each field as multiple joins between
       // the same two tables is not supported.
       if (\Drupal::service('comment.manager')->getFields($type)) {
-        $data['comment_entity_statistics']['table']['join'][$entity_type->getDataTable() ?: $entity_type->getBaseTable()] = array(
+        $data['comment_entity_statistics']['table']['join'][$entity_type->getDataTable() ?: $entity_type->getBaseTable()] = [
           'type' => 'INNER',
           'left_field' => $entity_type->getKey('id'),
           'field' => 'entity_id',
-          'extra' => array(
-            array(
+          'extra' => [
+            [
               'field' => 'entity_type',
               'value' => $type,
-            ),
-          ),
-        );
+            ],
+          ],
+        ];
       }
     }
 
-    $data['comment_entity_statistics']['last_comment_timestamp'] = array(
+    $data['comment_entity_statistics']['last_comment_timestamp'] = [
       'title' => $this->t('Last comment time'),
       'help' => $this->t('Date and time of when the last comment was posted.'),
-      'field' => array(
+      'field' => [
         'id' => 'comment_last_timestamp',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'date',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'date',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['last_comment_name'] = array(
+    $data['comment_entity_statistics']['last_comment_name'] = [
       'title' => $this->t("Last comment author"),
       'help' => $this->t('The name of the author of the last posted comment.'),
-      'field' => array(
+      'field' => [
         'id' => 'comment_ces_last_comment_name',
         'no group by' => TRUE,
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'comment_ces_last_comment_name',
         'no group by' => TRUE,
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['comment_count'] = array(
+    $data['comment_entity_statistics']['comment_count'] = [
       'title' => $this->t('Comment count'),
       'help' => $this->t('The number of comments an entity has.'),
-      'field' => array(
+      'field' => [
         'id' => 'numeric',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'standard',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['last_updated'] = array(
+    $data['comment_entity_statistics']['last_updated'] = [
       'title' => $this->t('Updated/commented date'),
       'help' => $this->t('The most recent of last comment posted or entity updated time.'),
-      'field' => array(
+      'field' => [
         'id' => 'comment_ces_last_updated',
         'no group by' => TRUE,
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'comment_ces_last_updated',
         'no group by' => TRUE,
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'comment_ces_last_updated',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['cid'] = array(
+    $data['comment_entity_statistics']['cid'] = [
       'title' => $this->t('Last comment CID'),
       'help' => $this->t('Display the last comment of an entity'),
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('Last comment'),
         'help' => $this->t('The last comment of an entity.'),
         'group' => $this->t('Comment'),
@@ -322,62 +322,62 @@ public function getViewsData() {
         'base field' => 'cid',
         'id' => 'standard',
         'label' => $this->t('Last Comment'),
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['last_comment_uid'] = array(
+    $data['comment_entity_statistics']['last_comment_uid'] = [
       'title' => $this->t('Last comment uid'),
       'help' => $this->t('The User ID of the author of the last comment of an entity.'),
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('Last comment author'),
         'base' => 'users',
         'base field' => 'uid',
         'id' => 'standard',
         'label' => $this->t('Last comment author'),
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'numeric',
-      ),
-      'field' => array(
+      ],
+      'field' => [
         'id' => 'numeric',
-      ),
-    );
+      ],
+    ];
 
-    $data['comment_entity_statistics']['entity_type'] = array(
+    $data['comment_entity_statistics']['entity_type'] = [
       'title' => $this->t('Entity type'),
       'help' => $this->t('The entity type to which the comment is a reply to.'),
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['comment_entity_statistics']['field_name'] = array(
+      ],
+    ];
+    $data['comment_entity_statistics']['field_name'] = [
       'title' => $this->t('Comment field name'),
       'help' => $this->t('The field name from which the comment originated.'),
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
+      ],
+    ];
 
     return $data;
   }
diff --git a/core/modules/comment/src/Controller/CommentController.php b/core/modules/comment/src/Controller/CommentController.php
index 5f1b504..c834fa6 100644
--- a/core/modules/comment/src/Controller/CommentController.php
+++ b/core/modules/comment/src/Controller/CommentController.php
@@ -125,7 +125,7 @@ public function commentPermalink(Request $request, CommentInterface $comment) {
       $page = $this->entityManager()->getStorage('comment')->getDisplayOrdinal($comment, $field_definition->getSetting('default_mode'), $field_definition->getSetting('per_page'));
       // @todo: Cleaner sub request handling.
       $subrequest_url = $entity->urlInfo()->setOption('query', ['page' => $page])->toString(TRUE);
-      $redirect_request = Request::create($subrequest_url->getGeneratedUrl(), 'GET', $request->query->all(), $request->cookies->all(), array(), $request->server->all());
+      $redirect_request = Request::create($subrequest_url->getGeneratedUrl(), 'GET', $request->query->all(), $request->cookies->all(), [], $request->server->all());
       // Carry over the session to the subrequest.
       if ($session = $request->getSession()) {
         $redirect_request->setSession($session);
@@ -174,11 +174,11 @@ public function redirectNode(EntityInterface $node) {
     // Legacy nodes only had a single comment field, so use the first comment
     // field on the entity.
     if (!empty($fields) && ($field_names = array_keys($fields)) && ($field_name = reset($field_names))) {
-      return $this->redirect('comment.reply', array(
+      return $this->redirect('comment.reply', [
         'entity_type' => 'node',
         'entity' => $node->id(),
         'field_name' => $field_name,
-      ));
+      ]);
     }
     throw new NotFoundHttpException();
   }
@@ -211,7 +211,7 @@ public function redirectNode(EntityInterface $node) {
    */
   public function getReplyForm(Request $request, EntityInterface $entity, $field_name, $pid = NULL) {
     $account = $this->currentUser();
-    $build = array();
+    $build = [];
 
     // The user is not just previewing a comment.
     if ($request->request->get('op') != $this->t('Preview')) {
@@ -240,12 +240,12 @@ public function getReplyForm(Request $request, EntityInterface $entity, $field_n
     }
 
     // Show the actual reply box.
-    $comment = $this->entityManager()->getStorage('comment')->create(array(
+    $comment = $this->entityManager()->getStorage('comment')->create([
       'entity_id' => $entity->id(),
       'pid' => $pid,
       'entity_type' => $entity->getEntityTypeId(),
       'field_name' => $field_name,
-    ));
+    ]);
     $build['comment_form'] = $this->entityFormBuilder()->getForm($comment);
 
     return $build;
@@ -324,17 +324,17 @@ public function renderNewCommentsNodeLinks(Request $request) {
     // Only handle up to 100 nodes.
     $nids = array_slice($nids, 0, 100);
 
-    $links = array();
+    $links = [];
     foreach ($nids as $nid) {
       $node = $this->entityManager->getStorage('node')->load($nid);
       $new = $this->commentManager->getCountNewComments($node);
       $page_number = $this->entityManager()->getStorage('comment')
         ->getNewCommentPageNumber($node->{$field_name}->comment_count, $new, $node, $field_name);
-      $query = $page_number ? array('page' => $page_number) : NULL;
-      $links[$nid] = array(
+      $query = $page_number ? ['page' => $page_number] : NULL;
+      $links[$nid] = [
         'new_comment_count' => (int) $new,
-        'first_new_comment_link' => $this->getUrlGenerator()->generateFromRoute('entity.node.canonical', array('node' => $node->id()), array('query' => $query, 'fragment' => 'new')),
-      );
+        'first_new_comment_link' => $this->getUrlGenerator()->generateFromRoute('entity.node.canonical', ['node' => $node->id()], ['query' => $query, 'fragment' => 'new']),
+      ];
     }
 
     return new JsonResponse($links);
diff --git a/core/modules/comment/src/Entity/Comment.php b/core/modules/comment/src/Entity/Comment.php
index d52f04d..83dffaa 100644
--- a/core/modules/comment/src/Entity/Comment.php
+++ b/core/modules/comment/src/Entity/Comment.php
@@ -249,11 +249,11 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Subject'))
       ->setTranslatable(TRUE)
       ->setSetting('max_length', 64)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         // Default comment body field has weight 20.
         'weight' => 10,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['uid'] = BaseFieldDefinition::create('entity_reference')
@@ -328,7 +328,7 @@ public static function bundleFieldDefinitions(EntityTypeInterface $entity_type,
       $fields['entity_id']->setSetting('target_type', $comment_type->getTargetEntityTypeId());
       return $fields;
     }
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/comment/src/Form/CommentAdminOverview.php b/core/modules/comment/src/Form/CommentAdminOverview.php
index 3966fca..24f8b0a 100644
--- a/core/modules/comment/src/Form/CommentAdminOverview.php
+++ b/core/modules/comment/src/Form/CommentAdminOverview.php
@@ -99,12 +99,12 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, $type = 'new') {
 
     // Build an 'Update options' form.
-    $form['options'] = array(
+    $form['options'] = [
       '#type' => 'details',
       '#title' => $this->t('Update options'),
       '#open' => TRUE,
-      '#attributes' => array('class' => array('container-inline')),
-    );
+      '#attributes' => ['class' => ['container-inline']],
+    ];
 
     if ($type == 'approval') {
       $options['publish'] = $this->t('Publish the selected comments');
@@ -114,42 +114,42 @@ public function buildForm(array $form, FormStateInterface $form_state, $type = '
     }
     $options['delete'] = $this->t('Delete the selected comments');
 
-    $form['options']['operation'] = array(
+    $form['options']['operation'] = [
       '#type' => 'select',
       '#title' => $this->t('Action'),
       '#title_display' => 'invisible',
       '#options' => $options,
       '#default_value' => 'publish',
-    );
-    $form['options']['submit'] = array(
+    ];
+    $form['options']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Update'),
-    );
+    ];
 
     // Load the comments that need to be displayed.
     $status = ($type == 'approval') ? CommentInterface::NOT_PUBLISHED : CommentInterface::PUBLISHED;
-    $header = array(
-      'subject' => array(
+    $header = [
+      'subject' => [
         'data' => $this->t('Subject'),
         'specifier' => 'subject',
-      ),
-      'author' => array(
+      ],
+      'author' => [
         'data' => $this->t('Author'),
         'specifier' => 'name',
-        'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-      ),
-      'posted_in' => array(
+        'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+      ],
+      'posted_in' => [
         'data' => $this->t('Posted in'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-      'changed' => array(
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+      'changed' => [
         'data' => $this->t('Updated'),
         'specifier' => 'changed',
         'sort' => 'desc',
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
       'operations' => $this->t('Operations'),
-    );
+    ];
     $cids = $this->commentStorage->getQuery()
       ->condition('status', $status)
       ->tableSort($header)
@@ -160,11 +160,11 @@ public function buildForm(array $form, FormStateInterface $form_state, $type = '
     $comments = $this->commentStorage->loadMultiple($cids);
 
     // Build a table listing the appropriate comments.
-    $options = array();
+    $options = [];
     $destination = $this->getDestinationArray();
 
-    $commented_entity_ids = array();
-    $commented_entities = array();
+    $commented_entity_ids = [];
+    $commented_entities = [];
 
     foreach ($comments as $comment) {
       $commented_entity_ids[$comment->getCommentedEntityTypeId()][] = $comment->getCommentedEntityId();
@@ -179,61 +179,61 @@ public function buildForm(array $form, FormStateInterface $form_state, $type = '
       $commented_entity = $commented_entities[$comment->getCommentedEntityTypeId()][$comment->getCommentedEntityId()];
       $comment_permalink = $comment->permalink();
       if ($comment->hasField('comment_body') && ($body = $comment->get('comment_body')->value)) {
-        $attributes = $comment_permalink->getOption('attributes') ?: array();
-        $attributes += array('title' => Unicode::truncate($body, 128));
+        $attributes = $comment_permalink->getOption('attributes') ?: [];
+        $attributes += ['title' => Unicode::truncate($body, 128)];
         $comment_permalink->setOption('attributes', $attributes);
       }
-      $options[$comment->id()] = array(
-        'title' => array('data' => array('#title' => $comment->getSubject() ?: $comment->id())),
-        'subject' => array(
-          'data' => array(
+      $options[$comment->id()] = [
+        'title' => ['data' => ['#title' => $comment->getSubject() ?: $comment->id()]],
+        'subject' => [
+          'data' => [
             '#type' => 'link',
             '#title' => $comment->getSubject(),
             '#url' => $comment_permalink,
-          ),
-        ),
-        'author' => array(
-          'data' => array(
+          ],
+        ],
+        'author' => [
+          'data' => [
             '#theme' => 'username',
             '#account' => $comment->getOwner(),
-          ),
-        ),
-        'posted_in' => array(
-          'data' => array(
+          ],
+        ],
+        'posted_in' => [
+          'data' => [
             '#type' => 'link',
             '#title' => $commented_entity->label(),
             '#access' => $commented_entity->access('view'),
             '#url' => $commented_entity->urlInfo(),
-          ),
-        ),
+          ],
+        ],
         'changed' => $this->dateFormatter->format($comment->getChangedTimeAcrossTranslations(), 'short'),
-      );
+      ];
       $comment_uri_options = $comment->urlInfo()->getOptions() + ['query' => $destination];
-      $links = array();
-      $links['edit'] = array(
+      $links = [];
+      $links['edit'] = [
         'title' => $this->t('Edit'),
         'url' => $comment->urlInfo('edit-form', $comment_uri_options),
-      );
-      if ($this->moduleHandler->moduleExists('content_translation') && $this->moduleHandler->invoke('content_translation', 'translate_access', array($comment))->isAllowed()) {
-        $links['translate'] = array(
+      ];
+      if ($this->moduleHandler->moduleExists('content_translation') && $this->moduleHandler->invoke('content_translation', 'translate_access', [$comment])->isAllowed()) {
+        $links['translate'] = [
           'title' => $this->t('Translate'),
           'url' => $comment->urlInfo('drupal:content-translation-overview', $comment_uri_options),
-        );
+        ];
       }
-      $options[$comment->id()]['operations']['data'] = array(
+      $options[$comment->id()]['operations']['data'] = [
         '#type' => 'operations',
         '#links' => $links,
-      );
+      ];
     }
 
-    $form['comments'] = array(
+    $form['comments'] = [
       '#type' => 'tableselect',
       '#header' => $header,
       '#options' => $options,
       '#empty' => $this->t('No comments available.'),
-    );
+    ];
 
-    $form['pager'] = array('#type' => 'pager');
+    $form['pager'] = ['#type' => 'pager'];
 
     return $form;
   }
@@ -242,7 +242,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $type = '
    * {@inheritdoc}
    */
   public function validateForm(array &$form, FormStateInterface $form_state) {
-    $form_state->setValue('comments', array_diff($form_state->getValue('comments'), array(0)));
+    $form_state->setValue('comments', array_diff($form_state->getValue('comments'), [0]));
     // We can't execute any 'Update options' if no comments were selected.
     if (count($form_state->getValue('comments')) == 0) {
       $form_state->setErrorByName('', $this->t('Select one or more comments to perform the update on.'));
diff --git a/core/modules/comment/src/Form/CommentTypeDeleteForm.php b/core/modules/comment/src/Form/CommentTypeDeleteForm.php
index 8c3da7a..30181c1 100644
--- a/core/modules/comment/src/Form/CommentTypeDeleteForm.php
+++ b/core/modules/comment/src/Form/CommentTypeDeleteForm.php
@@ -82,18 +82,18 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     foreach (array_keys($this->commentManager->getFields($entity_type)) as $field_name) {
       /** @var \Drupal\field\FieldStorageConfigInterface $field_storage */
       if (($field_storage = FieldStorageConfig::loadByName($entity_type, $field_name)) && $field_storage->getSetting('comment_type') == $this->entity->id() && !$field_storage->isDeleted()) {
-        $caption .= '<p>' . $this->t('%label is used by the %field field on your site. You can not remove this comment type until you have removed the field.', array(
+        $caption .= '<p>' . $this->t('%label is used by the %field field on your site. You can not remove this comment type until you have removed the field.', [
           '%label' => $this->entity->label(),
           '%field' => $field_storage->label(),
-        )) . '</p>';
+        ]) . '</p>';
       }
     }
 
     if (!empty($comments)) {
-      $caption .= '<p>' . $this->formatPlural(count($comments), '%label is used by 1 comment on your site. You can not remove this comment type until you have removed all of the %label comments.', '%label is used by @count comments on your site. You may not remove %label until you have removed all of the %label comments.', array('%label' => $this->entity->label())) . '</p>';
+      $caption .= '<p>' . $this->formatPlural(count($comments), '%label is used by 1 comment on your site. You can not remove this comment type until you have removed all of the %label comments.', '%label is used by @count comments on your site. You may not remove %label until you have removed all of the %label comments.', ['%label' => $this->entity->label()]) . '</p>';
     }
     if ($caption) {
-      $form['description'] = array('#markup' => $caption);
+      $form['description'] = ['#markup' => $caption];
       return $form;
     }
     else {
diff --git a/core/modules/comment/src/Form/ConfirmDeleteMultiple.php b/core/modules/comment/src/Form/ConfirmDeleteMultiple.php
index c66e428..5906248 100644
--- a/core/modules/comment/src/Form/ConfirmDeleteMultiple.php
+++ b/core/modules/comment/src/Form/ConfirmDeleteMultiple.php
@@ -81,25 +81,25 @@ public function getConfirmText() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $edit = $form_state->getUserInput();
 
-    $form['comments'] = array(
+    $form['comments'] = [
       '#prefix' => '<ul>',
       '#suffix' => '</ul>',
       '#tree' => TRUE,
-    );
+    ];
     // array_filter() returns only elements with actual values.
     $comment_counter = 0;
     $this->comments = $this->commentStorage->loadMultiple(array_keys(array_filter($edit['comments'])));
     foreach ($this->comments as $comment) {
       $cid = $comment->id();
-      $form['comments'][$cid] = array(
+      $form['comments'][$cid] = [
         '#type' => 'hidden',
         '#value' => $cid,
         '#prefix' => '<li>',
         '#suffix' => Html::escape($comment->label()) . '</li>'
-      );
+      ];
       $comment_counter++;
     }
-    $form['operation'] = array('#type' => 'hidden', '#value' => 'delete');
+    $form['operation'] = ['#type' => 'hidden', '#value' => 'delete'];
 
     if (!$comment_counter) {
       drupal_set_message($this->t('There do not appear to be any comments to delete, or your selected comment was deleted by another administrator.'));
@@ -116,7 +116,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form_state->getValue('confirm')) {
       $this->commentStorage->delete($this->comments);
       $count = count($form_state->getValue('comments'));
-      $this->logger('comment')->notice('Deleted @count comments.', array('@count' => $count));
+      $this->logger('comment')->notice('Deleted @count comments.', ['@count' => $count]);
       drupal_set_message($this->formatPlural($count, 'Deleted 1 comment.', 'Deleted @count comments.'));
     }
     $form_state->setRedirectUrl($this->getCancelUrl());
diff --git a/core/modules/comment/src/Form/DeleteForm.php b/core/modules/comment/src/Form/DeleteForm.php
index 285abe5..fa7ab9d 100644
--- a/core/modules/comment/src/Form/DeleteForm.php
+++ b/core/modules/comment/src/Form/DeleteForm.php
@@ -42,7 +42,7 @@ protected function getDeletionMessage() {
    * {@inheritdoc}
    */
   public function logDeletionMessage() {
-    $this->logger('comment')->notice('Deleted comment @cid and its replies.', array('@cid' => $this->entity->id()));
+    $this->logger('comment')->notice('Deleted comment @cid and its replies.', ['@cid' => $this->entity->id()]);
   }
 
 }
diff --git a/core/modules/comment/src/Plugin/Action/UnpublishByKeywordComment.php b/core/modules/comment/src/Plugin/Action/UnpublishByKeywordComment.php
index cacac89..ec1b268 100644
--- a/core/modules/comment/src/Plugin/Action/UnpublishByKeywordComment.php
+++ b/core/modules/comment/src/Plugin/Action/UnpublishByKeywordComment.php
@@ -89,21 +89,21 @@ public function execute($comment = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
-      'keywords' => array(),
-    );
+    return [
+      'keywords' => [],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['keywords'] = array(
+    $form['keywords'] = [
       '#title' => $this->t('Keywords'),
       '#type' => 'textarea',
       '#description' => $this->t('The comment will be unpublished if it contains any of the phrases above. Use a case-sensitive, comma-separated list of phrases. Example: funny, bungee jumping, "Company, Inc."'),
       '#default_value' => Tags::implode($this->configuration['keywords']),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/comment/src/Plugin/Field/FieldFormatter/AuthorNameFormatter.php b/core/modules/comment/src/Plugin/Field/FieldFormatter/AuthorNameFormatter.php
index 43542a0..3e22ede 100644
--- a/core/modules/comment/src/Plugin/Field/FieldFormatter/AuthorNameFormatter.php
+++ b/core/modules/comment/src/Plugin/Field/FieldFormatter/AuthorNameFormatter.php
@@ -24,19 +24,19 @@ class AuthorNameFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       /** @var $comment \Drupal\comment\CommentInterface */
       $comment = $item->getEntity();
       $account = $comment->getOwner();
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#theme' => 'username',
         '#account' => $account,
-        '#cache' => array(
+        '#cache' => [
           'tags' => $account->getCacheTags() + $comment->getCacheTags(),
-        ),
-      );
+        ],
+      ];
     }
 
     return $elements;
diff --git a/core/modules/comment/src/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php b/core/modules/comment/src/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
index c7d9bba..b03accc 100644
--- a/core/modules/comment/src/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
+++ b/core/modules/comment/src/Plugin/Field/FieldFormatter/CommentDefaultFormatter.php
@@ -36,10 +36,10 @@ class CommentDefaultFormatter extends FormatterBase implements ContainerFactoryP
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'view_mode' => 'default',
       'pager_id' => 0,
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -141,8 +141,8 @@ public function __construct($plugin_id, $plugin_definition, FieldDefinitionInter
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
-    $output = array();
+    $elements = [];
+    $output = [];
 
     $field_name = $this->fieldDefinition->getName();
     $entity = $items->getEntity();
@@ -153,7 +153,7 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
       // Comments are added to the search results and search index by
       // comment_node_update_index() instead of by this formatter, so don't
       // return anything if the view mode is search_index or search_result.
-      !in_array($this->viewMode, array('search_result', 'search_index'))) {
+      !in_array($this->viewMode, ['search_result', 'search_index'])) {
       $comment_settings = $this->getFieldSettings();
 
       // Only attempt to render comments if the entity has visible comments.
@@ -203,12 +203,12 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
         }
       }
 
-      $elements[] = $output + array(
+      $elements[] = $output + [
         '#comment_type' => $this->getFieldSetting('comment_type'),
         '#comment_display_mode' => $this->getFieldSetting('default_mode'),
-        'comments' => array(),
-        'comment_form' => array(),
-      );
+        'comments' => [],
+        'comment_form' => [],
+      ];
     }
 
     return $elements;
@@ -218,7 +218,7 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element = array();
+    $element = [];
     $view_modes = $this->getViewModes();
     $element['view_mode'] = [
       '#type' => 'select',
@@ -229,13 +229,13 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
       // Only show the select element when there are more than one options.
       '#access' => count($view_modes) > 1,
     ];
-    $element['pager_id'] = array(
+    $element['pager_id'] = [
       '#type' => 'select',
       '#title' => $this->t('Pager ID'),
       '#options' => range(0, 10),
       '#default_value' => $this->getSetting('pager_id'),
       '#description' => $this->t("Unless you're experiencing problems with pagers related to this field, you should leave this at 0. If using multiple pagers on one page you may need to set this number to a higher value so as not to conflict within the ?page= array. Large values will add a lot of commas to your URLs, so avoid if possible."),
-    );
+    ];
     return $element;
   }
 
diff --git a/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php b/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
index 888b64b..e3fd2b0 100644
--- a/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
+++ b/core/modules/comment/src/Plugin/Field/FieldType/CommentItem.php
@@ -31,22 +31,22 @@ class CommentItem extends FieldItemBase implements CommentItemInterface {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'comment_type' => '',
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    return array(
+    return [
       'default_mode' => CommentManagerInterface::COMMENT_MODE_THREADED,
       'per_page' => 50,
       'form_location' => CommentItemInterface::FORM_BELOW,
       'anonymous' => COMMENT_ANONYMOUS_MAYNOT_CONTACT,
       'preview' => DRUPAL_OPTIONAL,
-    ) + parent::defaultFieldSettings();
+    ] + parent::defaultFieldSettings();
   }
 
   /**
@@ -82,36 +82,36 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'status' => array(
+    return [
+      'columns' => [
+        'status' => [
           'description' => 'Whether comments are allowed on this entity: 0 = no, 1 = closed (read only), 2 = open (read/write).',
           'type' => 'int',
           'default' => 0,
-        ),
-      ),
-      'indexes' => array(),
-      'foreign keys' => array(),
-    );
+        ],
+      ],
+      'indexes' => [],
+      'foreign keys' => [],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
-    $element = array();
+    $element = [];
 
     $settings = $this->getSettings();
 
     $anonymous_user = new AnonymousUserSession();
 
-    $element['default_mode'] = array(
+    $element['default_mode'] = [
       '#type' => 'checkbox',
       '#title' => t('Threading'),
       '#default_value' => $settings['default_mode'],
       '#description' => t('Show comment replies in a threaded list.'),
-    );
-    $element['per_page'] = array(
+    ];
+    $element['per_page'] = [
       '#type' => 'number',
       '#title' => t('Comments per page'),
       '#default_value' => $settings['per_page'],
@@ -119,33 +119,33 @@ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
       '#min' => 10,
       '#max' => 1000,
       '#step' => 10,
-    );
-    $element['anonymous'] = array(
+    ];
+    $element['anonymous'] = [
       '#type' => 'select',
       '#title' => t('Anonymous commenting'),
       '#default_value' => $settings['anonymous'],
-      '#options' => array(
+      '#options' => [
         COMMENT_ANONYMOUS_MAYNOT_CONTACT => t('Anonymous posters may not enter their contact information'),
         COMMENT_ANONYMOUS_MAY_CONTACT => t('Anonymous posters may leave their contact information'),
         COMMENT_ANONYMOUS_MUST_CONTACT => t('Anonymous posters must leave their contact information'),
-      ),
+      ],
       '#access' => $anonymous_user->hasPermission('post comments'),
-    );
-    $element['form_location'] = array(
+    ];
+    $element['form_location'] = [
       '#type' => 'checkbox',
       '#title' => t('Show reply form on the same page as comments'),
       '#default_value' => $settings['form_location'],
-    );
-    $element['preview'] = array(
+    ];
+    $element['preview'] = [
       '#type' => 'radios',
       '#title' => t('Preview comment'),
       '#default_value' => $settings['preview'],
-      '#options' => array(
+      '#options' => [
         DRUPAL_DISABLED => t('Disabled'),
         DRUPAL_OPTIONAL => t('Optional'),
         DRUPAL_REQUIRED => t('Required'),
-      ),
-    );
+      ],
+    ];
 
     return $element;
   }
@@ -171,27 +171,27 @@ public function isEmpty() {
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $element = array();
+    $element = [];
 
     // @todo Inject entity storage once typed-data supports container injection.
     //   See https://www.drupal.org/node/2053415 for more details.
     $comment_types = CommentType::loadMultiple();
-    $options = array();
+    $options = [];
     $entity_type = $this->getEntity()->getEntityTypeId();
     foreach ($comment_types as $comment_type) {
       if ($comment_type->getTargetEntityTypeId() == $entity_type) {
         $options[$comment_type->id()] = $comment_type->label();
       }
     }
-    $element['comment_type'] = array(
+    $element['comment_type'] = [
       '#type' => 'select',
       '#title' => t('Comment type'),
       '#options' => $options,
       '#required' => TRUE,
-      '#description' => $this->t('Select the Comment type to use for this comment field. Manage the comment types from the <a href=":url">administration overview page</a>.', array(':url' => $this->url('entity.comment_type.collection'))),
+      '#description' => $this->t('Select the Comment type to use for this comment field. Manage the comment types from the <a href=":url">administration overview page</a>.', [':url' => $this->url('entity.comment_type.collection')]),
       '#default_value' => $this->getSetting('comment_type'),
       '#disabled' => $has_data,
-    );
+    ];
     return $element;
   }
 
diff --git a/core/modules/comment/src/Plugin/Field/FieldWidget/CommentWidget.php b/core/modules/comment/src/Plugin/Field/FieldWidget/CommentWidget.php
index 818226d..c9478f6 100644
--- a/core/modules/comment/src/Plugin/Field/FieldWidget/CommentWidget.php
+++ b/core/modules/comment/src/Plugin/Field/FieldWidget/CommentWidget.php
@@ -27,26 +27,26 @@ class CommentWidget extends WidgetBase {
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
     $entity = $items->getEntity();
 
-    $element['status'] = array(
+    $element['status'] = [
       '#type' => 'radios',
       '#title' => t('Comments'),
       '#title_display' => 'invisible',
       '#default_value' => $items->status,
-      '#options' => array(
+      '#options' => [
         CommentItemInterface::OPEN => t('Open'),
         CommentItemInterface::CLOSED => t('Closed'),
         CommentItemInterface::HIDDEN => t('Hidden'),
-      ),
-      CommentItemInterface::OPEN => array(
+      ],
+      CommentItemInterface::OPEN => [
         '#description' => t('Users with the "Post comments" permission can post comments.'),
-      ),
-      CommentItemInterface::CLOSED => array(
+      ],
+      CommentItemInterface::CLOSED => [
         '#description' => t('Users cannot post comments, but existing comments will be displayed.'),
-      ),
-      CommentItemInterface::HIDDEN => array(
+      ],
+      CommentItemInterface::HIDDEN => [
         '#description' => t('Comments are hidden from view.'),
-      ),
-    );
+      ],
+    ];
     // If the entity doesn't have any comments, the "hidden" option makes no
     // sense, so don't even bother presenting it to the user unless this is the
     // default value widget on the field settings form.
@@ -65,19 +65,19 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       // Override widget title to be helpful for end users.
       $element['#title'] = $this->t('Comment settings');
 
-      $element += array(
+      $element += [
         '#type' => 'details',
         // Open the details when the selected value is different to the stored
         // default values for the field.
         '#open' => ($items->status != $field_default_values[0]['status']),
         '#group' => 'advanced',
-        '#attributes' => array(
-          'class' => array('comment-' . Html::getClass($entity->getEntityTypeId()) . '-settings-form'),
-        ),
-        '#attached' => array(
-          'library' => array('comment/drupal.comment'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['comment-' . Html::getClass($entity->getEntityTypeId()) . '-settings-form'],
+        ],
+        '#attached' => [
+          'library' => ['comment/drupal.comment'],
+        ],
+      ];
     }
 
     return $element;
@@ -90,13 +90,13 @@ public function massageFormValues(array $values, array $form, FormStateInterface
     // Add default values for statistics properties because we don't want to
     // have them in form.
     foreach ($values as &$value) {
-      $value += array(
+      $value += [
         'cid' => 0,
         'last_comment_timestamp' => 0,
         'last_comment_name' => '',
         'last_comment_uid' => 0,
         'comment_count' => 0,
-      );
+      ];
     }
     return $values;
   }
diff --git a/core/modules/comment/src/Plugin/Menu/LocalTask/UnapprovedComments.php b/core/modules/comment/src/Plugin/Menu/LocalTask/UnapprovedComments.php
index 5fa0193..89542d3 100644
--- a/core/modules/comment/src/Plugin/Menu/LocalTask/UnapprovedComments.php
+++ b/core/modules/comment/src/Plugin/Menu/LocalTask/UnapprovedComments.php
@@ -54,7 +54,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function getTitle() {
-    return $this->t('Unapproved comments (@count)', array('@count' => $this->commentStorage->getUnapprovedCount()));
+    return $this->t('Unapproved comments (@count)', ['@count' => $this->commentStorage->getUnapprovedCount()]);
   }
 
 }
diff --git a/core/modules/comment/src/Plugin/Validation/Constraint/CommentNameConstraintValidator.php b/core/modules/comment/src/Plugin/Validation/Constraint/CommentNameConstraintValidator.php
index f06dfd8..87cdaf9 100644
--- a/core/modules/comment/src/Plugin/Validation/Constraint/CommentNameConstraintValidator.php
+++ b/core/modules/comment/src/Plugin/Validation/Constraint/CommentNameConstraintValidator.php
@@ -55,9 +55,9 @@ public function validate($entity, Constraint $constraint) {
     // Do not allow unauthenticated comment authors to use a name that is
     // taken by a registered user.
     if (isset($author_name) && $author_name !== '' && $owner_id === 0) {
-      $users = $this->userStorage->loadByProperties(array('name' => $author_name));
+      $users = $this->userStorage->loadByProperties(['name' => $author_name]);
       if (!empty($users)) {
-        $this->context->buildViolation($constraint->messageNameTaken, array('%name' => $author_name))
+        $this->context->buildViolation($constraint->messageNameTaken, ['%name' => $author_name])
           ->atPath('name')
           ->addViolation();
       }
diff --git a/core/modules/comment/src/Plugin/migrate/destination/EntityComment.php b/core/modules/comment/src/Plugin/migrate/destination/EntityComment.php
index a3e82af..efce666 100644
--- a/core/modules/comment/src/Plugin/migrate/destination/EntityComment.php
+++ b/core/modules/comment/src/Plugin/migrate/destination/EntityComment.php
@@ -80,7 +80,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     if ($row->isStub() && ($state = $this->state->get('comment.maintain_entity_statistics', 0))) {
       $this->state->set('comment.maintain_entity_statistics', 0);
     }
diff --git a/core/modules/comment/src/Plugin/migrate/destination/EntityCommentType.php b/core/modules/comment/src/Plugin/migrate/destination/EntityCommentType.php
index b014af3..9bee87a 100644
--- a/core/modules/comment/src/Plugin/migrate/destination/EntityCommentType.php
+++ b/core/modules/comment/src/Plugin/migrate/destination/EntityCommentType.php
@@ -15,7 +15,7 @@ class EntityCommentType extends EntityConfigBase {
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $entity_ids = parent::import($row, $old_destination_id_values);
     \Drupal::service('comment.manager')->addBodyField(reset($entity_ids));
     return $entity_ids;
diff --git a/core/modules/comment/src/Plugin/migrate/source/d6/Comment.php b/core/modules/comment/src/Plugin/migrate/source/d6/Comment.php
index 6081f39..93f77a0 100644
--- a/core/modules/comment/src/Plugin/migrate/source/d6/Comment.php
+++ b/core/modules/comment/src/Plugin/migrate/source/d6/Comment.php
@@ -20,11 +20,11 @@ class Comment extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('comments', 'c')
-      ->fields('c', array('cid', 'pid', 'nid', 'uid', 'subject',
+      ->fields('c', ['cid', 'pid', 'nid', 'uid', 'subject',
         'comment', 'hostname', 'timestamp', 'status', 'thread', 'name',
-        'mail', 'homepage', 'format'));
+        'mail', 'homepage', 'format']);
     $query->innerJoin('node', 'n', 'c.nid = n.nid');
-    $query->fields('n', array('type'));
+    $query->fields('n', ['type']);
     $query->orderBy('c.timestamp');
     return $query;
   }
@@ -52,7 +52,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'cid' => $this->t('Comment ID.'),
       'pid' => $this->t('Parent comment ID. If set to 0, this comment is not a reply to an existing comment.'),
       'nid' => $this->t('The {node}.nid to which this comment is a reply.'),
@@ -68,7 +68,7 @@ public function fields() {
       'mail' => $this->t("The comment author's email address from the comment form, if user is anonymous, and the 'Anonymous users may/must leave their contact information' setting is turned on."),
       'homepage' => $this->t("The comment author's home page address from the comment form, if user is anonymous, and the 'Anonymous users may/must leave their contact information' setting is turned on."),
       'type' => $this->t("The {node}.type to which this comment is a reply."),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariable.php b/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariable.php
index 3294721..a56fb4d 100644
--- a/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariable.php
+++ b/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariable.php
@@ -35,7 +35,7 @@ public function count() {
    */
   protected function getCommentVariables() {
     $comment_prefixes = array_keys($this->commentPrefixes());
-    $variables = array();
+    $variables = [];
     $node_types = $this->select('node_type', 'nt')
       ->fields('nt', ['type'])
       ->execute()
@@ -45,7 +45,7 @@ protected function getCommentVariables() {
         $variables[] = $prefix . '_' . $node_type;
       }
     }
-    $return = array();
+    $return = [];
     $values = $this->select('variable', 'v')
       ->fields('v', ['name', 'value'])
       ->condition('name', $variables, 'IN')
@@ -74,17 +74,17 @@ protected function getCommentVariables() {
    * {@inheritdoc}
    */
   public function fields() {
-    return $this->commentPrefixes() + array(
+    return $this->commentPrefixes() + [
       'node_type' => $this->t('The node type'),
       'comment_type' => $this->t('The comment type'),
-    );
+    ];
   }
 
   /**
    * Comment related data for fields.
    */
   protected function commentPrefixes() {
-    return array(
+    return [
       'comment' => $this->t('Default comment setting'),
       'comment_default_mode' => $this->t('Default display mode'),
       'comment_default_order' => $this->t('Default display order'),
@@ -94,7 +94,7 @@ protected function commentPrefixes() {
       'comment_subject_field' => $this->t('Comment subject field'),
       'comment_preview' => $this->t('Preview comment'),
       'comment_form_location' => $this->t('Location of comment submission form'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariablePerCommentType.php b/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariablePerCommentType.php
index 5d16ed0..0eea686 100644
--- a/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariablePerCommentType.php
+++ b/core/modules/comment/src/Plugin/migrate/source/d6/CommentVariablePerCommentType.php
@@ -17,24 +17,24 @@ class CommentVariablePerCommentType extends CommentVariable {
   protected function getCommentVariables() {
     $node_types = parent::getCommentVariables();
     // The return key used to separate comment types with hidden subject field.
-    $return = array();
+    $return = [];
     foreach ($node_types as $node_type => $data) {
       // Only 2 comment types depending on subject field visibility.
       if (!empty($data['comment_subject_field'])) {
         // Default label and description should be set in migration.
-        $return['comment'] = array(
+        $return['comment'] = [
           'comment_type' => 'comment',
           'label' => $this->t('Default comments'),
           'description' => $this->t('Allows commenting on content')
-        );
+        ];
       }
       else {
         // Provide a special comment type with hidden subject field.
-        $return['comment_no_subject'] = array(
+        $return['comment_no_subject'] = [
           'comment_type' => 'comment_no_subject',
           'label' => $this->t('Comments without subject field'),
           'description' => $this->t('Allows commenting on content, comments without subject field')
-        );
+        ];
       }
     }
     return $return;
@@ -44,11 +44,11 @@ protected function getCommentVariables() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'comment_type' => $this->t('The comment type'),
       'label' => $this->t('The comment type label'),
       'description' => $this->t('The comment type description'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/comment/src/Plugin/migrate/source/d7/Comment.php b/core/modules/comment/src/Plugin/migrate/source/d7/Comment.php
index 5531f1d..e643eb1 100644
--- a/core/modules/comment/src/Plugin/migrate/source/d7/Comment.php
+++ b/core/modules/comment/src/Plugin/migrate/source/d7/Comment.php
@@ -47,7 +47,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'cid' => $this->t('Comment ID.'),
       'pid' => $this->t('Parent comment ID. If set to 0, this comment is not a reply to an existing comment.'),
       'nid' => $this->t('The {node}.nid to which this comment is a reply.'),
@@ -64,7 +64,7 @@ public function fields() {
       'mail' => $this->t("The comment author's email address from the comment form, if user is anonymous, and the 'Anonymous users may/must leave their contact information' setting is turned on."),
       'homepage' => $this->t("The comment author's home page address from the comment form, if user is anonymous, and the 'Anonymous users may/must leave their contact information' setting is turned on."),
       'type' => $this->t("The {node}.type to which this comment is a reply."),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/comment/src/Plugin/migrate/source/d7/CommentType.php b/core/modules/comment/src/Plugin/migrate/source/d7/CommentType.php
index fc194b2..2ac7c97 100644
--- a/core/modules/comment/src/Plugin/migrate/source/d7/CommentType.php
+++ b/core/modules/comment/src/Plugin/migrate/source/d7/CommentType.php
@@ -21,7 +21,7 @@ class CommentType extends DrupalSqlBase {
    *
    * @var string[]
    */
-  protected $nodeTypes = array();
+  protected $nodeTypes = [];
 
   /**
    * {@inheritdoc}
@@ -29,7 +29,7 @@ class CommentType extends DrupalSqlBase {
   public function query() {
     return $this->select('field_config_instance', 'fci')
       ->distinct()
-      ->fields('fci', array('bundle'))
+      ->fields('fci', ['bundle'])
       ->condition('fci.entity_type', 'comment');
   }
 
@@ -38,7 +38,7 @@ public function query() {
    */
   protected function initializeIterator() {
     $this->nodeTypes = $this->select('node_type', 'nt')
-      ->fields('nt', array('type', 'name'))
+      ->fields('nt', ['type', 'name'])
       ->execute()
       ->fetchAllKeyed();
 
@@ -71,7 +71,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'label' => $this->t('The label of the comment type.'),
       'bundle' => $this->t('Bundle ID of the comment type.'),
       'node_type' => $this->t('The node type to which this comment type is attached.'),
@@ -81,18 +81,18 @@ public function fields() {
       'form_location' => $this->t('Location of the comment form.'),
       'preview' => $this->t('Whether previews are enabled for the comment type.'),
       'subject' => $this->t('Whether a subject field is enabled for the comment type.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'bundle' => array(
+    return [
+      'bundle' => [
         'type' => 'string',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/comment/src/Plugin/views/argument/UserUid.php b/core/modules/comment/src/Plugin/views/argument/UserUid.php
index 4ad4185..1fc5992 100644
--- a/core/modules/comment/src/Plugin/views/argument/UserUid.php
+++ b/core/modules/comment/src/Plugin/views/argument/UserUid.php
@@ -54,7 +54,7 @@ function title() {
       $title = \Drupal::config('user.settings')->get('anonymous');
     }
     else {
-      $title = $this->database->query('SELECT name FROM {users_field_data} WHERE uid = :uid AND default_langcode = 1', array(':uid' => $this->argument))->fetchField();
+      $title = $this->database->query('SELECT name FROM {users_field_data} WHERE uid = :uid AND default_langcode = 1', [':uid' => $this->argument])->fetchField();
     }
     if (empty($title)) {
       return $this->t('No user');
@@ -103,7 +103,7 @@ public function query($group_by = FALSE) {
    * {@inheritdoc}
    */
   public function getSortName() {
-    return $this->t('Numerical', array(), array('context' => 'Sort order'));
+    return $this->t('Numerical', [], ['context' => 'Sort order']);
   }
 
 }
diff --git a/core/modules/comment/src/Plugin/views/field/EntityLink.php b/core/modules/comment/src/Plugin/views/field/EntityLink.php
index dc4f8cf..03e6f6c 100644
--- a/core/modules/comment/src/Plugin/views/field/EntityLink.php
+++ b/core/modules/comment/src/Plugin/views/field/EntityLink.php
@@ -27,7 +27,7 @@ class EntityLink extends FieldPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['teaser'] = array('default' => FALSE);
+    $options['teaser'] = ['default' => FALSE];
     return $options;
   }
 
@@ -35,12 +35,12 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['teaser'] = array(
+    $form['teaser'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show teaser-style link'),
       '#default_value' => $this->options['teaser'],
       '#description' => $this->t('Show the comment link in the form used on standard entity teasers, rather than the full entity form.'),
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
@@ -55,7 +55,7 @@ public function query() {}
    */
   public function preRender(&$values) {
     // Render all nodes, so you can grep the comment links.
-    $entities = array();
+    $entities = [];
     foreach ($values as $row) {
       $entity = $row->_entity;
       $entities[$entity->id()] = $entity;
diff --git a/core/modules/comment/src/Plugin/views/field/NodeNewComments.php b/core/modules/comment/src/Plugin/views/field/NodeNewComments.php
index 5a9f5b3..c53b52e 100644
--- a/core/modules/comment/src/Plugin/views/field/NodeNewComments.php
+++ b/core/modules/comment/src/Plugin/views/field/NodeNewComments.php
@@ -68,7 +68,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     $this->additional_fields['entity_id'] = 'nid';
     $this->additional_fields['type'] = 'type';
-    $this->additional_fields['comment_count'] = array('table' => 'comment_entity_statistics', 'field' => 'comment_count');
+    $this->additional_fields['comment_count'] = ['table' => 'comment_entity_statistics', 'field' => 'comment_count'];
   }
 
   /**
@@ -77,7 +77,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['link_to_comment'] = array('default' => TRUE);
+    $options['link_to_comment'] = ['default' => TRUE];
 
     return $options;
   }
@@ -86,12 +86,12 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['link_to_comment'] = array(
+    $form['link_to_comment'] = [
       '#title' => $this->t('Link this field to new comments'),
       '#description' => $this->t("Enable to override this field's links."),
       '#type' => 'checkbox',
       '#default_value' => $this->options['link_to_comment'],
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
@@ -114,14 +114,14 @@ public function preRender(&$values) {
       return;
     }
 
-    $nids = array();
-    $ids = array();
+    $nids = [];
+    $ids = [];
     foreach ($values as $id => $result) {
       $nids[] = $result->{$this->aliases['nid']};
       $values[$id]->{$this->field_alias} = 0;
       // Create a reference so we can find this record in the values again.
       if (empty($ids[$result->{$this->aliases['nid']}])) {
-        $ids[$result->{$this->aliases['nid']}] = array();
+        $ids[$result->{$this->aliases['nid']}] = [];
       }
       $ids[$result->{$this->aliases['nid']}][] = $id;
     }
@@ -129,13 +129,13 @@ public function preRender(&$values) {
     if ($nids) {
       $result = $this->database->query("SELECT n.nid, COUNT(c.cid) as num_comments FROM {node} n INNER JOIN {comment_field_data} c ON n.nid = c.entity_id AND c.entity_type = 'node' AND c.default_langcode = 1
         LEFT JOIN {history} h ON h.nid = n.nid AND h.uid = :h_uid WHERE n.nid IN ( :nids[] )
-        AND c.changed > GREATEST(COALESCE(h.timestamp, :timestamp1), :timestamp2) AND c.status = :status GROUP BY n.nid", array(
+        AND c.changed > GREATEST(COALESCE(h.timestamp, :timestamp1), :timestamp2) AND c.status = :status GROUP BY n.nid", [
         ':status' => CommentInterface::PUBLISHED,
         ':h_uid' => $user->id(),
         ':nids[]' => $nids,
         ':timestamp1' => HISTORY_READ_LIMIT,
         ':timestamp2' => HISTORY_READ_LIMIT,
-      ));
+      ]);
       foreach ($result as $node) {
         foreach ($ids[$node->nid] as $id) {
           $values[$id]->{$this->field_alias} = $node->num_comments;
@@ -181,7 +181,7 @@ protected function renderLink($data, ResultRow $values) {
         ->getNewCommentPageNumber($this->getValue($values, 'comment_count'), $this->getValue($values), $node, $comment_field_name);
       $this->options['alter']['make_link'] = TRUE;
       $this->options['alter']['url'] = $node->urlInfo();
-      $this->options['alter']['query'] = $page_number ? array('page' => $page_number) : NULL;
+      $this->options['alter']['query'] = $page_number ? ['page' => $page_number] : NULL;
       $this->options['alter']['fragment'] = 'new';
     }
 
diff --git a/core/modules/comment/src/Plugin/views/field/StatisticsLastCommentName.php b/core/modules/comment/src/Plugin/views/field/StatisticsLastCommentName.php
index 61a5d17..fa24c3f 100644
--- a/core/modules/comment/src/Plugin/views/field/StatisticsLastCommentName.php
+++ b/core/modules/comment/src/Plugin/views/field/StatisticsLastCommentName.php
@@ -23,19 +23,19 @@ public function query() {
     // have to join in a specially related user table.
     $this->ensureMyTable();
     // join 'users' to this table via vid
-    $definition = array(
+    $definition = [
       'table' => 'users_field_data',
       'field' => 'uid',
       'left_table' => 'comment_entity_statistics',
       'left_field' => 'last_comment_uid',
-      'extra' => array(
-        array(
+      'extra' => [
+        [
           'field' => 'uid',
           'operator' => '!=',
           'value' => '0'
-        )
-      )
-    );
+        ]
+      ]
+    ];
     $join = \Drupal::service('plugin.manager.views.join')->createInstance('standard', $definition);
 
     // nes_user alias so this can work with the sort handler, below.
@@ -53,7 +53,7 @@ public function query() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['link_to_user'] = array('default' => TRUE);
+    $options['link_to_user'] = ['default' => TRUE];
 
     return $options;
   }
@@ -66,10 +66,10 @@ public function render(ResultRow $values) {
       $account = User::create();
       $account->name = $this->getValue($values);
       $account->uid = $values->{$this->uid};
-      $username = array(
+      $username = [
         '#theme' => 'username',
         '#account' => $account,
-      );
+      ];
       return drupal_render($username);
     }
     else {
diff --git a/core/modules/comment/src/Plugin/views/filter/NodeComment.php b/core/modules/comment/src/Plugin/views/filter/NodeComment.php
index e34584f..238c05e 100644
--- a/core/modules/comment/src/Plugin/views/filter/NodeComment.php
+++ b/core/modules/comment/src/Plugin/views/filter/NodeComment.php
@@ -15,11 +15,11 @@
 class NodeComment extends InOperator {
 
   public function getValueOptions() {
-    $this->valueOptions = array(
+    $this->valueOptions = [
       CommentItemInterface::HIDDEN => $this->t('Hidden'),
       CommentItemInterface::CLOSED => $this->t('Closed'),
       CommentItemInterface::OPEN => $this->t('Open'),
-    );
+    ];
     return $this->valueOptions;
   }
 
diff --git a/core/modules/comment/src/Plugin/views/row/Rss.php b/core/modules/comment/src/Plugin/views/row/Rss.php
index d528040..cb9c104 100644
--- a/core/modules/comment/src/Plugin/views/row/Rss.php
+++ b/core/modules/comment/src/Plugin/views/row/Rss.php
@@ -40,7 +40,7 @@ class Rss extends RssPluginBase {
   protected $entityTypeId = 'comment';
 
   public function preRender($result) {
-    $cids = array();
+    $cids = [];
 
     foreach ($result as $row) {
       $cids[] = $row->cid;
@@ -79,23 +79,23 @@ public function render($row) {
       return;
     }
 
-    $comment->link = $comment->url('canonical', array('absolute' => TRUE));
-    $comment->rss_namespaces = array();
-    $comment->rss_elements = array(
-      array(
+    $comment->link = $comment->url('canonical', ['absolute' => TRUE]);
+    $comment->rss_namespaces = [];
+    $comment->rss_elements = [
+      [
         'key' => 'pubDate',
         'value' => gmdate('r', $comment->getCreatedTime()),
-      ),
-      array(
+      ],
+      [
         'key' => 'dc:creator',
         'value' => $comment->getAuthorName(),
-      ),
-      array(
+      ],
+      [
         'key' => 'guid',
         'value' => 'comment ' . $comment->id() . ' at ' . $base_url,
-        'attributes' => array('isPermaLink' => 'false'),
-      ),
-    );
+        'attributes' => ['isPermaLink' => 'false'],
+      ],
+    ];
 
     // The comment gets built and modules add to or modify
     // $comment->rss_elements and $comment->rss_namespaces.
@@ -118,12 +118,12 @@ public function render($row) {
     $item->elements = &$comment->rss_elements;
     $item->cid = $comment->id();
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $item,
-    );
+    ];
     return $build;
   }
 
diff --git a/core/modules/comment/src/Plugin/views/sort/StatisticsLastCommentName.php b/core/modules/comment/src/Plugin/views/sort/StatisticsLastCommentName.php
index 863b3a4..48f556e 100644
--- a/core/modules/comment/src/Plugin/views/sort/StatisticsLastCommentName.php
+++ b/core/modules/comment/src/Plugin/views/sort/StatisticsLastCommentName.php
@@ -16,12 +16,12 @@ class StatisticsLastCommentName extends SortPluginBase {
 
   public function query() {
     $this->ensureMyTable();
-    $definition = array(
+    $definition = [
       'table' => 'users_field_data',
       'field' => 'uid',
       'left_table' => 'comment_entity_statistics',
       'left_field' => 'last_comment_uid',
-    );
+    ];
     $join = \Drupal::service('plugin.manager.views.join')->createInstance('standard', $definition);
 
     // @todo this might be safer if we had an ensure_relationship rather than guessing
diff --git a/core/modules/comment/src/Plugin/views/wizard/Comment.php b/core/modules/comment/src/Plugin/views/wizard/Comment.php
index 1f0d4aa..61d92c5 100644
--- a/core/modules/comment/src/Plugin/views/wizard/Comment.php
+++ b/core/modules/comment/src/Plugin/views/wizard/Comment.php
@@ -27,16 +27,16 @@ class Comment extends WizardPluginBase {
   /**
    * Set default values for the filters.
    */
-  protected $filters = array(
-    'status' => array(
+  protected $filters = [
+    'status' => [
       'value' => TRUE,
       'table' => 'comment_field_data',
       'field' => 'status',
       'plugin_id' => 'boolean',
       'entity_type' => 'comment',
       'entity_field' => 'status',
-    ),
-    'status_node' => array(
+    ],
+    'status_node' => [
       'value' => TRUE,
       'table' => 'node_field_data',
       'field' => 'status',
@@ -44,14 +44,14 @@ class Comment extends WizardPluginBase {
       'relationship' => 'node',
       'entity_type' => 'node',
       'entity_field' => 'status',
-    ),
-  );
+    ],
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function rowStyleOptions() {
-    $options = array();
+    $options = [];
     $options['entity:comment'] = $this->t('comments');
     $options['fields'] = $this->t('fields');
     return $options;
diff --git a/core/modules/comment/src/Tests/CommentActionsTest.php b/core/modules/comment/src/Tests/CommentActionsTest.php
index 220be20..8b741e7 100644
--- a/core/modules/comment/src/Tests/CommentActionsTest.php
+++ b/core/modules/comment/src/Tests/CommentActionsTest.php
@@ -17,7 +17,7 @@ class CommentActionsTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('dblog', 'action');
+  public static $modules = ['dblog', 'action'];
 
   /**
    * Tests comment publish and unpublish actions.
@@ -30,12 +30,12 @@ function testCommentPublishUnpublishActions() {
 
     // Unpublish a comment.
     $action = Action::load('comment_unpublish_action');
-    $action->execute(array($comment));
+    $action->execute([$comment]);
     $this->assertTrue($comment->isPublished() === FALSE, 'Comment was unpublished');
 
     // Publish a comment.
     $action = Action::load('comment_publish_action');
-    $action->execute(array($comment));
+    $action->execute([$comment]);
     $this->assertTrue($comment->isPublished() === TRUE, 'Comment was published');
   }
 
@@ -46,15 +46,15 @@ function testCommentUnpublishByKeyword() {
     $this->drupalLogin($this->adminUser);
     $keyword_1 = $this->randomMachineName();
     $keyword_2 = $this->randomMachineName();
-    $action = Action::create(array(
+    $action = Action::create([
       'id' => 'comment_unpublish_by_keyword_action',
       'label' => $this->randomMachineName(),
       'type' => 'comment',
-      'configuration' => array(
-        'keywords' => array($keyword_1, $keyword_2),
-      ),
+      'configuration' => [
+        'keywords' => [$keyword_1, $keyword_2],
+      ],
       'plugin' => 'comment_unpublish_by_keyword_action',
-    ));
+    ]);
     $action->save();
 
     $comment = $this->postComment($this->node, $keyword_2, $this->randomMachineName());
@@ -64,7 +64,7 @@ function testCommentUnpublishByKeyword() {
 
     $this->assertTrue($comment->isPublished() === TRUE, 'The comment status was set to published.');
 
-    $action->execute(array($comment));
+    $action->execute([$comment]);
     $this->assertTrue($comment->isPublished() === FALSE, 'The comment status was set to not published.');
   }
 
diff --git a/core/modules/comment/src/Tests/CommentAdminTest.php b/core/modules/comment/src/Tests/CommentAdminTest.php
index 5ae57cb..74e6e45 100644
--- a/core/modules/comment/src/Tests/CommentAdminTest.php
+++ b/core/modules/comment/src/Tests/CommentAdminTest.php
@@ -23,11 +23,11 @@ protected function setUp() {
    */
   function testApprovalAdminInterface() {
     // Set anonymous comments to require approval.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => TRUE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
     $this->setCommentAnonymous('0'); // Ensure that doesn't require contact info.
 
@@ -46,14 +46,14 @@ function testApprovalAdminInterface() {
     // Get unapproved comment id.
     $this->drupalLogin($this->adminUser);
     $anonymous_comment4 = $this->getUnapprovedComment($subject);
-    $anonymous_comment4 = Comment::create(array(
+    $anonymous_comment4 = Comment::create([
       'cid' => $anonymous_comment4,
       'subject' => $subject,
       'comment_body' => $body,
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment'
-    ));
+    ]);
     $this->drupalLogout();
 
     $this->assertFalse($this->commentExists($anonymous_comment4), 'Anonymous comment was not published.');
@@ -73,29 +73,29 @@ function testApprovalAdminInterface() {
     // Publish multiple comments in one operation.
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('admin/content/comment/approval');
-    $this->assertText(t('Unapproved comments (@count)', array('@count' => 2)), 'Two unapproved comments waiting for approval.');
-    $edit = array(
+    $this->assertText(t('Unapproved comments (@count)', ['@count' => 2]), 'Two unapproved comments waiting for approval.');
+    $edit = [
       "comments[{$comments[0]->id()}]" => 1,
       "comments[{$comments[1]->id()}]" => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Update'));
-    $this->assertText(t('Unapproved comments (@count)', array('@count' => 0)), 'All comments were approved.');
+    $this->assertText(t('Unapproved comments (@count)', ['@count' => 0]), 'All comments were approved.');
 
     // Delete multiple comments in one operation.
-    $edit = array(
+    $edit = [
       'operation' => 'delete',
       "comments[{$comments[0]->id()}]" => 1,
       "comments[{$comments[1]->id()}]" => 1,
       "comments[{$anonymous_comment4->id()}]" => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Update'));
     $this->assertText(t('Are you sure you want to delete these comments and all their children?'), 'Confirmation required.');
     $this->drupalPostForm(NULL, $edit, t('Delete comments'));
     $this->assertText(t('No comments available.'), 'All comments were deleted.');
     // Test message when no comments selected.
-    $edit = array(
+    $edit = [
       'operation' => 'delete',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Update'));
     $this->assertText(t('Select one or more comments to perform the update on.'));
   }
@@ -105,11 +105,11 @@ function testApprovalAdminInterface() {
    */
   function testApprovalNodeInterface() {
     // Set anonymous comments to require approval.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => TRUE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
     $this->setCommentAnonymous('0'); // Ensure that doesn't require contact info.
     $this->drupalLogout();
@@ -123,14 +123,14 @@ function testApprovalNodeInterface() {
     // Get unapproved comment id.
     $this->drupalLogin($this->adminUser);
     $anonymous_comment4 = $this->getUnapprovedComment($subject);
-    $anonymous_comment4 = Comment::create(array(
+    $anonymous_comment4 = Comment::create([
       'cid' => $anonymous_comment4,
       'subject' => $subject,
       'comment_body' => $body,
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment'
-    ));
+    ]);
     $this->drupalLogout();
 
     $this->assertFalse($this->commentExists($anonymous_comment4), 'Anonymous comment was not published.');
@@ -139,7 +139,7 @@ function testApprovalNodeInterface() {
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('comment/1/approve');
     $this->assertResponse(403, 'Forged comment approval was denied.');
-    $this->drupalGet('comment/1/approve', array('query' => array('token' => 'forged')));
+    $this->drupalGet('comment/1/approve', ['query' => ['token' => 'forged']]);
     $this->assertResponse(403, 'Forged comment approval was denied.');
     $this->drupalGet('comment/1/edit');
     $this->assertFieldChecked('edit-status-0');
@@ -178,11 +178,11 @@ public function testCommentAdmin() {
    */
   public function testEditComment() {
     // Enable anonymous user comments.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
+    ]);
 
     // Log in as a web user.
     $this->drupalLogin($this->webUser);
@@ -199,7 +199,7 @@ public function testEditComment() {
     // Post comment with contact info (required).
     $author_name = $this->randomMachineName();
     $author_mail = $this->randomMachineName() . '@example.com';
-    $anonymous_comment = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), array('name' => $author_name, 'mail' => $author_mail));
+    $anonymous_comment = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), ['name' => $author_name, 'mail' => $author_mail]);
 
     // Log in as an admin user.
     $this->drupalLogin($this->adminUser);
diff --git a/core/modules/comment/src/Tests/CommentAnonymousTest.php b/core/modules/comment/src/Tests/CommentAnonymousTest.php
index 2a5feb2..7c94e5a 100644
--- a/core/modules/comment/src/Tests/CommentAnonymousTest.php
+++ b/core/modules/comment/src/Tests/CommentAnonymousTest.php
@@ -15,16 +15,16 @@ protected function setUp() {
     parent::setUp();
 
     // Enable anonymous and authenticated user comments.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array(
+    ]);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, [
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
+    ]);
   }
 
   /**
@@ -66,10 +66,10 @@ function testAnonymous() {
     $this->assertTrue($this->commentExists($anonymous_comment1), 'Anonymous comment without contact info found.');
 
     // Ensure anonymous users cannot post in the name of registered users.
-    $edit = array(
+    $edit = [
       'name' => $this->adminUser->getUsername(),
       'comment_body[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $this->node->id() . '/comment', $edit, t('Save'));
     $this->assertRaw(t('The name you used (%name) belongs to a registered user.', [
       '%name' => $this->adminUser->getUsername(),
@@ -97,12 +97,12 @@ function testAnonymous() {
     $this->assertTrue($this->commentExists($anonymous_comment2), 'Anonymous comment with contact info (optional) found.');
 
     // Ensure anonymous users cannot post in the name of registered users.
-    $edit = array(
+    $edit = [
       'name' => $this->adminUser->getUsername(),
       'mail' => $this->randomMachineName() . '@example.com',
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $this->node->id() . '/comment', $edit, t('Save'));
     $this->assertRaw(t('The name you used (%name) belongs to a registered user.', [
       '%name' => $this->adminUser->getUsername(),
@@ -125,7 +125,7 @@ function testAnonymous() {
     // Post comment with contact info (required).
     $author_name = $this->randomMachineName();
     $author_mail = $this->randomMachineName() . '@example.com';
-    $anonymous_comment3 = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), array('name' => $author_name, 'mail' => $author_mail));
+    $anonymous_comment3 = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), ['name' => $author_name, 'mail' => $author_mail]);
     $this->assertTrue($this->commentExists($anonymous_comment3), 'Anonymous comment with contact info (required) found.');
 
     // Make sure the user data appears correctly when editing the comment.
@@ -159,11 +159,11 @@ function testAnonymous() {
     $this->assertResponse(403);
 
     // Reset.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => FALSE,
       'post comments' => FALSE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
 
     // Attempt to view comments while disallowed.
     // NOTE: if authenticated user has permission to post comments, then a
@@ -176,21 +176,21 @@ function testAnonymous() {
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment');
     $this->assertResponse(403);
 
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => FALSE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
     $this->drupalGet('node/' . $this->node->id());
     $this->assertPattern('@<h2[^>]*>Comments</h2>@', 'Comments were displayed.');
     $this->assertLink('Log in', 1, 'Link to login was found.');
     $this->assertLink('register', 1, 'Link to register was found.');
 
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => FALSE,
       'post comments' => TRUE,
       'skip comment approval' => TRUE,
-    ));
+    ]);
     $this->drupalGet('node/' . $this->node->id());
     $this->assertNoPattern('@<h2[^>]*>Comments</h2>@', 'Comments were not displayed.');
     $this->assertFieldByName('subject[0][value]', '', 'Subject field found.');
diff --git a/core/modules/comment/src/Tests/CommentBlockTest.php b/core/modules/comment/src/Tests/CommentBlockTest.php
index de92238..fca7223 100644
--- a/core/modules/comment/src/Tests/CommentBlockTest.php
+++ b/core/modules/comment/src/Tests/CommentBlockTest.php
@@ -17,12 +17,12 @@ class CommentBlockTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'views');
+  public static $modules = ['block', 'views'];
 
   protected function setUp() {
     parent::setUp();
     // Update admin user to have the 'administer blocks' permission.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer content types',
       'administer comments',
       'skip comment approval',
@@ -30,7 +30,7 @@ protected function setUp() {
       'access comments',
       'access content',
       'administer blocks',
-     ));
+     ]);
   }
 
   /**
@@ -54,10 +54,10 @@ function testRecentCommentBlock() {
     // Test that a user without the 'access comments' permission cannot see the
     // block.
     $this->drupalLogout();
-    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, array('access comments'));
+    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, ['access comments']);
     $this->drupalGet('');
     $this->assertNoText(t('Recent comments'));
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access comments'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access comments']);
 
     // Test that a user with the 'access comments' permission can see the
     // block.
@@ -68,11 +68,11 @@ function testRecentCommentBlock() {
     // Test the only the 10 latest comments are shown and in the proper order.
     $this->assertNoText($comments[10]->getSubject(), 'Comment 11 not found in block.');
     for ($i = 0; $i < 10; $i++) {
-      $this->assertText($comments[$i]->getSubject(), SafeMarkup::format('Comment @number found in block.', array('@number' => 10 - $i)));
+      $this->assertText($comments[$i]->getSubject(), SafeMarkup::format('Comment @number found in block.', ['@number' => 10 - $i]));
       if ($i > 1) {
         $previous_position = $position;
         $position = strpos($this->getRawContent(), $comments[$i]->getSubject());
-        $this->assertTrue($position > $previous_position, SafeMarkup::format('Comment @a appears after comment @b', array('@a' => 10 - $i, '@b' => 11 - $i)));
+        $this->assertTrue($position > $previous_position, SafeMarkup::format('Comment @a appears after comment @b', ['@a' => 10 - $i, '@b' => 11 - $i]));
       }
       $position = strpos($this->getRawContent(), $comments[$i]->getSubject());
     }
diff --git a/core/modules/comment/src/Tests/CommentBookTest.php b/core/modules/comment/src/Tests/CommentBookTest.php
index b23028b..4afd07e 100644
--- a/core/modules/comment/src/Tests/CommentBookTest.php
+++ b/core/modules/comment/src/Tests/CommentBookTest.php
@@ -21,7 +21,7 @@ class CommentBookTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('book', 'comment');
+  public static $modules = ['book', 'comment'];
 
   protected function setUp() {
     parent::setUp();
@@ -44,17 +44,17 @@ public function testBookCommentPrint() {
 
     $comment_subject = $this->randomMachineName(8);
     $comment_body = $this->randomMachineName(8);
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'subject' => $comment_subject,
       'comment_body' => $comment_body,
       'entity_id' => $book_node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
-    ));
+    ]);
     $comment->save();
 
-    $commenting_user = $this->drupalCreateUser(array('access printer-friendly version', 'access comments', 'post comments'));
+    $commenting_user = $this->drupalCreateUser(['access printer-friendly version', 'access comments', 'post comments']);
     $this->drupalLogin($commenting_user);
 
     $this->drupalGet('node/' . $book_node->id());
diff --git a/core/modules/comment/src/Tests/CommentCSSTest.php b/core/modules/comment/src/Tests/CommentCSSTest.php
index f015f3f..3c48f69 100644
--- a/core/modules/comment/src/Tests/CommentCSSTest.php
+++ b/core/modules/comment/src/Tests/CommentCSSTest.php
@@ -18,10 +18,10 @@ protected function setUp() {
     parent::setUp();
 
     // Allow anonymous users to see comments.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments',
       'access content'
-    ));
+    ]);
   }
 
   /**
@@ -29,21 +29,21 @@ protected function setUp() {
    */
   function testCommentClasses() {
     // Create all permutations for comments, users, and nodes.
-    $parameters = array(
-      'node_uid' => array(0, $this->webUser->id()),
-      'comment_uid' => array(0, $this->webUser->id(), $this->adminUser->id()),
-      'comment_status' => array(CommentInterface::PUBLISHED, CommentInterface::NOT_PUBLISHED),
-      'user' => array('anonymous', 'authenticated', 'admin'),
-    );
+    $parameters = [
+      'node_uid' => [0, $this->webUser->id()],
+      'comment_uid' => [0, $this->webUser->id(), $this->adminUser->id()],
+      'comment_status' => [CommentInterface::PUBLISHED, CommentInterface::NOT_PUBLISHED],
+      'user' => ['anonymous', 'authenticated', 'admin'],
+    ];
     $permutations = $this->generatePermutations($parameters);
 
     foreach ($permutations as $case) {
       // Create a new node.
-      $node = $this->drupalCreateNode(array('type' => 'article', 'uid' => $case['node_uid']));
+      $node = $this->drupalCreateNode(['type' => 'article', 'uid' => $case['node_uid']]);
 
       // Add a comment.
       /** @var \Drupal\comment\CommentInterface $comment */
-      $comment = Comment::create(array(
+      $comment = Comment::create([
         'entity_id' => $node->id(),
         'entity_type' => 'node',
         'field_name' => 'comment',
@@ -51,8 +51,8 @@ function testCommentClasses() {
         'status' => $case['comment_status'],
         'subject' => $this->randomMachineName(),
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-        'comment_body' => array(LanguageInterface::LANGCODE_NOT_SPECIFIED => array($this->randomMachineName())),
-      ));
+        'comment_body' => [LanguageInterface::LANGCODE_NOT_SPECIFIED => [$this->randomMachineName()]],
+      ]);
       $comment->save();
 
       // Adjust the current/viewing user.
diff --git a/core/modules/comment/src/Tests/CommentCacheTagsTest.php b/core/modules/comment/src/Tests/CommentCacheTagsTest.php
index 3c7ab00..12e0ef8 100644
--- a/core/modules/comment/src/Tests/CommentCacheTagsTest.php
+++ b/core/modules/comment/src/Tests/CommentCacheTagsTest.php
@@ -24,7 +24,7 @@ class CommentCacheTagsTest extends EntityWithUriCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('comment');
+  public static $modules = ['comment'];
 
   /**
    * @var \Drupal\entity_test\Entity\EntityTest
@@ -66,24 +66,24 @@ protected function createEntity() {
     $field->save();
 
     // Create a "Camelids" test entity that the comment will be assigned to.
-    $this->entityTestCamelid = EntityTest::create(array(
+    $this->entityTestCamelid = EntityTest::create([
       'name' => 'Camelids',
       'type' => 'bar',
-    ));
+    ]);
     $this->entityTestCamelid->save();
 
     // Create a "Llama" comment.
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'subject' => 'Llama',
-      'comment_body' => array(
+      'comment_body' => [
         'value' => 'The name "llama" was adopted by European settlers from native Peruvians.',
         'format' => 'plain_text',
-      ),
+      ],
       'entity_id' => $this->entityTestCamelid->id(),
       'entity_type' => 'entity_test',
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
-    ));
+    ]);
     $comment->save();
 
     return $comment;
@@ -97,26 +97,26 @@ public function testCommentEntity() {
     $this->verifyPageCache($this->entityTestCamelid->urlInfo(), 'HIT');
 
     // Create a "Hippopotamus" comment.
-    $this->entityTestHippopotamidae = EntityTest::create(array(
+    $this->entityTestHippopotamidae = EntityTest::create([
       'name' => 'Hippopotamus',
       'type' => 'bar',
-    ));
+    ]);
     $this->entityTestHippopotamidae->save();
 
     $this->verifyPageCache($this->entityTestHippopotamidae->urlInfo(), 'MISS');
     $this->verifyPageCache($this->entityTestHippopotamidae->urlInfo(), 'HIT');
 
-    $hippo_comment = Comment::create(array(
+    $hippo_comment = Comment::create([
       'subject' => 'Hippopotamus',
-      'comment_body' => array(
+      'comment_body' => [
         'value' => 'The common hippopotamus (Hippopotamus amphibius), or hippo, is a large, mostly herbivorous mammal in sub-Saharan Africa',
         'format' => 'plain_text',
-      ),
+      ],
       'entity_id' => $this->entityTestHippopotamidae->id(),
       'entity_type' => 'entity_test',
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
-    ));
+    ]);
     $hippo_comment->save();
 
     // Ensure that a new comment only invalidates the commented entity.
@@ -145,11 +145,11 @@ protected function getAdditionalCacheContextsForEntity(EntityInterface $entity)
    */
   protected function getAdditionalCacheTagsForEntity(EntityInterface $entity) {
     /** @var \Drupal\comment\CommentInterface $entity */
-    return array(
+    return [
       'config:filter.format.plain_text',
       'user:' . $entity->getOwnerId(),
       'user_view',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/comment/src/Tests/CommentFieldsTest.php b/core/modules/comment/src/Tests/CommentFieldsTest.php
index 4da6e75..fa8a72a 100644
--- a/core/modules/comment/src/Tests/CommentFieldsTest.php
+++ b/core/modules/comment/src/Tests/CommentFieldsTest.php
@@ -19,7 +19,7 @@ class CommentFieldsTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_ui');
+  public static $modules = ['field_ui'];
 
   /**
    * Tests that the default 'comment_body' field is correctly added.
@@ -27,7 +27,7 @@ class CommentFieldsTest extends CommentTestBase {
   function testCommentDefaultFields() {
     // Do not make assumptions on default node types created by the test
     // installation profile, and create our own.
-    $this->drupalCreateContentType(array('type' => 'test_node_type'));
+    $this->drupalCreateContentType(['type' => 'test_node_type']);
     $this->addDefaultCommentField('node', 'test_node_type');
 
     // Check that the 'comment_body' field is present on the comment bundle.
@@ -43,7 +43,7 @@ function testCommentDefaultFields() {
 
     // Create a new content type.
     $type_name = 'test_node_type_2';
-    $this->drupalCreateContentType(array('type' => $type_name));
+    $this->drupalCreateContentType(['type' => $type_name]);
     $this->addDefaultCommentField('node', $type_name);
 
     // Check that the 'comment_body' field exists and has an instance on the
@@ -51,7 +51,7 @@ function testCommentDefaultFields() {
     $field_storage = FieldStorageConfig::loadByName('comment', 'comment_body');
     $this->assertTrue($field_storage, 'The comment_body field exists');
     $field = FieldConfig::loadByName('comment', 'comment', 'comment_body');
-    $this->assertTrue(isset($field), format_string('The comment_body field is present for comments on type @type', array('@type' => $type_name)));
+    $this->assertTrue(isset($field), format_string('The comment_body field is present for comments on type @type', ['@type' => $type_name]));
 
     // Test adding a field that defaults to CommentItemInterface::CLOSED.
     $this->addDefaultCommentField('node', 'test_node_type', 'who_likes_ponies', CommentItemInterface::CLOSED, 'who_likes_ponies');
@@ -63,7 +63,7 @@ function testCommentDefaultFields() {
    * Tests that you can remove a comment field.
    */
   public function testCommentFieldDelete() {
-    $this->drupalCreateContentType(array('type' => 'test_node_type'));
+    $this->drupalCreateContentType(['type' => 'test_node_type']);
     $this->addDefaultCommentField('node', 'test_node_type');
     // We want to test the handling of removing the primary comment field, so we
     // ensure there is at least one other comment field attached to a node type
@@ -71,10 +71,10 @@ public function testCommentFieldDelete() {
     $this->addDefaultCommentField('node', 'test_node_type', 'comment2');
 
     // Create a sample node.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'title' => 'Baloney',
       'type' => 'test_node_type',
-    ));
+    ]);
 
     $this->drupalLogin($this->webUser);
 
@@ -143,38 +143,38 @@ public function testCommentFieldLinksNonDefaultName() {
    */
   public function testCommentFieldCreate() {
     // Create user who can administer user fields.
-    $user = $this->drupalCreateUser(array(
+    $user = $this->drupalCreateUser([
       'administer user fields',
-    ));
+    ]);
     $this->drupalLogin($user);
 
     // Create comment field in account settings.
-    $edit = array(
+    $edit = [
       'new_storage_type' => 'comment',
       'label' => 'User comment',
       'field_name' => 'user_comment',
-    );
+    ];
     $this->drupalPostForm('admin/config/people/accounts/fields/add-field', $edit, 'Save and continue');
 
     // Try to save the comment field without selecting a comment type.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/config/people/accounts/fields/user.user.field_user_comment/storage', $edit, t('Save field settings'));
     // We should get an error message.
     $this->assertText(t('An illegal choice has been detected. Please contact the site administrator.'));
 
     // Create a comment type for users.
-    $bundle = CommentType::create(array(
+    $bundle = CommentType::create([
       'id' => 'user_comment_type',
       'label' => 'user_comment_type',
       'description' => '',
       'target_entity_type_id' => 'user',
-    ));
+    ]);
     $bundle->save();
 
     // Select a comment type and try to save again.
-    $edit = array(
+    $edit = [
       'settings[comment_type]' => 'user_comment_type',
-    );
+    ];
     $this->drupalPostForm('admin/config/people/accounts/fields/user.user.field_user_comment/storage', $edit, t('Save field settings'));
     // We shouldn't get an error message.
     $this->assertNoText(t('An illegal choice has been detected. Please contact the site administrator.'));
@@ -185,7 +185,7 @@ public function testCommentFieldCreate() {
    */
   function testCommentInstallAfterContentModule() {
     // Create a user to do module administration.
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer modules'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer modules']);
     $this->drupalLogin($this->adminUser);
 
     // Drop default comment field added in CommentTestBase::setup().
@@ -199,20 +199,20 @@ function testCommentInstallAfterContentModule() {
     field_purge_batch(10);
 
     // Uninstall the comment module.
-    $edit = array();
+    $edit = [];
     $edit['uninstall[comment]'] = TRUE;
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
-    $this->drupalPostForm(NULL, array(), t('Uninstall'));
+    $this->drupalPostForm(NULL, [], t('Uninstall'));
     $this->rebuildContainer();
     $this->assertFalse($this->container->get('module_handler')->moduleExists('comment'), 'Comment module uninstalled.');
 
     // Install core content type module (book).
-    $edit = array();
+    $edit = [];
     $edit['modules[book][enable]'] = 'book';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Now install the comment module.
-    $edit = array();
+    $edit = [];
     $edit['modules[comment][enable]'] = 'comment';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     $this->rebuildContainer();
@@ -220,14 +220,14 @@ function testCommentInstallAfterContentModule() {
 
     // Create nodes of each type.
     $this->addDefaultCommentField('node', 'book');
-    $book_node = $this->drupalCreateNode(array('type' => 'book'));
+    $book_node = $this->drupalCreateNode(['type' => 'book']);
 
     $this->drupalLogout();
 
     // Try to post a comment on each node. A failure will be triggered if the
     // comment body is missing on one of these forms, due to postComment()
     // asserting that the body is actually posted correctly.
-    $this->webUser = $this->drupalCreateUser(array('access content', 'access comments', 'post comments', 'skip comment approval'));
+    $this->webUser = $this->drupalCreateUser(['access content', 'access comments', 'post comments', 'skip comment approval']);
     $this->drupalLogin($this->webUser);
     $this->postComment($book_node, $this->randomMachineName(), $this->randomMachineName());
   }
diff --git a/core/modules/comment/src/Tests/CommentInterfaceTest.php b/core/modules/comment/src/Tests/CommentInterfaceTest.php
index ba43224..6f67ca8 100644
--- a/core/modules/comment/src/Tests/CommentInterfaceTest.php
+++ b/core/modules/comment/src/Tests/CommentInterfaceTest.php
@@ -68,7 +68,7 @@ public function testCommentInterface() {
 
     // Comment as anonymous with preview required.
     $this->drupalLogout();
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access content', 'access comments', 'post comments', 'skip comment approval'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access content', 'access comments', 'post comments', 'skip comment approval']);
     $anonymous_comment = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $this->assertTrue($this->commentExists($anonymous_comment), 'Comment found.');
     $anonymous_comment->delete();
@@ -92,24 +92,24 @@ public function testCommentInterface() {
     $this->setCommentPreview(DRUPAL_OPTIONAL);
 
     $this->drupalGet('comment/' . $comment->id() . '/edit');
-    $this->assertTitle(t('Edit comment @title | Drupal', array(
+    $this->assertTitle(t('Edit comment @title | Drupal', [
       '@title' => $comment->getSubject(),
-    )));
+    ]));
 
     // Test changing the comment author to "Anonymous".
-    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), array('uid' => ''));
+    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), ['uid' => '']);
     $this->assertTrue($comment->getAuthorName() == t('Anonymous') && $comment->getOwnerId() == 0, 'Comment author successfully changed to anonymous.');
 
     // Test changing the comment author to an unverified user.
     $random_name = $this->randomMachineName();
     $this->drupalGet('comment/' . $comment->id() . '/edit');
-    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), array('name' => $random_name));
+    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), ['name' => $random_name]);
     $this->drupalGet('node/' . $this->node->id());
     $this->assertText($random_name . ' (' . t('not verified') . ')', 'Comment author successfully changed to an unverified user.');
 
     // Test changing the comment author to a verified user.
     $this->drupalGet('comment/' . $comment->id() . '/edit');
-    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), array('uid' => $this->webUser->getUsername() . ' (' . $this->webUser->id() . ')'));
+    $comment = $this->postComment(NULL, $comment->comment_body->value, $comment->getSubject(), ['uid' => $this->webUser->getUsername() . ' (' . $this->webUser->id() . ')']);
     $this->assertTrue($comment->getAuthorName() == $this->webUser->getUsername() && $comment->getOwnerId() == $this->webUser->id(), 'Comment author successfully changed to a registered user.');
 
     $this->drupalLogout();
@@ -121,7 +121,7 @@ public function testCommentInterface() {
     // \Drupal\comment\Controller\CommentController::redirectNode().
     $this->drupalGet('comment/' . $this->node->id() . '/reply');
     // Verify we were correctly redirected.
-    $this->assertUrl(\Drupal::url('comment.reply', array('entity_type' => 'node', 'entity' => $this->node->id(), 'field_name' => 'comment'), array('absolute' => TRUE)));
+    $this->assertUrl(\Drupal::url('comment.reply', ['entity_type' => 'node', 'entity' => $this->node->id(), 'field_name' => 'comment'], ['absolute' => TRUE]));
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment/' . $comment->id());
     $this->assertText($subject_text, 'Individual comment-reply subject found.');
     $this->assertText($comment_text, 'Individual comment-reply body found.');
@@ -161,7 +161,7 @@ public function testCommentInterface() {
     $this->setCommentsPerPage(2);
     $comment_new_page = $this->postComment($this->node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $this->assertTrue($this->commentExists($comment_new_page), 'Page one exists. %s');
-    $this->drupalGet('node/' . $this->node->id(), array('query' => array('page' => 2)));
+    $this->drupalGet('node/' . $this->node->id(), ['query' => ['page' => 2]]);
     $this->assertTrue($this->commentExists($reply, TRUE), 'Page two exists. %s');
     $this->setCommentsPerPage(50);
 
@@ -172,21 +172,21 @@ public function testCommentInterface() {
     $this->assertResponse(403);
 
     // Attempt to post to node with comments disabled.
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'comment' => array(array('status' => CommentItemInterface::HIDDEN))));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'comment' => [['status' => CommentItemInterface::HIDDEN]]]);
     $this->assertTrue($this->node, 'Article node created.');
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment');
     $this->assertResponse(403);
     $this->assertNoField('edit-comment', 'Comment body field found.');
 
     // Attempt to post to node with read-only comments.
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'comment' => array(array('status' => CommentItemInterface::CLOSED))));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'comment' => [['status' => CommentItemInterface::CLOSED]]]);
     $this->assertTrue($this->node, 'Article node created.');
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment');
     $this->assertResponse(403);
     $this->assertNoField('edit-comment', 'Comment body field found.');
 
     // Attempt to post to node with comments enabled (check field names etc).
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'comment' => array(array('status' => CommentItemInterface::OPEN))));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'comment' => [['status' => CommentItemInterface::OPEN]]]);
     $this->assertTrue($this->node, 'Article node created.');
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment');
     $this->assertNoText('This discussion is closed', 'Posting to node with comments enabled');
@@ -254,17 +254,17 @@ public function testAutoFilledHtmlSubject() {
     // can select one of them. Then create a user that can use these formats,
     // log the user in, and then GET the node page on which to test the
     // comments.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
-    ));
+    ]);
     $filtered_html_format->save();
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
-    ));
+    ]);
     $full_html_format->save();
-    $html_user = $this->drupalCreateUser(array(
+    $html_user = $this->drupalCreateUser([
       'access comments',
       'post comments',
       'edit own comments',
@@ -272,25 +272,25 @@ public function testAutoFilledHtmlSubject() {
       'access content',
       $filtered_html_format->getPermissionName(),
       $full_html_format->getPermissionName(),
-    ));
+    ]);
     $this->drupalLogin($html_user);
     $this->drupalGet('node/' . $this->node->id());
 
     // HTML should not be included in the character count.
     $body_text1 = '<span></span><strong> </strong><span> </span><strong></strong>Hello World<br />';
-    $edit1 = array(
+    $edit1 = [
       'comment_body[0][value]' => $body_text1,
       'comment_body[0][format]' => 'filtered_html',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit1, t('Save'));
     $this->assertEqual('Hello World', Comment::load(1)->getSubject());
 
     // If there's nothing other than HTML, the subject should be '(No subject)'.
     $body_text2 = '<span></span><strong> </strong><span> </span><strong></strong> <br />';
-    $edit2 = array(
+    $edit2 = [
       'comment_body[0][value]' => $body_text2,
       'comment_body[0][format]' => 'filtered_html',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit2, t('Save'));
     $this->assertEqual('(No subject)', Comment::load(2)->getSubject());
   }
diff --git a/core/modules/comment/src/Tests/CommentLanguageTest.php b/core/modules/comment/src/Tests/CommentLanguageTest.php
index c60f827..b047b40 100644
--- a/core/modules/comment/src/Tests/CommentLanguageTest.php
+++ b/core/modules/comment/src/Tests/CommentLanguageTest.php
@@ -25,23 +25,23 @@ class CommentLanguageTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'language', 'language_test', 'comment_test');
+  public static $modules = ['node', 'language', 'language_test', 'comment_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     // Create and log in user.
-    $admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer languages', 'access administration pages', 'administer content types', 'administer comments', 'create article content', 'access comments', 'post comments', 'skip comment approval'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration', 'administer languages', 'access administration pages', 'administer content types', 'administer comments', 'create article content', 'access comments', 'post comments', 'skip comment approval']);
     $this->drupalLogin($admin_user);
 
     // Add language.
-    $edit = array('predefined_langcode' => 'fr');
+    $edit = ['predefined_langcode' => 'fr'];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Set "Article" content type to use multilingual support.
-    $edit = array('language_configuration[language_alterable]' => TRUE);
+    $edit = ['language_configuration[language_alterable]' => TRUE];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
 
     // Enable content language negotiation UI.
@@ -51,16 +51,16 @@ protected function setUp() {
     // to URL. Disable inheritance from interface language to ensure content
     // language will fall back to the default language if no URL language can be
     // detected.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-user]' => TRUE,
       'language_content[enabled][language-url]' => TRUE,
       'language_content[enabled][language-interface]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Change user language preference, this way interface language is always
     // French no matter what path prefix the URLs have.
-    $edit = array('preferred_langcode' => 'fr');
+    $edit = ['preferred_langcode' => 'fr'];
     $this->drupalPostForm("user/" . $admin_user->id() . "/edit", $edit, t('Save'));
 
     // Create comment field on article.
@@ -87,12 +87,12 @@ function testCommentLanguage() {
     foreach ($this->container->get('language_manager')->getLanguages() as $node_langcode => $node_language) {
       // Create "Article" content.
       $title = $this->randomMachineName();
-      $edit = array(
+      $edit = [
         'title[0][value]' => $title,
         'body[0][value]' => $this->randomMachineName(),
         'langcode[0][value]' => $node_langcode,
         'comment[0][status]' => CommentItemInterface::OPEN,
-      );
+      ];
       $this->drupalPostForm("node/add/article", $edit, t('Save'));
       $node = $this->drupalGetNodeByTitle($title);
 
@@ -101,10 +101,10 @@ function testCommentLanguage() {
         // Post a comment with content language $langcode.
         $prefix = empty($prefixes[$langcode]) ? '' : $prefixes[$langcode] . '/';
         $comment_values[$node_langcode][$langcode] = $this->randomMachineName();
-        $edit = array(
+        $edit = [
           'subject[0][value]' => $this->randomMachineName(),
           'comment_body[0][value]' => $comment_values[$node_langcode][$langcode],
-        );
+        ];
         $this->drupalPostForm($prefix . 'node/' . $node->id(), $edit, t('Preview'));
         $this->drupalPostForm(NULL, $edit, t('Save'));
 
@@ -117,7 +117,7 @@ function testCommentLanguage() {
           ->range(0, 1)
           ->execute();
         $comment = Comment::load(reset($cids));
-        $args = array('%node_language' => $node_langcode, '%comment_language' => $comment->langcode->value, '%langcode' => $langcode);
+        $args = ['%node_language' => $node_langcode, '%comment_language' => $comment->langcode->value, '%langcode' => $langcode];
         $this->assertEqual($comment->langcode->value, $langcode, format_string('The comment posted with content language %langcode and belonging to the node with language %node_language has language %comment_language', $args));
         $this->assertEqual($comment->comment_body->value, $comment_values[$node_langcode][$langcode], 'Comment body correctly stored.');
       }
diff --git a/core/modules/comment/src/Tests/CommentLinksAlterTest.php b/core/modules/comment/src/Tests/CommentLinksAlterTest.php
index 22ff587..88e092f 100644
--- a/core/modules/comment/src/Tests/CommentLinksAlterTest.php
+++ b/core/modules/comment/src/Tests/CommentLinksAlterTest.php
@@ -9,7 +9,7 @@
  */
 class CommentLinksAlterTest extends CommentTestBase {
 
-  public static $modules = array('comment_test');
+  public static $modules = ['comment_test'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/comment/src/Tests/CommentLinksTest.php b/core/modules/comment/src/Tests/CommentLinksTest.php
index 1115f57..589a355 100644
--- a/core/modules/comment/src/Tests/CommentLinksTest.php
+++ b/core/modules/comment/src/Tests/CommentLinksTest.php
@@ -27,7 +27,7 @@ class CommentLinksTest extends CommentTestBase {
    *
    * @var array
    */
-  protected $seen = array();
+  protected $seen = [];
 
   /**
    * Use the main node listing to test rendering on teasers.
@@ -36,14 +36,14 @@ class CommentLinksTest extends CommentTestBase {
    *
    * @todo Remove this dependency.
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   /**
    * Tests that comment links are output and can be hidden.
    */
   public function testCommentLinks() {
     // Bartik theme alters comment links, so use a different theme.
-    \Drupal::service('theme_handler')->install(array('stark'));
+    \Drupal::service('theme_handler')->install(['stark']);
     $this->config('system.theme')
       ->set('default', 'stark')
       ->save();
@@ -51,11 +51,11 @@ public function testCommentLinks() {
     // Remove additional user permissions from $this->webUser added by setUp(),
     // since this test is limited to anonymous and authenticated roles only.
     $roles = $this->webUser->getRoles();
-    entity_delete_multiple('user_role', array(reset($roles)));
+    entity_delete_multiple('user_role', [reset($roles)]);
 
     // Create a comment via CRUD API functionality, since
     // $this->postComment() relies on actual user permissions.
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'cid' => NULL,
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
@@ -66,8 +66,8 @@ public function testCommentLinks() {
       'subject' => $this->randomMachineName(),
       'hostname' => '127.0.0.1',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      'comment_body' => array(array('value' => $this->randomMachineName())),
-    ));
+      'comment_body' => [['value' => $this->randomMachineName()]],
+    ]);
     $comment->save();
     $this->comment = $comment;
 
@@ -78,19 +78,19 @@ public function testCommentLinks() {
     $this->node->save();
 
     // Change user permissions.
-    $perms = array(
+    $perms = [
       'access comments' => 1,
       'post comments' => 1,
       'skip comment approval' => 1,
       'edit own comments' => 1,
-    );
+    ];
     user_role_change_permissions(RoleInterface::ANONYMOUS_ID, $perms);
 
     $nid = $this->node->id();
 
     // Assert basic link is output, actual functionality is unit-tested in
     // \Drupal\comment\Tests\CommentLinkBuilderTest.
-    foreach (array('node', "node/$nid") as $path) {
+    foreach (['node', "node/$nid"] as $path) {
       $this->drupalGet($path);
 
       // In teaser view, a link containing the comment count is always
@@ -103,7 +103,7 @@ public function testCommentLinks() {
 
     // Change weight to make links go before comment body.
     entity_get_display('comment', 'comment', 'default')
-      ->setComponent('links', array('weight' => -100))
+      ->setComponent('links', ['weight' => -100])
       ->save();
     $this->drupalGet($this->node->urlInfo());
     $element = $this->cssSelect('article.js-comment > div');
@@ -113,7 +113,7 @@ public function testCommentLinks() {
 
     // Change weight to make links go after comment body.
     entity_get_display('comment', 'comment', 'default')
-      ->setComponent('links', array('weight' => 100))
+      ->setComponent('links', ['weight' => 100])
       ->save();
     $this->drupalGet($this->node->urlInfo());
     $element = $this->cssSelect('article.js-comment > div');
diff --git a/core/modules/comment/src/Tests/CommentNewIndicatorTest.php b/core/modules/comment/src/Tests/CommentNewIndicatorTest.php
index 6d89d4a..55609e3 100644
--- a/core/modules/comment/src/Tests/CommentNewIndicatorTest.php
+++ b/core/modules/comment/src/Tests/CommentNewIndicatorTest.php
@@ -22,7 +22,7 @@ class CommentNewIndicatorTest extends CommentTestBase {
    *
    * @todo Remove this dependency.
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   /**
    * Get node "x new comments" metadata from the server for the current user.
@@ -35,7 +35,7 @@ class CommentNewIndicatorTest extends CommentTestBase {
    */
   protected function renderNewCommentsNodeLinks(array $node_ids) {
     // Build POST values.
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($node_ids); $i++) {
       $post['node_ids[' . $i . ']'] = $node_ids[$i];
     }
@@ -51,15 +51,15 @@ protected function renderNewCommentsNodeLinks(array $node_ids) {
     $post = implode('&', $post);
 
     // Perform HTTP request.
-    return $this->curlExec(array(
-      CURLOPT_URL => \Drupal::url('comment.new_comments_node_links', array(), array('absolute' => TRUE)),
+    return $this->curlExec([
+      CURLOPT_URL => \Drupal::url('comment.new_comments_node_links', [], ['absolute' => TRUE]),
       CURLOPT_POST => TRUE,
       CURLOPT_POSTFIELDS => $post,
-      CURLOPT_HTTPHEADER => array(
+      CURLOPT_HTTPHEADER => [
         'Accept: application/json',
         'Content-Type: application/x-www-form-urlencoded',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
@@ -70,7 +70,7 @@ public function testCommentNewCommentsIndicator() {
     // node.
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('node');
-    $this->assertNoLink(t('@count comments', array('@count' => 0)));
+    $this->assertNoLink(t('@count comments', ['@count' => 0]));
     $this->assertLink(t('Read more'));
     // Verify the data-history-node-last-comment-timestamp attribute, which is
     // used by the drupal.node-new-comments-link library to determine whether
@@ -81,7 +81,7 @@ public function testCommentNewCommentsIndicator() {
     // Create a new comment. This helper function may be run with different
     // comment settings so use $comment->save() to avoid complex setup.
     /** @var \Drupal\comment\CommentInterface $comment */
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'cid' => NULL,
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
@@ -92,8 +92,8 @@ public function testCommentNewCommentsIndicator() {
       'subject' => $this->randomMachineName(),
       'hostname' => '127.0.0.1',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      'comment_body' => array(LanguageInterface::LANGCODE_NOT_SPECIFIED => array($this->randomMachineName())),
-    ));
+      'comment_body' => [LanguageInterface::LANGCODE_NOT_SPECIFIED => [$this->randomMachineName()]],
+    ]);
     $comment->save();
     $this->drupalLogout();
 
@@ -126,24 +126,24 @@ public function testCommentNewCommentsIndicator() {
     ]);
     // Pretend the data was not present in drupalSettings, i.e. test the
     // separate request to the server.
-    $response = $this->renderNewCommentsNodeLinks(array($this->node->id()));
+    $response = $this->renderNewCommentsNodeLinks([$this->node->id()]);
     $this->assertResponse(200);
     $json = Json::decode($response);
-    $expected = array($this->node->id() => array(
+    $expected = [$this->node->id() => [
       'new_comment_count' => 1,
-      'first_new_comment_link' => $this->node->url('canonical', array('fragment' => 'new')),
-    ));
+      'first_new_comment_link' => $this->node->url('canonical', ['fragment' => 'new']),
+    ]];
     $this->assertIdentical($expected, $json);
 
     // Failing to specify node IDs for the endpoint should return a 404.
-    $this->renderNewCommentsNodeLinks(array());
+    $this->renderNewCommentsNodeLinks([]);
     $this->assertResponse(404);
 
     // Accessing the endpoint as the anonymous user should return a 403.
     $this->drupalLogout();
-    $this->renderNewCommentsNodeLinks(array($this->node->id()));
+    $this->renderNewCommentsNodeLinks([$this->node->id()]);
     $this->assertResponse(403);
-    $this->renderNewCommentsNodeLinks(array());
+    $this->renderNewCommentsNodeLinks([]);
     $this->assertResponse(403);
   }
 
diff --git a/core/modules/comment/src/Tests/CommentNodeAccessTest.php b/core/modules/comment/src/Tests/CommentNodeAccessTest.php
index e69bfde..60f8bbd 100644
--- a/core/modules/comment/src/Tests/CommentNodeAccessTest.php
+++ b/core/modules/comment/src/Tests/CommentNodeAccessTest.php
@@ -19,7 +19,7 @@ class CommentNodeAccessTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test');
+  public static $modules = ['node_access_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -27,14 +27,14 @@ protected function setUp() {
     node_access_rebuild();
 
     // Re-create user.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'access comments',
       'post comments',
       'create article content',
       'edit own comments',
       'node test view',
       'skip comment approval',
-    ));
+    ]);
 
     // Set the author of the created node to the web_user uid.
     $this->node->setOwnerId($this->webUser->id())->save();
diff --git a/core/modules/comment/src/Tests/CommentNodeChangesTest.php b/core/modules/comment/src/Tests/CommentNodeChangesTest.php
index 9fed4df..7724f99 100644
--- a/core/modules/comment/src/Tests/CommentNodeChangesTest.php
+++ b/core/modules/comment/src/Tests/CommentNodeChangesTest.php
@@ -27,7 +27,7 @@ function testNodeDeletion() {
     $this->assertNotNull(FieldStorageConfig::load('node.comment'), 'Comment field storage exists');
     $this->assertNotNull(FieldConfig::load('node.article.comment'), 'Comment field exists');
     // Delete the node type.
-    entity_delete_multiple('node_type', array($this->node->bundle()));
+    entity_delete_multiple('node_type', [$this->node->bundle()]);
     $this->assertNull(FieldStorageConfig::load('node.comment'), 'Comment field storage deleted');
     $this->assertNull(FieldConfig::load('node.article.comment'), 'Comment field deleted');
   }
diff --git a/core/modules/comment/src/Tests/CommentNonNodeTest.php b/core/modules/comment/src/Tests/CommentNonNodeTest.php
index e43e0bc..bc40c9d 100644
--- a/core/modules/comment/src/Tests/CommentNonNodeTest.php
+++ b/core/modules/comment/src/Tests/CommentNonNodeTest.php
@@ -24,7 +24,7 @@ class CommentNonNodeTest extends WebTestBase {
   use FieldUiTestTrait;
   use CommentTestTrait;
 
-  public static $modules = array('comment', 'user', 'field_ui', 'entity_test', 'block');
+  public static $modules = ['comment', 'user', 'field_ui', 'entity_test', 'block'];
 
   /**
    * An administrative user with permission to configure comment settings.
@@ -50,12 +50,12 @@ protected function setUp() {
 
     // Create a bundle for entity_test.
     entity_test_create_bundle('entity_test', 'Entity Test', 'entity_test');
-    CommentType::create(array(
+    CommentType::create([
       'id' => 'comment',
       'label' => 'Comment settings',
       'description' => 'Comment settings',
       'target_entity_type_id' => 'entity_test',
-    ))->save();
+    ])->save();
     // Create comment field on entity_test bundle.
     $this->addDefaultCommentField('entity_test', 'entity_test');
 
@@ -64,30 +64,30 @@ protected function setUp() {
     $this->assertEqual($bundles['comment']['label'], 'Comment settings');
 
     // Create test user.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer comments',
       'skip comment approval',
       'post comments',
       'access comments',
       'view test entity',
       'administer entity_test content',
-    ));
+    ]);
 
     // Enable anonymous and authenticated user comments.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array(
+    ]);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, [
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
+    ]);
 
     // Create a test entity.
     $random_label = $this->randomMachineName();
-    $data = array('type' => 'entity_test', 'name' => $random_label);
+    $data = ['type' => 'entity_test', 'name' => $random_label];
     $this->entity = EntityTest::create($data);
     $this->entity->save();
   }
@@ -109,7 +109,7 @@ protected function setUp() {
    *   The new comment entity.
    */
   function postComment(EntityInterface $entity, $comment, $subject = '', $contact = NULL) {
-    $edit = array();
+    $edit = [];
     $edit['comment_body[0][value]'] = $comment;
 
     $field = FieldConfig::loadByName('entity_test', 'entity_test', 'comment');
@@ -151,7 +151,7 @@ function postComment(EntityInterface $entity, $comment, $subject = '', $contact
         $this->drupalPostForm(NULL, $edit, t('Save'));
         break;
     }
-    $match = array();
+    $match = [];
     // Get comment ID
     preg_match('/#comment-([0-9]+)/', $this->getURL(), $match);
 
@@ -216,17 +216,17 @@ function commentContactInfoAvailable() {
    *   Operation is found on approval page.
    */
   function performCommentOperation($comment, $operation, $approval = FALSE) {
-    $edit = array();
+    $edit = [];
     $edit['operation'] = $operation;
     $edit['comments[' . $comment->id() . ']'] = TRUE;
     $this->drupalPostForm('admin/content/comment' . ($approval ? '/approval' : ''), $edit, t('Update'));
 
     if ($operation == 'delete') {
-      $this->drupalPostForm(NULL, array(), t('Delete comments'));
-      $this->assertRaw(\Drupal::translation()->formatPlural(1, 'Deleted 1 comment.', 'Deleted @count comments.'), format_string('Operation "@operation" was performed on comment.', array('@operation' => $operation)));
+      $this->drupalPostForm(NULL, [], t('Delete comments'));
+      $this->assertRaw(\Drupal::translation()->formatPlural(1, 'Deleted 1 comment.', 'Deleted @count comments.'), format_string('Operation "@operation" was performed on comment.', ['@operation' => $operation]));
     }
     else {
-      $this->assertText(t('The update has been performed.'), format_string('Operation "@operation" was performed on comment.', array('@operation' => $operation)));
+      $this->assertText(t('The update has been performed.'), format_string('Operation "@operation" was performed on comment.', ['@operation' => $operation]));
     }
   }
 
@@ -250,9 +250,9 @@ function getUnapprovedComment($subject) {
    * Tests anonymous comment functionality.
    */
   function testCommentFunctionality() {
-    $limited_user = $this->drupalCreateUser(array(
+    $limited_user = $this->drupalCreateUser([
       'administer entity_test fields'
-    ));
+    ]);
     $this->drupalLogin($limited_user);
     // Test that default field exists.
     $this->drupalGet('entity_test/structure/entity_test/fields');
@@ -320,9 +320,9 @@ function testCommentFunctionality() {
 
     // Check that entity access applies to administrative page.
     $this->assertText($this->entity->label(), 'Name of commented account found.');
-    $limited_user = $this->drupalCreateUser(array(
+    $limited_user = $this->drupalCreateUser([
       'administer comments',
-    ));
+    ]);
     $this->drupalLogin($limited_user);
     $this->drupalGet('admin/content/comment');
     $this->assertNoText($this->entity->label(), 'No commented account name found.');
@@ -330,12 +330,12 @@ function testCommentFunctionality() {
     $this->drupalLogout();
 
     // Deny anonymous users access to comments.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => FALSE,
       'post comments' => FALSE,
       'skip comment approval' => FALSE,
       'view test entity' => TRUE,
-    ));
+    ]);
 
     // Attempt to view comments while disallowed.
     $this->drupalGet('entity-test/' . $this->entity->id());
@@ -348,12 +348,12 @@ function testCommentFunctionality() {
     $this->assertNoFieldByName('subject[0][value]', '', 'Subject field not found.');
     $this->assertNoFieldByName('comment_body[0][value]', '', 'Comment field not found.');
 
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => FALSE,
       'view test entity' => TRUE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
     $this->drupalGet('entity_test/' . $this->entity->id());
     $this->assertPattern('@<h2[^>]*>Comments</h2>@', 'Comments were displayed.');
     $this->assertLink('Log in', 0, 'Link to login was found.');
@@ -364,12 +364,12 @@ function testCommentFunctionality() {
     // Test the combination of anonymous users being able to post, but not view
     // comments, to ensure that access to post comments doesn't grant access to
     // view them.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => FALSE,
       'post comments' => TRUE,
       'skip comment approval' => TRUE,
       'view test entity' => TRUE,
-    ));
+    ]);
     $this->drupalGet('entity_test/' . $this->entity->id());
     $this->assertNoPattern('@<h2[^>]*>Comments</h2>@', 'Comments were not displayed.');
     $this->assertFieldByName('subject[0][value]', '', 'Subject field found.');
@@ -380,22 +380,22 @@ function testCommentFunctionality() {
     $this->assertNoText($comment1->getSubject(), 'Comment not displayed.');
 
     // Test comment field widget changes.
-    $limited_user = $this->drupalCreateUser(array(
+    $limited_user = $this->drupalCreateUser([
       'administer entity_test fields',
       'view test entity',
       'administer entity_test content',
       'administer comments',
-    ));
+    ]);
     $this->drupalLogin($limited_user);
     $this->drupalGet('entity_test/structure/entity_test/fields/entity_test.entity_test.comment');
     $this->assertNoFieldChecked('edit-default-value-input-comment-0-status-0');
     $this->assertNoFieldChecked('edit-default-value-input-comment-0-status-1');
     $this->assertFieldChecked('edit-default-value-input-comment-0-status-2');
     // Test comment option change in field settings.
-    $edit = array(
+    $edit = [
       'default_value_input[comment][0][status]' => CommentItemInterface::CLOSED,
       'settings[anonymous]' => COMMENT_ANONYMOUS_MAY_CONTACT,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     $this->drupalGet('entity_test/structure/entity_test/fields/entity_test.entity_test.comment');
     $this->assertNoFieldChecked('edit-default-value-input-comment-0-status-0');
@@ -404,18 +404,18 @@ function testCommentFunctionality() {
     $this->assertFieldByName('settings[anonymous]', COMMENT_ANONYMOUS_MAY_CONTACT);
 
     // Add a new comment-type.
-    $bundle = CommentType::create(array(
+    $bundle = CommentType::create([
       'id' => 'foobar',
       'label' => 'Foobar',
       'description' => '',
       'target_entity_type_id' => 'entity_test',
-    ));
+    ]);
     $bundle->save();
 
     // Add a new comment field.
-    $storage_edit = array(
+    $storage_edit = [
       'settings[comment_type]' => 'foobar',
-    );
+    ];
     $this->fieldUIAddNewField('entity_test/structure/entity_test', 'foobar', 'Foobar', 'comment', $storage_edit);
 
     // Add a third comment field.
@@ -429,7 +429,7 @@ function testCommentFunctionality() {
 
     // Test the new entity commenting inherits default.
     $random_label = $this->randomMachineName();
-    $data = array('bundle' => 'entity_test', 'name' => $random_label);
+    $data = ['bundle' => 'entity_test', 'name' => $random_label];
     $new_entity = EntityTest::create($data);
     $new_entity->save();
     $this->drupalGet('entity_test/manage/' . $new_entity->id() . '/edit');
@@ -443,12 +443,12 @@ function testCommentFunctionality() {
     $this->assertNoFieldByName('comment_body[0][value]', '', 'Comment field found.');
 
     // Test removal of comment_body field.
-    $limited_user = $this->drupalCreateUser(array(
+    $limited_user = $this->drupalCreateUser([
       'administer entity_test fields',
       'post comments',
       'administer comment fields',
       'administer comment types',
-    ));
+    ]);
     $this->drupalLogin($limited_user);
 
     $this->drupalGet('comment/reply/entity_test/' . $this->entity->id() . '/comment');
@@ -467,9 +467,9 @@ function testCommentFunctionality() {
   public function testsNonIntegerIdEntities() {
     // Create a bundle for entity_test_string_id.
     entity_test_create_bundle('entity_test', 'Entity Test', 'entity_test_string_id');
-    $limited_user = $this->drupalCreateUser(array(
+    $limited_user = $this->drupalCreateUser([
       'administer entity_test_string_id fields',
-    ));
+    ]);
     $this->drupalLogin($limited_user);
     // Visit the Field UI field add page.
     $this->drupalGet('entity_test_string_id/structure/entity_test/fields/add-field');
@@ -480,9 +480,9 @@ public function testsNonIntegerIdEntities() {
 
     // Create a bundle for entity_test_no_id.
     entity_test_create_bundle('entity_test', 'Entity Test', 'entity_test_no_id');
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalLogin($this->drupalCreateUser([
       'administer entity_test_no_id fields',
-    )));
+    ]));
     // Visit the Field UI field add page.
     $this->drupalGet('entity_test_no_id/structure/entity_test/fields/add-field');
     // Ensure field isn't shown for empty IDs.
diff --git a/core/modules/comment/src/Tests/CommentPagerTest.php b/core/modules/comment/src/Tests/CommentPagerTest.php
index aa7d099..1bfda55 100644
--- a/core/modules/comment/src/Tests/CommentPagerTest.php
+++ b/core/modules/comment/src/Tests/CommentPagerTest.php
@@ -24,8 +24,8 @@ function testCommentPaging() {
     $this->setCommentPreview(DRUPAL_DISABLED);
 
     // Create a node and three comments.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $comments = array();
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $comments = [];
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
@@ -45,13 +45,13 @@ function testCommentPaging() {
     $this->assertFalse($this->commentExists($comments[2]), 'Comment 3 does not appear on page 1.');
 
     // Check the second page.
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 1)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 1]]);
     $this->assertTrue($this->commentExists($comments[1]), 'Comment 2 appears on page 2.');
     $this->assertFalse($this->commentExists($comments[0]), 'Comment 1 does not appear on page 2.');
     $this->assertFalse($this->commentExists($comments[2]), 'Comment 3 does not appear on page 2.');
 
     // Check the third page.
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 2)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 2]]);
     $this->assertTrue($this->commentExists($comments[2]), 'Comment 3 appears on page 3.');
     $this->assertFalse($this->commentExists($comments[0]), 'Comment 1 does not appear on page 3.');
     $this->assertFalse($this->commentExists($comments[1]), 'Comment 2 does not appear on page 3.');
@@ -64,27 +64,27 @@ function testCommentPaging() {
     $this->setCommentsPerPage(2);
     // We are still in flat view - the replies should not be on the first page,
     // even though they are replies to the oldest comment.
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 0)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 0]]);
     $this->assertFalse($this->commentExists($reply, TRUE), 'In flat mode, reply does not appear on page 1.');
 
     // If we switch to threaded mode, the replies on the oldest comment
     // should be bumped to the first page and comment 6 should be bumped
     // to the second page.
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Switched to threaded mode.');
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 0)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 0]]);
     $this->assertTrue($this->commentExists($reply, TRUE), 'In threaded mode, reply appears on page 1.');
     $this->assertFalse($this->commentExists($comments[1]), 'In threaded mode, comment 2 has been bumped off of page 1.');
 
     // If (# replies > # comments per page) in threaded expanded view,
     // the overage should be bumped.
     $reply2 = $this->postComment(NULL, $this->randomMachineName(), $this->randomMachineName(), TRUE);
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 0)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 0]]);
     $this->assertFalse($this->commentExists($reply2, TRUE), 'In threaded mode where # replies > # comments per page, the newest reply does not appear on page 1.');
 
     // Test that the page build process does not somehow generate errors when
     // # comments per page is set to 0.
     $this->setCommentsPerPage(0);
-    $this->drupalGet('node/' . $node->id(), array('query' => array('page' => 0)));
+    $this->drupalGet('node/' . $node->id(), ['query' => ['page' => 0]]);
     $this->assertFalse($this->commentExists($reply2, TRUE), 'Threaded mode works correctly when comments per page is 0.');
 
     $this->drupalLogout();
@@ -102,8 +102,8 @@ function testCommentPermalink() {
     $this->setCommentPreview(DRUPAL_DISABLED);
 
     // Create a node and three comments.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $comments = array();
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $comments = [];
     $comments[] = $this->postComment($node, 'comment 1: ' . $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, 'comment 2: ' . $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, 'comment 3: ' . $this->randomMachineName(), $this->randomMachineName(), TRUE);
@@ -137,8 +137,8 @@ function testCommentOrderingThreading() {
     $this->setCommentsPerPage(1000);
 
     // Create a node and three comments.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $comments = array();
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $comments = [];
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
@@ -170,7 +170,7 @@ function testCommentOrderingThreading() {
 
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_FLAT, 'Comment paging changed.');
 
-    $expected_order = array(
+    $expected_order = [
       0,
       1,
       2,
@@ -178,13 +178,13 @@ function testCommentOrderingThreading() {
       4,
       5,
       6,
-    );
+    ];
     $this->drupalGet('node/' . $node->id());
     $this->assertCommentOrder($comments, $expected_order);
 
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Switched to threaded mode.');
 
-    $expected_order = array(
+    $expected_order = [
       0,
       4,
       1,
@@ -192,7 +192,7 @@ function testCommentOrderingThreading() {
       6,
       2,
       5,
-    );
+    ];
     $this->drupalGet('node/' . $node->id());
     $this->assertCommentOrder($comments, $expected_order);
   }
@@ -206,7 +206,7 @@ function testCommentOrderingThreading() {
    *   An array of keys from $comments describing the expected order.
    */
   function assertCommentOrder(array $comments, array $expected_order) {
-    $expected_cids = array();
+    $expected_cids = [];
 
     // First, rekey the expected order by cid.
     foreach ($expected_order as $key) {
@@ -214,11 +214,11 @@ function assertCommentOrder(array $comments, array $expected_order) {
     }
 
     $comment_anchors = $this->xpath('//a[starts-with(@id,"comment-")]');
-    $result_order = array();
+    $result_order = [];
     foreach ($comment_anchors as $anchor) {
       $result_order[] = substr($anchor['id'], 8);
     }
-    return $this->assertEqual($expected_cids, $result_order, format_string('Comment order: expected @expected, returned @returned.', array('@expected' => implode(',', $expected_cids), '@returned' => implode(',', $result_order))));
+    return $this->assertEqual($expected_cids, $result_order, format_string('Comment order: expected @expected, returned @returned.', ['@expected' => implode(',', $expected_cids), '@returned' => implode(',', $result_order)]));
   }
 
   /**
@@ -237,8 +237,8 @@ function testCommentNewPageIndicator() {
     $this->setCommentsPerPage(1);
 
     // Create a node and three comments.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $comments = array();
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $comments = [];
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
     $comments[] = $this->postComment($node, $this->randomMachineName(), $this->randomMachineName(), TRUE);
@@ -265,39 +265,39 @@ function testCommentNewPageIndicator() {
 
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_FLAT, 'Comment paging changed.');
 
-    $expected_pages = array(
+    $expected_pages = [
       1 => 5, // Page of comment 5
       2 => 4, // Page of comment 4
       3 => 3, // Page of comment 3
       4 => 2, // Page of comment 2
       5 => 1, // Page of comment 1
       6 => 0, // Page of comment 0
-    );
+    ];
 
     $node = Node::load($node->id());
     foreach ($expected_pages as $new_replies => $expected_page) {
       $returned_page = \Drupal::entityManager()->getStorage('comment')
         ->getNewCommentPageNumber($node->get('comment')->comment_count, $new_replies, $node, 'comment');
-      $this->assertIdentical($expected_page, $returned_page, format_string('Flat mode, @new replies: expected page @expected, returned page @returned.', array('@new' => $new_replies, '@expected' => $expected_page, '@returned' => $returned_page)));
+      $this->assertIdentical($expected_page, $returned_page, format_string('Flat mode, @new replies: expected page @expected, returned page @returned.', ['@new' => $new_replies, '@expected' => $expected_page, '@returned' => $returned_page]));
     }
 
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Switched to threaded mode.');
 
-    $expected_pages = array(
+    $expected_pages = [
       1 => 5, // Page of comment 5
       2 => 1, // Page of comment 4
       3 => 1, // Page of comment 4
       4 => 1, // Page of comment 4
       5 => 1, // Page of comment 4
       6 => 0, // Page of comment 0
-    );
+    ];
 
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($node->id()));
+    \Drupal::entityManager()->getStorage('node')->resetCache([$node->id()]);
     $node = Node::load($node->id());
     foreach ($expected_pages as $new_replies => $expected_page) {
       $returned_page = \Drupal::entityManager()->getStorage('comment')
         ->getNewCommentPageNumber($node->get('comment')->comment_count, $new_replies, $node, 'comment');
-      $this->assertEqual($expected_page, $returned_page, format_string('Threaded mode, @new replies: expected page @expected, returned page @returned.', array('@new' => $new_replies, '@expected' => $expected_page, '@returned' => $returned_page)));
+      $this->assertEqual($expected_page, $returned_page, format_string('Threaded mode, @new replies: expected page @expected, returned page @returned.', ['@new' => $new_replies, '@expected' => $expected_page, '@returned' => $returned_page]));
     }
   }
 
@@ -309,39 +309,39 @@ function testTwoPagers() {
     $this->addDefaultCommentField('node', 'article', 'comment_2');
     // Set default to display comment list with unique pager id.
     entity_get_display('node', 'article', 'default')
-      ->setComponent('comment_2', array(
+      ->setComponent('comment_2', [
         'label' => 'hidden',
         'type' => 'comment_default',
         'weight' => 30,
-        'settings' => array(
+        'settings' => [
           'pager_id' => 1,
           'view_mode' => 'default',
-        )
-      ))
+        ]
+      ])
       ->save();
 
     // Make sure pager appears in formatter summary and settings form.
-    $account = $this->drupalCreateUser(array('administer node display'));
+    $account = $this->drupalCreateUser(['administer node display']);
     $this->drupalLogin($account);
     $this->drupalGet('admin/structure/types/manage/article/display');
-    $this->assertNoText(t('Pager ID: @id', array('@id' => 0)), 'No summary for standard pager');
-    $this->assertText(t('Pager ID: @id', array('@id' => 1)));
-    $this->drupalPostAjaxForm(NULL, array(), 'comment_settings_edit');
+    $this->assertNoText(t('Pager ID: @id', ['@id' => 0]), 'No summary for standard pager');
+    $this->assertText(t('Pager ID: @id', ['@id' => 1]));
+    $this->drupalPostAjaxForm(NULL, [], 'comment_settings_edit');
     // Change default pager to 2.
-    $this->drupalPostForm(NULL, array('fields[comment][settings_edit_form][settings][pager_id]' => 2), t('Save'));
-    $this->assertText(t('Pager ID: @id', array('@id' => 2)));
+    $this->drupalPostForm(NULL, ['fields[comment][settings_edit_form][settings][pager_id]' => 2], t('Save'));
+    $this->assertText(t('Pager ID: @id', ['@id' => 2]));
     // Revert the changes.
-    $this->drupalPostAjaxForm(NULL, array(), 'comment_settings_edit');
-    $this->drupalPostForm(NULL, array('fields[comment][settings_edit_form][settings][pager_id]' => 0), t('Save'));
-    $this->assertNoText(t('Pager ID: @id', array('@id' => 0)), 'No summary for standard pager');
+    $this->drupalPostAjaxForm(NULL, [], 'comment_settings_edit');
+    $this->drupalPostForm(NULL, ['fields[comment][settings_edit_form][settings][pager_id]' => 0], t('Save'));
+    $this->assertNoText(t('Pager ID: @id', ['@id' => 0]), 'No summary for standard pager');
 
     $this->drupalLogin($this->adminUser);
 
     // Add a new node with both comment fields open.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()));
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()]);
     // Set comment options.
-    $comments = array();
-    foreach (array('comment', 'comment_2') as $field_name) {
+    $comments = [];
+    foreach (['comment', 'comment_2'] as $field_name) {
       $this->setCommentForm(TRUE, $field_name);
       $this->setCommentPreview(DRUPAL_OPTIONAL, $field_name);
       $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_FLAT, 'Comment paging changed.', $field_name);
@@ -350,10 +350,10 @@ function testTwoPagers() {
       // needing to insert large numbers of comments.
       $this->setCommentsPerPage(1, $field_name);
       for ($i = 0; $i < 3; $i++) {
-        $comment = t('Comment @count on field @field', array(
+        $comment = t('Comment @count on field @field', [
           '@count' => $i + 1,
           '@field' => $field_name,
-        ));
+        ]);
         $comments[] = $this->postComment($node, $comment, $comment, TRUE, $field_name);
       }
     }
@@ -365,19 +365,19 @@ function testTwoPagers() {
     $this->assertRaw('Comment 1 on field comment');
     $this->assertRaw('Comment 1 on field comment_2');
     // Navigate to next page of field 1.
-    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', array(':label' => 'Comment 1 on field comment'));
+    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', [':label' => 'Comment 1 on field comment']);
     // Check only one pager updated.
     $this->assertRaw('Comment 2 on field comment');
     $this->assertRaw('Comment 1 on field comment_2');
     // Return to page 1.
     $this->drupalGet('node/' . $node->id());
     // Navigate to next page of field 2.
-    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', array(':label' => 'Comment 1 on field comment_2'));
+    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', [':label' => 'Comment 1 on field comment_2']);
     // Check only one pager updated.
     $this->assertRaw('Comment 1 on field comment');
     $this->assertRaw('Comment 2 on field comment_2');
     // Navigate to next page of field 1.
-    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', array(':label' => 'Comment 1 on field comment'));
+    $this->clickLinkWithXPath('//h3/a[normalize-space(text())=:label]/ancestor::section[1]//a[@rel="next"]', [':label' => 'Comment 1 on field comment']);
     // Check only one pager updated.
     $this->assertRaw('Comment 2 on field comment');
     $this->assertRaw('Comment 2 on field comment_2');
@@ -405,15 +405,15 @@ function testTwoPagers() {
    *
    * @see WebTestBase::clickLink()
    */
-  protected function clickLinkWithXPath($xpath, $arguments = array(), $index = 0) {
+  protected function clickLinkWithXPath($xpath, $arguments = [], $index = 0) {
     $url_before = $this->getUrl();
     $urls = $this->xpath($xpath, $arguments);
     if (isset($urls[$index])) {
       $url_target = $this->getAbsoluteUrl($urls[$index]['href']);
-      $this->pass(SafeMarkup::format('Clicked link %label (@url_target) from @url_before', array('%label' => $xpath, '@url_target' => $url_target, '@url_before' => $url_before)), 'Browser');
+      $this->pass(SafeMarkup::format('Clicked link %label (@url_target) from @url_before', ['%label' => $xpath, '@url_target' => $url_target, '@url_before' => $url_before]), 'Browser');
       return $this->drupalGet($url_target);
     }
-    $this->fail(SafeMarkup::format('Link %label does not exist on @url_before', array('%label' => $xpath, '@url_before' => $url_before)), 'Browser');
+    $this->fail(SafeMarkup::format('Link %label does not exist on @url_before', ['%label' => $xpath, '@url_before' => $url_before]), 'Browser');
     return FALSE;
   }
 
diff --git a/core/modules/comment/src/Tests/CommentPreviewTest.php b/core/modules/comment/src/Tests/CommentPreviewTest.php
index 837a78a..039c6ab 100644
--- a/core/modules/comment/src/Tests/CommentPreviewTest.php
+++ b/core/modules/comment/src/Tests/CommentPreviewTest.php
@@ -41,7 +41,7 @@ function testCommentPreview() {
     // Test escaping of the username on the preview form.
     \Drupal::service('module_installer')->install(['user_hooks_test']);
     \Drupal::state()->set('user_hooks_test_user_format_name_alter', TRUE);
-    $edit = array();
+    $edit = [];
     $edit['subject[0][value]'] = $this->randomMachineName(8);
     $edit['comment_body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/' . $this->node->id(), $edit, t('Preview'));
@@ -90,7 +90,7 @@ public function testCommentPreviewDuplicateSubmission() {
     $this->drupalLogin($this->webUser);
 
     // As the web user, fill in the comment form and preview the comment.
-    $edit = array();
+    $edit = [];
     $edit['subject[0][value]'] = $this->randomMachineName(8);
     $edit['comment_body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/' . $this->node->id(), $edit, t('Preview'));
@@ -124,14 +124,14 @@ public function testCommentPreviewDuplicateSubmission() {
    * Tests comment edit, preview, and save.
    */
   function testCommentEditPreviewSave() {
-    $web_user = $this->drupalCreateUser(array('access comments', 'post comments', 'skip comment approval', 'edit own comments'));
+    $web_user = $this->drupalCreateUser(['access comments', 'post comments', 'skip comment approval', 'edit own comments']);
     $this->drupalLogin($this->adminUser);
     $this->setCommentPreview(DRUPAL_OPTIONAL);
     $this->setCommentForm(TRUE);
     $this->setCommentSubject(TRUE);
     $this->setCommentSettings('default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Comment paging changed.');
 
-    $edit = array();
+    $edit = [];
     $date = new DrupalDateTime('2008-03-02 17:23');
     $edit['subject[0][value]'] = $this->randomMachineName(8);
     $edit['comment_body[0][value]'] = $this->randomMachineName(16);
@@ -172,7 +172,7 @@ function testCommentEditPreviewSave() {
     $this->assertFieldByName('date[time]', $expected_form_time, 'Time field displayed.');
 
     // Submit the form using the displayed values.
-    $displayed = array();
+    $displayed = [];
     $displayed['subject[0][value]'] = (string) current($this->xpath("//input[@id='edit-subject-0-value']/@value"));
     $displayed['comment_body[0][value]'] = (string) current($this->xpath("//textarea[@id='edit-comment-body-0-value']"));
     $displayed['uid'] = (string) current($this->xpath("//input[@id='edit-uid']/@value"));
@@ -182,7 +182,7 @@ function testCommentEditPreviewSave() {
 
     // Check that the saved comment is still correct.
     $comment_storage = \Drupal::entityManager()->getStorage('comment');
-    $comment_storage->resetCache(array($comment->id()));
+    $comment_storage->resetCache([$comment->id()]);
     /** @var \Drupal\comment\CommentInterface $comment_loaded */
     $comment_loaded = Comment::load($comment->id());
     $this->assertEqual($comment_loaded->getSubject(), $edit['subject[0][value]'], 'Subject loaded.');
@@ -193,13 +193,13 @@ function testCommentEditPreviewSave() {
 
     // Check that the date and time of the comment are correct when edited by
     // non-admin users.
-    $user_edit = array();
+    $user_edit = [];
     $expected_created_time = $comment_loaded->getCreatedTime();
     $this->drupalLogin($web_user);
     // Web user cannot change the comment author.
     unset($edit['uid']);
     $this->drupalPostForm('comment/' . $comment->id() . '/edit', $user_edit, t('Save'));
-    $comment_storage->resetCache(array($comment->id()));
+    $comment_storage->resetCache([$comment->id()]);
     $comment_loaded = Comment::load($comment->id());
     $this->assertEqual($comment_loaded->getCreatedTime(), $expected_created_time, 'Expected date and time for comment edited.');
     $this->drupalLogout();
diff --git a/core/modules/comment/src/Tests/CommentRssTest.php b/core/modules/comment/src/Tests/CommentRssTest.php
index ec673df..5c9fe3d 100644
--- a/core/modules/comment/src/Tests/CommentRssTest.php
+++ b/core/modules/comment/src/Tests/CommentRssTest.php
@@ -21,7 +21,7 @@ class CommentRssTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   /**
    * {@inheritdoc}
@@ -66,7 +66,7 @@ function testCommentRss() {
       'user:3',
     ]));
 
-    $raw = '<comments>' . $this->node->url('canonical', array('fragment' => 'comments', 'absolute' => TRUE)) . '</comments>';
+    $raw = '<comments>' . $this->node->url('canonical', ['fragment' => 'comments', 'absolute' => TRUE]) . '</comments>';
     $this->assertRaw($raw, 'Comments as part of RSS feed.');
 
     // Hide comments from RSS feed and check presence.
diff --git a/core/modules/comment/src/Tests/CommentStatisticsTest.php b/core/modules/comment/src/Tests/CommentStatisticsTest.php
index 0c370d1..bd0838c 100644
--- a/core/modules/comment/src/Tests/CommentStatisticsTest.php
+++ b/core/modules/comment/src/Tests/CommentStatisticsTest.php
@@ -24,7 +24,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create a second user to post comments.
-    $this->webUser2 = $this->drupalCreateUser(array(
+    $this->webUser2 = $this->drupalCreateUser([
       'post comments',
       'create article content',
       'edit own comments',
@@ -32,7 +32,7 @@ protected function setUp() {
       'skip comment approval',
       'access comments',
       'access content',
-    ));
+    ]);
   }
 
   /**
@@ -62,7 +62,7 @@ function testCommentNodeCommentStatistics() {
 
     // Checks the new values of node comment statistics with comment #1.
     // The node cache needs to be reset before reload.
-    $node_storage->resetCache(array($this->node->id()));
+    $node_storage->resetCache([$this->node->id()]);
     $node = $node_storage->load($this->node->id());
     $this->assertEqual($node->get('comment')->last_comment_name, NULL, 'The value of node last_comment_name is NULL.');
     $this->assertEqual($node->get('comment')->last_comment_uid, $this->webUser2->id(), 'The value of node last_comment_uid is the comment #1 uid.');
@@ -70,11 +70,11 @@ function testCommentNodeCommentStatistics() {
 
     // Prepare for anonymous comment submission (comment approval enabled).
     $this->drupalLogin($this->adminUser);
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => TRUE,
       'skip comment approval' => FALSE,
-    ));
+    ]);
     // Ensure that the poster can leave some contact info.
     $this->setCommentAnonymous('1');
     $this->drupalLogout();
@@ -86,7 +86,7 @@ function testCommentNodeCommentStatistics() {
     // Checks the new values of node comment statistics with comment #2 and
     // ensure they haven't changed since the comment has not been moderated.
     // The node needs to be reloaded with the cache reset.
-    $node_storage->resetCache(array($this->node->id()));
+    $node_storage->resetCache([$this->node->id()]);
     $node = $node_storage->load($this->node->id());
     $this->assertEqual($node->get('comment')->last_comment_name, NULL, 'The value of node last_comment_name is still NULL.');
     $this->assertEqual($node->get('comment')->last_comment_uid, $this->webUser2->id(), 'The value of node last_comment_uid is still the comment #1 uid.');
@@ -94,21 +94,21 @@ function testCommentNodeCommentStatistics() {
 
     // Prepare for anonymous comment submission (no approval required).
     $this->drupalLogin($this->adminUser);
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => TRUE,
       'skip comment approval' => TRUE,
-    ));
+    ]);
     $this->drupalLogout();
 
     // Post comment #3 as anonymous.
     $this->drupalGet('comment/reply/node/' . $this->node->id() . '/comment');
-    $anonymous_comment = $this->postComment($this->node, $this->randomMachineName(), '', array('name' => $this->randomMachineName()));
+    $anonymous_comment = $this->postComment($this->node, $this->randomMachineName(), '', ['name' => $this->randomMachineName()]);
     $comment_loaded = Comment::load($anonymous_comment->id());
 
     // Checks the new values of node comment statistics with comment #3.
     // The node needs to be reloaded with the cache reset.
-    $node_storage->resetCache(array($this->node->id()));
+    $node_storage->resetCache([$this->node->id()]);
     $node = $node_storage->load($this->node->id());
     $this->assertEqual($node->get('comment')->last_comment_name, $comment_loaded->getAuthorName(), 'The value of node last_comment_name is the name of the anonymous user.');
     $this->assertEqual($node->get('comment')->last_comment_uid, 0, 'The value of node last_comment_uid is zero.');
diff --git a/core/modules/comment/src/Tests/CommentTestBase.php b/core/modules/comment/src/Tests/CommentTestBase.php
index c99dd32..716b3bd 100644
--- a/core/modules/comment/src/Tests/CommentTestBase.php
+++ b/core/modules/comment/src/Tests/CommentTestBase.php
@@ -52,11 +52,11 @@ protected function setUp() {
     // child classes may specify the standard profile.
     $types = NodeType::loadMultiple();
     if (empty($types['article'])) {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => t('Article')));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => t('Article')]);
     }
 
     // Create two test users.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer content types',
       'administer comments',
       'administer comment types',
@@ -69,21 +69,21 @@ protected function setUp() {
       // permission is granted.
       'access user profiles',
       'access content',
-     ));
-    $this->webUser = $this->drupalCreateUser(array(
+     ]);
+    $this->webUser = $this->drupalCreateUser([
       'access comments',
       'post comments',
       'create article content',
       'edit own comments',
       'skip comment approval',
       'access content',
-    ));
+    ]);
 
     // Create comment field on article.
     $this->addDefaultCommentField('node', 'article');
 
     // Create a test node authored by the web user.
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()]);
     $this->drupalPlaceBlock('local_tasks_block');
   }
 
@@ -107,7 +107,7 @@ protected function setUp() {
    *   The posted comment or NULL when posted comment was not found.
    */
   public function postComment($entity, $comment, $subject = '', $contact = NULL, $field_name = 'comment') {
-    $edit = array();
+    $edit = [];
     $edit['comment_body[0][value]'] = $comment;
 
     if ($entity !== NULL) {
@@ -154,7 +154,7 @@ public function postComment($entity, $comment, $subject = '', $contact = NULL, $
         $this->drupalPostForm(NULL, $edit, t('Save'));
         break;
     }
-    $match = array();
+    $match = [];
     // Get comment ID
     preg_match('/#comment-([0-9]+)/', $this->getURL(), $match);
 
@@ -168,7 +168,7 @@ public function postComment($entity, $comment, $subject = '', $contact = NULL, $
     }
 
     if (isset($match[1])) {
-      \Drupal::entityManager()->getStorage('comment')->resetCache(array($match[1]));
+      \Drupal::entityManager()->getStorage('comment')->resetCache([$match[1]]);
       return Comment::load($match[1]);
     }
   }
@@ -215,7 +215,7 @@ function commentExists(CommentInterface $comment = NULL, $reply = FALSE) {
    *   Comment to delete.
    */
   function deleteComment(CommentInterface $comment) {
-    $this->drupalPostForm('comment/' . $comment->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('comment/' . $comment->id() . '/delete', [], t('Delete'));
     $this->assertText(t('The comment and all its replies have been deleted.'), 'Comment deleted.');
   }
 
@@ -228,9 +228,9 @@ function deleteComment(CommentInterface $comment) {
   public function setCommentSubject($enabled) {
     $form_display = entity_get_form_display('comment', 'comment', 'default');
     if ($enabled) {
-      $form_display->setComponent('subject', array(
+      $form_display->setComponent('subject', [
         'type' => 'string_textfield',
-      ));
+      ]);
     }
     else {
       $form_display->removeComponent('subject');
@@ -263,7 +263,7 @@ public function setCommentPreview($mode, $field_name = 'comment') {
         $mode_text = 'required';
         break;
     }
-    $this->setCommentSettings('preview', $mode, format_string('Comment preview @mode_text.', array('@mode_text' => $mode_text)), $field_name);
+    $this->setCommentSettings('preview', $mode, format_string('Comment preview @mode_text.', ['@mode_text' => $mode_text]), $field_name);
   }
 
   /**
@@ -290,7 +290,7 @@ public function setCommentForm($enabled, $field_name = 'comment') {
    *   - 2: Contact information required.
    */
   function setCommentAnonymous($level) {
-    $this->setCommentSettings('anonymous', $level, format_string('Anonymous commenting set to level @level.', array('@level' => $level)));
+    $this->setCommentSettings('anonymous', $level, format_string('Anonymous commenting set to level @level.', ['@level' => $level]));
   }
 
   /**
@@ -303,7 +303,7 @@ function setCommentAnonymous($level) {
    *   Defaults to 'comment'.
    */
   public function setCommentsPerPage($number, $field_name = 'comment') {
-    $this->setCommentSettings('per_page', $number, format_string('Number of comments per page set to @number.', array('@number' => $number)), $field_name);
+    $this->setCommentSettings('per_page', $number, format_string('Number of comments per page set to @number.', ['@number' => $number]), $field_name);
   }
 
   /**
@@ -348,17 +348,17 @@ function commentContactInfoAvailable() {
    *   Operation is found on approval page.
    */
   function performCommentOperation(CommentInterface $comment, $operation, $approval = FALSE) {
-    $edit = array();
+    $edit = [];
     $edit['operation'] = $operation;
     $edit['comments[' . $comment->id() . ']'] = TRUE;
     $this->drupalPostForm('admin/content/comment' . ($approval ? '/approval' : ''), $edit, t('Update'));
 
     if ($operation == 'delete') {
-      $this->drupalPostForm(NULL, array(), t('Delete comments'));
-      $this->assertRaw(\Drupal::translation()->formatPlural(1, 'Deleted 1 comment.', 'Deleted @count comments.'), format_string('Operation "@operation" was performed on comment.', array('@operation' => $operation)));
+      $this->drupalPostForm(NULL, [], t('Delete comments'));
+      $this->assertRaw(\Drupal::translation()->formatPlural(1, 'Deleted 1 comment.', 'Deleted @count comments.'), format_string('Operation "@operation" was performed on comment.', ['@operation' => $operation]));
     }
     else {
-      $this->assertText(t('The update has been performed.'), format_string('Operation "@operation" was performed on comment.', array('@operation' => $operation)));
+      $this->assertText(t('The update has been performed.'), format_string('Operation "@operation" was performed on comment.', ['@operation' => $operation]));
     }
   }
 
@@ -388,12 +388,12 @@ function getUnapprovedComment($subject) {
    *   Created comment type.
    */
   protected function createCommentType($label) {
-    $bundle = CommentType::create(array(
+    $bundle = CommentType::create([
       'id' => $label,
       'label' => $label,
       'description' => '',
       'target_entity_type_id' => 'node',
-    ));
+    ]);
     $bundle->save();
     return $bundle;
   }
diff --git a/core/modules/comment/src/Tests/CommentTestTrait.php b/core/modules/comment/src/Tests/CommentTestTrait.php
index f22d80f..038a3df 100644
--- a/core/modules/comment/src/Tests/CommentTestTrait.php
+++ b/core/modules/comment/src/Tests/CommentTestTrait.php
@@ -43,12 +43,12 @@ public function addDefaultCommentField($entity_type, $bundle, $field_name = 'com
       }
     }
     else {
-      $comment_type_storage->create(array(
+      $comment_type_storage->create([
         'id' => $comment_type_id,
         'label' => Unicode::ucfirst($comment_type_id),
         'target_entity_type_id' => $entity_type,
         'description' => 'Default comment field',
-      ))->save();
+      ])->save();
     }
     // Add a body field to the comment type.
     \Drupal::service('comment.manager')->addBodyField($comment_type_id);
@@ -56,43 +56,43 @@ public function addDefaultCommentField($entity_type, $bundle, $field_name = 'com
     // Add a comment field to the host entity type. Create the field storage if
     // needed.
     if (!array_key_exists($field_name, $entity_manager->getFieldStorageDefinitions($entity_type))) {
-      $entity_manager->getStorage('field_storage_config')->create(array(
+      $entity_manager->getStorage('field_storage_config')->create([
         'entity_type' => $entity_type,
         'field_name' => $field_name,
         'type' => 'comment',
         'translatable' => TRUE,
-        'settings' => array(
+        'settings' => [
           'comment_type' => $comment_type_id,
-        ),
-      ))->save();
+        ],
+      ])->save();
     }
     // Create the field if needed, and configure its form and view displays.
     if (!array_key_exists($field_name, $entity_manager->getFieldDefinitions($entity_type, $bundle))) {
-      $entity_manager->getStorage('field_config')->create(array(
+      $entity_manager->getStorage('field_config')->create([
         'label' => 'Comments',
         'description' => '',
         'field_name' => $field_name,
         'entity_type' => $entity_type,
         'bundle' => $bundle,
         'required' => 1,
-        'default_value' => array(
-          array(
+        'default_value' => [
+          [
             'status' => $default_value,
             'cid' => 0,
             'last_comment_name' => '',
             'last_comment_timestamp' => 0,
             'last_comment_uid' => 0,
-          ),
-        ),
-      ))->save();
+          ],
+        ],
+      ])->save();
 
       // Entity form displays: assign widget settings for the 'default' form
       // mode, and hide the field in all other form modes.
       entity_get_form_display($entity_type, $bundle, 'default')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => 'comment_default',
           'weight' => 20,
-        ))
+        ])
         ->save();
       foreach ($entity_manager->getFormModes($entity_type) as $id => $form_mode) {
         $display = entity_get_form_display($entity_type, $bundle, $id);
@@ -105,12 +105,12 @@ public function addDefaultCommentField($entity_type, $bundle, $field_name = 'com
       // Entity view displays: assign widget settings for the 'default' view
       // mode, and hide the field in all other view modes.
       entity_get_display($entity_type, $bundle, 'default')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'label' => 'above',
           'type' => 'comment_default',
           'weight' => 20,
-          'settings' => array('view_mode' => $comment_view_mode),
-        ))
+          'settings' => ['view_mode' => $comment_view_mode],
+        ])
         ->save();
       foreach ($entity_manager->getViewModes($entity_type) as $id => $view_mode) {
         $display = entity_get_display($entity_type, $bundle, $id);
diff --git a/core/modules/comment/src/Tests/CommentThreadingTest.php b/core/modules/comment/src/Tests/CommentThreadingTest.php
index c8ea93e..2dbf5bd 100644
--- a/core/modules/comment/src/Tests/CommentThreadingTest.php
+++ b/core/modules/comment/src/Tests/CommentThreadingTest.php
@@ -24,7 +24,7 @@ function testCommentThreading() {
 
     // Create a node.
     $this->drupalLogin($this->webUser);
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()]);
 
     // Post comment #1.
     $this->drupalLogin($this->webUser);
@@ -139,10 +139,10 @@ protected function assertParentLink($cid, $pid) {
 
     $this->assertFieldByXpath($pattern, NULL, format_string(
       'Comment %cid has a link to parent %pid.',
-      array(
+      [
         '%cid' => $cid,
         '%pid' => $pid,
-      )
+      ]
     ));
   }
 
@@ -162,9 +162,9 @@ protected function assertNoParentLink($cid) {
     $pattern = "//a[@id='comment-$cid']/following-sibling::article//p[contains(@class, 'parent')]";
     $this->assertNoFieldByXpath($pattern, NULL, format_string(
       'Comment %cid does not have a link to a parent.',
-      array(
+      [
         '%cid' => $cid,
-      )
+      ]
     ));
   }
 
diff --git a/core/modules/comment/src/Tests/CommentTitleTest.php b/core/modules/comment/src/Tests/CommentTitleTest.php
index aab1cf5..30d3935 100644
--- a/core/modules/comment/src/Tests/CommentTitleTest.php
+++ b/core/modules/comment/src/Tests/CommentTitleTest.php
@@ -14,7 +14,7 @@ class CommentTitleTest extends CommentTestBase {
    */
   public function testCommentEmptyTitles() {
     // Installs module that sets comments to an empty string.
-    \Drupal::service('module_installer')->install(array('comment_empty_title_test'));
+    \Drupal::service('module_installer')->install(['comment_empty_title_test']);
 
     // Set comments to have a subject with preview disabled.
     $this->setCommentPreview(DRUPAL_DISABLED);
@@ -23,7 +23,7 @@ public function testCommentEmptyTitles() {
 
     // Create a node.
     $this->drupalLogin($this->webUser);
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()]);
 
     // Post comment #1 and verify that h3's are not rendered.
     $subject_text = $this->randomMachineName();
@@ -49,7 +49,7 @@ public function testCommentPopulatedTitles() {
 
     // Create a node.
     $this->drupalLogin($this->webUser);
-    $this->node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()));
+    $this->node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1, 'uid' => $this->webUser->id()]);
 
     // Post comment #1 and verify that title is rendered in h3.
     $subject_text = $this->randomMachineName();
diff --git a/core/modules/comment/src/Tests/CommentTokenReplaceTest.php b/core/modules/comment/src/Tests/CommentTokenReplaceTest.php
index c7b7227..325aecb 100644
--- a/core/modules/comment/src/Tests/CommentTokenReplaceTest.php
+++ b/core/modules/comment/src/Tests/CommentTokenReplaceTest.php
@@ -32,10 +32,10 @@ class CommentTokenReplaceTest extends CommentTestBase {
   function testCommentTokenReplacement() {
     $token_service = \Drupal::token();
     $language_interface = \Drupal::languageManager()->getCurrentLanguage();
-    $url_options = array(
+    $url_options = [
       'absolute' => TRUE,
       'language' => $language_interface,
-    );
+    ];
 
     // Setup vocabulary.
     Vocabulary::create([
@@ -65,7 +65,7 @@ function testCommentTokenReplacement() {
     $comment->setSubject('<blink>Blinking Comment</blink>');
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $tests['[comment:cid]'] = $comment->id();
     $tests['[comment:hostname]'] = $comment->getHostname();
     $tests['[comment:author]'] = Html::escape($comment->getAuthorName());
@@ -74,11 +74,11 @@ function testCommentTokenReplacement() {
     $tests['[comment:title]'] = Html::escape($comment->getSubject());
     $tests['[comment:body]'] = $comment->comment_body->processed;
     $tests['[comment:langcode]'] = $comment->language()->getId();
-    $tests['[comment:url]'] = $comment->url('canonical', $url_options + array('fragment' => 'comment-' . $comment->id()));
+    $tests['[comment:url]'] = $comment->url('canonical', $url_options + ['fragment' => 'comment-' . $comment->id()]);
     $tests['[comment:edit-url]'] = $comment->url('edit-form', $url_options);
-    $tests['[comment:created]'] = \Drupal::service('date.formatter')->format($comment->getCreatedTime(), 'medium', array('langcode' => $language_interface->getId()));
-    $tests['[comment:created:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($comment->getCreatedTime(), array('langcode' => $language_interface->getId()));
-    $tests['[comment:changed:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($comment->getChangedTimeAcrossTranslations(), array('langcode' => $language_interface->getId()));
+    $tests['[comment:created]'] = \Drupal::service('date.formatter')->format($comment->getCreatedTime(), 'medium', ['langcode' => $language_interface->getId()]);
+    $tests['[comment:created:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($comment->getCreatedTime(), ['langcode' => $language_interface->getId()]);
+    $tests['[comment:changed:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($comment->getChangedTimeAcrossTranslations(), ['langcode' => $language_interface->getId()]);
     $tests['[comment:parent:cid]'] = $comment->hasParentComment() ? $comment->getParentComment()->id() : NULL;
     $tests['[comment:parent:title]'] = $parent_comment->getSubject();
     $tests['[comment:entity]'] = Html::escape($node->getTitle());
@@ -127,7 +127,7 @@ function testCommentTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_service->replace($input, array('comment' => $comment), array('langcode' => $language_interface->getId()), $bubbleable_metadata);
+      $output = $token_service->replace($input, ['comment' => $comment], ['langcode' => $language_interface->getId()], $bubbleable_metadata);
       $this->assertEqual($output, $expected, new FormattableMarkup('Comment token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
@@ -136,8 +136,8 @@ function testCommentTokenReplacement() {
     $author_name = 'This is a random & " > string';
     $comment->setOwnerId(0)->setAuthorName($author_name);
     $input = '[comment:author]';
-    $output = $token_service->replace($input, array('comment' => $comment), array('langcode' => $language_interface->getId()));
-    $this->assertEqual($output, Html::escape($author_name), format_string('Comment author token %token replaced.', array('%token' => $input)));
+    $output = $token_service->replace($input, ['comment' => $comment], ['langcode' => $language_interface->getId()]);
+    $this->assertEqual($output, Html::escape($author_name), format_string('Comment author token %token replaced.', ['%token' => $input]));
     // Add comment field to user and term entities.
     $this->addDefaultCommentField('user', 'user', 'comment', CommentItemInterface::OPEN, 'comment_user');
     $this->addDefaultCommentField('taxonomy_term', 'tags', 'comment', CommentItemInterface::OPEN, 'comment_term');
@@ -162,7 +162,7 @@ function testCommentTokenReplacement() {
 
     // Generate comment tokens for node (it has 2 comments, both new),
     // user and term.
-    $tests = array();
+    $tests = [];
     $tests['[entity:comment-count]'] = 2;
     $tests['[entity:comment-count-new]'] = 2;
     $tests['[node:comment-count]'] = 2;
diff --git a/core/modules/comment/src/Tests/CommentTranslationUITest.php b/core/modules/comment/src/Tests/CommentTranslationUITest.php
index e89bd3f..3157e23 100644
--- a/core/modules/comment/src/Tests/CommentTranslationUITest.php
+++ b/core/modules/comment/src/Tests/CommentTranslationUITest.php
@@ -46,7 +46,7 @@ class CommentTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'node', 'comment');
+  public static $modules = ['language', 'content_translation', 'node', 'comment'];
 
   protected function setUp() {
     $this->entityTypeId = 'comment';
@@ -62,11 +62,11 @@ protected function setUp() {
    */
   function setupBundle() {
     parent::setupBundle();
-    $this->drupalCreateContentType(array('type' => $this->nodeBundle, 'name' => $this->nodeBundle));
+    $this->drupalCreateContentType(['type' => $this->nodeBundle, 'name' => $this->nodeBundle]);
     // Add a comment field to the article content type.
     $this->addDefaultCommentField('node', 'article', 'comment_article', CommentItemInterface::OPEN, 'comment_article');
     // Create a page content type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'page']);
     // Add a comment field to the page content type - this one won't be
     // translatable.
     $this->addDefaultCommentField('node', 'page', 'comment');
@@ -78,7 +78,7 @@ function setupBundle() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('post comments', 'administer comments', 'access comments'));
+    return array_merge(parent::getTranslatorPermissions(), ['post comments', 'administer comments', 'access comments']);
   }
 
   /**
@@ -95,12 +95,12 @@ protected function createEntity($values, $langcode, $comment_type = 'comment_art
       $node_type = 'page';
       $field_name = 'comment';
     }
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => $node_type,
-      $field_name => array(
-        array('status' => CommentItemInterface::OPEN)
-      ),
-    ));
+      $field_name => [
+        ['status' => CommentItemInterface::OPEN]
+      ],
+    ]);
     $values['entity_id'] = $node->id();
     $values['entity_type'] = 'node';
     $values['field_name'] = $field_name;
@@ -113,10 +113,10 @@ protected function createEntity($values, $langcode, $comment_type = 'comment_art
    */
   protected function getNewEntityValues($langcode) {
     // Comment subject is not translatable hence we use a fixed value.
-    return array(
-      'subject' => array(array('value' => $this->subject)),
-      'comment_body' => array(array('value' => $this->randomMachineName(16))),
-    ) + parent::getNewEntityValues($langcode);
+    return [
+      'subject' => [['value' => $this->subject]],
+      'comment_body' => [['value' => $this->randomMachineName(16)]],
+    ] + parent::getNewEntityValues($langcode);
   }
 
   /**
@@ -132,8 +132,8 @@ protected function doTestPublishedStatus() {
     // Unpublish translations.
     foreach ($this->langcodes as $index => $langcode) {
       if ($index > 0) {
-        $edit = array('status' => 0);
-        $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($langcode)));
+        $edit = ['status' => 0];
+        $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($langcode)]);
         $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
         $storage->resetCache();
         $entity = $storage->load($this->entityId);
@@ -151,21 +151,21 @@ protected function doTestAuthoringInfo() {
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
     $languages = $this->container->get('language_manager')->getLanguages();
-    $values = array();
+    $values = [];
 
     // Post different authoring information for each translation.
     foreach ($this->langcodes as $langcode) {
       $url = $entity->urlInfo('edit-form', ['language' => $languages[$langcode]]);
       $user = $this->drupalCreateUser();
-      $values[$langcode] = array(
+      $values[$langcode] = [
         'uid' => $user->id(),
         'created' => REQUEST_TIME - mt_rand(0, 1000),
-      );
-      $edit = array(
+      ];
+      $edit = [
         'uid' => $user->getUsername() . ' (' . $user->id() . ')',
         'date[date]' => format_date($values[$langcode]['created'], 'custom', 'Y-m-d'),
         'date[time]' => format_date($values[$langcode]['created'], 'custom', 'H:i:s'),
-      );
+      ];
       $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
     }
 
@@ -182,11 +182,11 @@ protected function doTestAuthoringInfo() {
    * Tests translate link on comment content admin page.
    */
   function testTranslateLinkCommentAdminPage() {
-    $this->adminUser = $this->drupalCreateUser(array_merge(parent::getTranslatorPermissions(), array('access administration pages', 'administer comments', 'skip comment approval')));
+    $this->adminUser = $this->drupalCreateUser(array_merge(parent::getTranslatorPermissions(), ['access administration pages', 'administer comments', 'skip comment approval']));
     $this->drupalLogin($this->adminUser);
 
-    $cid_translatable = $this->createEntity(array(), $this->langcodes[0]);
-    $cid_untranslatable = $this->createEntity(array(), $this->langcodes[0], 'comment');
+    $cid_translatable = $this->createEntity([], $this->langcodes[0]);
+    $cid_untranslatable = $this->createEntity([], $this->langcodes[0], 'comment');
 
     // Verify translation links.
     $this->drupalGet('admin/content/comment');
@@ -208,15 +208,15 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('Edit @type @title [%language translation]', array(
+        $title = t('Edit @type @title [%language translation]', [
           '@type' => $this->entityTypeId,
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/comment/src/Tests/CommentTypeTest.php b/core/modules/comment/src/Tests/CommentTypeTest.php
index fb5028f..343bb91 100644
--- a/core/modules/comment/src/Tests/CommentTypeTest.php
+++ b/core/modules/comment/src/Tests/CommentTypeTest.php
@@ -27,11 +27,11 @@ class CommentTypeTest extends CommentTestBase {
    *
    * @var array
    */
-  protected $permissions = array(
+  protected $permissions = [
     'administer comments',
     'administer comment fields',
     'administer comment types',
-  );
+  ];
 
   /**
    * Sets the test up.
@@ -61,12 +61,12 @@ public function testCommentTypeCreation() {
     $this->assertResponse(200, 'The new comment type can be accessed at the edit form.');
 
     // Create a comment type via the user interface.
-    $edit = array(
+    $edit = [
       'id' => 'foo',
       'label' => 'title for foo',
       'description' => '',
       'target_entity_type_id' => 'node',
-    );
+    ];
     $this->drupalPostForm('admin/structure/comment/types/add', $edit, t('Save'));
     $comment_type = CommentType::load('foo');
     $this->assertTrue($comment_type, 'The new comment type has been created.');
@@ -81,8 +81,8 @@ public function testCommentTypeCreation() {
     $this->assertText(t('Target entity type'));
     // Save the form and ensure the entity-type value is preserved even though
     // the field isn't present.
-    $this->drupalPostForm(NULL, array(), t('Save'));
-    \Drupal::entityManager()->getStorage('comment_type')->resetCache(array('foo'));
+    $this->drupalPostForm(NULL, [], t('Save'));
+    \Drupal::entityManager()->getStorage('comment_type')->resetCache(['foo']);
     $comment_type = CommentType::load('foo');
     $this->assertEqual($comment_type->getTargetEntityTypeId(), 'node');
   }
@@ -98,9 +98,9 @@ public function testCommentTypeEditing() {
 
     // Change the comment type name.
     $this->drupalGet('admin/structure/comment');
-    $edit = array(
+    $edit = [
       'label' => 'Bar',
-    );
+    ];
     $this->drupalPostForm('admin/structure/comment/manage/comment', $edit, t('Save'));
 
     $this->drupalGet('admin/structure/comment');
@@ -110,9 +110,9 @@ public function testCommentTypeEditing() {
     $this->assertTrue($this->cssSelect('tr#comment-body'), 'Body field exists.');
 
     // Remove the body field.
-    $this->drupalPostForm('admin/structure/comment/manage/comment/fields/comment.comment.comment_body/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/comment/manage/comment/fields/comment.comment.comment_body/delete', [], t('Delete'));
     // Resave the settings for this type.
-    $this->drupalPostForm('admin/structure/comment/manage/comment', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/comment/manage/comment', [], t('Save'));
     // Check that the body field doesn't exist.
     $this->drupalGet('admin/structure/comment/manage/comment/fields');
     $this->assertFalse($this->cssSelect('tr#comment-body'), 'Body field does not exist.');
@@ -124,39 +124,39 @@ public function testCommentTypeEditing() {
   public function testCommentTypeDeletion() {
     // Create a comment type programmatically.
     $type = $this->createCommentType('foo');
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'page', 'foo', CommentItemInterface::OPEN, 'foo');
     $field_storage = FieldStorageConfig::loadByName('node', 'foo');
 
     $this->drupalLogin($this->adminUser);
 
     // Create a node.
-    $node = Node::create(array(
+    $node = Node::create([
       'type' => 'page',
       'title' => 'foo',
-    ));
+    ]);
     $node->save();
 
     // Add a new comment of this type.
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'comment_type' => 'foo',
       'entity_type' => 'node',
       'field_name' => 'foo',
       'entity_id' => $node->id(),
-    ));
+    ]);
     $comment->save();
 
     // Attempt to delete the comment type, which should not be allowed.
     $this->drupalGet('admin/structure/comment/manage/' . $type->id() . '/delete');
     $this->assertRaw(
-      t('%label is used by 1 comment on your site. You can not remove this comment type until you have removed all of the %label comments.', array('%label' => $type->label())),
+      t('%label is used by 1 comment on your site. You can not remove this comment type until you have removed all of the %label comments.', ['%label' => $type->label()]),
       'The comment type will not be deleted until all comments of that type are removed.'
     );
     $this->assertRaw(
-      t('%label is used by the %field field on your site. You can not remove this comment type until you have removed the field.', array(
+      t('%label is used by the %field field on your site. You can not remove this comment type until you have removed the field.', [
         '%label' => 'foo',
         '%field' => 'node.foo',
-      )),
+      ]),
       'The comment type will not be deleted until all fields of that type are removed.'
     );
     $this->assertNoText(t('This action cannot be undone.'), 'The comment type deletion confirmation form is not available.');
@@ -167,7 +167,7 @@ public function testCommentTypeDeletion() {
     // Attempt to delete the comment type, which should now be allowed.
     $this->drupalGet('admin/structure/comment/manage/' . $type->id() . '/delete');
     $this->assertRaw(
-      t('Are you sure you want to delete the comment type %type?', array('%type' => $type->id())),
+      t('Are you sure you want to delete the comment type %type?', ['%type' => $type->id()]),
       'The comment type is available for deletion.'
     );
     $this->assertText(t('This action cannot be undone.'), 'The comment type deletion confirmation form is available.');
@@ -182,9 +182,9 @@ public function testCommentTypeDeletion() {
     }
 
     // Delete the comment type.
-    $this->drupalPostForm('admin/structure/comment/manage/' . $type->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/comment/manage/' . $type->id() . '/delete', [], t('Delete'));
     $this->assertNull(CommentType::load($type->id()), 'Comment type deleted.');
-    $this->assertRaw(t('The comment type %label has been deleted.', array('%label' => $type->label())));
+    $this->assertRaw(t('The comment type %label has been deleted.', ['%label' => $type->label()]));
   }
 
 }
diff --git a/core/modules/comment/src/Tests/CommentUninstallTest.php b/core/modules/comment/src/Tests/CommentUninstallTest.php
index 4d86df9..9f9d36a 100644
--- a/core/modules/comment/src/Tests/CommentUninstallTest.php
+++ b/core/modules/comment/src/Tests/CommentUninstallTest.php
@@ -20,13 +20,13 @@ class CommentUninstallTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment', 'node');
+  public static $modules = ['comment', 'node'];
 
   protected function setUp() {
     parent::setup();
 
     // Create an article content type.
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => t('Article')));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => t('Article')]);
     // Create comment field on article so that adds 'comment_body' field.
     $this->addDefaultCommentField('node', 'article');
   }
@@ -43,7 +43,7 @@ function testCommentUninstallWithField() {
 
     // Uninstall the comment module which should trigger an exception.
     try {
-      $this->container->get('module_installer')->uninstall(array('comment'));
+      $this->container->get('module_installer')->uninstall(['comment']);
       $this->fail("Expected an exception when uninstall was attempted.");
     }
     catch (ModuleUninstallValidatorException $e) {
@@ -77,7 +77,7 @@ function testCommentUninstallWithoutField() {
     field_purge_batch(10);
     // Ensure that uninstallation succeeds even if the field has already been
     // deleted manually beforehand.
-    $this->container->get('module_installer')->uninstall(array('comment'));
+    $this->container->get('module_installer')->uninstall(['comment']);
   }
 
 }
diff --git a/core/modules/comment/src/Tests/Views/ArgumentUserUIDTest.php b/core/modules/comment/src/Tests/Views/ArgumentUserUIDTest.php
index 63a0082..3365918 100644
--- a/core/modules/comment/src/Tests/Views/ArgumentUserUIDTest.php
+++ b/core/modules/comment/src/Tests/Views/ArgumentUserUIDTest.php
@@ -18,7 +18,7 @@ class ArgumentUserUIDTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_comment_user_uid');
+  public static $testViews = ['test_comment_user_uid'];
 
   function testCommentUserUIDTest() {
     // Add an additional comment which is not created by the user.
@@ -35,16 +35,16 @@ function testCommentUserUIDTest() {
     $comment->save();
 
     $view = Views::getView('test_comment_user_uid');
-    $this->executeView($view, array($this->account->id()));
-    $result_set = array(
-      array(
+    $this->executeView($view, [$this->account->id()]);
+    $result_set = [
+      [
         'nid' => $this->nodeUserPosted->id(),
-      ),
-      array(
+      ],
+      [
         'nid' => $this->nodeUserCommented->id(),
-      ),
-    );
-    $column_map = array('nid' => 'nid');
+      ],
+    ];
+    $column_map = ['nid' => 'nid'];
     $this->assertIdenticalResultset($view, $result_set, $column_map);
   }
 
diff --git a/core/modules/comment/src/Tests/Views/CommentFieldFilterTest.php b/core/modules/comment/src/Tests/Views/CommentFieldFilterTest.php
index c0cf374..040fc7d 100644
--- a/core/modules/comment/src/Tests/Views/CommentFieldFilterTest.php
+++ b/core/modules/comment/src/Tests/Views/CommentFieldFilterTest.php
@@ -15,21 +15,21 @@ class CommentFieldFilterTest extends CommentTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_field_filters');
+  public static $testViews = ['test_field_filters'];
 
   /**
    * List of comment titles by language.
    *
    * @var array
    */
-  public $commentTitles = array();
+  public $commentTitles = [];
 
   function setUp() {
     parent::setUp();
@@ -40,15 +40,15 @@ function setUp() {
     ConfigurableLanguage::createFromLangcode('es')->save();
 
     // Set up comment titles.
-    $this->commentTitles = array(
+    $this->commentTitles = [
       'en' => 'Food in Paris',
       'es' => 'Comida en Paris',
       'fr' => 'Nouriture en Paris',
-    );
+    ];
 
     // Create a new comment. Using the one created earlier will not work,
     // as it predates the language set-up.
-    $comment = array(
+    $comment = [
       'uid' => $this->loggedInUser->id(),
       'entity_id' => $this->nodeUserCommented->id(),
       'entity_type' => 'node',
@@ -56,7 +56,7 @@ function setUp() {
       'cid' => '',
       'pid' => '',
       'node_type' => '',
-    );
+    ];
     $this->comment = Comment::create($comment);
 
     // Add field values and translate the comment.
@@ -64,8 +64,8 @@ function setUp() {
     $this->comment->comment_body->value = $this->commentTitles['en'];
     $this->comment->langcode = 'en';
     $this->comment->save();
-    foreach (array('es', 'fr') as $langcode) {
-      $translation = $this->comment->addTranslation($langcode, array());
+    foreach (['es', 'fr'] as $langcode) {
+      $translation = $this->comment->addTranslation($langcode, []);
       $translation->comment_body->value = $this->commentTitles[$langcode];
       $translation->subject->value = $this->commentTitles[$langcode];
     }
@@ -78,19 +78,19 @@ function setUp() {
   public function testFilters() {
     // Test the title filter page, which filters for title contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-title-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida title filter');
+    $this->assertPageCounts('test-title-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida title filter');
 
     // Test the body filter page, which filters for body contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-body-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida body filter');
+    $this->assertPageCounts('test-body-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida body filter');
 
     // Test the title Paris filter page, which filters for title contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-title-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris title filter');
+    $this->assertPageCounts('test-title-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris title filter');
 
     // Test the body Paris filter page, which filters for body contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-body-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris body filter');
+    $this->assertPageCounts('test-body-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris body filter');
   }
 
   /**
diff --git a/core/modules/comment/src/Tests/Views/CommentRestExportTest.php b/core/modules/comment/src/Tests/Views/CommentRestExportTest.php
index a3d7e2d..ed7ce55 100644
--- a/core/modules/comment/src/Tests/Views/CommentRestExportTest.php
+++ b/core/modules/comment/src/Tests/Views/CommentRestExportTest.php
@@ -27,7 +27,7 @@ class CommentRestExportTest extends CommentTestBase {
   protected function setUp() {
     parent::setUp();
     // Add another anonymous comment.
-    $comment = array(
+    $comment = [
       'uid' => 0,
       'entity_id' => $this->nodeUserCommented->id(),
       'entity_type' => 'node',
@@ -38,7 +38,7 @@ protected function setUp() {
       'mail' => 'someone@example.com',
       'name' => 'bobby tables',
       'hostname' => 'public.example.com',
-    );
+    ];
     $this->comment = Comment::create($comment);
     $this->comment->save();
 
diff --git a/core/modules/comment/src/Tests/Views/CommentRowTest.php b/core/modules/comment/src/Tests/Views/CommentRowTest.php
index e96869c..d73811e 100644
--- a/core/modules/comment/src/Tests/Views/CommentRowTest.php
+++ b/core/modules/comment/src/Tests/Views/CommentRowTest.php
@@ -14,7 +14,7 @@ class CommentRowTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_comment_row');
+  public static $testViews = ['test_comment_row'];
 
   /**
    * Test comment row.
diff --git a/core/modules/comment/src/Tests/Views/CommentTestBase.php b/core/modules/comment/src/Tests/Views/CommentTestBase.php
index d687488..d7bec04 100644
--- a/core/modules/comment/src/Tests/Views/CommentTestBase.php
+++ b/core/modules/comment/src/Tests/Views/CommentTestBase.php
@@ -19,7 +19,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'comment', 'comment_test_views');
+  public static $modules = ['node', 'comment', 'comment_test_views'];
 
   /**
    * A normal user with permission to post comments (without approval).
@@ -59,21 +59,21 @@
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('comment_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['comment_test_views']);
 
     // Add two users, create a node with the user1 as author and another node
     // with user2 as author. For the second node add a comment from user1.
-    $this->account = $this->drupalCreateUser(array('skip comment approval'));
+    $this->account = $this->drupalCreateUser(['skip comment approval']);
     $this->account2 = $this->drupalCreateUser();
     $this->drupalLogin($this->account);
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => t('Basic page')));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => t('Basic page')]);
     $this->addDefaultCommentField('node', 'page');
 
     $this->nodeUserPosted = $this->drupalCreateNode();
-    $this->nodeUserCommented = $this->drupalCreateNode(array('uid' => $this->account2->id()));
+    $this->nodeUserCommented = $this->drupalCreateNode(['uid' => $this->account2->id()]);
 
-    $comment = array(
+    $comment = [
       'uid' => $this->loggedInUser->id(),
       'entity_id' => $this->nodeUserCommented->id(),
       'entity_type' => 'node',
@@ -82,7 +82,7 @@ protected function setUp() {
       'cid' => '',
       'pid' => '',
       'mail' => 'someone@example.com',
-    );
+    ];
     $this->comment = Comment::create($comment);
     $this->comment->save();
   }
diff --git a/core/modules/comment/src/Tests/Views/DefaultViewRecentCommentsTest.php b/core/modules/comment/src/Tests/Views/DefaultViewRecentCommentsTest.php
index ff151c6..3e5f26b 100644
--- a/core/modules/comment/src/Tests/Views/DefaultViewRecentCommentsTest.php
+++ b/core/modules/comment/src/Tests/Views/DefaultViewRecentCommentsTest.php
@@ -22,7 +22,7 @@ class DefaultViewRecentCommentsTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment', 'block');
+  public static $modules = ['node', 'comment', 'block'];
 
   /**
    * Number of results for the Master display.
@@ -50,7 +50,7 @@ class DefaultViewRecentCommentsTest extends ViewTestBase {
    *
    * @var array
    */
-  protected $commentsCreated = array();
+  protected $commentsCreated = [];
 
   /**
    * Contains the node object used for comments of this test.
@@ -66,9 +66,9 @@ protected function setUp() {
     $content_type = $this->drupalCreateContentType();
 
     // Add a node of the new content type.
-    $node_data = array(
+    $node_data = [
       'type' => $content_type->id(),
-    );
+    ];
 
     $this->addDefaultCommentField('node', $content_type->id());
     $this->node = $this->drupalCreateNode($node_data);
@@ -79,12 +79,12 @@ protected function setUp() {
     // Create some comments and attach them to the created node.
     for ($i = 0; $i < $this->masterDisplayResults; $i++) {
       /** @var \Drupal\comment\CommentInterface $comment */
-      $comment = Comment::create(array(
+      $comment = Comment::create([
         'status' => CommentInterface::PUBLISHED,
         'field_name' => 'comment',
         'entity_type' => 'node',
         'entity_id' => $this->node->id(),
-      ));
+      ]);
       $comment->setOwnerId(0);
       $comment->setSubject('Test comment ' . $i);
       $comment->comment_body->value = 'Test body ' . $i;
@@ -116,12 +116,12 @@ public function testBlockDisplay() {
     $view->setDisplay('block_1');
     $this->executeView($view);
 
-    $map = array(
+    $map = [
       'subject' => 'subject',
       'cid' => 'cid',
       'comment_field_data_created' => 'created'
-    );
-    $expected_result = array();
+    ];
+    $expected_result = [];
     foreach (array_values($this->commentsCreated) as $key => $comment) {
       $expected_result[$key]['subject'] = $comment->getSubject();
       $expected_result[$key]['cid'] = $comment->id();
@@ -132,7 +132,7 @@ public function testBlockDisplay() {
     // Check the number of results given by the display is the expected.
     $this->assertEqual(sizeof($view->result), $this->blockDisplayResults,
       format_string('There are exactly @results comments. Expected @expected',
-        array('@results' => count($view->result), '@expected' => $this->blockDisplayResults)
+        ['@results' => count($view->result), '@expected' => $this->blockDisplayResults]
       )
     );
   }
diff --git a/core/modules/comment/src/Tests/Views/FilterUserUIDTest.php b/core/modules/comment/src/Tests/Views/FilterUserUIDTest.php
index ee8281b..c4570ce 100644
--- a/core/modules/comment/src/Tests/Views/FilterUserUIDTest.php
+++ b/core/modules/comment/src/Tests/Views/FilterUserUIDTest.php
@@ -20,7 +20,7 @@ class FilterUserUIDTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_comment_user_uid');
+  public static $testViews = ['test_comment_user_uid'];
 
   function testCommentUserUIDTest() {
     $view = Views::getView('test_comment_user_uid');
@@ -40,23 +40,23 @@ function testCommentUserUIDTest() {
     ]);
     $comment->save();
 
-    $options = array(
+    $options = [
       'id' => 'uid_touch',
       'table' => 'node_field_data',
       'field' => 'uid_touch',
-      'value' => array($this->loggedInUser->id()),
-    );
+      'value' => [$this->loggedInUser->id()],
+    ];
     $view->addHandler('default', 'filter', 'node_field_data', 'uid_touch', $options);
-    $this->executeView($view, array($this->account->id()));
-    $result_set = array(
-      array(
+    $this->executeView($view, [$this->account->id()]);
+    $result_set = [
+      [
         'nid' => $this->nodeUserPosted->id(),
-      ),
-      array(
+      ],
+      [
         'nid' => $this->nodeUserCommented->id(),
-      ),
-    );
-    $column_map = array('nid' => 'nid');
+      ],
+    ];
+    $column_map = ['nid' => 'nid'];
     $this->assertIdenticalResultset($view, $result_set, $column_map);
   }
 
diff --git a/core/modules/comment/src/Tests/Views/RowRssTest.php b/core/modules/comment/src/Tests/Views/RowRssTest.php
index 85bd34f..343b797 100644
--- a/core/modules/comment/src/Tests/Views/RowRssTest.php
+++ b/core/modules/comment/src/Tests/Views/RowRssTest.php
@@ -15,7 +15,7 @@ class RowRssTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_comment_rss');
+  public static $testViews = ['test_comment_rss'];
 
   /**
    * Test comment rss output.
diff --git a/core/modules/comment/src/Tests/Views/WizardTest.php b/core/modules/comment/src/Tests/Views/WizardTest.php
index 885ce2c..a7f14c8 100644
--- a/core/modules/comment/src/Tests/Views/WizardTest.php
+++ b/core/modules/comment/src/Tests/Views/WizardTest.php
@@ -21,7 +21,7 @@ class WizardTest extends WizardTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment');
+  public static $modules = ['node', 'comment'];
 
 
   /**
@@ -29,7 +29,7 @@ class WizardTest extends WizardTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => t('Basic page')));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => t('Basic page')]);
     // Add comment field to page node type.
     $this->addDefaultCommentField('node', 'page');
   }
@@ -38,7 +38,7 @@ protected function setUp() {
    * Tests adding a view of comments.
    */
   public function testCommentWizard() {
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['show[wizard_key]'] = 'comment';
@@ -48,7 +48,7 @@ public function testCommentWizard() {
     // Just triggering the saving should automatically choose a proper row
     // plugin.
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
-    $this->assertUrl('admin/structure/views/view/' . $view['id'], array(), 'Make sure the view saving was successful and the browser got redirected to the edit page.');
+    $this->assertUrl('admin/structure/views/view/' . $view['id'], [], 'Make sure the view saving was successful and the browser got redirected to the edit page.');
 
     // If we update the type first we should get a selection of comment valid
     // row plugins as the select field.
@@ -59,19 +59,19 @@ public function testCommentWizard() {
     // Check for available options of the row plugin.
     $xpath = $this->constructFieldXpath('name', 'page[style][row_plugin]');
     $fields = $this->xpath($xpath);
-    $options = array();
+    $options = [];
     foreach ($fields as $field) {
       $items = $this->getAllOptions($field);
       foreach ($items as $item) {
         $options[] = $item->attributes()->value;
       }
     }
-    $expected_options = array('entity:comment', 'fields');
+    $expected_options = ['entity:comment', 'fields'];
     $this->assertEqual($options, $expected_options);
 
     $view['id'] = strtolower($this->randomMachineName(16));
     $this->drupalPostForm(NULL, $view, t('Save and edit'));
-    $this->assertUrl('admin/structure/views/view/' . $view['id'], array(), 'Make sure the view saving was successful and the browser got redirected to the edit page.');
+    $this->assertUrl('admin/structure/views/view/' . $view['id'], [], 'Make sure the view saving was successful and the browser got redirected to the edit page.');
 
     $user = $this->drupalCreateUser(['access comments']);
     $this->drupalLogin($user);
diff --git a/core/modules/comment/tests/modules/comment_test/comment_test.module b/core/modules/comment/tests/modules/comment_test/comment_test.module
index d54814b..b1cca02 100644
--- a/core/modules/comment/tests/modules/comment_test/comment_test.module
+++ b/core/modules/comment/tests/modules/comment_test/comment_test.module
@@ -31,14 +31,14 @@ function comment_test_comment_links_alter(array &$links, CommentInterface &$enti
     return;
   }
 
-  $links['comment_test'] = array(
+  $links['comment_test'] = [
     '#theme' => 'links__comment__comment_test',
-    '#attributes' => array('class' => array('links', 'inline')),
-    '#links' => array(
-      'comment-report' => array(
+    '#attributes' => ['class' => ['links', 'inline']],
+    '#links' => [
+      'comment-report' => [
         'title' => t('Report'),
         'url' => Url::fromRoute('comment_test.report', ['comment' => $entity->id()], ['query' => ['token' => \Drupal::getContainer()->get('csrf_token')->get("comment/{$entity->id()}/report")]]),
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
diff --git a/core/modules/comment/tests/src/Kernel/CommentDefaultFormatterCacheTagsTest.php b/core/modules/comment/tests/src/Kernel/CommentDefaultFormatterCacheTagsTest.php
index a95088e..bdea71d 100644
--- a/core/modules/comment/tests/src/Kernel/CommentDefaultFormatterCacheTagsTest.php
+++ b/core/modules/comment/tests/src/Kernel/CommentDefaultFormatterCacheTagsTest.php
@@ -26,7 +26,7 @@ class CommentDefaultFormatterCacheTagsTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'comment');
+  public static $modules = ['entity_test', 'comment'];
 
   /**
    * {@inheritdoc}
@@ -48,11 +48,11 @@ protected function setUp() {
     // user does not have access to the 'administer comments' permission, to
     // ensure only published comments are visible to the end user.
     $current_user = $this->container->get('current_user');
-    $current_user->setAccount($this->createUser(array(), array('access comments')));
+    $current_user->setAccount($this->createUser([], ['access comments']));
 
     // Install tables and config needed to render comments.
-    $this->installSchema('comment', array('comment_entity_statistics'));
-    $this->installConfig(array('system', 'filter', 'comment'));
+    $this->installSchema('comment', ['comment_entity_statistics']);
+    $this->installConfig(['system', 'filter', 'comment']);
 
     // Comment rendering generates links, so build the router.
     $this->container->get('router.builder')->rebuild();
@@ -70,7 +70,7 @@ public function testCacheTags() {
     $renderer = $this->container->get('renderer');
 
     // Create the entity that will be commented upon.
-    $commented_entity = EntityTest::create(array('name' => $this->randomMachineName()));
+    $commented_entity = EntityTest::create(['name' => $this->randomMachineName()]);
     $commented_entity->save();
 
     // Verify cache tags on the rendered entity before it has comments.
@@ -94,19 +94,19 @@ public function testCacheTags() {
     // also exists in the {users} table.
     $user = $this->createUser();
     $user->save();
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'subject' => 'Llama',
-      'comment_body' => array(
+      'comment_body' => [
         'value' => 'Llamas are cool!',
         'format' => 'plain_text',
-      ),
+      ],
       'entity_id' => $commented_entity->id(),
       'entity_type' => 'entity_test',
       'field_name' => 'comment',
       'comment_type' => 'comment',
       'status' => CommentInterface::PUBLISHED,
       'uid' => $user->id(),
-    ));
+    ]);
     $comment->save();
 
     // Load commented entity so comment_count gets computed.
diff --git a/core/modules/comment/tests/src/Kernel/CommentFieldAccessTest.php b/core/modules/comment/tests/src/Kernel/CommentFieldAccessTest.php
index 674c7f3..5046353 100644
--- a/core/modules/comment/tests/src/Kernel/CommentFieldAccessTest.php
+++ b/core/modules/comment/tests/src/Kernel/CommentFieldAccessTest.php
@@ -29,30 +29,30 @@ class CommentFieldAccessTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment', 'entity_test', 'user');
+  public static $modules = ['comment', 'entity_test', 'user'];
 
   /**
    * Fields that only users with administer comments permissions can change.
    *
    * @var array
    */
-  protected $administrativeFields = array(
+  protected $administrativeFields = [
     'uid',
     'status',
     'created',
-  );
+  ];
 
   /**
    * These fields are automatically managed and can not be changed by any user.
    *
    * @var array
    */
-  protected $readOnlyFields = array(
+  protected $readOnlyFields = [
     'changed',
     'hostname',
     'cid',
     'thread',
-  );
+  ];
 
   /**
    * These fields can be edited on create only.
@@ -73,19 +73,19 @@ class CommentFieldAccessTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  protected $contactFields = array(
+  protected $contactFields = [
     'name',
     'mail',
     'homepage',
-  );
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('user', 'comment'));
-    $this->installSchema('comment', array('comment_entity_statistics'));
+    $this->installConfig(['user', 'comment']);
+    $this->installSchema('comment', ['comment_entity_statistics']);
   }
 
   /**
diff --git a/core/modules/comment/tests/src/Kernel/CommentStringIdEntitiesTest.php b/core/modules/comment/tests/src/Kernel/CommentStringIdEntitiesTest.php
index ed56cc9..adbe1b0 100644
--- a/core/modules/comment/tests/src/Kernel/CommentStringIdEntitiesTest.php
+++ b/core/modules/comment/tests/src/Kernel/CommentStringIdEntitiesTest.php
@@ -18,21 +18,21 @@ class CommentStringIdEntitiesTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'comment',
     'user',
     'field',
     'field_ui',
     'entity_test',
     'text',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('comment');
-    $this->installSchema('comment', array('comment_entity_statistics'));
+    $this->installSchema('comment', ['comment_entity_statistics']);
     // Create the comment body field storage.
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
   }
 
   /**
@@ -40,21 +40,21 @@ protected function setUp() {
    */
   public function testCommentFieldNonStringId() {
     try {
-      $bundle = CommentType::create(array(
+      $bundle = CommentType::create([
         'id' => 'foo',
         'label' => 'foo',
         'description' => '',
         'target_entity_type_id' => 'entity_test_string_id',
-      ));
+      ]);
       $bundle->save();
-      $field_storage = FieldStorageConfig::create(array(
+      $field_storage = FieldStorageConfig::create([
         'field_name' => 'foo',
         'entity_type' => 'entity_test_string_id',
-        'settings' => array(
+        'settings' => [
           'comment_type' => 'entity_test_string_id',
-        ),
+        ],
         'type' => 'comment',
-      ));
+      ]);
       $field_storage->save();
       $this->fail('Did not throw an exception as expected.');
     }
diff --git a/core/modules/comment/tests/src/Kernel/CommentValidationTest.php b/core/modules/comment/tests/src/Kernel/CommentValidationTest.php
index eb37006..98b7715 100644
--- a/core/modules/comment/tests/src/Kernel/CommentValidationTest.php
+++ b/core/modules/comment/tests/src/Kernel/CommentValidationTest.php
@@ -19,14 +19,14 @@ class CommentValidationTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment', 'node');
+  public static $modules = ['comment', 'node'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installSchema('comment', array('comment_entity_statistics'));
+    $this->installSchema('comment', ['comment_entity_statistics']);
   }
 
   /**
@@ -34,54 +34,54 @@ protected function setUp() {
    */
   public function testValidation() {
     // Add a user.
-    $user = User::create(array('name' => 'test', 'status' => TRUE));
+    $user = User::create(['name' => 'test', 'status' => TRUE]);
     $user->save();
 
     // Add comment type.
-    $this->entityManager->getStorage('comment_type')->create(array(
+    $this->entityManager->getStorage('comment_type')->create([
       'id' => 'comment',
       'label' => 'comment',
       'target_entity_type_id' => 'node',
-    ))->save();
+    ])->save();
 
     // Add comment field to content.
-    $this->entityManager->getStorage('field_storage_config')->create(array(
+    $this->entityManager->getStorage('field_storage_config')->create([
       'entity_type' => 'node',
       'field_name' => 'comment',
       'type' => 'comment',
-      'settings' => array(
+      'settings' => [
         'comment_type' => 'comment',
-      )
-    ))->save();
+      ]
+    ])->save();
 
     // Create a page node type.
-    $this->entityManager->getStorage('node_type')->create(array(
+    $this->entityManager->getStorage('node_type')->create([
       'type' => 'page',
       'name' => 'page',
-    ))->save();
+    ])->save();
 
     // Add comment field to page content.
     /** @var \Drupal\field\FieldConfigInterface $field */
-    $field = $this->entityManager->getStorage('field_config')->create(array(
+    $field = $this->entityManager->getStorage('field_config')->create([
       'field_name' => 'comment',
       'entity_type' => 'node',
       'bundle' => 'page',
       'label' => 'Comment settings',
-    ));
+    ]);
     $field->save();
 
-    $node = $this->entityManager->getStorage('node')->create(array(
+    $node = $this->entityManager->getStorage('node')->create([
       'type' => 'page',
       'title' => 'test',
-    ));
+    ]);
     $node->save();
 
-    $comment = $this->entityManager->getStorage('comment')->create(array(
+    $comment = $this->entityManager->getStorage('comment')->create([
       'entity_id' => $node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'comment_body' => $this->randomMachineName(),
-    ));
+    ]);
 
     $violations = $comment->validate();
     $this->assertEqual(count($violations), 0, 'No violations when validating a default comment.');
@@ -101,7 +101,7 @@ public function testValidation() {
     $violations = $comment->validate();
     $this->assertEqual(count($violations), 1, "Violation found on author name collision");
     $this->assertEqual($violations[0]->getPropertyPath(), "name");
-    $this->assertEqual($violations[0]->getMessage(), t('The name you used (%name) belongs to a registered user.', array('%name' => 'test')));
+    $this->assertEqual($violations[0]->getMessage(), t('The name you used (%name) belongs to a registered user.', ['%name' => 'test']));
 
     // Make the name valid.
     $comment->set('name', 'valid unused name');
@@ -141,39 +141,39 @@ public function testValidation() {
     \Drupal::entityManager()->getStorage('node')->resetCache([$node->id()]);
     $node = Node::load($node->id());
     // Create a new comment with the new field.
-    $comment = $this->entityManager->getStorage('comment')->create(array(
+    $comment = $this->entityManager->getStorage('comment')->create([
       'entity_id' => $node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'comment_body' => $this->randomMachineName(),
       'uid' => 0,
       'name' => '',
-    ));
+    ]);
     $violations = $comment->validate();
     $this->assertEqual(count($violations), 1, 'Violation found when name is required, but empty and UID is anonymous.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'name');
     $this->assertEqual($violations[0]->getMessage(), t('You have to specify a valid author.'));
 
     // Test creating a default comment with a given user id works.
-    $comment = $this->entityManager->getStorage('comment')->create(array(
+    $comment = $this->entityManager->getStorage('comment')->create([
       'entity_id' => $node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'comment_body' => $this->randomMachineName(),
       'uid' => $user->id(),
-    ));
+    ]);
     $violations = $comment->validate();
     $this->assertEqual(count($violations), 0, 'No violations when validating a default comment with an author.');
 
     // Test specifying a wrong author name does not work.
-    $comment = $this->entityManager->getStorage('comment')->create(array(
+    $comment = $this->entityManager->getStorage('comment')->create([
       'entity_id' => $node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'comment_body' => $this->randomMachineName(),
       'uid' => $user->id(),
       'name' => 'not-test',
-    ));
+    ]);
     $violations = $comment->validate();
     $this->assertEqual(count($violations), 1, 'Violation found when author name and comment author do not match.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'name');
@@ -195,7 +195,7 @@ protected function assertLengthViolation(CommentInterface $comment, $field_name,
     $this->assertEqual(count($violations), 1, "Violation found when $field_name is too long.");
     $this->assertEqual($violations[0]->getPropertyPath(), "$field_name.0.value");
     $field_label = $comment->get($field_name)->getFieldDefinition()->getLabel();
-    $this->assertEqual($violations[0]->getMessage(), t('%name: may not be longer than @max characters.', array('%name' => $field_label, '@max' => $length)));
+    $this->assertEqual($violations[0]->getMessage(), t('%name: may not be longer than @max characters.', ['%name' => $field_label, '@max' => $length]));
   }
 
 }
diff --git a/core/modules/comment/tests/src/Kernel/Migrate/MigrateCommentStubTest.php b/core/modules/comment/tests/src/Kernel/Migrate/MigrateCommentStubTest.php
index b5fc4fe..0b256ea 100644
--- a/core/modules/comment/tests/src/Kernel/Migrate/MigrateCommentStubTest.php
+++ b/core/modules/comment/tests/src/Kernel/Migrate/MigrateCommentStubTest.php
@@ -33,11 +33,11 @@ protected function setUp() {
     $storage = \Drupal::entityManager()->getStorage('user');
     // Insert a row for the anonymous user.
     $storage
-      ->create(array(
+      ->create([
         'uid' => 0,
         'status' => 0,
         'name' => '',
-      ))
+      ])
       ->save();
     // Need at least one node type and comment type present.
     NodeType::create([
diff --git a/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTest.php b/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTest.php
index 4d4df03..f1e094f 100644
--- a/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTest.php
+++ b/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTest.php
@@ -34,11 +34,11 @@ protected function setUp() {
     $this->executeMigration('d7_node_type');
     // We only need the test_content_type node migration to run for real, so
     // mock all the others.
-    $this->prepareMigrations(array(
-      'd7_node' => array(
-        array(array(0), array(0)),
-      ),
-    ));
+    $this->prepareMigrations([
+      'd7_node' => [
+        [[0], [0]],
+      ],
+    ]);
     $this->executeMigrations([
       'd7_node',
       'd7_comment_type',
diff --git a/core/modules/comment/tests/src/Kernel/Views/CommentUserNameTest.php b/core/modules/comment/tests/src/Kernel/Views/CommentUserNameTest.php
index dae2c48..cad7b2b 100644
--- a/core/modules/comment/tests/src/Kernel/Views/CommentUserNameTest.php
+++ b/core/modules/comment/tests/src/Kernel/Views/CommentUserNameTest.php
@@ -43,11 +43,11 @@ protected function setUp($import_test_views = TRUE) {
     $storage = \Drupal::entityManager()->getStorage('user');
     // Insert a row for the anonymous user.
     $storage
-      ->create(array(
+      ->create([
         'uid' => 0,
         'name' => '',
         'status' => 0,
-      ))
+      ])
       ->save();
 
     $admin_role = Role::create([
diff --git a/core/modules/comment/tests/src/Unit/CommentLinkBuilderTest.php b/core/modules/comment/tests/src/Unit/CommentLinkBuilderTest.php
index 61e93a1..18da223 100644
--- a/core/modules/comment/tests/src/Unit/CommentLinkBuilderTest.php
+++ b/core/modules/comment/tests/src/Unit/CommentLinkBuilderTest.php
@@ -75,9 +75,9 @@ protected function setUp() {
     $this->commentManager->expects($this->any())
       ->method('getFields')
       ->with('node')
-      ->willReturn(array(
-        'comment' => array(),
-      ));
+      ->willReturn([
+        'comment' => [],
+      ]);
     $this->commentManager->expects($this->any())
       ->method('forbiddenMessage')
       ->willReturn("Can't let you do that Dave.");
@@ -116,10 +116,10 @@ public function testCommentLinkBuilder(NodeInterface $node, $context, $has_acces
       ->willReturn($history_exists);
     $this->currentUser->expects($this->any())
       ->method('hasPermission')
-      ->willReturnMap(array(
-        array('access comments', $has_access_comments),
-        array('post comments', $has_post_comments),
-      ));
+      ->willReturnMap([
+        ['access comments', $has_access_comments],
+        ['post comments', $has_post_comments],
+      ]);
     $this->currentUser->expects($this->any())
       ->method('isAuthenticated')
       ->willReturn(!$is_anonymous);
@@ -155,57 +155,57 @@ public function testCommentLinkBuilder(NodeInterface $node, $context, $has_acces
    * Data provider for ::testCommentLinkBuilder.
    */
   public function getLinkCombinations() {
-    $cases = array();
+    $cases = [];
     // No links should be created if the entity doesn't have the field.
-    $cases[] = array(
+    $cases[] = [
       $this->getMockNode(FALSE, CommentItemInterface::OPEN, CommentItemInterface::FORM_BELOW, 1),
-      array('view_mode' => 'teaser'),
+      ['view_mode' => 'teaser'],
       TRUE,
       TRUE,
       TRUE,
       TRUE,
-      array(),
-    );
-    foreach (array('search_result', 'search_index', 'print') as $view_mode) {
+      [],
+    ];
+    foreach (['search_result', 'search_index', 'print'] as $view_mode) {
       // Nothing should be output in these view modes.
-      $cases[] = array(
+      $cases[] = [
         $this->getMockNode(TRUE, CommentItemInterface::OPEN, CommentItemInterface::FORM_BELOW, 1),
-        array('view_mode' => $view_mode),
+        ['view_mode' => $view_mode],
         TRUE,
         TRUE,
         TRUE,
         TRUE,
-        array(),
-      );
+        [],
+      ];
     }
     // All other combinations.
-    $combinations = array(
-      'is_anonymous' => array(FALSE, TRUE),
-      'comment_count' => array(0, 1),
-      'has_access_comments' => array(0, 1),
-      'history_exists' => array(FALSE, TRUE),
-      'has_post_comments'   => array(0, 1),
-      'form_location'            => array(CommentItemInterface::FORM_BELOW, CommentItemInterface::FORM_SEPARATE_PAGE),
-      'comments'        => array(
+    $combinations = [
+      'is_anonymous' => [FALSE, TRUE],
+      'comment_count' => [0, 1],
+      'has_access_comments' => [0, 1],
+      'history_exists' => [FALSE, TRUE],
+      'has_post_comments'   => [0, 1],
+      'form_location'            => [CommentItemInterface::FORM_BELOW, CommentItemInterface::FORM_SEPARATE_PAGE],
+      'comments'        => [
         CommentItemInterface::OPEN,
         CommentItemInterface::CLOSED,
         CommentItemInterface::HIDDEN,
-      ),
-      'view_mode' => array(
+      ],
+      'view_mode' => [
         'teaser', 'rss', 'full',
-      ),
-    );
+      ],
+    ];
     $permutations = TestBase::generatePermutations($combinations);
     foreach ($permutations as $combination) {
-      $case = array(
+      $case = [
         $this->getMockNode(TRUE, $combination['comments'], $combination['form_location'], $combination['comment_count']),
-        array('view_mode' => $combination['view_mode']),
+        ['view_mode' => $combination['view_mode']],
         $combination['has_access_comments'],
         $combination['history_exists'],
         $combination['has_post_comments'],
         $combination['is_anonymous'],
-      );
-      $expected = array();
+      ];
+      $expected = [];
       // When comments are enabled in teaser mode, and comments exist, and the
       // user has access - we can output the comment count.
       if ($combination['comments'] && $combination['view_mode'] == 'teaser' && $combination['comment_count'] && $combination['has_access_comments']) {
@@ -225,7 +225,7 @@ public function getLinkCombinations() {
             // comments exist or the form is on a separate page.
             if ($combination['view_mode'] == 'teaser' || ($combination['has_access_comments'] && $combination['comment_count']) || $combination['form_location'] == CommentItemInterface::FORM_SEPARATE_PAGE) {
               // There should be a add comment link.
-              $expected['comment-add'] = array('title' => 'Add new comment');
+              $expected['comment-add'] = ['title' => 'Add new comment'];
               if ($combination['form_location'] == CommentItemInterface::FORM_BELOW) {
                 // On the same page.
                 $expected['comment-add']['url'] = Url::fromRoute('node.view');
@@ -274,11 +274,11 @@ protected function getMockNode($has_field, $comment_status, $form_location, $com
     if (empty($this->timestamp)) {
       $this->timestamp = time();
     }
-    $field_item = (object) array(
+    $field_item = (object) [
       'status' => $comment_status,
       'comment_count' => $comment_count,
       'last_comment_timestamp' => $this->timestamp,
-    );
+    ];
     $node->expects($this->any())
       ->method('get')
       ->with('comment')
@@ -312,7 +312,7 @@ protected function getMockNode($has_field, $comment_status, $form_location, $com
       ->willReturn($url);
     $node->expects($this->any())
       ->method('url')
-      ->willReturn(array('route_name' => 'node.view'));
+      ->willReturn(['route_name' => 'node.view']);
 
     return $node;
   }
diff --git a/core/modules/comment/tests/src/Unit/CommentManagerTest.php b/core/modules/comment/tests/src/Unit/CommentManagerTest.php
index 78f14bb..3a6e201 100644
--- a/core/modules/comment/tests/src/Unit/CommentManagerTest.php
+++ b/core/modules/comment/tests/src/Unit/CommentManagerTest.php
@@ -32,13 +32,13 @@ public function testGetFields() {
 
     $entity_manager->expects($this->once())
       ->method('getFieldMapByFieldType')
-      ->will($this->returnValue(array(
-        'node' => array(
-          'field_foobar' => array(
+      ->will($this->returnValue([
+        'node' => [
+          'field_foobar' => [
             'type' => 'comment',
-          ),
-        ),
-      )));
+          ],
+        ],
+      ]));
 
     $entity_manager->expects($this->any())
       ->method('getDefinition')
diff --git a/core/modules/comment/tests/src/Unit/CommentStatisticsUnitTest.php b/core/modules/comment/tests/src/Unit/CommentStatisticsUnitTest.php
index 39b4cf0..2a6d379 100644
--- a/core/modules/comment/tests/src/Unit/CommentStatisticsUnitTest.php
+++ b/core/modules/comment/tests/src/Unit/CommentStatisticsUnitTest.php
@@ -56,7 +56,7 @@ protected function setUp() {
 
     $this->statement->expects($this->any())
       ->method('fetchObject')
-      ->will($this->returnCallback(array($this, 'fetchObjectCallback')));
+      ->will($this->returnCallback([$this, 'fetchObjectCallback']));
 
     $this->select = $this->getMockBuilder('Drupal\Core\Database\Query\Select')
       ->disableOriginalConstructor()
@@ -95,8 +95,8 @@ protected function setUp() {
    */
   public function testRead() {
     $this->calls_to_fetch = 0;
-    $results = $this->commentStatistics->read(array('1' => 'boo', '2' => 'foo'), 'snafoos');
-    $this->assertEquals($results, array('something', 'something-else'));
+    $results = $this->commentStatistics->read(['1' => 'boo', '2' => 'foo'], 'snafoos');
+    $this->assertEquals($results, ['something', 'something-else']);
   }
 
   /**
diff --git a/core/modules/comment/tests/src/Unit/Entity/CommentLockTest.php b/core/modules/comment/tests/src/Unit/Entity/CommentLockTest.php
index 97c109f..e724dc6 100644
--- a/core/modules/comment/tests/src/Unit/Entity/CommentLockTest.php
+++ b/core/modules/comment/tests/src/Unit/Entity/CommentLockTest.php
@@ -26,7 +26,7 @@ public function testLocks() {
     $request_stack = new RequestStack();
     $request_stack->push(Request::create('/'));
     $container->set('request_stack', $request_stack);
-    $container->setParameter('cache_bins', array('cache.test' => 'test'));
+    $container->setParameter('cache_bins', ['cache.test' => 'test']);
     $lock = $this->getMock('Drupal\Core\Lock\LockBackendInterface');
     $cid = 2;
     $lock_name = "comment:$cid:.00/";
@@ -84,7 +84,7 @@ public function testLocks() {
     $comment->expects($this->at(1))
       ->method('get')
       ->with('status')
-      ->will($this->returnValue((object) array('value' => NULL)));
+      ->will($this->returnValue((object) ['value' => NULL]));
     $storage = $this->getMock('Drupal\comment\CommentStorageInterface');
 
     // preSave() should acquire the lock. (This is what's really being tested.)
diff --git a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTestBase.php b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTestBase.php
index 79bae3e..220328b 100644
--- a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTestBase.php
+++ b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentTestBase.php
@@ -14,20 +14,20 @@
   const PLUGIN_CLASS = 'Drupal\comment\Plugin\migrate\source\d6\Comment';
 
   // The fake Migration configuration entity.
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     // The ID of the entity, can be any string.
     'id' => 'test',
     // This needs to be the identifier of the actual key: cid for comment, nid
     // for node and so on.
-    'source' => array(
+    'source' => [
       'plugin' => 'd6_comment',
-    ),
-  );
+    ],
+  ];
 
   // We need to set up the database contents; it's easier to do that below.
 
-  protected $expectedResults = array(
-    array(
+  protected $expectedResults = [
+    [
       'cid' => 1,
       'pid' => 0,
       'nid' => 2,
@@ -43,8 +43,8 @@
       'homepage' => '',
       'format' => 'testformat1',
       'type' => 'story',
-    ),
-    array(
+    ],
+    [
       'cid' => 2,
       'pid' => 1,
       'nid' => 3,
@@ -60,8 +60,8 @@
       'homepage' => '',
       'format' => 'testformat2',
       'type' => 'page',
-    ),
-  );
+    ],
+  ];
 
   /**
    * {@inheritdoc}
@@ -72,8 +72,8 @@ protected function setUp() {
       $this->databaseContents['comments'][$k]['status'] = 1 - $this->databaseContents['comments'][$k]['status'];
     }
     // Add node table data.
-    $this->databaseContents['node'][] = array('nid' => 2, 'type' => 'story');
-    $this->databaseContents['node'][] = array('nid' => 3, 'type' => 'page');
+    $this->databaseContents['node'][] = ['nid' => 2, 'type' => 'story'];
+    $this->databaseContents['node'][] = ['nid' => 3, 'type' => 'page'];
     parent::setUp();
   }
 
diff --git a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariablePerCommentTypeTest.php b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariablePerCommentTypeTest.php
index 75d0932..892319a 100644
--- a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariablePerCommentTypeTest.php
+++ b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariablePerCommentTypeTest.php
@@ -13,46 +13,46 @@ class CommentVariablePerCommentTypeTest extends MigrateSqlSourceTestCase {
 
   const PLUGIN_CLASS = CommentVariablePerCommentType::class;
 
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'source' => array(
+    'source' => [
       'plugin' => 'd6_comment_variable_per_comment_type',
-    ),
-  );
+    ],
+  ];
 
-  protected $expectedResults = array(
+  protected $expectedResults = [
     // Each result will also include a label and description, but those are
     // static values set by the source plugin and don't need to be asserted.
-    array(
+    [
       'comment_type' => 'comment',
-    ),
-    array(
+    ],
+    [
       'comment_type' => 'comment_no_subject',
-    ),
-  );
+    ],
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->databaseContents['node_type'] = array(
-      array(
+    $this->databaseContents['node_type'] = [
+      [
         'type' => 'page',
-      ),
-      array(
+      ],
+      [
         'type' => 'story',
-      ),
-    );
-    $this->databaseContents['variable'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['variable'] = [
+      [
         'name' => 'comment_subject_field_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_subject_field_story',
         'value' => serialize(0),
-      ),
-    );
+      ],
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariableTest.php b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariableTest.php
index 6d25a2b..406cd11 100644
--- a/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariableTest.php
+++ b/core/modules/comment/tests/src/Unit/Migrate/d6/CommentVariableTest.php
@@ -13,15 +13,15 @@ class CommentVariableTest extends MigrateSqlSourceTestCase {
 
   const PLUGIN_CLASS = CommentVariable::class;
 
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'source' => array(
+    'source' => [
       'plugin' => 'd6_comment_variable',
-    ),
-  );
+    ],
+  ];
 
-  protected $expectedResults = array(
-    array(
+  protected $expectedResults = [
+    [
       'comment' => '1',
       'comment_default_mode' => '1',
       'comment_default_order' => '1',
@@ -33,56 +33,56 @@ class CommentVariableTest extends MigrateSqlSourceTestCase {
       'comment_form_location' => '1',
       'node_type' => 'page',
       'comment_type' => 'comment',
-    ),
-  );
+    ],
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->databaseContents['node_type'] = array(
-      array(
+    $this->databaseContents['node_type'] = [
+      [
         'type' => 'page',
-      ),
-    );
-    $this->databaseContents['variable'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['variable'] = [
+      [
         'name' => 'comment_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_default_mode_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_default_order_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_default_per_page_page',
         'value' => serialize(50),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_controls_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_anonymous_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_subject_field_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_preview_page',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_form_location_page',
         'value' => serialize(1),
-      ),
-    );
+      ],
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTest.php b/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTest.php
index 7793348..aed2f28 100644
--- a/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTest.php
+++ b/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTest.php
@@ -13,15 +13,15 @@ class CommentTest extends MigrateSqlSourceTestCase {
 
   const PLUGIN_CLASS = 'Drupal\comment\Plugin\migrate\source\d7\Comment';
 
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'source' => array(
+    'source' => [
       'plugin' => 'd7_comment',
-    ),
-  );
+    ],
+  ];
 
-  protected $expectedResults = array(
-    array(
+  protected $expectedResults = [
+    [
       'cid' => '1',
       'pid' => '0',
       'nid' => '1',
@@ -36,14 +36,14 @@ class CommentTest extends MigrateSqlSourceTestCase {
       'mail' => '',
       'homepage' => '',
       'language' => 'und',
-      'comment_body' => array(
-        array(
+      'comment_body' => [
+        [
           'value' => 'This is a comment',
           'format' => 'filtered_html',
-        ),
-      ),
-    ),
-  );
+        ],
+      ],
+    ],
+  ];
 
   /**
    * {@inheritdoc}
@@ -52,8 +52,8 @@ protected function setUp() {
     $this->databaseContents['comment'] = $this->expectedResults;
     unset($this->databaseContents['comment'][0]['comment_body']);
 
-    $this->databaseContents['node'] = array(
-      array(
+    $this->databaseContents['node'] = [
+      [
         'nid' => '1',
         'vid' => '1',
         'type' => 'test_content_type',
@@ -68,10 +68,10 @@ protected function setUp() {
         'sticky' => '0',
         'tnid' => '0',
         'translate' => '0',
-      ),
-    );
-    $this->databaseContents['field_config_instance'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['field_config_instance'] = [
+      [
         'id' => '14',
         'field_id' => '1',
         'field_name' => 'comment_body',
@@ -79,10 +79,10 @@ protected function setUp() {
         'bundle' => 'comment_node_test_content_type',
         'data' => 'a:0:{}',
         'deleted' => '0',
-      ),
-    );
-    $this->databaseContents['field_data_comment_body'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['field_data_comment_body'] = [
+      [
         'entity_type' => 'comment',
         'bundle' => 'comment_node_test_content_type',
         'deleted' => '0',
@@ -92,8 +92,8 @@ protected function setUp() {
         'delta' => '0',
         'comment_body_value' => 'This is a comment',
         'comment_body_format' => 'filtered_html',
-      ),
-    );
+      ],
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTypeTest.php b/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTypeTest.php
index 71c651b..106716d 100644
--- a/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTypeTest.php
+++ b/core/modules/comment/tests/src/Unit/Migrate/d7/CommentTypeTest.php
@@ -13,15 +13,15 @@ class CommentTypeTest extends MigrateSqlSourceTestCase {
 
   const PLUGIN_CLASS = 'Drupal\comment\Plugin\migrate\source\d7\CommentType';
 
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'source' => array(
+    'source' => [
       'plugin' => 'd7_comment_type',
-    ),
-  );
+    ],
+  ];
 
-  protected $expectedResults = array(
-    array(
+  protected $expectedResults = [
+    [
       'bundle' => 'comment_node_article',
       'node_type' => 'article',
       'default_mode' => '1',
@@ -31,15 +31,15 @@ class CommentTypeTest extends MigrateSqlSourceTestCase {
       'preview' => '0',
       'subject' => '1',
       'label' => 'Article comment',
-    ),
-  );
+    ],
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->databaseContents['node_type'] = array(
-      array(
+    $this->databaseContents['node_type'] = [
+      [
         'type' => 'article',
         'name' => 'Article',
         'base' => 'node_content',
@@ -53,10 +53,10 @@ protected function setUp() {
         'locked' => '0',
         'disabled' => '0',
         'orig_type' => 'article',
-      ),
-    );
-    $this->databaseContents['field_config_instance'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['field_config_instance'] = [
+      [
         'id' => '14',
         'field_id' => '1',
         'field_name' => 'comment_body',
@@ -64,34 +64,34 @@ protected function setUp() {
         'bundle' => 'comment_node_article',
         'data' => 'a:0:{}',
         'deleted' => '0',
-      ),
-    );
-    $this->databaseContents['variable'] = array(
-      array(
+      ],
+    ];
+    $this->databaseContents['variable'] = [
+      [
         'name' => 'comment_default_mode_article',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_per_page_article',
         'value' => serialize(50),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_anonymous_article',
         'value' => serialize(0),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_form_location_article',
         'value' => serialize(1),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_preview_article',
         'value' => serialize(0),
-      ),
-      array(
+      ],
+      [
         'name' => 'comment_subject_article',
         'value' => serialize(1),
-      ),
-    );
+      ],
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/config/config.module b/core/modules/config/config.module
index 874caac..b280fe8 100644
--- a/core/modules/config/config.module
+++ b/core/modules/config/config.module
@@ -15,19 +15,19 @@ function config_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.config':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Configuration Manager module provides a user interface for importing and exporting configuration changes between installations of your website in different environments. Configuration is stored in YAML format. For more information, see the <a href=":url">online documentation for the Configuration Manager module</a>.', array(':url' => 'https://www.drupal.org/documentation/administer/config')) . '</p>';
+      $output .= '<p>' . t('The Configuration Manager module provides a user interface for importing and exporting configuration changes between installations of your website in different environments. Configuration is stored in YAML format. For more information, see the <a href=":url">online documentation for the Configuration Manager module</a>.', [':url' => 'https://www.drupal.org/documentation/administer/config']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Exporting the full configuration') . '</dt>';
-      $output .= '<dd>' . t('You can create and download an archive consisting of all your site\'s configuration exported as <em>*.yml</em> files on the <a href=":url">Export</a> page.', array(':url' => \Drupal::url('config.export_full'))) . '</dd>';
+      $output .= '<dd>' . t('You can create and download an archive consisting of all your site\'s configuration exported as <em>*.yml</em> files on the <a href=":url">Export</a> page.', [':url' => \Drupal::url('config.export_full')]) . '</dd>';
       $output .= '<dt>' . t('Importing a full configuration') . '</dt>';
-      $output .= '<dd>' . t('You can upload a full site configuration from an archive file on the <a href=":url">Import</a> page. When importing data from a different environment, the site and import files must have matching configuration values for UUID in the <em>system.site</em> configuration item. That means that your other environments should initially be set up as clones of the target site. Migrations are not supported.', array(':url' => \Drupal::url('config.import_full'))) . '</dd>';
+      $output .= '<dd>' . t('You can upload a full site configuration from an archive file on the <a href=":url">Import</a> page. When importing data from a different environment, the site and import files must have matching configuration values for UUID in the <em>system.site</em> configuration item. That means that your other environments should initially be set up as clones of the target site. Migrations are not supported.', [':url' => \Drupal::url('config.import_full')]) . '</dd>';
       $output .= '<dt>' . t('Synchronizing configuration') . '</dt>';
-      $output .= '<dd>' . t('You can review differences between the active configuration and an imported configuration archive on the <a href=":synchronize">Synchronize</a> page to ensure that the changes are as expected, before finalizing the import. The Synchronize page also shows configuration items that would be added or removed.', array(':synchronize' => \Drupal::url('config.sync'))) . '</dd>';
+      $output .= '<dd>' . t('You can review differences between the active configuration and an imported configuration archive on the <a href=":synchronize">Synchronize</a> page to ensure that the changes are as expected, before finalizing the import. The Synchronize page also shows configuration items that would be added or removed.', [':synchronize' => \Drupal::url('config.sync')]) . '</dd>';
       $output .= '<dt>' . t('Exporting a single configuration item') . '</dt>';
-      $output .= '<dd>' . t('You can export a single configuration item by selecting a <em>Configuration type</em> and <em>Configuration name</em> on the <a href=":single-export">Single export</a> page. The configuration and its corresponding <em>*.yml file name</em> are then displayed on the page for you to copy.', array(':single-export' => \Drupal::url('config.export_single'))) . '</dd>';
+      $output .= '<dd>' . t('You can export a single configuration item by selecting a <em>Configuration type</em> and <em>Configuration name</em> on the <a href=":single-export">Single export</a> page. The configuration and its corresponding <em>*.yml file name</em> are then displayed on the page for you to copy.', [':single-export' => \Drupal::url('config.export_single')]) . '</dd>';
       $output .= '<dt>' . t('Importing a single configuration item') . '</dt>';
-      $output .= '<dd>' . t('You can import a single configuration item by pasting it in YAML format into the form on the <a href=":single-import">Single import</a> page.', array(':single-import' => \Drupal::url('config.import_single'))) . '</dd>';
+      $output .= '<dd>' . t('You can import a single configuration item by pasting it in YAML format into the form on the <a href=":single-import">Single import</a> page.', [':single-import' => \Drupal::url('config.import_single')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -72,9 +72,9 @@ function config_file_download($uri) {
       $hostname = str_replace('.', '-', $request->getHttpHost());
       $filename = 'config' . '-' . $hostname . '-' . $date_string . '.tar.gz';
       $disposition = 'attachment; filename="' . $filename . '"';
-      return array(
+      return [
         'Content-disposition' => $disposition,
-      );
+      ];
     }
     return -1;
   }
diff --git a/core/modules/config/src/ConfigSubscriber.php b/core/modules/config/src/ConfigSubscriber.php
index 9b6c842..aebc86e 100644
--- a/core/modules/config/src/ConfigSubscriber.php
+++ b/core/modules/config/src/ConfigSubscriber.php
@@ -30,7 +30,7 @@ public function onConfigImporterValidate(ConfigImporterEvent $event) {
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[ConfigEvents::IMPORT_VALIDATE][] = array('onConfigImporterValidate', 20);
+    $events[ConfigEvents::IMPORT_VALIDATE][] = ['onConfigImporterValidate', 20];
     return $events;
   }
 
diff --git a/core/modules/config/src/Controller/ConfigController.php b/core/modules/config/src/Controller/ConfigController.php
index 8b9dc25..bf47f72 100644
--- a/core/modules/config/src/Controller/ConfigController.php
+++ b/core/modules/config/src/Controller/ConfigController.php
@@ -103,7 +103,7 @@ public function downloadExport() {
       }
     }
 
-    $request = new Request(array('file' => 'config.tar.gz'));
+    $request = new Request(['file' => 'config.tar.gz']);
     return $this->fileDownloadController->download($request, 'temporary');
   }
 
@@ -129,34 +129,34 @@ public function diff($source_name, $target_name = NULL, $collection = NULL) {
     $diff = $this->configManager->diff($this->targetStorage, $this->sourceStorage, $source_name, $target_name, $collection);
     $this->diffFormatter->show_header = FALSE;
 
-    $build = array();
+    $build = [];
 
-    $build['#title'] = t('View changes of @config_file', array('@config_file' => $source_name));
+    $build['#title'] = t('View changes of @config_file', ['@config_file' => $source_name]);
     // Add the CSS for the inline diff.
     $build['#attached']['library'][] = 'system/diff';
 
-    $build['diff'] = array(
+    $build['diff'] = [
       '#type' => 'table',
-      '#attributes' => array(
-        'class' => array('diff'),
-      ),
-      '#header' => array(
-        array('data' => t('Active'), 'colspan' => '2'),
-        array('data' => t('Staged'), 'colspan' => '2'),
-      ),
+      '#attributes' => [
+        'class' => ['diff'],
+      ],
+      '#header' => [
+        ['data' => t('Active'), 'colspan' => '2'],
+        ['data' => t('Staged'), 'colspan' => '2'],
+      ],
       '#rows' => $this->diffFormatter->format($diff),
-    );
+    ];
 
-    $build['back'] = array(
+    $build['back'] = [
       '#type' => 'link',
-      '#attributes' => array(
-        'class' => array(
+      '#attributes' => [
+        'class' => [
           'dialog-cancel',
-        ),
-      ),
+        ],
+      ],
       '#title' => "Back to 'Synchronize configuration' page.",
       '#url' => Url::fromRoute('config.sync'),
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/config/src/Form/ConfigExportForm.php b/core/modules/config/src/Form/ConfigExportForm.php
index 0da43ff..e822f7f 100644
--- a/core/modules/config/src/Form/ConfigExportForm.php
+++ b/core/modules/config/src/Form/ConfigExportForm.php
@@ -21,10 +21,10 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Export'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/config/src/Form/ConfigImportForm.php b/core/modules/config/src/Form/ConfigImportForm.php
index 1d651d8..0c3def8 100644
--- a/core/modules/config/src/Form/ConfigImportForm.php
+++ b/core/modules/config/src/Form/ConfigImportForm.php
@@ -55,17 +55,17 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     if (!$directory_is_writable) {
       drupal_set_message($this->t('The directory %directory is not writable.', ['%directory' => $directory]), 'error');
     }
-    $form['import_tarball'] = array(
+    $form['import_tarball'] = [
       '#type' => 'file',
       '#title' => $this->t('Configuration archive'),
-      '#description' => $this->t('Allowed types: @extensions.', array('@extensions' => 'tar.gz tgz tar.bz2')),
-    );
+      '#description' => $this->t('Allowed types: @extensions.', ['@extensions' => 'tar.gz tgz tar.bz2']),
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Upload'),
       '#disabled' => !$directory_is_writable,
-    );
+    ];
     return $form;
   }
 
@@ -93,7 +93,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $this->configStorage->deleteAll();
       try {
         $archiver = new ArchiveTar($path, 'gz');
-        $files = array();
+        $files = [];
         foreach ($archiver->listContent() as $file) {
           $files[] = $file['filename'];
         }
@@ -102,7 +102,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         $form_state->setRedirect('config.sync');
       }
       catch (\Exception $e) {
-        drupal_set_message($this->t('Could not extract the contents of the tar file. The error message is <em>@message</em>', array('@message' => $e->getMessage())), 'error');
+        drupal_set_message($this->t('Could not extract the contents of the tar file. The error message is <em>@message</em>', ['@message' => $e->getMessage()]), 'error');
       }
       drupal_unlink($path);
     }
diff --git a/core/modules/config/src/Form/ConfigSingleExportForm.php b/core/modules/config/src/Form/ConfigSingleExportForm.php
index 86f1047..8710655 100644
--- a/core/modules/config/src/Form/ConfigSingleExportForm.php
+++ b/core/modules/config/src/Form/ConfigSingleExportForm.php
@@ -37,7 +37,7 @@ class ConfigSingleExportForm extends FormBase {
    *
    * @var \Drupal\Core\Entity\EntityTypeInterface[]
    */
-  protected $definitions = array();
+  protected $definitions = [];
 
   /**
    * Constructs a new ConfigSingleImportForm.
@@ -83,40 +83,40 @@ public function buildForm(array $form, FormStateInterface $form_state, $config_t
     }, $this->definitions);
     // Sort the entity types by label, then add the simple config to the top.
     uasort($entity_types, 'strnatcasecmp');
-    $config_types = array(
+    $config_types = [
       'system.simple' => $this->t('Simple configuration'),
-    ) + $entity_types;
-    $form['config_type'] = array(
+    ] + $entity_types;
+    $form['config_type'] = [
       '#title' => $this->t('Configuration type'),
       '#type' => 'select',
       '#options' => $config_types,
       '#default_value' => $config_type,
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::updateConfigurationType',
         'wrapper' => 'edit-config-type-wrapper',
-      ),
-    );
+      ],
+    ];
     $default_type = $form_state->getValue('config_type', $config_type);
-    $form['config_name'] = array(
+    $form['config_name'] = [
       '#title' => $this->t('Configuration name'),
       '#type' => 'select',
       '#options' => $this->findConfiguration($default_type),
       '#default_value' => $config_name,
       '#prefix' => '<div id="edit-config-type-wrapper">',
       '#suffix' => '</div>',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::updateExport',
         'wrapper' => 'edit-export-wrapper',
-      ),
-    );
+      ],
+    ];
 
-    $form['export'] = array(
+    $form['export'] = [
       '#title' => $this->t('Here is your configuration:'),
       '#type' => 'textarea',
       '#rows' => 24,
       '#prefix' => '<div id="edit-export-wrapper">',
       '#suffix' => '</div>',
-    );
+    ];
     if ($config_type && $config_name) {
       $fake_form_state = (new FormState())->setValues([
         'config_type' => $config_type,
@@ -150,7 +150,7 @@ public function updateExport($form, FormStateInterface $form_state) {
     }
     // Read the raw data for this config name, encode it, and display it.
     $form['export']['#value'] = Yaml::encode($this->configStorage->read($name));
-    $form['export']['#description'] = $this->t('Filename: %name', array('%name' => $name . '.yml'));
+    $form['export']['#description'] = $this->t('Filename: %name', ['%name' => $name . '.yml']);
     return $form['export'];
   }
 
@@ -158,9 +158,9 @@ public function updateExport($form, FormStateInterface $form_state) {
    * Handles switching the configuration type selector.
    */
   protected function findConfiguration($config_type) {
-    $names = array(
+    $names = [
       '' => $this->t('- Select -'),
-    );
+    ];
     // For a given entity type, load all entities.
     if ($config_type && $config_type !== 'system.simple') {
       $entity_storage = $this->entityManager->getStorage($config_type);
diff --git a/core/modules/config/src/Form/ConfigSingleImportForm.php b/core/modules/config/src/Form/ConfigSingleImportForm.php
index e217957..fcb3883 100644
--- a/core/modules/config/src/Form/ConfigSingleImportForm.php
+++ b/core/modules/config/src/Form/ConfigSingleImportForm.php
@@ -111,7 +111,7 @@ class ConfigSingleImportForm extends ConfirmFormBase {
    *
    * @var array
    */
-  protected $data = array();
+  protected $data = [];
 
   /**
    * Constructs a new ConfigSingleImportForm.
@@ -198,10 +198,10 @@ public function getQuestion() {
       $type = $definition->getLowercaseLabel();
     }
 
-    $args = array(
+    $args = [
       '%name' => $name,
       '@type' => strtolower($type),
-    );
+    ];
     if ($this->configExists) {
       $question = $this->t('Are you sure you want to update the %name @type?', $args);
     }
@@ -220,7 +220,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       return parent::buildForm($form, $form_state);
     }
 
-    $entity_types = array();
+    $entity_types = [];
     foreach ($this->entityManager->getDefinitions() as $entity_type => $definition) {
       if ($definition->entityClassImplements(ConfigEntityInterface::class)) {
         $entity_types[$entity_type] = $definition->getLabel();
@@ -228,49 +228,49 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
     // Sort the entity types by label, then add the simple config to the top.
     uasort($entity_types, 'strnatcasecmp');
-    $config_types = array(
+    $config_types = [
       'system.simple' => $this->t('Simple configuration'),
-    ) + $entity_types;
-    $form['config_type'] = array(
+    ] + $entity_types;
+    $form['config_type'] = [
       '#title' => $this->t('Configuration type'),
       '#type' => 'select',
       '#options' => $config_types,
       '#required' => TRUE,
-    );
-    $form['config_name'] = array(
+    ];
+    $form['config_name'] = [
       '#title' => $this->t('Configuration name'),
       '#description' => $this->t('Enter the name of the configuration file without the <em>.yml</em> extension. (e.g. <em>system.site</em>)'),
       '#type' => 'textfield',
-      '#states' => array(
-        'required' => array(
-          ':input[name="config_type"]' => array('value' => 'system.simple'),
-        ),
-        'visible' => array(
-          ':input[name="config_type"]' => array('value' => 'system.simple'),
-        ),
-      ),
-    );
-    $form['import'] = array(
+      '#states' => [
+        'required' => [
+          ':input[name="config_type"]' => ['value' => 'system.simple'],
+        ],
+        'visible' => [
+          ':input[name="config_type"]' => ['value' => 'system.simple'],
+        ],
+      ],
+    ];
+    $form['import'] = [
       '#title' => $this->t('Paste your configuration here'),
       '#type' => 'textarea',
       '#rows' => 24,
       '#required' => TRUE,
-    );
-    $form['advanced'] = array(
+    ];
+    $form['advanced'] = [
       '#type' => 'details',
       '#title' => $this->t('Advanced'),
-    );
-    $form['advanced']['custom_entity_id'] = array(
+    ];
+    $form['advanced']['custom_entity_id'] = [
       '#title' => $this->t('Custom Entity ID'),
       '#type' => 'textfield',
       '#description' => $this->t('Specify a custom entity ID. This will override the entity ID in the configuration above.'),
-    );
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Import'),
       '#button_type' => 'primary',
-    );
+    ];
     return $form;
   }
 
@@ -305,7 +305,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       $entity_storage = $this->entityManager->getStorage($form_state->getValue('config_type'));
       // If an entity ID was not specified, set an error.
       if (!isset($data[$id_key])) {
-        $form_state->setErrorByName('import', $this->t('Missing ID key "@id_key" for this @entity_type import.', array('@id_key' => $id_key, '@entity_type' => $definition->getLabel())));
+        $form_state->setErrorByName('import', $this->t('Missing ID key "@id_key" for this @entity_type import.', ['@id_key' => $id_key, '@entity_type' => $definition->getLabel()]));
         return;
       }
 
@@ -323,7 +323,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
         }
       }
       // If there is no entity with a matching ID, check for a UUID match.
-      elseif (isset($data['uuid']) && $entity_storage->loadByProperties(array('uuid' => $data['uuid']))) {
+      elseif (isset($data['uuid']) && $entity_storage->loadByProperties(['uuid' => $data['uuid']])) {
         $form_state->setErrorByName('import', $this->t('An entity with this UUID already exists but the machine name does not match.'));
       }
     }
diff --git a/core/modules/config/src/Form/ConfigSync.php b/core/modules/config/src/Form/ConfigSync.php
index 51cded2..fe1b2e4 100644
--- a/core/modules/config/src/Form/ConfigSync.php
+++ b/core/modules/config/src/Form/ConfigSync.php
@@ -171,20 +171,20 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Import all'),
-    );
+    ];
     $source_list = $this->syncStorage->listAll();
     $storage_comparer = new StorageComparer($this->syncStorage, $this->activeStorage, $this->configManager);
     if (empty($source_list) || !$storage_comparer->createChangelist()->hasChanges()) {
-      $form['no_changes'] = array(
+      $form['no_changes'] = [
         '#type' => 'table',
-        '#header' => array($this->t('Name'), $this->t('Operations')),
-        '#rows' => array(),
+        '#header' => [$this->t('Name'), $this->t('Operations')],
+        '#rows' => [],
         '#empty' => $this->t('There are no configuration changes to import.'),
-      );
+      ];
       $form['actions']['#access'] = FALSE;
       return $form;
     }
@@ -198,7 +198,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     if ($this->snapshotStorage->exists('core.extension')) {
       $snapshot_comparer = new StorageComparer($this->activeStorage, $this->snapshotStorage, $this->configManager);
       if (!$form_state->getUserInput() && $snapshot_comparer->createChangelist()->hasChanges()) {
-        $change_list = array();
+        $change_list = [];
         foreach ($snapshot_comparer->getAllCollectionNames() as $collection) {
           foreach ($snapshot_comparer->getChangelist(NULL, $collection) as $config_names) {
             if (empty($config_names)) {
@@ -231,11 +231,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     foreach ($storage_comparer->getAllCollectionNames() as $collection) {
       if ($collection != StorageInterface::DEFAULT_COLLECTION) {
-        $form[$collection]['collection_heading'] = array(
+        $form[$collection]['collection_heading'] = [
           '#type' => 'html_tag',
           '#tag' => 'h2',
-          '#value' => $this->t('@collection configuration collection', array('@collection' => $collection)),
-        );
+          '#value' => $this->t('@collection configuration collection', ['@collection' => $collection]),
+        ];
       }
       foreach ($storage_comparer->getChangelist(NULL, $collection) as $config_change_type => $config_names) {
         if (empty($config_names)) {
@@ -244,10 +244,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
         // @todo A table caption would be more appropriate, but does not have the
         //   visual importance of a heading.
-        $form[$collection][$config_change_type]['heading'] = array(
+        $form[$collection][$config_change_type]['heading'] = [
           '#type' => 'html_tag',
           '#tag' => 'h3',
-        );
+        ];
         switch ($config_change_type) {
           case 'create':
             $form[$collection][$config_change_type]['heading']['#value'] = $this->formatPlural(count($config_names), '@count new', '@count new');
@@ -265,19 +265,19 @@ public function buildForm(array $form, FormStateInterface $form_state) {
             $form[$collection][$config_change_type]['heading']['#value'] = $this->formatPlural(count($config_names), '@count renamed', '@count renamed');
             break;
         }
-        $form[$collection][$config_change_type]['list'] = array(
+        $form[$collection][$config_change_type]['list'] = [
           '#type' => 'table',
-          '#header' => array($this->t('Name'), $this->t('Operations')),
-        );
+          '#header' => [$this->t('Name'), $this->t('Operations')],
+        ];
 
         foreach ($config_names as $config_name) {
           if ($config_change_type == 'rename') {
             $names = $storage_comparer->extractRenameNames($config_name);
-            $route_options = array('source_name' => $names['old_name'], 'target_name' => $names['new_name']);
-            $config_name = $this->t('@source_name to @target_name', array('@source_name' => $names['old_name'], '@target_name' => $names['new_name']));
+            $route_options = ['source_name' => $names['old_name'], 'target_name' => $names['new_name']];
+            $config_name = $this->t('@source_name to @target_name', ['@source_name' => $names['old_name'], '@target_name' => $names['new_name']]);
           }
           else {
-            $route_options = array('source_name' => $config_name);
+            $route_options = ['source_name' => $config_name];
           }
           if ($collection != StorageInterface::DEFAULT_COLLECTION) {
             $route_name = 'config.diff_collection';
@@ -286,26 +286,26 @@ public function buildForm(array $form, FormStateInterface $form_state) {
           else {
             $route_name = 'config.diff';
           }
-          $links['view_diff'] = array(
+          $links['view_diff'] = [
             'title' => $this->t('View differences'),
             'url' => Url::fromRoute($route_name, $route_options),
-            'attributes' => array(
-              'class' => array('use-ajax'),
+            'attributes' => [
+              'class' => ['use-ajax'],
               'data-dialog-type' => 'modal',
-              'data-dialog-options' => json_encode(array(
+              'data-dialog-options' => json_encode([
                 'width' => 700
-              )),
-            ),
-          );
-          $form[$collection][$config_change_type]['list']['#rows'][] = array(
+              ]),
+            ],
+          ];
+          $form[$collection][$config_change_type]['list']['#rows'][] = [
             'name' => $config_name,
-            'operations' => array(
-              'data' => array(
+            'operations' => [
+              'data' => [
                 '#type' => 'operations',
                 '#links' => $links,
-              ),
-            ),
-          );
+              ],
+            ],
+          ];
         }
       }
     }
@@ -333,17 +333,17 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     else {
       try {
         $sync_steps = $config_importer->initialize();
-        $batch = array(
-          'operations' => array(),
-          'finished' => array(get_class($this), 'finishBatch'),
+        $batch = [
+          'operations' => [],
+          'finished' => [get_class($this), 'finishBatch'],
           'title' => t('Synchronizing configuration'),
           'init_message' => t('Starting configuration synchronization.'),
           'progress_message' => t('Completed step @current of @total.'),
           'error_message' => t('Configuration synchronization has encountered an error.'),
           'file' => __DIR__ . '/../../config.admin.inc',
-        );
+        ];
         foreach ($sync_steps as $sync_step) {
-          $batch['operations'][] = array(array(get_class($this), 'processBatch'), array($config_importer, $sync_step));
+          $batch['operations'][] = [[get_class($this), 'processBatch'], [$config_importer, $sync_step]];
         }
 
         batch_set($batch);
@@ -377,7 +377,7 @@ public static function processBatch(ConfigImporter $config_importer, $sync_step,
     $config_importer->doSyncStep($sync_step, $context);
     if ($errors = $config_importer->getErrors()) {
       if (!isset($context['results']['errors'])) {
-        $context['results']['errors'] = array();
+        $context['results']['errors'] = [];
       }
       $context['results']['errors'] += $errors;
     }
@@ -406,7 +406,7 @@ public static function finishBatch($success, $results, $operations) {
       // An error occurred.
       // $operations contains the operations that remained unprocessed.
       $error_operation = reset($operations);
-      $message = \Drupal::translation()->translate('An error occurred while processing %error_operation with arguments: @arguments', array('%error_operation' => $error_operation[0], '@arguments' => print_r($error_operation[1], TRUE)));
+      $message = \Drupal::translation()->translate('An error occurred while processing %error_operation with arguments: @arguments', ['%error_operation' => $error_operation[0], '@arguments' => print_r($error_operation[1], TRUE)]);
       drupal_set_message($message, 'error');
     }
   }
diff --git a/core/modules/config/src/Tests/ConfigEntityFormOverrideTest.php b/core/modules/config/src/Tests/ConfigEntityFormOverrideTest.php
index 92693c4..41419b0 100644
--- a/core/modules/config/src/Tests/ConfigEntityFormOverrideTest.php
+++ b/core/modules/config/src/Tests/ConfigEntityFormOverrideTest.php
@@ -14,7 +14,7 @@ class ConfigEntityFormOverrideTest extends WebTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Tests that overrides do not affect forms or listing screens.
@@ -29,10 +29,10 @@ public function testFormsWithOverrides() {
     $config_test_storage = $this->container->get('entity.manager')->getStorage('config_test');
 
     // Set up an override.
-    $settings['config']['config_test.dynamic.dotted.default']['label'] = (object) array(
+    $settings['config']['config_test.dynamic.dotted.default']['label'] = (object) [
       'value' => $overridden_label,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
     // Test that the overridden label is loaded with the entity.
@@ -50,9 +50,9 @@ public function testFormsWithOverrides() {
     $this->assertNoText($overridden_label);
 
     // Change to a new label and test that the listing now has the edited label.
-    $edit = array(
+    $edit = [
       'label' => $edited_label,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->drupalGet('admin/structure/config_test');
     $this->assertNoText($overridden_label);
diff --git a/core/modules/config/src/Tests/ConfigEntityListTest.php b/core/modules/config/src/Tests/ConfigEntityListTest.php
index 9d31de0..fbc7ad6 100644
--- a/core/modules/config/src/Tests/ConfigEntityListTest.php
+++ b/core/modules/config/src/Tests/ConfigEntityListTest.php
@@ -50,71 +50,71 @@ function testList() {
     $this->assertTrue($entity instanceof ConfigTest, '"Default" ConfigTest entity is an instance of ConfigTest.');
 
     // Test getOperations() method.
-    $expected_operations = array(
-      'edit' => array (
+    $expected_operations = [
+      'edit' =>  [
         'title' => t('Edit'),
         'weight' => 10,
         'url' => $entity->urlInfo(),
-      ),
-      'disable' => array(
+      ],
+      'disable' => [
         'title' => t('Disable'),
         'weight' => 40,
         'url' => $entity->urlInfo('disable'),
-      ),
-      'delete' => array (
+      ],
+      'delete' =>  [
         'title' => t('Delete'),
         'weight' => 100,
         'url' => $entity->urlInfo('delete-form'),
-      ),
-    );
+      ],
+    ];
 
     $actual_operations = $controller->getOperations($entity);
     // Sort the operations to normalize link order.
-    uasort($actual_operations, array('Drupal\Component\Utility\SortArray', 'sortByWeightElement'));
+    uasort($actual_operations, ['Drupal\Component\Utility\SortArray', 'sortByWeightElement']);
     $this->assertEqual($expected_operations, $actual_operations, 'The operations are identical.');
 
     // Test buildHeader() method.
-    $expected_items = array(
+    $expected_items = [
       'label' => 'Label',
       'id' => 'Machine name',
       'operations' => 'Operations',
-    );
+    ];
     $actual_items = $controller->buildHeader();
     $this->assertEqual($expected_items, $actual_items, 'Return value from buildHeader matches expected.');
 
     // Test buildRow() method.
     $build_operations = $controller->buildOperations($entity);
-    $expected_items = array(
+    $expected_items = [
       'label' => 'Default',
       'id' => 'dotted.default',
-      'operations' => array(
+      'operations' => [
         'data' => $build_operations,
-      ),
-    );
+      ],
+    ];
     $actual_items = $controller->buildRow($entity);
     $this->assertEqual($expected_items, $actual_items, 'Return value from buildRow matches expected.');
     // Test sorting.
     $storage = $controller->getStorage();
-    $entity = $storage->create(array(
+    $entity = $storage->create([
       'id' => 'alpha',
       'label' => 'Alpha',
       'weight' => 1,
-    ));
+    ]);
     $entity->save();
-    $entity = $storage->create(array(
+    $entity = $storage->create([
       'id' => 'omega',
       'label' => 'Omega',
       'weight' => 1,
-    ));
+    ]);
     $entity->save();
-    $entity = $storage->create(array(
+    $entity = $storage->create([
       'id' => 'beta',
       'label' => 'Beta',
       'weight' => 0,
-    ));
+    ]);
     $entity->save();
     $list = $controller->load();
-    $this->assertIdentical(array_keys($list), array('beta', 'dotted.default', 'alpha', 'omega'));
+    $this->assertIdentical(array_keys($list), ['beta', 'dotted.default', 'alpha', 'omega']);
 
     // Test that config entities that do not support status, do not have
     // enable/disable operations.
@@ -125,22 +125,22 @@ function testList() {
     $entity = $list['default'];
 
     // Test getOperations() method.
-    $expected_operations = array(
-      'edit' => array(
+    $expected_operations = [
+      'edit' => [
         'title' => t('Edit'),
         'weight' => 10,
         'url' => $entity->urlInfo(),
-      ),
-      'delete' => array(
+      ],
+      'delete' => [
         'title' => t('Delete'),
         'weight' => 100,
         'url' => $entity->urlInfo('delete-form'),
-      ),
-    );
+      ],
+    ];
 
     $actual_operations = $controller->getOperations($entity);
     // Sort the operations to normalize link order.
-    uasort($actual_operations, array('Drupal\Component\Utility\SortArray', 'sortByWeightElement'));
+    uasort($actual_operations, ['Drupal\Component\Utility\SortArray', 'sortByWeightElement']);
     $this->assertEqual($expected_operations, $actual_operations, 'The operations are identical.');
   }
 
@@ -149,7 +149,7 @@ function testList() {
    */
   function testListUI() {
     // Log in as an administrative user to access the full menu trail.
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer site configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer site configuration']));
 
     // Get the list callback page.
     $this->drupalGet('admin/structure/config_test');
@@ -166,7 +166,7 @@ function testListUI() {
     $this->assertEqual(count($elements), 3, 'Correct number of table header cells found.');
 
     // Test the contents of each th cell.
-    $expected_items = array('Label', 'Machine name', 'Operations');
+    $expected_items = ['Label', 'Machine name', 'Operations'];
     foreach ($elements as $key => $element) {
       $this->assertIdentical((string) $element[0], $expected_items[$key]);
     }
@@ -186,11 +186,11 @@ function testListUI() {
     $this->assertLink('Add test configuration');
     $this->clickLink('Add test configuration');
     $this->assertResponse(200);
-    $edit = array(
+    $edit = [
       'label' => 'Antelope',
       'id' => 'antelope',
       'weight' => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Ensure that the entity's sort method was called.
@@ -207,7 +207,7 @@ function testListUI() {
     $this->clickLink('Edit', 1);
     $this->assertResponse(200);
     $this->assertTitle('Edit Antelope | Drupal');
-    $edit = array('label' => 'Albatross', 'id' => 'albatross');
+    $edit = ['label' => 'Albatross', 'id' => 'albatross'];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Confirm that the user is returned to the listing, and verify that the
@@ -221,7 +221,7 @@ function testListUI() {
     $this->clickLink('Delete', 1);
     $this->assertResponse(200);
     $this->assertTitle('Are you sure you want to delete the test configuration Albatross? | Drupal');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
 
     // Verify that the text of the label and machine name does not appear in
     // the list (though it may appear elsewhere on the page).
@@ -232,7 +232,7 @@ function testListUI() {
     $this->clickLink('Delete');
     $this->assertResponse(200);
     $this->assertTitle('Are you sure you want to delete the test configuration Default? | Drupal');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
 
     // Verify that the text of the label and machine name does not appear in
     // the list (though it may appear elsewhere on the page).
@@ -253,12 +253,12 @@ public function testPager() {
 
     // Create 51 test entities.
     for ($i = 1; $i < 52; $i++) {
-      $storage->create(array(
+      $storage->create([
         'id' => str_pad($i, 2, '0', STR_PAD_LEFT),
         'label' => 'Test config entity ' . $i,
         'weight' => $i,
         'protected_property' => $i,
-      ))->save();
+      ])->save();
     }
 
     // Load the listing page.
diff --git a/core/modules/config/src/Tests/ConfigEntityTest.php b/core/modules/config/src/Tests/ConfigEntityTest.php
index a8a8f0f..77b35cc 100644
--- a/core/modules/config/src/Tests/ConfigEntityTest.php
+++ b/core/modules/config/src/Tests/ConfigEntityTest.php
@@ -27,7 +27,7 @@ class ConfigEntityTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Tests CRUD operations.
@@ -76,9 +76,9 @@ function testCRUD() {
     }
 
     // Verify that an entity with an empty ID string is considered empty, too.
-    $empty_id = entity_create('config_test', array(
+    $empty_id = entity_create('config_test', [
       'id' => '',
-    ));
+    ]);
     $this->assertIdentical($empty_id->isNew(), TRUE);
     try {
       $empty_id->save();
@@ -89,11 +89,11 @@ function testCRUD() {
     }
 
     // Verify properties on a newly created entity.
-    $config_test = entity_create('config_test', $expected = array(
+    $config_test = entity_create('config_test', $expected = [
       'id' => $this->randomMachineName(),
       'label' => $this->randomString(),
       'style' => $this->randomMachineName(),
-    ));
+    ]);
     $this->assertTrue($config_test->uuid());
     $this->assertNotEqual($config_test->uuid(), $empty->uuid());
     $this->assertIdentical($config_test->label, $expected['label']);
@@ -141,13 +141,13 @@ function testCRUD() {
     // maximum allowed length, but not longer.
 
     // Test with a short ID.
-    $id_length_config_test = entity_create('config_test', array(
+    $id_length_config_test = entity_create('config_test', [
       'id' => $this->randomMachineName(8),
-    ));
+    ]);
     try {
       $id_length_config_test->save();
-      $this->pass(SafeMarkup::format("config_test entity with ID length @length was saved.", array(
-        '@length' => strlen($id_length_config_test->id()))
+      $this->pass(SafeMarkup::format("config_test entity with ID length @length was saved.", [
+        '@length' => strlen($id_length_config_test->id())]
       ));
     }
     catch (ConfigEntityIdLengthException $e) {
@@ -155,42 +155,42 @@ function testCRUD() {
     }
 
     // Test with an ID of the maximum allowed length.
-    $id_length_config_test = entity_create('config_test', array(
+    $id_length_config_test = entity_create('config_test', [
       'id' => $this->randomMachineName(static::MAX_ID_LENGTH),
-    ));
+    ]);
     try {
       $id_length_config_test->save();
-      $this->pass(SafeMarkup::format("config_test entity with ID length @length was saved.", array(
+      $this->pass(SafeMarkup::format("config_test entity with ID length @length was saved.", [
         '@length' => strlen($id_length_config_test->id()),
-      )));
+      ]));
     }
     catch (ConfigEntityIdLengthException $e) {
       $this->fail($e->getMessage());
     }
 
     // Test with an ID exceeding the maximum allowed length.
-    $id_length_config_test = entity_create('config_test', array(
+    $id_length_config_test = entity_create('config_test', [
       'id' => $this->randomMachineName(static::MAX_ID_LENGTH + 1),
-    ));
+    ]);
     try {
       $status = $id_length_config_test->save();
-      $this->fail(SafeMarkup::format("config_test entity with ID length @length exceeding the maximum allowed length of @max saved successfully", array(
+      $this->fail(SafeMarkup::format("config_test entity with ID length @length exceeding the maximum allowed length of @max saved successfully", [
         '@length' => strlen($id_length_config_test->id()),
         '@max' => static::MAX_ID_LENGTH,
-      )));
+      ]));
     }
     catch (ConfigEntityIdLengthException $e) {
-      $this->pass(SafeMarkup::format("config_test entity with ID length @length exceeding the maximum allowed length of @max failed to save", array(
+      $this->pass(SafeMarkup::format("config_test entity with ID length @length exceeding the maximum allowed length of @max failed to save", [
         '@length' => strlen($id_length_config_test->id()),
         '@max' => static::MAX_ID_LENGTH,
-      )));
+      ]));
     }
 
     // Ensure that creating an entity with the same id as an existing one is not
     // possible.
-    $same_id = entity_create('config_test', array(
+    $same_id = entity_create('config_test', [
       'id' => $config_test->id(),
-    ));
+    ]);
     $this->assertIdentical($same_id->isNew(), TRUE);
     try {
       $same_id->save();
@@ -201,7 +201,7 @@ function testCRUD() {
     }
 
     // Verify that renaming the ID returns correct status and properties.
-    $ids = array($expected['id'], 'second_' . $this->randomMachineName(4), 'third_' . $this->randomMachineName(4));
+    $ids = [$expected['id'], 'second_' . $this->randomMachineName(4), 'third_' . $this->randomMachineName(4)];
     for ($i = 1; $i < 3; $i++) {
       $old_id = $ids[$i - 1];
       $new_id = $ids[$i];
@@ -223,7 +223,7 @@ function testCRUD() {
 
     // Test config entity prepopulation.
     \Drupal::state()->set('config_test.prepopulate', TRUE);
-    $config_test = entity_create('config_test', array('foo' => 'bar'));
+    $config_test = entity_create('config_test', ['foo' => 'bar']);
     $this->assertEqual($config_test->get('foo'), 'baz', 'Initial value correctly populated');
   }
 
@@ -237,15 +237,15 @@ function testCRUDUI() {
     $label1 = $this->randomMachineName();
     $label2 = $this->randomMachineName();
     $label3 = $this->randomMachineName();
-    $message_insert = format_string('%label configuration has been created.', array('%label' => $label1));
-    $message_update = format_string('%label configuration has been updated.', array('%label' => $label2));
-    $message_delete = format_string('The test configuration %label has been deleted.', array('%label' => $label2));
+    $message_insert = format_string('%label configuration has been created.', ['%label' => $label1]);
+    $message_update = format_string('%label configuration has been updated.', ['%label' => $label2]);
+    $message_delete = format_string('The test configuration %label has been deleted.', ['%label' => $label2]);
 
     // Create a configuration entity.
-    $edit = array(
+    $edit = [
       'id' => $id,
       'label' => $label1,
-    );
+    ];
     $this->drupalPostForm('admin/structure/config_test/add', $edit, 'Save');
     $this->assertUrl('admin/structure/config_test');
     $this->assertResponse(200);
@@ -254,9 +254,9 @@ function testCRUDUI() {
     $this->assertLinkByHref("admin/structure/config_test/manage/$id");
 
     // Update the configuration entity.
-    $edit = array(
+    $edit = [
       'label' => $label2,
-    );
+    ];
     $this->drupalPostForm("admin/structure/config_test/manage/$id", $edit, 'Save');
     $this->assertUrl('admin/structure/config_test');
     $this->assertResponse(200);
@@ -269,7 +269,7 @@ function testCRUDUI() {
     $this->drupalGet("admin/structure/config_test/manage/$id");
     $this->clickLink(t('Delete'));
     $this->assertUrl("admin/structure/config_test/manage/$id/delete");
-    $this->drupalPostForm(NULL, array(), 'Delete');
+    $this->drupalPostForm(NULL, [], 'Delete');
     $this->assertUrl('admin/structure/config_test');
     $this->assertResponse(200);
     $this->assertNoRaw($message_update);
@@ -278,10 +278,10 @@ function testCRUDUI() {
     $this->assertNoLinkByHref("admin/structure/config_test/manage/$id");
 
     // Re-create a configuration entity.
-    $edit = array(
+    $edit = [
       'id' => $id,
       'label' => $label1,
-    );
+    ];
     $this->drupalPostForm('admin/structure/config_test/add', $edit, 'Save');
     $this->assertUrl('admin/structure/config_test');
     $this->assertResponse(200);
@@ -289,10 +289,10 @@ function testCRUDUI() {
     $this->assertLinkByHref("admin/structure/config_test/manage/$id");
 
     // Rename the configuration entity's ID/machine name.
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName()),
       'label' => $label3,
-    );
+    ];
     $this->drupalPostForm("admin/structure/config_test/manage/$id", $edit, 'Save');
     $this->assertUrl('admin/structure/config_test');
     $this->assertResponse(200);
@@ -304,17 +304,17 @@ function testCRUDUI() {
     $this->assertLinkByHref("admin/structure/config_test/manage/$id");
 
     // Create a configuration entity with '0' machine name.
-    $edit = array(
+    $edit = [
       'id' => '0',
       'label' => '0',
-    );
+    ];
     $this->drupalPostForm('admin/structure/config_test/add', $edit, 'Save');
     $this->assertResponse(200);
-    $message_insert = format_string('%label configuration has been created.', array('%label' => $edit['label']));
+    $message_insert = format_string('%label configuration has been created.', ['%label' => $edit['label']]);
     $this->assertRaw($message_insert);
     $this->assertLinkByHref('admin/structure/config_test/manage/0');
     $this->assertLinkByHref('admin/structure/config_test/manage/0/delete');
-    $this->drupalPostForm('admin/structure/config_test/manage/0/delete', array(), 'Delete');
+    $this->drupalPostForm('admin/structure/config_test/manage/0/delete', [], 'Delete');
     $this->assertFalse(entity_load('config_test', '0'), 'Test entity deleted');
 
     // Create a configuration entity with a property that uses AJAX to show
diff --git a/core/modules/config/src/Tests/ConfigExportImportUITest.php b/core/modules/config/src/Tests/ConfigExportImportUITest.php
index 828d4aa..9ba59a8 100644
--- a/core/modules/config/src/Tests/ConfigExportImportUITest.php
+++ b/core/modules/config/src/Tests/ConfigExportImportUITest.php
@@ -67,7 +67,7 @@ class ConfigExportImportUITest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config', 'node', 'field');
+  public static $modules = ['config', 'node', 'field'];
 
   /**
    * {@inheritdoc}
@@ -103,11 +103,11 @@ public function testExportImport() {
 
     // Create a field.
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
       'type' => 'text',
-    ));
+    ]);
     $this->fieldStorage->save();
     FieldConfig::create([
       'field_storage' => $this->fieldStorage,
@@ -116,9 +116,9 @@ public function testExportImport() {
     // Update the displays so that configuration does not change unexpectedly on
     // import.
     entity_get_form_display('node', $this->contentType->id(), 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'text_textfield',
-      ))
+      ])
       ->save();
     entity_get_display('node', $this->contentType->id(), 'full')
       ->setComponent($this->fieldName)
@@ -134,7 +134,7 @@ public function testExportImport() {
     $this->assertFieldByName("{$this->fieldName}[0][value]", '', 'Widget is displayed');
 
     // Export the configuration.
-    $this->drupalPostForm('admin/config/development/configuration/full/export', array(), 'Export');
+    $this->drupalPostForm('admin/config/development/configuration/full/export', [], 'Export');
     $this->tarball = $this->getRawContent();
 
     $this->config('system.site')
@@ -161,13 +161,13 @@ public function testExportImport() {
     // Import the configuration.
     $filename = 'temporary://' . $this->randomMachineName();
     file_put_contents($filename, $this->tarball);
-    $this->drupalPostForm('admin/config/development/configuration/full/import', array('files[import_tarball]' => $filename), 'Upload');
+    $this->drupalPostForm('admin/config/development/configuration/full/import', ['files[import_tarball]' => $filename], 'Upload');
     // There is no snapshot yet because an import has never run.
     $this->assertNoText(t('Warning message'));
     $this->assertNoText(t('There are no configuration changes to import.'));
     $this->assertText($this->contentType->label());
 
-    $this->drupalPostForm(NULL, array(), 'Import all');
+    $this->drupalPostForm(NULL, [], 'Import all');
     // After importing the snapshot has been updated an there are no warnings.
     $this->assertNoText(t('Warning message'));
     $this->assertText(t('There are no configuration changes to import.'));
@@ -217,25 +217,25 @@ public function testExportImportCollections() {
     /** @var \Drupal\Core\Config\StorageInterface $active_storage */
     $active_storage = \Drupal::service('config.storage');
     $test1_storage = $active_storage->createCollection('collection.test1');
-    $test1_storage->write('config_test.create', array('foo' => 'bar'));
-    $test1_storage->write('config_test.update', array('foo' => 'bar'));
+    $test1_storage->write('config_test.create', ['foo' => 'bar']);
+    $test1_storage->write('config_test.update', ['foo' => 'bar']);
     $test2_storage = $active_storage->createCollection('collection.test2');
-    $test2_storage->write('config_test.another_create', array('foo' => 'bar'));
-    $test2_storage->write('config_test.another_update', array('foo' => 'bar'));
+    $test2_storage->write('config_test.another_create', ['foo' => 'bar']);
+    $test2_storage->write('config_test.another_update', ['foo' => 'bar']);
 
     // Export the configuration.
-    $this->drupalPostForm('admin/config/development/configuration/full/export', array(), 'Export');
+    $this->drupalPostForm('admin/config/development/configuration/full/export', [], 'Export');
     $this->tarball = $this->getRawContent();
     $filename = file_directory_temp() . '/' . $this->randomMachineName();
     file_put_contents($filename, $this->tarball);
 
     // Set up the active storage collections to test import.
     $test1_storage->delete('config_test.create');
-    $test1_storage->write('config_test.update', array('foo' => 'baz'));
-    $test1_storage->write('config_test.delete', array('foo' => 'bar'));
+    $test1_storage->write('config_test.update', ['foo' => 'baz']);
+    $test1_storage->write('config_test.delete', ['foo' => 'bar']);
     $test2_storage->delete('config_test.another_create');
-    $test2_storage->write('config_test.another_update', array('foo' => 'baz'));
-    $test2_storage->write('config_test.another_delete', array('foo' => 'bar'));
+    $test2_storage->write('config_test.another_update', ['foo' => 'baz']);
+    $test2_storage->write('config_test.another_delete', ['foo' => 'bar']);
 
     // Create a snapshot.
     $snapshot_storage = \Drupal::service('config.storage.snapshot');
@@ -244,22 +244,22 @@ public function testExportImportCollections() {
     // Ensure that the snapshot has the expected collection data before import.
     $test1_snapshot = $snapshot_storage->createCollection('collection.test1');
     $data = $test1_snapshot->read('config_test.delete');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.delete in collection.test1 exists in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.delete in collection.test1 exists in the snapshot storage.');
     $data = $test1_snapshot->read('config_test.update');
-    $this->assertEqual($data, array('foo' => 'baz'), 'The config_test.update in collection.test1 exists in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'baz'], 'The config_test.update in collection.test1 exists in the snapshot storage.');
     $this->assertFalse($test1_snapshot->read('config_test.create'), 'The config_test.create in collection.test1 does not exist in the snapshot storage.');
     $test2_snapshot = $snapshot_storage->createCollection('collection.test2');
     $data = $test2_snapshot->read('config_test.another_delete');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.another_delete in collection.test2 exists in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.another_delete in collection.test2 exists in the snapshot storage.');
     $data = $test2_snapshot->read('config_test.another_update');
-    $this->assertEqual($data, array('foo' => 'baz'), 'The config_test.another_update in collection.test2 exists in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'baz'], 'The config_test.another_update in collection.test2 exists in the snapshot storage.');
     $this->assertFalse($test2_snapshot->read('config_test.another_create'), 'The config_test.another_create in collection.test2 does not exist in the snapshot storage.');
 
     // Create the tar that contains the expected content for the collections.
     $tar = new ArchiveTar($filename, 'gz');
     $content_list = $tar->listContent();
     // Convert the list of files into something easy to search.
-    $files = array();
+    $files = [];
     foreach ($content_list as $file) {
       $files[] = $file['filename'];
     }
@@ -270,12 +270,12 @@ public function testExportImportCollections() {
     $this->assertFalse(in_array('collection/test1/config_test.delete.yml', $files), 'Config export does not contain collection/test1/config_test.delete.yml.');
     $this->assertFalse(in_array('collection/test2/config_test.another_delete.yml', $files), 'Config export does not contain collection/test2/config_test.another_delete.yml.');
 
-    $this->drupalPostForm('admin/config/development/configuration/full/import', array('files[import_tarball]' => $filename), 'Upload');
+    $this->drupalPostForm('admin/config/development/configuration/full/import', ['files[import_tarball]' => $filename], 'Upload');
     // Verify that there are configuration differences to import.
     $this->drupalGet('admin/config/development/configuration');
     $this->assertNoText(t('There are no configuration changes to import.'));
-    $this->assertText(t('@collection configuration collection', array('@collection' => 'collection.test1')));
-    $this->assertText(t('@collection configuration collection', array('@collection' => 'collection.test2')));
+    $this->assertText(t('@collection configuration collection', ['@collection' => 'collection.test1']));
+    $this->assertText(t('@collection configuration collection', ['@collection' => 'collection.test2']));
     $this->assertText('config_test.create');
     $this->assertLinkByHref('admin/config/development/configuration/sync/diff_collection/collection.test1/config_test.create');
     $this->assertText('config_test.update');
@@ -289,35 +289,35 @@ public function testExportImportCollections() {
     $this->assertText('config_test.another_delete');
     $this->assertLinkByHref('admin/config/development/configuration/sync/diff_collection/collection.test2/config_test.another_delete');
 
-    $this->drupalPostForm(NULL, array(), 'Import all');
+    $this->drupalPostForm(NULL, [], 'Import all');
     $this->assertText(t('There are no configuration changes to import.'));
 
     // Test data in collections.
     $data = $test1_storage->read('config_test.create');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.create in collection.test1 has been created.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.create in collection.test1 has been created.');
     $data = $test1_storage->read('config_test.update');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.update in collection.test1 has been updated.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.update in collection.test1 has been updated.');
     $this->assertFalse($test1_storage->read('config_test.delete'), 'The config_test.delete in collection.test1 has been deleted.');
 
     $data = $test2_storage->read('config_test.another_create');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.another_create in collection.test2 has been created.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.another_create in collection.test2 has been created.');
     $data = $test2_storage->read('config_test.another_update');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.another_update in collection.test2 has been updated.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.another_update in collection.test2 has been updated.');
     $this->assertFalse($test2_storage->read('config_test.another_delete'), 'The config_test.another_delete in collection.test2 has been deleted.');
 
     // Ensure that the snapshot has been updated with the collection data.
     $snapshot_storage = \Drupal::service('config.storage.snapshot');
     $test1_snapshot = $snapshot_storage->createCollection('collection.test1');
     $data = $test1_snapshot->read('config_test.create');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.create in collection.test1 has been created in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.create in collection.test1 has been created in the snapshot storage.');
     $data = $test1_snapshot->read('config_test.update');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.update in collection.test1 has been updated in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.update in collection.test1 has been updated in the snapshot storage.');
     $this->assertFalse($test1_snapshot->read('config_test.delete'), 'The config_test.delete in collection.test1 does not exist in the snapshot storage.');
     $test2_snapshot = $snapshot_storage->createCollection('collection.test2');
     $data = $test2_snapshot->read('config_test.another_create');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.another_create in collection.test2 has been created in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.another_create in collection.test2 has been created in the snapshot storage.');
     $data = $test2_snapshot->read('config_test.another_update');
-    $this->assertEqual($data, array('foo' => 'bar'), 'The config_test.another_update in collection.test2 has been updated in the snapshot storage.');
+    $this->assertEqual($data, ['foo' => 'bar'], 'The config_test.another_update in collection.test2 has been updated in the snapshot storage.');
     $this->assertFalse($test2_snapshot->read('config_test.another_delete'), 'The config_test.another_delete in collection.test2 does not exist in the snapshot storage.');
   }
 
diff --git a/core/modules/config/src/Tests/ConfigExportUITest.php b/core/modules/config/src/Tests/ConfigExportUITest.php
index d3133d8..839aa26 100644
--- a/core/modules/config/src/Tests/ConfigExportUITest.php
+++ b/core/modules/config/src/Tests/ConfigExportUITest.php
@@ -18,7 +18,7 @@ class ConfigExportUITest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config', 'config_test');
+  public static $modules = ['config', 'config_test'];
 
   /**
    * {@inheritdoc}
@@ -27,13 +27,13 @@ protected function setUp() {
     parent::setUp();
 
     // Set up an override.
-    $settings['config']['system.maintenance']['message'] = (object) array(
+    $settings['config']['system.maintenance']['message'] = (object) [
       'value' => 'Foo',
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
-    $this->drupalLogin($this->drupalCreateUser(array('export configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['export configuration']));
   }
 
   /**
@@ -45,7 +45,7 @@ function testExport() {
     $this->assertFieldById('edit-submit', t('Export'));
 
     // Submit the export form and verify response.
-    $this->drupalPostForm('admin/config/development/configuration/full/export', array(), t('Export'));
+    $this->drupalPostForm('admin/config/development/configuration/full/export', [], t('Export'));
     $this->assertResponse(200, 'User can access the download callback.');
 
     // Test if header contains file name with hostname and timestamp.
@@ -70,7 +70,7 @@ function testExport() {
     // Prepare the list of config files from active storage, see
     // \Drupal\config\Controller\ConfigController::downloadExport().
     $storage_active = $this->container->get('config.storage');
-    $config_files = array();
+    $config_files = [];
     foreach ($storage_active->listAll() as $config_name) {
       $config_files[] = $config_name . '.yml';
     }
@@ -80,7 +80,7 @@ function testExport() {
 
     // Ensure the test configuration override is in effect but was not exported.
     $this->assertIdentical(\Drupal::config('system.maintenance')->get('message'), 'Foo');
-    $archiver->extract(file_directory_temp(), array('system.maintenance.yml'));
+    $archiver->extract(file_directory_temp(), ['system.maintenance.yml']);
     $file_contents = file_get_contents(file_directory_temp() . '/' . 'system.maintenance.yml');
     $exported = Yaml::decode($file_contents);
     $this->assertNotIdentical($exported['message'], 'Foo');
diff --git a/core/modules/config/src/Tests/ConfigFormOverrideTest.php b/core/modules/config/src/Tests/ConfigFormOverrideTest.php
index ffd4428..f721eeb 100644
--- a/core/modules/config/src/Tests/ConfigFormOverrideTest.php
+++ b/core/modules/config/src/Tests/ConfigFormOverrideTest.php
@@ -16,15 +16,15 @@ class ConfigFormOverrideTest extends WebTestBase {
    * Tests that overrides do not affect forms.
    */
   public function testFormsWithOverrides() {
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer site configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer site configuration']));
 
     $overridden_name = 'Site name global conf override';
 
     // Set up an override.
-    $settings['config']['system.site']['name'] = (object) array(
+    $settings['config']['system.site']['name'] = (object) [
       'value' => $overridden_name,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
     // Test that everything on the form is the same, but that the override
@@ -35,9 +35,9 @@ public function testFormsWithOverrides() {
     $this->assertIdentical((string) $elements[0]['value'], 'Drupal');
 
     // Submit the form and ensure the site name is not changed.
-    $edit = array(
+    $edit = [
       'site_name' => 'Custom site name',
-    );
+    ];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
     $this->assertTitle('Basic site settings | ' . $overridden_name);
     $elements = $this->xpath('//input[@name="site_name"]');
diff --git a/core/modules/config/src/Tests/ConfigImportAllTest.php b/core/modules/config/src/Tests/ConfigImportAllTest.php
index baeacb9..459be7a 100644
--- a/core/modules/config/src/Tests/ConfigImportAllTest.php
+++ b/core/modules/config/src/Tests/ConfigImportAllTest.php
@@ -36,7 +36,7 @@ class ConfigImportAllTest extends ModuleTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('synchronize configuration'));
+    $this->webUser = $this->drupalCreateUser(['synchronize configuration']);
     $this->drupalLogin($this->webUser);
   }
 
@@ -124,12 +124,12 @@ public function testInstallUninstall() {
     }
 
     // Import the configuration thereby re-installing all the modules.
-    $this->drupalPostForm('admin/config/development/configuration', array(), t('Import all'));
+    $this->drupalPostForm('admin/config/development/configuration', [], t('Import all'));
     // Modules have been installed that have services.
     $this->rebuildContainer();
 
     // Check that there are no errors.
-    $this->assertIdentical($this->configImporter()->getErrors(), array());
+    $this->assertIdentical($this->configImporter()->getErrors(), []);
 
     // Check that all modules that were uninstalled are now reinstalled.
     $this->assertModules(array_keys($modules_to_uninstall), TRUE);
diff --git a/core/modules/config/src/Tests/ConfigImportInstallProfileTest.php b/core/modules/config/src/Tests/ConfigImportInstallProfileTest.php
index 0c74c7f..eaece36 100644
--- a/core/modules/config/src/Tests/ConfigImportInstallProfileTest.php
+++ b/core/modules/config/src/Tests/ConfigImportInstallProfileTest.php
@@ -23,7 +23,7 @@ class ConfigImportInstallProfileTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config');
+  public static $modules = ['config'];
 
   /**
    * A user with the 'synchronize configuration' permission.
@@ -35,7 +35,7 @@ class ConfigImportInstallProfileTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('synchronize configuration'));
+    $this->webUser = $this->drupalCreateUser(['synchronize configuration']);
     $this->drupalLogin($this->webUser);
     $this->copyConfig($this->container->get('config.storage'), $this->container->get('config.storage.sync'));
   }
@@ -54,7 +54,7 @@ public function testInstallProfileValidation() {
     unset($core['module']['testing_config_import']);
     $sync->write('core.extension', $core);
 
-    $this->drupalPostForm('admin/config/development/configuration', array(), t('Import all'));
+    $this->drupalPostForm('admin/config/development/configuration', [], t('Import all'));
     $this->assertText('The configuration cannot be imported because it failed validation for the following reasons:');
     $this->assertText('Unable to uninstall the Testing config import profile since it is the install profile.');
 
@@ -69,7 +69,7 @@ public function testInstallProfileValidation() {
     $theme = $sync->read('system.theme');
     $theme['default'] = 'classy';
     $sync->write('system.theme', $theme);
-    $this->drupalPostForm('admin/config/development/configuration', array(), t('Import all'));
+    $this->drupalPostForm('admin/config/development/configuration', [], t('Import all'));
     $this->assertText('The configuration was imported successfully.');
     $this->rebuildContainer();
     $this->assertFalse(\Drupal::moduleHandler()->moduleExists('syslog'), 'The syslog module has been uninstalled.');
diff --git a/core/modules/config/src/Tests/ConfigImportUITest.php b/core/modules/config/src/Tests/ConfigImportUITest.php
index afa9b99..1b63c2a 100644
--- a/core/modules/config/src/Tests/ConfigImportUITest.php
+++ b/core/modules/config/src/Tests/ConfigImportUITest.php
@@ -19,7 +19,7 @@ class ConfigImportUITest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config', 'config_test', 'config_import_test', 'text', 'options');
+  public static $modules = ['config', 'config_test', 'config_import_test', 'text', 'options'];
 
   /**
    * A user with the 'synchronize configuration' permission.
@@ -31,7 +31,7 @@ class ConfigImportUITest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('synchronize configuration'));
+    $this->webUser = $this->drupalCreateUser(['synchronize configuration']);
     $this->drupalLogin($this->webUser);
     $this->copyConfig($this->container->get('config.storage'), $this->container->get('config.storage.sync'));
   }
@@ -55,11 +55,11 @@ function testImport() {
     $this->assertIdentical($sync->exists($name), TRUE, $name . ' found.');
 
     // Create new config entity.
-    $original_dynamic_data = array(
+    $original_dynamic_data = [
       'uuid' => '30df59bd-7b03-4cf7-bb35-d42fc49f0651',
       'langcode' => \Drupal::languageManager()->getDefaultLanguage()->getId(),
       'status' => TRUE,
-      'dependencies' => array(),
+      'dependencies' => [],
       'id' => 'new',
       'label' => 'New',
       'weight' => 0,
@@ -67,7 +67,7 @@ function testImport() {
       'size' => '',
       'size_value' => '',
       'protected_property' => '',
-    );
+    ];
     $sync->write($dynamic_name, $original_dynamic_data);
     $this->assertIdentical($sync->exists($dynamic_name), TRUE, $dynamic_name . ' found.');
 
@@ -102,11 +102,11 @@ function testImport() {
     // handled correctly. Options depends on Text so Text should be installed
     // first. Since they were enabled during the test setup the core.extension
     // file in sync will already contain them.
-    \Drupal::service('module_installer')->uninstall(array('text', 'options'));
+    \Drupal::service('module_installer')->uninstall(['text', 'options']);
 
     // Set the state system to record installations and uninstallations.
-    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_installed', array());
-    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_uninstalled', array());
+    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_installed', []);
+    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_uninstalled', []);
 
     // Verify that both appear as ready to import.
     $this->drupalGet('admin/config/development/configuration');
@@ -118,7 +118,7 @@ function testImport() {
     $this->assertFieldById('edit-submit', t('Import all'));
 
     // Import and verify that both do not appear anymore.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertNoRaw('<td>' . $name);
     $this->assertNoRaw('<td>' . $dynamic_name);
     $this->assertNoRaw('<td>core.extension');
@@ -150,9 +150,9 @@ function testImport() {
     $this->assertTrue($theme_info['bartik']->status, 'Bartik theme installed during import.');
 
     // Ensure installations and uninstallation occur as expected.
-    $installed = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_installed', array());
-    $uninstalled = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_uninstalled', array());
-    $expected = array('action', 'ban', 'text', 'options');
+    $installed = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_installed', []);
+    $uninstalled = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_uninstalled', []);
+    $expected = ['action', 'ban', 'text', 'options'];
     $this->assertIdentical($expected, $installed, 'Action, Ban, Text and Options modules installed in the correct order.');
     $this->assertTrue(empty($uninstalled), 'No modules uninstalled during import');
 
@@ -161,8 +161,8 @@ function testImport() {
     // configuration. This verifies that the module's default configuration is
     // used during configuration import and, additionally, that after installing
     // a module, that configuration is not synced twice.
-    $recursion_limit_values = \Drupal::state()->get('ConfigImportUITest.action.settings.recursion_limit', array());
-    $this->assertIdentical($recursion_limit_values, array(50));
+    $recursion_limit_values = \Drupal::state()->get('ConfigImportUITest.action.settings.recursion_limit', []);
+    $this->assertIdentical($recursion_limit_values, [50]);
 
     $core_extension = $this->config('core.extension')->get();
     unset($core_extension['module']['action']);
@@ -180,8 +180,8 @@ function testImport() {
     $sync->write('system.theme', $system_theme);
 
     // Set the state system to record installations and uninstallations.
-    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_installed', array());
-    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_uninstalled', array());
+    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_installed', []);
+    \Drupal::state()->set('ConfigImportUITest.core.extension.modules_uninstalled', []);
 
     // Verify that both appear as ready to import.
     $this->drupalGet('admin/config/development/configuration');
@@ -190,7 +190,7 @@ function testImport() {
     $this->assertRaw('<td>action.settings');
 
     // Import and verify that both do not appear anymore.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertNoRaw('<td>core.extension');
     $this->assertNoRaw('<td>system.theme');
     $this->assertNoRaw('<td>action.settings');
@@ -203,9 +203,9 @@ function testImport() {
     $this->assertFalse(\Drupal::moduleHandler()->moduleExists('text'), 'Text module uninstalled during import.');
 
     // Ensure installations and uninstallation occur as expected.
-    $installed = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_installed', array());
-    $uninstalled = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_uninstalled', array());
-    $expected = array('options', 'text', 'ban', 'action');
+    $installed = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_installed', []);
+    $uninstalled = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_uninstalled', []);
+    $expected = ['options', 'text', 'ban', 'action'];
     $this->assertIdentical($expected, $uninstalled, 'Options, Text, Ban and Action modules uninstalled in the correct order.');
     $this->assertTrue(empty($installed), 'No modules installed during import');
 
@@ -235,7 +235,7 @@ function testImportLock() {
     $this->container->get('lock.persistent')->acquire($config_importer::LOCK_NAME);
 
     // Attempt to import configuration and verify that an error message appears.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertText(t('Another request may be synchronizing configuration already.'));
 
     // Release the lock, just to keep testing sane.
@@ -273,11 +273,11 @@ function testImportDiff() {
     $add_key = 'biff';
     $add_data = '<em>bangpow</em>';
     $change_data = '<p><em>foobar</em></p>';
-    $original_data = array(
+    $original_data = [
       'foo' => '<p>foobar</p>',
       'baz' => '<strong>no change</strong>',
       '404' => '<em>herp</em>',
-    );
+    ];
     // Update active storage to have html in config data.
     $this->config($config_name)->setData($original_data)->save();
 
@@ -290,7 +290,7 @@ function testImportDiff() {
 
     // Load the diff UI and verify that the diff reflects the change.
     $this->drupalGet('admin/config/development/configuration/sync/diff/' . $config_name);
-    $this->assertTitle(format_string('View changes of @config_name | Drupal', array('@config_name' => $config_name)));
+    $this->assertTitle(format_string('View changes of @config_name | Drupal', ['@config_name' => $config_name]));
 
     // The following assertions do not use $this::assertEscaped() because
     // \Drupal\Component\Diff\DiffFormatter adds markup that signifies what has
@@ -307,7 +307,7 @@ function testImportDiff() {
     $this->assertText(Html::escape("404: '<em>herp</em>'"));
 
     // Verify diff colors are displayed.
-    $result = $this->xpath('//table[contains(@class, :class)]', array(':class' => 'diff'));
+    $result = $this->xpath('//table[contains(@class, :class)]', [':class' => 'diff']);
     $this->assertEqual(count($result), 1, "Diff UI is displaying colors.");
 
     // Reset data back to original, and remove a key
@@ -351,7 +351,7 @@ public function testImportValidation() {
 
     $this->drupalGet('admin/config/development/configuration');
     $this->assertNoText(t('There are no configuration changes to import.'));
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
 
     // Verify that the validation messages appear.
     $this->assertText('The configuration cannot be imported because it failed validation for the following reasons:');
@@ -373,7 +373,7 @@ public function testConfigUninstallConfigException() {
     $this->assertText('core.extension');
 
     // Import and verify that both do not appear anymore.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertText('Can not uninstall the Configuration module as part of a configuration synchronization through the user interface.');
   }
 
@@ -394,11 +394,11 @@ function testImportErrorLog() {
     $sync = $this->container->get('config.storage.sync');
     $uuid = $this->container->get('uuid');
 
-    $values_primary = array(
+    $values_primary = [
       'uuid' => $uuid->generate(),
       'langcode' => 'en',
       'status' => TRUE,
-      'dependencies' => array(),
+      'dependencies' => [],
       'id' => 'primary',
       'label' => 'Primary',
       'weight' => 0,
@@ -406,16 +406,16 @@ function testImportErrorLog() {
       'size' => NULL,
       'size_value' => NULL,
       'protected_property' => NULL,
-    );
+    ];
     $sync->write($name_primary, $values_primary);
-    $values_secondary = array(
+    $values_secondary = [
       'uuid' => $uuid->generate(),
       'langcode' => 'en',
       'status' => TRUE,
       // Add a dependency on primary, to ensure that is synced first.
-      'dependencies' => array(
-        'config' => array($name_primary),
-      ),
+      'dependencies' => [
+        'config' => [$name_primary],
+      ],
       'id' => 'secondary',
       'label' => 'Secondary Sync',
       'weight' => 0,
@@ -423,15 +423,15 @@ function testImportErrorLog() {
       'size' => NULL,
       'size_value' => NULL,
       'protected_property' => NULL,
-    );
+    ];
     $sync->write($name_secondary, $values_secondary);
     // Verify that there are configuration differences to import.
     $this->drupalGet('admin/config/development/configuration');
     $this->assertNoText(t('There are no configuration changes to import.'));
 
     // Attempt to import configuration and verify that an error message appears.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
-    $this->assertText(SafeMarkup::format('Deleted and replaced configuration entity "@name"', array('@name' => $name_secondary)));
+    $this->drupalPostForm(NULL, [], t('Import all'));
+    $this->assertText(SafeMarkup::format('Deleted and replaced configuration entity "@name"', ['@name' => $name_secondary]));
     $this->assertText(t('The configuration was imported with errors.'));
     $this->assertNoText(t('The configuration was imported successfully.'));
     $this->assertText(t('There are no configuration changes to import.'));
@@ -443,42 +443,42 @@ function testImportErrorLog() {
    * @see \Drupal\Core\Entity\Event\BundleConfigImportValidate
    */
   public function testEntityBundleDelete() {
-    \Drupal::service('module_installer')->install(array('node'));
+    \Drupal::service('module_installer')->install(['node']);
     $this->copyConfig($this->container->get('config.storage'), $this->container->get('config.storage.sync'));
 
     $node_type = $this->drupalCreateContentType();
-    $node = $this->drupalCreateNode(array('type' => $node_type->id()));
+    $node = $this->drupalCreateNode(['type' => $node_type->id()]);
     $this->drupalGet('admin/config/development/configuration');
     // The node type, body field and entity displays will be scheduled for
     // removal.
-    $this->assertText(format_string('node.type.@type', array('@type' => $node_type->id())));
-    $this->assertText(format_string('field.field.node.@type.body', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_view_display.node.@type.teaser', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_view_display.node.@type.default', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_form_display.node.@type.default', array('@type' => $node_type->id())));
+    $this->assertText(format_string('node.type.@type', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('field.field.node.@type.body', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_view_display.node.@type.teaser', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_view_display.node.@type.default', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_form_display.node.@type.default', ['@type' => $node_type->id()]));
 
     // Attempt to import configuration and verify that an error message appears
     // and the node type, body field and entity displays are still scheduled for
     // removal.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
-    $validation_message = t('Entities exist of type %entity_type and %bundle_label %bundle. These entities need to be deleted before importing.', array('%entity_type' => $node->getEntityType()->getLabel(), '%bundle_label' => $node->getEntityType()->getBundleLabel(), '%bundle' => $node_type->label()));
+    $this->drupalPostForm(NULL, [], t('Import all'));
+    $validation_message = t('Entities exist of type %entity_type and %bundle_label %bundle. These entities need to be deleted before importing.', ['%entity_type' => $node->getEntityType()->getLabel(), '%bundle_label' => $node->getEntityType()->getBundleLabel(), '%bundle' => $node_type->label()]);
     $this->assertRaw($validation_message);
-    $this->assertText(format_string('node.type.@type', array('@type' => $node_type->id())));
-    $this->assertText(format_string('field.field.node.@type.body', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_view_display.node.@type.teaser', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_view_display.node.@type.default', array('@type' => $node_type->id())));
-    $this->assertText(format_string('core.entity_form_display.node.@type.default', array('@type' => $node_type->id())));
+    $this->assertText(format_string('node.type.@type', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('field.field.node.@type.body', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_view_display.node.@type.teaser', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_view_display.node.@type.default', ['@type' => $node_type->id()]));
+    $this->assertText(format_string('core.entity_form_display.node.@type.default', ['@type' => $node_type->id()]));
 
     // Delete the node and try to import again.
     $node->delete();
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertNoRaw($validation_message);
     $this->assertText(t('There are no configuration changes to import.'));
-    $this->assertNoText(format_string('node.type.@type', array('@type' => $node_type->id())));
-    $this->assertNoText(format_string('field.field.node.@type.body', array('@type' => $node_type->id())));
-    $this->assertNoText(format_string('core.entity_view_display.node.@type.teaser', array('@type' => $node_type->id())));
-    $this->assertNoText(format_string('core.entity_view_display.node.@type.default', array('@type' => $node_type->id())));
-    $this->assertNoText(format_string('core.entity_form_display.node.@type.default', array('@type' => $node_type->id())));
+    $this->assertNoText(format_string('node.type.@type', ['@type' => $node_type->id()]));
+    $this->assertNoText(format_string('field.field.node.@type.body', ['@type' => $node_type->id()]));
+    $this->assertNoText(format_string('core.entity_view_display.node.@type.teaser', ['@type' => $node_type->id()]));
+    $this->assertNoText(format_string('core.entity_view_display.node.@type.default', ['@type' => $node_type->id()]));
+    $this->assertNoText(format_string('core.entity_form_display.node.@type.default', ['@type' => $node_type->id()]));
   }
 
   /**
@@ -508,7 +508,7 @@ public function testExtensionValidation() {
     $core['theme']['does_not_exist'] = 0;
     $sync->write('core.extension', $core);
 
-    $this->drupalPostForm('admin/config/development/configuration', array(), t('Import all'));
+    $this->drupalPostForm('admin/config/development/configuration', [], t('Import all'));
     $this->assertText('The configuration cannot be imported because it failed validation for the following reasons:');
     $this->assertText('Unable to uninstall the Text module since the Node module is installed.');
     $this->assertText('Unable to uninstall the Classy theme since the Bartik theme is installed.');
diff --git a/core/modules/config/src/Tests/ConfigImportUploadTest.php b/core/modules/config/src/Tests/ConfigImportUploadTest.php
index 9836d77..9792213 100644
--- a/core/modules/config/src/Tests/ConfigImportUploadTest.php
+++ b/core/modules/config/src/Tests/ConfigImportUploadTest.php
@@ -23,12 +23,12 @@ class ConfigImportUploadTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config');
+  public static $modules = ['config'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('import configuration'));
+    $this->webUser = $this->drupalCreateUser(['import configuration']);
     $this->drupalLogin($this->webUser);
   }
 
@@ -42,7 +42,7 @@ function testImport() {
 
     // Attempt to upload a non-tar file.
     $text_file = current($this->drupalGetTestFiles('text'));
-    $edit = array('files[import_tarball]' => drupal_realpath($text_file->uri));
+    $edit = ['files[import_tarball]' => drupal_realpath($text_file->uri)];
     $this->drupalPostForm('admin/config/development/configuration/full/import', $edit, t('Upload'));
     $this->assertText(t('Could not extract the contents of the tar file'));
 
diff --git a/core/modules/config/src/Tests/ConfigInstallWebTest.php b/core/modules/config/src/Tests/ConfigInstallWebTest.php
index 8f9e1a1..79b50a0 100644
--- a/core/modules/config/src/Tests/ConfigInstallWebTest.php
+++ b/core/modules/config/src/Tests/ConfigInstallWebTest.php
@@ -26,7 +26,7 @@ class ConfigInstallWebTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer modules', 'administer themes', 'administer site configuration'));
+    $this->adminUser = $this->drupalCreateUser(['administer modules', 'administer themes', 'administer site configuration']);
 
     // Ensure the global variable being asserted by this test does not exist;
     // a previous test executed in this request/process might have set it.
@@ -41,7 +41,7 @@ function testIntegrationModuleReinstallation() {
     $default_configuration_entity = 'config_test.dynamic.config_integration_test';
 
     // Install the config_test module we're integrating with.
-    \Drupal::service('module_installer')->install(array('config_test'));
+    \Drupal::service('module_installer')->install(['config_test']);
 
     // Verify the configuration does not exist prior to installation.
     $config_static = $this->config($default_config);
@@ -50,7 +50,7 @@ function testIntegrationModuleReinstallation() {
     $this->assertIdentical($config_entity->isNew(), TRUE);
 
     // Install the integration module.
-    \Drupal::service('module_installer')->install(array('config_integration_test'));
+    \Drupal::service('module_installer')->install(['config_integration_test']);
 
     // Verify that default module config exists.
     \Drupal::configFactory()->reset($default_config);
@@ -73,7 +73,7 @@ function testIntegrationModuleReinstallation() {
     $this->container->get('config.factory')->reset();
 
     // Disable and uninstall the integration module.
-    $this->container->get('module_installer')->uninstall(array('config_integration_test'));
+    $this->container->get('module_installer')->uninstall(['config_integration_test']);
 
     // Verify the integration module's config was uninstalled.
     $config_static = $this->config($default_config);
@@ -86,7 +86,7 @@ function testIntegrationModuleReinstallation() {
 
     // Reinstall the integration module.
     try {
-      \Drupal::service('module_installer')->install(array('config_integration_test'));
+      \Drupal::service('module_installer')->install(['config_integration_test']);
       $this->fail('Expected PreExistingConfigException not thrown.');
     }
     catch (PreExistingConfigException $e) {
@@ -97,7 +97,7 @@ function testIntegrationModuleReinstallation() {
 
     // Delete the configuration entity so that the install will work.
     $config_entity->delete();
-    \Drupal::service('module_installer')->install(array('config_integration_test'));
+    \Drupal::service('module_installer')->install(['config_integration_test']);
 
     // Verify the integration module's config was re-installed.
     \Drupal::configFactory()->reset($default_config);
@@ -122,19 +122,19 @@ public function testPreExistingConfigInstall() {
     // will install the config_test module first because it is a dependency of
     // config_install_fail_test.
     // @see \Drupal\system\Form\ModulesListForm::submitForm()
-    $this->drupalPostForm('admin/modules', array('modules[config_test][enable]' => TRUE, 'modules[config_install_fail_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_test][enable]' => TRUE, 'modules[config_install_fail_test][enable]' => TRUE], t('Install'));
     $this->assertRaw('Unable to install Configuration install fail test, <em class="placeholder">config_test.dynamic.dotted.default</em> already exists in active configuration.');
 
     // Uninstall the config_test module to test the confirm form.
-    $this->drupalPostForm('admin/modules/uninstall', array('uninstall[config_test]' => TRUE), t('Uninstall'));
-    $this->drupalPostForm(NULL, array(), t('Uninstall'));
+    $this->drupalPostForm('admin/modules/uninstall', ['uninstall[config_test]' => TRUE], t('Uninstall'));
+    $this->drupalPostForm(NULL, [], t('Uninstall'));
 
     // Try to install config_install_fail_test without selecting config_test.
     // The user is shown a confirm form because the config_test module is a
     // dependency.
     // @see \Drupal\system\Form\ModulesListConfirmForm::submitForm()
-    $this->drupalPostForm('admin/modules', array('modules[config_install_fail_test][enable]' => TRUE), t('Install'));
-    $this->drupalPostForm(NULL, array(), t('Continue'));
+    $this->drupalPostForm('admin/modules', ['modules[config_install_fail_test][enable]' => TRUE], t('Install'));
+    $this->drupalPostForm(NULL, [], t('Continue'));
     $this->assertRaw('Unable to install Configuration install fail test, <em class="placeholder">config_test.dynamic.dotted.default</em> already exists in active configuration.');
 
     // Test that collection configuration clashes during a module install are
@@ -147,7 +147,7 @@ public function testPreExistingConfigInstall() {
       ->set('label', 'Je suis Charlie')
       ->save();
 
-    $this->drupalPostForm('admin/modules', array('modules[config_install_fail_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_install_fail_test][enable]' => TRUE], t('Install'));
     $this->assertRaw('Unable to install Configuration install fail test, <em class="placeholder">config_test.dynamic.dotted.default, language/fr/config_test.dynamic.dotted.default</em> already exist in active configuration.');
 
     // Test installing a theme through the UI that has existing configuration.
@@ -178,16 +178,16 @@ public function testUnmetDependenciesInstall() {
     $this->drupalLogin($this->adminUser);
     // We need to install separately since config_install_dependency_test does
     // not depend on config_test and order is important.
-    $this->drupalPostForm('admin/modules', array('modules[config_test][enable]' => TRUE), t('Install'));
-    $this->drupalPostForm('admin/modules', array('modules[config_install_dependency_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_test][enable]' => TRUE], t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_install_dependency_test][enable]' => TRUE], t('Install'));
     $this->assertRaw('Unable to install <em class="placeholder">Config install dependency test</em> due to unmet dependencies: <em class="placeholder">config_test.dynamic.other_module_test_with_dependency (config_other_module_config_test, config_test.dynamic.dotted.english)</em>');
 
-    $this->drupalPostForm('admin/modules', array('modules[config_test_language][enable]' => TRUE), t('Install'));
-    $this->drupalPostForm('admin/modules', array('modules[config_install_dependency_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_test_language][enable]' => TRUE], t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_install_dependency_test][enable]' => TRUE], t('Install'));
     $this->assertRaw('Unable to install <em class="placeholder">Config install dependency test</em> due to unmet dependencies: <em class="placeholder">config_test.dynamic.other_module_test_with_dependency (config_other_module_config_test)</em>');
 
-    $this->drupalPostForm('admin/modules', array('modules[config_other_module_config_test][enable]' => TRUE), t('Install'));
-    $this->drupalPostForm('admin/modules', array('modules[config_install_dependency_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_other_module_config_test][enable]' => TRUE], t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config_install_dependency_test][enable]' => TRUE], t('Install'));
     $this->rebuildContainer();
     $this->assertTrue(entity_load('config_test', 'other_module_test_with_dependency'), 'The config_test.dynamic.other_module_test_with_dependency configuration has been created during install.');
   }
@@ -197,12 +197,12 @@ public function testUnmetDependenciesInstall() {
    */
   public function testConfigModuleRequirements() {
     $this->drupalLogin($this->adminUser);
-    $this->drupalPostForm('admin/modules', array('modules[config][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[config][enable]' => TRUE], t('Install'));
 
     $directory = config_get_config_directory(CONFIG_SYNC_DIRECTORY);
     file_unmanaged_delete_recursive($directory);
     $this->drupalGet('/admin/reports/status');
-    $this->assertRaw(t('The directory %directory does not exist.', array('%directory' => $directory)));
+    $this->assertRaw(t('The directory %directory does not exist.', ['%directory' => $directory]));
 
     file_prepare_directory($directory, FILE_CREATE_DIRECTORY);
     \Drupal::service('file_system')->chmod($directory, 0555);
diff --git a/core/modules/config/src/Tests/ConfigSingleImportExportTest.php b/core/modules/config/src/Tests/ConfigSingleImportExportTest.php
index 53f6164..16cff0a 100644
--- a/core/modules/config/src/Tests/ConfigSingleImportExportTest.php
+++ b/core/modules/config/src/Tests/ConfigSingleImportExportTest.php
@@ -39,7 +39,7 @@ public function testImport() {
     $storage = \Drupal::entityManager()->getStorage('config_test');
     $uuid = \Drupal::service('uuid');
 
-    $this->drupalLogin($this->drupalCreateUser(array('import configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['import configuration']));
 
     // Attempt an import with invalid YAML.
     $edit = [
@@ -57,20 +57,20 @@ public function testImport() {
 style: ''
 status: '1'
 EOD;
-    $edit = array(
+    $edit = [
       'config_type' => 'config_test',
       'import' => $import,
-    );
+    ];
     // Attempt an import with a missing ID.
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertText(t('Missing ID key "@id_key" for this @entity_type import.', array('@id_key' => 'id', '@entity_type' => 'Test configuration')));
+    $this->assertText(t('Missing ID key "@id_key" for this @entity_type import.', ['@id_key' => 'id', '@entity_type' => 'Test configuration']));
 
     // Perform an import with no specified UUID and a unique ID.
     $this->assertNull($storage->load('first'));
     $edit['import'] = "id: first\n" . $edit['import'];
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertRaw(t('Are you sure you want to create a new %name @type?', array('%name' => 'first', '@type' => 'test configuration')));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to create a new %name @type?', ['%name' => 'first', '@type' => 'test configuration']));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
     $entity = $storage->load('first');
     $this->assertIdentical($entity->label(), 'First');
     $this->assertIdentical($entity->id(), 'first');
@@ -89,8 +89,8 @@ public function testImport() {
     // Attempt an import with a custom ID.
     $edit['custom_entity_id'] = 'custom_id';
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertRaw(t('Are you sure you want to create a new %name @type?', array('%name' => 'custom_id', '@type' => 'test configuration')));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to create a new %name @type?', ['%name' => 'custom_id', '@type' => 'test configuration']));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
     $this->assertRaw(t('The configuration was imported successfully.'));
 
     // Perform an import with a unique ID and UUID.
@@ -101,15 +101,15 @@ public function testImport() {
 style: ''
 status: '0'
 EOD;
-    $edit = array(
+    $edit = [
       'config_type' => 'config_test',
       'import' => $import,
-    );
+    ];
     $second_uuid = $uuid->generate();
     $edit['import'] .= "\nuuid: " . $second_uuid;
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertRaw(t('Are you sure you want to create a new %name @type?', array('%name' => 'second', '@type' => 'test configuration')));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to create a new %name @type?', ['%name' => 'second', '@type' => 'test configuration']));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
     $entity = $storage->load('second');
     $this->assertRaw(t('The configuration was imported successfully.'));
     $this->assertIdentical($entity->label(), 'Second');
@@ -126,13 +126,13 @@ public function testImport() {
 style: ''
 status: '0'
 EOD;
-    $edit = array(
+    $edit = [
       'config_type' => 'config_test',
       'import' => $import,
-    );
+    ];
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertRaw(t('Are you sure you want to update the %name @type?', array('%name' => 'second', '@type' => 'test configuration')));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to update the %name @type?', ['%name' => 'second', '@type' => 'test configuration']));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
     $entity = $storage->load('second');
     $this->assertRaw(t('The configuration was imported successfully.'));
     $this->assertIdentical($entity->label(), 'Second updated');
@@ -149,10 +149,10 @@ public function testImport() {
   module:
     - does_not_exist
 EOD;
-    $edit = array(
+    $edit = [
       'config_type' => 'config_test',
       'import' => $import,
-    );
+    ];
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
     $this->assertRaw(t('Configuration %name depends on the %owner module that will not be installed after import.', ['%name' => 'config_test.dynamic.second', '%owner' => 'does_not_exist']));
   }
@@ -161,20 +161,20 @@ public function testImport() {
    * Tests importing a simple configuration file.
    */
   public function testImportSimpleConfiguration() {
-    $this->drupalLogin($this->drupalCreateUser(array('import configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['import configuration']));
     $config = $this->config('system.site')->set('name', 'Test simple import');
 
     // Place branding block with site name into header region.
     $this->drupalPlaceBlock('system_branding_block', ['region' => 'header']);
 
-    $edit = array(
+    $edit = [
       'config_type' => 'system.simple',
       'config_name' => $config->getName(),
       'import' => Yaml::encode($config->get()),
-    );
+    ];
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
-    $this->assertRaw(t('Are you sure you want to update the %name @type?', array('%name' => $config->getName(), '@type' => 'simple configuration')));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to update the %name @type?', ['%name' => $config->getName(), '@type' => 'simple configuration']));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
     $this->drupalGet('');
     $this->assertText('Test simple import');
 
@@ -183,11 +183,11 @@ public function testImportSimpleConfiguration() {
     $config_data = $this->config('core.extension')->get();
     // Simulate uninstalling the Config module.
     unset($config_data['module']['config']);
-    $edit = array(
+    $edit = [
       'config_type' => 'system.simple',
       'config_name' => 'core.extension',
       'import' => Yaml::encode($config_data),
-    );
+    ];
     $this->drupalPostForm('admin/config/development/configuration/single/import', $edit, t('Import'));
     $this->assertText(t('Can not uninstall the Configuration module as part of a configuration synchronization through the user interface.'));
 
@@ -197,14 +197,14 @@ public function testImportSimpleConfiguration() {
    * Tests exporting a single configuration file.
    */
   public function testExport() {
-    $this->drupalLogin($this->drupalCreateUser(array('export configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['export configuration']));
 
     $this->drupalGet('admin/config/development/configuration/single/export/system.simple');
     $this->assertFieldByXPath('//select[@name="config_type"]//option[@selected="selected"]', t('Simple configuration'), 'The simple configuration option is selected when specified in the URL.');
     // Spot check several known simple configuration files.
     $element = $this->xpath('//select[@name="config_name"]');
     $options = $this->getAllOptions($element[0]);
-    $expected_options = array('system.site', 'user.settings');
+    $expected_options = ['system.site', 'user.settings'];
     foreach ($options as &$option) {
       $option = (string) $option;
     }
diff --git a/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php b/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
index 1aa4c9a..ba67960 100644
--- a/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
+++ b/core/modules/config/src/Tests/LanguageNegotiationFormOverrideTest.php
@@ -12,7 +12,7 @@
  */
 class LanguageNegotiationFormOverrideTest extends WebTestBase {
 
-  public static $modules = array('language', 'locale', 'locale_test');
+  public static $modules = ['language', 'locale', 'locale_test'];
 
   /**
    * Tests that overrides do not affect language-negotiation form values.
@@ -23,16 +23,16 @@ public function testFormWithOverride() {
     $overridden_value_es = 'loquesea';
 
     // Set up an override.
-    $settings['config']['language.negotiation']['url']['prefixes'] = (object) array(
-      'value' => array('en' => $overridden_value_en, 'es' => $overridden_value_es),
+    $settings['config']['language.negotiation']['url']['prefixes'] = (object) [
+      'value' => ['en' => $overridden_value_en, 'es' => $overridden_value_es],
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'es',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Overridden string for language-negotiation should not exist in the form.
diff --git a/core/modules/config/tests/config_collection_install_test/src/EventSubscriber.php b/core/modules/config/tests/config_collection_install_test/src/EventSubscriber.php
index da3a9f1..76714a5 100644
--- a/core/modules/config/tests/config_collection_install_test/src/EventSubscriber.php
+++ b/core/modules/config/tests/config_collection_install_test/src/EventSubscriber.php
@@ -33,7 +33,7 @@ public function __construct(StateInterface $state) {
    *   The configuration collection info event.
    */
   public function addCollections(ConfigCollectionInfo $collection_info) {
-    $collections = $this->state->get('config_collection_install_test.collection_names', array());
+    $collections = $this->state->get('config_collection_install_test.collection_names', []);
     foreach ($collections as $collection) {
       $collection_info->addCollection($collection);
     }
@@ -43,7 +43,7 @@ public function addCollections(ConfigCollectionInfo $collection_info) {
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[ConfigEvents::COLLECTION_INFO][] = array('addCollections');
+    $events[ConfigEvents::COLLECTION_INFO][] = ['addCollections'];
     return $events;
   }
 
diff --git a/core/modules/config/tests/config_entity_static_cache_test/src/ConfigOverrider.php b/core/modules/config/tests/config_entity_static_cache_test/src/ConfigOverrider.php
index 2345d55..8d21ee4 100644
--- a/core/modules/config/tests/config_entity_static_cache_test/src/ConfigOverrider.php
+++ b/core/modules/config/tests/config_entity_static_cache_test/src/ConfigOverrider.php
@@ -15,11 +15,11 @@ class ConfigOverrider implements ConfigFactoryOverrideInterface {
    * {@inheritdoc}
    */
   public function loadOverrides($names) {
-    return array(
-      'config_test.dynamic.test_1' => array(
+    return [
+      'config_test.dynamic.test_1' => [
         'label' => 'Overridden label',
-      )
-    );
+      ]
+    ];
   }
 
   /**
diff --git a/core/modules/config/tests/config_events_test/src/EventSubscriber.php b/core/modules/config/tests/config_events_test/src/EventSubscriber.php
index bfa70db..39e8eb8 100644
--- a/core/modules/config/tests/config_events_test/src/EventSubscriber.php
+++ b/core/modules/config/tests/config_events_test/src/EventSubscriber.php
@@ -37,21 +37,21 @@ public function __construct(StateInterface $state) {
    */
   public function configEventRecorder(ConfigCrudEvent $event, $name) {
     $config = $event->getConfig();
-    $this->state->set('config_events_test.event', array(
+    $this->state->set('config_events_test.event', [
       'event_name' => $name,
       'current_config_data' => $config->get(),
       'original_config_data' => $config->getOriginal(),
       'raw_config_data' => $config->getRawData()
-    ));
+    ]);
   }
 
   /**
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[ConfigEvents::SAVE][] = array('configEventRecorder');
-    $events[ConfigEvents::DELETE][] = array('configEventRecorder');
-    $events[ConfigEvents::RENAME][] = array('configEventRecorder');
+    $events[ConfigEvents::SAVE][] = ['configEventRecorder'];
+    $events[ConfigEvents::DELETE][] = ['configEventRecorder'];
+    $events[ConfigEvents::RENAME][] = ['configEventRecorder'];
     return $events;
   }
 
diff --git a/core/modules/config/tests/config_import_test/src/EventSubscriber.php b/core/modules/config/tests/config_import_test/src/EventSubscriber.php
index f4ae97f..e0ef923 100644
--- a/core/modules/config/tests/config_import_test/src/EventSubscriber.php
+++ b/core/modules/config/tests/config_import_test/src/EventSubscriber.php
@@ -88,14 +88,14 @@ public function onConfigImporterMissingContentTwo(MissingContentEvent $event) {
   public function onConfigSave(ConfigCrudEvent $event) {
     $config = $event->getConfig();
     if ($config->getName() == 'action.settings') {
-      $values = $this->state->get('ConfigImportUITest.action.settings.recursion_limit', array());
+      $values = $this->state->get('ConfigImportUITest.action.settings.recursion_limit', []);
       $values[] = $config->get('recursion_limit');
       $this->state->set('ConfigImportUITest.action.settings.recursion_limit', $values);
     }
 
     if ($config->getName() == 'core.extension') {
-      $installed = $this->state->get('ConfigImportUITest.core.extension.modules_installed', array());
-      $uninstalled = $this->state->get('ConfigImportUITest.core.extension.modules_uninstalled', array());
+      $installed = $this->state->get('ConfigImportUITest.core.extension.modules_installed', []);
+      $uninstalled = $this->state->get('ConfigImportUITest.core.extension.modules_uninstalled', []);
       $original = $config->getOriginal('module');
       $data = $config->get('module');
       $install = array_diff_key($data, $original);
@@ -132,10 +132,10 @@ public function onConfigDelete(ConfigCrudEvent $event) {
    *   An array of event listener definitions.
    */
   static function getSubscribedEvents() {
-    $events[ConfigEvents::SAVE][] = array('onConfigSave', 40);
-    $events[ConfigEvents::DELETE][] = array('onConfigDelete', 40);
-    $events[ConfigEvents::IMPORT_VALIDATE] = array('onConfigImporterValidate');
-    $events[ConfigEvents::IMPORT_MISSING_CONTENT] = array(array('onConfigImporterMissingContentOne'), array('onConfigImporterMissingContentTwo', -100));
+    $events[ConfigEvents::SAVE][] = ['onConfigSave', 40];
+    $events[ConfigEvents::DELETE][] = ['onConfigDelete', 40];
+    $events[ConfigEvents::IMPORT_VALIDATE] = ['onConfigImporterValidate'];
+    $events[ConfigEvents::IMPORT_MISSING_CONTENT] = [['onConfigImporterMissingContentOne'], ['onConfigImporterMissingContentTwo', -100]];
     return $events;
   }
 
diff --git a/core/modules/config/tests/config_override_test/src/ConfigOverrider.php b/core/modules/config/tests/config_override_test/src/ConfigOverrider.php
index 895f041..c8ffc69 100644
--- a/core/modules/config/tests/config_override_test/src/ConfigOverrider.php
+++ b/core/modules/config/tests/config_override_test/src/ConfigOverrider.php
@@ -14,13 +14,13 @@ class ConfigOverrider implements ConfigFactoryOverrideInterface {
    * {@inheritdoc}
    */
   public function loadOverrides($names) {
-    $overrides = array();
+    $overrides = [];
     if (!empty($GLOBALS['config_test_run_module_overrides'])) {
       if (in_array('system.site', $names)) {
-        $overrides = $overrides + array('system.site' => array('name' => 'ZOMG overridden site name'));
+        $overrides = $overrides + ['system.site' => ['name' => 'ZOMG overridden site name']];
       }
       if (in_array('config_override_test.new', $names)) {
-        $overrides = $overrides + array('config_override_test.new' => array('module' => 'override'));
+        $overrides = $overrides + ['config_override_test.new' => ['module' => 'override']];
       }
     }
     return $overrides;
diff --git a/core/modules/config/tests/config_override_test/src/ConfigOverriderLowPriority.php b/core/modules/config/tests/config_override_test/src/ConfigOverriderLowPriority.php
index 6f0b12d..b8109db 100644
--- a/core/modules/config/tests/config_override_test/src/ConfigOverriderLowPriority.php
+++ b/core/modules/config/tests/config_override_test/src/ConfigOverriderLowPriority.php
@@ -15,17 +15,17 @@ class ConfigOverriderLowPriority implements ConfigFactoryOverrideInterface {
    * {@inheritdoc}
    */
   public function loadOverrides($names) {
-    $overrides = array();
+    $overrides = [];
     if (!empty($GLOBALS['config_test_run_module_overrides'])) {
       if (in_array('system.site', $names)) {
-        $overrides = array('system.site' =>
-          array(
+        $overrides = ['system.site' =>
+          [
             'name' => 'Should not apply because of higher priority listener',
             // This override should apply because it is not overridden by the
             // higher priority listener.
             'slogan' => 'Yay for overrides!',
-          )
-        );
+          ]
+        ];
       }
     }
     return $overrides;
diff --git a/core/modules/config/tests/config_test/src/ConfigTestController.php b/core/modules/config/tests/config_test/src/ConfigTestController.php
index d60c62e..6799dc1 100644
--- a/core/modules/config/tests/config_test/src/ConfigTestController.php
+++ b/core/modules/config/tests/config_test/src/ConfigTestController.php
@@ -21,7 +21,7 @@ class ConfigTestController extends ControllerBase {
    *   The title for the ConfigTest edit form.
    */
   public function editTitle(ConfigTest $config_test) {
-    return $this->t('Edit %label', array('%label' => $config_test->label()));
+    return $this->t('Edit %label', ['%label' => $config_test->label()]);
   }
 
   /**
@@ -35,7 +35,7 @@ public function editTitle(ConfigTest $config_test) {
    */
   function enable(ConfigTest $config_test) {
     $config_test->enable()->save();
-    return new RedirectResponse($config_test->url('collection', array('absolute' => TRUE)));
+    return new RedirectResponse($config_test->url('collection', ['absolute' => TRUE]));
   }
 
   /**
@@ -49,7 +49,7 @@ function enable(ConfigTest $config_test) {
    */
   function disable(ConfigTest $config_test) {
     $config_test->disable()->save();
-    return new RedirectResponse($config_test->url('collection', array('absolute' => TRUE)));
+    return new RedirectResponse($config_test->url('collection', ['absolute' => TRUE]));
   }
 
 }
diff --git a/core/modules/config/tests/config_test/src/ConfigTestForm.php b/core/modules/config/tests/config_test/src/ConfigTestForm.php
index 8384e6a..6a56c3d 100644
--- a/core/modules/config/tests/config_test/src/ConfigTestForm.php
+++ b/core/modules/config/tests/config_test/src/ConfigTestForm.php
@@ -18,33 +18,33 @@ public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
 
     $entity = $this->entity;
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => 'Label',
       '#default_value' => $entity->label(),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $entity->id(),
       '#required' => TRUE,
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => [$this, 'exists'],
         'replace_pattern' => '[^a-z0-9_.]+',
-      ),
-    );
-    $form['weight'] = array(
+      ],
+    ];
+    $form['weight'] = [
       '#type' => 'weight',
       '#title' => 'Weight',
       '#default_value' => $entity->get('weight'),
-    );
-    $form['style'] = array(
+    ];
+    $form['style'] = [
       '#type' => 'select',
       '#title' => 'Image style',
-      '#options' => array(),
+      '#options' => [],
       '#default_value' => $entity->get('style'),
       '#access' => FALSE,
-    );
+    ];
     if ($this->moduleHandler->moduleExists('image')) {
       $form['style']['#access'] = TRUE;
       $form['style']['#options'] = image_style_options();
@@ -55,61 +55,61 @@ public function form(array $form, FormStateInterface $form_state) {
     // state.
     $size = $entity->get('size');
 
-    $form['size_wrapper'] = array(
+    $form['size_wrapper'] = [
       '#type' => 'container',
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'size-wrapper',
-      ),
-    );
-    $form['size_wrapper']['size'] = array(
+      ],
+    ];
+    $form['size_wrapper']['size'] = [
       '#type' => 'select',
       '#title' => 'Size',
-      '#options' => array(
+      '#options' => [
         'custom' => 'Custom',
-      ),
+      ],
       '#empty_option' => '- None -',
       '#default_value' => $size,
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::updateSize',
         'wrapper' => 'size-wrapper',
-      ),
-    );
-    $form['size_wrapper']['size_submit'] = array(
+      ],
+    ];
+    $form['size_wrapper']['size_submit'] = [
       '#type' => 'submit',
       '#value' => t('Change size'),
-      '#attributes' => array(
-        'class' => array('js-hide'),
-      ),
-      '#submit' => array(array(get_class($this), 'changeSize')),
-    );
-    $form['size_wrapper']['size_value'] = array(
+      '#attributes' => [
+        'class' => ['js-hide'],
+      ],
+      '#submit' => [[get_class($this), 'changeSize']],
+    ];
+    $form['size_wrapper']['size_value'] = [
       '#type' => 'select',
       '#title' => 'Custom size value',
-      '#options' => array(
+      '#options' => [
         'small' => 'Small',
         'medium' => 'Medium',
         'large' => 'Large',
-      ),
+      ],
       '#default_value' => $entity->get('size_value'),
       '#access' => !empty($size),
-    );
+    ];
 
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#type' => 'language_select',
       '#title' => t('Language'),
       '#languages' => LanguageInterface::STATE_ALL,
       '#default_value' => $entity->language()->getId(),
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
-    $form['actions']['delete'] = array(
+    ];
+    $form['actions']['delete'] = [
       '#type' => 'submit',
       '#value' => 'Delete',
-    );
+    ];
 
     return $form;
   }
@@ -136,10 +136,10 @@ public function save(array $form, FormStateInterface $form_state) {
     $status = $entity->save();
 
     if ($status === SAVED_UPDATED) {
-      drupal_set_message(format_string('%label configuration has been updated.', array('%label' => $entity->label())));
+      drupal_set_message(format_string('%label configuration has been updated.', ['%label' => $entity->label()]));
     }
     else {
-      drupal_set_message(format_string('%label configuration has been created.', array('%label' => $entity->label())));
+      drupal_set_message(format_string('%label configuration has been created.', ['%label' => $entity->label()]));
     }
 
     $form_state->setRedirectUrl($this->entity->urlInfo('collection'));
diff --git a/core/modules/config/tests/config_test/src/Entity/ConfigQueryTest.php b/core/modules/config/tests/config_test/src/Entity/ConfigQueryTest.php
index 10914f0..ca3b354 100644
--- a/core/modules/config/tests/config_test/src/Entity/ConfigQueryTest.php
+++ b/core/modules/config/tests/config_test/src/Entity/ConfigQueryTest.php
@@ -38,6 +38,6 @@ class ConfigQueryTest extends ConfigTest {
    *
    * @var array
    */
-  public $array = array();
+  public $array = [];
 
 }
diff --git a/core/modules/config/tests/config_test/src/Entity/ConfigTest.php b/core/modules/config/tests/config_test/src/Entity/ConfigTest.php
index f19eb65..1bd1d8d 100644
--- a/core/modules/config/tests/config_test/src/Entity/ConfigTest.php
+++ b/core/modules/config/tests/config_test/src/Entity/ConfigTest.php
@@ -88,10 +88,10 @@ public static function sort(ConfigEntityInterface $a, ConfigEntityInterface $b)
   public function postSave(EntityStorageInterface $storage, $update = TRUE) {
     // Used to test secondary writes during config sync.
     if ($this->id() == 'primary') {
-      $secondary = $storage->create(array(
+      $secondary = $storage->create([
         'id' => 'secondary',
         'label' => 'Secondary Default',
-      ));
+      ]);
       $secondary->save();
     }
     if ($this->id() == 'deleter') {
@@ -126,7 +126,7 @@ public function onDependencyRemoval(array $dependencies) {
     if (!isset($this->dependencies['enforced']['config'])) {
       return $changed;
     }
-    $fix_deps = \Drupal::state()->get('config_test.fix_dependencies', array());
+    $fix_deps = \Drupal::state()->get('config_test.fix_dependencies', []);
     foreach ($dependencies['config'] as $entity) {
       if (in_array($entity->getConfigDependencyName(), $fix_deps)) {
         $key = array_search($entity->getConfigDependencyName(), $this->dependencies['enforced']['config']);
diff --git a/core/modules/config/tests/config_test/src/TestInstallStorage.php b/core/modules/config/tests/config_test/src/TestInstallStorage.php
index 074e99c..e3c4918 100644
--- a/core/modules/config/tests/config_test/src/TestInstallStorage.php
+++ b/core/modules/config/tests/config_test/src/TestInstallStorage.php
@@ -20,7 +20,7 @@ protected function getAllFolders() {
     if (!isset($this->folders)) {
       $this->folders = $this->getCoreNames();
       $listing = new ExtensionDiscovery(\Drupal::root());
-      $listing->setProfileDirectories(array());
+      $listing->setProfileDirectories([]);
       $this->folders += $this->getComponentNames($listing->scan('profile'));
       $this->folders += $this->getComponentNames($listing->scan('module'));
       $this->folders += $this->getComponentNames($listing->scan('theme'));
diff --git a/core/modules/config/tests/src/Functional/ConfigDependencyWebTest.php b/core/modules/config/tests/src/Functional/ConfigDependencyWebTest.php
index c243e9a..ba80401 100644
--- a/core/modules/config/tests/src/Functional/ConfigDependencyWebTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigDependencyWebTest.php
@@ -22,7 +22,7 @@ class ConfigDependencyWebTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Tests ConfigDependencyDeleteFormTrait.
@@ -36,10 +36,10 @@ function testConfigDependencyDeleteFormTrait() {
     $storage = $this->container->get('entity.manager')->getStorage('config_test');
     // Entity1 will be deleted by the test.
     $entity1 = $storage->create(
-      array(
+      [
         'id' => 'entity1',
         'label' => 'Entity One',
-      )
+      ]
     );
     $entity1->save();
 
@@ -47,14 +47,14 @@ function testConfigDependencyDeleteFormTrait() {
     // \Drupal\config_test\Entity::onDependencyRemoval() will remove the
     // dependency before config entities are deleted.
     $entity2 = $storage->create(
-      array(
+      [
         'id' => 'entity2',
-        'dependencies' => array(
-          'enforced' => array(
-            'config' => array($entity1->getConfigDependencyName()),
-          ),
-        ),
-      )
+        'dependencies' => [
+          'enforced' => [
+            'config' => [$entity1->getConfigDependencyName()],
+          ],
+        ],
+      ]
     );
     $entity2->save();
 
@@ -65,47 +65,47 @@ function testConfigDependencyDeleteFormTrait() {
     $this->assertNoText(t('Configuration updates'), 'No configuration updates found.');
     $this->assertText(t('Configuration deletions'), 'Configuration deletions found.');
     $this->assertText($entity2->id(), 'Entity2 id found');
-    $this->drupalPostForm($entity1->urlInfo('delete-form'), array(), 'Delete');
+    $this->drupalPostForm($entity1->urlInfo('delete-form'), [], 'Delete');
     $storage->resetCache();
     $this->assertFalse($storage->loadMultiple([$entity1->id(), $entity2->id()]), 'Test entities deleted');
 
     // Set a more complicated test where dependencies will be fixed.
     // Entity1 will be deleted by the test.
     $entity1 = $storage->create(
-      array(
+      [
         'id' => 'entity1',
-      )
+      ]
     );
     $entity1->save();
-    \Drupal::state()->set('config_test.fix_dependencies', array($entity1->getConfigDependencyName()));
+    \Drupal::state()->set('config_test.fix_dependencies', [$entity1->getConfigDependencyName()]);
 
     // Entity2 has a dependency on Entity1 but it can be fixed because
     // \Drupal\config_test\Entity::onDependencyRemoval() will remove the
     // dependency before config entities are deleted.
     $entity2 = $storage->create(
-      array(
+      [
         'id' => 'entity2',
         'label' => 'Entity Two',
-        'dependencies' => array(
-          'enforced' => array(
-            'config' => array($entity1->getConfigDependencyName()),
-          ),
-        ),
-      )
+        'dependencies' => [
+          'enforced' => [
+            'config' => [$entity1->getConfigDependencyName()],
+          ],
+        ],
+      ]
     );
     $entity2->save();
 
     // Entity3 will be unchanged because it is dependent on Entity2 which can
     // be fixed.
     $entity3 = $storage->create(
-      array(
+      [
         'id' => 'entity3',
-        'dependencies' => array(
-          'enforced' => array(
-            'config' => array($entity2->getConfigDependencyName()),
-          ),
-        ),
-      )
+        'dependencies' => [
+          'enforced' => [
+            'config' => [$entity2->getConfigDependencyName()],
+          ],
+        ],
+      ]
     );
     $entity3->save();
 
@@ -115,12 +115,12 @@ function testConfigDependencyDeleteFormTrait() {
     $this->assertNoText($entity2->id(), 'Entity2 id not found');
     $this->assertText($entity2->label(), 'Entity2 label not found');
     $this->assertNoText($entity3->id(), 'Entity3 id not found');
-    $this->drupalPostForm($entity1->urlInfo('delete-form'), array(), 'Delete');
+    $this->drupalPostForm($entity1->urlInfo('delete-form'), [], 'Delete');
     $storage->resetCache();
     $this->assertFalse($storage->load('entity1'), 'Test entity 1 deleted');
     $entity2 = $storage->load('entity2');
     $this->assertTrue($entity2, 'Entity 2 not deleted');
-    $this->assertEqual($entity2->calculateDependencies()->getDependencies()['config'], array(), 'Entity 2 dependencies updated to remove dependency on Entity1.');
+    $this->assertEqual($entity2->calculateDependencies()->getDependencies()['config'], [], 'Entity 2 dependencies updated to remove dependency on Entity1.');
     $entity3 = $storage->load('entity3');
     $this->assertTrue($entity3, 'Entity 3 not deleted');
     $this->assertEqual($entity3->calculateDependencies()->getDependencies()['config'], [$entity2->getConfigDependencyName()], 'Entity 3 still depends on Entity 2.');
diff --git a/core/modules/config/tests/src/Functional/ConfigDraggableListBuilderTest.php b/core/modules/config/tests/src/Functional/ConfigDraggableListBuilderTest.php
index 417e9f1..7482935 100644
--- a/core/modules/config/tests/src/Functional/ConfigDraggableListBuilderTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigDraggableListBuilderTest.php
@@ -15,13 +15,13 @@ class ConfigDraggableListBuilderTest extends BrowserTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Test draggable lists.
    */
   public function testDraggableList() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer permissions')));
+    $this->drupalLogin($this->drupalCreateUser(['administer permissions']));
 
     // Create more than 50 roles.
     for ($i = 0; $i < 51; $i++) {
diff --git a/core/modules/config/tests/src/Functional/ConfigEntityListMultilingualTest.php b/core/modules/config/tests/src/Functional/ConfigEntityListMultilingualTest.php
index 6c40ded..5d99252 100644
--- a/core/modules/config/tests/src/Functional/ConfigEntityListMultilingualTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigEntityListMultilingualTest.php
@@ -17,7 +17,7 @@ class ConfigEntityListMultilingualTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('config_test', 'language', 'block');
+  public static $modules = ['config_test', 'language', 'block'];
 
   /**
    * {@inheritdoc}
@@ -36,7 +36,7 @@ protected function setUp() {
    */
   function testListUI() {
     // Log in as an administrative user to access the full menu trail.
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer site configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer site configuration']));
 
     // Get the list page.
     $this->drupalGet('admin/structure/config_test');
@@ -44,11 +44,11 @@ function testListUI() {
 
     // Add a new entity using the action link.
     $this->clickLink('Add test configuration');
-    $edit = array(
+    $edit = [
       'label' => 'Antilop',
       'id' => 'antilop',
       'langcode' => 'hu',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     // Ensure that operations for editing the Hungarian entity appear in English.
     $this->assertLinkByHref('admin/structure/config_test/manage/antilop');
diff --git a/core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php b/core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php
index 9ae9412..4ad4d59 100644
--- a/core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php
+++ b/core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php
@@ -16,7 +16,7 @@ class ConfigEntityStatusUITest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Tests status operations.
@@ -25,10 +25,10 @@ function testCRUD() {
     $this->drupalLogin($this->drupalCreateUser(['administer site configuration']));
 
     $id = strtolower($this->randomMachineName());
-    $edit = array(
+    $edit = [
       'id' => $id,
       'label' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('admin/structure/config_test/add', $edit, 'Save');
 
     $entity = entity_load('config_test', $id);
diff --git a/core/modules/config/tests/src/Functional/ConfigInstallProfileOverrideTest.php b/core/modules/config/tests/src/Functional/ConfigInstallProfileOverrideTest.php
index 9ed75a4..88218b9 100644
--- a/core/modules/config/tests/src/Functional/ConfigInstallProfileOverrideTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigInstallProfileOverrideTest.php
@@ -31,21 +31,21 @@ class ConfigInstallProfileOverrideTest extends BrowserTestBase {
   function testInstallProfileConfigOverwrite() {
     $config_name = 'system.cron';
     // The expected configuration from the system module.
-    $expected_original_data = array(
-      'threshold' => array(
+    $expected_original_data = [
+      'threshold' => [
         'requirements_warning' => 172800,
         'requirements_error' => 1209600,
-      ),
+      ],
       'logging' => 1,
-    );
+    ];
     // The expected active configuration altered by the install profile.
-    $expected_profile_data = array(
-      'threshold' => array(
+    $expected_profile_data = [
+      'threshold' => [
         'requirements_warning' => 259200,
         'requirements_error' => 1209600,
-      ),
+      ],
       'logging' => 1,
-    );
+    ];
     $expected_profile_data['_core']['default_config_hash'] = Crypt::hashBase64(serialize($expected_profile_data));
 
     // Verify that the original data matches. We have to read the module config
diff --git a/core/modules/config/tests/src/Functional/ConfigLanguageOverrideWebTest.php b/core/modules/config/tests/src/Functional/ConfigLanguageOverrideWebTest.php
index 5aa194e..5fdd1a1 100644
--- a/core/modules/config/tests/src/Functional/ConfigLanguageOverrideWebTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigLanguageOverrideWebTest.php
@@ -35,18 +35,18 @@ protected function setUp() {
    * Tests translating the site name.
    */
   function testSiteNameTranslation() {
-    $adminUser = $this->drupalCreateUser(array('administer site configuration', 'administer languages'));
+    $adminUser = $this->drupalCreateUser(['administer site configuration', 'administer languages']);
     $this->drupalLogin($adminUser);
 
     // Add a custom language.
     $langcode = 'xx';
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     \Drupal::languageManager()
       ->getLanguageConfigOverride($langcode, 'system.site')
diff --git a/core/modules/config/tests/src/Functional/ConfigOtherModuleTest.php b/core/modules/config/tests/src/Functional/ConfigOtherModuleTest.php
index e1d0d8d..a996760 100644
--- a/core/modules/config/tests/src/Functional/ConfigOtherModuleTest.php
+++ b/core/modules/config/tests/src/Functional/ConfigOtherModuleTest.php
@@ -87,14 +87,14 @@ public function testInstallConfigEntityModuleFirst() {
   public function testUninstall() {
     $this->installModule('views');
     $storage = $this->container->get('entity_type.manager')->getStorage('view');
-    $storage->resetCache(array('frontpage'));
+    $storage->resetCache(['frontpage']);
     $this->assertTrue($storage->load('frontpage') === NULL, 'After installing Views, frontpage view which is dependant on the Node and Views modules does not exist.');
     $this->installModule('node');
-    $storage->resetCache(array('frontpage'));
+    $storage->resetCache(['frontpage']);
     $this->assertTrue($storage->load('frontpage') !== NULL, 'After installing Node, frontpage view which is dependant on the Node and Views modules exists.');
     $this->uninstallModule('node');
     $storage = $this->container->get('entity_type.manager')->getStorage('view');
-    $storage->resetCache(array('frontpage'));
+    $storage->resetCache(['frontpage']);
     $this->assertTrue($storage->load('frontpage') === NULL, 'After uninstalling Node, frontpage view which is dependant on the Node and Views modules does not exist.');
   }
 
@@ -105,7 +105,7 @@ public function testUninstall() {
    *   The module name.
    */
   protected function installModule($module) {
-    $this->container->get('module_installer')->install(array($module));
+    $this->container->get('module_installer')->install([$module]);
     $this->container = \Drupal::getContainer();
   }
 
@@ -116,7 +116,7 @@ protected function installModule($module) {
    *   The module name.
    */
   protected function uninstallModule($module) {
-    $this->container->get('module_installer')->uninstall(array($module));
+    $this->container->get('module_installer')->uninstall([$module]);
     $this->container = \Drupal::getContainer();
   }
 
diff --git a/core/modules/config/tests/src/Functional/SchemaConfigListenerWebTest.php b/core/modules/config/tests/src/Functional/SchemaConfigListenerWebTest.php
index bab8a3e..189d78f 100644
--- a/core/modules/config/tests/src/Functional/SchemaConfigListenerWebTest.php
+++ b/core/modules/config/tests/src/Functional/SchemaConfigListenerWebTest.php
@@ -15,7 +15,7 @@ class SchemaConfigListenerWebTest extends BrowserTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('config_test');
+  public static $modules = ['config_test'];
 
   /**
    * Tests \Drupal\Core\Config\Development\ConfigSchemaChecker.
diff --git a/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php b/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
index 7dd8d7d..0bfb32e 100644
--- a/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
+++ b/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
@@ -12,7 +12,7 @@
 class ConfigLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('config' => 'core/modules/config');
+    $this->directoryList = ['config' => 'core/modules/config'];
     parent::setUp();
   }
 
@@ -29,13 +29,13 @@ public function testConfigAdminLocalTasks($route, $expected) {
    * Provides a list of routes to test.
    */
   public function getConfigAdminRoutes() {
-    return array(
-      array('config.sync', array(array('config.sync', 'config.import', 'config.export'))),
-      array('config.import_full', array(array('config.sync', 'config.import', 'config.export'), array('config.import_full', 'config.import_single'))),
-      array('config.import_single', array(array('config.sync', 'config.import', 'config.export'), array('config.import_full', 'config.import_single'))),
-      array('config.export_full', array(array('config.sync', 'config.import', 'config.export'), array('config.export_full', 'config.export_single'))),
-      array('config.export_single', array(array('config.sync', 'config.import', 'config.export'), array('config.export_full', 'config.export_single'))),
-    );
+    return [
+      ['config.sync', [['config.sync', 'config.import', 'config.export']]],
+      ['config.import_full', [['config.sync', 'config.import', 'config.export'], ['config.import_full', 'config.import_single']]],
+      ['config.import_single', [['config.sync', 'config.import', 'config.export'], ['config.import_full', 'config.import_single']]],
+      ['config.export_full', [['config.sync', 'config.import', 'config.export'], ['config.export_full', 'config.export_single']]],
+      ['config.export_single', [['config.sync', 'config.import', 'config.export'], ['config.export_full', 'config.export_single']]],
+    ];
   }
 
 }
diff --git a/core/modules/config_translation/config_translation.api.php b/core/modules/config_translation/config_translation.api.php
index f2ee4a2..f97e259 100644
--- a/core/modules/config_translation/config_translation.api.php
+++ b/core/modules/config_translation/config_translation.api.php
@@ -50,14 +50,14 @@ function hook_config_translation_info(&$info) {
 
       // Make sure entity type has field UI enabled and has a base route.
       if ($entity_type->get('field_ui_base_route') && !empty($base_route)) {
-        $info[$entity_type_id . '_fields'] = array(
+        $info[$entity_type_id . '_fields'] = [
           'base_route_name' => 'entity.field_config.' . $entity_type_id . '_field_edit_form',
           'entity_type' => 'field_config',
           'title' => t('Title'),
           'class' => '\Drupal\config_translation\ConfigFieldMapper',
           'base_entity_type' => $entity_type_id,
           'weight' => 10,
-        );
+        ];
       }
     }
   }
diff --git a/core/modules/config_translation/config_translation.module b/core/modules/config_translation/config_translation.module
index d018d64..344d90e 100644
--- a/core/modules/config_translation/config_translation.module
+++ b/core/modules/config_translation/config_translation.module
@@ -18,15 +18,15 @@ function config_translation_help($route_name, RouteMatchInterface $route_match)
     case 'help.page.config_translation':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Configuration Translation module allows you to translate configuration text; for example, the site name, vocabularies, menus, or date formats. Together with the modules <a href=":language">Language</a>, <a href=":content-translation">Content Translation</a>, and <a href=":locale">Interface Translation</a>, it allows you to build multilingual websites. For more information, see the <a href=":doc_url">online documentation for the Configuration Translation module</a>.', array(':doc_url' => 'https://www.drupal.org/documentation/modules/config_translation', ':config' => \Drupal::url('help.page', array('name' => 'config')), ':language' => \Drupal::url('help.page', array('name' => 'language')), ':locale' => \Drupal::url('help.page', array('name' => 'locale')), ':content-translation' => (\Drupal::moduleHandler()->moduleExists('content_translation')) ? \Drupal::url('help.page', array('name' => 'content_translation')) : '#')) . '</p>';
+      $output .= '<p>' . t('The Configuration Translation module allows you to translate configuration text; for example, the site name, vocabularies, menus, or date formats. Together with the modules <a href=":language">Language</a>, <a href=":content-translation">Content Translation</a>, and <a href=":locale">Interface Translation</a>, it allows you to build multilingual websites. For more information, see the <a href=":doc_url">online documentation for the Configuration Translation module</a>.', [':doc_url' => 'https://www.drupal.org/documentation/modules/config_translation', ':config' => \Drupal::url('help.page', ['name' => 'config']), ':language' => \Drupal::url('help.page', ['name' => 'language']), ':locale' => \Drupal::url('help.page', ['name' => 'locale']), ':content-translation' => (\Drupal::moduleHandler()->moduleExists('content_translation')) ? \Drupal::url('help.page', ['name' => 'content_translation']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Enabling translation') . '</dt>';
-      $output .= '<dd>' . t('In order to translate configuration, the website must have at least two <a href=":url">languages</a>.', array(':url' => \Drupal::url('entity.configurable_language.collection'))) . '</dd>';
+      $output .= '<dd>' . t('In order to translate configuration, the website must have at least two <a href=":url">languages</a>.', [':url' => \Drupal::url('entity.configurable_language.collection')]) . '</dd>';
       $output .= '<dt>' . t('Translating configuration text') . '</dt>';
-      $output .= '<dd>' . t('Users with the <em>Translate user edited configuration</em> permission can access the configuration translation overview, and manage translations for specific languages. The <a href=":translation-page">Configuration translation</a> page shows a list of all configuration text that can be translated, either as individual items or as lists. After you click on <em>Translate</em>, you are provided with a list of all languages. You can <em>add</em> or <em>edit</em> a translation for a specific language. Users with specific configuration permissions can also <em>edit</em> the text for the site\'s default language. For some configuration text items (for example for the site information), the specific translation pages can also be accessed directly from their configuration pages.', array(':translation-page' => \Drupal::url('config_translation.mapper_list'))) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Translate user edited configuration</em> permission can access the configuration translation overview, and manage translations for specific languages. The <a href=":translation-page">Configuration translation</a> page shows a list of all configuration text that can be translated, either as individual items or as lists. After you click on <em>Translate</em>, you are provided with a list of all languages. You can <em>add</em> or <em>edit</em> a translation for a specific language. Users with specific configuration permissions can also <em>edit</em> the text for the site\'s default language. For some configuration text items (for example for the site information), the specific translation pages can also be accessed directly from their configuration pages.', [':translation-page' => \Drupal::url('config_translation.mapper_list')]) . '</dd>';
       $output .= '<dt>' . t('Translating date formats') . '</dt>';
-      $output .= '<dd>' . t('You can choose to translate date formats on the <a href=":translation-page">Configuration translation</a> page. This allows you not only to translate the label text, but also to set a language-specific <em>PHP date format</em>.', array(':translation-page' => \Drupal::url('config_translation.mapper_list'))) . '</dd>';
+      $output .= '<dd>' . t('You can choose to translate date formats on the <a href=":translation-page">Configuration translation</a> page. This allows you not only to translate the label text, but also to set a language-specific <em>PHP date format</em>.', [':translation-page' => \Drupal::url('config_translation.mapper_list')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -40,12 +40,12 @@ function config_translation_help($route_name, RouteMatchInterface $route_match)
  * Implements hook_theme().
  */
 function config_translation_theme() {
-  return array(
-    'config_translation_manage_form_element' => array(
+  return [
+    'config_translation_manage_form_element' => [
       'render element' => 'element',
       'template' => 'config_translation_manage_form_element',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -110,13 +110,13 @@ function config_translation_config_translation_info(&$info) {
     foreach ($entity_manager->getDefinitions() as $entity_type_id => $entity_type) {
       // Make sure entity type has field UI enabled and has a base route.
       if ($entity_type->get('field_ui_base_route')) {
-        $info[$entity_type_id . '_fields'] = array(
+        $info[$entity_type_id . '_fields'] = [
           'base_route_name' => "entity.field_config.{$entity_type_id}_field_edit_form",
           'entity_type' => 'field_config',
           'class' => '\Drupal\config_translation\ConfigFieldMapper',
           'base_entity_type' => $entity_type_id,
           'weight' => 10,
-        );
+        ];
       }
     }
   }
@@ -138,14 +138,14 @@ function config_translation_config_translation_info(&$info) {
 
     // Use the entity type as the plugin ID.
     $base_route_name = "entity.$entity_type_id.edit_form";
-    $info[$entity_type_id] = array(
+    $info[$entity_type_id] = [
       'class' => '\Drupal\config_translation\ConfigEntityMapper',
       'base_route_name' => $base_route_name,
       'title' => $entity_type->getLowercaseLabel(),
-      'names' => array(),
+      'names' => [],
       'entity_type' => $entity_type_id,
       'weight' => 10,
-    );
+    ];
   }
 }
 
@@ -153,7 +153,7 @@ function config_translation_config_translation_info(&$info) {
  * Implements hook_entity_operation().
  */
 function config_translation_entity_operation(EntityInterface $entity) {
-  $operations = array();
+  $operations = [];
   $entity_type = $entity->getEntityType();
   if ($entity_type->entityClassImplements(ConfigEntityInterface::class) &&
     $entity->hasLinkTemplate('config-translation-overview') &&
@@ -164,11 +164,11 @@ function config_translation_entity_operation(EntityInterface $entity) {
       $link_template = "config-translation-overview.{$entity->getTargetEntityTypeId()}";
     }
 
-    $operations['translate'] = array(
+    $operations['translate'] = [
       'title' => t('Translate'),
       'weight' => 50,
       'url' => $entity->urlInfo($link_template),
-    );
+    ];
   }
 
   return $operations;
@@ -178,7 +178,7 @@ function config_translation_entity_operation(EntityInterface $entity) {
  * Implements hook_config_schema_info_alter().
  */
 function config_translation_config_schema_info_alter(&$definitions) {
-  $map = array(
+  $map = [
     'label' => '\Drupal\config_translation\FormElement\Textfield',
     'text' => '\Drupal\config_translation\FormElement\Textarea',
     'date_format' => '\Drupal\config_translation\FormElement\DateFormat',
@@ -186,7 +186,7 @@ function config_translation_config_schema_info_alter(&$definitions) {
     'mapping' => '\Drupal\config_translation\FormElement\ListElement',
     'sequence' => '\Drupal\config_translation\FormElement\ListElement',
     'plural_label' => '\Drupal\config_translation\FormElement\PluralVariants',
-  );
+  ];
 
   // Enhance the text and date type definitions with classes to generate proper
   // form elements in ConfigTranslationFormBase. Other translatable types will
diff --git a/core/modules/config_translation/src/ConfigEntityMapper.php b/core/modules/config_translation/src/ConfigEntityMapper.php
index d172e1b..2ae3095 100644
--- a/core/modules/config_translation/src/ConfigEntityMapper.php
+++ b/core/modules/config_translation/src/ConfigEntityMapper.php
@@ -165,7 +165,7 @@ public function getTitle() {
    * {@inheritdoc}
    */
   public function getBaseRouteParameters() {
-    return array($this->entityType => $this->entity->id());
+    return [$this->entityType => $this->entity->id()];
   }
 
   /**
@@ -220,14 +220,14 @@ public function getTypeLabel() {
    * {@inheritdoc}
    */
   public function getOperations() {
-    return array(
-      'list' => array(
+    return [
+      'list' => [
         'title' => $this->t('List'),
         'url' => Url::fromRoute('config_translation.entity_list', [
           'mapper_id' => $this->getPluginId(),
         ]),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -259,12 +259,12 @@ public function getOverviewRouteName() {
    */
   protected function processRoute(Route $route) {
     // Add entity upcasting information.
-    $parameters = $route->getOption('parameters') ?: array();
-    $parameters += array(
-      $this->entityType => array(
+    $parameters = $route->getOption('parameters') ?: [];
+    $parameters += [
+      $this->entityType => [
         'type' => 'entity:' . $this->entityType,
-      )
-    );
+      ]
+    ];
     $route->setOption('parameters', $parameters);
   }
 
diff --git a/core/modules/config_translation/src/ConfigFieldMapper.php b/core/modules/config_translation/src/ConfigFieldMapper.php
index a9f6d76..c0e085f 100644
--- a/core/modules/config_translation/src/ConfigFieldMapper.php
+++ b/core/modules/config_translation/src/ConfigFieldMapper.php
@@ -44,7 +44,7 @@ public function getOverviewRouteName() {
    */
   public function getTypeLabel() {
     $base_entity_info = $this->entityManager->getDefinition($this->pluginDefinition['base_entity_type']);
-    return $this->t('@label fields', array('@label' => $base_entity_info->getLabel()));
+    return $this->t('@label fields', ['@label' => $base_entity_info->getLabel()]);
   }
 
   /**
diff --git a/core/modules/config_translation/src/ConfigMapperManager.php b/core/modules/config_translation/src/ConfigMapperManager.php
index cd0b72f..a43f080 100644
--- a/core/modules/config_translation/src/ConfigMapperManager.php
+++ b/core/modules/config_translation/src/ConfigMapperManager.php
@@ -39,12 +39,12 @@ class ConfigMapperManager extends DefaultPluginManager implements ConfigMapperMa
   /**
    * {@inheritdoc}
    */
-  protected $defaults = array(
+  protected $defaults = [
     'title' => '',
-    'names' => array(),
+    'names' => [],
     'weight' => 20,
     'class' => '\Drupal\config_translation\ConfigNamesMapper',
-  );
+  ];
 
   /**
    * Constructs a ConfigMapperManager.
@@ -72,7 +72,7 @@ public function __construct(CacheBackendInterface $cache_backend, LanguageManage
     $this->alterInfo('config_translation_info');
     // Config translation only uses an info hook discovery, cache by language.
     $cache_key = 'config_translation_info_plugins' . ':' . $language_manager->getCurrentLanguage()->getId();
-    $this->setCacheBackend($cache_backend, $cache_key, array('config_translation_info_plugins'));
+    $this->setCacheBackend($cache_backend, $cache_key, ['config_translation_info_plugins']);
   }
 
   /**
@@ -90,7 +90,7 @@ protected function getDiscovery() {
       //   request; when routes are being rebuilt at the end of the request,
       //   this service only happens to get instantiated with the updated list
       //   of installed themes.
-      $directories = array();
+      $directories = [];
       foreach ($this->moduleHandler->getModuleList() as $name => $module) {
         $directories[$name] = $module->getPath();
       }
@@ -111,7 +111,7 @@ protected function getDiscovery() {
    * {@inheritdoc}
    */
   public function getMappers(RouteCollection $collection = NULL) {
-    $mappers = array();
+    $mappers = [];
     foreach ($this->getDefinitions() as $id => $definition) {
       $mappers[$id] = $this->createInstance($id);
       if ($collection) {
@@ -155,7 +155,7 @@ protected function findDefinitions() {
     // If this plugin was provided by a module that does not exist, remove the
     // plugin definition.
     foreach ($definitions as $plugin_id => $plugin_definition) {
-      if (isset($plugin_definition['provider']) && !in_array($plugin_definition['provider'], array('core', 'component')) && (!$this->moduleHandler->moduleExists($plugin_definition['provider']) && !in_array($plugin_definition['provider'], array_keys($this->themeHandler->listInfo())))) {
+      if (isset($plugin_definition['provider']) && !in_array($plugin_definition['provider'], ['core', 'component']) && (!$this->moduleHandler->moduleExists($plugin_definition['provider']) && !in_array($plugin_definition['provider'], array_keys($this->themeHandler->listInfo())))) {
         unset($definitions[$plugin_id]);
       }
     }
diff --git a/core/modules/config_translation/src/ConfigNamesMapper.php b/core/modules/config_translation/src/ConfigNamesMapper.php
index 0784090..03716e9 100644
--- a/core/modules/config_translation/src/ConfigNamesMapper.php
+++ b/core/modules/config_translation/src/ConfigNamesMapper.php
@@ -180,7 +180,7 @@ public function getBaseRouteName() {
    * {@inheritdoc}
    */
   public function getBaseRouteParameters() {
-    return array();
+    return [];
   }
 
   /**
@@ -231,11 +231,11 @@ public function getOverviewRouteParameters() {
   public function getOverviewRoute() {
     $route = new Route(
       $this->getBaseRoute()->getPath() . '/translate',
-      array(
+      [
         '_controller' => '\Drupal\config_translation\Controller\ConfigTranslationController::itemPage',
         'plugin_id' => $this->getPluginId(),
-      ),
-      array('_config_translation_overview_access' => 'TRUE')
+      ],
+      ['_config_translation_overview_access' => 'TRUE']
     );
     $this->processRoute($route);
     return $route;
@@ -272,11 +272,11 @@ public function getAddRouteParameters() {
   public function getAddRoute() {
     $route = new Route(
       $this->getBaseRoute()->getPath() . '/translate/{langcode}/add',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationAddForm',
         'plugin_id' => $this->getPluginId(),
-      ),
-      array('_config_translation_form_access' => 'TRUE')
+      ],
+      ['_config_translation_form_access' => 'TRUE']
     );
     $this->processRoute($route);
     return $route;
@@ -302,11 +302,11 @@ public function getEditRouteParameters() {
   public function getEditRoute() {
     $route = new Route(
       $this->getBaseRoute()->getPath() . '/translate/{langcode}/edit',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationEditForm',
         'plugin_id' => $this->getPluginId(),
-      ),
-      array('_config_translation_form_access' => 'TRUE')
+      ],
+      ['_config_translation_form_access' => 'TRUE']
     );
     $this->processRoute($route);
     return $route;
@@ -332,11 +332,11 @@ public function getDeleteRouteParameters() {
   public function getDeleteRoute() {
     $route = new Route(
       $this->getBaseRoute()->getPath() . '/translate/{langcode}/delete',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationDeleteForm',
         'plugin_id' => $this->getPluginId(),
-      ),
-      array('_config_translation_form_access' => 'TRUE')
+      ],
+      ['_config_translation_form_access' => 'TRUE']
     );
     $this->processRoute($route);
     return $route;
@@ -413,7 +413,7 @@ public function setLangcode($langcode) {
    * {@inheritdoc}
    */
   public function getConfigData() {
-    $config_data = array();
+    $config_data = [];
     foreach ($this->getConfigNames() as $name) {
       $config_data[$name] = $this->configFactory->getEditable($name)->get();
     }
@@ -467,12 +467,12 @@ public function getTypeName() {
    * {@inheritdoc}
    */
   public function getOperations() {
-    return array(
-      'translate' => array(
+    return [
+      'translate' => [
         'title' => $this->t('Translate'),
         'url' => Url::fromRoute($this->getOverviewRouteName(), $this->getOverviewRouteParameters()),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationBlockListBuilder.php b/core/modules/config_translation/src/Controller/ConfigTranslationBlockListBuilder.php
index d0de341..c226dfb 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationBlockListBuilder.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationBlockListBuilder.php
@@ -18,7 +18,7 @@ class ConfigTranslationBlockListBuilder extends ConfigTranslationEntityListBuild
    *
    * @var array
    */
-  protected $themes = array();
+  protected $themes = [];
 
   /**
    * {@inheritdoc}
@@ -58,20 +58,20 @@ public function buildRow(EntityInterface $entity) {
     $theme = $entity->getTheme();
     $plugin_definition = $entity->getPlugin()->getPluginDefinition();
 
-    $row['label'] = array(
+    $row['label'] = [
       'data' => $entity->label(),
       'class' => 'table-filter-text-source',
-    );
+    ];
 
-    $row['theme'] = array(
+    $row['theme'] = [
       'data' => $this->themes[$theme]->info['name'],
       'class' => 'table-filter-text-source',
-    );
+    ];
 
-    $row['category'] = array(
+    $row['category'] = [
       'data' => $plugin_definition['category'],
       'class' => 'table-filter-text-source',
-    );
+    ];
 
     $row['operations']['data'] = $this->buildOperations($entity);
 
@@ -93,7 +93,7 @@ public function buildHeader() {
    * {@inheritdoc}
    */
   public function sortRows($a, $b) {
-    return $this->sortRowsMultiple($a, $b, array('theme', 'category', 'label'));
+    return $this->sortRowsMultiple($a, $b, ['theme', 'category', 'label']);
   }
 
 }
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationController.php b/core/modules/config_translation/src/Controller/ConfigTranslationController.php
index 927a1e2..8d9bfe7 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationController.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationController.php
@@ -134,12 +134,12 @@ public function itemPage(Request $request, RouteMatchInterface $route_match, $pl
     $mapper = $this->configMapperManager->createInstance($plugin_id);
     $mapper->populateFromRouteMatch($route_match);
 
-    $page = array();
-    $page['#title'] = $this->t('Translations for %label', array('%label' => $mapper->getTitle()));
+    $page = [];
+    $page['#title'] = $this->t('Translations for %label', ['%label' => $mapper->getTitle()]);
 
     $languages = $this->languageManager->getLanguages();
     if (count($languages) == 1) {
-      drupal_set_message($this->t('In order to translate configuration, the website must have at least two <a href=":url">languages</a>.', array(':url' => $this->url('entity.configurable_language.collection'))), 'warning');
+      drupal_set_message($this->t('In order to translate configuration, the website must have at least two <a href=":url">languages</a>.', [':url' => $this->url('entity.configurable_language.collection')]), 'warning');
     }
 
     try {
@@ -172,7 +172,7 @@ public function itemPage(Request $request, RouteMatchInterface $route_match, $pl
       // If the language is not configured on the site, create a dummy language
       // object for this listing only to ensure the user gets useful info.
       $language_name = $this->languageManager->getLanguageName($original_langcode);
-      $languages[$original_langcode] = new Language(array('id' => $original_langcode, 'name' => $language_name));
+      $languages[$original_langcode] = new Language(['id' => $original_langcode, 'name' => $language_name]);
     }
 
     // We create a fake request object to pass into
@@ -181,10 +181,10 @@ public function itemPage(Request $request, RouteMatchInterface $route_match, $pl
     // possible nor performant.
     $fake_request = $request->duplicate();
 
-    $page['languages'] = array(
+    $page['languages'] = [
       '#type' => 'table',
-      '#header' => array($this->t('Language'), $this->t('Operations')),
-    );
+      '#header' => [$this->t('Language'), $this->t('Operations')],
+    ];
     foreach ($languages as $language) {
       $langcode = $language->getId();
 
@@ -198,57 +198,57 @@ public function itemPage(Request $request, RouteMatchInterface $route_match, $pl
       // Prepare the language name and the operations depending on whether this
       // is the original language or not.
       if ($langcode == $original_langcode) {
-        $language_name = '<strong>' . $this->t('@language (original)', array('@language' => $language->getName())) . '</strong>';
+        $language_name = '<strong>' . $this->t('@language (original)', ['@language' => $language->getName()]) . '</strong>';
 
         // Check access for the path/route for editing, so we can decide to
         // include a link to edit or not.
         $edit_access = $this->accessManager->checkNamedRoute($mapper->getBaseRouteName(), $route_match->getRawParameters()->all(), $this->account);
 
         // Build list of operations.
-        $operations = array();
+        $operations = [];
         if ($edit_access) {
-          $operations['edit'] = array(
+          $operations['edit'] = [
             'title' => $this->t('Edit'),
             'url' => Url::fromRoute($mapper->getBaseRouteName(), $mapper->getBaseRouteParameters(), ['query' => ['destination' => $mapper->getOverviewPath()]]),
-          );
+          ];
         }
       }
       else {
         $language_name = $language->getName();
 
-        $operations = array();
+        $operations = [];
         // If no translation exists for this language, link to add one.
         if (!$mapper->hasTranslation($language)) {
-          $operations['add'] = array(
+          $operations['add'] = [
             'title' => $this->t('Add'),
             'url' => Url::fromRoute($mapper->getAddRouteName(), $mapper->getAddRouteParameters()),
-          );
+          ];
         }
         else {
           // Otherwise, link to edit the existing translation.
-          $operations['edit'] = array(
+          $operations['edit'] = [
             'title' => $this->t('Edit'),
             'url' => Url::fromRoute($mapper->getEditRouteName(), $mapper->getEditRouteParameters()),
-          );
+          ];
 
-          $operations['delete'] = array(
+          $operations['delete'] = [
             'title' => $this->t('Delete'),
             'url' => Url::fromRoute($mapper->getDeleteRouteName(), $mapper->getDeleteRouteParameters()),
-          );
+          ];
         }
       }
 
-      $page['languages'][$langcode]['language'] = array(
+      $page['languages'][$langcode]['language'] = [
         '#markup' => $language_name,
-      );
+      ];
 
-      $page['languages'][$langcode]['operations'] = array(
+      $page['languages'][$langcode]['operations'] = [
         '#type' => 'operations',
         '#links' => $operations,
         // Even if the mapper contains multiple language codes, the source
         // configuration can still be edited.
         '#access' => ($langcode == $original_langcode) || $operations_access,
-      );
+      ];
     }
     return $page;
   }
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationEntityListBuilder.php b/core/modules/config_translation/src/Controller/ConfigTranslationEntityListBuilder.php
index e86237e..87cb260 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationEntityListBuilder.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationEntityListBuilder.php
@@ -16,10 +16,10 @@ class ConfigTranslationEntityListBuilder extends ConfigEntityListBuilder impleme
    * @return array
    */
   protected function getFilterLabels() {
-    return array(
+    return [
       'placeholder' => $this->t('Enter label'),
       'description' => $this->t('Enter a part of the label or description to filter by.'),
-    );
+    ];
   }
 
   /**
@@ -29,28 +29,28 @@ public function render() {
     $build = parent::render();
     $filter = $this->getFilterLabels();
 
-    usort($build['table']['#rows'], array($this, 'sortRows'));
+    usort($build['table']['#rows'], [$this, 'sortRows']);
 
-    $build['filters'] = array(
+    $build['filters'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('table-filter', 'js-show'),
-      ),
+      '#attributes' => [
+        'class' => ['table-filter', 'js-show'],
+      ],
       '#weight' => -10,
-    );
+    ];
 
-    $build['filters']['text'] = array(
+    $build['filters']['text'] = [
       '#type' => 'search',
       '#title' => $this->t('Search'),
       '#size' => 30,
       '#placeholder' => $filter['placeholder'],
-      '#attributes' => array(
-        'class' => array('table-filter-text'),
+      '#attributes' => [
+        'class' => ['table-filter-text'],
         'data-table' => '.config-translation-entity-list',
         'autocomplete' => 'off',
         'title' => $filter['description'],
-      ),
-    );
+      ],
+    ];
 
     $build['table']['#attributes']['class'][] = 'config-translation-entity-list';
     $build['table']['#weight'] = 0;
@@ -95,7 +95,7 @@ public function getOperations(EntityInterface $entity) {
    * {@inheritdoc}
    */
   public function sortRows($a, $b) {
-    return $this->sortRowsMultiple($a, $b, array('label'));
+    return $this->sortRowsMultiple($a, $b, ['label']);
   }
 
   /**
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php b/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
index 6388c81..566afdb 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationFieldListBuilder.php
@@ -26,14 +26,14 @@ class ConfigTranslationFieldListBuilder extends ConfigTranslationEntityListBuild
    *
    * @var array
    */
-  protected $baseEntityInfo = array();
+  protected $baseEntityInfo = [];
 
   /**
    * The bundle info for the base entity type.
    *
    * @var array
    */
-  protected $baseEntityBundles = array();
+  protected $baseEntityBundles = [];
 
   /**
    * The entity manager.
@@ -99,8 +99,8 @@ public function getFilterLabels() {
     $bundle = $this->baseEntityInfo->getBundleLabel() ?: $this->t('Bundle');
     $bundle = Unicode::strtolower($bundle);
 
-    $info['placeholder'] = $this->t('Enter field or @bundle', array('@bundle' => $bundle));
-    $info['description'] = $this->t('Enter a part of the field or @bundle to filter by.', array('@bundle' => $bundle));
+    $info['placeholder'] = $this->t('Enter field or @bundle', ['@bundle' => $bundle]);
+    $info['description'] = $this->t('Enter a part of the field or @bundle to filter by.', ['@bundle' => $bundle]);
 
     return $info;
   }
@@ -109,17 +109,17 @@ public function getFilterLabels() {
    * {@inheritdoc}
    */
   public function buildRow(EntityInterface $entity) {
-    $row['label'] = array(
+    $row['label'] = [
       'data' => $entity->label(),
       'class' => 'table-filter-text-source',
-    );
+    ];
 
     if ($this->displayBundle()) {
       $bundle = $entity->get('bundle');
-      $row['bundle'] = array(
+      $row['bundle'] = [
         'data' => $this->baseEntityBundles[$bundle]['label'],
         'class' => 'table-filter-text-source',
-      );
+      ];
     }
 
     return $row + parent::buildRow($entity);
@@ -165,7 +165,7 @@ public function displayBundle() {
    * {@inheritdoc}
    */
   public function sortRows($a, $b) {
-    return $this->sortRowsMultiple($a, $b, array('bundle', 'label'));
+    return $this->sortRowsMultiple($a, $b, ['bundle', 'label']);
   }
 
 }
diff --git a/core/modules/config_translation/src/Controller/ConfigTranslationMapperList.php b/core/modules/config_translation/src/Controller/ConfigTranslationMapperList.php
index f47d313..4e510aa 100644
--- a/core/modules/config_translation/src/Controller/ConfigTranslationMapperList.php
+++ b/core/modules/config_translation/src/Controller/ConfigTranslationMapperList.php
@@ -46,13 +46,13 @@ public static function create(ContainerInterface $container) {
    *   Renderable array with config translation mappers.
    */
   public function render() {
-    $build = array(
+    $build = [
       '#type' => 'table',
       '#header' => $this->buildHeader(),
-      '#rows' => array(),
-    );
+      '#rows' => [],
+    ];
 
-    $mappers = array();
+    $mappers = [];
 
     foreach ($this->mappers as $mapper) {
       if ($row = $this->buildRow($mapper)) {
@@ -120,10 +120,10 @@ protected function buildOperations(ConfigMapperInterface $mapper) {
     // Retrieve and sort operations.
     $operations = $mapper->getOperations();
     uasort($operations, 'Drupal\Component\Utility\SortArray::sortByWeightElement');
-    $build = array(
+    $build = [
       '#type' => 'operations',
       '#links' => $operations,
-    );
+    ];
     return $build;
   }
 
diff --git a/core/modules/config_translation/src/Form/ConfigTranslationAddForm.php b/core/modules/config_translation/src/Form/ConfigTranslationAddForm.php
index 3d06202..9edcb8c 100644
--- a/core/modules/config_translation/src/Form/ConfigTranslationAddForm.php
+++ b/core/modules/config_translation/src/Form/ConfigTranslationAddForm.php
@@ -22,10 +22,10 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state, RouteMatchInterface $route_match = NULL, $plugin_id = NULL, $langcode = NULL) {
     $form = parent::buildForm($form, $form_state, $route_match, $plugin_id, $langcode);
-    $form['#title'] = $this->t('Add @language translation for %label', array(
+    $form['#title'] = $this->t('Add @language translation for %label', [
       '%label' => $this->mapper->getTitle(),
       '@language' => $this->language->getName(),
-    ));
+    ]);
     return $form;
   }
 
@@ -34,7 +34,7 @@ public function buildForm(array $form, FormStateInterface $form_state, RouteMatc
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
-    drupal_set_message($this->t('Successfully saved @language translation.', array('@language' => $this->language->getName())));
+    drupal_set_message($this->t('Successfully saved @language translation.', ['@language' => $this->language->getName()]));
   }
 
 }
diff --git a/core/modules/config_translation/src/Form/ConfigTranslationDeleteForm.php b/core/modules/config_translation/src/Form/ConfigTranslationDeleteForm.php
index 089ae27..ca3ad28 100644
--- a/core/modules/config_translation/src/Form/ConfigTranslationDeleteForm.php
+++ b/core/modules/config_translation/src/Form/ConfigTranslationDeleteForm.php
@@ -84,7 +84,7 @@ public static function create(ContainerInterface $container) {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete the @language translation of %label?', array('%label' => $this->mapper->getTitle(), '@language' => $this->language->getName()));
+    return $this->t('Are you sure you want to delete the @language translation of %label?', ['%label' => $this->mapper->getTitle(), '@language' => $this->language->getName()]);
   }
 
   /**
@@ -140,7 +140,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $cache_backend->deleteAll();
     }
 
-    drupal_set_message($this->t('@language translation of %label was deleted', array('%label' => $this->mapper->getTitle(), '@language' => $this->language->getName())));
+    drupal_set_message($this->t('@language translation of %label was deleted', ['%label' => $this->mapper->getTitle(), '@language' => $this->language->getName()]));
 
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
diff --git a/core/modules/config_translation/src/Form/ConfigTranslationEditForm.php b/core/modules/config_translation/src/Form/ConfigTranslationEditForm.php
index 5af4244..86a8f1c 100644
--- a/core/modules/config_translation/src/Form/ConfigTranslationEditForm.php
+++ b/core/modules/config_translation/src/Form/ConfigTranslationEditForm.php
@@ -22,10 +22,10 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state, RouteMatchInterface $route_match = NULL, $plugin_id = NULL, $langcode = NULL) {
     $form = parent::buildForm($form, $form_state, $route_match, $plugin_id, $langcode);
-    $form['#title'] = $this->t('Edit @language translation for %label', array(
+    $form['#title'] = $this->t('Edit @language translation for %label', [
       '%label' => $this->mapper->getTitle(),
       '@language' => $this->language->getName(),
-    ));
+    ]);
     return $form;
   }
 
@@ -34,7 +34,7 @@ public function buildForm(array $form, FormStateInterface $form_state, RouteMatc
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
-    drupal_set_message($this->t('Successfully updated @language translation.', array('@language' => $this->language->getName())));
+    drupal_set_message($this->t('Successfully updated @language translation.', ['@language' => $this->language->getName()]));
   }
 
 }
diff --git a/core/modules/config_translation/src/Form/ConfigTranslationFormBase.php b/core/modules/config_translation/src/Form/ConfigTranslationFormBase.php
index 12e0216..82f01d7 100644
--- a/core/modules/config_translation/src/Form/ConfigTranslationFormBase.php
+++ b/core/modules/config_translation/src/Form/ConfigTranslationFormBase.php
@@ -65,7 +65,7 @@
    *
    * @var array
    */
-  protected $baseConfigData = array();
+  protected $baseConfigData = [];
 
   /**
    * Constructs a ConfigTranslationFormBase.
@@ -164,26 +164,26 @@ public function buildForm(array $form, FormStateInterface $form_state, RouteMatc
     // Even though this is a nested form, we do not set #tree to TRUE because
     // the form value structure is generated by using #parents for each element.
     // @see \Drupal\config_translation\FormElement\FormElementBase::getElements()
-    $form['config_names'] = array('#type' => 'container');
+    $form['config_names'] = ['#type' => 'container'];
     foreach ($this->mapper->getConfigNames() as $name) {
-      $form['config_names'][$name] = array('#type' => 'container');
+      $form['config_names'][$name] = ['#type' => 'container'];
 
       $schema = $this->typedConfigManager->get($name);
       $source_config = $this->baseConfigData[$name];
       $translation_config = $this->configFactory()->get($name)->get();
 
       if ($form_element = $this->createFormElement($schema)) {
-        $parents = array('config_names', $name);
+        $parents = ['config_names', $name];
         $form['config_names'][$name] += $form_element->getTranslationBuild($this->sourceLanguage, $this->language, $source_config, $translation_config, $parents);
       }
     }
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save translation'),
       '#button_type' => 'primary',
-    );
+    ];
 
     // Set the configuration language back.
     $this->languageManager->setConfigOverrideLanguage($original_language);
@@ -195,7 +195,7 @@ public function buildForm(array $form, FormStateInterface $form_state, RouteMatc
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $form_values = $form_state->getValue(array('translation', 'config_names'));
+    $form_values = $form_state->getValue(['translation', 'config_names']);
 
     foreach ($this->mapper->getConfigNames() as $name) {
       $schema = $this->typedConfigManager->get($name);
diff --git a/core/modules/config_translation/src/FormElement/DateFormat.php b/core/modules/config_translation/src/FormElement/DateFormat.php
index 4a4b995..d0ae033 100644
--- a/core/modules/config_translation/src/FormElement/DateFormat.php
+++ b/core/modules/config_translation/src/FormElement/DateFormat.php
@@ -16,7 +16,7 @@ public function getTranslationElement(LanguageInterface $translation_language, $
     /** @var \Drupal\Core\Datetime\DateFormatterInterface $date_formatter */
     $date_formatter = \Drupal::service('date.formatter');
     $description = $this->t('A user-defined date format. See the <a href="http://php.net/manual/function.date.php">PHP manual</a> for available options.');
-    $format = $this->t('Displayed as %date_format', array('%date_format' => $date_formatter->format(REQUEST_TIME, 'custom', $translation_config)));
+    $format = $this->t('Displayed as %date_format', ['%date_format' => $date_formatter->format(REQUEST_TIME, 'custom', $translation_config)]);
 
     return [
       '#type' => 'textfield',
diff --git a/core/modules/config_translation/src/FormElement/FormElementBase.php b/core/modules/config_translation/src/FormElement/FormElementBase.php
index 2b5c8f4..3c97daf 100644
--- a/core/modules/config_translation/src/FormElement/FormElementBase.php
+++ b/core/modules/config_translation/src/FormElement/FormElementBase.php
@@ -64,8 +64,8 @@ public function getTranslationBuild(LanguageInterface $source_language, Language
     $build['source'] = $this->getSourceElement($source_language, $source_config);
     $build['translation'] = $this->getTranslationElement($translation_language, $source_config, $translation_config);
 
-    $build['source']['#parents'] = array_merge(array('source'), $parents);
-    $build['translation']['#parents'] = array_merge(array('translation'), $parents);
+    $build['source']['#parents'] = array_merge(['source'], $parents);
+    $build['translation']['#parents'] = array_merge(['translation'], $parents);
     return $build;
   }
 
@@ -93,15 +93,15 @@ protected function getSourceElement(LanguageInterface $source_language, $source_
       $value = $this->t('(Empty)');
     }
 
-    return array(
+    return [
       '#type' => 'item',
-      '#title' => $this->t('@label <span class="visually-hidden">(@source_language)</span>', array(
+      '#title' => $this->t('@label <span class="visually-hidden">(@source_language)</span>', [
         // Labels originate from configuration schema and are translatable.
         '@label' => $this->t($this->definition->getLabel()),
         '@source_language' => $source_language->getName(),
-      )),
+      ]),
       '#markup' => $value,
-    );
+    ];
   }
 
   /**
@@ -157,15 +157,15 @@ protected function getSourceElement(LanguageInterface $source_language, $source_
    */
   protected function getTranslationElement(LanguageInterface $translation_language, $source_config, $translation_config) {
     // Add basic properties that apply to all form elements.
-    return array(
-      '#title' => $this->t('@label <span class="visually-hidden">(@source_language)</span>', array(
+    return [
+      '#title' => $this->t('@label <span class="visually-hidden">(@source_language)</span>', [
         // Labels originate from configuration schema and are translatable.
         '@label' => $this->t($this->definition->getLabel()),
         '@source_language' => $translation_language->getName(),
-      )),
+      ]),
       '#default_value' => $translation_config,
-      '#attributes' => array('lang' => $translation_language->getId()),
-    );
+      '#attributes' => ['lang' => $translation_language->getId()],
+    ];
   }
 
   /**
diff --git a/core/modules/config_translation/src/FormElement/ListElement.php b/core/modules/config_translation/src/FormElement/ListElement.php
index e956536..1ea4523 100644
--- a/core/modules/config_translation/src/FormElement/ListElement.php
+++ b/core/modules/config_translation/src/FormElement/ListElement.php
@@ -46,14 +46,14 @@ public static function create(TypedDataInterface $schema) {
    * {@inheritdoc}
    */
   public function getTranslationBuild(LanguageInterface $source_language, LanguageInterface $translation_language, $source_config, $translation_config, array $parents, $base_key = NULL) {
-    $build = array();
+    $build = [];
     foreach ($this->element as $key => $element) {
-      $sub_build = array();
+      $sub_build = [];
       $element_key = isset($base_key) ? "$base_key.$key" : $key;
       $definition = $element->getDataDefinition();
 
       if ($form_element = ConfigTranslationFormBase::createFormElement($element)) {
-        $element_parents = array_merge($parents, array($key));
+        $element_parents = array_merge($parents, [$key]);
         $sub_build += $form_element->getTranslationBuild($source_language, $translation_language, $source_config[$key], $translation_config[$key], $element_parents, $element_key);
 
         if (empty($sub_build)) {
@@ -62,13 +62,13 @@ public function getTranslationBuild(LanguageInterface $source_language, Language
 
         // Build the sub-structure and include it with a wrapper in the form if
         // there are any translatable elements there.
-        $build[$key] = array();
+        $build[$key] = [];
         if ($element instanceof TraversableTypedDataInterface) {
-          $build[$key] = array(
+          $build[$key] = [
             '#type' => 'details',
             '#title' => $this->getGroupTitle($definition, $sub_build),
             '#open' => empty($base_key),
-          );
+          ];
         }
         $build[$key] += $sub_build;
       }
diff --git a/core/modules/config_translation/src/FormElement/PluralVariants.php b/core/modules/config_translation/src/FormElement/PluralVariants.php
index 624ff77..aabca8a 100644
--- a/core/modules/config_translation/src/FormElement/PluralVariants.php
+++ b/core/modules/config_translation/src/FormElement/PluralVariants.php
@@ -18,25 +18,25 @@ class PluralVariants extends FormElementBase {
   protected function getSourceElement(LanguageInterface $source_language, $source_config) {
     $plurals = $this->getNumberOfPlurals($source_language->getId());
     $values = explode(LOCALE_PLURAL_DELIMITER, $source_config);
-    $element = array(
+    $element = [
       '#type' => 'fieldset',
-      '#title' => SafeMarkup::format('@label <span class="visually-hidden">(@source_language)</span>', array(
+      '#title' => SafeMarkup::format('@label <span class="visually-hidden">(@source_language)</span>', [
         // Labels originate from configuration schema and are translatable.
         '@label' => $this->t($this->definition->getLabel()),
         '@source_language' => $source_language->getName(),
-      )),
+      ]),
       '#tree' => TRUE,
-    );
+    ];
     for ($i = 0; $i < $plurals; $i++) {
-      $element[$i] = array(
+      $element[$i] = [
         '#type' => 'item',
         // @todo Should use better labels https://www.drupal.org/node/2499639
         '#title' => $i == 0 ? $this->t('Singular form') : $this->formatPlural($i, 'First plural form', '@count. plural form'),
-        '#markup' => SafeMarkup::format('<span lang="@langcode">@value</span>', array(
+        '#markup' => SafeMarkup::format('<span lang="@langcode">@value</span>', [
           '@langcode' => $source_language->getId(),
           '@value' => isset($values[$i]) ? $values[$i] : $this->t('(Empty)'),
-        )),
-      );
+        ]),
+      ];
     }
     return $element;
   }
@@ -47,23 +47,23 @@ protected function getSourceElement(LanguageInterface $source_language, $source_
   protected function getTranslationElement(LanguageInterface $translation_language, $source_config, $translation_config) {
     $plurals = $this->getNumberOfPlurals($translation_language->getId());
     $values = explode(LOCALE_PLURAL_DELIMITER, $translation_config);
-    $element = array(
+    $element = [
       '#type' => 'fieldset',
-      '#title' => SafeMarkup::format('@label <span class="visually-hidden">(@translation_language)</span>', array(
+      '#title' => SafeMarkup::format('@label <span class="visually-hidden">(@translation_language)</span>', [
         // Labels originate from configuration schema and are translatable.
         '@label' => $this->t($this->definition->getLabel()),
         '@translation_language' => $translation_language->getName(),
-      )),
+      ]),
       '#tree' => TRUE,
-    );
+    ];
     for ($i = 0; $i < $plurals; $i++) {
-      $element[$i] = array(
+      $element[$i] = [
         '#type' => 'textfield',
         // @todo Should use better labels https://www.drupal.org/node/2499639
         '#title' => $i == 0 ? $this->t('Singular form') : $this->formatPlural($i, 'First plural form', '@count. plural form'),
         '#default_value' => isset($values[$i]) ? $values[$i] : '',
-        '#attributes' => array('lang' => $translation_language->getId()),
-      );
+        '#attributes' => ['lang' => $translation_language->getId()],
+      ];
     }
     return $element;
   }
diff --git a/core/modules/config_translation/src/FormElement/TextFormat.php b/core/modules/config_translation/src/FormElement/TextFormat.php
index e9d56f2..f9f6bc6 100644
--- a/core/modules/config_translation/src/FormElement/TextFormat.php
+++ b/core/modules/config_translation/src/FormElement/TextFormat.php
@@ -16,25 +16,25 @@ public function getSourceElement(LanguageInterface $source_language, $source_con
     // Instead of the formatted output show a disabled textarea. This allows for
     // easier side-by-side comparison, especially with formats with text
     // editors.
-    return $this->getTranslationElement($source_language, $source_config, $source_config) + array(
+    return $this->getTranslationElement($source_language, $source_config, $source_config) + [
       '#value' => $source_config['value'],
       '#disabled' => TRUE,
       '#allow_focus' => TRUE,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getTranslationElement(LanguageInterface $translation_language, $source_config, $translation_config) {
-    return array(
+    return [
       '#type' => 'text_format',
       // Override the #default_value property from the parent class.
       '#default_value' => $translation_config['value'],
       '#format' => $translation_config['format'],
       // @see \Drupal\config_translation\Element\FormElementBase::getTranslationElement()
-      '#allowed_formats' => array($source_config['format']),
-    ) + parent::getTranslationElement($translation_language, $source_config, $translation_config);
+      '#allowed_formats' => [$source_config['format']],
+    ] + parent::getTranslationElement($translation_language, $source_config, $translation_config);
   }
 
 }
diff --git a/core/modules/config_translation/src/FormElement/Textarea.php b/core/modules/config_translation/src/FormElement/Textarea.php
index 174a70c..ff9e4cd 100644
--- a/core/modules/config_translation/src/FormElement/Textarea.php
+++ b/core/modules/config_translation/src/FormElement/Textarea.php
@@ -18,10 +18,10 @@ public function getTranslationElement(LanguageInterface $translation_language, $
     $rows_newlines = substr_count($translation_config, "\n" ) + 1;
     $rows = max($rows_words, $rows_newlines);
 
-    return array(
+    return [
       '#type' => 'textarea',
       '#rows' => $rows,
-    ) + parent::getTranslationElement($translation_language, $source_config, $translation_config);
+    ] + parent::getTranslationElement($translation_language, $source_config, $translation_config);
   }
 
 }
diff --git a/core/modules/config_translation/src/FormElement/Textfield.php b/core/modules/config_translation/src/FormElement/Textfield.php
index fa0c869..cff1037 100644
--- a/core/modules/config_translation/src/FormElement/Textfield.php
+++ b/core/modules/config_translation/src/FormElement/Textfield.php
@@ -13,9 +13,9 @@ class Textfield extends FormElementBase {
    * {@inheritdoc}
    */
   public function getTranslationElement(LanguageInterface $translation_language, $source_config, $translation_config) {
-    return array(
+    return [
       '#type' => 'textfield',
-    ) + parent::getTranslationElement($translation_language, $source_config, $translation_config);
+    ] + parent::getTranslationElement($translation_language, $source_config, $translation_config);
   }
 
 }
diff --git a/core/modules/config_translation/src/Plugin/Menu/ContextualLink/ConfigTranslationContextualLink.php b/core/modules/config_translation/src/Plugin/Menu/ContextualLink/ConfigTranslationContextualLink.php
index fb2bf24..63145a5 100644
--- a/core/modules/config_translation/src/Plugin/Menu/ContextualLink/ConfigTranslationContextualLink.php
+++ b/core/modules/config_translation/src/Plugin/Menu/ContextualLink/ConfigTranslationContextualLink.php
@@ -28,7 +28,7 @@ public function getTitle() {
     // storing the title on the plugin definition for the link) because it
     // contains translated parts that we need in the runtime language.
     $type_name = Unicode::strtolower($this->mapperManager()->createInstance($this->pluginDefinition['config_translation_plugin_id'])->getTypeLabel());
-    return $this->t('Translate @type_name', array('@type_name' => $type_name));
+    return $this->t('Translate @type_name', ['@type_name' => $type_name]);
   }
 
   /**
diff --git a/core/modules/config_translation/src/Plugin/Menu/LocalTask/ConfigTranslationLocalTask.php b/core/modules/config_translation/src/Plugin/Menu/LocalTask/ConfigTranslationLocalTask.php
index 63605c6..5a88d91 100644
--- a/core/modules/config_translation/src/Plugin/Menu/LocalTask/ConfigTranslationLocalTask.php
+++ b/core/modules/config_translation/src/Plugin/Menu/LocalTask/ConfigTranslationLocalTask.php
@@ -28,7 +28,7 @@ public function getTitle() {
     // storing the title on the plugin definition for the link) because
     // it contains translated parts that we need in the runtime language.
     $type_name = Unicode::strtolower($this->mapperManager()->createInstance($this->pluginDefinition['config_translation_plugin_id'])->getTypeLabel());
-    return $this->t('Translate @type_name', array('@type_name' => $type_name));
+    return $this->t('Translate @type_name', ['@type_name' => $type_name]);
   }
 
   /**
diff --git a/core/modules/config_translation/src/Plugin/migrate/source/d6/I18nProfileField.php b/core/modules/config_translation/src/Plugin/migrate/source/d6/I18nProfileField.php
index ecdffd6..2989f96 100644
--- a/core/modules/config_translation/src/Plugin/migrate/source/d6/I18nProfileField.php
+++ b/core/modules/config_translation/src/Plugin/migrate/source/d6/I18nProfileField.php
@@ -31,12 +31,12 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'fid' => $this->t('Profile field ID.'),
       'lid' => $this->t('Locales target language ID.'),
       'language' => $this->t('Language for this field.'),
       'translation' => $this->t('Translation of either the title or explanation.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/config_translation/src/Routing/RouteSubscriber.php b/core/modules/config_translation/src/Routing/RouteSubscriber.php
index b20c13f..10044aa 100644
--- a/core/modules/config_translation/src/Routing/RouteSubscriber.php
+++ b/core/modules/config_translation/src/Routing/RouteSubscriber.php
@@ -48,7 +48,7 @@ protected function alterRoutes(RouteCollection $collection) {
    */
   public static function getSubscribedEvents() {
     // Come after field_ui.
-    $events[RoutingEvents::ALTER] = array('onAlterRoutes', -110);
+    $events[RoutingEvents::ALTER] = ['onAlterRoutes', -110];
     return $events;
   }
 
diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationFormTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationFormTest.php
index 648f047..387d686 100644
--- a/core/modules/config_translation/src/Tests/ConfigTranslationFormTest.php
+++ b/core/modules/config_translation/src/Tests/ConfigTranslationFormTest.php
@@ -17,7 +17,7 @@ class ConfigTranslationFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('config_translation', 'config_translation_test', 'editor');
+  public static $modules = ['config_translation', 'config_translation_test', 'editor'];
 
   /**
    * The plugin ID of the mapper to test.
@@ -40,7 +40,7 @@ protected function setUp() {
     $this->pluginId = key($definitions);
 
     $this->langcode = 'xx';
-    ConfigurableLanguage::create(array('id' => $this->langcode, 'label' => 'XX'))->save();
+    ConfigurableLanguage::create(['id' => $this->langcode, 'label' => 'XX'])->save();
 
     \Drupal::state()->set('config_translation_test_alter_form_alter', TRUE);
   }
diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationOverviewTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationOverviewTest.php
index e7c58fd..d593a69 100644
--- a/core/modules/config_translation/src/Tests/ConfigTranslationOverviewTest.php
+++ b/core/modules/config_translation/src/Tests/ConfigTranslationOverviewTest.php
@@ -35,7 +35,7 @@ class ConfigTranslationOverviewTest extends WebTestBase {
    *
    * @var array
    */
-  protected $langcodes = array('fr', 'ta');
+  protected $langcodes = ['fr', 'ta'];
 
   /**
    * String translation storage object.
@@ -46,7 +46,7 @@ class ConfigTranslationOverviewTest extends WebTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $permissions = array(
+    $permissions = [
       'translate configuration',
       'administer languages',
       'administer site configuration',
@@ -54,7 +54,7 @@ protected function setUp() {
       'access site-wide contact form',
       'access contextual links',
       'administer views',
-    );
+    ];
     // Create and log in user.
     $this->drupalLogin($this->drupalCreateUser($permissions));
 
@@ -83,17 +83,17 @@ public function testMapperListPage() {
       }
     }
 
-    $labels = array(
+    $labels = [
       '&$nxd~i0',
       'some "label" with quotes',
       $this->randomString(),
-    );
+    ];
 
     foreach ($labels as $label) {
-      $test_entity = entity_create('config_test', array(
+      $test_entity = entity_create('config_test', [
         'id' => $this->randomMachineName(),
         'label' => $label,
-      ));
+      ]);
       $test_entity->save();
 
       $base_url = 'admin/structure/config_test/manage/' . $test_entity->id();
@@ -119,7 +119,7 @@ public function testMapperListPage() {
       $this->assertRaw('<th>' . t('Language') . '</th>');
 
       $this->drupalGet($base_url);
-      $this->assertLink(t('Translate @title', array('@title' => $entity_type->getLowercaseLabel())));
+      $this->assertLink(t('Translate @title', ['@title' => $entity_type->getLowercaseLabel()]));
     }
   }
 
@@ -154,10 +154,10 @@ public function testListingPageWithOverrides() {
     $config_test_storage = $this->container->get('entity.manager')->getStorage('config_test');
 
     // Set up an override.
-    $settings['config']['config_test.dynamic.dotted.default']['label'] = (object) array(
+    $settings['config']['config_test.dynamic.dotted.default']['label'] = (object) [
       'value' => $overridden_label,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
     // Test that the overridden label is loaded with the entity.
diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
index 5018efa..7ec350b 100644
--- a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
+++ b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php
@@ -48,7 +48,7 @@ class ConfigTranslationUiTest extends WebTestBase {
    *
    * @var array
    */
-  protected $langcodes = array('fr', 'ta');
+  protected $langcodes = ['fr', 'ta'];
 
   /**
    * Administrator user for tests.
@@ -157,13 +157,13 @@ public function testSiteInformationTranslationUi() {
     $this->assertRaw($site_slogan);
 
     // Update site name and slogan for French.
-    $edit = array(
+    $edit = [
       'translation[config_names][system.site][name]' => $fr_site_name,
       'translation[config_names][system.site][slogan]' => $fr_site_slogan,
-    );
+    ];
 
     $this->drupalPostForm("$translation_base_url/fr/add", $edit, t('Save translation'));
-    $this->assertRaw(t('Successfully saved @language translation.', array('@language' => 'French')));
+    $this->assertRaw(t('Successfully saved @language translation.', ['@language' => 'French']));
 
     // Check for edit, delete links (and no 'add' link) for French language.
     $this->assertNoLinkByHref("$translation_base_url/fr/add");
@@ -189,18 +189,18 @@ public function testSiteInformationTranslationUi() {
     $this->assertText($site_slogan);
 
     // Translate 'Site name' label in French.
-    $search = array(
+    $search = [
       'string' => $site_name_label,
       'langcode' => 'fr',
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $fr_site_name_label,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Ensure that the label is in French (and not in English).
@@ -234,10 +234,10 @@ public function testSourceValueDuplicateSave() {
     $this->drupalGet($translation_base_url);
 
     // Case 1: Update new value for site slogan and site name.
-    $edit = array(
+    $edit = [
       'translation[config_names][system.site][name]' => 'FR ' . $site_name,
       'translation[config_names][system.site][slogan]' => 'FR ' . $site_slogan,
-    );
+    ];
     // First time, no overrides, so just Add link.
     $this->drupalPostForm("$translation_base_url/fr/add", $edit, t('Save translation'));
 
@@ -245,10 +245,10 @@ public function testSourceValueDuplicateSave() {
     $override = \Drupal::languageManager()->getLanguageConfigOverride('fr', 'system.site');
 
     // Expect both name and slogan in language specific file.
-    $expected = array(
+    $expected = [
       'name' => 'FR ' . $site_name,
       'slogan' => 'FR ' . $site_slogan,
-    );
+    ];
     $this->assertEqual($expected, $override->get());
 
     // Case 2: Update new value for site slogan and default value for site name.
@@ -257,12 +257,12 @@ public function testSourceValueDuplicateSave() {
     // translation form into the actual site name and slogan.
     $this->assertNoText('FR ' . $site_name);
     $this->assertNoText('FR ' . $site_slogan);
-    $edit = array(
+    $edit = [
       'translation[config_names][system.site][name]' => $site_name,
       'translation[config_names][system.site][slogan]' => 'FR ' . $site_slogan,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save translation'));
-    $this->assertRaw(t('Successfully updated @language translation.', array('@language' => 'French')));
+    $this->assertRaw(t('Successfully updated @language translation.', ['@language' => 'French']));
     $override = \Drupal::languageManager()->getLanguageConfigOverride('fr', 'system.site');
 
     // Expect only slogan in language specific file.
@@ -272,10 +272,10 @@ public function testSourceValueDuplicateSave() {
     // Case 3: Keep default value for site name and slogan.
     $this->drupalGet("$translation_base_url/fr/edit");
     $this->assertNoText('FR ' . $site_slogan);
-    $edit = array(
+    $edit = [
       'translation[config_names][system.site][name]' => $site_name,
       'translation[config_names][system.site][slogan]' => $site_slogan,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save translation'));
     $override = \Drupal::languageManager()->getLanguageConfigOverride('fr', 'system.site');
 
@@ -310,11 +310,11 @@ public function testContactConfigEntityTranslation() {
 
     // Save default language configuration.
     $label = 'Send your feedback';
-    $edit = array(
+    $edit = [
       'label' => $label,
       'recipients' => 'sales@example.com,support@example.com',
       'reply' => 'Thank you for your mail',
-    );
+    ];
     $this->drupalPostForm('admin/structure/contact/manage/feedback', $edit, t('Save'));
 
     // Ensure translation link is present.
@@ -323,7 +323,7 @@ public function testContactConfigEntityTranslation() {
 
     // Make sure translate tab is present.
     $this->drupalGet('admin/structure/contact/manage/feedback');
-    $this->assertLink(t('Translate @type', array('@type' => 'contact form')));
+    $this->assertLink(t('Translate @type', ['@type' => 'contact form']));
 
     // Visit the form to confirm the changes.
     $this->drupalGet('contact/feedback');
@@ -331,7 +331,7 @@ public function testContactConfigEntityTranslation() {
 
     foreach ($this->langcodes as $langcode) {
       $this->drupalGet($translation_base_url);
-      $this->assertLink(t('Translate @type', array('@type' => 'contact form')));
+      $this->assertLink(t('Translate @type', ['@type' => 'contact form']));
 
       // 'Add' link should be present for $langcode translation.
       $translation_page_url = "$translation_base_url/$langcode/add";
@@ -342,20 +342,20 @@ public function testContactConfigEntityTranslation() {
       $this->assertText($label);
 
       // Update translatable fields.
-      $edit = array(
+      $edit = [
         'translation[config_names][contact.form.feedback][label]' => 'Website feedback - ' . $langcode,
         'translation[config_names][contact.form.feedback][reply]' => 'Thank you for your mail - ' . $langcode,
-      );
+      ];
 
       // Save language specific version of form.
       $this->drupalPostForm($translation_page_url, $edit, t('Save translation'));
 
       // Expect translated values in language specific file.
       $override = \Drupal::languageManager()->getLanguageConfigOverride($langcode, 'contact.form.feedback');
-      $expected = array(
+      $expected = [
         'label' => 'Website feedback - ' . $langcode,
         'reply' => 'Thank you for your mail - ' . $langcode,
-      );
+      ];
       $this->assertEqual($expected, $override->get());
 
       // Check for edit, delete links (and no 'add' link) for $langcode.
@@ -368,10 +368,10 @@ public function testContactConfigEntityTranslation() {
       $this->assertText('Website feedback - ' . $langcode);
 
       // Submit feedback.
-      $edit = array(
+      $edit = [
         'subject[0][value]' => 'Test subject',
         'message[0][value]' => 'Test message',
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Send message'));
     }
 
@@ -379,7 +379,7 @@ public function testContactConfigEntityTranslation() {
     // original text all appear in any translated page on the translation
     // forms.
     foreach ($this->langcodes as $langcode) {
-      $langcode_prefixes = array_merge(array(''), $this->langcodes);
+      $langcode_prefixes = array_merge([''], $this->langcodes);
       foreach ($langcode_prefixes as $langcode_prefix) {
         $this->drupalGet(ltrim("$langcode_prefix/$translation_base_url/$langcode/edit", '/'));
         $this->assertFieldByName('translation[config_names][contact.form.feedback][label]', 'Website feedback - ' . $langcode);
@@ -400,14 +400,14 @@ public function testContactConfigEntityTranslation() {
 
     // Test that delete links work and operations perform properly.
     foreach ($this->langcodes as $langcode) {
-      $replacements = array('%label' => t('@label @entity_type', array('@label' => $label, '@entity_type' => Unicode::strtolower(t('Contact form')))), '@language' => \Drupal::languageManager()->getLanguage($langcode)->getName());
+      $replacements = ['%label' => t('@label @entity_type', ['@label' => $label, '@entity_type' => Unicode::strtolower(t('Contact form'))]), '@language' => \Drupal::languageManager()->getLanguage($langcode)->getName()];
 
       $this->drupalGet("$translation_base_url/$langcode/delete");
       $this->assertRaw(t('Are you sure you want to delete the @language translation of %label?', $replacements));
       // Assert link back to list page to cancel delete is present.
       $this->assertLinkByHref($translation_base_url);
 
-      $this->drupalPostForm(NULL, array(), t('Delete'));
+      $this->drupalPostForm(NULL, [], t('Delete'));
       $this->assertRaw(t('@language translation of %label was deleted', $replacements));
       $this->assertLinkByHref("$translation_base_url/$langcode/add");
       $this->assertNoLinkByHref("translation_base_url/$langcode/edit");
@@ -445,18 +445,18 @@ public function testDateFormatTranslation() {
     $this->assertLinkByHref('admin/config/regional/date-time/formats/manage/medium');
 
     // Save default language configuration for a new format.
-    $edit = array(
+    $edit = [
       'label' => 'Custom medium date',
       'id' => 'custom_medium',
       'date_format_pattern' => 'Y. m. d. H:i',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
 
     // Test translating a default shipped format and our custom format.
-    $formats = array(
+    $formats = [
       'medium' => 'Default medium date',
       'custom_medium' => 'Custom medium date',
-    );
+    ];
     foreach ($formats as $id => $label) {
       $translation_base_url = 'admin/config/regional/date-time/formats/manage/' . $id . '/translate';
 
@@ -474,20 +474,20 @@ public function testDateFormatTranslation() {
       $this->assertRaw('core/modules/system/js/system.date.js');
 
       // Update translatable fields.
-      $edit = array(
+      $edit = [
         'translation[config_names][core.date_format.' . $id . '][label]' => $id . ' - FR',
         'translation[config_names][core.date_format.' . $id . '][pattern]' => 'D',
-      );
+      ];
 
       // Save language specific version of form.
       $this->drupalPostForm($translation_page_url, $edit, t('Save translation'));
 
       // Get translation and check we've got the right value.
       $override = \Drupal::languageManager()->getLanguageConfigOverride('fr', 'core.date_format.' . $id);
-      $expected = array(
+      $expected = [
         'label' => $id . ' - FR',
         'pattern' => 'D',
-      );
+      ];
       $this->assertEqual($expected, $override->get());
 
       // Formatting the date 8 / 27 / 1985 @ 13:37 EST with pattern D should
@@ -508,18 +508,18 @@ public function testAccountSettingsConfigurationTranslation() {
     $this->drupalLogin($this->adminUser);
 
     $this->drupalGet('admin/config/people/accounts');
-    $this->assertLink(t('Translate @type', array('@type' => 'account settings')));
+    $this->assertLink(t('Translate @type', ['@type' => 'account settings']));
 
     $this->drupalGet('admin/config/people/accounts/translate');
-    $this->assertLink(t('Translate @type', array('@type' => 'account settings')));
+    $this->assertLink(t('Translate @type', ['@type' => 'account settings']));
     $this->assertLinkByHref('admin/config/people/accounts/translate/fr/add');
 
     // Update account settings fields for French.
-    $edit = array(
+    $edit = [
       'translation[config_names][user.settings][anonymous]' => 'Anonyme',
       'translation[config_names][user.mail][status_blocked][subject]' => 'Testing, your account is blocked.',
       'translation[config_names][user.mail][status_blocked][body]' => 'Testing account blocked body.',
-    );
+    ];
 
     $this->drupalPostForm('admin/config/people/accounts/translate/fr/add', $edit, t('Save translation'));
 
@@ -588,7 +588,7 @@ public function testViewsTranslationUI() {
     $this->drupalLogin($this->adminUser);
 
     // Assert contextual link related to views.
-    $ids = array('entity.view.edit_form:view=frontpage:location=page&name=frontpage&display_id=page_1');
+    $ids = ['entity.view.edit_form:view=frontpage:location=page&name=frontpage&display_id=page_1'];
     $response = $this->renderContextualLinks($ids, 'node');
     $this->assertResponse(200);
     $json = Json::decode($response);
@@ -611,14 +611,14 @@ public function testViewsTranslationUI() {
     $this->assertRaw($human_readable_name);
 
     // Update Views Fields for French.
-    $edit = array(
+    $edit = [
       'translation[config_names][views.view.frontpage][description]' => $description . " FR",
       'translation[config_names][views.view.frontpage][label]' => $human_readable_name . " FR",
       'translation[config_names][views.view.frontpage][display][default][display_title]' => $display_settings_master . " FR",
       'translation[config_names][views.view.frontpage][display][default][display_options][title]' => $display_options_master . " FR",
-    );
+    ];
     $this->drupalPostForm("$translation_base_url/fr/add", $edit, t('Save translation'));
-    $this->assertRaw(t('Successfully saved @language translation.', array('@language' => 'French')));
+    $this->assertRaw(t('Successfully saved @language translation.', ['@language' => 'French']));
 
     // Check for edit, delete links (and no 'add' link) for French language.
     $this->assertNoLinkByHref("$translation_base_url/fr/add");
@@ -640,20 +640,20 @@ public function testPluralConfigStringsSourceElements() {
     $this->drupalLogin($this->adminUser);
 
     // Languages to test, with various number of plural forms.
-    $languages = array(
-      'vi' => array('plurals' => 1, 'expected' => array(TRUE, FALSE, FALSE, FALSE)),
-      'fr' => array('plurals' => 2, 'expected' => array(TRUE, TRUE, FALSE, FALSE)),
-      'sl' => array('plurals' => 4, 'expected' => array(TRUE, TRUE, TRUE, TRUE)),
-    );
+    $languages = [
+      'vi' => ['plurals' => 1, 'expected' => [TRUE, FALSE, FALSE, FALSE]],
+      'fr' => ['plurals' => 2, 'expected' => [TRUE, TRUE, FALSE, FALSE]],
+      'sl' => ['plurals' => 4, 'expected' => [TRUE, TRUE, TRUE, TRUE]],
+    ];
 
     foreach ($languages as $langcode => $data) {
       // Import a .po file to add a new language with a given number of plural forms
       $name = \Drupal::service('file_system')->tempnam('temporary://', $langcode . '_') . '.po';
       file_put_contents($name, $this->getPoFile($data['plurals']));
-      $this->drupalPostForm('admin/config/regional/translate/import', array(
+      $this->drupalPostForm('admin/config/regional/translate/import', [
         'langcode' => $langcode,
         'files[file]' => $name,
-      ), t('Import'));
+      ], t('Import'));
 
       // Change the config langcode of the 'files' view.
       $config = \Drupal::service('config.factory')->getEditable('views.view.files');
@@ -686,10 +686,10 @@ public function testPluralConfigStrings() {
     // This will also automatically add the 'sl' language.
     $name = \Drupal::service('file_system')->tempnam('temporary://', "sl_") . '.po';
     file_put_contents($name, $this->getPoFile(4));
-    $this->drupalPostForm('admin/config/regional/translate/import', array(
+    $this->drupalPostForm('admin/config/regional/translate/import', [
       'langcode' => 'sl',
       'files[file]' => $name,
-    ), t('Import'));
+    ], t('Import'));
 
     // Translate the files view, as this one uses numeric formatters.
     $description = 'Singular form';
@@ -817,12 +817,12 @@ public function testLocaleDBStorage() {
 
     $langcode = 'xx';
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => Language::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Make sure there is no translation stored in locale storage before edit.
@@ -830,9 +830,9 @@ public function testLocaleDBStorage() {
     $this->assertTrue(empty($translation));
 
     // Add custom translation.
-    $edit = array(
+    $edit = [
       'translation[config_names][user.settings][anonymous]' => 'Anonyme',
-    );
+    ];
     $this->drupalPostForm('admin/config/people/accounts/translate/fr/add', $edit, t('Save translation'));
 
     // Make sure translation stored in locale storage after saved language
@@ -841,9 +841,9 @@ public function testLocaleDBStorage() {
     $this->assertEqual('Anonyme', $translation->getString());
 
     // revert custom translations to base translation.
-    $edit = array(
+    $edit = [
       'translation[config_names][user.settings][anonymous]' => 'Anonymous',
-    );
+    ];
     $this->drupalPostForm('admin/config/people/accounts/translate/fr/edit', $edit, t('Save translation'));
 
     // Make sure there is no translation stored in locale storage after revert.
@@ -858,19 +858,19 @@ public function testSingleLanguageUI() {
     $this->drupalLogin($this->adminUser);
 
     // Delete French language
-    $this->drupalPostForm('admin/config/regional/language/delete/fr', array(), t('Delete'));
-    $this->assertRaw(t('The %language (%langcode) language has been removed.', array('%language' => 'French', '%langcode' => 'fr')));
+    $this->drupalPostForm('admin/config/regional/language/delete/fr', [], t('Delete'));
+    $this->assertRaw(t('The %language (%langcode) language has been removed.', ['%language' => 'French', '%langcode' => 'fr']));
 
     // Change default language to Tamil.
-    $edit = array(
+    $edit = [
       'site_default_language' => 'ta',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
     $this->assertRaw(t('Configuration saved.'));
 
     // Delete English language
-    $this->drupalPostForm('admin/config/regional/language/delete/en', array(), t('Delete'));
-    $this->assertRaw(t('The %language (%langcode) language has been removed.', array('%language' => 'English', '%langcode' => 'en')));
+    $this->drupalPostForm('admin/config/regional/language/delete/en', [], t('Delete'));
+    $this->assertRaw(t('The %language (%langcode) language has been removed.', ['%language' => 'English', '%langcode' => 'en']));
 
     // Visit account setting translation page, this should not
     // throw any notices.
@@ -907,32 +907,32 @@ public function testSequenceTranslation() {
     /** @var \Drupal\Core\Config\ConfigFactoryInterface $config_factory */
     $config_factory = $this->container->get('config.factory');
 
-    $expected = array(
+    $expected = [
       'kitten',
       'llama',
       'elephant'
-    );
+    ];
     $actual = $config_factory
       ->getEditable('config_translation_test.content')
       ->get('animals');
     $this->assertEqual($expected, $actual);
 
-    $edit = array(
+    $edit = [
       'translation[config_names][config_translation_test.content][content][value]' => '<p><strong>Hello World</strong> - FR</p>',
       'translation[config_names][config_translation_test.content][animals][0]' => 'kitten - FR',
       'translation[config_names][config_translation_test.content][animals][1]' => 'llama - FR',
       'translation[config_names][config_translation_test.content][animals][2]' => 'elephant - FR',
-    );
+    ];
     $this->drupalPostForm('admin/config/media/file-system/translate/fr/add', $edit, t('Save translation'));
 
     $this->container->get('language.config_factory_override')
-      ->setLanguage(new Language(array('id' => 'fr')));
+      ->setLanguage(new Language(['id' => 'fr']));
 
-    $expected = array(
+    $expected = [
       'kitten - FR',
       'llama - FR',
       'elephant - FR',
-    );
+    ];
     $actual = $config_factory
       ->get('config_translation_test.content')
       ->get('animals');
@@ -947,10 +947,10 @@ public function testTextFormatTranslation() {
     /** @var \Drupal\Core\Config\ConfigFactoryInterface $config_factory */
     $config_factory = $this->container->get('config.factory');
 
-    $expected = array(
+    $expected = [
       'value' => '<p><strong>Hello World</strong></p>',
       'format' => 'plain_text',
-    );
+    ];
     $actual = $config_factory
       ->get('config_translation_test.content')
       ->getOriginal('content', FALSE);
@@ -970,20 +970,20 @@ public function testTextFormatTranslation() {
     $this->assertNoFieldByName('translation[config_names][config_translation_test.content][content][format]');
 
     // Update translatable fields.
-    $edit = array(
+    $edit = [
       'translation[config_names][config_translation_test.content][content][value]' => '<p><strong>Hello World</strong> - FR</p>',
-    );
+    ];
 
     // Save language specific version of form.
     $this->drupalPostForm($translation_page_url, $edit, t('Save translation'));
 
     // Get translation and check we've got the right value.
-    $expected = array(
+    $expected = [
       'value' => '<p><strong>Hello World</strong> - FR</p>',
       'format' => 'plain_text',
-    );
+    ];
     $this->container->get('language.config_factory_override')
-      ->setLanguage(new Language(array('id' => 'fr')));
+      ->setLanguage(new Language(['id' => 'fr']));
     $actual = $config_factory
       ->get('config_translation_test.content')
       ->get('content');
@@ -1009,7 +1009,7 @@ public function testTextFormatTranslation() {
     $this->drupalLogin($this->translatorUser);
     $this->drupalGet($translation_page_url);
     $this->assertDisabledTextarea('edit-translation-config-names-config-translation-testcontent-content-value');
-    $this->drupalPostForm(NULL, array(), t('Save translation'));
+    $this->drupalPostForm(NULL, [], t('Save translation'));
     // Check that submitting the form did not update the text format of the
     // translation.
     $actual = $config_factory
@@ -1019,14 +1019,14 @@ public function testTextFormatTranslation() {
 
     // The administrator must explicitly change the text format.
     $this->drupalLogin($this->adminUser);
-    $edit = array(
+    $edit = [
       'translation[config_names][config_translation_test.content][content][format]' => 'full_html',
-    );
+    ];
     $this->drupalPostForm($translation_page_url, $edit, t('Save translation'));
-    $expected = array(
+    $expected = [
       'value' => '<p><strong>Hello World</strong> - FR</p>',
       'format' => 'full_html',
-    );
+    ];
     $actual = $config_factory
       ->get('config_translation_test.content')
       ->get('content');
@@ -1047,20 +1047,20 @@ public function testTextFormatTranslation() {
    *   Returns translation if exists, FALSE otherwise.
    */
   protected function getTranslation($config_name, $key, $langcode) {
-    $settings_locations = $this->localeStorage->getLocations(array('type' => 'configuration', 'name' => $config_name));
-    $this->assertTrue(!empty($settings_locations), format_string('Configuration locations found for %config_name.', array('%config_name' => $config_name)));
+    $settings_locations = $this->localeStorage->getLocations(['type' => 'configuration', 'name' => $config_name]);
+    $this->assertTrue(!empty($settings_locations), format_string('Configuration locations found for %config_name.', ['%config_name' => $config_name]));
 
     if (!empty($settings_locations)) {
       $source = $this->container->get('config.factory')->get($config_name)->get($key);
-      $source_string = $this->localeStorage->findString(array('source' => $source, 'type' => 'configuration'));
-      $this->assertTrue(!empty($source_string), format_string('Found string for %config_name.%key.', array('%config_name' => $config_name, '%key' => $key)));
+      $source_string = $this->localeStorage->findString(['source' => $source, 'type' => 'configuration']);
+      $this->assertTrue(!empty($source_string), format_string('Found string for %config_name.%key.', ['%config_name' => $config_name, '%key' => $key]));
 
       if (!empty($source_string)) {
-        $conditions = array(
+        $conditions = [
           'lid' => $source_string->lid,
           'language' => $langcode,
-        );
-        $translations = $this->localeStorage->getTranslations($conditions + array('translated' => TRUE));
+        ];
+        $translations = $this->localeStorage->getTranslations($conditions + ['translated' => TRUE]);
         return reset($translations);
       }
     }
@@ -1074,10 +1074,10 @@ protected function getTranslation($config_name, $key, $langcode) {
    * @param string $site_slogan
    */
   protected function setSiteInformation($site_name, $site_slogan) {
-    $edit = array(
+    $edit = [
       'site_name' => $site_name,
       'site_slogan' => $site_slogan,
-    );
+    ];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
     $this->assertRaw(t('The configuration options have been saved.'));
   }
@@ -1094,11 +1094,11 @@ protected function setSiteInformation($site_name, $site_slogan) {
    *   The response body.
    */
   protected function renderContextualLinks($ids, $current_path) {
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($ids); $i++) {
       $post['ids[' . $i . ']'] = $ids[$i];
     }
-    return $this->drupalPostWithFormat('contextual/render', 'json', $post, array('query' => array('destination' => $current_path)));
+    return $this->drupalPostWithFormat('contextual/render', 'json', $post, ['query' => ['destination' => $current_path]]);
   }
 
   /**
@@ -1111,30 +1111,30 @@ protected function renderContextualLinks($ids, $current_path) {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertDisabledTextarea($id) {
-    $textarea = $this->xpath('//textarea[@id=:id and contains(@disabled, "disabled")]', array(
+    $textarea = $this->xpath('//textarea[@id=:id and contains(@disabled, "disabled")]', [
       ':id' => $id,
-    ));
+    ]);
     $textarea = reset($textarea);
-    $passed = $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Disabled field @id exists.', array(
+    $passed = $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Disabled field @id exists.', [
       '@id' => $id,
-    )));
+    ]));
     $expected = 'This field has been disabled because you do not have sufficient permissions to edit it.';
-    $passed = $passed && $this->assertEqual((string) $textarea, $expected, SafeMarkup::format('Disabled textarea @id hides text in an inaccessible text format.', array(
+    $passed = $passed && $this->assertEqual((string) $textarea, $expected, SafeMarkup::format('Disabled textarea @id hides text in an inaccessible text format.', [
       '@id' => $id,
-    )));
+    ]));
     // Make sure the text format select is not shown.
     $select_id = str_replace('value', 'format--2', $id);
-    $select = $this->xpath('//select[@id=:id]', array(':id' => $select_id));
-    return $passed && $this->assertFalse($select, SafeMarkup::format('Field @id does not exist.', array(
+    $select = $this->xpath('//select[@id=:id]', [':id' => $select_id]);
+    return $passed && $this->assertFalse($select, SafeMarkup::format('Field @id does not exist.', [
       '@id' => $id,
-    )));
+    ]));
   }
 
   /**
    * Helper function that returns a .po file with a given number of plural forms.
    */
   public function getPoFile($plurals) {
-    $po_file = array();
+    $po_file = [];
 
     $po_file[1] = <<< EOF
 msgid ""
diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationUiThemeTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationUiThemeTest.php
index ab51a43..53713a9 100644
--- a/core/modules/config_translation/src/Tests/ConfigTranslationUiThemeTest.php
+++ b/core/modules/config_translation/src/Tests/ConfigTranslationUiThemeTest.php
@@ -24,7 +24,7 @@ class ConfigTranslationUiThemeTest extends WebTestBase {
    *
    * @var array
    */
-  protected $langcodes = array('fr', 'ta');
+  protected $langcodes = ['fr', 'ta'];
 
   /**
    * Administrator user for tests.
diff --git a/core/modules/config_translation/tests/modules/config_translation_test/config_translation_test.module b/core/modules/config_translation/tests/modules/config_translation_test/config_translation_test.module
index eb41793..8c00b90 100644
--- a/core/modules/config_translation/tests/modules/config_translation_test/config_translation_test.module
+++ b/core/modules/config_translation/tests/modules/config_translation_test/config_translation_test.module
@@ -33,7 +33,7 @@ function config_translation_test_entity_type_alter(array &$entity_types) {
 function config_translation_test_config_translation_info_alter(&$info) {
   if (\Drupal::state()->get('config_translation_test_config_translation_info_alter')) {
     // Limit account settings config files to only one of them.
-    $info['entity.user.admin_form']['names'] = array('user.settings');
+    $info['entity.user.admin_form']['names'] = ['user.settings'];
 
     // Add one more config file to the site information page.
     $info['system.site_information_settings']['names'][] = 'system.rss';
diff --git a/core/modules/config_translation/tests/src/Functional/ConfigTranslationDateFormatUiTest.php b/core/modules/config_translation/tests/src/Functional/ConfigTranslationDateFormatUiTest.php
index 9ddbdf3..95af49e 100644
--- a/core/modules/config_translation/tests/src/Functional/ConfigTranslationDateFormatUiTest.php
+++ b/core/modules/config_translation/tests/src/Functional/ConfigTranslationDateFormatUiTest.php
@@ -12,11 +12,11 @@
  */
 class ConfigTranslationDateFormatUiTest extends BrowserTestBase {
 
-  public static $modules = array(
+  public static $modules = [
     'language',
     'config_translation',
     'system'
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
@@ -27,10 +27,10 @@ protected function setUp() {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
 
-    $user = $this->drupalCreateUser(array(
+    $user = $this->drupalCreateUser([
       'administer site configuration',
       'translate configuration',
-    ));
+    ]);
     $this->drupalLogin($user);
   }
 
diff --git a/core/modules/config_translation/tests/src/Functional/ConfigTranslationListUiTest.php b/core/modules/config_translation/tests/src/Functional/ConfigTranslationListUiTest.php
index db4af56..586d197 100644
--- a/core/modules/config_translation/tests/src/Functional/ConfigTranslationListUiTest.php
+++ b/core/modules/config_translation/tests/src/Functional/ConfigTranslationListUiTest.php
@@ -26,7 +26,7 @@ class ConfigTranslationListUiTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'block',
     'config_translation',
     'contact',
@@ -40,7 +40,7 @@ class ConfigTranslationListUiTest extends BrowserTestBase {
     'image',
     'responsive_image',
     'toolbar',
-  );
+  ];
 
   /**
    * Admin user with all needed permissions.
@@ -52,7 +52,7 @@ class ConfigTranslationListUiTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $permissions = array(
+    $permissions = [
       'access site-wide contact form',
       'administer blocks',
       'administer contact forms',
@@ -70,7 +70,7 @@ protected function setUp() {
       'administer image styles',
       'administer responsive images',
       'translate configuration',
-    );
+    ];
 
     // Create and log in user.
     $this->adminUser = $this->drupalCreateUser($permissions);
@@ -94,7 +94,7 @@ protected function doBlockListTest() {
     // Add a test block, any block will do.
     // Set the machine name so the translate link can be built later.
     $id = Unicode::strtolower($this->randomMachineName(16));
-    $this->drupalPlaceBlock('system_powered_by_block', array('id' => $id));
+    $this->drupalPlaceBlock('system_powered_by_block', ['id' => $id]);
 
     // Get the Block listing.
     $this->drupalGet('admin/structure/block');
@@ -118,11 +118,11 @@ protected function doMenuListTest() {
     // Lowercase the machine name.
     $menu_name = Unicode::strtolower($this->randomMachineName(16));
     $label = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'id' => $menu_name,
       'description' => '',
       'label' => $label,
-    );
+    ];
     // Create the menu by posting the form.
     $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save'));
 
@@ -135,9 +135,9 @@ protected function doMenuListTest() {
 
     // Check if the Link is not added if you are missing 'translate
     // configuration' permission.
-    $permissions = array(
+    $permissions = [
       'administer menu',
-    );
+    ];
     $this->drupalLogin($this->drupalCreateUser($permissions));
 
     // Get the Menu listing.
@@ -186,11 +186,11 @@ protected function doVocabularyListTest() {
   public function doCustomContentTypeListTest() {
     // Create a test custom block type to decouple looking for translate
     // operations link so this does not test more than necessary.
-    $block_content_type = BlockContentType::create(array(
+    $block_content_type = BlockContentType::create([
       'id' => Unicode::strtolower($this->randomMachineName(16)),
       'label' => $this->randomMachineName(),
       'revision' => FALSE
-    ));
+    ]);
     $block_content_type->save();
 
     // Get the custom block type listing.
@@ -235,10 +235,10 @@ public function doContactFormsListTest() {
   public function doContentTypeListTest() {
     // Create a test content type to decouple looking for translate operations
     // link so this does not test more than necessary.
-    $content_type = $this->drupalCreateContentType(array(
+    $content_type = $this->drupalCreateContentType([
       'type' => Unicode::strtolower($this->randomMachineName(16)),
       'name' => $this->randomMachineName(),
-    ));
+    ]);
 
     // Get the content type listing.
     $this->drupalGet('admin/structure/types');
@@ -258,10 +258,10 @@ public function doContentTypeListTest() {
   public function doFormatsListTest() {
     // Create a test format to decouple looking for translate operations
     // link so this does not test more than necessary.
-    $filter_format = FilterFormat::create(array(
+    $filter_format = FilterFormat::create([
       'format' => Unicode::strtolower($this->randomMachineName(16)),
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $filter_format->save();
 
     // Get the format listing.
@@ -282,10 +282,10 @@ public function doFormatsListTest() {
   public function doShortcutListTest() {
     // Create a test shortcut to decouple looking for translate operations
     // link so this does not test more than necessary.
-    $shortcut = ShortcutSet::create(array(
+    $shortcut = ShortcutSet::create([
       'id' => Unicode::strtolower($this->randomMachineName(16)),
       'label' => $this->randomString(),
-    ));
+    ]);
     $shortcut->save();
 
     // Get the shortcut listing.
@@ -307,7 +307,7 @@ public function doUserRoleListTest() {
     // Create a test role to decouple looking for translate operations
     // link so this does not test more than necessary.
     $role_id = Unicode::strtolower($this->randomMachineName(16));
-    $this->drupalCreateRole(array(), $role_id);
+    $this->drupalCreateRole([], $role_id);
 
     // Get the role listing.
     $this->drupalGet('admin/people/roles');
@@ -361,13 +361,13 @@ public function doImageStyleListTest() {
    * Tests the responsive image mapping listing for the translate operation.
    */
   public function doResponsiveImageListTest() {
-    $edit = array();
+    $edit = [];
     $edit['label'] = $this->randomMachineName();
     $edit['id'] = strtolower($edit['label']);
     $edit['fallback_image_style'] = 'thumbnail';
 
     $this->drupalPostForm('admin/config/media/responsive-image-style/add', $edit, t('Save'));
-    $this->assertRaw(t('Responsive image style %label saved.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Responsive image style %label saved.', ['%label' => $edit['label']]));
 
     // Get the responsive image style listing.
     $this->drupalGet('admin/config/media/responsive-image-style');
@@ -386,17 +386,17 @@ public function doResponsiveImageListTest() {
    */
   public function doFieldListTest() {
     // Create a base content type.
-    $content_type = $this->drupalCreateContentType(array(
+    $content_type = $this->drupalCreateContentType([
       'type' => Unicode::strtolower($this->randomMachineName(16)),
       'name' => $this->randomMachineName(),
-    ));
+    ]);
 
     // Create a block content type.
-    $block_content_type = BlockContentType::create(array(
+    $block_content_type = BlockContentType::create([
       'id' => 'basic',
       'label' => 'Basic',
       'revision' => FALSE
-    ));
+    ]);
     $block_content_type->save();
     $field = FieldConfig::create([
       // The field storage is guaranteed to exist because it is supplied by the
@@ -404,21 +404,21 @@ public function doFieldListTest() {
       'field_storage' => FieldStorageConfig::loadByName('block_content', 'body'),
       'bundle' => $block_content_type->id(),
       'label' => 'Body',
-      'settings' => array('display_summary' => FALSE),
+      'settings' => ['display_summary' => FALSE],
     ]);
     $field->save();
 
     // Look at a few fields on a few entity types.
-    $pages = array(
-      array(
+    $pages = [
+      [
         'list' => 'admin/structure/types/manage/' . $content_type->id() . '/fields',
         'field' => 'node.' . $content_type->id() . '.body',
-      ),
-      array(
+      ],
+      [
         'list' => 'admin/structure/block/block-content/manage/basic/fields',
         'field' => 'block_content.basic.body',
-      ),
-    );
+      ],
+    ];
 
     foreach ($pages as $values) {
       // Get fields listing.
diff --git a/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php b/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
index 9a9aee3..066dcd5 100644
--- a/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
+++ b/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
@@ -16,22 +16,22 @@ class ConfigTranslationViewListUiTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('node', 'test_view');
+  public static $testViews = ['node', 'test_view'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('config_translation', 'views_ui');
+  public static $modules = ['config_translation', 'views_ui'];
 
   protected function setUp() {
     parent::setUp();
 
-    $permissions = array(
+    $permissions = [
       'administer views',
       'translate configuration',
-    );
+    ];
 
     // Create and log in user.
     $this->drupalLogin($this->drupalCreateUser($permissions));
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigEntityMapperTest.php b/core/modules/config_translation/tests/src/Unit/ConfigEntityMapperTest.php
index dc56e8d..11e72c2 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigEntityMapperTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigEntityMapperTest.php
@@ -62,14 +62,14 @@ protected function setUp() {
       ->with('entity.configurable_language.edit_form')
       ->will($this->returnValue(new Route('/admin/config/regional/language/edit/{configurable_language}')));
 
-    $definition = array(
+    $definition = [
       'class' => '\Drupal\config_translation\ConfigEntityMapper',
       'base_route_name' => 'entity.configurable_language.edit_form',
       'title' => '@label language',
-      'names' => array(),
+      'names' => [],
       'entity_type' => 'configurable_language',
       'route_name' => 'config_translation.item.overview.entity.configurable_language.edit_form',
-    );
+    ];
 
     $typed_config_manager = $this->getMock('Drupal\Core\Config\TypedConfigManagerInterface');
 
@@ -152,7 +152,7 @@ public function testGetOverviewRouteParameters() {
 
     $result = $this->configEntityMapper->getOverviewRouteParameters();
 
-    $this->assertSame(array('configurable_language' => 'entity_id'), $result);
+    $this->assertSame(['configurable_language' => 'entity_id'], $result);
   }
 
   /**
@@ -205,12 +205,12 @@ public function testGetTypeLabel() {
   public function testGetOperations() {
     $result = $this->configEntityMapper->getOperations();
 
-    $expected = array(
-      'list' => array(
+    $expected = [
+      'list' => [
         'title' => 'List',
         'url' => Url::fromRoute('config_translation.entity_list', ['mapper_id' => 'configurable_language']),
-      ),
-    );
+      ],
+    ];
 
     $this->assertEquals($expected, $result);
   }
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigFieldMapperTest.php b/core/modules/config_translation/tests/src/Unit/ConfigFieldMapperTest.php
index 204d84e..8e6d0b9 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigFieldMapperTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigFieldMapperTest.php
@@ -42,13 +42,13 @@ protected function setUp() {
     $this->entityManager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
     $this->entity = $this->getMock('Drupal\field\FieldConfigInterface');
 
-    $definition = array(
+    $definition = [
       'class' => '\Drupal\config_translation\ConfigFieldMapper',
       'base_route_name' => 'entity.field_config.node_field_edit_form',
       'title' => '@label field',
-      'names' => array(),
+      'names' => [],
       'entity_type' => 'field_config',
-    );
+    ];
 
     $locale_config_manager = $this->getMockBuilder('Drupal\locale\LocaleConfigManager')
       ->disableOriginalConstructor()
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigMapperManagerTest.php b/core/modules/config_translation/tests/src/Unit/ConfigMapperManagerTest.php
index 10bbf7d..9f064ac 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigMapperManagerTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigMapperManagerTest.php
@@ -31,7 +31,7 @@ class ConfigMapperManagerTest extends UnitTestCase {
   protected $typedConfigManager;
 
   protected function setUp() {
-    $language = new Language(array('id' => 'en'));
+    $language = new Language(['id' => 'en']);
     $language_manager = $this->getMock('Drupal\Core\Language\LanguageManagerInterface');
     $language_manager->expects($this->once())
       ->method('getCurrentLanguage')
@@ -83,50 +83,50 @@ public function testHasTranslatable(TypedDataInterface $element, $expected) {
    *   ConfigMapperManager::hasTranslatable() as the second key.
    */
   public function providerTestHasTranslatable() {
-    return array(
-      array($this->getElement(array()), FALSE),
-      array($this->getElement(array('aaa' => 'bbb')), FALSE),
-      array($this->getElement(array('translatable' => FALSE)), FALSE),
-      array($this->getElement(array('translatable' => TRUE)), TRUE),
-      array($this->getNestedElement(array(
-        $this->getElement(array()),
-      )), FALSE),
-      array($this->getNestedElement(array(
-        $this->getElement(array('translatable' => TRUE)),
-      )), TRUE),
-      array($this->getNestedElement(array(
-        $this->getElement(array('aaa' => 'bbb')),
-        $this->getElement(array('ccc' => 'ddd')),
-        $this->getElement(array('eee' => 'fff')),
-      )), FALSE),
-      array($this->getNestedElement(array(
-        $this->getElement(array('aaa' => 'bbb')),
-        $this->getElement(array('ccc' => 'ddd')),
-        $this->getElement(array('translatable' => TRUE)),
-      )), TRUE),
-      array($this->getNestedElement(array(
-        $this->getElement(array('aaa' => 'bbb')),
-        $this->getNestedElement(array(
-          $this->getElement(array('ccc' => 'ddd')),
-          $this->getElement(array('eee' => 'fff')),
-        )),
-        $this->getNestedElement(array(
-          $this->getElement(array('ggg' => 'hhh')),
-          $this->getElement(array('iii' => 'jjj')),
-        )),
-      )), FALSE),
-      array($this->getNestedElement(array(
-        $this->getElement(array('aaa' => 'bbb')),
-        $this->getNestedElement(array(
-          $this->getElement(array('ccc' => 'ddd')),
-          $this->getElement(array('eee' => 'fff')),
-        )),
-        $this->getNestedElement(array(
-          $this->getElement(array('ggg' => 'hhh')),
-          $this->getElement(array('translatable' => TRUE)),
-        )),
-      )), TRUE),
-    );
+    return [
+      [$this->getElement([]), FALSE],
+      [$this->getElement(['aaa' => 'bbb']), FALSE],
+      [$this->getElement(['translatable' => FALSE]), FALSE],
+      [$this->getElement(['translatable' => TRUE]), TRUE],
+      [$this->getNestedElement([
+        $this->getElement([]),
+      ]), FALSE],
+      [$this->getNestedElement([
+        $this->getElement(['translatable' => TRUE]),
+      ]), TRUE],
+      [$this->getNestedElement([
+        $this->getElement(['aaa' => 'bbb']),
+        $this->getElement(['ccc' => 'ddd']),
+        $this->getElement(['eee' => 'fff']),
+      ]), FALSE],
+      [$this->getNestedElement([
+        $this->getElement(['aaa' => 'bbb']),
+        $this->getElement(['ccc' => 'ddd']),
+        $this->getElement(['translatable' => TRUE]),
+      ]), TRUE],
+      [$this->getNestedElement([
+        $this->getElement(['aaa' => 'bbb']),
+        $this->getNestedElement([
+          $this->getElement(['ccc' => 'ddd']),
+          $this->getElement(['eee' => 'fff']),
+        ]),
+        $this->getNestedElement([
+          $this->getElement(['ggg' => 'hhh']),
+          $this->getElement(['iii' => 'jjj']),
+        ]),
+      ]), FALSE],
+      [$this->getNestedElement([
+        $this->getElement(['aaa' => 'bbb']),
+        $this->getNestedElement([
+          $this->getElement(['ccc' => 'ddd']),
+          $this->getElement(['eee' => 'fff']),
+        ]),
+        $this->getNestedElement([
+          $this->getElement(['ggg' => 'hhh']),
+          $this->getElement(['translatable' => TRUE]),
+        ]),
+      ]), TRUE],
+    ];
   }
 
   /**
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
index cbf42c8..e7a0679 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
@@ -91,13 +91,13 @@ class ConfigNamesMapperTest extends UnitTestCase {
   protected function setUp() {
     $this->routeProvider = $this->getMock('Drupal\Core\Routing\RouteProviderInterface');
 
-    $this->pluginDefinition = array(
+    $this->pluginDefinition = [
       'class' => '\Drupal\config_translation\ConfigNamesMapper',
       'base_route_name' => 'system.site_information_settings',
       'title' => 'System information',
-      'names' => array('system.site'),
+      'names' => ['system.site'],
       'weight' => 42,
-    );
+    ];
 
     $this->typedConfigManager = $this->getMock('Drupal\Core\Config\TypedConfigManagerInterface');
 
@@ -156,7 +156,7 @@ public function testGetBaseRouteName() {
    */
   public function testGetBaseRouteParameters() {
     $result = $this->configNamesMapper->getBaseRouteParameters();
-    $this->assertSame(array(), $result);
+    $this->assertSame([], $result);
   }
 
   /**
@@ -193,7 +193,7 @@ public function testGetOverviewRouteName() {
    */
   public function testGetOverviewRouteParameters() {
     $result = $this->configNamesMapper->getOverviewRouteParameters();
-    $this->assertSame(array(), $result);
+    $this->assertSame([], $result);
   }
 
   /**
@@ -201,13 +201,13 @@ public function testGetOverviewRouteParameters() {
    */
   public function testGetOverviewRoute() {
     $expected = new Route('/admin/config/system/site-information/translate',
-      array(
+      [
         '_controller' => '\Drupal\config_translation\Controller\ConfigTranslationController::itemPage',
         'plugin_id' => 'system.site_information_settings',
-      ),
-      array(
+      ],
+      [
         '_config_translation_overview_access' => 'TRUE',
-      )
+      ]
     );
     $result = $this->configNamesMapper->getOverviewRoute();
     $this->assertSame(serialize($expected), serialize($result));
@@ -242,7 +242,7 @@ public function testGetAddRouteParameters() {
     $route_match = new RouteMatch('example', new Route('/test/{langcode}'), ['langcode' => 'xx']);
     $this->configNamesMapper->populateFromRouteMatch($route_match);
 
-    $expected = array('langcode' => 'xx');
+    $expected = ['langcode' => 'xx'];
     $result = $this->configNamesMapper->getAddRouteParameters();
     $this->assertSame($expected, $result);
   }
@@ -252,13 +252,13 @@ public function testGetAddRouteParameters() {
    */
   public function testGetAddRoute() {
     $expected = new Route('/admin/config/system/site-information/translate/{langcode}/add',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationAddForm',
         'plugin_id' => 'system.site_information_settings',
-      ),
-      array(
+      ],
+      [
         '_config_translation_form_access' => 'TRUE',
-      )
+      ]
     );
     $result = $this->configNamesMapper->getAddRoute();
     $this->assertSame(serialize($expected), serialize($result));
@@ -280,7 +280,7 @@ public function testGetEditRouteParameters() {
     $route_match = new RouteMatch('example', new Route('/test/{langcode}'), ['langcode' => 'xx']);
     $this->configNamesMapper->populateFromRouteMatch($route_match);
 
-    $expected = array('langcode' => 'xx');
+    $expected = ['langcode' => 'xx'];
     $result = $this->configNamesMapper->getEditRouteParameters();
     $this->assertSame($expected, $result);
   }
@@ -290,13 +290,13 @@ public function testGetEditRouteParameters() {
    */
   public function testGetEditRoute() {
     $expected = new Route('/admin/config/system/site-information/translate/{langcode}/edit',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationEditForm',
         'plugin_id' => 'system.site_information_settings',
-      ),
-      array(
+      ],
+      [
         '_config_translation_form_access' => 'TRUE',
-      )
+      ]
     );
     $result = $this->configNamesMapper->getEditRoute();
     $this->assertSame(serialize($expected), serialize($result));
@@ -318,7 +318,7 @@ public function testGetDeleteRouteParameters() {
     $route_match = new RouteMatch('example', new Route('/test/{langcode}'), ['langcode' => 'xx']);
     $this->configNamesMapper->populateFromRouteMatch($route_match);
 
-    $expected = array('langcode' => 'xx');    $result = $this->configNamesMapper->getDeleteRouteParameters();
+    $expected = ['langcode' => 'xx'];    $result = $this->configNamesMapper->getDeleteRouteParameters();
     $this->assertSame($expected, $result);
   }
 
@@ -327,13 +327,13 @@ public function testGetDeleteRouteParameters() {
    */
   public function testGetDeleteRoute() {
     $expected = new Route('/admin/config/system/site-information/translate/{langcode}/delete',
-      array(
+      [
         '_form' => '\Drupal\config_translation\Form\ConfigTranslationDeleteForm',
         'plugin_id' => 'system.site_information_settings',
-      ),
-      array(
+      ],
+      [
         '_config_translation_form_access' => 'TRUE',
-      )
+      ]
     );
     $result = $this->configNamesMapper->getDeleteRoute();
     $this->assertSame(serialize($expected), serialize($result));
@@ -403,38 +403,38 @@ public function testGetTypeLabel() {
   public function testGetLangcode() {
     // Test that the getLangcode() falls back to 'en', if no explicit language
     // code is provided.
-    $config_factory = $this->getConfigFactoryStub(array(
-      'system.site' => array('key' => 'value'),
-    ));
+    $config_factory = $this->getConfigFactoryStub([
+      'system.site' => ['key' => 'value'],
+    ]);
     $this->configNamesMapper->setConfigFactory($config_factory);
     $result = $this->configNamesMapper->getLangcode();
     $this->assertSame('en', $result);
 
     // Test that getLangcode picks up the language code provided by the
     // configuration.
-    $config_factory = $this->getConfigFactoryStub(array(
-      'system.site' => array('langcode' => 'xx'),
-    ));
+    $config_factory = $this->getConfigFactoryStub([
+      'system.site' => ['langcode' => 'xx'],
+    ]);
     $this->configNamesMapper->setConfigFactory($config_factory);
     $result = $this->configNamesMapper->getLangcode();
     $this->assertSame('xx', $result);
 
     // Test that getLangcode() works for multiple configuration names.
     $this->configNamesMapper->addConfigName('system.maintenance');
-    $config_factory = $this->getConfigFactoryStub(array(
-      'system.site' => array('langcode' => 'xx'),
-      'system.maintenance' => array('langcode' => 'xx'),
-    ));
+    $config_factory = $this->getConfigFactoryStub([
+      'system.site' => ['langcode' => 'xx'],
+      'system.maintenance' => ['langcode' => 'xx'],
+    ]);
     $this->configNamesMapper->setConfigFactory($config_factory);
     $result = $this->configNamesMapper->getLangcode();
     $this->assertSame('xx', $result);
 
     // Test that getLangcode() throws an exception when different language codes
     // are given.
-    $config_factory = $this->getConfigFactoryStub(array(
-      'system.site' => array('langcode' => 'xx'),
-      'system.maintenance' => array('langcode' => 'yy'),
-    ));
+    $config_factory = $this->getConfigFactoryStub([
+      'system.site' => ['langcode' => 'xx'],
+      'system.maintenance' => ['langcode' => 'yy'],
+    ]);
     $this->configNamesMapper->setConfigFactory($config_factory);
     try {
       $this->configNamesMapper->getLangcode();
@@ -448,22 +448,22 @@ public function testGetLangcode() {
    * Tests ConfigNamesMapper::getConfigData().
    */
   public function testGetConfigData() {
-    $configs = array(
-      'system.site' => array(
+    $configs = [
+      'system.site' => [
         'name' => 'Drupal',
         'slogan' => 'Come for the software, stay for the community!',
-      ),
-      'system.maintenance' => array(
+      ],
+      'system.maintenance' => [
         'enabled' => FALSE,
         'message' => '@site is currently under maintenance.',
-      ),
-      'system.rss' => array(
-        'items' => array(
+      ],
+      'system.rss' => [
+        'items' => [
           'limit' => 10,
           'view_mode' => 'rss',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     $this->configNamesMapper->setConfigNames(array_keys($configs));
     $config_factory = $this->getConfigFactoryStub($configs);
@@ -489,9 +489,9 @@ public function testHasSchema(array $mock_return_values, $expected) {
     $config_names = range(1, count($mock_return_values));
     $this->configNamesMapper->setConfigNames($config_names);
 
-    $map = array();
+    $map = [];
     foreach ($config_names as $i => $config_name) {
-      $map[] = array($config_name, $mock_return_values[$i]);
+      $map[] = [$config_name, $mock_return_values[$i]];
     }
     $this->typedConfigManager
       ->expects($this->any())
@@ -512,12 +512,12 @@ public function testHasSchema(array $mock_return_values, $expected) {
    *   ConfigNamesMapper::hasSchema() as the second value.
    */
   public function providerTestHasSchema() {
-    return array(
-      array(array(TRUE), TRUE),
-      array(array(FALSE), FALSE),
-      array(array(TRUE, TRUE, TRUE), TRUE),
-      array(array(TRUE, FALSE, TRUE), FALSE),
-    );
+    return [
+      [[TRUE], TRUE],
+      [[FALSE], FALSE],
+      [[TRUE, TRUE, TRUE], TRUE],
+      [[TRUE, FALSE, TRUE], FALSE],
+    ];
   }
 
   /**
@@ -536,9 +536,9 @@ public function testHasTranslatable(array $mock_return_values, $expected) {
     $config_names = range(1, count($mock_return_values));
     $this->configNamesMapper->setConfigNames($config_names);
 
-    $map = array();
+    $map = [];
     foreach ($config_names as $i => $config_name) {
-      $map[] = isset($mock_return_values[$i]) ? array($config_name, $mock_return_values[$i]) : array();
+      $map[] = isset($mock_return_values[$i]) ? [$config_name, $mock_return_values[$i]] : [];
     }
     $this->configMapperManager
       ->expects($this->any())
@@ -559,14 +559,14 @@ public function testHasTranslatable(array $mock_return_values, $expected) {
    *   ConfigNamesMapper::hasTranslatable() as the second value.
    */
   public function providerTestHasTranslatable() {
-    return array(
-      array(array(), FALSE),
-      array(array(TRUE), TRUE),
-      array(array(FALSE), FALSE),
-      array(array(TRUE, TRUE, TRUE), TRUE),
-      array(array(FALSE, FALSE, FALSE), FALSE),
-      array(array(TRUE, FALSE, TRUE), TRUE),
-    );
+    return [
+      [[], FALSE],
+      [[TRUE], TRUE],
+      [[FALSE], FALSE],
+      [[TRUE, TRUE, TRUE], TRUE],
+      [[FALSE, FALSE, FALSE], FALSE],
+      [[TRUE, FALSE, TRUE], TRUE],
+    ];
   }
 
   /**
@@ -587,9 +587,9 @@ public function testHasTranslation(array $mock_return_values, $expected) {
     $config_names = range(1, count($mock_return_values));
     $this->configNamesMapper->setConfigNames($config_names);
 
-    $map = array();
+    $map = [];
     foreach ($config_names as $i => $config_name) {
-      $map[] = array($config_name, $language->getId(), $mock_return_values[$i]);
+      $map[] = [$config_name, $language->getId(), $mock_return_values[$i]];
     }
     $this->localeConfigManager
       ->expects($this->any())
@@ -610,13 +610,13 @@ public function testHasTranslation(array $mock_return_values, $expected) {
    *   ConfigNamesMapper::hasTranslation() as the second value.
    */
   public function providerTestHasTranslation() {
-    return array(
-      array(array(TRUE), TRUE),
-      array(array(FALSE), FALSE),
-      array(array(TRUE, TRUE, TRUE), TRUE),
-      array(array(FALSE, FALSE, TRUE), TRUE),
-      array(array(FALSE, FALSE, FALSE), FALSE),
-    );
+    return [
+      [[TRUE], TRUE],
+      [[FALSE], FALSE],
+      [[TRUE, TRUE, TRUE], TRUE],
+      [[FALSE, FALSE, TRUE], TRUE],
+      [[FALSE, FALSE, FALSE], FALSE],
+    ];
   }
 
   /**
@@ -631,12 +631,12 @@ public function testGetTypeName() {
    * Tests ConfigNamesMapper::hasTranslation().
    */
   public function testGetOperations() {
-    $expected = array(
-      'translate' => array(
+    $expected = [
+      'translate' => [
         'title' => 'Translate',
         'url' => Url::fromRoute('config_translation.item.overview.system.site_information_settings'),
-      ),
-    );
+      ],
+    ];
     $result = $this->configNamesMapper->getOperations();
     $this->assertEquals($expected, $result);
   }
diff --git a/core/modules/contact/contact.module b/core/modules/contact/contact.module
index 4306e3b..65e7592 100644
--- a/core/modules/contact/contact.module
+++ b/core/modules/contact/contact.module
@@ -21,17 +21,17 @@ function contact_help($route_name, RouteMatchInterface $route_match) {
       $contact_page = \Drupal::url('entity.contact_form.collection');
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Contact module allows visitors to contact registered users on your site, using the personal contact form, and also allows you to set up site-wide contact forms. For more information, see the <a href=":contact">online documentation for the Contact module</a>.', array(':contact' => 'https://www.drupal.org/documentation/modules/contact')) . '</p>';
+      $output .= '<p>' . t('The Contact module allows visitors to contact registered users on your site, using the personal contact form, and also allows you to set up site-wide contact forms. For more information, see the <a href=":contact">online documentation for the Contact module</a>.', [':contact' => 'https://www.drupal.org/documentation/modules/contact']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Using the personal contact form') . '</dt>';
       $output .= '<dd>' . t("Site visitors can email registered users on your site by using the personal contact form, without knowing or learning the email address of the recipient. When a site visitor is viewing a user profile, the viewer will see a <em>Contact</em> tab or link, which leads to the personal contact form. The personal contact link is not shown when you are viewing your own profile, and users must have both <em>View user information</em> (to see user profiles) and <em>Use users' personal contact forms</em> permission to see the link. The user whose profile is being viewed must also have their personal contact form enabled (this is a user account setting); viewers with <em>Administer users</em> permission can bypass this setting.") . '</dd>';
       $output .= '<dt>' . t('Configuring contact forms') . '</dt>';
-      $output .= '<dd>' . t('On the <a href=":contact_admin">Contact forms page</a>, you can configure the fields and display of the personal contact form, and you can set up one or more site-wide contact forms. Each site-wide contact form has a machine name, a label, and one or more defined recipients; when a site visitor submits the form, the field values are sent to those recipients.', array(':contact_admin' => $contact_page)) . '</dd>';
+      $output .= '<dd>' . t('On the <a href=":contact_admin">Contact forms page</a>, you can configure the fields and display of the personal contact form, and you can set up one or more site-wide contact forms. Each site-wide contact form has a machine name, a label, and one or more defined recipients; when a site visitor submits the form, the field values are sent to those recipients.', [':contact_admin' => $contact_page]) . '</dd>';
       $output .= '<dt>' . t('Linking to contact forms') . '</dt>';
-      $output .= '<dd>' . t('One site-wide contact form can be designated as the default contact form. If you choose to designate a default form, the <em>Contact</em> menu link in the <em>Footer</em> menu will link to it. You can modify this link from the <a href=":menu-settings">Menus page</a> if you have the Menu UI module installed. You can also create links to other contact forms; the URL for each form you have set up has format <em>contact/machine_name_of_form</em>.', array(':menu-settings' => $menu_page)) . '</p>';
+      $output .= '<dd>' . t('One site-wide contact form can be designated as the default contact form. If you choose to designate a default form, the <em>Contact</em> menu link in the <em>Footer</em> menu will link to it. You can modify this link from the <a href=":menu-settings">Menus page</a> if you have the Menu UI module installed. You can also create links to other contact forms; the URL for each form you have set up has format <em>contact/machine_name_of_form</em>.', [':menu-settings' => $menu_page]) . '</p>';
       $output .= '<dt>' . t('Adding content to contact forms') . '</dt>';
-      $output .= '<dd>' . t('From the <a href=":contact_admin">Contact forms page</a>, you can configure the fields to be shown on contact forms, including their labels and help text. If you would like other content (such as text or images) to appear on a contact form, use a block. You can create and edit blocks on the <a href=":blocks">Block layout page</a>, if the Block module is installed.', array(':blocks' => $block_page, ':contact_admin' => $contact_page)) . '</dd>';
+      $output .= '<dd>' . t('From the <a href=":contact_admin">Contact forms page</a>, you can configure the fields to be shown on contact forms, including their labels and help text. If you would like other content (such as text or images) to appear on a contact form, use a block. You can create and edit blocks on the <a href=":blocks">Block layout page</a>, if the Block module is installed.', [':blocks' => $block_page, ':contact_admin' => $contact_page]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -50,42 +50,42 @@ function contact_entity_type_alter(array &$entity_types) {
  * Implements hook_entity_extra_field_info().
  */
 function contact_entity_extra_field_info() {
-  $fields = array();
+  $fields = [];
   foreach (array_keys(\Drupal::service('entity_type.bundle.info')->getBundleInfo('contact_message')) as $bundle) {
-    $fields['contact_message'][$bundle]['form']['name'] = array(
+    $fields['contact_message'][$bundle]['form']['name'] = [
       'label' => t('Sender name'),
       'description' => t('Text'),
       'weight' => -50,
-    );
-    $fields['contact_message'][$bundle]['form']['mail'] = array(
+    ];
+    $fields['contact_message'][$bundle]['form']['mail'] = [
       'label' => t('Sender email'),
       'description' => t('Email'),
       'weight' => -40,
-    );
+    ];
     if ($bundle == 'personal') {
-      $fields['contact_message'][$bundle]['form']['recipient'] = array(
+      $fields['contact_message'][$bundle]['form']['recipient'] = [
         'label' => t('Recipient username'),
         'description' => t('User'),
         'weight' => -30,
-      );
+      ];
     }
-    $fields['contact_message'][$bundle]['form']['preview'] = array(
+    $fields['contact_message'][$bundle]['form']['preview'] = [
       'label' => t('Preview sender message'),
       'description' => t('Preview'),
       'weight' => 40,
-    );
-    $fields['contact_message'][$bundle]['form']['copy'] = array(
+    ];
+    $fields['contact_message'][$bundle]['form']['copy'] = [
       'label' => t('Send copy to sender'),
       'description' => t('Option'),
       'weight' => 50,
-    );
+    ];
   }
 
-  $fields['user']['user']['form']['contact'] = array(
+  $fields['user']['user']['form']['contact'] = [
     'label' => t('Contact settings'),
     'description' => t('Contact module form element.'),
     'weight' => 5,
-  );
+  ];
   return $fields;
 }
 
@@ -118,21 +118,21 @@ function contact_mail($key, &$message, $params) {
   $sender = $params['sender'];
   $language = \Drupal::languageManager()->getLanguage($message['langcode']);
 
-  $variables = array(
+  $variables = [
     '@site-name' => \Drupal::config('system.site')->get('name'),
     '@subject' => $contact_message->getSubject(),
     '@form' => !empty($params['contact_form']) ? $params['contact_form']->label() : NULL,
     '@form-url' => \Drupal::url('<current>', [], ['absolute' => TRUE, 'language' => $language]),
     '@sender-name' => $sender->getDisplayName(),
-  );
+  ];
   if ($sender->isAuthenticated()) {
-    $variables['@sender-url'] = $sender->url('canonical', array('absolute' => TRUE, 'language' => $language));
+    $variables['@sender-url'] = $sender->url('canonical', ['absolute' => TRUE, 'language' => $language]);
   }
   else {
     $variables['@sender-url'] = $params['sender']->getEmail();
   }
 
-  $options = array('langcode' => $language->getId());
+  $options = ['langcode' => $language->getId()];
 
   switch ($key) {
     case 'page_mail':
@@ -150,10 +150,10 @@ function contact_mail($key, &$message, $params) {
 
     case 'user_mail':
     case 'user_copy':
-      $variables += array(
+      $variables += [
         '@recipient-name' => $params['recipient']->getDisplayName(),
-        '@recipient-edit-url' => $params['recipient']->url('edit-form', array('absolute' => TRUE, 'language' => $language)),
-      );
+        '@recipient-edit-url' => $params['recipient']->url('edit-form', ['absolute' => TRUE, 'language' => $language]),
+      ];
       $message['subject'] .= t('[@site-name] @subject', $variables, $options);
       $message['body'][] = t('Hello @recipient-name,', $variables, $options);
       $message['body'][] = t("@sender-name (@sender-url) has sent you a message via your contact form at @site-name.", $variables, $options);
@@ -172,22 +172,22 @@ function contact_mail($key, &$message, $params) {
  * @see \Drupal\user\ProfileForm::form()
  */
 function contact_form_user_form_alter(&$form, FormStateInterface $form_state) {
-  $form['contact'] = array(
+  $form['contact'] = [
     '#type' => 'details',
     '#title' => t('Contact settings'),
     '#open' => TRUE,
     '#weight' => 5,
-  );
+  ];
   $account = $form_state->getFormObject()->getEntity();
   if (!\Drupal::currentUser()->isAnonymous() && $account->id()) {
     $account_data = \Drupal::service('user.data')->get('contact', $account->id(), 'enabled');
   }
-  $form['contact']['contact'] = array(
+  $form['contact']['contact'] = [
     '#type' => 'checkbox',
     '#title' => t('Personal contact form'),
     '#default_value' => isset($account_data) ? $account_data : \Drupal::config('contact.settings')->get('user_default_enabled'),
     '#description' => t('Allow other users to contact you via a personal contact form which keeps your email address hidden. Note that some privileged users such as site administrators are still able to contact you even if you choose to disable this feature.'),
-  );
+  ];
   $form['actions']['submit']['#submit'][] = 'contact_user_profile_form_submit';
 }
 
@@ -209,18 +209,18 @@ function contact_user_profile_form_submit($form, FormStateInterface $form_state)
  * @see \Drupal\user\AccountSettingsForm
  */
 function contact_form_user_admin_settings_alter(&$form, FormStateInterface $form_state) {
-  $form['contact'] = array(
+  $form['contact'] = [
     '#type' => 'details',
     '#title' => t('Contact settings'),
     '#open' => TRUE,
     '#weight' => 0,
-  );
-  $form['contact']['contact_default_status'] = array(
+  ];
+  $form['contact']['contact_default_status'] = [
     '#type' => 'checkbox',
     '#title' => t('Enable the personal contact form by default for new users'),
     '#description' => t('Changing this setting will not affect existing users.'),
     '#default_value' => \Drupal::configFactory()->getEditable('contact.settings')->get('user_default_enabled'),
-  );
+  ];
   // Add submit handler to save contact configuration.
   $form['#submit'][] = 'contact_form_user_admin_settings_submit';
 }
diff --git a/core/modules/contact/contact.views.inc b/core/modules/contact/contact.views.inc
index 1560362..a18c9e7 100644
--- a/core/modules/contact/contact.views.inc
+++ b/core/modules/contact/contact.views.inc
@@ -9,11 +9,11 @@
  * Implements hook_views_data_alter().
  */
 function contact_views_data_alter(&$data) {
-  $data['users']['contact'] = array(
-    'field' => array(
+  $data['users']['contact'] = [
+    'field' => [
       'title' => t('Contact link'),
       'help' => t('Provide a simple link to the user contact page.'),
       'id' => 'contact_link',
-    ),
-  );
+    ],
+  ];
 }
diff --git a/core/modules/contact/src/ContactFormEditForm.php b/core/modules/contact/src/ContactFormEditForm.php
index 01ca025..aa94540 100644
--- a/core/modules/contact/src/ContactFormEditForm.php
+++ b/core/modules/contact/src/ContactFormEditForm.php
@@ -72,60 +72,60 @@ public function form(array $form, FormStateInterface $form_state) {
     $contact_form = $this->entity;
     $default_form = $this->config('contact.settings')->get('default_form');
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#maxlength' => 255,
       '#default_value' => $contact_form->label(),
       '#description' => $this->t("Example: 'website feedback' or 'product information'."),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $contact_form->id(),
       '#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\contact\Entity\ContactForm::load',
-      ),
+      ],
       '#disabled' => !$contact_form->isNew(),
-    );
-    $form['recipients'] = array(
+    ];
+    $form['recipients'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Recipients'),
       '#default_value' => implode(', ', $contact_form->getRecipients()),
       '#description' => $this->t("Example: 'webmaster@example.com' or 'sales@example.com,support@example.com' . To specify multiple recipients, separate each email address with a comma."),
       '#required' => TRUE,
-    );
-    $form['message'] = array(
+    ];
+    $form['message'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Message'),
       '#default_value' => $contact_form->getMessage(),
       '#description' => $this->t('The message to display to the user after submission of this form. Leave blank for no message.'),
-    );
-    $form['redirect'] = array(
+    ];
+    $form['redirect'] = [
       '#type' => 'path',
       '#title' => $this->t('Redirect path'),
       '#convert_path' => PathElement::CONVERT_NONE,
       '#default_value' => $contact_form->getRedirectPath(),
       '#description' => $this->t('Path to redirect the user to after submission of this form. For example, type "/about" to redirect to that page. Use a relative path with a slash in front.'),
-    );
-    $form['reply'] = array(
+    ];
+    $form['reply'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Auto-reply'),
       '#default_value' => $contact_form->getReply(),
       '#description' => $this->t('Optional auto-reply. Leave empty if you do not want to send the user an auto-reply message.'),
-    );
-    $form['weight'] = array(
+    ];
+    $form['weight'] = [
       '#type' => 'weight',
       '#title' => $this->t('Weight'),
       '#default_value' => $contact_form->getWeight(),
       '#description' => $this->t('When listing forms, those with lighter (smaller) weights get listed before forms with heavier (larger) weights. Forms with equal weights are sorted alphabetically.'),
-    );
-    $form['selected'] = array(
+    ];
+    $form['selected'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Make this the default form'),
       '#default_value' => $default_form === $contact_form->id(),
-    );
+    ];
 
     return $form;
   }
@@ -142,7 +142,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     foreach ($recipients as &$recipient) {
       $recipient = trim($recipient);
       if (!$this->emailValidator->isValid($recipient)) {
-        $form_state->setErrorByName('recipients', $this->t('%recipient is an invalid email address.', array('%recipient' => $recipient)));
+        $form_state->setErrorByName('recipients', $this->t('%recipient is an invalid email address.', ['%recipient' => $recipient]));
       }
     }
     $form_state->setValue('recipients', $recipients);
@@ -165,12 +165,12 @@ public function save(array $form, FormStateInterface $form_state) {
     $edit_link = $this->entity->link($this->t('Edit'));
     $view_link = $contact_form->link($contact_form->label(), 'canonical');
     if ($status == SAVED_UPDATED) {
-      drupal_set_message($this->t('Contact form %label has been updated.', array('%label' => $view_link)));
-      $this->logger('contact')->notice('Contact form %label has been updated.', array('%label' => $contact_form->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Contact form %label has been updated.', ['%label' => $view_link]));
+      $this->logger('contact')->notice('Contact form %label has been updated.', ['%label' => $contact_form->label(), 'link' => $edit_link]);
     }
     else {
-      drupal_set_message($this->t('Contact form %label has been added.', array('%label' => $view_link)));
-      $this->logger('contact')->notice('Contact form %label has been added.', array('%label' => $contact_form->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Contact form %label has been added.', ['%label' => $view_link]));
+      $this->logger('contact')->notice('Contact form %label has been added.', ['%label' => $contact_form->label(), 'link' => $edit_link]);
     }
 
     // Update the default form.
diff --git a/core/modules/contact/src/Controller/ContactController.php b/core/modules/contact/src/Controller/ContactController.php
index 4d46f83..b8b69d5 100644
--- a/core/modules/contact/src/Controller/ContactController.php
+++ b/core/modules/contact/src/Controller/ContactController.php
@@ -64,9 +64,9 @@ public function contactSitePage(ContactFormInterface $contact_form = NULL) {
       // If there are no forms, do not display the form.
       if (empty($contact_form)) {
         if ($this->currentUser()->hasPermission('administer contact forms')) {
-          drupal_set_message($this->t('The contact form has not been configured. <a href=":add">Add one or more forms</a> .', array(
-            ':add' => $this->url('contact.form_add'))), 'error');
-          return array();
+          drupal_set_message($this->t('The contact form has not been configured. <a href=":add">Add one or more forms</a> .', [
+            ':add' => $this->url('contact.form_add')]), 'error');
+          return [];
         }
         else {
           throw new NotFoundHttpException();
@@ -76,9 +76,9 @@ public function contactSitePage(ContactFormInterface $contact_form = NULL) {
 
     $message = $this->entityManager()
       ->getStorage('contact_message')
-      ->create(array(
+      ->create([
         'contact_form' => $contact_form->id(),
-      ));
+      ]);
 
     $form = $this->entityFormBuilder()->getForm($message);
     $form['#title'] = $contact_form->label();
@@ -106,13 +106,13 @@ public function contactPersonalPage(UserInterface $user) {
       throw new NotFoundHttpException();
     }
 
-    $message = $this->entityManager()->getStorage('contact_message')->create(array(
+    $message = $this->entityManager()->getStorage('contact_message')->create([
       'contact_form' => 'personal',
       'recipient' => $user->id(),
-    ));
+    ]);
 
     $form = $this->entityFormBuilder()->getForm($message);
-    $form['#title'] = $this->t('Contact @username', array('@username' => $user->getDisplayName()));
+    $form['#title'] = $this->t('Contact @username', ['@username' => $user->getDisplayName()]);
     $form['#cache']['contexts'][] = 'user.permissions';
     return $form;
   }
diff --git a/core/modules/contact/src/Entity/ContactForm.php b/core/modules/contact/src/Entity/ContactForm.php
index 9c63747..00e5416 100644
--- a/core/modules/contact/src/Entity/ContactForm.php
+++ b/core/modules/contact/src/Entity/ContactForm.php
@@ -73,7 +73,7 @@ class ContactForm extends ConfigEntityBundleBase implements ContactFormInterface
    *
    * @var array
    */
-  protected $recipients = array();
+  protected $recipients = [];
 
   /**
    * The path to redirect to on form submission.
diff --git a/core/modules/contact/src/Entity/Message.php b/core/modules/contact/src/Entity/Message.php
index 20f360f..d75496b 100644
--- a/core/modules/contact/src/Entity/Message.php
+++ b/core/modules/contact/src/Entity/Message.php
@@ -153,29 +153,29 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Subject'))
       ->setRequired(TRUE)
       ->setSetting('max_length', 100)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -10,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     // The text of the contact message.
     $fields['message'] = BaseFieldDefinition::create('string_long')
       ->setLabel(t('Message'))
       ->setRequired(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textarea',
         'weight' => 0,
-        'settings' => array(
+        'settings' => [
           'rows' => 12,
-        ),
-      ))
+        ],
+      ])
       ->setDisplayConfigurable('form', TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'type' => 'string',
         'weight' => 0,
         'label' => 'above',
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE);
 
     $fields['copy'] = BaseFieldDefinition::create('boolean')
diff --git a/core/modules/contact/src/MailHandler.php b/core/modules/contact/src/MailHandler.php
index bb3b95e..b57864c 100644
--- a/core/modules/contact/src/MailHandler.php
+++ b/core/modules/contact/src/MailHandler.php
@@ -73,7 +73,7 @@ public function __construct(MailManagerInterface $mail_manager, LanguageManagerI
   public function sendMailMessages(MessageInterface $message, AccountInterface $sender) {
     // Clone the sender, as we make changes to mail and name properties.
     $sender_cloned = clone $this->userStorage->load($sender->id());
-    $params = array();
+    $params = [];
     $current_langcode = $this->languageManager->getCurrentLanguage()->getId();
     $recipient_langcode = $this->languageManager->getDefaultLanguage()->getId();
     $contact_form = $message->getContactForm();
@@ -86,7 +86,7 @@ public function sendMailMessages(MessageInterface $message, AccountInterface $se
 
       // For the email message, clarify that the sender name is not verified; it
       // could potentially clash with a username on this site.
-      $sender_cloned->name = $this->t('@name (not verified)', array('@name' => $message->getSenderName()));
+      $sender_cloned->name = $this->t('@name (not verified)', ['@name' => $message->getSenderName()]);
     }
 
     // Build email parameters.
@@ -133,18 +133,18 @@ public function sendMailMessages(MessageInterface $message, AccountInterface $se
     }
 
     if (!$message->isPersonal()) {
-      $this->logger->notice('%sender-name (@sender-from) sent an email regarding %contact_form.', array(
+      $this->logger->notice('%sender-name (@sender-from) sent an email regarding %contact_form.', [
         '%sender-name' => $sender_cloned->getUsername(),
         '@sender-from' => $sender_cloned->getEmail(),
         '%contact_form' => $contact_form->label(),
-      ));
+      ]);
     }
     else {
-      $this->logger->notice('%sender-name (@sender-from) sent %recipient-name an email.', array(
+      $this->logger->notice('%sender-name (@sender-from) sent %recipient-name an email.', [
         '%sender-name' => $sender_cloned->getUsername(),
         '@sender-from' => $sender_cloned->getEmail(),
         '%recipient-name' => $message->getPersonalRecipient()->getUsername(),
-      ));
+      ]);
     }
   }
 
diff --git a/core/modules/contact/src/MessageForm.php b/core/modules/contact/src/MessageForm.php
index da221ff..16d41b5 100644
--- a/core/modules/contact/src/MessageForm.php
+++ b/core/modules/contact/src/MessageForm.php
@@ -103,24 +103,24 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['#attributes']['class'][] = 'contact-form';
 
     if (!empty($message->preview)) {
-      $form['preview'] = array(
-        '#theme_wrappers' => array('container__preview'),
-        '#attributes' => array('class' => array('preview')),
-      );
+      $form['preview'] = [
+        '#theme_wrappers' => ['container__preview'],
+        '#attributes' => ['class' => ['preview']],
+      ];
       $form['preview']['message'] = $this->entityManager->getViewBuilder('contact_message')->view($message, 'full');
     }
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Your name'),
       '#maxlength' => 255,
       '#required' => TRUE,
-    );
-    $form['mail'] = array(
+    ];
+    $form['mail'] = [
       '#type' => 'email',
       '#title' => $this->t('Your email address'),
       '#required' => TRUE,
-    );
+    ];
     if ($user->isAnonymous()) {
       $form['#attached']['library'][] = 'core/drupal.form';
       $form['#attributes']['data-user-info-from-browser'] = TRUE;
@@ -141,24 +141,24 @@ public function form(array $form, FormStateInterface $form_state) {
 
     // The user contact form has a preset recipient.
     if ($message->isPersonal()) {
-      $form['recipient'] = array(
+      $form['recipient'] = [
         '#type' => 'item',
         '#title' => $this->t('To'),
         '#value' => $message->getPersonalRecipient()->id(),
-        'name' => array(
+        'name' => [
           '#theme' => 'username',
           '#account' => $message->getPersonalRecipient(),
-        ),
-      );
+        ],
+      ];
     }
 
-    $form['copy'] = array(
+    $form['copy'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Send yourself a copy'),
       // Do not allow anonymous users to send themselves a copy, because it can
       // be abused to spam people.
       '#access' => $user->isAuthenticated(),
-    );
+    ];
     return $form;
   }
 
@@ -168,11 +168,11 @@ public function form(array $form, FormStateInterface $form_state) {
   public function actions(array $form, FormStateInterface $form_state) {
     $elements = parent::actions($form, $form_state);
     $elements['submit']['#value'] = $this->t('Send message');
-    $elements['preview'] = array(
+    $elements['preview'] = [
       '#type' => 'submit',
       '#value' => $this->t('Preview'),
-      '#submit' => array('::submitForm', '::preview'),
-    );
+      '#submit' => ['::submitForm', '::preview'],
+    ];
     return $elements;
   }
 
@@ -197,10 +197,10 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       $interval = $this->config('contact.settings')->get('flood.interval');
 
       if (!$this->flood->isAllowed('contact', $limit, $interval)) {
-        $form_state->setErrorByName('', $this->t('You cannot send more than %limit messages in @interval. Try again later.', array(
+        $form_state->setErrorByName('', $this->t('You cannot send more than %limit messages in @interval. Try again later.', [
           '%limit' => $limit,
           '@interval' => $this->dateFormatter->formatInterval($interval),
-        )));
+        ]));
       }
     }
 
diff --git a/core/modules/contact/src/MessageViewBuilder.php b/core/modules/contact/src/MessageViewBuilder.php
index 3024f62..6cbf0e7 100644
--- a/core/modules/contact/src/MessageViewBuilder.php
+++ b/core/modules/contact/src/MessageViewBuilder.php
@@ -33,11 +33,11 @@ public function buildComponents(array &$build, array $entities, array $displays,
       // Add the message extra field, if enabled.
       $display = $displays[$entity->bundle()];
       if ($entity->getMessage() && $display->getComponent('message')) {
-        $build[$id]['message'] = array(
+        $build[$id]['message'] = [
           '#type' => 'item',
           '#title' => t('Message'),
           '#plain_text' => $entity->getMessage(),
-        );
+        ];
       }
     }
   }
@@ -54,7 +54,7 @@ public function view(EntityInterface $entity, $view_mode = 'full', $langcode = N
       // convert DIVs correctly.
       foreach (Element::children($build) as $key) {
         if (isset($build[$key]['#label_display']) && $build[$key]['#label_display'] == 'above') {
-          $build[$key] += array('#prefix' => '');
+          $build[$key] += ['#prefix' => ''];
           $build[$key]['#prefix'] = $build[$key]['#title'] . ":\n";
           $build[$key]['#label_display'] = 'hidden';
         }
diff --git a/core/modules/contact/src/Plugin/migrate/source/ContactCategory.php b/core/modules/contact/src/Plugin/migrate/source/ContactCategory.php
index 2975431..0b9f7b3 100644
--- a/core/modules/contact/src/Plugin/migrate/source/ContactCategory.php
+++ b/core/modules/contact/src/Plugin/migrate/source/ContactCategory.php
@@ -20,14 +20,14 @@ class ContactCategory extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('contact', 'c')
-      ->fields('c', array(
+      ->fields('c', [
         'cid',
         'category',
         'recipients',
         'reply',
         'weight',
         'selected',
-      )
+      ]
     );
     $query->orderBy('c.cid');
     return $query;
@@ -45,14 +45,14 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'cid' => $this->t('Primary Key: Unique category ID.'),
       'category' => $this->t('Category name.'),
       'recipients' => $this->t('Comma-separated list of recipient email addresses.'),
       'reply' => $this->t('Text of the auto-reply message.'),
       'weight' => $this->t("The category's weight."),
       'selected' => $this->t('Flag to indicate whether or not category is selected by default. (1 = Yes, 0 = No)'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/contact/src/Plugin/views/field/ContactLink.php b/core/modules/contact/src/Plugin/views/field/ContactLink.php
index ecc4cea..a98be13 100644
--- a/core/modules/contact/src/Plugin/views/field/ContactLink.php
+++ b/core/modules/contact/src/Plugin/views/field/ContactLink.php
@@ -42,8 +42,8 @@ protected function renderLink(ResultRow $row) {
     $this->options['alter']['make_link'] = TRUE;
     $this->options['alter']['url'] = $this->getUrlInfo($row);
 
-    $title = $this->t('Contact %user', array('%user' => $entity->label()));
-    $this->options['alter']['attributes'] = array('title' => $title);
+    $title = $this->t('Contact %user', ['%user' => $entity->label()]);
+    $this->options['alter']['attributes'] = ['title' => $title];
 
     if (!empty($this->options['text'])) {
       return $this->options['text'];
diff --git a/core/modules/contact/src/Tests/ContactPersonalTest.php b/core/modules/contact/src/Tests/ContactPersonalTest.php
index 936aed5..d80484f 100644
--- a/core/modules/contact/src/Tests/ContactPersonalTest.php
+++ b/core/modules/contact/src/Tests/ContactPersonalTest.php
@@ -20,7 +20,7 @@ class ContactPersonalTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('contact', 'dblog');
+  public static $modules = ['contact', 'dblog'];
 
   /**
    * A user with some administrative permissions.
@@ -47,11 +47,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create an admin user.
-    $this->adminUser = $this->drupalCreateUser(array('administer contact forms', 'administer users', 'administer account settings', 'access site reports'));
+    $this->adminUser = $this->drupalCreateUser(['administer contact forms', 'administer users', 'administer account settings', 'access site reports']);
 
     // Create some normal users with their contact forms enabled by default.
     $this->config('contact.settings')->set('user_default_enabled', TRUE)->save();
-    $this->webUser = $this->drupalCreateUser(array('access user profiles', 'access user contact forms'));
+    $this->webUser = $this->drupalCreateUser(['access user profiles', 'access user contact forms']);
     $this->contactUser = $this->drupalCreateUser();
   }
 
@@ -74,11 +74,11 @@ function testSendPersonalContactMessage() {
     $this->assertEqual($mail['from'], $this->config('system.site')->get('mail'));
     $this->assertEqual($mail['reply-to'], $this->webUser->getEmail());
     $this->assertEqual($mail['key'], 'user_mail');
-    $variables = array(
+    $variables = [
       '@site-name' => $this->config('system.site')->get('name'),
       '@subject' => $message['subject[0][value]'],
       '@recipient-name' => $this->contactUser->getDisplayName(),
-    );
+    ];
     $subject = PlainTextOutput::renderFromHtml(t('[@site-name] @subject', $variables));
     $this->assertEqual($mail['subject'], $subject, 'Subject is in sent message.');
     $this->assertTrue(strpos($mail['body'], 'Hello ' . $variables['@recipient-name']) !== FALSE, 'Recipient name is in sent message.');
@@ -90,11 +90,11 @@ function testSendPersonalContactMessage() {
     $this->drupalLogin($this->adminUser);
     // Verify that the correct watchdog message has been logged.
     $this->drupalGet('/admin/reports/dblog');
-    $placeholders = array(
+    $placeholders = [
       '@sender_name' => $this->webUser->username,
       '@sender_email' => $this->webUser->getEmail(),
       '@recipient_name' => $this->contactUser->getUsername()
-    );
+    ];
     $this->assertRaw(SafeMarkup::format('@sender_name (@sender_email) sent @recipient_name an email.', $placeholders));
     // Ensure an unescaped version of the email does not exist anywhere.
     $this->assertNoRaw($this->webUser->getEmail());
@@ -109,7 +109,7 @@ function testPersonalContactAccess() {
     $this->drupalGet('user/' . $this->adminUser->id() . '/contact');
     $this->assertResponse(200);
     // Check the page title is properly displayed.
-    $this->assertRaw(t('Contact @username', array('@username' => $this->adminUser->getDisplayName())));
+    $this->assertRaw(t('Contact @username', ['@username' => $this->adminUser->getDisplayName()]));
 
     // Test denied access to admin user's own contact form.
     $this->drupalLogout();
@@ -149,7 +149,7 @@ function testPersonalContactAccess() {
 
     // Test that anonymous users can access the contact form.
     $this->drupalLogout();
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access user contact forms'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access user contact forms']);
     $this->drupalGet('user/' . $this->contactUser->id() . '/contact');
     $this->assertResponse(200);
 
@@ -159,7 +159,7 @@ function testPersonalContactAccess() {
     $this->assertCacheContext('user');
 
     // Revoke the personal contact permission for the anonymous user.
-    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, array('access user contact forms'));
+    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, ['access user contact forms']);
     $this->drupalGet('user/' . $this->contactUser->id() . '/contact');
     $this->assertResponse(403);
     $this->assertCacheContext('user');
@@ -168,7 +168,7 @@ function testPersonalContactAccess() {
 
     // Disable the personal contact form.
     $this->drupalLogin($this->adminUser);
-    $edit = array('contact_default_status' => FALSE);
+    $edit = ['contact_default_status' => FALSE];
     $this->drupalPostForm('admin/config/people/accounts', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'), 'Setting successfully saved.');
     $this->drupalLogout();
@@ -206,7 +206,7 @@ function testPersonalContactAccess() {
     $this->drupalGet('user/' . $this->webUser->id() . '/edit');
     $this->assertNoFieldChecked('edit-contact--2');
     $this->assertFalse(\Drupal::service('user.data')->get('contact', $this->webUser->id(), 'enabled'), 'Personal contact form disabled');
-    $this->drupalPostForm(NULL, array('contact' => TRUE), t('Save'));
+    $this->drupalPostForm(NULL, ['contact' => TRUE], t('Save'));
     $this->assertFieldChecked('edit-contact--2');
     $this->assertTrue(\Drupal::service('user.data')->get('contact', $this->webUser->id(), 'enabled'), 'Personal contact form enabled');
 
@@ -237,7 +237,7 @@ function testPersonalContactFlood() {
 
     // Submit contact form one over limit.
     $this->submitPersonalContact($this->contactUser);
-    $this->assertRaw(t('You cannot send more than %number messages in @interval. Try again later.', array('%number' => $flood_limit, '@interval' => \Drupal::service('date.formatter')->formatInterval($this->config('contact.settings')->get('flood.interval')))), 'Normal user denied access to flooded contact form.');
+    $this->assertRaw(t('You cannot send more than %number messages in @interval. Try again later.', ['%number' => $flood_limit, '@interval' => \Drupal::service('date.formatter')->formatInterval($this->config('contact.settings')->get('flood.interval'))]), 'Normal user denied access to flooded contact form.');
 
     // Test that the admin user can still access the contact form even though
     // the flood limit was reached.
@@ -249,7 +249,7 @@ function testPersonalContactFlood() {
    * Tests the personal contact form based access when an admin adds users.
    */
   function testAdminContact() {
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access user contact forms'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access user contact forms']);
     $this->checkContactAccess(200);
     $this->checkContactAccess(403, FALSE);
     $config = $this->config('contact.settings');
@@ -276,13 +276,13 @@ protected function checkContactAccess($response, $contact_value = NULL) {
       $this->assertNoFieldChecked('edit-contact--2');
     }
     $name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'name' => $name,
       'mail' => $this->randomMachineName() . '@example.com',
       'pass[pass1]' => $pass = $this->randomString(),
       'pass[pass2]' => $pass,
       'notify' => FALSE,
-    );
+    ];
     if (isset($contact_value)) {
       $edit['contact'] = $contact_value;
     }
@@ -306,11 +306,11 @@ protected function checkContactAccess($response, $contact_value = NULL) {
    * @return array
    *   An array with the form fields being used.
    */
-  protected function submitPersonalContact(AccountInterface $account, array $message = array()) {
-    $message += array(
+  protected function submitPersonalContact(AccountInterface $account, array $message = []) {
+    $message += [
       'subject[0][value]' => $this->randomMachineName(16),
       'message[0][value]' => $this->randomMachineName(64),
-    );
+    ];
     $this->drupalPostForm('user/' . $account->id() . '/contact', $message, t('Send message'));
     return $message;
   }
diff --git a/core/modules/contact/src/Tests/ContactSitewideTest.php b/core/modules/contact/src/Tests/ContactSitewideTest.php
index ffc2e90..0721cf4 100644
--- a/core/modules/contact/src/Tests/ContactSitewideTest.php
+++ b/core/modules/contact/src/Tests/ContactSitewideTest.php
@@ -65,7 +65,7 @@ function testSiteWideContact() {
       ->save();
 
     // Set settings.
-    $edit = array();
+    $edit = [];
     $edit['contact_default_status'] = TRUE;
     $this->drupalPostForm('admin/config/people/accounts', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
@@ -77,11 +77,11 @@ function testSiteWideContact() {
     // Cannot use ::assertNoLinkByHref as it does partial url matching and with
     // field_ui enabled admin/structure/contact/manage/personal/fields exists.
     // @todo: See https://www.drupal.org/node/2031223 for the above.
-    $edit_link = $this->xpath('//a[@href=:href]', array(
-      ':href' => \Drupal::url('entity.contact_form.edit_form', array('contact_form' => 'personal'))
-    ));
+    $edit_link = $this->xpath('//a[@href=:href]', [
+      ':href' => \Drupal::url('entity.contact_form.edit_form', ['contact_form' => 'personal'])
+    ]);
     $this->assertTrue(empty($edit_link), format_string('No link containing href %href found.',
-      array('%href' => 'admin/structure/contact/manage/personal')
+      ['%href' => 'admin/structure/contact/manage/personal']
     ));
     $this->assertNoLinkByHref('admin/structure/contact/manage/personal/delete');
 
@@ -95,7 +95,7 @@ function testSiteWideContact() {
     $this->assertNoLinkByHref('admin/structure/contact/manage/feedback');
 
     // Ensure that the contact form won't be shown without forms.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
     $this->drupalLogout();
     $this->drupalGet('contact');
     $this->assertResponse(404);
@@ -110,10 +110,10 @@ function testSiteWideContact() {
 
     // Add forms.
     // Test invalid recipients.
-    $invalid_recipients = array('invalid', 'invalid@', 'invalid@site.', '@site.', '@site.com');
+    $invalid_recipients = ['invalid', 'invalid@', 'invalid@site.', '@site.', '@site.com'];
     foreach ($invalid_recipients as $invalid_recipient) {
       $this->addContactForm($this->randomMachineName(16), $this->randomMachineName(16), $invalid_recipient, '', FALSE);
-      $this->assertRaw(t('%recipient is an invalid email address.', array('%recipient' => $invalid_recipient)));
+      $this->assertRaw(t('%recipient is an invalid email address.', ['%recipient' => $invalid_recipient]));
     }
 
     // Test validation of empty form and recipients fields.
@@ -123,24 +123,24 @@ function testSiteWideContact() {
     $this->assertText(t('Recipients field is required.'));
 
     // Test validation of max_length machine name.
-    $recipients = array('simpletest&@example.com', 'simpletest2@example.com', 'simpletest3@example.com');
+    $recipients = ['simpletest&@example.com', 'simpletest2@example.com', 'simpletest3@example.com'];
     $max_length = EntityTypeInterface::BUNDLE_MAX_LENGTH;
     $max_length_exceeded = $max_length + 1;
-    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName($max_length_exceeded)), $label = $this->randomMachineName($max_length_exceeded), implode(',', array($recipients[0])), '', TRUE);
-    $this->assertText(format_string('Machine-readable name cannot be longer than @max characters but is currently @exceeded characters long.', array('@max' => $max_length, '@exceeded' => $max_length_exceeded)));
-    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName($max_length)), $label = $this->randomMachineName($max_length), implode(',', array($recipients[0])), '', TRUE);
-    $this->assertText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName($max_length_exceeded)), $label = $this->randomMachineName($max_length_exceeded), implode(',', [$recipients[0]]), '', TRUE);
+    $this->assertText(format_string('Machine-readable name cannot be longer than @max characters but is currently @exceeded characters long.', ['@max' => $max_length, '@exceeded' => $max_length_exceeded]));
+    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName($max_length)), $label = $this->randomMachineName($max_length), implode(',', [$recipients[0]]), '', TRUE);
+    $this->assertText(t('Contact form @label has been added.', ['@label' => $label]));
 
     // Verify that the creation message contains a link to a contact form.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'contact/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'contact/']);
     $this->assert(isset($view_link), 'The message area contains a link to a contact form.');
 
     // Create first valid form.
-    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', array($recipients[0])), '', TRUE);
-    $this->assertText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', [$recipients[0]]), '', TRUE);
+    $this->assertText(t('Contact form @label has been added.', ['@label' => $label]));
 
     // Verify that the creation message contains a link to a contact form.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'contact/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'contact/']);
     $this->assert(isset($view_link), 'The message area contains a link to a contact form.');
 
     // Check that the form was created in site default language.
@@ -156,13 +156,13 @@ function testSiteWideContact() {
     $this->assertEscaped($recipients[0]);
 
     // Test update contact form.
-    $this->updateContactForm($id, $label = $this->randomMachineName(16), $recipients_str = implode(',', array($recipients[0], $recipients[1])), $reply = $this->randomMachineName(30), FALSE, 'Your message has been sent.', '/user');
+    $this->updateContactForm($id, $label = $this->randomMachineName(16), $recipients_str = implode(',', [$recipients[0], $recipients[1]]), $reply = $this->randomMachineName(30), FALSE, 'Your message has been sent.', '/user');
     $config = $this->config('contact.form.' . $id)->get();
     $this->assertEqual($config['label'], $label);
-    $this->assertEqual($config['recipients'], array($recipients[0], $recipients[1]));
+    $this->assertEqual($config['recipients'], [$recipients[0], $recipients[1]]);
     $this->assertEqual($config['reply'], $reply);
     $this->assertNotEqual($id, $this->config('contact.settings')->get('default_form'));
-    $this->assertText(t('Contact form @label has been updated.', array('@label' => $label)));
+    $this->assertText(t('Contact form @label has been updated.', ['@label' => $label]));
     // Ensure the label is displayed on the contact page for this form.
     $this->drupalGet('contact/' . $id);
     $this->assertText($label);
@@ -171,7 +171,7 @@ function testSiteWideContact() {
     $this->config('contact.settings')->set('default_form', $id)->save();
 
     // Ensure that the contact form is shown without a form selection input.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
     $this->drupalLogout();
     $this->drupalGet('contact');
     $this->assertText(t('Your email address'));
@@ -179,26 +179,26 @@ function testSiteWideContact() {
     $this->drupalLogin($admin_user);
 
     // Add more forms.
-    $this->addContactForm(Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', array($recipients[0], $recipients[1])), '', FALSE);
-    $this->assertText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->addContactForm(Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', [$recipients[0], $recipients[1]]), '', FALSE);
+    $this->assertText(t('Contact form @label has been added.', ['@label' => $label]));
 
-    $this->addContactForm($name = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', array($recipients[0], $recipients[1], $recipients[2])), '', FALSE);
-    $this->assertText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->addContactForm($name = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', [$recipients[0], $recipients[1], $recipients[2]]), '', FALSE);
+    $this->assertText(t('Contact form @label has been added.', ['@label' => $label]));
 
     // Try adding a form that already exists.
     $this->addContactForm($name, $label, '', '', FALSE);
-    $this->assertNoText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->assertNoText(t('Contact form @label has been added.', ['@label' => $label]));
     $this->assertRaw(t('The machine-readable name is already in use. It must be unique.'));
 
     $this->drupalLogout();
 
     // Check to see that anonymous user cannot see contact page without permission.
-    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
     $this->drupalGet('contact');
     $this->assertResponse(403);
 
     // Give anonymous user permission and see that page is viewable.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
     $this->drupalGet('contact');
     $this->assertResponse(200);
 
@@ -210,7 +210,7 @@ function testSiteWideContact() {
     $this->assertText(t('Your email address field is required.'));
 
     $this->submitContact($this->randomMachineName(16), $invalid_recipients[0], $this->randomMachineName(16), $id, $this->randomMachineName(64));
-    $this->assertRaw(t('The email address %mail is not valid.', array('%mail' => 'invalid')));
+    $this->assertRaw(t('The email address %mail is not valid.', ['%mail' => 'invalid']));
 
     $this->submitContact($this->randomMachineName(16), $recipients[0], '', $id, $this->randomMachineName(64));
     $this->assertText(t('Subject field is required.'));
@@ -238,7 +238,7 @@ function testSiteWideContact() {
     }
     // Submit contact form one over limit.
     $this->submitContact($this->randomMachineName(16), $recipients[0], $this->randomMachineName(16), $id, $this->randomMachineName(64));
-    $this->assertRaw(t('You cannot send more than %number messages in 10 min. Try again later.', array('%number' => $this->config('contact.settings')->get('flood.limit'))));
+    $this->assertRaw(t('You cannot send more than %number messages in 10 min. Try again later.', ['%number' => $this->config('contact.settings')->get('flood.limit')]));
 
     // Test listing controller.
     $this->drupalLogin($admin_user);
@@ -246,7 +246,7 @@ function testSiteWideContact() {
     $this->deleteContactForms();
 
     $label = $this->randomMachineName(16);
-    $recipients = implode(',', array($recipients[0], $recipients[1], $recipients[2]));
+    $recipients = implode(',', [$recipients[0], $recipients[1], $recipients[2]]);
     $contact_form = Unicode::strtolower($this->randomMachineName(16));
     $this->addContactForm($contact_form, $label, $recipients, '', FALSE);
     $this->drupalGet('admin/structure/contact');
@@ -293,15 +293,15 @@ function testSiteWideContact() {
     $this->assertText($field_label);
 
     // Submit the contact form and verify the content.
-    $edit = array(
+    $edit = [
       'subject[0][value]' => $this->randomMachineName(),
       'message[0][value]' => $this->randomMachineName(),
       $field_name . '[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Send message'));
     $mails = $this->drupalGetMails();
     $mail = array_pop($mails);
-    $this->assertEqual($mail['subject'], t('[@label] @subject', array('@label' => $label, '@subject' => $edit['subject[0][value]'])));
+    $this->assertEqual($mail['subject'], t('[@label] @subject', ['@label' => $label, '@subject' => $edit['subject[0][value]']]));
     $this->assertTrue(strpos($mail['body'], $field_label));
     $this->assertTrue(strpos($mail['body'], $edit[$field_name . '[0][value]']));
 
@@ -315,11 +315,11 @@ function testSiteWideContact() {
     $this->drupalGet('contact/' . $contact_form);
 
     // Submit the contact form and verify the content.
-    $edit = array(
+    $edit = [
       'subject[0][value]' => $this->randomMachineName(),
       'message[0][value]' => $this->randomMachineName(),
       $field_name . '[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Send message'));
     $this->assertText('Thanks for your submission.');
     $this->assertUrl('user/' . $admin_user->id());
@@ -335,13 +335,13 @@ function testSiteWideContact() {
     $this->drupalGet('contact/' . $contact_form);
 
     // Submit the contact form and verify the content.
-    $edit = array(
+    $edit = [
       'subject[0][value]' => $this->randomMachineName(),
       'message[0][value]' => $this->randomMachineName(),
       $field_name . '[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Send message'));
-    $result = $this->xpath('//div[@role=:role]', array(':role' => 'contentinfo'));
+    $result = $this->xpath('//div[@role=:role]', [':role' => 'contentinfo']);
     $this->assertEqual(count($result), 0, 'Messages not found.');
     $this->assertUrl('user/' . $admin_user->id());
   }
@@ -369,7 +369,7 @@ function testAutoReply() {
 
     // Log the current user out in order to test the name and email fields.
     $this->drupalLogout();
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
 
     // Test the auto-reply for form 'foo'.
     $email = $this->randomMachineName(32) . '@example.com';
@@ -377,7 +377,7 @@ function testAutoReply() {
     $this->submitContact($this->randomMachineName(16), $email, $subject, 'foo', $this->randomString(128));
 
     // We are testing the auto-reply, so there should be one email going to the sender.
-    $captured_emails = $this->drupalGetMails(array('id' => 'contact_page_autoreply', 'to' => $email));
+    $captured_emails = $this->drupalGetMails(['id' => 'contact_page_autoreply', 'to' => $email]);
     $this->assertEqual(count($captured_emails), 1);
     $this->assertEqual(trim($captured_emails[0]['body']), trim(MailFormatHelper::htmlToText($foo_autoreply)));
 
@@ -386,14 +386,14 @@ function testAutoReply() {
     $this->submitContact($this->randomMachineName(16), $email, $this->randomString(64), 'bar', $this->randomString(128));
 
     // Auto-reply for form 'bar' should result in one auto-reply email to the sender.
-    $captured_emails = $this->drupalGetMails(array('id' => 'contact_page_autoreply', 'to' => $email));
+    $captured_emails = $this->drupalGetMails(['id' => 'contact_page_autoreply', 'to' => $email]);
     $this->assertEqual(count($captured_emails), 1);
     $this->assertEqual(trim($captured_emails[0]['body']), trim(MailFormatHelper::htmlToText($bar_autoreply)));
 
     // Verify that no auto-reply is sent when the auto-reply field is left blank.
     $email = $this->randomMachineName(32) . '@example.com';
     $this->submitContact($this->randomMachineName(16), $email, $this->randomString(64), 'no_autoreply', $this->randomString(128));
-    $captured_emails = $this->drupalGetMails(array('id' => 'contact_page_autoreply', 'to' => $email));
+    $captured_emails = $this->drupalGetMails(['id' => 'contact_page_autoreply', 'to' => $email]);
     $this->assertEqual(count($captured_emails), 0);
 
     // Verify that the current error message doesn't show, that the auto-reply
@@ -432,7 +432,7 @@ function testAutoReply() {
    *   Array of third party settings to be added to the posted form data.
    */
   function addContactForm($id, $label, $recipients, $reply, $selected, $message = 'Your message has been sent.', $third_party_settings = []) {
-    $edit = array();
+    $edit = [];
     $edit['label'] = $label;
     $edit['id'] = $id;
     $edit['message'] = $message;
@@ -464,7 +464,7 @@ function addContactForm($id, $label, $recipients, $reply, $selected, $message =
    *   The path where user will be redirect after this form has been submitted..
    */
   function updateContactForm($id, $label, $recipients, $reply, $selected, $message = 'Your message has been sent.', $redirect = '/') {
-    $edit = array();
+    $edit = [];
     $edit['label'] = $label;
     $edit['recipients'] = $recipients;
     $edit['reply'] = $reply;
@@ -489,7 +489,7 @@ function updateContactForm($id, $label, $recipients, $reply, $selected, $message
    *   The message body.
    */
   function submitContact($name, $mail, $subject, $id, $message) {
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name;
     $edit['mail'] = $mail;
     $edit['subject[0][value]'] = $subject;
@@ -514,9 +514,9 @@ function deleteContactForms() {
         $this->assertResponse(403);
       }
       else {
-        $this->drupalPostForm("admin/structure/contact/manage/$id/delete", array(), t('Delete'));
-        $this->assertRaw(t('The contact form %label has been deleted.', array('%label' => $contact_form->label())));
-        $this->assertFalse(ContactForm::load($id), format_string('Form %contact_form not found', array('%contact_form' => $contact_form->label())));
+        $this->drupalPostForm("admin/structure/contact/manage/$id/delete", [], t('Delete'));
+        $this->assertRaw(t('The contact form %label has been deleted.', ['%label' => $contact_form->label()]));
+        $this->assertFalse(ContactForm::load($id), format_string('Form %contact_form not found', ['%contact_form' => $contact_form->label()]));
       }
     }
   }
diff --git a/core/modules/contact/src/Tests/ContactStorageTest.php b/core/modules/contact/src/Tests/ContactStorageTest.php
index ad0e8d4..f9165a8 100644
--- a/core/modules/contact/src/Tests/ContactStorageTest.php
+++ b/core/modules/contact/src/Tests/ContactStorageTest.php
@@ -37,23 +37,23 @@ class ContactStorageTest extends ContactSitewideTest {
    */
   public function testContactStorage() {
     // Create and log in administrative user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'access site-wide contact form',
       'administer contact forms',
       'administer users',
       'administer account settings',
       'administer contact_message fields',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
     // Create first valid contact form.
     $mail = 'simpletest@example.com';
-    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', array($mail)), '', TRUE, 'Your message has been sent.', [
+    $this->addContactForm($id = Unicode::strtolower($this->randomMachineName(16)), $label = $this->randomMachineName(16), implode(',', [$mail]), '', TRUE, 'Your message has been sent.', [
       'send_a_pony' => 1,
     ]);
-    $this->assertText(t('Contact form @label has been added.', array('@label' => $label)));
+    $this->assertText(t('Contact form @label has been added.', ['@label' => $label]));
 
     // Ensure that anonymous can submit site-wide contact form.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access site-wide contact form'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access site-wide contact form']);
     $this->drupalLogout();
     $this->drupalGet('contact');
     $this->assertText(t('Your email address'));
diff --git a/core/modules/contact/src/Tests/Views/ContactFieldsTest.php b/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
index cf70799..fafe451 100644
--- a/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
+++ b/core/modules/contact/src/Tests/Views/ContactFieldsTest.php
@@ -19,7 +19,7 @@ class ContactFieldsTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('field', 'text', 'contact');
+  public static $modules = ['field', 'text', 'contact'];
 
   /**
    * Contains the field storage definition for contact used for this test.
@@ -31,11 +31,11 @@ class ContactFieldsTest extends ViewTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => strtolower($this->randomMachineName()),
       'entity_type' => 'contact_message',
       'type' => 'text'
-    ));
+    ]);
     $this->fieldStorage->save();
 
     ContactForm::create([
diff --git a/core/modules/contact/src/Tests/Views/ContactLinkTest.php b/core/modules/contact/src/Tests/Views/ContactLinkTest.php
index 738f67c..f6b6013 100644
--- a/core/modules/contact/src/Tests/Views/ContactLinkTest.php
+++ b/core/modules/contact/src/Tests/Views/ContactLinkTest.php
@@ -27,14 +27,14 @@ class ContactLinkTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('contact_test_views');
+  public static $modules = ['contact_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_contact_link');
+  public static $testViews = ['test_contact_link'];
 
   /**
    * {@inheritdoc}
@@ -42,7 +42,7 @@ class ContactLinkTest extends ViewTestBase {
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('contact_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['contact_test_views']);
 
     $this->userData = $this->container->get('user.data');
   }
@@ -51,39 +51,39 @@ protected function setUp() {
    * Tests contact link.
    */
   public function testContactLink() {
-    $accounts = array();
+    $accounts = [];
     $accounts['root'] = User::load(1);
     // Create an account with access to all contact pages.
-    $admin_account = $this->drupalCreateUser(array('administer users'));
+    $admin_account = $this->drupalCreateUser(['administer users']);
     $accounts['admin'] = $admin_account;
     // Create an account with no access to contact pages.
     $no_contact_account = $this->drupalCreateUser();
     $accounts['no_contact'] = $no_contact_account;
 
     // Create an account with access to contact pages.
-    $contact_account = $this->drupalCreateUser(array('access user contact forms'));
+    $contact_account = $this->drupalCreateUser(['access user contact forms']);
     $accounts['contact'] = $contact_account;
 
     $this->drupalLogin($admin_account);
     $this->drupalGet('test-contact-link');
     // The admin user has access to all contact links beside his own.
-    $this->assertContactLinks($accounts, array('root', 'no_contact', 'contact'));
+    $this->assertContactLinks($accounts, ['root', 'no_contact', 'contact']);
 
     $this->drupalLogin($no_contact_account);
     $this->drupalGet('test-contact-link');
     // Ensure that the user without the permission doesn't see any link.
-    $this->assertContactLinks($accounts, array());
+    $this->assertContactLinks($accounts, []);
 
     $this->drupalLogin($contact_account);
     $this->drupalGet('test-contact-link');
-    $this->assertContactLinks($accounts, array('root', 'admin', 'no_contact'));
+    $this->assertContactLinks($accounts, ['root', 'admin', 'no_contact']);
 
     // Disable contact link for no_contact.
     $this->userData->set('contact', $no_contact_account->id(), 'enabled', FALSE);
     // @todo Remove cache invalidation in https://www.drupal.org/node/2477903.
     Cache::invalidateTags($no_contact_account->getCacheTagsToInvalidate());
     $this->drupalGet('test-contact-link');
-    $this->assertContactLinks($accounts, array('root', 'admin'));
+    $this->assertContactLinks($accounts, ['root', 'admin']);
   }
 
   /**
@@ -100,7 +100,7 @@ public function assertContactLinks(array $accounts, array $names) {
     foreach ($names as $name) {
       $account = $accounts[$name];
 
-      $result = $this->xpath('//div[contains(@class, "views-field-contact")]//a[contains(@href, :url)]', array(':url' => $account->url('contact-form')));
+      $result = $this->xpath('//div[contains(@class, "views-field-contact")]//a[contains(@href, :url)]', [':url' => $account->url('contact-form')]);
       $this->assertTrue(count($result));
     }
   }
diff --git a/core/modules/contact/tests/drupal-7.contact.database.php b/core/modules/contact/tests/drupal-7.contact.database.php
index 115f83c..bd36384 100644
--- a/core/modules/contact/tests/drupal-7.contact.database.php
+++ b/core/modules/contact/tests/drupal-7.contact.database.php
@@ -11,23 +11,23 @@
 
 // Update the default category to that it is not selected.
 db_update('contact')
-  ->fields(array('selected' => '0'))
+  ->fields(['selected' => '0'])
   ->condition('cid', '1')
   ->execute();
 
 // Add a custom contact category.
-db_insert('contact')->fields(array(
+db_insert('contact')->fields([
   'category',
   'recipients',
   'reply',
   'weight',
   'selected'
-))
-  ->values(array(
+])
+  ->values([
   'category' => 'Upgrade test',
   'recipients' => 'test1@example.com,test2@example.com',
   'reply' => 'Test reply',
   'weight' => 1,
   'selected' => 1,
-))
+])
   ->execute();
diff --git a/core/modules/contact/tests/modules/contact_storage_test/contact_storage_test.module b/core/modules/contact/tests/modules/contact_storage_test/contact_storage_test.module
index e20dc43..cef976c 100644
--- a/core/modules/contact/tests/modules/contact_storage_test/contact_storage_test.module
+++ b/core/modules/contact/tests/modules/contact_storage_test/contact_storage_test.module
@@ -15,7 +15,7 @@
  */
 function contact_storage_test_entity_base_field_info(EntityTypeInterface $entity_type) {
   if ($entity_type->id() == 'contact_message') {
-    $fields = array();
+    $fields = [];
 
     $fields['id'] = BaseFieldDefinition::create('integer')
       ->setLabel(t('Message ID'))
@@ -48,12 +48,12 @@ function contact_storage_test_entity_type_alter(array &$entity_types) {
 function contact_storage_test_form_contact_form_form_alter(&$form, FormStateInterface $form_state) {
   /** @var \Drupal\contact\ContactFormInterface $contact_form */
   $contact_form = $form_state->getFormObject()->getEntity();
-  $form['send_a_pony'] = array(
+  $form['send_a_pony'] = [
     '#type' => 'checkbox',
     '#title' => t('Send submitters a voucher for a free pony.'),
     '#description' => t('Enable to send an additional email with a free pony voucher to anyone who submits the form.'),
     '#default_value' => $contact_form->getThirdPartySetting('contact_storage_test', 'send_a_pony', FALSE),
-  );
+  ];
   $form['#entity_builders'][] = 'contact_storage_test_contact_form_form_builder';
 }
 /**
diff --git a/core/modules/contact/tests/src/Functional/ContactAuthenticatedUserTest.php b/core/modules/contact/tests/src/Functional/ContactAuthenticatedUserTest.php
index 4b4a520..306fe5d 100644
--- a/core/modules/contact/tests/src/Functional/ContactAuthenticatedUserTest.php
+++ b/core/modules/contact/tests/src/Functional/ContactAuthenticatedUserTest.php
@@ -16,20 +16,20 @@ class ContactAuthenticatedUserTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('contact');
+  public static $modules = ['contact'];
 
   /**
    * Tests that name and email fields are not present for authenticated users.
    */
   function testContactSiteWideTextfieldsLoggedInTestCase() {
-    $this->drupalLogin($this->drupalCreateUser(array('access site-wide contact form')));
+    $this->drupalLogin($this->drupalCreateUser(['access site-wide contact form']));
     $this->drupalGet('contact');
 
     // Ensure that there is no textfield for name.
-    $this->assertFalse($this->xpath('//input[@name=:name]', array(':name' => 'name')));
+    $this->assertFalse($this->xpath('//input[@name=:name]', [':name' => 'name']));
 
     // Ensure that there is no textfield for email.
-    $this->assertFalse($this->xpath('//input[@name=:name]', array(':name' => 'mail')));
+    $this->assertFalse($this->xpath('//input[@name=:name]', [':name' => 'mail']));
   }
 
 }
diff --git a/core/modules/contact/tests/src/Functional/ContactLanguageTest.php b/core/modules/contact/tests/src/Functional/ContactLanguageTest.php
index 47d1533..0c34884 100644
--- a/core/modules/contact/tests/src/Functional/ContactLanguageTest.php
+++ b/core/modules/contact/tests/src/Functional/ContactLanguageTest.php
@@ -20,11 +20,11 @@ class ContactLanguageTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'contact',
     'language',
     'contact_test',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -33,10 +33,10 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in administrative user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'access site-wide contact form',
       'administer languages',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
diff --git a/core/modules/contact/tests/src/Kernel/MessageEntityTest.php b/core/modules/contact/tests/src/Kernel/MessageEntityTest.php
index 70ddea1..e7343b9 100644
--- a/core/modules/contact/tests/src/Kernel/MessageEntityTest.php
+++ b/core/modules/contact/tests/src/Kernel/MessageEntityTest.php
@@ -17,17 +17,17 @@ class MessageEntityTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'system',
     'contact',
     'field',
     'user',
     'contact_test',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('contact', 'contact_test'));
+    $this->installConfig(['contact', 'contact_test']);
   }
 
   /**
@@ -35,7 +35,7 @@ protected function setUp() {
    */
   public function testMessageMethods() {
     $message_storage = $this->container->get('entity.manager')->getStorage('contact_message');
-    $message = $message_storage->create(array('contact_form' => 'feedback'));
+    $message = $message_storage->create(['contact_form' => 'feedback']);
 
     // Check for empty values first.
     $this->assertEqual($message->getMessage(), '');
diff --git a/core/modules/contact/tests/src/Kernel/Migrate/MigrateContactCategoryTest.php b/core/modules/contact/tests/src/Kernel/Migrate/MigrateContactCategoryTest.php
index 89f98b1..ffadad4 100644
--- a/core/modules/contact/tests/src/Kernel/Migrate/MigrateContactCategoryTest.php
+++ b/core/modules/contact/tests/src/Kernel/Migrate/MigrateContactCategoryTest.php
@@ -18,7 +18,7 @@ class MigrateContactCategoryTest extends MigrateDrupal6TestBase {
    *
    * @var array
    */
-  public static $modules = array('contact');
+  public static $modules = ['contact'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/contact/tests/src/Unit/MailHandlerTest.php b/core/modules/contact/tests/src/Unit/MailHandlerTest.php
index 9e5c82c..ce24cf4 100644
--- a/core/modules/contact/tests/src/Unit/MailHandlerTest.php
+++ b/core/modules/contact/tests/src/Unit/MailHandlerTest.php
@@ -80,7 +80,7 @@ protected function setUp() {
 
     $string_translation = $this->getStringTranslationStub();
     $this->contactMailHandler = new MailHandler($this->mailManager, $this->languageManager, $this->logger, $string_translation, $this->entityManager);
-    $language = new Language(array('id' => 'en'));
+    $language = new Language(['id' => 'en']);
 
     $this->languageManager->expects($this->any())
       ->method('getDefaultLanguage')
@@ -156,76 +156,76 @@ function($module, $key, $to, $langcode, $params, $from) use (&$results) {
    * Data provider for ::testSendMailMessages.
    */
   public function getSendMailMessages() {
-    $data = array();
-    $recipients = array('admin@drupal.org', 'user@drupal.org');
-    $default_result = array(
+    $data = [];
+    $recipients = ['admin@drupal.org', 'user@drupal.org'];
+    $default_result = [
       'module' => 'contact',
       'key' => '',
       'to' => implode(', ', $recipients),
       'langcode' => 'en',
-      'params' => array(),
+      'params' => [],
       'from' => 'anonymous@drupal.org',
-    );
-    $results = array();
+    ];
+    $results = [];
     $message = $this->getAnonymousMockMessage($recipients, '');
     $sender = $this->getMockSender();
-    $result = array(
+    $result = [
       'key' => 'page_mail',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'contact_form' => $message->getContactForm(),
-      ),
-    );
+      ],
+    ];
     $results[] = $result + $default_result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
-    $results = array();
+    $results = [];
     $message = $this->getAnonymousMockMessage($recipients, 'reply');
     $sender = $this->getMockSender();
-    $result = array(
+    $result = [
       'key' => 'page_mail',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'contact_form' => $message->getContactForm(),
-      ),
-    );
+      ],
+    ];
     $results[] = $result + $default_result;
     $result['key'] = 'page_autoreply';
     $result['to'] = 'anonymous@drupal.org';
     $result['from'] = NULL;
     $results[] = $result + $default_result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
-    $results = array();
+    $results = [];
     $message = $this->getAnonymousMockMessage($recipients, '', TRUE);
     $sender = $this->getMockSender();
-    $result = array(
+    $result = [
       'key' => 'page_mail',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'contact_form' => $message->getContactForm(),
-      ),
-    );
+      ],
+    ];
     $results[] = $result + $default_result;
     $result['key'] = 'page_copy';
     $result['to'] = 'anonymous@drupal.org';
     $results[] = $result + $default_result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
-    $results = array();
+    $results = [];
     $message = $this->getAnonymousMockMessage($recipients, 'reply', TRUE);
     $sender = $this->getMockSender();
-    $result = array(
+    $result = [
       'key' => 'page_mail',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'contact_form' => $message->getContactForm(),
-      ),
-    );
+      ],
+    ];
     $results[] = $result + $default_result;
     $result['key'] = 'page_copy';
     $result['to'] = 'anonymous@drupal.org';
@@ -233,48 +233,48 @@ public function getSendMailMessages() {
     $result['key'] = 'page_autoreply';
     $result['from'] = NULL;
     $results[] = $result + $default_result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
     //For authenticated user.
-    $results = array();
+    $results = [];
     $message = $this->getAuthenticatedMockMessage();
     $sender = $this->getMockSender(FALSE, 'user@drupal.org');
-    $result = array(
+    $result = [
       'module' => 'contact',
       'key' => 'user_mail',
       'to' => 'user2@drupal.org',
       'langcode' => 'en',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'recipient' => $message->getPersonalRecipient(),
-      ),
+      ],
       'from' => 'user@drupal.org',
-    );
+    ];
     $results[] = $result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
-    $results = array();
+    $results = [];
     $message = $this->getAuthenticatedMockMessage(TRUE);
     $sender = $this->getMockSender(FALSE, 'user@drupal.org');
-    $result = array(
+    $result = [
       'module' => 'contact',
       'key' => 'user_mail',
       'to' => 'user2@drupal.org',
       'langcode' => 'en',
-      'params' => array(
+      'params' => [
         'contact_message' => $message,
         'sender' => $sender,
         'recipient' => $message->getPersonalRecipient(),
-      ),
+      ],
       'from' => 'user@drupal.org',
-    );
+    ];
     $results[] = $result;
 
     $result['key'] = 'user_copy';
     $result['to'] = $result['from'];
     $results[] = $result;
-    $data[] = array($message, $sender, $results);
+    $data[] = [$message, $sender, $results];
 
     return $data;
   }
diff --git a/core/modules/content_moderation/src/ContentModerationStateStorageSchema.php b/core/modules/content_moderation/src/ContentModerationStateStorageSchema.php
index 19ec324..cb87cc1 100644
--- a/core/modules/content_moderation/src/ContentModerationStateStorageSchema.php
+++ b/core/modules/content_moderation/src/ContentModerationStateStorageSchema.php
@@ -19,9 +19,9 @@ protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $res
     // Creates an index to ensure that the lookup in
     // \Drupal\content_moderation\Plugin\Field\ModerationStateFieldItemList::getModerationState()
     // is performant.
-    $schema['content_moderation_state_field_data']['indexes'] += array(
-      'content_moderation_state__lookup' => array('content_entity_type_id', 'content_entity_id', 'content_entity_revision_id'),
-    );
+    $schema['content_moderation_state_field_data']['indexes'] += [
+      'content_moderation_state__lookup' => ['content_entity_type_id', 'content_entity_id', 'content_entity_revision_id'],
+    ];
 
     return $schema;
   }
diff --git a/core/modules/content_moderation/src/Entity/ContentModerationState.php b/core/modules/content_moderation/src/Entity/ContentModerationState.php
index 6d5b39c..cb1bc1f 100644
--- a/core/modules/content_moderation/src/Entity/ContentModerationState.php
+++ b/core/modules/content_moderation/src/Entity/ContentModerationState.php
@@ -148,7 +148,7 @@ public static function updateOrCreateFromEntity(ContentModerationState $content_
    *   An array of default values.
    */
   public static function getCurrentUserId() {
-    return array(\Drupal::currentUser()->id());
+    return [\Drupal::currentUser()->id()];
   }
 
   /**
diff --git a/core/modules/content_moderation/src/ParamConverter/EntityRevisionConverter.php b/core/modules/content_moderation/src/ParamConverter/EntityRevisionConverter.php
index 980c61e..94f10e9 100644
--- a/core/modules/content_moderation/src/ParamConverter/EntityRevisionConverter.php
+++ b/core/modules/content_moderation/src/ParamConverter/EntityRevisionConverter.php
@@ -95,7 +95,7 @@ public function convert($value, $definition, $name, array $defaults) {
       // If the entity type is translatable, ensure we return the proper
       // translation object for the current context.
       if ($latest_revision instanceof EntityInterface && $entity instanceof TranslatableInterface) {
-        $latest_revision = $this->entityManager->getTranslationFromContext($latest_revision, NULL, array('operation' => 'entity_upcast'));
+        $latest_revision = $this->entityManager->getTranslationFromContext($latest_revision, NULL, ['operation' => 'entity_upcast']);
       }
 
       if ($latest_revision->isRevisionTranslationAffected()) {
diff --git a/core/modules/content_moderation/src/Plugin/Field/FieldWidget/ModerationStateWidget.php b/core/modules/content_moderation/src/Plugin/Field/FieldWidget/ModerationStateWidget.php
index 7fe5a6d..970ac33 100644
--- a/core/modules/content_moderation/src/Plugin/Field/FieldWidget/ModerationStateWidget.php
+++ b/core/modules/content_moderation/src/Plugin/Field/FieldWidget/ModerationStateWidget.php
@@ -139,7 +139,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       '#published' => $default->isPublishedState(),
       '#key_column' => $this->column,
     ];
-    $element['#element_validate'][] = array(get_class($this), 'validateElement');
+    $element['#element_validate'][] = [get_class($this), 'validateElement'];
 
     // Use the dropbutton.
     $element['#process'][] = [get_called_class(), 'processActions'];
diff --git a/core/modules/content_moderation/src/Tests/ModerationStateBlockTest.php b/core/modules/content_moderation/src/Tests/ModerationStateBlockTest.php
index e42f536..593a9f9 100644
--- a/core/modules/content_moderation/src/Tests/ModerationStateBlockTest.php
+++ b/core/modules/content_moderation/src/Tests/ModerationStateBlockTest.php
@@ -73,11 +73,11 @@ public function testCustomBlockModeration() {
     $this->assertText(t('basic Moderated block has been created.'));
 
     // Place the block in the Sidebar First region.
-    $instance = array(
+    $instance = [
       'id' => 'moderated_block',
       'settings[label]' => $edit['info[0][value]'],
       'region' => 'sidebar_first',
-    );
+    ];
     $block = BlockContent::load(1);
     $url = 'admin/structure/block/add/block_content:' . $block->uuid() . '/' . $this->config('system.theme')->get('default');
     $this->drupalPostForm($url, $instance, t('Save block'));
diff --git a/core/modules/content_moderation/src/Tests/ModerationStateNodeTest.php b/core/modules/content_moderation/src/Tests/ModerationStateNodeTest.php
index fe36336..49eee6d 100644
--- a/core/modules/content_moderation/src/Tests/ModerationStateNodeTest.php
+++ b/core/modules/content_moderation/src/Tests/ModerationStateNodeTest.php
@@ -48,7 +48,7 @@ public function testCreatingContent() {
     $this->assertNoText('Published');
 
     // Delete the node.
-    $this->drupalPostForm('node/' . $node->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $node->id() . '/delete', [], t('Delete'));
     $this->assertText(t('The Moderated content moderated content has been deleted.'));
 
     // Disable content moderation.
diff --git a/core/modules/content_translation/content_translation.admin.inc b/core/modules/content_translation/content_translation.admin.inc
index 39e3247..f29a7e6 100644
--- a/core/modules/content_translation/content_translation.admin.inc
+++ b/core/modules/content_translation/content_translation.admin.inc
@@ -29,10 +29,10 @@
 function content_translation_field_sync_widget(FieldDefinitionInterface $field, $element_name = 'third_party_settings[content_translation][translation_sync]') {
   // No way to store field sync information on this field.
   if (!($field instanceof ThirdPartySettingsInterface)) {
-    return array();
+    return [];
   }
 
-  $element = array();
+  $element = [];
   $definition = \Drupal::service('plugin.manager.field.field_type')->getDefinition($field->getType());
   $column_groups = $definition['column_groups'];
   if (!empty($column_groups) && count($column_groups) > 1) {
@@ -50,12 +50,12 @@ function content_translation_field_sync_widget(FieldDefinitionInterface $field,
 
     $default = $field->getThirdPartySetting('content_translation', 'translation_sync', $default);
 
-    $element = array(
+    $element = [
       '#type' => 'checkboxes',
       '#title' => t('Translatable elements'),
       '#options' => $options,
       '#default_value' => $default,
-    );
+    ];
 
     if ($require_all_groups_for_translation) {
       // The actual checkboxes are sometimes rendered separately and the parent
@@ -96,7 +96,7 @@ function _content_translation_form_language_content_settings_form_alter(array &$
   $bundle_info_service = \Drupal::service('entity_type.bundle.info');
   foreach ($form['#labels'] as $entity_type_id => $label) {
     $entity_type = $entity_manager->getDefinition($entity_type_id);
-    $storage_definitions = $entity_type instanceof ContentEntityTypeInterface ? $entity_manager->getFieldStorageDefinitions($entity_type_id) : array();
+    $storage_definitions = $entity_type instanceof ContentEntityTypeInterface ? $entity_manager->getFieldStorageDefinitions($entity_type_id) : [];
 
     $entity_type_translatable = $content_translation_manager->isSupported($entity_type_id);
     foreach ($bundle_info_service->getBundleInfo($entity_type_id) as $bundle => $bundle_info) {
@@ -106,7 +106,7 @@ function _content_translation_form_language_content_settings_form_alter(array &$
       // about UI integration.
       $form['settings'][$entity_type_id][$bundle]['settings']['language']['#content_translation_skip_alter'] = TRUE;
       if (!$entity_type_translatable) {
-        $form['settings'][$entity_type_id]['#title'] = t('@label (Translation is not supported).', array('@label' => $entity_type->getLabel()));
+        $form['settings'][$entity_type_id]['#title'] = t('@label (Translation is not supported).', ['@label' => $entity_type->getLabel()]);
         continue;
       }
 
@@ -114,11 +114,11 @@ function _content_translation_form_language_content_settings_form_alter(array &$
       if ($fields) {
         foreach ($fields as $field_name => $definition) {
           if ($definition->isComputed() || (!empty($storage_definitions[$field_name]) && _content_translation_is_field_translatability_configurable($entity_type, $storage_definitions[$field_name]))) {
-            $form['settings'][$entity_type_id][$bundle]['fields'][$field_name] = array(
+            $form['settings'][$entity_type_id][$bundle]['fields'][$field_name] = [
               '#label' => $definition->getLabel(),
               '#type' => 'checkbox',
               '#default_value' => $definition->isTranslatable(),
-            );
+            ];
             // Display the column translatability configuration widget.
             $column_element = content_translation_field_sync_widget($definition, "settings[{$entity_type_id}][{$bundle}][columns][{$field_name}]");
             if ($column_element) {
@@ -129,10 +129,10 @@ function _content_translation_form_language_content_settings_form_alter(array &$
         if (!empty($form['settings'][$entity_type_id][$bundle]['fields'])) {
           // Only show the checkbox to enable translation if the bundles in the
           // entity might have fields and if there are fields to translate.
-          $form['settings'][$entity_type_id][$bundle]['translatable'] = array(
+          $form['settings'][$entity_type_id][$bundle]['translatable'] = [
             '#type' => 'checkbox',
             '#default_value' => $content_translation_manager->isEnabled($entity_type_id, $bundle),
-          );
+          ];
         }
       }
     }
@@ -177,102 +177,102 @@ function _content_translation_preprocess_language_content_settings_table(&$varia
   $element = $variables['element'];
   $build = &$variables['build'];
 
-  array_unshift($build['#header'], array('data' => t('Translatable'), 'class' => array('translatable')));
-  $rows = array();
+  array_unshift($build['#header'], ['data' => t('Translatable'), 'class' => ['translatable']]);
+  $rows = [];
 
   foreach (Element::children($element) as $bundle) {
-    $field_names = !empty($element[$bundle]['fields']) ? Element::children($element[$bundle]['fields']) : array();
+    $field_names = !empty($element[$bundle]['fields']) ? Element::children($element[$bundle]['fields']) : [];
     if (!empty($element[$bundle]['translatable'])) {
       $checkbox_id = $element[$bundle]['translatable']['#id'];
     }
     $rows[$bundle] = $build['#rows'][$bundle];
 
     if (!empty($element[$bundle]['translatable'])) {
-      $translatable = array(
+      $translatable = [
         'data' => $element[$bundle]['translatable'],
-        'class' => array('translatable'),
-      );
+        'class' => ['translatable'],
+      ];
       array_unshift($rows[$bundle]['data'], $translatable);
 
       $rows[$bundle]['data'][1]['data']['#prefix'] = '<label for="' . $checkbox_id . '">';
     }
     else {
-      $translatable = array(
+      $translatable = [
         'data' => t('N/A'),
-        'class' => array('untranslatable'),
-      );
+        'class' => ['untranslatable'],
+      ];
       array_unshift($rows[$bundle]['data'], $translatable);
     }
 
     foreach ($field_names as $field_name) {
       $field_element = &$element[$bundle]['fields'][$field_name];
-      $rows[] = array(
-        'data' => array(
-          array(
+      $rows[] = [
+        'data' => [
+          [
             'data' => drupal_render($field_element),
-            'class' => array('translatable'),
-          ),
-          array(
-            'data' => array(
+            'class' => ['translatable'],
+          ],
+          [
+            'data' => [
               '#prefix' => '<label for="' . $field_element['#id'] . '">',
               '#suffix' => '</label>',
-              'bundle' => array(
+              'bundle' => [
                 '#prefix' => '<span class="visually-hidden">',
                 '#suffix' => '</span> ',
                 '#plain_text' => $element[$bundle]['settings']['#label'],
-              ),
-              'field' => array(
+              ],
+              'field' => [
                 '#plain_text' => $field_element['#label'],
-              ),
-            ),
-            'class' => array('field'),
-          ),
-          array(
+              ],
+            ],
+            'class' => ['field'],
+          ],
+          [
             'data' => '',
-            'class' => array('operations'),
-          ),
-        ),
-        'class' => array('field-settings'),
-      );
+            'class' => ['operations'],
+          ],
+        ],
+        'class' => ['field-settings'],
+      ];
 
       if (!empty($element[$bundle]['columns'][$field_name])) {
         $column_element = &$element[$bundle]['columns'][$field_name];
         foreach (Element::children($column_element) as $key) {
           $column_label = $column_element[$key]['#title'];
           unset($column_element[$key]['#title']);
-          $rows[] = array(
-            'data' => array(
-              array(
+          $rows[] = [
+            'data' => [
+              [
                 'data' => drupal_render($column_element[$key]),
-                'class' => array('translatable'),
-              ),
-              array(
-                'data' => array(
+                'class' => ['translatable'],
+              ],
+              [
+                'data' => [
                   '#prefix' => '<label for="' . $column_element[$key]['#id'] . '">',
                   '#suffix' => '</label>',
-                  'bundle' => array(
+                  'bundle' => [
                     '#prefix' => '<span class="visually-hidden">',
                     '#suffix' => '</span> ',
                     '#plain_text' => $element[$bundle]['settings']['#label'],
-                  ),
-                  'field' => array(
+                  ],
+                  'field' => [
                     '#prefix' => '<span class="visually-hidden">',
                     '#suffix' => '</span> ',
                     '#plain_text' => $field_element['#label'],
-                  ),
-                  'columns' => array(
+                  ],
+                  'columns' => [
                     '#plain_text' => $column_label,
-                  ),
-                ),
-                'class' => array('column'),
-              ),
-              array(
+                  ],
+                ],
+                'class' => ['column'],
+              ],
+              [
                 'data' => '',
-                'class' => array('operations'),
-              ),
-            ),
-            'class' => array('column-settings'),
-          );
+                'class' => ['operations'],
+              ],
+            ],
+            'class' => ['column-settings'],
+          ];
         }
       }
     }
@@ -295,7 +295,7 @@ function content_translation_form_language_content_settings_validate(array $form
 
         $translatable_fields = isset($settings[$entity_type][$bundle]['fields']) ? array_filter($settings[$entity_type][$bundle]['fields']) : FALSE;
         if (empty($translatable_fields)) {
-          $t_args = array('%bundle' => $form['settings'][$entity_type][$bundle]['settings']['#label']);
+          $t_args = ['%bundle' => $form['settings'][$entity_type][$bundle]['settings']['#label']];
           $form_state->setErrorByName($name, t('At least one field needs to be translatable to enable %bundle for translation.', $t_args));
         }
 
@@ -304,7 +304,7 @@ function content_translation_form_language_content_settings_validate(array $form
           foreach (\Drupal::languageManager()->getLanguages(LanguageInterface::STATE_LOCKED) as $language) {
             $locked_languages[] = $language->getName();
           }
-          $form_state->setErrorByName($name, t('Translation is not supported if language is always one of: @locked_languages', array('@locked_languages' => implode(', ', $locked_languages))));
+          $form_state->setErrorByName($name, t('Translation is not supported if language is always one of: @locked_languages', ['@locked_languages' => implode(', ', $locked_languages)]));
         }
       }
     }
diff --git a/core/modules/content_translation/content_translation.module b/core/modules/content_translation/content_translation.module
index a8416db..68fafbf 100644
--- a/core/modules/content_translation/content_translation.module
+++ b/core/modules/content_translation/content_translation.module
@@ -23,11 +23,11 @@ function content_translation_help($route_name, RouteMatchInterface $route_match)
     case 'help.page.content_translation':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Content Translation module allows you to translate content, comments, custom blocks, taxonomy terms, users and other <a href=":field_help" title="Field module help, with background on content entities">content entities</a>. Together with the modules <a href=":language">Language</a>, <a href=":config-trans">Configuration Translation</a>, and <a href=":locale">Interface Translation</a>, it allows you to build multilingual websites. For more information, see the <a href=":translation-entity">online documentation for the Content Translation module</a>.', array(':locale' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', array('name' => 'locale')) : '#', ':config-trans' => (\Drupal::moduleHandler()->moduleExists('config_translation')) ? \Drupal::url('help.page', array('name' => 'config_translation')) : '#', ':language' => \Drupal::url('help.page', array('name' => 'language')), ':translation-entity' => 'https://www.drupal.org/documentation/modules/translation', ':field_help' => \Drupal::url('help.page', array('name' => 'field')))) . '</p>';
+      $output .= '<p>' . t('The Content Translation module allows you to translate content, comments, custom blocks, taxonomy terms, users and other <a href=":field_help" title="Field module help, with background on content entities">content entities</a>. Together with the modules <a href=":language">Language</a>, <a href=":config-trans">Configuration Translation</a>, and <a href=":locale">Interface Translation</a>, it allows you to build multilingual websites. For more information, see the <a href=":translation-entity">online documentation for the Content Translation module</a>.', [':locale' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', ['name' => 'locale']) : '#', ':config-trans' => (\Drupal::moduleHandler()->moduleExists('config_translation')) ? \Drupal::url('help.page', ['name' => 'config_translation']) : '#', ':language' => \Drupal::url('help.page', ['name' => 'language']), ':translation-entity' => 'https://www.drupal.org/documentation/modules/translation', ':field_help' => \Drupal::url('help.page', ['name' => 'field'])]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Enabling translation') . '</dt>';
-      $output .= '<dd>' . t('In order to translate content, the website must have at least two <a href=":url">languages</a>. When that is the case, you can enable translation for the desired content entities on the <a href=":translation-entity">Content language</a> page. When enabling translation you can choose the default language for content and decide whether to show the language selection field on the content editing forms.', array(':url' => \Drupal::url('entity.configurable_language.collection'), ':translation-entity' => \Drupal::url('language.content_settings_page'), ':language-help' => \Drupal::url('help.page', array('name' => 'language')))) . '</dd>';
+      $output .= '<dd>' . t('In order to translate content, the website must have at least two <a href=":url">languages</a>. When that is the case, you can enable translation for the desired content entities on the <a href=":translation-entity">Content language</a> page. When enabling translation you can choose the default language for content and decide whether to show the language selection field on the content editing forms.', [':url' => \Drupal::url('entity.configurable_language.collection'), ':translation-entity' => \Drupal::url('language.content_settings_page'), ':language-help' => \Drupal::url('help.page', ['name' => 'language'])]) . '</dd>';
       $output .= '<dt>' . t('Enabling field translation') . '</dt>';
       $output .= '<dd>' . t('You can define which fields of a content entity can be translated. For example, you might want to translate the title and body field while leaving the image field untranslated. If you exclude a field from being translated, it will still show up in the content editing form, but any changes made to that field will be applied to <em>all</em> translations of that content.') . '</dd>';
       $output .= '<dt>' . t('Translating content') . '</dt>';
@@ -42,7 +42,7 @@ function content_translation_help($route_name, RouteMatchInterface $route_match)
     case 'language.content_settings_page':
       $output = '';
       if (!\Drupal::languageManager()->isMultilingual()) {
-        $output .= '<p>' . t('Before you can translate content, there must be at least two languages added on the <a href=":url">languages administration</a> page.', array(':url' => \Drupal::url('entity.configurable_language.collection'))) . '</p>';
+        $output .= '<p>' . t('Before you can translate content, there must be at least two languages added on the <a href=":url">languages administration</a> page.', [':url' => \Drupal::url('entity.configurable_language.collection')]) . '</p>';
       }
       return $output;
   }
@@ -134,7 +134,7 @@ function content_translation_entity_type_alter(array &$entity_types) {
 
       $translation = $entity_type->get('translation');
       if (!$translation || !isset($translation['content_translation'])) {
-        $translation['content_translation'] = array();
+        $translation['content_translation'] = [];
       }
 
       if ($entity_type->hasLinkTemplate('canonical')) {
@@ -148,9 +148,9 @@ function content_translation_entity_type_alter(array &$entity_types) {
         }
         // @todo Remove this as soon as menu access checks rely on the
         //   controller. See https://www.drupal.org/node/2155787.
-        $translation['content_translation'] += array(
+        $translation['content_translation'] += [
           'access_callback' => 'content_translation_translate_access',
-        );
+        ];
       }
       $entity_type->set('translation', $translation);
     }
@@ -215,7 +215,7 @@ function content_translation_field_info_alter(&$info) {
   foreach ($info as $key => $settings) {
     // Supply the column_groups key if it's not there.
     if (empty($settings['column_groups'])) {
-      $info[$key]['column_groups'] = array();
+      $info[$key]['column_groups'] = [];
     }
   }
 }
@@ -224,13 +224,13 @@ function content_translation_field_info_alter(&$info) {
  * Implements hook_entity_operation().
  */
 function content_translation_entity_operation(EntityInterface $entity) {
-  $operations = array();
+  $operations = [];
   if ($entity->hasLinkTemplate('drupal:content-translation-overview') && content_translation_translate_access($entity)->isAllowed()) {
-    $operations['translate'] = array(
+    $operations['translate'] = [
       'title' => t('Translate'),
       'url' => $entity->urlInfo('drupal:content-translation-overview'),
       'weight' => 50,
-    );
+    ];
   }
   return $operations;
 }
@@ -350,16 +350,16 @@ function content_translation_language_fallback_candidates_entity_view_alter(&$ca
  * Implements hook_entity_extra_field_info().
  */
 function content_translation_entity_extra_field_info() {
-  $extra = array();
+  $extra = [];
   $bundle_info_service = \Drupal::service('entity_type.bundle.info');
   foreach (\Drupal::entityManager()->getDefinitions() as $entity_type => $info) {
     foreach ($bundle_info_service->getBundleInfo($entity_type) as $bundle => $bundle_info) {
       if (\Drupal::service('content_translation.manager')->isEnabled($entity_type, $bundle)) {
-        $extra[$entity_type][$bundle]['form']['translation'] = array(
+        $extra[$entity_type][$bundle]['form']['translation'] = [
           'label' => t('Translation'),
           'description' => t('Translation settings'),
           'weight' => 10,
-        );
+        ];
       }
     }
   }
@@ -374,23 +374,23 @@ function content_translation_form_field_config_edit_form_alter(array &$form, For
   $field = $form_state->getFormObject()->getEntity();
   $bundle_is_translatable = \Drupal::service('content_translation.manager')->isEnabled($field->getTargetEntityTypeId(), $field->getTargetBundle());
 
-  $form['translatable'] = array(
+  $form['translatable'] = [
     '#type' => 'checkbox',
     '#title' => t('Users may translate this field'),
     '#default_value' => $field->isTranslatable(),
     '#weight' => -1,
     '#disabled' => !$bundle_is_translatable,
     '#access' => $field->getFieldStorageDefinition()->isTranslatable(),
-  );
+  ];
 
   // Provide helpful pointers for administrators.
   if (\Drupal::currentUser()->hasPermission('administer content translation') &&  !$bundle_is_translatable) {
-    $toggle_url = \Drupal::url('language.content_settings_page', array(), array(
+    $toggle_url = \Drupal::url('language.content_settings_page', [], [
       'query' => \Drupal::destination()->getAsArray(),
-    ));
-    $form['translatable']['#description'] = t('To configure translation for this field, <a href=":language-settings-url">enable language support</a> for this type.', array(
+    ]);
+    $form['translatable']['#description'] = t('To configure translation for this field, <a href=":language-settings-url">enable language support</a> for this type.', [
       ':language-settings-url' => $toggle_url,
-    ));
+    ]);
   }
 
   if ($field->isTranslatable()) {
@@ -454,7 +454,7 @@ function content_translation_enable_widget($entity_type, $bundle, array &$form,
   $context = $form_state->get(['language', $key]) ?: [];
   $context += ['entity_type' => $entity_type, 'bundle' => $bundle];
   $form_state->set(['language', $key], $context);
-  $element = content_translation_language_configuration_element_process(array('#name' => $key), $form_state, $form);
+  $element = content_translation_language_configuration_element_process(['#name' => $key], $form_state, $form);
   unset($element['content_translation']['#element_validate']);
   return $element;
 }
@@ -474,14 +474,14 @@ function content_translation_language_configuration_element_process(array $eleme
     $form_state->set(['content_translation', 'key'], $key);
     $context = $form_state->get(['language', $key]);
 
-    $element['content_translation'] = array(
+    $element['content_translation'] = [
       '#type' => 'checkbox',
       '#title' => t('Enable translation'),
       // For new bundle, we don't know the bundle name yet,
       // default to no translatability.
       '#default_value' => $context['bundle'] ? \Drupal::service('content_translation.manager')->isEnabled($context['entity_type'], $context['bundle']) : FALSE,
-      '#element_validate' => array('content_translation_language_configuration_element_validate'),
-    );
+      '#element_validate' => ['content_translation_language_configuration_element_validate'],
+    ];
 
     $submit_name = isset($form['actions']['save_continue']) ? 'save_continue' : 'submit';
     // Only add the submit handler on the submit button if the #submit property
@@ -515,7 +515,7 @@ function content_translation_language_configuration_element_validate($element, F
     // @todo Set the correct form element name as soon as the element parents
     //   are correctly set. We should be using NestedArray::getValue() but for
     //   now we cannot.
-    $form_state->setErrorByName('', t('"Show language selector" is not compatible with translating content that has default language: %choice. Either do not hide the language selector or pick a specific language.', array('%choice' => $locked_languages[$values['langcode']])));
+    $form_state->setErrorByName('', t('"Show language selector" is not compatible with translating content that has default language: %choice. Either do not hide the language selector or pick a specific language.', ['%choice' => $locked_languages[$values['langcode']]]));
   }
 }
 
@@ -529,7 +529,7 @@ function content_translation_language_configuration_element_validate($element, F
 function content_translation_language_configuration_element_submit(array $form, FormStateInterface $form_state) {
   $key = $form_state->get(['content_translation', 'key']);
   $context = $form_state->get(['language', $key]);
-  $enabled = $form_state->getValue(array($key, 'content_translation'));
+  $enabled = $form_state->getValue([$key, 'content_translation']);
 
   if (\Drupal::service('content_translation.manager')->isEnabled($context['entity_type'], $context['bundle']) != $enabled) {
     \Drupal::service('content_translation.manager')->setEnabled($context['entity_type'], $context['bundle'], $enabled);
@@ -579,14 +579,14 @@ function content_translation_page_attachments(&$page) {
           ->setOption('language', $language)
           ->setAbsolute()
           ->toString();
-        $page['#attached']['html_head_link'][] = array(
-          array(
+        $page['#attached']['html_head_link'][] = [
+          [
             'rel' => 'alternate',
             'hreflang' => $language->getId(),
             'href' => $url,
-          ),
+          ],
           TRUE,
-        );
+        ];
       }
     }
     // Since entity was found, no need to iterate further.
diff --git a/core/modules/content_translation/src/ContentTranslationHandler.php b/core/modules/content_translation/src/ContentTranslationHandler.php
index c155069..9a6050d 100644
--- a/core/modules/content_translation/src/ContentTranslationHandler.php
+++ b/core/modules/content_translation/src/ContentTranslationHandler.php
@@ -110,7 +110,7 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
    * {@inheritdoc}
    */
   public function getFieldDefinitions() {
-    $definitions = array();
+    $definitions = [];
 
     $definitions['content_translation_source'] = BaseFieldDefinition::create('language')
       ->setLabel(t('Translation source'))
@@ -287,7 +287,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
       $title = $this->entityFormTitle($entity);
       // When editing the original values display just the entity label.
       if ($is_translation) {
-        $t_args = array('%language' => $languages[$form_langcode]->getName(), '%title' => $entity->label(), '@title' => $title);
+        $t_args = ['%language' => $languages[$form_langcode]->getName(), '%title' => $entity->label(), '@title' => $title];
         $title = empty($source_langcode) ? t('@title [%language translation]', $t_args) : t('Create %language translation of %title', $t_args);
       }
       $form['#title'] = $title;
@@ -296,25 +296,25 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
     // Display source language selector only if we are creating a new
     // translation and there are at least two translations available.
     if ($has_translations && $new_translation) {
-      $form['source_langcode'] = array(
+      $form['source_langcode'] = [
         '#type' => 'details',
-        '#title' => t('Source language: @language', array('@language' => $languages[$source_langcode]->getName())),
+        '#title' => t('Source language: @language', ['@language' => $languages[$source_langcode]->getName()]),
         '#tree' => TRUE,
         '#weight' => -100,
         '#multilingual' => TRUE,
-        'source' => array(
+        'source' => [
           '#title' => t('Select source language'),
           '#title_display' => 'invisible',
           '#type' => 'select',
           '#default_value' => $source_langcode,
-          '#options' => array(),
-        ),
-        'submit' => array(
+          '#options' => [],
+        ],
+        'submit' => [
           '#type' => 'submit',
           '#value' => t('Change'),
-          '#submit' => array(array($this, 'entityFormSourceChange')),
-        ),
-      );
+          '#submit' => [[$this, 'entityFormSourceChange']],
+        ],
+      ];
       foreach ($this->languageManager->getLanguages() as $language) {
         if (isset($translations[$language->getId()])) {
           $form['source_langcode']['source']['#options'][$language->getId()] = $language->getName();
@@ -335,7 +335,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
     if (isset($language_widget['widget'][0]['value']) && !$is_translation && $has_translations) {
       $language_select = &$language_widget['widget'][0]['value'];
       if ($language_select['#type'] == 'language_select') {
-        $options = array();
+        $options = [];
         foreach ($this->languageManager->getLanguages() as $language) {
           // Show the current language, and the languages for which no
           // translation already exists.
@@ -354,20 +354,20 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
       // Replace the delete button with the delete translation one.
       if (!$new_translation) {
         $weight = 100;
-        foreach (array('delete', 'submit') as $key) {
+        foreach (['delete', 'submit'] as $key) {
           if (isset($form['actions'][$key]['weight'])) {
             $weight = $form['actions'][$key]['weight'];
             break;
           }
         }
         $access = $this->getTranslationAccess($entity, 'delete')->isAllowed() || ($entity->access('delete') && $this->entityType->hasLinkTemplate('delete-form'));
-        $form['actions']['delete_translation'] = array(
+        $form['actions']['delete_translation'] = [
           '#type' => 'submit',
           '#value' => t('Delete translation'),
           '#weight' => $weight,
-          '#submit' => array(array($this, 'entityFormDeleteTranslation')),
+          '#submit' => [[$this, 'entityFormDeleteTranslation']],
           '#access' => $access,
-        );
+        ];
       }
 
       // Always remove the delete button on translation forms.
@@ -377,23 +377,23 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
     // We need to display the translation tab only when there is at least one
     // translation available or a new one is about to be created.
     if ($new_translation || $has_translations) {
-      $form['content_translation'] = array(
+      $form['content_translation'] = [
         '#type' => 'details',
         '#title' => t('Translation'),
         '#tree' => TRUE,
         '#weight' => 10,
         '#access' => $this->getTranslationAccess($entity, $source_langcode ? 'create' : 'update')->isAllowed(),
         '#multilingual' => TRUE,
-      );
+      ];
 
       if (isset($form['advanced'])) {
-        $form['content_translation'] += array(
+        $form['content_translation'] += [
           '#group' => 'advanced',
           '#weight' => 100,
-          '#attributes' => array(
-            'class' => array('entity-translation-options'),
-          ),
-        );
+          '#attributes' => [
+            'class' => ['entity-translation-options'],
+          ],
+        ];
       }
 
       // A new translation is enabled by default.
@@ -414,30 +414,30 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
         t('An unpublished translation will not be visible without translation permissions.') :
         t('Only this translation is published. You must publish at least one more translation to unpublish this one.');
 
-      $form['content_translation']['status'] = array(
+      $form['content_translation']['status'] = [
         '#type' => 'checkbox',
         '#title' => t('This translation is published'),
         '#default_value' => $status,
         '#description' => $description,
         '#disabled' => !$enabled,
-      );
+      ];
 
       $translate = !$new_translation && $metadata->isOutdated();
       if (!$translate) {
-        $form['content_translation']['retranslate'] = array(
+        $form['content_translation']['retranslate'] = [
           '#type' => 'checkbox',
           '#title' => t('Flag other translations as outdated'),
           '#default_value' => FALSE,
           '#description' => t('If you made a significant change, which means the other translations should be updated, you can flag all translations of this content as outdated. This will not change any other property of them, like whether they are published or not.'),
-        );
+        ];
       }
       else {
-        $form['content_translation']['outdated'] = array(
+        $form['content_translation']['outdated'] = [
           '#type' => 'checkbox',
           '#title' => t('This translation needs to be updated'),
           '#default_value' => $translate,
           '#description' => t('When this option is checked, this translation needs to be updated. Uncheck when the translation is up to date again.'),
-        );
+        ];
         $form['content_translation']['#open'] = TRUE;
       }
 
@@ -449,7 +449,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
       elseif (($account = $metadata->getAuthor()) && $account->id()) {
         $uid = $account->id();
       }
-      $form['content_translation']['uid'] = array(
+      $form['content_translation']['uid'] = [
         '#type' => 'entity_autocomplete',
         '#title' => t('Authored by'),
         '#target_type' => 'user',
@@ -457,34 +457,34 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
         // Validation is done by static::entityFormValidate().
         '#validate_reference' => FALSE,
         '#maxlength' => 60,
-        '#description' => t('Leave blank for %anonymous.', array('%anonymous' => \Drupal::config('user.settings')->get('anonymous'))),
-      );
+        '#description' => t('Leave blank for %anonymous.', ['%anonymous' => \Drupal::config('user.settings')->get('anonymous')]),
+      ];
 
       $date = $new_translation ? REQUEST_TIME : $metadata->getCreatedTime();
-      $form['content_translation']['created'] = array(
+      $form['content_translation']['created'] = [
         '#type' => 'textfield',
         '#title' => t('Authored on'),
         '#maxlength' => 25,
-        '#description' => t('Format: %time. The date format is YYYY-MM-DD and %timezone is the time zone offset from UTC. Leave blank to use the time of form submission.', array('%time' => format_date(REQUEST_TIME, 'custom', 'Y-m-d H:i:s O'), '%timezone' => format_date(REQUEST_TIME, 'custom', 'O'))),
+        '#description' => t('Format: %time. The date format is YYYY-MM-DD and %timezone is the time zone offset from UTC. Leave blank to use the time of form submission.', ['%time' => format_date(REQUEST_TIME, 'custom', 'Y-m-d H:i:s O'), '%timezone' => format_date(REQUEST_TIME, 'custom', 'O')]),
         '#default_value' => $new_translation || !$date ? '' : format_date($date, 'custom', 'Y-m-d H:i:s O'),
-      );
+      ];
 
       if (isset($language_widget)) {
         $language_widget['#multilingual'] = TRUE;
       }
 
-      $form['#process'][] = array($this, 'entityFormSharedElements');
+      $form['#process'][] = [$this, 'entityFormSharedElements'];
     }
 
     // Process the submitted values before they are stored.
-    $form['#entity_builders'][] = array($this, 'entityFormEntityBuild');
+    $form['#entity_builders'][] = [$this, 'entityFormEntityBuild'];
 
     // Handle entity validation.
-    $form['#validate'][] = array($this, 'entityFormValidate');
+    $form['#validate'][] = [$this, 'entityFormValidate'];
 
     // Handle entity deletion.
     if (isset($form['actions']['delete'])) {
-      $form['actions']['delete']['#submit'][] = array($this, 'entityFormDelete');
+      $form['actions']['delete']['#submit'][] = [$this, 'entityFormDelete'];
     }
 
     // Handle entity form submission before the entity has been saved.
@@ -506,7 +506,7 @@ public function entityFormSharedElements($element, FormStateInterface $form_stat
     // @todo Find a more reliable way to determine if a form element concerns a
     //   multilingual value.
     if (!isset($ignored_types)) {
-      $ignored_types = array_flip(array('actions', 'value', 'hidden', 'vertical_tabs', 'token', 'details'));
+      $ignored_types = array_flip(['actions', 'value', 'hidden', 'vertical_tabs', 'token', 'details']);
     }
 
     foreach (Element::children($element) as $key) {
@@ -551,7 +551,7 @@ protected function addTranslatabilityClue(&$element) {
     // Elements which can have a #title attribute according to FAPI Reference.
     if (!isset($suffix)) {
       $suffix = ' <span class="translation-entity-all-languages">(' . t('all languages') . ')</span>';
-      $fapi_title_elements = array_flip(array('checkbox', 'checkboxes', 'date', 'details', 'fieldset', 'file', 'item', 'password', 'password_confirm', 'radio', 'radios', 'select', 'text_format', 'textarea', 'textfield', 'weight'));
+      $fapi_title_elements = array_flip(['checkbox', 'checkboxes', 'date', 'details', 'fieldset', 'file', 'item', 'password', 'password_confirm', 'radio', 'radios', 'select', 'text_format', 'textarea', 'textfield', 'weight']);
     }
 
     // Update #title attribute for all elements that are allowed to have a
@@ -587,7 +587,7 @@ protected function addTranslatabilityClue(&$element) {
   public function entityFormEntityBuild($entity_type, EntityInterface $entity, array $form, FormStateInterface $form_state) {
     $form_object = $form_state->getFormObject();
     $form_langcode = $form_object->getFormLangcode($form_state);
-    $values = &$form_state->getValue('content_translation', array());
+    $values = &$form_state->getValue('content_translation', []);
 
     $metadata = $this->manager->getTranslationMetadata($entity);
     $metadata->setAuthor(!empty($values['uid']) ? User::load($values['uid']) : User::load(0));
@@ -615,7 +615,7 @@ function entityFormValidate($form, FormStateInterface $form_state) {
       $translation = $form_state->getValue('content_translation');
       // Validate the "authored by" field.
       if (!empty($translation['uid']) && !($account = User::load($translation['uid']))) {
-        $form_state->setErrorByName('content_translation][uid', t('The translation authoring username %name does not exist.', array('%name' => $account->getUsername())));
+        $form_state->setErrorByName('content_translation][uid', t('The translation authoring username %name does not exist.', ['%name' => $account->getUsername()]));
       }
       // Validate the "authored on" field.
       if (!empty($translation['created']) && strtotime($translation['created']) === FALSE) {
@@ -656,16 +656,16 @@ function entityFormSubmit($form, FormStateInterface $form_state) {
   public function entityFormSourceChange($form, FormStateInterface $form_state) {
     $form_object = $form_state->getFormObject();
     $entity = $form_object->getEntity();
-    $source = $form_state->getValue(array('source_langcode', 'source'));
+    $source = $form_state->getValue(['source_langcode', 'source']);
 
     $entity_type_id = $entity->getEntityTypeId();
-    $form_state->setRedirect("entity.$entity_type_id.content_translation_add", array(
+    $form_state->setRedirect("entity.$entity_type_id.content_translation_add", [
       $entity_type_id => $entity->id(),
       'source' => $source,
       'target' => $form_object->getFormLangcode($form_state),
-    ));
+    ]);
     $languages = $this->languageManager->getLanguages();
-    drupal_set_message(t('Source language set to: %language', array('%language' => $languages[$source]->getName())));
+    drupal_set_message(t('Source language set to: %language', ['%language' => $languages[$source]->getName()]));
   }
 
   /**
@@ -677,7 +677,7 @@ function entityFormDelete($form, FormStateInterface $form_state) {
     $form_object = $form_state->getFormObject()->getEntity();
     $entity = $form_object->getEntity();
     if (count($entity->getTranslationLanguages()) > 1) {
-      drupal_set_message(t('This will delete all the translations of %label.', array('%label' => $entity->label())), 'warning');
+      drupal_set_message(t('This will delete all the translations of %label.', ['%label' => $entity->label()]), 'warning');
     }
   }
 
diff --git a/core/modules/content_translation/src/ContentTranslationManager.php b/core/modules/content_translation/src/ContentTranslationManager.php
index a1c2391..70adc28 100644
--- a/core/modules/content_translation/src/ContentTranslationManager.php
+++ b/core/modules/content_translation/src/ContentTranslationManager.php
@@ -66,7 +66,7 @@ public function isSupported($entity_type_id) {
    * {@inheritdoc}
    */
   public function getSupportedEntityTypes() {
-    $supported_types = array();
+    $supported_types = [];
     foreach ($this->entityManager->getDefinitions() as $entity_type_id => $entity_type) {
       if ($this->isSupported($entity_type_id)) {
         $supported_types[$entity_type_id] = $entity_type;
@@ -82,7 +82,7 @@ public function setEnabled($entity_type_id, $bundle, $value) {
     $config = $this->loadContentLanguageSettings($entity_type_id, $bundle);
     $config->setThirdPartySetting('content_translation', 'enabled', $value)->save();
     $entity_type = $this->entityManager->getDefinition($entity_type_id);
-    $this->updatesManager->updateDefinitions(array($entity_type_id => $entity_type));
+    $this->updatesManager->updateDefinitions([$entity_type_id => $entity_type]);
   }
 
   /**
@@ -92,7 +92,7 @@ public function isEnabled($entity_type_id, $bundle = NULL) {
     $enabled = FALSE;
 
     if ($this->isSupported($entity_type_id)) {
-      $bundles = !empty($bundle) ? array($bundle) : array_keys($this->entityManager->getBundleInfo($entity_type_id));
+      $bundles = !empty($bundle) ? [$bundle] : array_keys($this->entityManager->getBundleInfo($entity_type_id));
       foreach ($bundles as $bundle) {
         $config = $this->loadContentLanguageSettings($entity_type_id, $bundle);
         if ($config->getThirdPartySetting('content_translation', 'enabled', FALSE)) {
diff --git a/core/modules/content_translation/src/Controller/ContentTranslationController.php b/core/modules/content_translation/src/Controller/ContentTranslationController.php
index 43b59aa..c97f185 100644
--- a/core/modules/content_translation/src/Controller/ContentTranslationController.php
+++ b/core/modules/content_translation/src/Controller/ContentTranslationController.php
@@ -97,7 +97,7 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
     $translations = $entity->getTranslationLanguages();
     $field_ui = $this->moduleHandler()->moduleExists('field_ui') && $account->hasPermission('administer ' . $entity_type_id . ' fields');
 
-    $rows = array();
+    $rows = [];
     $show_source_column = FALSE;
 
     if ($this->languageManager()->isMultilingual()) {
@@ -123,41 +123,41 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
 
         $add_url = new Url(
           "entity.$entity_type_id.content_translation_add",
-          array(
+          [
             'source' => $original,
             'target' => $language->getId(),
             $entity_type_id => $entity->id(),
-          ),
-          array(
+          ],
+          [
             'language' => $language,
-          )
+          ]
         );
         $edit_url = new Url(
           "entity.$entity_type_id.content_translation_edit",
-          array(
+          [
             'language' => $language->getId(),
             $entity_type_id => $entity->id(),
-          ),
-          array(
+          ],
+          [
             'language' => $language,
-          )
+          ]
         );
         $delete_url = new Url(
           "entity.$entity_type_id.content_translation_delete",
-          array(
+          [
             'language' => $language->getId(),
             $entity_type_id => $entity->id(),
-          ),
-          array(
+          ],
+          [
             'language' => $language,
-          )
+          ]
         );
-        $operations = array(
-          'data' => array(
+        $operations = [
+          'data' => [
             '#type' => 'operations',
-            '#links' => array(),
-          ),
-        );
+            '#links' => [],
+          ],
+        ];
 
         $links = &$operations['data']['#links'];
         if (array_key_exists($langcode, $translations)) {
@@ -167,7 +167,7 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
           $source = $metadata->getSource() ?: LanguageInterface::LANGCODE_NOT_SPECIFIED;
           $is_original = $langcode == $original;
           $label = $entity->getTranslation($langcode)->label();
-          $link = isset($links->links[$langcode]['url']) ? $links->links[$langcode] : array('url' => $entity->urlInfo());
+          $link = isset($links->links[$langcode]['url']) ? $links->links[$langcode] : ['url' => $entity->urlInfo()];
           if (!empty($link['url'])) {
             $link['url']->setOption('language', $language);
             $row_title = $this->l($label, $link['url']);
@@ -196,17 +196,17 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
           if (isset($links['edit'])) {
             $links['edit']['title'] = $this->t('Edit');
           }
-          $status = array('data' => array(
+          $status = ['data' => [
             '#type' => 'inline_template',
             '#template' => '<span class="status">{% if status %}{{ "Published"|t }}{% else %}{{ "Not published"|t }}{% endif %}</span>{% if outdated %} <span class="marker">{{ "outdated"|t }}</span>{% endif %}',
-            '#context' => array(
+            '#context' => [
               'status' => $metadata->isPublished(),
               'outdated' => $metadata->isOutdated(),
-            ),
-          ));
+            ],
+          ]];
 
           if ($is_original) {
-            $language_name = $this->t('<strong>@language_name (Original language)</strong>', array('@language_name' => $language_name));
+            $language_name = $this->t('<strong>@language_name (Original language)</strong>', ['@language_name' => $language_name]);
             $source_name = $this->t('n/a');
           }
           else {
@@ -217,17 +217,17 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
               ->merge(CacheableMetadata::createFromObject($delete_access))
               ->merge(CacheableMetadata::createFromObject($translation_access));
             if ($entity->access('delete') && $entity_type->hasLinkTemplate('delete-form')) {
-              $links['delete'] = array(
+              $links['delete'] = [
                 'title' => $this->t('Delete'),
                 'url' => $entity->urlInfo('delete-form'),
                 'language' => $language,
-              );
+              ];
             }
             elseif ($translation_access->isAllowed()) {
-              $links['delete'] = array(
+              $links['delete'] = [
                 'title' => $this->t('Delete'),
                 'url' => $delete_url,
-              );
+              ];
             }
           }
         }
@@ -241,58 +241,58 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
             ->merge(CacheableMetadata::createFromObject($create_translation_access));
           if ($source != $langcode && $create_translation_access->isAllowed()) {
             if ($translatable) {
-              $links['add'] = array(
+              $links['add'] = [
                 'title' => $this->t('Add'),
                 'url' => $add_url,
-              );
+              ];
             }
             elseif ($field_ui) {
               $url = new Url('language.content_settings_page');
 
               // Link directly to the fields tab to make it easier to find the
               // setting to enable translation on fields.
-              $links['nofields'] = array(
+              $links['nofields'] = [
                 'title' => $this->t('No translatable fields'),
                 'url' => $url,
-              );
+              ];
             }
           }
 
           $status = $this->t('Not translated');
         }
         if ($show_source_column) {
-          $rows[] = array(
+          $rows[] = [
             $language_name,
             $row_title,
             $source_name,
             $status,
             $operations,
-          );
+          ];
         }
         else {
-          $rows[] = array($language_name, $row_title, $status, $operations);
+          $rows[] = [$language_name, $row_title, $status, $operations];
         }
       }
     }
     if ($show_source_column) {
-      $header = array(
+      $header = [
         $this->t('Language'),
         $this->t('Translation'),
         $this->t('Source language'),
         $this->t('Status'),
         $this->t('Operations'),
-      );
+      ];
     }
     else {
-      $header = array(
+      $header = [
         $this->t('Language'),
         $this->t('Translation'),
         $this->t('Status'),
         $this->t('Operations'),
-      );
+      ];
     }
 
-    $build['#title'] = $this->t('Translations of %label', array('%label' => $entity->label()));
+    $build['#title'] = $this->t('Translations of %label', ['%label' => $entity->label()]);
 
     // Add metadata to the build render array to let other modules know about
     // which entity this is.
@@ -301,11 +301,11 @@ public function overview(RouteMatchInterface $route_match, $entity_type_id = NUL
       ->addCacheTags($entity->getCacheTags())
       ->applyTo($build);
 
-    $build['content_translation_overview'] = array(
+    $build['content_translation_overview'] = [
       '#theme' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-    );
+    ];
 
     return $build;
   }
@@ -339,7 +339,7 @@ public function add(LanguageInterface $source, LanguageInterface $target, RouteM
     //   See https://www.drupal.org/node/2006348.
     $operation = 'default';
 
-    $form_state_additions = array();
+    $form_state_additions = [];
     $form_state_additions['langcode'] = $target->getId();
     $form_state_additions['content_translation']['source'] = $source;
     $form_state_additions['content_translation']['target'] = $target;
@@ -370,7 +370,7 @@ public function edit(LanguageInterface $language, RouteMatchInterface $route_mat
     //   See https://www.drupal.org/node/2006348.
     $operation = 'default';
 
-    $form_state_additions = array();
+    $form_state_additions = [];
     $form_state_additions['langcode'] = $language->getId();
     $form_state_additions['content_translation']['translation_form'] = TRUE;
 
diff --git a/core/modules/content_translation/src/FieldTranslationSynchronizer.php b/core/modules/content_translation/src/FieldTranslationSynchronizer.php
index 8f7584d..13b805d 100644
--- a/core/modules/content_translation/src/FieldTranslationSynchronizer.php
+++ b/core/modules/content_translation/src/FieldTranslationSynchronizer.php
@@ -73,14 +73,14 @@ public function synchronizeFields(ContentEntityInterface $entity, $sync_langcode
           }
         }
         if (!empty($groups)) {
-          $columns = array();
+          $columns = [];
           foreach ($groups as $group) {
             $info = $column_groups[$group];
             // A missing 'columns' key indicates we have a single-column group.
-            $columns = array_merge($columns, isset($info['columns']) ? $info['columns'] : array($group));
+            $columns = array_merge($columns, isset($info['columns']) ? $info['columns'] : [$group]);
           }
           if (!empty($columns)) {
-            $values = array();
+            $values = [];
             foreach ($translations as $langcode => $language) {
               $values[$langcode] = $entity->getTranslation($langcode)->get($field_name)->getValue();
             }
@@ -108,18 +108,18 @@ public function synchronizeItems(array &$values, array $unchanged_items, $sync_l
     $source_items = $values[$sync_langcode];
 
     // Make sure we can detect any change in the source items.
-    $change_map = array();
+    $change_map = [];
 
     // By picking the maximum size between updated and unchanged items, we make
     // sure to process also removed items.
-    $total = max(array(count($source_items), count($unchanged_items)));
+    $total = max([count($source_items), count($unchanged_items)]);
 
     // As a first step we build a map of the deltas corresponding to the column
     // values to be synchronized. Recording both the old values and the new
     // values will allow us to detect any change in the order of the new items
     // for each column.
     for ($delta = 0; $delta < $total; $delta++) {
-      foreach (array('old' => $unchanged_items, 'new' => $source_items) as $key => $items) {
+      foreach (['old' => $unchanged_items, 'new' => $source_items] as $key => $items) {
         if ($item_id = $this->itemHash($items, $delta, $columns)) {
           $change_map[$item_id][$key][] = $delta;
         }
@@ -132,7 +132,7 @@ public function synchronizeItems(array &$values, array $unchanged_items, $sync_l
 
     // Reset field values so that no spurious one is stored. Source values must
     // be preserved in any case.
-    $values = array($sync_langcode => $source_items);
+    $values = [$sync_langcode => $source_items];
 
     // Update field translations.
     foreach ($translations as $langcode) {
@@ -211,7 +211,7 @@ public function synchronizeItems(array &$values, array $unchanged_items, $sync_l
    *   A hash code that can be used to identify the item.
    */
   protected function itemHash(array $items, $delta, array $columns) {
-    $values = array();
+    $values = [];
 
     if (isset($items[$delta])) {
       foreach ($columns as $column) {
diff --git a/core/modules/content_translation/src/Plugin/Derivative/ContentTranslationLocalTasks.php b/core/modules/content_translation/src/Plugin/Derivative/ContentTranslationLocalTasks.php
index 84e1263..e364de9 100644
--- a/core/modules/content_translation/src/Plugin/Derivative/ContentTranslationLocalTasks.php
+++ b/core/modules/content_translation/src/Plugin/Derivative/ContentTranslationLocalTasks.php
@@ -66,12 +66,12 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       $translation_route_name = "entity.$entity_type_id.content_translation_overview";
 
       $base_route_name = "entity.$entity_type_id.canonical";
-      $this->derivatives[$translation_route_name] = array(
+      $this->derivatives[$translation_route_name] = [
         'entity_type' => $entity_type_id,
         'title' => $this->t('Translate'),
         'route_name' => $translation_route_name,
         'base_route' => $base_route_name,
-      ) + $base_plugin_definition;
+      ] + $base_plugin_definition;
     }
     return parent::getDerivativeDefinitions($base_plugin_definition);
   }
diff --git a/core/modules/content_translation/src/Routing/ContentTranslationRouteSubscriber.php b/core/modules/content_translation/src/Routing/ContentTranslationRouteSubscriber.php
index fb4b761..6aae426 100644
--- a/core/modules/content_translation/src/Routing/ContentTranslationRouteSubscriber.php
+++ b/core/modules/content_translation/src/Routing/ContentTranslationRouteSubscriber.php
@@ -58,104 +58,104 @@ protected function alterRoutes(RouteCollection $collection) {
 
       $route = new Route(
         $path,
-        array(
+        [
           '_controller' => '\Drupal\content_translation\Controller\ContentTranslationController::overview',
           'entity_type_id' => $entity_type_id,
-        ),
-        array(
+        ],
+        [
           '_entity_access' => $entity_type_id . '.view',
           '_access_content_translation_overview' => $entity_type_id,
-        ),
-        array(
-          'parameters' => array(
-            $entity_type_id => array(
+        ],
+        [
+          'parameters' => [
+            $entity_type_id => [
               'type' => 'entity:' . $entity_type_id,
-            ),
-          ),
+            ],
+          ],
           '_admin_route' => $is_admin,
-        )
+        ]
       );
       $route_name = "entity.$entity_type_id.content_translation_overview";
       $collection->add($route_name, $route);
 
       $route = new Route(
         $path . '/add/{source}/{target}',
-        array(
+        [
           '_controller' => '\Drupal\content_translation\Controller\ContentTranslationController::add',
           'source' => NULL,
           'target' => NULL,
           '_title' => 'Add',
           'entity_type_id' => $entity_type_id,
 
-        ),
-        array(
+        ],
+        [
           '_entity_access' => $entity_type_id . '.view',
           '_access_content_translation_manage' => 'create',
-        ),
-        array(
-          'parameters' => array(
-            'source' => array(
+        ],
+        [
+          'parameters' => [
+            'source' => [
               'type' => 'language',
-            ),
-            'target' => array(
+            ],
+            'target' => [
               'type' => 'language',
-            ),
-            $entity_type_id => array(
+            ],
+            $entity_type_id => [
               'type' => 'entity:' . $entity_type_id,
-            ),
-          ),
+            ],
+          ],
           '_admin_route' => $is_admin,
-        )
+        ]
       );
       $collection->add("entity.$entity_type_id.content_translation_add", $route);
 
       $route = new Route(
         $path . '/edit/{language}',
-        array(
+        [
           '_controller' => '\Drupal\content_translation\Controller\ContentTranslationController::edit',
           'language' => NULL,
           '_title' => 'Edit',
           'entity_type_id' => $entity_type_id,
-        ),
-        array(
+        ],
+        [
           '_access_content_translation_manage' => 'update',
-        ),
-        array(
-          'parameters' => array(
-            'language' => array(
+        ],
+        [
+          'parameters' => [
+            'language' => [
               'type' => 'language',
-            ),
-            $entity_type_id => array(
+            ],
+            $entity_type_id => [
               'type' => 'entity:' . $entity_type_id,
-            ),
-          ),
+            ],
+          ],
           '_admin_route' => $is_admin,
-        )
+        ]
       );
       $collection->add("entity.$entity_type_id.content_translation_edit", $route);
 
       $route = new Route(
         $path . '/delete/{language}',
-        array(
+        [
           '_entity_form' => $entity_type_id . '.content_translation_deletion',
           'language' => NULL,
           '_title' => 'Delete',
           'entity_type_id' => $entity_type_id,
-        ),
-        array(
+        ],
+        [
           '_access_content_translation_manage' => 'delete',
-        ),
-        array(
-          'parameters' => array(
-            'language' => array(
+        ],
+        [
+          'parameters' => [
+            'language' => [
               'type' => 'language',
-            ),
-            $entity_type_id => array(
+            ],
+            $entity_type_id => [
               'type' => 'entity:' . $entity_type_id,
-            ),
-          ),
+            ],
+          ],
           '_admin_route' => $is_admin,
-        )
+        ]
       );
       $collection->add("entity.$entity_type_id.content_translation_delete", $route);
     }
@@ -168,7 +168,7 @@ public static function getSubscribedEvents() {
     $events = parent::getSubscribedEvents();
     // Should run after AdminRouteSubscriber so the routes can inherit admin
     // status of the edit routes on entities. Therefore priority -210.
-    $events[RoutingEvents::ALTER] = array('onAlterRoutes', -210);
+    $events[RoutingEvents::ALTER] = ['onAlterRoutes', -210];
     return $events;
   }
 
diff --git a/core/modules/content_translation/src/Tests/ContentTestTranslationUITest.php b/core/modules/content_translation/src/Tests/ContentTestTranslationUITest.php
index e94802a..1688f75 100644
--- a/core/modules/content_translation/src/Tests/ContentTestTranslationUITest.php
+++ b/core/modules/content_translation/src/Tests/ContentTestTranslationUITest.php
@@ -19,7 +19,7 @@ class ContentTestTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'entity_test');
+  public static $modules = ['language', 'content_translation', 'entity_test'];
 
   /**
    * {@inheritdoc}
@@ -34,7 +34,7 @@ protected function setUp() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('administer entity_test content', 'view test entity'));
+    return array_merge(parent::getTranslatorPermissions(), ['administer entity_test content', 'view test entity']);
   }
 
 }
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php b/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
index efbd3c1..080ffb9 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationContextualLinksTest.php
@@ -48,7 +48,7 @@ class ContentTranslationContextualLinksTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('content_translation', 'contextual', 'node');
+  public static $modules = ['content_translation', 'contextual', 'node'];
 
   /**
    * The profile to install as a basis for testing.
@@ -60,20 +60,20 @@ class ContentTranslationContextualLinksTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
     // Set up an additional language.
-    $this->langcodes = array(\Drupal::languageManager()->getDefaultLanguage()->getId(), 'es');
+    $this->langcodes = [\Drupal::languageManager()->getDefaultLanguage()->getId(), 'es'];
     ConfigurableLanguage::createFromLangcode('es')->save();
 
     // Create a content type.
     $this->bundle = $this->randomMachineName();
-    $this->contentType = $this->drupalCreateContentType(array('type' => $this->bundle));
+    $this->contentType = $this->drupalCreateContentType(['type' => $this->bundle]);
 
     // Add a field to the content type. The field is not yet translatable.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test_text',
       'entity_type' => 'node',
       'type' => 'text',
       'cardinality' => 1,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'node',
       'field_name' => 'field_test_text',
@@ -81,19 +81,19 @@ protected function setUp() {
       'label' => 'Test text-field',
     ])->save();
     entity_get_form_display('node', $this->bundle, 'default')
-      ->setComponent('field_test_text', array(
+      ->setComponent('field_test_text', [
         'type' => 'text_textfield',
         'weight' => 0,
-      ))
+      ])
       ->save();
 
     // Create a translator user.
-    $permissions = array(
+    $permissions = [
       'access contextual links',
       'administer nodes',
       "edit any $this->bundle content",
       'translate any entity',
-    );
+    ];
     $this->translator = $this->drupalCreateUser($permissions);
   }
 
@@ -103,18 +103,18 @@ protected function setUp() {
   public function testContentTranslationContextualLinks() {
     // Create a node.
     $title = $this->randomString();
-    $this->drupalCreateNode(array('type' => $this->bundle, 'title' => $title, 'langcode' => 'en'));
+    $this->drupalCreateNode(['type' => $this->bundle, 'title' => $title, 'langcode' => 'en']);
     $node = $this->drupalGetNodeByTitle($title);
 
     // Use a UI form submission to make the node type and field translatable.
     // This tests that caches are properly invalidated.
     $this->drupalLogin($this->rootUser);
-    $edit = array(
+    $edit = [
       'entity_types[node]' => TRUE,
       'settings[node][' . $this->bundle . '][settings][language][language_alterable]' => TRUE,
       'settings[node][' . $this->bundle . '][translatable]' => TRUE,
       'settings[node][' . $this->bundle . '][fields][field_test_text]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     $this->drupalLogout();
 
@@ -122,7 +122,7 @@ public function testContentTranslationContextualLinks() {
     $this->drupalLogin($this->translator);
     $translate_link = 'node/' . $node->id() . '/translations';
 
-    $response = $this->renderContextualLinks(array('node:node=1:'), 'node/' . $node->id());
+    $response = $this->renderContextualLinks(['node:node=1:'], 'node/' . $node->id());
     $this->assertResponse(200);
     $json = Json::decode($response);
     $this->setRawContent($json['node:node=1:']);
@@ -130,7 +130,7 @@ public function testContentTranslationContextualLinks() {
 
     // Check that the link leads to the translate page.
     $this->drupalGet($translate_link);
-    $this->assertRaw(t('Translations of %label', array('%label' => $node->label())), 'The contextual link leads to the translate page.');
+    $this->assertRaw(t('Translations of %label', ['%label' => $node->label()]), 'The contextual link leads to the translate page.');
   }
 
   /**
@@ -148,7 +148,7 @@ public function testContentTranslationContextualLinks() {
    */
   protected function renderContextualLinks($ids, $current_path) {
     // Build POST values.
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($ids); $i++) {
       $post['ids[' . $i . ']'] = $ids[$i];
     }
@@ -163,15 +163,15 @@ protected function renderContextualLinks($ids, $current_path) {
     $post = implode('&', $post);
 
     // Perform HTTP request.
-    return $this->curlExec(array(
-      CURLOPT_URL => \Drupal::url('contextual.render', array(), array('absolute' => TRUE, 'query' => array('destination' => $current_path))),
+    return $this->curlExec([
+      CURLOPT_URL => \Drupal::url('contextual.render', [], ['absolute' => TRUE, 'query' => ['destination' => $current_path]]),
       CURLOPT_POST => TRUE,
       CURLOPT_POSTFIELDS => $post,
-      CURLOPT_HTTPHEADER => array(
+      CURLOPT_HTTPHEADER => [
         'Accept: application/json',
         'Content-Type: application/x-www-form-urlencoded',
-      ),
-    ));
+      ],
+    ]);
   }
 
 }
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationEnableTest.php b/core/modules/content_translation/src/Tests/ContentTranslationEnableTest.php
index ded8c1b..11c816c 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationEnableTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationEnableTest.php
@@ -58,11 +58,11 @@ public function testEnable() {
 
     // Create a node type and check the content translation settings are now
     // available for nodes.
-    $edit = array(
+    $edit = [
       'name' => 'foo',
       'title_label' => 'title for foo',
       'type' => 'foo',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, t('Save content type'));
     $this->drupalGet('admin/config/regional/content-language');
     $this->assertRaw('entity_types[node]');
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationLanguageChangeTest.php b/core/modules/content_translation/src/Tests/ContentTranslationLanguageChangeTest.php
index fea0e14..bb9b223 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationLanguageChangeTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationLanguageChangeTest.php
@@ -29,7 +29,7 @@ protected function setUp() {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
     $this->drupalPlaceBlock('local_tasks_block');
-    $user = $this->drupalCreateUser(array(
+    $user = $this->drupalCreateUser([
       'administer site configuration',
       'administer nodes',
       'create article content',
@@ -41,7 +41,7 @@ protected function setUp() {
       'administer languages',
       'administer content types',
       'administer node fields',
-    ));
+    ]);
     $this->drupalLogin($user);
 
     // Enable translation for article.
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php b/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
index d7490c0..aed653b 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationSettingsTest.php
@@ -24,19 +24,19 @@ class ContentTranslationSettingsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'node', 'comment', 'field_ui', 'entity_test');
+  public static $modules = ['language', 'content_translation', 'node', 'comment', 'field_ui', 'entity_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Set up two content types to test fields shared between different
     // bundles.
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'article', 'comment_article', CommentItemInterface::OPEN, 'comment_article');
     $this->addDefaultCommentField('node', 'page', 'comment_page');
 
-    $admin_user = $this->drupalCreateUser(array('access administration pages', 'administer languages', 'administer content translation', 'administer content types', 'administer node fields', 'administer comment fields', 'administer comments', 'administer comment types', 'administer account settings'));
+    $admin_user = $this->drupalCreateUser(['access administration pages', 'administer languages', 'administer content translation', 'administer content types', 'administer node fields', 'administer comment fields', 'administer comments', 'administer comment types', 'administer account settings']);
     $this->drupalLogin($admin_user);
   }
 
@@ -50,17 +50,17 @@ function testSettingsUI() {
     $this->assertText('Configure language and translation support for content.');
     // Test that the translation settings are ignored if the bundle is marked
     // translatable but the entity type is not.
-    $edit = array('settings[comment][comment_article][translatable]' => TRUE);
+    $edit = ['settings[comment][comment_article][translatable]' => TRUE];
     $this->assertSettings('comment', NULL, FALSE, $edit);
 
     // Test that the translation settings are ignored if only a field is marked
     // as translatable and not the related entity type and bundle.
-    $edit = array('settings[comment][comment_article][fields][comment_body]' => TRUE);
+    $edit = ['settings[comment][comment_article][fields][comment_body]' => TRUE];
     $this->assertSettings('comment', NULL, FALSE, $edit);
 
     // Test that the translation settings are not stored if an entity type and
     // bundle are marked as translatable but no field is.
-    $edit = array(
+    $edit = [
       'entity_types[comment]' => TRUE,
       'settings[comment][comment_article][translatable]' => TRUE,
       // Base fields are translatable by default.
@@ -73,26 +73,26 @@ function testSettingsUI() {
       'settings[comment][comment_article][fields][status]' => FALSE,
       'settings[comment][comment_article][fields][subject]' => FALSE,
       'settings[comment][comment_article][fields][uid]' => FALSE,
-    );
+    ];
     $this->assertSettings('comment', 'comment_article', FALSE, $edit);
     $xpath_err = '//div[contains(@class, "error")]';
     $this->assertTrue($this->xpath($xpath_err), 'Enabling translation only for entity bundles generates a form error.');
 
     // Test that the translation settings are not stored if a non-configurable
     // language is set as default and the language selector is hidden.
-    $edit = array(
+    $edit = [
       'entity_types[comment]' => TRUE,
       'settings[comment][comment_article][settings][language][langcode]' => Language::LANGCODE_NOT_SPECIFIED,
       'settings[comment][comment_article][settings][language][language_alterable]' => FALSE,
       'settings[comment][comment_article][translatable]' => TRUE,
       'settings[comment][comment_article][fields][comment_body]' => TRUE,
-    );
+    ];
     $this->assertSettings('comment', 'comment_article', FALSE, $edit);
     $this->assertTrue($this->xpath($xpath_err), 'Enabling translation with a fixed non-configurable language generates a form error.');
 
     // Test that a field shared among different bundles can be enabled without
     // needing to make all the related bundles translatable.
-    $edit = array(
+    $edit = [
       'entity_types[comment]' => TRUE,
       'settings[comment][comment_article][settings][language][langcode]' => 'current_interface',
       'settings[comment][comment_article][settings][language][language_alterable]' => TRUE,
@@ -101,7 +101,7 @@ function testSettingsUI() {
       // Override both comment subject fields to untranslatable.
       'settings[comment][comment_article][fields][subject]' => FALSE,
       'settings[comment][comment][fields][subject]' => FALSE,
-    );
+    ];
     $this->assertSettings('comment', 'comment_article', TRUE, $edit);
     $definition = $this->entityManager()->getFieldDefinitions('comment', 'comment_article')['comment_body'];
     $this->assertTrue($definition->isTranslatable(), 'Article comment body is translatable.');
@@ -114,12 +114,12 @@ function testSettingsUI() {
     $this->assertFalse($definition->isTranslatable(), 'Page comment subject is not translatable.');
 
     // Test that translation can be enabled for base fields.
-    $edit = array(
+    $edit = [
       'entity_types[entity_test_mul]' => TRUE,
       'settings[entity_test_mul][entity_test_mul][translatable]' => TRUE,
       'settings[entity_test_mul][entity_test_mul][fields][name]' => TRUE,
       'settings[entity_test_mul][entity_test_mul][fields][user_id]' => FALSE,
-    );
+    ];
     $this->assertSettings('entity_test_mul', 'entity_test_mul', TRUE, $edit);
     $field_override = BaseFieldOverride::loadByName('entity_test_mul', 'entity_test_mul', 'name');
     $this->assertTrue($field_override->isTranslatable(), 'Base fields can be overridden with a base field bundle override entity.');
@@ -137,9 +137,9 @@ function testSettingsUI() {
     $this->assertFieldChecked('edit-language-configuration-content-translation');
 
     // Verify that translation may be enabled for the article content type.
-    $edit = array(
+    $edit = [
       'language_configuration[content_translation]' => TRUE,
-    );
+    ];
     // Make sure the checkbox is available and not checked by default.
     $this->drupalGet('admin/structure/types/manage/article');
     $this->assertField('language_configuration[content_translation]');
@@ -149,18 +149,18 @@ function testSettingsUI() {
     $this->assertFieldChecked('edit-language-configuration-content-translation');
 
     // Test that the title field of nodes is available in the settings form.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => TRUE,
       'settings[node][article][settings][language][langcode]' => 'current_interface',
       'settings[node][article][settings][language][language_alterable]' => TRUE,
       'settings[node][article][translatable]' => TRUE,
       'settings[node][article][fields][title]' => TRUE
-    );
+    ];
     $this->assertSettings('node', NULL, TRUE, $edit);
 
-    foreach (array(TRUE, FALSE) as $translatable) {
+    foreach ([TRUE, FALSE] as $translatable) {
       // Test that configurable field translatability is correctly switched.
-      $edit = array('settings[node][article][fields][body]' => $translatable);
+      $edit = ['settings[node][article][fields][body]' => $translatable];
       $this->assertSettings('node', 'article', TRUE, $edit);
       $field = FieldConfig::loadByName('node', 'article', 'body');
       $definitions = \Drupal::entityManager()->getFieldDefinitions('node', 'article');
@@ -169,7 +169,7 @@ function testSettingsUI() {
 
       // Test that also the Field UI form behaves correctly.
       $translatable = !$translatable;
-      $edit = array('translatable' => $translatable);
+      $edit = ['translatable' => $translatable];
       $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.body', $edit, t('Save settings'));
       \Drupal::entityManager()->clearCachedFieldDefinitions();
       $field = FieldConfig::loadByName('node', 'article', 'body');
@@ -182,14 +182,14 @@ function testSettingsUI() {
     // lists, such as in Views UI.
     $this->drupalGet('admin/config/regional/content-language');
 
-    $expected_elements = array(
+    $expected_elements = [
       'site_default',
       'current_interface',
       'authors_default',
       'en',
       'und',
       'zxx',
-    );
+    ];
     $elements = $this->xpath('//select[@id="edit-settings-node-article-settings-language-langcode"]/option');
     // Compare values inside the option elements with expected values.
     for ($i = 0; $i < count($elements); $i++) {
@@ -206,15 +206,15 @@ function testAccountLanguageSettingsUI() {
     $this->assertField('language[content_translation]');
     $this->assertNoFieldChecked('edit-language-content-translation');
 
-    $edit = array(
+    $edit = [
       'language[content_translation]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/people/accounts', $edit, t('Save configuration'));
     $this->drupalGet('admin/config/people/accounts');
     $this->assertFieldChecked('edit-language-content-translation');
 
     // Make sure account settings can be saved.
-    $this->drupalPostForm('admin/config/people/accounts', array('anonymous' => 'Save me please!'), 'Save configuration');
+    $this->drupalPostForm('admin/config/people/accounts', ['anonymous' => 'Save me please!'], 'Save configuration');
     $this->assertFieldByName('anonymous', 'Save me please!', 'Anonymous name has been changed.');
     $this->assertText('The configuration options have been saved.');
   }
@@ -236,7 +236,7 @@ function testAccountLanguageSettingsUI() {
    */
   protected function assertSettings($entity_type, $bundle, $enabled, $edit) {
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
-    $args = array('@entity_type' => $entity_type, '@bundle' => $bundle, '@enabled' => $enabled ? 'enabled' : 'disabled');
+    $args = ['@entity_type' => $entity_type, '@bundle' => $bundle, '@enabled' => $enabled ? 'enabled' : 'disabled'];
     $message = format_string('Translation for entity @entity_type (@bundle) is @enabled.', $args);
     \Drupal::entityManager()->clearCachedDefinitions();
     return $this->assertEqual(\Drupal::service('content_translation.manager')->isEnabled($entity_type, $bundle), $enabled, $message);
@@ -249,11 +249,11 @@ function testFieldTranslatableSettingsUI() {
     // At least one field needs to be translatable to enable article for
     // translation. Create an extra field to be used for this purpose. We use
     // the UI to test our form alterations.
-    $edit = array(
+    $edit = [
       'new_storage_type' => 'text',
       'label' => 'Test',
       'field_name' => 'article_text',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article/fields/add-field', $edit, 'Save and continue');
 
     // Tests that field doesn't have translatable setting if bundle is not
@@ -265,12 +265,12 @@ function testFieldTranslatableSettingsUI() {
 
     // Tests that field has translatable setting if bundle is translatable.
     // Note: this field is not translatable when enable bundle translatability.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => TRUE,
       'settings[node][article][settings][language][language_alterable]' => TRUE,
       'settings[node][article][translatable]' => TRUE,
       'settings[node][article][fields][field_article_text]' => TRUE,
-    );
+    ];
     $this->assertSettings('node', 'article', TRUE, $edit);
     $this->drupalGet($path);
     $this->assertFieldByXPath('//input[@id="edit-translatable" and not(@disabled) and @checked="checked"]');
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php b/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
index 5f881a7..10b3c5e 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationSyncImageTest.php
@@ -33,7 +33,7 @@ class ContentTranslationSyncImageTest extends ContentTranslationTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'entity_test', 'image', 'field_ui');
+  public static $modules = ['language', 'content_translation', 'entity_test', 'image', 'field_ui'];
 
   protected function setUp() {
     parent::setUp();
@@ -47,27 +47,27 @@ protected function setupTestFields() {
     $this->fieldName = 'field_test_et_ui_image';
     $this->cardinality = 3;
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => $this->entityTypeId,
       'type' => 'image',
       'cardinality' => $this->cardinality,
-    ))->save();
+    ])->save();
 
     FieldConfig::create([
       'entity_type' => $this->entityTypeId,
       'field_name' => $this->fieldName,
       'bundle' => $this->entityTypeId,
       'label' => 'Test translatable image field',
-      'third_party_settings' => array(
-        'content_translation' => array(
-          'translation_sync' => array(
+      'third_party_settings' => [
+        'content_translation' => [
+          'translation_sync' => [
             'file' => FALSE,
             'alt' => 'alt',
             'title' => 'title',
-          ),
-        ),
-      ),
+          ],
+        ],
+      ],
     ])->save();
   }
 
@@ -76,7 +76,7 @@ protected function setupTestFields() {
    */
   protected function getEditorPermissions() {
     // Every entity-type-specific test needs to define these.
-    return array('administer entity_test_mul fields', 'administer languages', 'administer content translation');
+    return ['administer entity_test_mul fields', 'administer languages', 'administer content translation'];
   }
 
   /**
@@ -88,10 +88,10 @@ function testImageFieldSync() {
     $this->drupalGet('entity_test_mul/structure/' . $this->entityTypeId . '/fields/' . $this->entityTypeId . '.' . $this->entityTypeId . '.' . $this->fieldName);
     $this->assertFieldChecked('edit-third-party-settings-content-translation-translation-sync-alt');
     $this->assertFieldChecked('edit-third-party-settings-content-translation-translation-sync-title');
-    $edit = array(
+    $edit = [
       'third_party_settings[content_translation][translation_sync][alt]' => FALSE,
       'third_party_settings[content_translation][translation_sync][title]' => FALSE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
 
     // Check that the content translation settings page reflects the changes
@@ -99,11 +99,11 @@ function testImageFieldSync() {
     $this->drupalGet('admin/config/regional/content-language');
     $this->assertNoFieldChecked('edit-settings-entity-test-mul-entity-test-mul-columns-field-test-et-ui-image-alt');
     $this->assertNoFieldChecked('edit-settings-entity-test-mul-entity-test-mul-columns-field-test-et-ui-image-title');
-    $edit = array(
+    $edit = [
       'settings[entity_test_mul][entity_test_mul][fields][field_test_et_ui_image]' => TRUE,
       'settings[entity_test_mul][entity_test_mul][columns][field_test_et_ui_image][alt]' => TRUE,
       'settings[entity_test_mul][entity_test_mul][columns][field_test_et_ui_image][title]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     $errors = $this->xpath('//div[contains(@class, "messages--error")]');
     $this->assertFalse($errors, 'Settings correctly stored.');
@@ -115,26 +115,26 @@ function testImageFieldSync() {
     $langcode = $this->langcodes[1];
 
     // Populate the test entity with some random initial values.
-    $values = array(
+    $values = [
       'name' => $this->randomMachineName(),
       'user_id' => mt_rand(1, 128),
       'langcode' => $default_langcode,
-    );
+    ];
     $entity = entity_create($this->entityTypeId, $values);
 
     // Create some file entities from the generated test files and store them.
-    $values = array();
+    $values = [];
     for ($delta = 0; $delta < $this->cardinality; $delta++) {
       // For the default language use the same order for files and field items.
       $index = $delta;
 
       // Create the file entity for the image being processed and record its
       // identifier.
-      $field_values = array(
+      $field_values = [
         'uri' => $this->files[$index]->uri,
         'uid' => \Drupal::currentUser()->id(),
         'status' => FILE_STATUS_PERMANENT,
-      );
+      ];
       $file = File::create($field_values);
       $file->save();
       $fid = $file->id();
@@ -142,11 +142,11 @@ function testImageFieldSync() {
 
       // Generate the item for the current image file entity and attach it to
       // the entity.
-      $item = array(
+      $item = [
         'target_id' => $fid,
         'alt' => $default_langcode . '_' . $fid . '_' . $this->randomMachineName(),
         'title' => $default_langcode . '_' . $fid . '_' . $this->randomMachineName(),
-      );
+      ];
       $entity->{$this->fieldName}[] = $item;
 
       // Store the generated values keying them by fid for easier lookup.
@@ -168,11 +168,11 @@ function testImageFieldSync() {
       // Generate the item for the current image file entity and attach it to
       // the entity.
       $fid = $this->files[$index]->fid;
-      $item = array(
+      $item = [
         'target_id' => $fid,
         'alt' => $langcode . '_' . $fid . '_' . $this->randomMachineName(),
         'title' => $langcode . '_' . $fid . '_' . $this->randomMachineName(),
-      );
+      ];
       $translation->{$this->fieldName}[] = $item;
 
       // Again store the generated values keying them by fid for easier lookup.
@@ -191,25 +191,25 @@ function testImageFieldSync() {
 
     // Check that fids have been synchronized and translatable column values
     // have been retained.
-    $fids = array();
+    $fids = [];
     foreach ($entity->{$this->fieldName} as $delta => $item) {
       $value = $values[$default_langcode][$item->target_id];
       $source_item = $translation->{$this->fieldName}->get($delta);
       $assert = $item->target_id == $source_item->target_id && $item->alt == $value['alt'] && $item->title == $value['title'];
-      $this->assertTrue($assert, format_string('Field item @fid has been successfully synchronized.', array('@fid' => $item->target_id)));
+      $this->assertTrue($assert, format_string('Field item @fid has been successfully synchronized.', ['@fid' => $item->target_id]));
       $fids[$item->target_id] = TRUE;
     }
 
     // Check that the dropped value is the right one.
     $removed_fid = $this->files[0]->fid;
-    $this->assertTrue(!isset($fids[$removed_fid]), format_string('Field item @fid has been correctly removed.', array('@fid' => $removed_fid)));
+    $this->assertTrue(!isset($fids[$removed_fid]), format_string('Field item @fid has been correctly removed.', ['@fid' => $removed_fid]));
 
     // Add back an item for the dropped value and perform synchronization again.
-    $values[$langcode][$removed_fid] = array(
+    $values[$langcode][$removed_fid] = [
       'target_id' => $removed_fid,
       'alt' => $langcode . '_' . $removed_fid . '_' . $this->randomMachineName(),
       'title' => $langcode . '_' . $removed_fid . '_' . $this->randomMachineName(),
-    );
+    ];
     $translation->{$this->fieldName}->setValue(array_values($values[$langcode]));
     $entity = $this->saveEntity($translation);
     $translation = $entity->getTranslation($langcode);
@@ -226,7 +226,7 @@ function testImageFieldSync() {
       $value = $values[$fid_langcode][$item->target_id];
       $source_item = $translation->{$this->fieldName}->get($delta);
       $assert = $item->target_id == $source_item->target_id && $item->alt == $value['alt'] && $item->title == $value['title'];
-      $this->assertTrue($assert, format_string('Field item @fid has been successfully synchronized.', array('@fid' => $item->target_id)));
+      $this->assertTrue($assert, format_string('Field item @fid has been successfully synchronized.', ['@fid' => $item->target_id]));
     }
   }
 
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php b/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
index 96921c0..a84bb73 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationTestBase.php
@@ -21,7 +21,7 @@
    *
    * @var array
    */
-  public static $modules = array('text');
+  public static $modules = ['text'];
 
   /**
    * The entity type being tested.
@@ -105,7 +105,7 @@ protected function setUp() {
    * Adds additional languages.
    */
   protected function setupLanguages() {
-    $this->langcodes = array('it', 'fr');
+    $this->langcodes = ['it', 'fr'];
     foreach ($this->langcodes as $langcode) {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
@@ -116,7 +116,7 @@ protected function setupLanguages() {
    * Returns an array of permissions needed for the translator.
    */
   protected function getTranslatorPermissions() {
-    return array_filter(array($this->getTranslatePermission(), 'create content translations', 'update content translations', 'delete content translations'));
+    return array_filter([$this->getTranslatePermission(), 'create content translations', 'update content translations', 'delete content translations']);
   }
 
   /**
@@ -134,14 +134,14 @@ protected function getTranslatePermission() {
    */
   protected function getEditorPermissions() {
     // Every entity-type-specific test needs to define these.
-    return array();
+    return [];
   }
 
   /**
    * Returns an array of permissions needed for the administrator.
    */
   protected function getAdministratorPermissions() {
-    return array_merge($this->getEditorPermissions(), $this->getTranslatorPermissions(), array('administer content translation'));
+    return array_merge($this->getEditorPermissions(), $this->getTranslatorPermissions(), ['administer content translation']);
   }
 
   /**
@@ -183,12 +183,12 @@ protected function setupTestFields() {
     if (empty($this->fieldName)) {
       $this->fieldName = 'field_test_et_ui_test';
     }
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'type' => 'string',
       'entity_type' => $this->entityTypeId,
       'cardinality' => 1,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => $this->entityTypeId,
       'field_name' => $this->fieldName,
@@ -196,10 +196,10 @@ protected function setupTestFields() {
       'label' => 'Test translatable text-field',
     ])->save();
     entity_get_form_display($this->entityTypeId, $this->bundle, 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'string_textfield',
         'weight' => 0,
-      ))
+      ])
       ->save();
   }
 
@@ -228,7 +228,7 @@ protected function createEntity($values, $langcode, $bundle_name = NULL) {
     if (!($controller instanceof SqlContentEntityStorage)) {
       foreach ($values as $property => $value) {
         if (is_array($value)) {
-          $entity_values[$property] = array($langcode => $value);
+          $entity_values[$property] = [$langcode => $value];
         }
       }
     }
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php b/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
index e5b14c2..c6d1a5d 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationUITestBase.php
@@ -100,7 +100,7 @@ protected function doTestBasicTranslation() {
     foreach ($values[$default_langcode] as $property => $value) {
       $stored_value = $this->getValue($translation, $property, $default_langcode);
       $value = is_array($value) ? $value[0]['value'] : $value;
-      $message = format_string('@property correctly stored in the default language.', array('@property' => $property));
+      $message = format_string('@property correctly stored in the default language.', ['@property' => $property]);
       $this->assertEqual($stored_value, $value, $message);
     }
 
@@ -114,7 +114,7 @@ protected function doTestBasicTranslation() {
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $default_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     $this->drupalPostForm($add_url, $this->getEditValues($values, $langcode), $this->getFormSubmitActionForNewTranslation($entity, $langcode));
 
     // Assert that HTML is escaped in "all languages" in UI after SafeMarkup
@@ -141,11 +141,11 @@ protected function doTestBasicTranslation() {
     $author_field_name = $entity->hasField('content_translation_uid') ? 'content_translation_uid' : 'uid';
     if ($entity->getFieldDefinition($author_field_name)->isTranslatable()) {
       $this->assertEqual($metadata_target_translation->getAuthor()->id(), $this->translator->id(),
-        SafeMarkup::format('Author of the target translation @langcode correctly stored for translatable owner field.', array('@langcode' => $langcode)));
+        SafeMarkup::format('Author of the target translation @langcode correctly stored for translatable owner field.', ['@langcode' => $langcode]));
 
       $this->assertNotEqual($metadata_target_translation->getAuthor()->id(), $metadata_source_translation->getAuthor()->id(),
         SafeMarkup::format('Author of the target translation @target different from the author of the source translation @source for translatable owner field.',
-          array('@target' => $langcode, '@source' => $default_langcode)));
+          ['@target' => $langcode, '@source' => $default_langcode]));
     }
     else {
       $this->assertEqual($metadata_target_translation->getAuthor()->id(), $this->editor->id(), 'Author of the entity remained untouched after translation for non translatable owner field.');
@@ -155,7 +155,7 @@ protected function doTestBasicTranslation() {
     if ($entity->getFieldDefinition($created_field_name)->isTranslatable()) {
       $this->assertTrue($metadata_target_translation->getCreatedTime() > $metadata_source_translation->getCreatedTime(),
         SafeMarkup::format('Translation creation timestamp of the target translation @target is newer than the creation timestamp of the source translation @source for translatable created field.',
-          array('@target' => $langcode, '@source' => $default_langcode)));
+          ['@target' => $langcode, '@source' => $default_langcode]));
     }
     else {
       $this->assertEqual($metadata_target_translation->getCreatedTime(), $metadata_source_translation->getCreatedTime(), 'Creation timestamp of the entity remained untouched after translation for non translatable created field.');
@@ -173,13 +173,13 @@ protected function doTestBasicTranslation() {
     $langcode = 'fr';
     $language = ConfigurableLanguage::load($langcode);
     $source_langcode = 'it';
-    $edit = array('source_langcode[source]' => $source_langcode);
+    $edit = ['source_langcode[source]' => $source_langcode];
     $entity_type_id = $entity->getEntityTypeId();
     $add_url = Url::fromRoute("entity.$entity_type_id.content_translation_add", [
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $default_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     // This does not save anything, it merely reloads the form and fills in the
     // fields with the values from the different source language.
     $this->drupalPostForm($add_url, $edit, t('Change'));
@@ -187,13 +187,13 @@ protected function doTestBasicTranslation() {
 
     // Add another translation and mark the other ones as outdated.
     $values[$langcode] = $this->getNewEntityValues($langcode);
-    $edit = $this->getEditValues($values, $langcode) + array('content_translation[retranslate]' => TRUE);
+    $edit = $this->getEditValues($values, $langcode) + ['content_translation[retranslate]' => TRUE];
     $entity_type_id = $entity->getEntityTypeId();
     $add_url = Url::fromRoute("entity.$entity_type_id.content_translation_add", [
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $source_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     $this->drupalPostForm($add_url, $edit, $this->getFormSubmitActionForNewTranslation($entity, $langcode));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
@@ -206,7 +206,7 @@ protected function doTestBasicTranslation() {
       foreach ($property_values as $property => $value) {
         $stored_value = $this->getValue($translation, $property, $langcode);
         $value = is_array($value) ? $value[0]['value'] : $value;
-        $message = format_string('%property correctly stored with language %language.', array('%property' => $property, '%language' => $langcode));
+        $message = format_string('%property correctly stored with language %language.', ['%property' => $property, '%language' => $langcode]);
         $this->assertEqual($stored_value, $value, $message);
       }
     }
@@ -226,13 +226,13 @@ protected function doTestTranslationOverview() {
 
     foreach ($this->langcodes as $langcode) {
       if ($entity->hasTranslation($langcode)) {
-        $language = new Language(array('id' => $langcode));
+        $language = new Language(['id' => $langcode]);
         $view_url = $entity->url('canonical', ['language' => $language]);
         $elements = $this->xpath('//table//a[@href=:href]', [':href' => $view_url]);
-        $this->assertEqual((string) $elements[0], $entity->getTranslation($langcode)->label(), format_string('Label correctly shown for %language translation.', array('%language' => $langcode)));
-        $edit_path = $entity->url('edit-form', array('language' => $language));
-        $elements = $this->xpath('//table//ul[@class="dropbutton"]/li/a[@href=:href]', array(':href' => $edit_path));
-        $this->assertEqual((string) $elements[0], t('Edit'), format_string('Edit link correct for %language translation.', array('%language' => $langcode)));
+        $this->assertEqual((string) $elements[0], $entity->getTranslation($langcode)->label(), format_string('Label correctly shown for %language translation.', ['%language' => $langcode]));
+        $edit_path = $entity->url('edit-form', ['language' => $language]);
+        $elements = $this->xpath('//table//ul[@class="dropbutton"]/li/a[@href=:href]', [':href' => $edit_path]);
+        $this->assertEqual((string) $elements[0], t('Edit'), format_string('Edit link correct for %language translation.', ['%language' => $langcode]));
       }
     }
   }
@@ -249,8 +249,8 @@ protected function doTestOutdatedStatus() {
     $languages = \Drupal::languageManager()->getLanguages();
 
     // Mark translations as outdated.
-    $edit = array('content_translation[retranslate]' => TRUE);
-    $edit_path = $entity->urlInfo('edit-form', array('language' => $languages[$langcode]));
+    $edit = ['content_translation[retranslate]' => TRUE];
+    $edit_path = $entity->urlInfo('edit-form', ['language' => $languages[$langcode]]);
     $this->drupalPostForm($edit_path, $edit, $this->getFormSubmitAction($entity, $langcode));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
@@ -258,7 +258,7 @@ protected function doTestOutdatedStatus() {
     // Check that every translation has the correct "outdated" status, and that
     // the Translation fieldset is open if the translation is "outdated".
     foreach ($this->langcodes as $added_langcode) {
-      $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($added_langcode)));
+      $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($added_langcode)]);
       $this->drupalGet($url);
       if ($added_langcode == $langcode) {
         $this->assertFieldByXPath('//input[@name="content_translation[retranslate]"]', FALSE, 'The retranslate flag is not checked by default.');
@@ -267,7 +267,7 @@ protected function doTestOutdatedStatus() {
       else {
         $this->assertFieldByXPath('//input[@name="content_translation[outdated]"]', TRUE, 'The translate flag is checked by default.');
         $this->assertTrue($this->xpath('//details[@id="edit-content-translation" and @open="open"]'), 'The translation tab is correctly expanded when the translation is outdated.');
-        $edit = array('content_translation[outdated]' => FALSE);
+        $edit = ['content_translation[outdated]' => FALSE];
         $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $added_langcode));
         $this->drupalGet($url);
         $this->assertFieldByXPath('//input[@name="content_translation[retranslate]"]', FALSE, 'The retranslate flag is now shown.');
@@ -292,8 +292,8 @@ protected function doTestPublishedStatus() {
     // Unpublish translations.
     foreach ($this->langcodes as $index => $langcode) {
       if ($index > 0) {
-        $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($langcode)));
-        $edit = array('content_translation[status]' => FALSE);
+        $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($langcode)]);
+        $edit = ['content_translation[status]' => FALSE];
         $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
         $storage = $this->container->get('entity_type.manager')
           ->getStorage($this->entityTypeId);
@@ -316,20 +316,20 @@ protected function doTestAuthoringInfo() {
       ->getStorage($this->entityTypeId);
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
-    $values = array();
+    $values = [];
 
     // Post different authoring information for each translation.
     foreach ($this->langcodes as $index => $langcode) {
       $user = $this->drupalCreateUser();
-      $values[$langcode] = array(
+      $values[$langcode] = [
         'uid' => $user->id(),
         'created' => REQUEST_TIME - mt_rand(0, 1000),
-      );
-      $edit = array(
+      ];
+      $edit = [
         'content_translation[uid]' => $user->getUsername(),
         'content_translation[created]' => format_date($values[$langcode]['created'], 'custom', 'Y-m-d H:i:s O'),
-      );
-      $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($langcode)));
+      ];
+      $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($langcode)]);
       $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
     }
 
@@ -345,11 +345,11 @@ protected function doTestAuthoringInfo() {
 
     // Try to post non valid values and check that they are rejected.
     $langcode = 'en';
-    $edit = array(
+    $edit = [
       // User names have by default length 8.
       'content_translation[uid]' => $this->randomMachineName(12),
       'content_translation[created]' => '19/11/1978',
-    );
+    ];
     $this->drupalPostForm($entity->urlInfo('edit-form'), $edit, $this->getFormSubmitAction($entity, $langcode));
     $this->assertTrue($this->xpath('//div[contains(@class, "error")]//ul'), 'Invalid values generate a list of form errors.');
     $metadata = $this->manager->getTranslationMetadata($entity->getTranslation($langcode));
@@ -369,9 +369,9 @@ protected function doTestTranslationDeletion() {
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
     $language = ConfigurableLanguage::load($langcode);
-    $url = $entity->urlInfo('edit-form', array('language' => $language));
-    $this->drupalPostForm($url, array(), t('Delete translation'));
-    $this->drupalPostForm(NULL, array(), t('Delete @language translation', array('@language' => $language->getName())));
+    $url = $entity->urlInfo('edit-form', ['language' => $language]);
+    $this->drupalPostForm($url, [], t('Delete translation'));
+    $this->drupalPostForm(NULL, [], t('Delete @language translation', ['@language' => $language->getName()]));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId, TRUE);
     if ($this->assertTrue(is_object($entity), 'Entity found')) {
@@ -389,7 +389,7 @@ protected function doTestTranslationDeletion() {
    * Returns an array of entity field values to be tested.
    */
   protected function getNewEntityValues($langcode) {
-    return array($this->fieldName => array(array('value' => $this->randomMachineName(16))));
+    return [$this->fieldName => [['value' => $this->randomMachineName(16)]]];
   }
 
   /**
@@ -512,7 +512,7 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
@@ -555,10 +555,10 @@ protected function doTestTranslationChanged() {
 
         $langcode = $language->getId();
 
-        $edit = array(
+        $edit = [
           $this->fieldName . '[0][value]' => $this->randomString(),
-        );
-        $edit_path = $entity->urlInfo('edit-form', array('language' => $language));
+        ];
+        $edit_path = $entity->urlInfo('edit-form', ['language' => $language]);
         $this->drupalPostForm($edit_path, $edit, $this->getFormSubmitAction($entity, $langcode));
 
         $storage = $this->container->get('entity_type.manager')
@@ -567,11 +567,11 @@ protected function doTestTranslationChanged() {
         $entity = $storage->load($this->entityId);
         $this->assertEqual(
           $entity->getChangedTimeAcrossTranslations(), $entity->getTranslation($langcode)->getChangedTime(),
-          format_string('Changed time for language %language is the latest change over all languages.', array('%language' => $language->getName()))
+          format_string('Changed time for language %language is the latest change over all languages.', ['%language' => $language->getName()])
         );
       }
 
-      $timestamps = array();
+      $timestamps = [];
       foreach ($entity->getTranslationLanguages() as $language) {
         $next_timestamp = $entity->getTranslation($language->getId())->getChangedTime();
         if (!in_array($next_timestamp, $timestamps)) {
@@ -618,7 +618,7 @@ public function doTestChangedTimeAfterSaveWithoutChanges() {
 
       // Save the entity on the regular edit form.
       $language = $entity->language();
-      $edit_path = $entity->urlInfo('edit-form', array('language' => $language));
+      $edit_path = $entity->urlInfo('edit-form', ['language' => $language]);
       $this->drupalPostForm($edit_path, [], $this->getFormSubmitAction($entity, $language->getId()));
 
       $storage->resetCache([$this->entityId]);
diff --git a/core/modules/content_translation/src/Tests/ContentTranslationWorkflowsTest.php b/core/modules/content_translation/src/Tests/ContentTranslationWorkflowsTest.php
index b1524ee..ac26a39 100644
--- a/core/modules/content_translation/src/Tests/ContentTranslationWorkflowsTest.php
+++ b/core/modules/content_translation/src/Tests/ContentTranslationWorkflowsTest.php
@@ -26,7 +26,7 @@ class ContentTranslationWorkflowsTest extends ContentTranslationTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'entity_test');
+  public static $modules = ['language', 'content_translation', 'entity_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -47,7 +47,7 @@ protected function getTranslatorPermissions() {
    * {@inheritdoc}
    */
   protected function getEditorPermissions() {
-    return array('administer entity_test content');
+    return ['administer entity_test content'];
   }
 
   /**
@@ -58,11 +58,11 @@ protected function setupEntity() {
 
     // Create a test entity.
     $user = $this->drupalCreateUser();
-    $values = array(
+    $values = [
       'name' => $this->randomMachineName(),
       'user_id' => $user->id(),
-      $this->fieldName => array(array('value' => $this->randomMachineName(16))),
-    );
+      $this->fieldName => [['value' => $this->randomMachineName(16)]],
+    ];
     $id = $this->createEntity($values, $default_langcode);
     $storage = $this->container->get('entity_type.manager')
       ->getStorage($this->entityTypeId);
@@ -72,7 +72,7 @@ protected function setupEntity() {
     // Create a translation.
     $this->drupalLogin($this->translator);
     $add_translation_url = Url::fromRoute("entity.$this->entityTypeId.content_translation_add", [$this->entityTypeId => $this->entity->id(), 'source' => $default_langcode, 'target' => $this->langcodes[2]]);
-    $this->drupalPostForm($add_translation_url, array(), t('Save'));
+    $this->drupalPostForm($add_translation_url, [], t('Save'));
     $this->rebuildContainer();
   }
 
@@ -114,10 +114,10 @@ function testWorkflows() {
     $this->doTestWorkflows($this->administrator, $expected_status);
 
     // Check that translation permissions allow the associated operations.
-    $ops = array('create' => t('Add'), 'update' => t('Edit'), 'delete' => t('Delete'));
+    $ops = ['create' => t('Add'), 'update' => t('Edit'), 'delete' => t('Delete')];
     $translations_url = $this->entity->urlInfo('drupal:content-translation-overview');
     foreach ($ops as $current_op => $item) {
-      $user = $this->drupalCreateUser(array($this->getTranslatePermission(), "$current_op content translations", 'view test entity'));
+      $user = $this->drupalCreateUser([$this->getTranslatePermission(), "$current_op content translations", 'view test entity']);
       $this->drupalLogin($user);
       $this->drupalGet($translations_url);
 
@@ -130,10 +130,10 @@ function testWorkflows() {
 
       foreach ($ops as $op => $label) {
         if ($op != $current_op) {
-          $this->assertNoLink($label, format_string('No %op link found.', array('%op' => $label)));
+          $this->assertNoLink($label, format_string('No %op link found.', ['%op' => $label]));
         }
         else {
-          $this->assertLink($label, 0, format_string('%op link found.', array('%op' => $label)));
+          $this->assertLink($label, 0, format_string('%op link found.', ['%op' => $label]));
         }
       }
     }
diff --git a/core/modules/content_translation/src/Tests/Views/ContentTranslationViewsUITest.php b/core/modules/content_translation/src/Tests/Views/ContentTranslationViewsUITest.php
index 36d880e..07b5d00 100644
--- a/core/modules/content_translation/src/Tests/Views/ContentTranslationViewsUITest.php
+++ b/core/modules/content_translation/src/Tests/Views/ContentTranslationViewsUITest.php
@@ -16,21 +16,21 @@ class ContentTranslationViewsUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('content_translation');
+  public static $modules = ['content_translation'];
 
   /**
    * Tests the views UI.
    */
   public function testViewsUI() {
     $this->drupalGet('admin/structure/views/view/test_view/edit');
-    $this->assertTitle(t('@label (@table) | @site-name', array('@label' => 'Test view', '@table' => 'Views test data', '@site-name' => $this->config('system.site')->get('name'))));
+    $this->assertTitle(t('@label (@table) | @site-name', ['@label' => 'Test view', '@table' => 'Views test data', '@site-name' => $this->config('system.site')->get('name')]));
   }
 
 }
diff --git a/core/modules/content_translation/src/Tests/Views/TranslationLinkTest.php b/core/modules/content_translation/src/Tests/Views/TranslationLinkTest.php
index 4f53895..23c74a4 100644
--- a/core/modules/content_translation/src/Tests/Views/TranslationLinkTest.php
+++ b/core/modules/content_translation/src/Tests/Views/TranslationLinkTest.php
@@ -20,14 +20,14 @@ class TranslationLinkTest extends ContentTranslationTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_translations_link');
+  public static $testViews = ['test_entity_translations_link'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('content_translation_test_views');
+  public static $modules = ['content_translation_test_views'];
 
   protected function setUp() {
     // @todo Use entity_type once it is has multilingual Views integration.
@@ -45,7 +45,7 @@ protected function setUp() {
     $user->langcode = Language::LANGCODE_NOT_SPECIFIED;
     $user->save();
 
-    ViewTestData::createTestViews(get_class($this), array('content_translation_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['content_translation_test_views']);
   }
 
   /**
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationEntityBundleUITest.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationEntityBundleUITest.php
index c735716..163b5e8 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationEntityBundleUITest.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationEntityBundleUITest.php
@@ -11,11 +11,11 @@
  */
 class ContentTranslationEntityBundleUITest extends BrowserTestBase {
 
-  public static $modules = array('language', 'content_translation', 'node', 'comment', 'field_ui');
+  public static $modules = ['language', 'content_translation', 'node', 'comment', 'field_ui'];
 
   protected function setUp() {
     parent::setUp();
-    $user = $this->drupalCreateUser(array('access administration pages', 'administer languages', 'administer content translation', 'administer content types'));
+    $user = $this->drupalCreateUser(['access administration pages', 'administer languages', 'administer content translation', 'administer content types']);
     $this->drupalLogin($user);
   }
 
@@ -24,9 +24,9 @@ protected function setUp() {
    */
   public function testContentTypeUI() {
     // Create first content type.
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
     // Enable content translation.
-    $edit = array('language_configuration[content_translation]' => TRUE);
+    $edit = ['language_configuration[content_translation]' => TRUE];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, 'Save content type');
 
     // Make sure add page does not inherit translation configuration from first
@@ -35,11 +35,11 @@ public function testContentTypeUI() {
     $this->assertNoFieldChecked('edit-language-configuration-content-translation');
 
     // Create second content type and set content translation.
-    $edit = array(
+    $edit = [
       'name' => 'Page',
       'type' => 'page',
       'language_configuration[content_translation]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, 'Save and manage fields');
 
     // Make sure the settings are saved when creating the content type.
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationMetadataFieldsTest.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationMetadataFieldsTest.php
index 0f13079..bbad25c 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationMetadataFieldsTest.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationMetadataFieldsTest.php
@@ -28,7 +28,7 @@ class ContentTranslationMetadataFieldsTest extends ContentTranslationTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'node');
+  public static $modules = ['language', 'content_translation', 'node'];
 
   /**
    * The profile to install as a basis for testing.
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationStandardFieldsTest.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationStandardFieldsTest.php
index 37178ca..c6a72a3 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationStandardFieldsTest.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationStandardFieldsTest.php
@@ -16,14 +16,14 @@ class ContentTranslationStandardFieldsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'node',
     'comment',
     'field_ui',
     'entity_test',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -36,7 +36,7 @@ class ContentTranslationStandardFieldsTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'access administration pages',
       'administer languages',
       'administer content translation',
@@ -45,7 +45,7 @@ protected function setUp() {
       'administer comment fields',
       'administer comments',
       'administer comment types',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationTestBase.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationTestBase.php
index 822cbdd..ec7f87d 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationTestBase.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationTestBase.php
@@ -18,7 +18,7 @@
    *
    * @var array
    */
-  public static $modules = array('text');
+  public static $modules = ['text'];
 
   /**
    * The entity type being tested.
@@ -102,7 +102,7 @@ protected function setUp() {
    * Adds additional languages.
    */
   protected function setupLanguages() {
-    $this->langcodes = array('it', 'fr');
+    $this->langcodes = ['it', 'fr'];
     foreach ($this->langcodes as $langcode) {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
@@ -113,7 +113,7 @@ protected function setupLanguages() {
    * Returns an array of permissions needed for the translator.
    */
   protected function getTranslatorPermissions() {
-    return array_filter(array($this->getTranslatePermission(), 'create content translations', 'update content translations', 'delete content translations'));
+    return array_filter([$this->getTranslatePermission(), 'create content translations', 'update content translations', 'delete content translations']);
   }
 
   /**
@@ -131,14 +131,14 @@ protected function getTranslatePermission() {
    */
   protected function getEditorPermissions() {
     // Every entity-type-specific test needs to define these.
-    return array();
+    return [];
   }
 
   /**
    * Returns an array of permissions needed for the administrator.
    */
   protected function getAdministratorPermissions() {
-    return array_merge($this->getEditorPermissions(), $this->getTranslatorPermissions(), array('administer content translation'));
+    return array_merge($this->getEditorPermissions(), $this->getTranslatorPermissions(), ['administer content translation']);
   }
 
   /**
@@ -180,12 +180,12 @@ protected function setupTestFields() {
     if (empty($this->fieldName)) {
       $this->fieldName = 'field_test_et_ui_test';
     }
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'type' => 'string',
       'entity_type' => $this->entityTypeId,
       'cardinality' => 1,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => $this->entityTypeId,
       'field_name' => $this->fieldName,
@@ -193,10 +193,10 @@ protected function setupTestFields() {
       'label' => 'Test translatable text-field',
     ])->save();
     entity_get_form_display($this->entityTypeId, $this->bundle, 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'string_textfield',
         'weight' => 0,
-      ))
+      ])
       ->save();
   }
 
@@ -225,7 +225,7 @@ protected function createEntity($values, $langcode, $bundle_name = NULL) {
     if (!($controller instanceof SqlContentEntityStorage)) {
       foreach ($values as $property => $value) {
         if (is_array($value)) {
-          $entity_values[$property] = array($langcode => $value);
+          $entity_values[$property] = [$langcode => $value];
         }
       }
     }
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationUISkipTest.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationUISkipTest.php
index 74d5de5..02755e0 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationUISkipTest.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationUISkipTest.php
@@ -16,17 +16,17 @@ class ContentTranslationUISkipTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('content_translation_test', 'user', 'node');
+  public static $modules = ['content_translation_test', 'user', 'node'];
 
   /**
    * Tests the content_translation_ui_skip key functionality.
    */
   function testUICheckSkip() {
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'translate any entity',
       'administer content translation',
       'administer languages'
-    ));
+    ]);
     $this->drupalLogin($admin_user);
     // Visit the content translation.
     $this->drupalGet('admin/config/regional/content-language');
diff --git a/core/modules/content_translation/tests/src/Functional/ContentTranslationUITestBase.php b/core/modules/content_translation/tests/src/Functional/ContentTranslationUITestBase.php
index 769006e..accc3ca 100644
--- a/core/modules/content_translation/tests/src/Functional/ContentTranslationUITestBase.php
+++ b/core/modules/content_translation/tests/src/Functional/ContentTranslationUITestBase.php
@@ -97,7 +97,7 @@ protected function doTestBasicTranslation() {
     foreach ($values[$default_langcode] as $property => $value) {
       $stored_value = $this->getValue($translation, $property, $default_langcode);
       $value = is_array($value) ? $value[0]['value'] : $value;
-      $message = format_string('@property correctly stored in the default language.', array('@property' => $property));
+      $message = format_string('@property correctly stored in the default language.', ['@property' => $property]);
       $this->assertEqual($stored_value, $value, $message);
     }
 
@@ -111,7 +111,7 @@ protected function doTestBasicTranslation() {
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $default_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     $this->drupalPostForm($add_url, $this->getEditValues($values, $langcode), $this->getFormSubmitActionForNewTranslation($entity, $langcode));
 
     // Assert that HTML is escaped in "all languages" in UI after SafeMarkup
@@ -138,11 +138,11 @@ protected function doTestBasicTranslation() {
     $author_field_name = $entity->hasField('content_translation_uid') ? 'content_translation_uid' : 'uid';
     if ($entity->getFieldDefinition($author_field_name)->isTranslatable()) {
       $this->assertEqual($metadata_target_translation->getAuthor()->id(), $this->translator->id(),
-        SafeMarkup::format('Author of the target translation @langcode correctly stored for translatable owner field.', array('@langcode' => $langcode)));
+        SafeMarkup::format('Author of the target translation @langcode correctly stored for translatable owner field.', ['@langcode' => $langcode]));
 
       $this->assertNotEqual($metadata_target_translation->getAuthor()->id(), $metadata_source_translation->getAuthor()->id(),
         SafeMarkup::format('Author of the target translation @target different from the author of the source translation @source for translatable owner field.',
-          array('@target' => $langcode, '@source' => $default_langcode)));
+          ['@target' => $langcode, '@source' => $default_langcode]));
     }
     else {
       $this->assertEqual($metadata_target_translation->getAuthor()->id(), $this->editor->id(), 'Author of the entity remained untouched after translation for non translatable owner field.');
@@ -152,7 +152,7 @@ protected function doTestBasicTranslation() {
     if ($entity->getFieldDefinition($created_field_name)->isTranslatable()) {
       $this->assertTrue($metadata_target_translation->getCreatedTime() > $metadata_source_translation->getCreatedTime(),
         SafeMarkup::format('Translation creation timestamp of the target translation @target is newer than the creation timestamp of the source translation @source for translatable created field.',
-          array('@target' => $langcode, '@source' => $default_langcode)));
+          ['@target' => $langcode, '@source' => $default_langcode]));
     }
     else {
       $this->assertEqual($metadata_target_translation->getCreatedTime(), $metadata_source_translation->getCreatedTime(), 'Creation timestamp of the entity remained untouched after translation for non translatable created field.');
@@ -170,13 +170,13 @@ protected function doTestBasicTranslation() {
     $langcode = 'fr';
     $language = ConfigurableLanguage::load($langcode);
     $source_langcode = 'it';
-    $edit = array('source_langcode[source]' => $source_langcode);
+    $edit = ['source_langcode[source]' => $source_langcode];
     $entity_type_id = $entity->getEntityTypeId();
     $add_url = Url::fromRoute("entity.$entity_type_id.content_translation_add", [
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $default_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     // This does not save anything, it merely reloads the form and fills in the
     // fields with the values from the different source language.
     $this->drupalPostForm($add_url, $edit, t('Change'));
@@ -184,13 +184,13 @@ protected function doTestBasicTranslation() {
 
     // Add another translation and mark the other ones as outdated.
     $values[$langcode] = $this->getNewEntityValues($langcode);
-    $edit = $this->getEditValues($values, $langcode) + array('content_translation[retranslate]' => TRUE);
+    $edit = $this->getEditValues($values, $langcode) + ['content_translation[retranslate]' => TRUE];
     $entity_type_id = $entity->getEntityTypeId();
     $add_url = Url::fromRoute("entity.$entity_type_id.content_translation_add", [
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $source_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     $this->drupalPostForm($add_url, $edit, $this->getFormSubmitActionForNewTranslation($entity, $langcode));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
@@ -203,7 +203,7 @@ protected function doTestBasicTranslation() {
       foreach ($property_values as $property => $value) {
         $stored_value = $this->getValue($translation, $property, $langcode);
         $value = is_array($value) ? $value[0]['value'] : $value;
-        $message = format_string('%property correctly stored with language %language.', array('%property' => $property, '%language' => $langcode));
+        $message = format_string('%property correctly stored with language %language.', ['%property' => $property, '%language' => $langcode]);
         $this->assertEqual($stored_value, $value, $message);
       }
     }
@@ -223,13 +223,13 @@ protected function doTestTranslationOverview() {
 
     foreach ($this->langcodes as $langcode) {
       if ($entity->hasTranslation($langcode)) {
-        $language = new Language(array('id' => $langcode));
+        $language = new Language(['id' => $langcode]);
         $view_url = $entity->url('canonical', ['language' => $language]);
         $elements = $this->xpath('//table//a[@href=:href]', [':href' => $view_url]);
-        $this->assertEqual((string) $elements[0], $entity->getTranslation($langcode)->label(), format_string('Label correctly shown for %language translation.', array('%language' => $langcode)));
-        $edit_path = $entity->url('edit-form', array('language' => $language));
-        $elements = $this->xpath('//table//ul[@class="dropbutton"]/li/a[@href=:href]', array(':href' => $edit_path));
-        $this->assertEqual((string) $elements[0], t('Edit'), format_string('Edit link correct for %language translation.', array('%language' => $langcode)));
+        $this->assertEqual((string) $elements[0], $entity->getTranslation($langcode)->label(), format_string('Label correctly shown for %language translation.', ['%language' => $langcode]));
+        $edit_path = $entity->url('edit-form', ['language' => $language]);
+        $elements = $this->xpath('//table//ul[@class="dropbutton"]/li/a[@href=:href]', [':href' => $edit_path]);
+        $this->assertEqual((string) $elements[0], t('Edit'), format_string('Edit link correct for %language translation.', ['%language' => $langcode]));
       }
     }
   }
@@ -246,8 +246,8 @@ protected function doTestOutdatedStatus() {
     $languages = \Drupal::languageManager()->getLanguages();
 
     // Mark translations as outdated.
-    $edit = array('content_translation[retranslate]' => TRUE);
-    $edit_path = $entity->urlInfo('edit-form', array('language' => $languages[$langcode]));
+    $edit = ['content_translation[retranslate]' => TRUE];
+    $edit_path = $entity->urlInfo('edit-form', ['language' => $languages[$langcode]]);
     $this->drupalPostForm($edit_path, $edit, $this->getFormSubmitAction($entity, $langcode));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
@@ -255,7 +255,7 @@ protected function doTestOutdatedStatus() {
     // Check that every translation has the correct "outdated" status, and that
     // the Translation fieldset is open if the translation is "outdated".
     foreach ($this->langcodes as $added_langcode) {
-      $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($added_langcode)));
+      $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($added_langcode)]);
       $this->drupalGet($url);
       if ($added_langcode == $langcode) {
         $this->assertFieldByXPath('//input[@name="content_translation[retranslate]"]', FALSE, 'The retranslate flag is not checked by default.');
@@ -264,7 +264,7 @@ protected function doTestOutdatedStatus() {
       else {
         $this->assertFieldByXPath('//input[@name="content_translation[outdated]"]', TRUE, 'The translate flag is checked by default.');
         $this->assertTrue($this->xpath('//details[@id="edit-content-translation" and @open="open"]'), 'The translation tab is correctly expanded when the translation is outdated.');
-        $edit = array('content_translation[outdated]' => FALSE);
+        $edit = ['content_translation[outdated]' => FALSE];
         $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $added_langcode));
         $this->drupalGet($url);
         $this->assertFieldByXPath('//input[@name="content_translation[retranslate]"]', FALSE, 'The retranslate flag is now shown.');
@@ -289,8 +289,8 @@ protected function doTestPublishedStatus() {
     // Unpublish translations.
     foreach ($this->langcodes as $index => $langcode) {
       if ($index > 0) {
-        $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($langcode)));
-        $edit = array('content_translation[status]' => FALSE);
+        $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($langcode)]);
+        $edit = ['content_translation[status]' => FALSE];
         $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
         $storage = $this->container->get('entity_type.manager')
           ->getStorage($this->entityTypeId);
@@ -313,20 +313,20 @@ protected function doTestAuthoringInfo() {
       ->getStorage($this->entityTypeId);
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
-    $values = array();
+    $values = [];
 
     // Post different authoring information for each translation.
     foreach ($this->langcodes as $index => $langcode) {
       $user = $this->drupalCreateUser();
-      $values[$langcode] = array(
+      $values[$langcode] = [
         'uid' => $user->id(),
         'created' => REQUEST_TIME - mt_rand(0, 1000),
-      );
-      $edit = array(
+      ];
+      $edit = [
         'content_translation[uid]' => $user->getUsername(),
         'content_translation[created]' => format_date($values[$langcode]['created'], 'custom', 'Y-m-d H:i:s O'),
-      );
-      $url = $entity->urlInfo('edit-form', array('language' => ConfigurableLanguage::load($langcode)));
+      ];
+      $url = $entity->urlInfo('edit-form', ['language' => ConfigurableLanguage::load($langcode)]);
       $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode));
     }
 
@@ -342,11 +342,11 @@ protected function doTestAuthoringInfo() {
 
     // Try to post non valid values and check that they are rejected.
     $langcode = 'en';
-    $edit = array(
+    $edit = [
       // User names have by default length 8.
       'content_translation[uid]' => $this->randomMachineName(12),
       'content_translation[created]' => '19/11/1978',
-    );
+    ];
     $this->drupalPostForm($entity->urlInfo('edit-form'), $edit, $this->getFormSubmitAction($entity, $langcode));
     $this->assertTrue($this->xpath('//div[contains(@class, "error")]//ul'), 'Invalid values generate a list of form errors.');
     $metadata = $this->manager->getTranslationMetadata($entity->getTranslation($langcode));
@@ -366,9 +366,9 @@ protected function doTestTranslationDeletion() {
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
     $language = ConfigurableLanguage::load($langcode);
-    $url = $entity->urlInfo('edit-form', array('language' => $language));
-    $this->drupalPostForm($url, array(), t('Delete translation'));
-    $this->drupalPostForm(NULL, array(), t('Delete @language translation', array('@language' => $language->getName())));
+    $url = $entity->urlInfo('edit-form', ['language' => $language]);
+    $this->drupalPostForm($url, [], t('Delete translation'));
+    $this->drupalPostForm(NULL, [], t('Delete @language translation', ['@language' => $language->getName()]));
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId, TRUE);
     if ($this->assertTrue(is_object($entity), 'Entity found')) {
@@ -386,7 +386,7 @@ protected function doTestTranslationDeletion() {
    * Returns an array of entity field values to be tested.
    */
   protected function getNewEntityValues($langcode) {
-    return array($this->fieldName => array(array('value' => $this->randomMachineName(16))));
+    return [$this->fieldName => [['value' => $this->randomMachineName(16)]]];
   }
 
   /**
@@ -509,7 +509,7 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
@@ -552,10 +552,10 @@ protected function doTestTranslationChanged() {
 
         $langcode = $language->getId();
 
-        $edit = array(
+        $edit = [
           $this->fieldName . '[0][value]' => $this->randomString(),
-        );
-        $edit_path = $entity->urlInfo('edit-form', array('language' => $language));
+        ];
+        $edit_path = $entity->urlInfo('edit-form', ['language' => $language]);
         $this->drupalPostForm($edit_path, $edit, $this->getFormSubmitAction($entity, $langcode));
 
         $storage = $this->container->get('entity_type.manager')
@@ -564,11 +564,11 @@ protected function doTestTranslationChanged() {
         $entity = $storage->load($this->entityId);
         $this->assertEqual(
           $entity->getChangedTimeAcrossTranslations(), $entity->getTranslation($langcode)->getChangedTime(),
-          format_string('Changed time for language %language is the latest change over all languages.', array('%language' => $language->getName()))
+          format_string('Changed time for language %language is the latest change over all languages.', ['%language' => $language->getName()])
         );
       }
 
-      $timestamps = array();
+      $timestamps = [];
       foreach ($entity->getTranslationLanguages() as $language) {
         $next_timestamp = $entity->getTranslation($language->getId())->getChangedTime();
         if (!in_array($next_timestamp, $timestamps)) {
@@ -615,7 +615,7 @@ public function doTestChangedTimeAfterSaveWithoutChanges() {
 
       // Save the entity on the regular edit form.
       $language = $entity->language();
-      $edit_path = $entity->urlInfo('edit-form', array('language' => $language));
+      $edit_path = $entity->urlInfo('edit-form', ['language' => $language]);
       $this->drupalPostForm($edit_path, [], $this->getFormSubmitAction($entity, $language->getId()));
 
       $storage->resetCache([$this->entityId]);
diff --git a/core/modules/content_translation/tests/src/Kernel/ContentTranslationConfigImportTest.php b/core/modules/content_translation/tests/src/Kernel/ContentTranslationConfigImportTest.php
index f650270..732d74b 100644
--- a/core/modules/content_translation/tests/src/Kernel/ContentTranslationConfigImportTest.php
+++ b/core/modules/content_translation/tests/src/Kernel/ContentTranslationConfigImportTest.php
@@ -25,7 +25,7 @@ class ContentTranslationConfigImportTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'entity_test', 'language', 'content_translation');
+  public static $modules = ['system', 'user', 'entity_test', 'language', 'content_translation'];
 
   /**
    * {@inheritdoc}
@@ -69,22 +69,22 @@ function testConfigImportUpdates() {
     $this->assertIdentical($storage->exists($config_name), FALSE, $config_name . ' not found.');
 
     // Create new config entity.
-    $data = array(
+    $data = [
       'uuid' => 'a019d89b-c4d9-4ed4-b859-894e4e2e93cf',
       'langcode' => 'en',
       'status' => TRUE,
-      'dependencies' => array(
-        'module' => array('content_translation')
-      ),
+      'dependencies' => [
+        'module' => ['content_translation']
+      ],
       'id' => $config_id,
       'target_entity_type_id' => 'entity_test_mul',
       'target_bundle' => 'entity_test_mul',
       'default_langcode' => 'site_default',
       'language_alterable' => FALSE,
-      'third_party_settings' => array(
-        'content_translation' => array('enabled' => TRUE),
-      ),
-    );
+      'third_party_settings' => [
+        'content_translation' => ['enabled' => TRUE],
+      ],
+    ];
     $sync->write($config_name, $data);
     $this->assertIdentical($sync->exists($config_name), TRUE, $config_name . ' found.');
 
diff --git a/core/modules/content_translation/tests/src/Kernel/ContentTranslationSettingsApiTest.php b/core/modules/content_translation/tests/src/Kernel/ContentTranslationSettingsApiTest.php
index 291cdf9..9b64ba8 100644
--- a/core/modules/content_translation/tests/src/Kernel/ContentTranslationSettingsApiTest.php
+++ b/core/modules/content_translation/tests/src/Kernel/ContentTranslationSettingsApiTest.php
@@ -16,7 +16,7 @@ class ContentTranslationSettingsApiTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'user', 'entity_test');
+  public static $modules = ['language', 'content_translation', 'user', 'entity_test'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/content_translation/tests/src/Kernel/ContentTranslationSyncUnitTest.php b/core/modules/content_translation/tests/src/Kernel/ContentTranslationSyncUnitTest.php
index eb52e50..3022807 100644
--- a/core/modules/content_translation/tests/src/Kernel/ContentTranslationSyncUnitTest.php
+++ b/core/modules/content_translation/tests/src/Kernel/ContentTranslationSyncUnitTest.php
@@ -54,17 +54,17 @@ class ContentTranslationSyncUnitTest extends KernelTestBase {
    */
   protected $unchangedFieldValues;
 
-  public static $modules = array('language', 'content_translation');
+  public static $modules = ['language', 'content_translation'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->synchronizer = new FieldTranslationSynchronizer($this->container->get('entity.manager'));
-    $this->synchronized = array('sync1', 'sync2');
-    $this->columns = array_merge($this->synchronized, array('var1', 'var2'));
-    $this->langcodes = array('en', 'it', 'fr', 'de', 'es');
+    $this->synchronized = ['sync1', 'sync2'];
+    $this->columns = array_merge($this->synchronized, ['var1', 'var2']);
+    $this->langcodes = ['en', 'it', 'fr', 'de', 'es'];
     $this->cardinality = 4;
-    $this->unchangedFieldValues = array();
+    $this->unchangedFieldValues = [];
 
     // Set up an initial set of values in the correct state, that is with
     // "synchronized" values being equal.
@@ -88,7 +88,7 @@ public function testFieldSync() {
     $sync_langcode = $this->langcodes[2];
     $unchanged_items = $this->unchangedFieldValues[$sync_langcode];
     $field_values = $this->unchangedFieldValues;
-    $item = array();
+    $item = [];
     foreach ($this->columns as $column) {
       $item[$column] = $this->randomMachineName();
     }
@@ -140,7 +140,7 @@ public function testFieldSync() {
     $sync_langcode = $this->langcodes[3];
     $unchanged_items = $this->unchangedFieldValues[$sync_langcode];
     $field_values = $this->unchangedFieldValues;
-    $field_values[$sync_langcode] = array();
+    $field_values[$sync_langcode] = [];
     // Scramble the items.
     foreach ($unchanged_items as $delta => $item) {
       $new_delta = ($delta + 1) % $this->cardinality;
@@ -179,7 +179,7 @@ public function testMultipleSyncedValues() {
 
     // Determine whether the unchanged values should be altered depending on
     // their delta.
-    $delta_callbacks = array(
+    $delta_callbacks = [
       // Continuous field values: all values are equal.
       function($delta) { return TRUE; },
       // Alternated field values: only the even ones are equal.
@@ -188,7 +188,7 @@ function($delta) { return $delta % 2 !== 0; },
       function($delta) { return $delta === 1 || $delta === 2; },
       // Sparse field values: only the "extreme" ones are equal.
       function($delta) { return $delta === 0 || $delta === 3; },
-    );
+    ];
 
     foreach ($delta_callbacks as $delta_callback) {
       $field_values = $this->unchangedFieldValues;
diff --git a/core/modules/content_translation/tests/src/Unit/Access/ContentTranslationManageAccessCheckTest.php b/core/modules/content_translation/tests/src/Unit/Access/ContentTranslationManageAccessCheckTest.php
index 7390c0e..ad7317f 100644
--- a/core/modules/content_translation/tests/src/Unit/Access/ContentTranslationManageAccessCheckTest.php
+++ b/core/modules/content_translation/tests/src/Unit/Access/ContentTranslationManageAccessCheckTest.php
@@ -69,18 +69,18 @@ public function testCreateAccess() {
     $language_manager->expects($this->at(0))
       ->method('getLanguage')
       ->with($this->equalTo($source))
-      ->will($this->returnValue(new Language(array('id' => 'en'))));
+      ->will($this->returnValue(new Language(['id' => 'en'])));
     $language_manager->expects($this->at(1))
       ->method('getLanguages')
-      ->will($this->returnValue(array('en' => array(), 'it' => array())));
+      ->will($this->returnValue(['en' => [], 'it' => []]));
     $language_manager->expects($this->at(2))
       ->method('getLanguage')
       ->with($this->equalTo($source))
-      ->will($this->returnValue(new Language(array('id' => 'en'))));
+      ->will($this->returnValue(new Language(['id' => 'en'])));
     $language_manager->expects($this->at(3))
       ->method('getLanguage')
       ->with($this->equalTo($target))
-      ->will($this->returnValue(new Language(array('id' => 'it'))));
+      ->will($this->returnValue(new Language(['id' => 'it'])));
 
     // Set the mock entity. We need to use ContentEntityBase for mocking due to
     // issues with phpunit and multiple interfaces.
@@ -92,7 +92,7 @@ public function testCreateAccess() {
     $entity->expects($this->once())
       ->method('getTranslationLanguages')
       ->with()
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
     $entity->expects($this->once())
       ->method('getCacheContexts')
       ->willReturn([]);
@@ -101,10 +101,10 @@ public function testCreateAccess() {
       ->willReturn(Cache::PERMANENT);
     $entity->expects($this->once())
       ->method('getCacheTags')
-      ->will($this->returnValue(array('node:1337')));
+      ->will($this->returnValue(['node:1337']));
     $entity->expects($this->once())
       ->method('getCacheContexts')
-      ->willReturn(array());
+      ->willReturn([]);
 
     // Set the route requirements.
     $route = new Route('test_route');
diff --git a/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php b/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
index 63dad2f..a72d9b7 100644
--- a/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
+++ b/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
@@ -12,25 +12,25 @@
 class ContentTranslationLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'content_translation' => 'core/modules/content_translation',
       'node' => 'core/modules/node',
-    );
+    ];
     parent::setUp();
 
     $entity_type = $this->getMock('Drupal\Core\Entity\EntityTypeInterface');
     $entity_type->expects($this->any())
       ->method('getLinkTemplate')
-      ->will($this->returnValueMap(array(
-        array('canonical', 'entity.node.canonical'),
-        array('drupal:content-translation-overview', 'entity.node.content_translation_overview'),
-      )));
+      ->will($this->returnValueMap([
+        ['canonical', 'entity.node.canonical'],
+        ['drupal:content-translation-overview', 'entity.node.content_translation_overview'],
+      ]));
     $content_translation_manager = $this->getMock('Drupal\content_translation\ContentTranslationManagerInterface');
     $content_translation_manager->expects($this->any())
       ->method('getSupportedEntityTypes')
-      ->will($this->returnValue(array(
+      ->will($this->returnValue([
         'node' => $entity_type,
-      )));
+      ]));
     \Drupal::getContainer()->set('content_translation.manager', $content_translation_manager);
     \Drupal::getContainer()->set('string_translation', $this->getStringTranslationStub());
   }
@@ -48,22 +48,22 @@ public function testBlockAdminDisplay($route, $expected) {
    * Provides a list of routes to test.
    */
   public function providerTestBlockAdminDisplay() {
-    return array(
-      array('entity.node.canonical', array(array(
+    return [
+      ['entity.node.canonical', [[
         'content_translation.local_tasks:entity.node.content_translation_overview',
         'entity.node.canonical',
         'entity.node.edit_form',
         'entity.node.delete_form',
         'entity.node.version_history',
-      ))),
-      array('entity.node.content_translation_overview', array(array(
+      ]]],
+      ['entity.node.content_translation_overview', [[
         'content_translation.local_tasks:entity.node.content_translation_overview',
         'entity.node.canonical',
         'entity.node.edit_form',
         'entity.node.delete_form',
         'entity.node.version_history',
-      ))),
-    );
+      ]]],
+    ];
   }
 
 }
diff --git a/core/modules/contextual/contextual.module b/core/modules/contextual/contextual.module
index 6cb1fcf..cf20318 100644
--- a/core/modules/contextual/contextual.module
+++ b/core/modules/contextual/contextual.module
@@ -27,26 +27,26 @@ function contextual_toolbar() {
     return $items;
   }
 
-  $items['contextual'] += array(
+  $items['contextual'] += [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'html_tag',
       '#tag' => 'button',
       '#value' => t('Edit'),
-      '#attributes' => array(
-        'class' => array('toolbar-icon', 'toolbar-icon-edit'),
+      '#attributes' => [
+        'class' => ['toolbar-icon', 'toolbar-icon-edit'],
         'aria-pressed' => 'false',
-      ),
-    ),
-    '#wrapper_attributes' => array(
-      'class' => array('hidden', 'contextual-toolbar-tab'),
-    ),
-    '#attached' => array(
-      'library' => array(
+      ],
+    ],
+    '#wrapper_attributes' => [
+      'class' => ['hidden', 'contextual-toolbar-tab'],
+    ],
+    '#attached' => [
+      'library' => [
         'contextual/drupal.contextual-toolbar',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   return $items;
 }
@@ -75,7 +75,7 @@ function contextual_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.contextual':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Contextual links module gives users with the <em>Use contextual links</em> permission quick access to tasks associated with certain areas of pages on your site. For example, a menu displayed as a block has links to edit the menu and configure the block. For more information, see the <a href=":contextual">online documentation for the Contextual Links module</a>.', array(':contextual' => 'https://www.drupal.org/documentation/modules/contextual')) . '</p>';
+      $output .= '<p>' . t('The Contextual links module gives users with the <em>Use contextual links</em> permission quick access to tasks associated with certain areas of pages on your site. For example, a menu displayed as a block has links to edit the menu and configure the block. For more information, see the <a href=":contextual">online documentation for the Contextual Links module</a>.', [':contextual' => 'https://www.drupal.org/documentation/modules/contextual']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Displaying contextual links') . '</dt>';
@@ -88,8 +88,8 @@ function contextual_help($route_name, RouteMatchInterface $route_match) {
         '#alt' => t('contextual links button')
       ];
       $sample_picture = \Drupal::service('renderer')->render($sample_picture);
-      $output .= '<li>' . t('Hovering over the area of interest will temporarily make the contextual links button visible (which looks like a pencil in most themes, and is normally displayed in the upper right corner of the area). The icon typically looks like this: @picture', array('@picture' => $sample_picture)) . '</li>';
-      $output .= '<li>' . t('If you have the <a href=":toolbar">Toolbar module</a> enabled, clicking the contextual links button in the toolbar (which looks like a pencil) will make all contextual links buttons on the page visible. Clicking this button again will toggle them to invisible.', array(':toolbar' => (\Drupal::moduleHandler()->moduleExists('toolbar')) ? \Drupal::url('help.page', array('name' => 'toolbar')) : '#')) . '</li>';
+      $output .= '<li>' . t('Hovering over the area of interest will temporarily make the contextual links button visible (which looks like a pencil in most themes, and is normally displayed in the upper right corner of the area). The icon typically looks like this: @picture', ['@picture' => $sample_picture]) . '</li>';
+      $output .= '<li>' . t('If you have the <a href=":toolbar">Toolbar module</a> enabled, clicking the contextual links button in the toolbar (which looks like a pencil) will make all contextual links buttons on the page visible. Clicking this button again will toggle them to invisible.', [':toolbar' => (\Drupal::moduleHandler()->moduleExists('toolbar')) ? \Drupal::url('help.page', ['name' => 'toolbar']) : '#']) . '</li>';
       $output .= '</ol>';
       $output .= t('Once the contextual links button for the area of interest is visible, click the button to display the links.');
       $output .= '</dd>';
@@ -132,10 +132,10 @@ function contextual_preprocess(&$variables, $hook, $info) {
     // users, contextual_page_attachments() only adds the asset library for
     // users with the 'access contextual links' permission, thus preventing
     // unnecessary HTTP requests for users without that permission.
-    $variables['title_suffix']['contextual_links'] = array(
+    $variables['title_suffix']['contextual_links'] = [
       '#type' => 'contextual_links_placeholder',
       '#id' => _contextual_links_to_id($element['#contextual_links']),
-    );
+    ];
   }
 }
 
@@ -172,7 +172,7 @@ function contextual_contextual_links_view_alter(&$element, $items) {
  *   use in a data- attribute.
  */
 function _contextual_links_to_id($contextual_links) {
-  $ids = array();
+  $ids = [];
   $langcode = \Drupal::languageManager()->getCurrentLanguage(LanguageInterface::TYPE_URL)->getId();
   foreach ($contextual_links as $group => $args) {
     $route_parameters = UrlHelper::buildQuery($args['route_parameters']);
@@ -199,17 +199,17 @@ function _contextual_links_to_id($contextual_links) {
  *   The value for a #contextual_links property.
  */
 function _contextual_id_to_links($id) {
-  $contextual_links = array();
+  $contextual_links = [];
   $contexts = explode('|', $id);
   foreach ($contexts as $context) {
     list($group, $route_parameters_raw, $metadata_raw) = explode(':', $context);
     parse_str($route_parameters_raw, $route_parameters);
-    $metadata = array();
+    $metadata = [];
     parse_str($metadata_raw, $metadata);
-    $contextual_links[$group] = array(
+    $contextual_links[$group] = [
       'route_parameters' => $route_parameters,
       'metadata' => $metadata,
-    );
+    ];
   }
   return $contextual_links;
 }
diff --git a/core/modules/contextual/contextual.views.inc b/core/modules/contextual/contextual.views.inc
index 528b3bb..bac5522 100644
--- a/core/modules/contextual/contextual.views.inc
+++ b/core/modules/contextual/contextual.views.inc
@@ -9,11 +9,11 @@
  * Implements hook_views_data_alter().
  */
 function contextual_views_data_alter(&$data) {
-  $data['views']['contextual_links'] = array(
+  $data['views']['contextual_links'] = [
     'title' => t('Contextual Links'),
     'help' => t('Display fields in a contextual links menu.'),
-    'field' => array(
+    'field' => [
       'id' => 'contextual_links',
-    ),
-  );
+    ],
+  ];
 }
diff --git a/core/modules/contextual/src/ContextualController.php b/core/modules/contextual/src/ContextualController.php
index 0812ad1..b1fe245 100644
--- a/core/modules/contextual/src/ContextualController.php
+++ b/core/modules/contextual/src/ContextualController.php
@@ -32,12 +32,12 @@ public function render(Request $request) {
       throw new BadRequestHttpException(t('No contextual ids specified.'));
     }
 
-    $rendered = array();
+    $rendered = [];
     foreach ($ids as $id) {
-      $element = array(
+      $element = [
         '#type' => 'contextual_links',
         '#contextual_links' => _contextual_id_to_links($id),
-      );
+      ];
       $rendered[$id] = $this->container->get('renderer')->renderRoot($element);
     }
 
diff --git a/core/modules/contextual/src/Element/ContextualLinks.php b/core/modules/contextual/src/Element/ContextualLinks.php
index 8f67023..62e8966 100644
--- a/core/modules/contextual/src/Element/ContextualLinks.php
+++ b/core/modules/contextual/src/Element/ContextualLinks.php
@@ -18,19 +18,19 @@ class ContextualLinks extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#pre_render' => array(
-        array($class, 'preRenderLinks'),
-      ),
+    return [
+      '#pre_render' => [
+        [$class, 'preRenderLinks'],
+      ],
       '#theme' => 'links__contextual',
-      '#links' => array(),
-      '#attributes' => array('class' => array('contextual-links')),
-      '#attached' => array(
-        'library' => array(
+      '#links' => [],
+      '#attributes' => ['class' => ['contextual-links']],
+      '#attached' => [
+        'library' => [
           'contextual/drupal.contextual-links',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -60,26 +60,26 @@ public function getInfo() {
    */
   public static function preRenderLinks(array $element) {
     // Retrieve contextual menu links.
-    $items = array();
+    $items = [];
 
     $contextual_links_manager = static::contextualLinkManager();
 
     foreach ($element['#contextual_links'] as $group => $args) {
-      $args += array(
-        'route_parameters' => array(),
-        'metadata' => array(),
-      );
+      $args += [
+        'route_parameters' => [],
+        'metadata' => [],
+      ];
       $items += $contextual_links_manager->getContextualLinksArrayByGroup($group, $args['route_parameters'], $args['metadata']);
     }
 
     // Transform contextual links into parameters suitable for links.html.twig.
-    $links = array();
+    $links = [];
     foreach ($items as $class => $item) {
       $class = Html::getClass($class);
-      $links[$class] = array(
+      $links[$class] = [
         'title' => $item['title'],
         'url' => Url::fromRoute(isset($item['route_name']) ? $item['route_name'] : '', isset($item['route_parameters']) ? $item['route_parameters'] : []),
-      );
+      ];
     }
     $element['#links'] = $links;
 
diff --git a/core/modules/contextual/src/Element/ContextualLinksPlaceholder.php b/core/modules/contextual/src/Element/ContextualLinksPlaceholder.php
index 92f4b2b..2fba8db 100644
--- a/core/modules/contextual/src/Element/ContextualLinksPlaceholder.php
+++ b/core/modules/contextual/src/Element/ContextualLinksPlaceholder.php
@@ -18,12 +18,12 @@ class ContextualLinksPlaceholder extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#pre_render' => array(
-        array($class, 'preRenderPlaceholder'),
-      ),
+    return [
+      '#pre_render' => [
+        [$class, 'preRenderPlaceholder'],
+      ],
       '#id' => NULL,
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/contextual/src/Plugin/views/field/ContextualLinks.php b/core/modules/contextual/src/Plugin/views/field/ContextualLinks.php
index 585b7f6..6bd5c01 100644
--- a/core/modules/contextual/src/Plugin/views/field/ContextualLinks.php
+++ b/core/modules/contextual/src/Plugin/views/field/ContextualLinks.php
@@ -35,8 +35,8 @@ public function usesGroupBy() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['fields'] = array('default' => array());
-    $options['destination'] = array('default' => 1);
+    $options['fields'] = ['default' => []];
+    $options['destination'] = ['default' => 1];
 
     return $options;
   }
@@ -48,23 +48,23 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $all_fields = $this->view->display_handler->getFieldLabels();
     // Offer to include only those fields that follow this one.
     $field_options = array_slice($all_fields, 0, array_search($this->options['id'], array_keys($all_fields)));
-    $form['fields'] = array(
+    $form['fields'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Fields'),
       '#description' => $this->t('Fields to be included as contextual links.'),
       '#options' => $field_options,
       '#default_value' => $this->options['fields'],
-    );
-    $form['destination'] = array(
+    ];
+    $form['destination'] = [
       '#type' => 'select',
       '#title' => $this->t('Include destination'),
       '#description' => $this->t('Include a "destination" parameter in the link to return the user to the original view upon completing the contextual action.'),
-      '#options' => array(
+      '#options' => [
         '0' => $this->t('No'),
         '1' => $this->t('Yes'),
-      ),
+      ],
       '#default_value' => $this->options['destination'],
-    );
+    ];
   }
 
   /**
@@ -93,7 +93,7 @@ public function preRender(&$values) {
    * @see contextual_contextual_links_view_alter()
    */
   public function render(ResultRow $values) {
-    $links = array();
+    $links = [];
     foreach ($this->options['fields'] as $field) {
       $rendered_field = $this->view->style_plugin->getField($values->index, $field);
       if (empty($rendered_field)) {
@@ -109,13 +109,13 @@ public function render(ResultRow $values) {
       }
       if (!empty($title) && !empty($path)) {
         // Make sure that tokens are replaced for this paths as well.
-        $tokens = $this->getRenderTokens(array());
+        $tokens = $this->getRenderTokens([]);
         $path = strip_tags(Html::decodeEntities(strtr($path, $tokens)));
 
-        $links[$field] = array(
+        $links[$field] = [
           'href' => $path,
           'title' => $title,
-        );
+        ];
         if (!empty($this->options['destination'])) {
           $links[$field]['query'] = $this->getDestinationArray();
         }
@@ -124,20 +124,20 @@ public function render(ResultRow $values) {
 
     // Renders a contextual links placeholder.
     if (!empty($links)) {
-      $contextual_links = array(
-        'contextual' => array(
+      $contextual_links = [
+        'contextual' => [
           '',
-          array(),
-          array(
+          [],
+          [
             'contextual-views-field-links' => UrlHelper::encodePath(Json::encode($links)),
-          )
-        )
-      );
+          ]
+        ]
+      ];
 
-      $element = array(
+      $element = [
         '#type' => 'contextual_links_placeholder',
         '#id' => _contextual_links_to_id($contextual_links),
-      );
+      ];
       return drupal_render($element);
     }
     else {
diff --git a/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php b/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
index e5d2c85..e2c57fc 100644
--- a/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
+++ b/core/modules/contextual/src/Tests/ContextualDynamicContextTest.php
@@ -42,20 +42,20 @@ class ContextualDynamicContextTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('contextual', 'node', 'views', 'views_ui', 'language', 'menu_test');
+  public static $modules = ['contextual', 'node', 'views', 'views_ui', 'language', 'menu_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     ConfigurableLanguage::createFromLangcode('it')->save();
     $this->rebuildContainer();
 
-    $this->editorUser = $this->drupalCreateUser(array('access content', 'access contextual links', 'edit any article content'));
-    $this->authenticatedUser = $this->drupalCreateUser(array('access content', 'access contextual links'));
-    $this->anonymousUser = $this->drupalCreateUser(array('access content'));
+    $this->editorUser = $this->drupalCreateUser(['access content', 'access contextual links', 'edit any article content']);
+    $this->authenticatedUser = $this->drupalCreateUser(['access content', 'access contextual links']);
+    $this->anonymousUser = $this->drupalCreateUser(['access content']);
   }
 
   /**
@@ -71,9 +71,9 @@ function testDifferentPermissions() {
     // - An article, which should be user-editable.
     // - A page, which should not be user-editable.
     // - A second article, which should also be user-editable.
-    $node1 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $node2 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 1));
-    $node3 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
+    $node1 = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $node2 = $this->drupalCreateNode(['type' => 'page', 'promote' => 1]);
+    $node3 = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
 
     // Now, on the front page, all article nodes should have contextual links
     // placeholders, as should the view that contains them.
@@ -89,7 +89,7 @@ function testDifferentPermissions() {
     for ($i = 0; $i < count($ids); $i++) {
       $this->assertContextualLinkPlaceHolder($ids[$i]);
     }
-    $this->renderContextualLinks(array(), 'node');
+    $this->renderContextualLinks([], 'node');
     $this->assertResponse(400);
     $this->assertRaw('No contextual ids specified.');
     $response = $this->renderContextualLinks($ids, 'node');
@@ -112,7 +112,7 @@ function testDifferentPermissions() {
     for ($i = 0; $i < count($ids); $i++) {
       $this->assertContextualLinkPlaceHolder($ids[$i]);
     }
-    $this->renderContextualLinks(array(), 'node');
+    $this->renderContextualLinks([], 'node');
     $this->assertResponse(400);
     $this->assertRaw('No contextual ids specified.');
     $response = $this->renderContextualLinks($ids, 'node');
@@ -129,7 +129,7 @@ function testDifferentPermissions() {
     for ($i = 0; $i < count($ids); $i++) {
       $this->assertNoContextualLinkPlaceHolder($ids[$i]);
     }
-    $this->renderContextualLinks(array(), 'node');
+    $this->renderContextualLinks([], 'node');
     $this->assertResponse(403);
     $this->renderContextualLinks($ids, 'node');
     $this->assertResponse(403);
@@ -150,7 +150,7 @@ function testDifferentPermissions() {
    *   The result of the assertion.
    */
   protected function assertContextualLinkPlaceHolder($id) {
-    return $this->assertRaw('<div' . new Attribute(array('data-contextual-id' => $id)) . '></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $id)));
+    return $this->assertRaw('<div' . new Attribute(['data-contextual-id' => $id]) . '></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $id]));
   }
 
   /**
@@ -163,7 +163,7 @@ protected function assertContextualLinkPlaceHolder($id) {
    *   The result of the assertion.
    */
   protected function assertNoContextualLinkPlaceHolder($id) {
-    return $this->assertNoRaw('<div' . new Attribute(array('data-contextual-id' => $id)) . '></div>', format_string('Contextual link placeholder with id @id does not exist.', array('@id' => $id)));
+    return $this->assertNoRaw('<div' . new Attribute(['data-contextual-id' => $id]) . '></div>', format_string('Contextual link placeholder with id @id does not exist.', ['@id' => $id]));
   }
 
   /**
@@ -178,11 +178,11 @@ protected function assertNoContextualLinkPlaceHolder($id) {
    *   The response body.
    */
   protected function renderContextualLinks($ids, $current_path) {
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($ids); $i++) {
       $post['ids[' . $i . ']'] = $ids[$i];
     }
-    return $this->drupalPostWithFormat('contextual/render', 'json', $post, array('query' => array('destination' => $current_path)));
+    return $this->drupalPostWithFormat('contextual/render', 'json', $post, ['query' => ['destination' => $current_path]]);
   }
 
 }
diff --git a/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php b/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
index 680303d..1d86da0 100644
--- a/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
+++ b/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
@@ -17,7 +17,7 @@ class ContextualUnitTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('contextual');
+  public static $modules = ['contextual'];
 
   /**
    * Provides testcases for testContextualLinksToId() and
@@ -27,82 +27,82 @@ function _contextual_links_id_testcases() {
     // - one group.
     // - one dynamic path argument.
     // - no metadata.
-    $tests[] = array(
-      'links' => array(
-        'node' => array(
-          'route_parameters' => array(
+    $tests[] = [
+      'links' => [
+        'node' => [
+          'route_parameters' => [
             'node' => '14031991',
-          ),
-          'metadata' => array('langcode' => 'en'),
-        ),
-      ),
+          ],
+          'metadata' => ['langcode' => 'en'],
+        ],
+      ],
       'id' => 'node:node=14031991:langcode=en',
-    );
+    ];
 
     // Test branch conditions:
     // - one group.
     // - multiple dynamic path arguments.
     // - no metadata.
-    $tests[] = array(
-      'links' => array(
-        'foo' => array(
-          'route_parameters' => array(
+    $tests[] = [
+      'links' => [
+        'foo' => [
+          'route_parameters' => [
             'bar',
             'key' => 'baz',
             'qux',
-          ),
-          'metadata' => array('langcode' => 'en'),
-        ),
-      ),
+          ],
+          'metadata' => ['langcode' => 'en'],
+        ],
+      ],
       'id' => 'foo:0=bar&key=baz&1=qux:langcode=en',
-    );
+    ];
 
     // Test branch conditions:
     // - one group.
     // - one dynamic path argument.
     // - metadata.
-    $tests[] = array(
-      'links' => array(
-        'views_ui_edit' => array(
-          'route_parameters' => array(
+    $tests[] = [
+      'links' => [
+        'views_ui_edit' => [
+          'route_parameters' => [
             'view' => 'frontpage'
-          ),
-          'metadata' => array(
+          ],
+          'metadata' => [
             'location' => 'page',
             'display' => 'page_1',
             'langcode' => 'en',
-          ),
-        ),
-      ),
+          ],
+        ],
+      ],
       'id' => 'views_ui_edit:view=frontpage:location=page&display=page_1&langcode=en',
-    );
+    ];
 
     // Test branch conditions:
     // - multiple groups.
     // - multiple dynamic path arguments.
-    $tests[] = array(
-      'links' => array(
-        'node' => array(
-          'route_parameters' => array(
+    $tests[] = [
+      'links' => [
+        'node' => [
+          'route_parameters' => [
             'node' => '14031991',
-          ),
-          'metadata' => array('langcode' => 'en'),
-        ),
-        'foo' => array(
-          'route_parameters' => array(
+          ],
+          'metadata' => ['langcode' => 'en'],
+        ],
+        'foo' => [
+          'route_parameters' => [
             'bar',
             'key' => 'baz',
             'qux',
-          ),
-          'metadata' => array('langcode' => 'en'),
-        ),
-        'edge' => array(
-          'route_parameters' => array('20011988'),
-          'metadata' => array('langcode' => 'en'),
-        ),
-      ),
+          ],
+          'metadata' => ['langcode' => 'en'],
+        ],
+        'edge' => [
+          'route_parameters' => ['20011988'],
+          'metadata' => ['langcode' => 'en'],
+        ],
+      ],
       'id' => 'node:node=14031991:langcode=en|foo:0=bar&key=baz&1=qux:langcode=en|edge:0=20011988:langcode=en',
-    );
+    ];
 
     return $tests;
   }
diff --git a/core/modules/datetime/datetime.module b/core/modules/datetime/datetime.module
index 1078541..bb10d13 100644
--- a/core/modules/datetime/datetime.module
+++ b/core/modules/datetime/datetime.module
@@ -30,13 +30,13 @@ function datetime_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.datetime':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Datetime module provides a Date field that stores dates and times. It also provides the Form API elements <em>datetime</em> and <em>datelist</em> for use in programming modules. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI module help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":datetime_do">online documentation for the Datetime module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':datetime_do' => 'https://www.drupal.org/documentation/modules/datetime')) . '</p>';
+      $output .= '<p>' . t('The Datetime module provides a Date field that stores dates and times. It also provides the Form API elements <em>datetime</em> and <em>datelist</em> for use in programming modules. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI module help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":datetime_do">online documentation for the Datetime module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':datetime_do' => 'https://www.drupal.org/documentation/modules/datetime']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying date fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the Date field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the Date field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Displaying dates') . '</dt>';
-      $output .= '<dd>' . t('Dates can be displayed using the <em>Plain</em> or the <em>Default</em> formatter. The <em>Plain</em> formatter displays the date in the <a href="http://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a> format. If you choose the <em>Default</em> formatter, you can choose a format from a predefined list that can be managed on the <a href=":date_format_list">Date and time formats</a> page.', array(':date_format_list' => \Drupal::url('entity.date_format.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Dates can be displayed using the <em>Plain</em> or the <em>Default</em> formatter. The <em>Plain</em> formatter displays the date in the <a href="http://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a> format. If you choose the <em>Default</em> formatter, you can choose a format from a predefined list that can be managed on the <a href=":date_format_list">Date and time formats</a> page.', [':date_format_list' => \Drupal::url('entity.date_format.collection')]) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeCustomFormatter.php b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeCustomFormatter.php
index fe5fa75..984423d 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeCustomFormatter.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeCustomFormatter.php
@@ -23,9 +23,9 @@ class DateTimeCustomFormatter extends DateTimeFormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'date_format' => DATETIME_DATETIME_STORAGE_FORMAT,
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -35,7 +35,7 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
     // @todo Evaluate removing this method in
     // https://www.drupal.org/node/2793143 to determine if the behavior and
     // markup in the base class implementation can be used instead.
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       if (!empty($item->date)) {
@@ -64,12 +64,12 @@ protected function formatDate($date) {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $form = parent::settingsForm($form, $form_state);
 
-    $form['date_format'] = array(
+    $form['date_format'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Date/time format'),
       '#description' => $this->t('See <a href="http://php.net/manual/function.date.php" target="_blank">the documentation for PHP date formats</a>.'),
       '#default_value' => $this->getSetting('date_format'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeDefaultFormatter.php b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeDefaultFormatter.php
index 8f703fb..0b75b4e 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeDefaultFormatter.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeDefaultFormatter.php
@@ -22,9 +22,9 @@ class DateTimeDefaultFormatter extends DateTimeFormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'format_type' => 'medium',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -50,13 +50,13 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
       $options[$type] = $type_info->label() . ' (' . $format . ')';
     }
 
-    $form['format_type'] = array(
+    $form['format_type'] = [
       '#type' => 'select',
       '#title' => t('Date format'),
       '#description' => t("Choose a format for displaying the date. Be sure to set a format appropriate for the field, i.e. omitting time for a field that only has a date."),
       '#options' => $options,
       '#default_value' => $this->getSetting('format_type'),
-    );
+    ];
 
     return $form;
   }
@@ -68,7 +68,7 @@ public function settingsSummary() {
     $summary = parent::settingsSummary();
 
     $date = new DrupalDateTime();
-    $summary[] = t('Format: @display', array('@display' => $this->formatDate($date, $this->getFormatSettings())));
+    $summary[] = t('Format: @display', ['@display' => $this->formatDate($date, $this->getFormatSettings())]);
 
     return $summary;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeFormatterBase.php b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeFormatterBase.php
index 22e5aa8..71b9467 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeFormatterBase.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeFormatterBase.php
@@ -83,9 +83,9 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'timezone_override' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -94,13 +94,13 @@ public static function defaultSettings() {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $form = parent::settingsForm($form, $form_state);
 
-    $form['timezone_override'] = array(
+    $form['timezone_override'] = [
       '#type' => 'select',
       '#title' => $this->t('Time zone override'),
       '#description' => $this->t('The time zone selected here will always be used'),
       '#options' => system_time_zones(TRUE),
       '#default_value' => $this->getSetting('timezone_override'),
-    );
+    ];
 
     return $form;
   }
@@ -112,7 +112,7 @@ public function settingsSummary() {
     $summary = parent::settingsSummary();
 
     if ($override = $this->getSetting('timezone_override')) {
-      $summary[] = $this->t('Time zone: @timezone', array('@timezone' => $override));
+      $summary[] = $this->t('Time zone: @timezone', ['@timezone' => $override]);
     }
 
     return $summary;
@@ -122,7 +122,7 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       if ($item->date) {
diff --git a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimePlainFormatter.php b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimePlainFormatter.php
index 5bb6766..7f0dee2 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimePlainFormatter.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimePlainFormatter.php
@@ -22,7 +22,7 @@ class DateTimePlainFormatter extends DateTimeFormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       if (!empty($item->date)) {
diff --git a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeTimeAgoFormatter.php b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeTimeAgoFormatter.php
index 859ea5d..3fc3157 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeTimeAgoFormatter.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldFormatter/DateTimeTimeAgoFormatter.php
@@ -74,11 +74,11 @@ public function __construct($plugin_id, $plugin_definition, FieldDefinitionInter
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    $settings = array(
+    $settings = [
       'future_format' => '@interval hence',
       'past_format' => '@interval ago',
       'granularity' => 2,
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
 
     return $settings;
   }
@@ -104,7 +104,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       $date = $item->date;
@@ -128,26 +128,26 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $form = parent::settingsForm($form, $form_state);
 
-    $form['future_format'] = array(
+    $form['future_format'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Future format'),
       '#default_value' => $this->getSetting('future_format'),
       '#description' => $this->t('Use <em>@interval</em> where you want the formatted interval text to appear.'),
-    );
+    ];
 
-    $form['past_format'] = array(
+    $form['past_format'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Past format'),
       '#default_value' => $this->getSetting('past_format'),
       '#description' => $this->t('Use <em>@interval</em> where you want the formatted interval text to appear.'),
-    );
+    ];
 
-    $form['granularity'] = array(
+    $form['granularity'] = [
       '#type' => 'number',
       '#title' => $this->t('Granularity'),
       '#default_value' => $this->getSetting('granularity'),
       '#description' => $this->t('How many time units should be shown in the formatted output.'),
-    );
+    ];
 
     return $form;
   }
@@ -160,8 +160,8 @@ public function settingsSummary() {
 
     $future_date = new DrupalDateTime('1 year 1 month 1 week 1 day 1 hour 1 minute');
     $past_date = new DrupalDateTime('-1 year -1 month -1 week -1 day -1 hour -1 minute');
-    $summary[] = t('Future date: %display', array('%display' => $this->formatDate($future_date)));
-    $summary[] = t('Past date: %display', array('%display' => $this->formatDate($past_date)));
+    $summary[] = t('Future date: %display', ['%display' => $this->formatDate($future_date)]);
+    $summary[] = t('Past date: %display', ['%display' => $this->formatDate($past_date)]);
 
     return $summary;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeFieldItemList.php b/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeFieldItemList.php
index d246011..45a781b 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeFieldItemList.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeFieldItemList.php
@@ -30,31 +30,31 @@ public function defaultValuesForm(array &$form, FormStateInterface $form_state)
     if (empty($this->getFieldDefinition()->getDefaultValueCallback())) {
       $default_value = $this->getFieldDefinition()->getDefaultValueLiteral();
 
-      $element = array(
-        '#parents' => array('default_value_input'),
-        'default_date_type' => array(
+      $element = [
+        '#parents' => ['default_value_input'],
+        'default_date_type' => [
           '#type' => 'select',
           '#title' => t('Default date'),
           '#description' => t('Set a default value for this date.'),
           '#default_value' => isset($default_value[0]['default_date_type']) ? $default_value[0]['default_date_type'] : '',
-          '#options' => array(
+          '#options' => [
             static::DEFAULT_VALUE_NOW => t('Current date'),
             static::DEFAULT_VALUE_CUSTOM => t('Relative date'),
-          ),
+          ],
           '#empty_value' => '',
-        ),
-        'default_date' => array(
+        ],
+        'default_date' => [
           '#type' => 'textfield',
           '#title' => t('Relative default value'),
           '#description' => t("Describe a time by reference to the current day, like '+90 days' (90 days from the day the field is created) or '+1 Saturday' (the next Saturday). See <a href=\"http://php.net/manual/function.strtotime.php\">strtotime</a> for more details."),
           '#default_value' => (isset($default_value[0]['default_date_type']) && $default_value[0]['default_date_type'] == static::DEFAULT_VALUE_CUSTOM) ? $default_value[0]['default_date'] : '',
-          '#states' => array(
-            'visible' => array(
-              ':input[id="edit-default-value-input-default-date-type"]' => array('value' => static::DEFAULT_VALUE_CUSTOM),
-            )
-          )
-        )
-      );
+          '#states' => [
+            'visible' => [
+              ':input[id="edit-default-value-input-default-date-type"]' => ['value' => static::DEFAULT_VALUE_CUSTOM],
+            ]
+          ]
+        ]
+      ];
 
       return $element;
     }
@@ -65,7 +65,7 @@ public function defaultValuesForm(array &$form, FormStateInterface $form_state)
    */
   public function defaultValuesFormValidate(array $element, array &$form, FormStateInterface $form_state) {
     if ($form_state->getValue(['default_value_input', 'default_date_type']) == static::DEFAULT_VALUE_CUSTOM) {
-      $is_strtotime = @strtotime($form_state->getValue(array('default_value_input', 'default_date')));
+      $is_strtotime = @strtotime($form_state->getValue(['default_value_input', 'default_date']));
       if (!$is_strtotime) {
         $form_state->setErrorByName('default_value_input][default_date', t('The relative date value entered is invalid.'));
       }
@@ -76,13 +76,13 @@ public function defaultValuesFormValidate(array $element, array &$form, FormStat
    * {@inheritdoc}
    */
   public function defaultValuesFormSubmit(array $element, array &$form, FormStateInterface $form_state) {
-    if ($form_state->getValue(array('default_value_input', 'default_date_type'))) {
-      if ($form_state->getValue(array('default_value_input', 'default_date_type')) == static::DEFAULT_VALUE_NOW) {
+    if ($form_state->getValue(['default_value_input', 'default_date_type'])) {
+      if ($form_state->getValue(['default_value_input', 'default_date_type']) == static::DEFAULT_VALUE_NOW) {
         $form_state->setValueForElement($element['default_date'], static::DEFAULT_VALUE_NOW);
       }
-      return array($form_state->getValue('default_value_input'));
+      return [$form_state->getValue('default_value_input')];
     }
-    return array();
+    return [];
   }
 
   /**
@@ -108,12 +108,12 @@ public static function processDefaultValue($default_value, FieldableEntityInterf
       // We only provide a default value for the first item, as do all fields.
       // Otherwise, there is no way to clear out unwanted values on multiple value
       // fields.
-      $default_value = array(
-        array(
+      $default_value = [
+        [
           'value' => $value,
           'date' => $date,
-        )
-      );
+        ]
+      ];
     }
     return $default_value;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeItem.php b/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeItem.php
index f07d564..f5c06e6 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeItem.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldType/DateTimeItem.php
@@ -26,9 +26,9 @@ class DateTimeItem extends FieldItemBase {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'datetime_type' => 'datetime',
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
@@ -63,37 +63,37 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'description' => 'The date value.',
           'type' => 'varchar',
           'length' => 20,
-        ),
-      ),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $element = array();
+    $element = [];
 
-    $element['datetime_type'] = array(
+    $element['datetime_type'] = [
       '#type' => 'select',
       '#title' => t('Date type'),
       '#description' => t('Choose the type of date to create.'),
       '#default_value' => $this->getSetting('datetime_type'),
-      '#options' => array(
+      '#options' => [
         static::DATETIME_TYPE_DATETIME => t('Date and time'),
         static::DATETIME_TYPE_DATE => t('Date only'),
-      ),
+      ],
       '#disabled' => $has_data,
-    );
+    ];
 
     return $element;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDatelistWidget.php b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDatelistWidget.php
index 06ced05..d130976 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDatelistWidget.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDatelistWidget.php
@@ -22,11 +22,11 @@ class DateTimeDatelistWidget extends DateTimeWidgetBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'increment' => '15',
       'date_order' => 'YMD',
       'time_type' => '24',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -52,35 +52,35 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     // Set up the date part order array.
     switch ($date_order) {
       case 'YMD':
-        $date_part_order = array('year', 'month', 'day');
+        $date_part_order = ['year', 'month', 'day'];
         break;
 
       case 'MDY':
-        $date_part_order = array('month', 'day', 'year');
+        $date_part_order = ['month', 'day', 'year'];
         break;
 
       case 'DMY':
-        $date_part_order = array('day', 'month', 'year');
+        $date_part_order = ['day', 'month', 'year'];
         break;
     }
     switch ($time_type) {
       case '24':
-        $date_part_order = array_merge($date_part_order, array('hour', 'minute'));
+        $date_part_order = array_merge($date_part_order, ['hour', 'minute']);
         break;
 
       case '12':
-        $date_part_order = array_merge($date_part_order, array('hour', 'minute', 'ampm'));
+        $date_part_order = array_merge($date_part_order, ['hour', 'minute', 'ampm']);
         break;
 
       case 'none':
         break;
     }
 
-    $element['value'] = array(
+    $element['value'] = [
       '#type' => 'datelist',
       '#date_increment' => $increment,
       '#date_part_order' => $date_part_order,
-    ) + $element['value'];
+    ] + $element['value'];
 
     return $element;
   }
@@ -91,20 +91,20 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
   function settingsForm(array $form, FormStateInterface $form_state) {
     $element = parent::settingsForm($form, $form_state);
 
-    $element['date_order'] = array(
+    $element['date_order'] = [
       '#type' => 'select',
       '#title' => t('Date part order'),
       '#default_value' => $this->getSetting('date_order'),
-      '#options' => array('MDY' => t('Month/Day/Year'), 'DMY' => t('Day/Month/Year'), 'YMD' => t('Year/Month/Day')),
-    );
+      '#options' => ['MDY' => t('Month/Day/Year'), 'DMY' => t('Day/Month/Year'), 'YMD' => t('Year/Month/Day')],
+    ];
 
     if ($this->getFieldSetting('datetime_type') == 'datetime') {
-      $element['time_type'] = array(
+      $element['time_type'] = [
         '#type' => 'select',
         '#title' => t('Time type'),
         '#default_value' => $this->getSetting('time_type'),
-        '#options' => array('24' => t('24 hour time'), '12' => t('12 hour time')),
-      );
+        '#options' => ['24' => t('24 hour time'), '12' => t('12 hour time')],
+      ];
 
       $element['increment'] = [
         '#type' => 'select',
@@ -120,10 +120,10 @@ function settingsForm(array $form, FormStateInterface $form_state) {
       ];
     }
     else {
-      $element['time_type'] = array(
+      $element['time_type'] = [
         '#type' => 'hidden',
         '#value' => 'none',
-      );
+      ];
 
       $element['increment'] = [
         '#type' => 'hidden',
@@ -138,12 +138,12 @@ function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
-    $summary[] = t('Date part order: @order', array('@order' => $this->getSetting('date_order')));
+    $summary[] = t('Date part order: @order', ['@order' => $this->getSetting('date_order')]);
     if ($this->getFieldSetting('datetime_type') == 'datetime') {
-      $summary[] = t('Time type: @time_type', array('@time_type' => $this->getSetting('time_type')));
-      $summary[] = t('Time increments: @increment', array('@increment' => $this->getSetting('increment')));
+      $summary[] = t('Time type: @time_type', ['@time_type' => $this->getSetting('time_type')]);
+      $summary[] = t('Time increments: @increment', ['@increment' => $this->getSetting('increment')]);
     }
 
     return $summary;
diff --git a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDefaultWidget.php b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDefaultWidget.php
index 6d03ffd..2a4ffcd 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDefaultWidget.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeDefaultWidget.php
@@ -86,14 +86,14 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
         break;
     }
 
-    $element['value'] += array(
+    $element['value'] += [
       '#date_date_format' => $date_format,
       '#date_date_element' => $date_type,
-      '#date_date_callbacks' => array(),
+      '#date_date_callbacks' => [],
       '#date_time_format' => $time_format,
       '#date_time_element' => $time_type,
-      '#date_time_callbacks' => array(),
-    );
+      '#date_time_callbacks' => [],
+    ];
 
     return $element;
   }
diff --git a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeWidgetBase.php b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeWidgetBase.php
index b363eed..f965e21 100644
--- a/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeWidgetBase.php
+++ b/core/modules/datetime/src/Plugin/Field/FieldWidget/DateTimeWidgetBase.php
@@ -17,13 +17,13 @@ class DateTimeWidgetBase extends WidgetBase {
    * {@inheritdoc}
    */
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
-    $element['value'] = array(
+    $element['value'] = [
       '#type' => 'datetime',
       '#default_value' => NULL,
       '#date_increment' => 1,
       '#date_timezone' => drupal_get_user_timezone(),
       '#required' => $element['#required'],
-    );
+    ];
 
     if ($this->getFieldSetting('datetime_type') == DateTimeItem::DATETIME_TYPE_DATE) {
       // A date-only field should have no timezone conversion performed, so
diff --git a/core/modules/datetime/src/Tests/DateTimeFieldTest.php b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
index 67e5183..aeed9bc 100644
--- a/core/modules/datetime/src/Tests/DateTimeFieldTest.php
+++ b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
@@ -63,13 +63,13 @@ function testDateField() {
       $date_format = DateFormat::load('html_date')->getPattern();
       $time_format = DateFormat::load('html_time')->getPattern();
 
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value][date]" => $date->format($date_format),
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
       preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
       $id = $match[1];
-      $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+      $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
       $this->assertRaw($date->format($date_format));
       $this->assertNoRaw($date->format($time_format));
 
@@ -87,15 +87,15 @@ function testDateField() {
       $this->assertEqual('2012-12-31', $entity->{$field_name}->value);
 
       // Reset display options since these get changed below.
-      $this->displayOptions = array(
+      $this->displayOptions = [
         'type' => 'datetime_default',
         'label' => 'hidden',
-        'settings' => array('format_type' => 'medium') + $this->defaultSettings,
-      );
+        'settings' => ['format_type' => 'medium'] + $this->defaultSettings,
+      ];
       // Verify that the date is output according to the formatter settings.
-      $options = array(
-        'format_type' => array('short', 'medium', 'long'),
-      );
+      $options = [
+        'format_type' => ['short', 'medium', 'long'],
+      ];
       // Formats that display a time component for date-only fields will display
       // the default time, so that is applied before calculating the expected
       // value.
@@ -103,7 +103,7 @@ function testDateField() {
       foreach ($options as $setting => $values) {
         foreach ($values as $new_value) {
           // Update the entity display settings.
-          $this->displayOptions['settings'] = array($setting => $new_value) + $this->defaultSettings;
+          $this->displayOptions['settings'] = [$setting => $new_value] + $this->defaultSettings;
           entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
             ->setComponent($field_name, $this->displayOptions)
             ->save();
@@ -116,7 +116,7 @@ function testDateField() {
               $expected = format_date($date->getTimestamp(), $new_value, '', DATETIME_STORAGE_TIMEZONE);
               $expected_iso = format_date($date->getTimestamp(), 'custom', 'Y-m-d\TH:i:s\Z', DATETIME_STORAGE_TIMEZONE);
               $this->renderTestEntity($id);
-              $this->assertFieldByXPath('//time[@datetime="' . $expected_iso . '"]', $expected, SafeMarkup::format('Formatted date field using %value format displayed as %expected with %expected_iso attribute.', array('%value' => $new_value, '%expected' => $expected, '%expected_iso' => $expected_iso)));
+              $this->assertFieldByXPath('//time[@datetime="' . $expected_iso . '"]', $expected, SafeMarkup::format('Formatted date field using %value format displayed as %expected with %expected_iso attribute.', ['%value' => $new_value, '%expected' => $expected, '%expected_iso' => $expected_iso]));
               break;
           }
         }
@@ -130,17 +130,17 @@ function testDateField() {
         ->save();
       $expected = $date->format(DATETIME_DATE_STORAGE_FORMAT);
       $this->renderTestEntity($id);
-      $this->assertText($expected, SafeMarkup::format('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, SafeMarkup::format('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
 
       // Verify that the 'datetime_custom' formatter works.
       $this->displayOptions['type'] = 'datetime_custom';
-      $this->displayOptions['settings'] = array('date_format' => 'm/d/Y') + $this->defaultSettings;
+      $this->displayOptions['settings'] = ['date_format' => 'm/d/Y'] + $this->defaultSettings;
       entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
         ->setComponent($field_name, $this->displayOptions)
         ->save();
       $expected = $date->format($this->displayOptions['settings']['date_format']);
       $this->renderTestEntity($id);
-      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', ['%expected' => $expected]));
 
       // Test that allowed markup in custom format is preserved and XSS is
       // removed.
@@ -150,7 +150,7 @@ function testDateField() {
         ->save();
       $expected = '<strong>' . $date->format('m/d/Y') . '</strong>alert(String.fromCharCode(88,83,83))';
       $this->renderTestEntity($id);
-      $this->assertRaw($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertRaw($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
       // Verify that the 'datetime_time_ago' formatter works for intervals in the
       // past.  First update the test entity so that the date difference always
@@ -165,11 +165,11 @@ function testDateField() {
       $entity->save();
 
       $this->displayOptions['type'] = 'datetime_time_ago';
-      $this->displayOptions['settings'] = array(
+      $this->displayOptions['settings'] = [
         'future_format' => '@interval in the future',
         'past_format' => '@interval in the past',
         'granularity' => 3,
-      );
+      ];
       entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
         ->setComponent($field_name, $this->displayOptions)
         ->save();
@@ -177,7 +177,7 @@ function testDateField() {
         '@interval' => $this->dateFormatter->formatTimeDiffSince($timestamp, ['granularity' => $this->displayOptions['settings']['granularity']])
       ]);
       $this->renderTestEntity($id);
-      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', ['%expected' => $expected]));
 
       // Verify that the 'datetime_time_ago' formatter works for intervals in the
       // future.  First update the test entity so that the date difference always
@@ -198,7 +198,7 @@ function testDateField() {
         '@interval' => $this->dateFormatter->formatTimeDiffUntil($timestamp, ['granularity' => $this->displayOptions['settings']['granularity']])
       ]);
       $this->renderTestEntity($id);
-      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', ['%expected' => $expected]));
     }
   }
 
@@ -230,25 +230,25 @@ function testDatetimeField() {
     $date_format = DateFormat::load('html_date')->getPattern();
     $time_format = DateFormat::load('html_time')->getPattern();
 
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date->format($date_format),
       "{$field_name}[0][value][time]" => $date->format($time_format),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
     $this->assertRaw($date->format($date_format));
     $this->assertRaw($date->format($time_format));
 
     // Verify that the date is output according to the formatter settings.
-    $options = array(
-      'format_type' => array('short', 'medium', 'long'),
-    );
+    $options = [
+      'format_type' => ['short', 'medium', 'long'],
+    ];
     foreach ($options as $setting => $values) {
       foreach ($values as $new_value) {
         // Update the entity display settings.
-        $this->displayOptions['settings'] = array($setting => $new_value) + $this->defaultSettings;
+        $this->displayOptions['settings'] = [$setting => $new_value] + $this->defaultSettings;
         entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
           ->setComponent($field_name, $this->displayOptions)
           ->save();
@@ -260,7 +260,7 @@ function testDatetimeField() {
             $expected = format_date($date->getTimestamp(), $new_value);
             $expected_iso = format_date($date->getTimestamp(), 'custom', 'Y-m-d\TH:i:s\Z', 'UTC');
             $this->renderTestEntity($id);
-            $this->assertFieldByXPath('//time[@datetime="' . $expected_iso . '"]', $expected, SafeMarkup::format('Formatted date field using %value format displayed as %expected with %expected_iso attribute.', array('%value' => $new_value, '%expected' => $expected, '%expected_iso' => $expected_iso)));
+            $this->assertFieldByXPath('//time[@datetime="' . $expected_iso . '"]', $expected, SafeMarkup::format('Formatted date field using %value format displayed as %expected with %expected_iso attribute.', ['%value' => $new_value, '%expected' => $expected, '%expected_iso' => $expected_iso]));
             break;
         }
       }
@@ -274,27 +274,27 @@ function testDatetimeField() {
       ->save();
     $expected = $date->format(DATETIME_DATETIME_STORAGE_FORMAT);
     $this->renderTestEntity($id);
-    $this->assertText($expected, SafeMarkup::format('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, SafeMarkup::format('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'datetime_custom' formatter works.
     $this->displayOptions['type'] = 'datetime_custom';
-    $this->displayOptions['settings'] = array('date_format' => 'm/d/Y g:i:s A') + $this->defaultSettings;
+    $this->displayOptions['settings'] = ['date_format' => 'm/d/Y g:i:s A'] + $this->defaultSettings;
     entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
       ->setComponent($field_name, $this->displayOptions)
       ->save();
     $expected = $date->format($this->displayOptions['settings']['date_format']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'timezone_override' setting works.
     $this->displayOptions['type'] = 'datetime_custom';
-    $this->displayOptions['settings'] = array('date_format' => 'm/d/Y g:i:s A', 'timezone_override' => 'America/New_York') + $this->defaultSettings;
+    $this->displayOptions['settings'] = ['date_format' => 'm/d/Y g:i:s A', 'timezone_override' => 'America/New_York'] + $this->defaultSettings;
     entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
       ->setComponent($field_name, $this->displayOptions)
       ->save();
-    $expected = $date->format($this->displayOptions['settings']['date_format'], array('timezone' => 'America/New_York'));
+    $expected = $date->format($this->displayOptions['settings']['date_format'], ['timezone' => 'America/New_York']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'datetime_time_ago' formatter works for intervals in the
     // past.  First update the test entity so that the date difference always
@@ -309,11 +309,11 @@ function testDatetimeField() {
     $entity->save();
 
     $this->displayOptions['type'] = 'datetime_time_ago';
-    $this->displayOptions['settings'] = array(
+    $this->displayOptions['settings'] = [
       'future_format' => '@interval from now',
       'past_format' => '@interval earlier',
       'granularity' => 3,
-    );
+    ];
     entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
       ->setComponent($field_name, $this->displayOptions)
       ->save();
@@ -321,7 +321,7 @@ function testDatetimeField() {
       '@interval' => $this->dateFormatter->formatTimeDiffSince($timestamp, ['granularity' => $this->displayOptions['settings']['granularity']])
     ]);
     $this->renderTestEntity($id);
-    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'datetime_time_ago' formatter works for intervals in the
     // future.  First update the test entity so that the date difference always
@@ -342,7 +342,7 @@ function testDatetimeField() {
       '@interval' => $this->dateFormatter->formatTimeDiffUntil($timestamp, ['granularity' => $this->displayOptions['settings']['granularity']])
     ]);
     $this->renderTestEntity($id);
-    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, SafeMarkup::format('Formatted date field using datetime_time_ago format displayed as %expected.', ['%expected' => $expected]));
   }
 
   /**
@@ -357,12 +357,12 @@ function testDatelistWidget() {
 
     // Change the widget to a datelist widget.
     entity_get_form_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'datetime_datelist',
-        'settings' => array(
+        'settings' => [
           'date_order' => 'YMD',
-        ),
-      ))
+        ],
+      ])
       ->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
 
@@ -381,7 +381,7 @@ function testDatelistWidget() {
     $this->drupalGet($fieldEditUrl);
 
     // Click on the widget settings button to open the widget settings form.
-    $this->drupalPostAjaxForm(NULL, array(), $field_name . "_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], $field_name . "_settings_edit");
     $xpathIncr = "//select[starts-with(@id, \"edit-fields-$field_name-settings-edit-form-settings-increment\")]";
     $this->assertNoFieldByXPath($xpathIncr, NULL, 'Increment element not found for Date Only.');
 
@@ -391,14 +391,14 @@ function testDatelistWidget() {
 
     // Change the widget to a datelist widget.
     entity_get_form_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'datetime_datelist',
-        'settings' => array(
+        'settings' => [
           'increment' => 1,
           'date_order' => 'YMD',
           'time_type' => '12',
-        ),
-      ))
+        ],
+      ])
       ->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
 
@@ -407,7 +407,7 @@ function testDatelistWidget() {
     $this->drupalGet($fieldEditUrl);
 
     // Click on the widget settings button to open the widget settings form.
-    $this->drupalPostAjaxForm(NULL, array(), $field_name . "_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], $field_name . "_settings_edit");
     $this->assertFieldByXPath($xpathIncr, NULL, 'Increment element found for Date and time.');
 
     // Display creation form.
@@ -434,9 +434,9 @@ function testDatelistWidget() {
     $this->assertOptionByText("edit-$field_name-0-value-ampm", t('AM/PM'));
 
     // Submit a valid date and ensure it is accepted.
-    $date_value = array('year' => 2012, 'month' => 12, 'day' => 31, 'hour' => 5, 'minute' => 15);
+    $date_value = ['year' => 2012, 'month' => 12, 'day' => 31, 'hour' => 5, 'minute' => 15];
 
-    $edit = array();
+    $edit = [];
     // Add the ampm indicator since we are testing 12 hour time.
     $date_value['ampm'] = 'am';
     foreach ($date_value as $part => $value) {
@@ -446,7 +446,7 @@ function testDatelistWidget() {
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     $this->assertOptionSelected("edit-$field_name-0-value-year", '2012', 'Correct year selected.');
     $this->assertOptionSelected("edit-$field_name-0-value-month", '12', 'Correct month selected.');
@@ -457,14 +457,14 @@ function testDatelistWidget() {
 
     // Test the widget using increment other than 1 and 24 hour mode.
     entity_get_form_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'datetime_datelist',
-        'settings' => array(
+        'settings' => [
           'increment' => 15,
           'date_order' => 'YMD',
           'time_type' => '24',
-        ),
-      ))
+        ],
+      ])
       ->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
 
@@ -477,9 +477,9 @@ function testDatelistWidget() {
     $this->assertNoFieldByXPath("//*[@id=\"edit-$field_name-0-value-ampm\"]", NULL, 'AMPM element not found.');
 
     // Submit a valid date and ensure it is accepted.
-    $date_value = array('year' => 2012, 'month' => 12, 'day' => 31, 'hour' => 17, 'minute' => 15);
+    $date_value = ['year' => 2012, 'month' => 12, 'day' => 31, 'hour' => 17, 'minute' => 15];
 
-    $edit = array();
+    $edit = [];
     foreach ($date_value as $part => $value) {
       $edit["{$field_name}[0][value][$part]"] = $value;
     }
@@ -487,7 +487,7 @@ function testDatelistWidget() {
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     $this->assertOptionSelected("edit-$field_name-0-value-year", '2012', 'Correct year selected.');
     $this->assertOptionSelected("edit-$field_name-0-value-month", '12', 'Correct month selected.');
@@ -497,14 +497,14 @@ function testDatelistWidget() {
 
     // Test the widget for partial completion of fields.
     entity_get_form_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'datetime_datelist',
-        'settings' => array(
+        'settings' => [
           'increment' => 1,
           'date_order' => 'YMD',
           'time_type' => '24',
-        ),
-      ))
+        ],
+      ])
       ->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
 
@@ -516,7 +516,7 @@ function testDatelistWidget() {
       $this->drupalGet('entity_test/add');
 
       // Submit a partial date and ensure and error message is provided.
-      $edit = array();
+      $edit = [];
       foreach ($date_value as $part => $value) {
         $edit["{$field_name}[0][value][$part]"] = $value;
       }
@@ -531,8 +531,8 @@ function testDatelistWidget() {
     // Test the widget for complete input with zeros as part of selections.
     $this->drupalGet('entity_test/add');
 
-    $date_value = array('year' => 2012, 'month' => '12', 'day' => '31', 'hour' => '0', 'minute' => '0');
-    $edit = array();
+    $date_value = ['year' => 2012, 'month' => '12', 'day' => '31', 'hour' => '0', 'minute' => '0'];
+    $edit = [];
     foreach ($date_value as $part => $value) {
       $edit["{$field_name}[0][value][$part]"] = $value;
     }
@@ -541,13 +541,13 @@ function testDatelistWidget() {
     $this->assertResponse(200);
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     // Test the widget to ensure zeros are not deselected on validation.
     $this->drupalGet('entity_test/add');
 
-    $date_value = array('year' => 2012, 'month' => '12', 'day' => '31', 'hour' => '', 'minute' => '0');
-    $edit = array();
+    $date_value = ['year' => 2012, 'month' => '12', 'day' => '31', 'hour' => '', 'minute' => '0'];
+    $edit = [];
     foreach ($date_value as $part => $value) {
       $edit["{$field_name}[0][value][$part]"] = $value;
     }
@@ -595,16 +595,16 @@ protected function datelistDataProvider() {
    */
   function testDefaultValue() {
     // Create a test content type.
-    $this->drupalCreateContentType(array('type' => 'date_content'));
+    $this->drupalCreateContentType(['type' => 'date_content']);
 
     // Create a field storage with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'datetime',
-      'settings' => array('datetime_type' => 'date'),
-    ));
+      'settings' => ['datetime_type' => 'date'],
+    ]);
     $field_storage->save();
 
     $field = FieldConfig::create([
@@ -620,9 +620,9 @@ function testDefaultValue() {
       $this->setSiteTimezone($timezone);
 
       // Set now as default_value.
-      $field_edit = array(
+      $field_edit = [
         'default_value_input[default_date_type]' => 'now',
-      );
+      ];
       $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_name, $field_edit, t('Save settings'));
 
       // Check that default value is selected in default value form.
@@ -633,10 +633,10 @@ function testDefaultValue() {
       // Check if default_date has been stored successfully.
       $config_entity = $this->config('field.field.node.date_content.' . $field_name)
         ->get();
-      $this->assertEqual($config_entity['default_value'][0], array(
+      $this->assertEqual($config_entity['default_value'][0], [
         'default_date_type' => 'now',
         'default_date' => 'now',
-      ), 'Default value has been stored successfully');
+      ], 'Default value has been stored successfully');
 
       // Clear field cache in order to avoid stale cache values.
       \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -648,19 +648,19 @@ function testDefaultValue() {
         ->offsetGet(0)->value, $expected_date->format(DATETIME_DATE_STORAGE_FORMAT));
 
       // Set an invalid relative default_value to test validation.
-      $field_edit = array(
+      $field_edit = [
         'default_value_input[default_date_type]' => 'relative',
         'default_value_input[default_date]' => 'invalid date',
-      );
+      ];
       $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_name, $field_edit, t('Save settings'));
 
       $this->assertText('The relative date value entered is invalid.');
 
       // Set a relative default_value.
-      $field_edit = array(
+      $field_edit = [
         'default_value_input[default_date_type]' => 'relative',
         'default_value_input[default_date]' => '+90 days',
-      );
+      ];
       $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_name, $field_edit, t('Save settings'));
 
       // Check that default value is selected in default value form.
@@ -671,10 +671,10 @@ function testDefaultValue() {
       // Check if default_date has been stored successfully.
       $config_entity = $this->config('field.field.node.date_content.' . $field_name)
         ->get();
-      $this->assertEqual($config_entity['default_value'][0], array(
+      $this->assertEqual($config_entity['default_value'][0], [
         'default_date_type' => 'relative',
         'default_date' => '+90 days',
-      ), 'Default value has been stored successfully');
+      ], 'Default value has been stored successfully');
 
       // Clear field cache in order to avoid stale cache values.
       \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -687,9 +687,9 @@ function testDefaultValue() {
         ->offsetGet(0)->value, $expected_date->format(DATETIME_DATE_STORAGE_FORMAT));
 
       // Remove default value.
-      $field_edit = array(
+      $field_edit = [
         'default_value_input[default_date_type]' => '',
-      );
+      ];
       $this->drupalPostForm('admin/structure/types/manage/date_content/fields/node.date_content.' . $field_name, $field_edit, t('Save settings'));
 
       // Check that default value is selected in default value form.
@@ -728,72 +728,72 @@ function testInvalidField() {
 
     // Submit invalid dates and ensure they is not accepted.
     $date_value = '';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => '12:00:00',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText('date is invalid', 'Empty date value has been caught.');
 
     $date_value = 'aaaa-12-01';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => '00:00:00',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid year value %date has been caught.', array('%date' => $date_value)));
+    $this->assertText('date is invalid', format_string('Invalid year value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-75-01';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => '00:00:00',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid month value %date has been caught.', array('%date' => $date_value)));
+    $this->assertText('date is invalid', format_string('Invalid month value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-12-99';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => '00:00:00',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid day value %date has been caught.', array('%date' => $date_value)));
+    $this->assertText('date is invalid', format_string('Invalid day value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-12-01';
     $time_value = '';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => $time_value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText('date is invalid', 'Empty time value has been caught.');
 
     $date_value = '2012-12-01';
     $time_value = '49:00:00';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => $time_value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid hour value %time has been caught.', array('%time' => $time_value)));
+    $this->assertText('date is invalid', format_string('Invalid hour value %time has been caught.', ['%time' => $time_value]));
 
     $date_value = '2012-12-01';
     $time_value = '12:99:00';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => $time_value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid minute value %time has been caught.', array('%time' => $time_value)));
+    $this->assertText('date is invalid', format_string('Invalid minute value %time has been caught.', ['%time' => $time_value]));
 
     $date_value = '2012-12-01';
     $time_value = '12:15:99';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $date_value,
       "{$field_name}[0][value][time]" => $time_value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid second value %time has been caught.', array('%time' => $time_value)));
+    $this->assertText('date is invalid', format_string('Invalid second value %time has been caught.', ['%time' => $time_value]));
   }
 
   /**
diff --git a/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php b/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
index 424cbd9..e28667f 100644
--- a/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
+++ b/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
@@ -36,25 +36,25 @@ class DateTimeItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('datetime');
+  public static $modules = ['datetime'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a field with settings to validate.
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => 'field_datetime',
       'type' => 'datetime',
       'entity_type' => 'entity_test',
-      'settings' => array('datetime_type' => DateTimeItem::DATETIME_TYPE_DATETIME),
-    ));
+      'settings' => ['datetime_type' => DateTimeItem::DATETIME_TYPE_DATETIME],
+    ]);
     $this->fieldStorage->save();
     $this->field = FieldConfig::create([
       'field_storage' => $this->fieldStorage,
       'bundle' => 'entity_test',
-      'settings' => array(
+      'settings' => [
         'default_value' => 'blank',
-      ),
+      ],
     ]);
     $this->field->save();
   }
diff --git a/core/modules/datetime_range/datetime_range.module b/core/modules/datetime_range/datetime_range.module
index ceeb99d..b2b87da 100644
--- a/core/modules/datetime_range/datetime_range.module
+++ b/core/modules/datetime_range/datetime_range.module
@@ -15,13 +15,13 @@ function datetime_range_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.datetime_range':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Datetime Range module provides a Date field that stores start dates and times, as well as end dates and times. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI module help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":datetime_do">online documentation for the Datetime Range module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':datetime_do' => 'https://www.drupal.org/documentation/modules/datetime_range')) . '</p>';
+      $output .= '<p>' . t('The Datetime Range module provides a Date field that stores start dates and times, as well as end dates and times. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI module help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":datetime_do">online documentation for the Datetime Range module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':datetime_do' => 'https://www.drupal.org/documentation/modules/datetime_range']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying date fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the Date field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the Date field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Displaying dates') . '</dt>';
-      $output .= '<dd>' . t('Dates can be displayed using the <em>Plain</em> or the <em>Default</em> formatter. The <em>Plain</em> formatter displays the date in the <a href="http://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a> format. If you choose the <em>Default</em> formatter, you can choose a format from a predefined list that can be managed on the <a href=":date_format_list">Date and time formats</a> page.', array(':date_format_list' => \Drupal::url('entity.date_format.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Dates can be displayed using the <em>Plain</em> or the <em>Default</em> formatter. The <em>Plain</em> formatter displays the date in the <a href="http://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a> format. If you choose the <em>Default</em> formatter, you can choose a format from a predefined list that can be managed on the <a href=":date_format_list">Date and time formats</a> page.', [':date_format_list' => \Drupal::url('entity.date_format.collection')]) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
diff --git a/core/modules/datetime_range/src/Tests/DateRangeFieldTest.php b/core/modules/datetime_range/src/Tests/DateRangeFieldTest.php
index b2d259a..f553315 100644
--- a/core/modules/datetime_range/src/Tests/DateRangeFieldTest.php
+++ b/core/modules/datetime_range/src/Tests/DateRangeFieldTest.php
@@ -78,14 +78,14 @@ public function testDateRangeField() {
       $date_format = DateFormat::load('html_date')->getPattern();
       $time_format = DateFormat::load('html_time')->getPattern();
 
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value][date]" => $start_date->format($date_format),
         "{$field_name}[0][end_value][date]" => $end_date->format($date_format),
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
       preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
       $id = $match[1];
-      $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+      $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
       $this->assertRaw($start_date->format($date_format));
       $this->assertNoRaw($start_date->format($time_format));
       $this->assertRaw($end_date->format($date_format));
@@ -156,17 +156,17 @@ public function testDateRangeField() {
         ->save();
       $expected = $start_date->format(DATETIME_DATE_STORAGE_FORMAT) . ' - ' . $end_date->format(DATETIME_DATE_STORAGE_FORMAT);
       $this->renderTestEntity($id);
-      $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
 
       // Verify that the custom formatter works.
       $this->displayOptions['type'] = 'daterange_custom';
-      $this->displayOptions['settings'] = array('date_format' => 'm/d/Y') + $this->defaultSettings;
+      $this->displayOptions['settings'] = ['date_format' => 'm/d/Y'] + $this->defaultSettings;
       entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
         ->setComponent($field_name, $this->displayOptions)
         ->save();
       $expected = $start_date->format($this->displayOptions['settings']['date_format']) . ' - ' . $end_date->format($this->displayOptions['settings']['date_format']);
       $this->renderTestEntity($id);
-      $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
       // Test that allowed markup in custom format is preserved and XSS is
       // removed.
@@ -176,7 +176,7 @@ public function testDateRangeField() {
         ->save();
       $expected = '<strong>' . $start_date->format('m/d/Y') . '</strong>alert(String.fromCharCode(88,83,83)) - <strong>' . $end_date->format('m/d/Y') . '</strong>alert(String.fromCharCode(88,83,83))';
       $this->renderTestEntity($id);
-      $this->assertRaw($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertRaw($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
       // Test formatters when start date and end date are the same
       $this->drupalGet('entity_test/add');
@@ -186,15 +186,15 @@ public function testDateRangeField() {
       $date_format = DateFormat::load('html_date')->getPattern();
       $time_format = DateFormat::load('html_time')->getPattern();
 
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value][date]" => $start_date->format($date_format),
         "{$field_name}[0][end_value][date]" => $start_date->format($date_format),
-      );
+      ];
 
       $this->drupalPostForm(NULL, $edit, t('Save'));
       preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
       $id = $match[1];
-      $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+      $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
       datetime_date_default_time($start_date);
 
@@ -233,17 +233,17 @@ public function testDateRangeField() {
         ->save();
       $expected = $start_date->format(DATETIME_DATE_STORAGE_FORMAT);
       $this->renderTestEntity($id);
-      $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
       $this->assertNoText(' THESEPARATOR ', 'Separator not found on page');
 
       $this->displayOptions['type'] = 'daterange_custom';
-      $this->displayOptions['settings'] = array('date_format' => 'm/d/Y') + $this->defaultSettings;
+      $this->displayOptions['settings'] = ['date_format' => 'm/d/Y'] + $this->defaultSettings;
       entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
         ->setComponent($field_name, $this->displayOptions)
         ->save();
       $expected = $start_date->format($this->displayOptions['settings']['date_format']);
       $this->renderTestEntity($id);
-      $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+      $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
       $this->assertNoText(' THESEPARATOR ', 'Separator not found on page');
     }
   }
@@ -282,16 +282,16 @@ public function testDatetimeRangeField() {
     $date_format = DateFormat::load('html_date')->getPattern();
     $time_format = DateFormat::load('html_time')->getPattern();
 
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $start_date->format($date_format),
       "{$field_name}[0][value][time]" => $start_date->format($time_format),
       "{$field_name}[0][end_value][date]" => $end_date->format($date_format),
       "{$field_name}[0][end_value][time]" => $end_date->format($time_format),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
     $this->assertRaw($start_date->format($date_format));
     $this->assertRaw($start_date->format($time_format));
     $this->assertRaw($end_date->format($date_format));
@@ -328,7 +328,7 @@ public function testDatetimeRangeField() {
       ->save();
     $expected = $start_date->format(DATETIME_DATETIME_STORAGE_FORMAT) . ' - ' . $end_date->format(DATETIME_DATETIME_STORAGE_FORMAT);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'datetime_custom' formatter works.
     $this->displayOptions['type'] = 'daterange_custom';
@@ -338,7 +338,7 @@ public function testDatetimeRangeField() {
       ->save();
     $expected = $start_date->format($this->displayOptions['settings']['date_format']) . ' - ' . $end_date->format($this->displayOptions['settings']['date_format']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'timezone_override' setting works.
     $this->displayOptions['type'] = 'daterange_custom';
@@ -349,7 +349,7 @@ public function testDatetimeRangeField() {
     $expected = $start_date->format($this->displayOptions['settings']['date_format'], ['timezone' => 'America/New_York']);
     $expected .= ' - ' . $end_date->format($this->displayOptions['settings']['date_format'], ['timezone' => 'America/New_York']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Test formatters when start date and end date are the same
     $this->drupalGet('entity_test/add');
@@ -360,17 +360,17 @@ public function testDatetimeRangeField() {
     $date_format = DateFormat::load('html_date')->getPattern();
     $time_format = DateFormat::load('html_time')->getPattern();
 
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $start_date->format($date_format),
       "{$field_name}[0][value][time]" => $start_date->format($time_format),
       "{$field_name}[0][end_value][date]" => $start_date->format($date_format),
       "{$field_name}[0][end_value][time]" => $start_date->format($time_format),
-    );
+    ];
 
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     $this->displayOptions = [
       'type' => 'daterange_default',
@@ -403,7 +403,7 @@ public function testDatetimeRangeField() {
       ->save();
     $expected = $start_date->format(DATETIME_DATETIME_STORAGE_FORMAT);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
     $this->assertNoText(' THESEPARATOR ', 'Separator not found on page');
 
     $this->displayOptions['type'] = 'daterange_custom';
@@ -413,7 +413,7 @@ public function testDatetimeRangeField() {
       ->save();
     $expected = $start_date->format($this->displayOptions['settings']['date_format']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
     $this->assertNoText(' THESEPARATOR ', 'Separator not found on page');
   }
 
@@ -448,14 +448,14 @@ public function testAlldayRangeField() {
     $date_format = DateFormat::load('html_date')->getPattern();
     $time_format = DateFormat::load('html_time')->getPattern();
 
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $start_date->format($date_format),
       "{$field_name}[0][end_value][date]" => $end_date->format($date_format),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
     $this->assertRaw($start_date->format($date_format));
     $this->assertNoRaw($start_date->format($time_format));
     $this->assertRaw($end_date->format($date_format));
@@ -492,17 +492,17 @@ public function testAlldayRangeField() {
       ->save();
     $expected = $start_date->format(DATETIME_DATETIME_STORAGE_FORMAT) . ' - ' . $end_date->format(DATETIME_DATETIME_STORAGE_FORMAT);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the custom formatter works.
     $this->displayOptions['type'] = 'daterange_custom';
-    $this->displayOptions['settings'] = array('date_format' => 'm/d/Y') + $this->defaultSettings;
+    $this->displayOptions['settings'] = ['date_format' => 'm/d/Y'] + $this->defaultSettings;
     entity_get_display($this->field->getTargetEntityTypeId(), $this->field->getTargetBundle(), 'full')
       ->setComponent($field_name, $this->displayOptions)
       ->save();
     $expected = $start_date->format($this->displayOptions['settings']['date_format']) . ' - ' . $end_date->format($this->displayOptions['settings']['date_format']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Verify that the 'timezone_override' setting works.
     $this->displayOptions['type'] = 'daterange_custom';
@@ -513,7 +513,7 @@ public function testAlldayRangeField() {
     $expected = $start_date->format($this->displayOptions['settings']['date_format'], ['timezone' => 'America/New_York']);
     $expected .= ' - ' . $end_date->format($this->displayOptions['settings']['date_format'], ['timezone' => 'America/New_York']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
 
     // Test formatters when start date and end date are the same
     $this->drupalGet('entity_test/add');
@@ -526,14 +526,14 @@ public function testAlldayRangeField() {
     $date_format = DateFormat::load('html_date')->getPattern();
     $time_format = DateFormat::load('html_time')->getPattern();
 
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value][date]" => $start_date->format($date_format),
       "{$field_name}[0][end_value][date]" => $start_date->format($date_format),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     $this->displayOptions = [
       'type' => 'daterange_default',
@@ -568,7 +568,7 @@ public function testAlldayRangeField() {
       ->save();
     $expected = $start_date->format(DATETIME_DATETIME_STORAGE_FORMAT) . ' THESEPARATOR ' . $end_date->format(DATETIME_DATETIME_STORAGE_FORMAT);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using plain format displayed as %expected.', ['%expected' => $expected]));
     $this->assertText(' THESEPARATOR ', 'Found proper separator');
 
     $this->displayOptions['type'] = 'daterange_custom';
@@ -578,7 +578,7 @@ public function testAlldayRangeField() {
       ->save();
     $expected = $start_date->format($this->displayOptions['settings']['date_format']) . ' THESEPARATOR ' . $end_date->format($this->displayOptions['settings']['date_format']);
     $this->renderTestEntity($id);
-    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', array('%expected' => $expected)));
+    $this->assertText($expected, new FormattableMarkup('Formatted date field using daterange_custom format displayed as %expected.', ['%expected' => $expected]));
     $this->assertText(' THESEPARATOR ', 'Found proper separator');
 
   }
diff --git a/core/modules/dblog/dblog.admin.inc b/core/modules/dblog/dblog.admin.inc
index 2b08878..1af89a6 100644
--- a/core/modules/dblog/dblog.admin.inc
+++ b/core/modules/dblog/dblog.admin.inc
@@ -19,25 +19,25 @@
  *   - options: Array of options for the select list for the filter.
  */
 function dblog_filters() {
-  $filters = array();
+  $filters = [];
 
   foreach (_dblog_get_message_types() as $type) {
     $types[$type] = t($type);
   }
 
   if (!empty($types)) {
-    $filters['type'] = array(
+    $filters['type'] = [
       'title' => t('Type'),
       'where' => "w.type = ?",
       'options' => $types,
-    );
+    ];
   }
 
-  $filters['severity'] = array(
+  $filters['severity'] = [
     'title' => t('Severity'),
     'where' => 'w.severity = ?',
     'options' => RfcLogLevel::getLevels(),
-  );
+  ];
 
   return $filters;
 }
diff --git a/core/modules/dblog/dblog.install b/core/modules/dblog/dblog.install
index 08270d2..f226ed0 100644
--- a/core/modules/dblog/dblog.install
+++ b/core/modules/dblog/dblog.install
@@ -9,84 +9,84 @@
  * Implements hook_schema().
  */
 function dblog_schema() {
-  $schema['watchdog'] = array(
+  $schema['watchdog'] = [
     'description' => 'Table that contains logs of all system events.',
-    'fields' => array(
-      'wid' => array(
+    'fields' => [
+      'wid' => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Primary Key: Unique watchdog event ID.',
-      ),
-      'uid' => array(
+      ],
+      'uid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {users}.uid of the user who triggered the event.',
-      ),
-      'type' => array(
+      ],
+      'type' => [
         'type' => 'varchar_ascii',
         'length' => 64,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Type of log message, for example "user" or "page not found."',
-      ),
-      'message' => array(
+      ],
+      'message' => [
         'type' => 'text',
         'not null' => TRUE,
         'size' => 'big',
         'description' => 'Text of log message to be passed into the t() function.',
-      ),
-      'variables' => array(
+      ],
+      'variables' => [
         'type' => 'blob',
         'not null' => TRUE,
         'size' => 'big',
         'description' => 'Serialized array of variables that match the message string and that is passed into the t() function.',
-      ),
-      'severity' => array(
+      ],
+      'severity' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'tiny',
         'description' => 'The severity level of the event; ranges from 0 (Emergency) to 7 (Debug)',
-      ),
-      'link' => array(
+      ],
+      'link' => [
         'type' => 'text',
         'not null' => FALSE,
         'description' => 'Link to view the result of the event.',
-      ),
-      'location'  => array(
+      ],
+      'location'  => [
         'type' => 'text',
         'not null' => TRUE,
         'description' => 'URL of the origin of the event.',
-      ),
-      'referer' => array(
+      ],
+      'referer' => [
         'type' => 'text',
         'not null' => FALSE,
         'description' => 'URL of referring page.',
-      ),
-      'hostname' => array(
+      ],
+      'hostname' => [
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Hostname of the user who triggered the event.',
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Unix timestamp of when event occurred.',
-      ),
-    ),
-    'primary key' => array('wid'),
-    'indexes' => array(
-      'type' => array('type'),
-      'uid' => array('uid'),
-      'severity' => array('severity'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['wid'],
+    'indexes' => [
+      'type' => ['type'],
+      'uid' => ['uid'],
+      'severity' => ['severity'],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/dblog/dblog.module b/core/modules/dblog/dblog.module
index 06fef10..ed92d6c 100644
--- a/core/modules/dblog/dblog.module
+++ b/core/modules/dblog/dblog.module
@@ -21,13 +21,13 @@ function dblog_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.dblog':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Database Logging module logs system events in the Drupal database. For more information, see the <a href=":dblog">online documentation for the Database Logging module</a>.', array(':dblog' => 'https://www.drupal.org/documentation/modules/dblog')) . '</p>';
+      $output .= '<p>' . t('The Database Logging module logs system events in the Drupal database. For more information, see the <a href=":dblog">online documentation for the Database Logging module</a>.', [':dblog' => 'https://www.drupal.org/documentation/modules/dblog']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Monitoring your site') . '</dt>';
-      $output .= '<dd>' . t('The Database Logging module allows you to view an event log on the <a href=":dblog">Recent log messages</a> page. The log is a chronological list of recorded events containing usage data, performance data, errors, warnings and operational information. Administrators should check the log on a regular basis to ensure their site is working properly.', array(':dblog' => \Drupal::url('dblog.overview'))) . '</dd>';
+      $output .= '<dd>' . t('The Database Logging module allows you to view an event log on the <a href=":dblog">Recent log messages</a> page. The log is a chronological list of recorded events containing usage data, performance data, errors, warnings and operational information. Administrators should check the log on a regular basis to ensure their site is working properly.', [':dblog' => \Drupal::url('dblog.overview')]) . '</dd>';
       $output .= '<dt>' . t('Debugging site problems') . '</dt>';
-      $output .= '<dd>' . t('In case of errors or problems with the site, the <a href=":dblog">Recent log messages</a> page can be useful for debugging, since it shows the sequence of events. The log messages include usage information, warnings, and errors.', array(':dblog' => \Drupal::url('dblog.overview'))) . '</dd>';
+      $output .= '<dd>' . t('In case of errors or problems with the site, the <a href=":dblog">Recent log messages</a> page can be useful for debugging, since it shows the sequence of events. The log messages include usage information, warnings, and errors.', [':dblog' => \Drupal::url('dblog.overview')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -41,12 +41,12 @@ function dblog_help($route_name, RouteMatchInterface $route_match) {
  */
 function dblog_menu_links_discovered_alter(&$links) {
   if (\Drupal::moduleHandler()->moduleExists('search')) {
-    $links['dblog.search'] = array(
+    $links['dblog.search'] = [
       'title' => new TranslatableMarkup('Top search phrases'),
       'route_name' => 'dblog.search',
       'description' => new TranslatableMarkup('View most popular search phrases.'),
       'parent' => 'system.admin_reports',
-    );
+    ];
   }
 
   return $links;
@@ -66,7 +66,7 @@ function dblog_cron() {
   // e.g. auto_increment value > 1 or rows deleted directly from the table.
   if ($row_limit > 0) {
     $min_row = db_select('watchdog', 'w')
-      ->fields('w', array('wid'))
+      ->fields('w', ['wid'])
       ->orderBy('wid', 'DESC')
       ->range($row_limit - 1, 1)
       ->execute()->fetchField();
@@ -95,14 +95,14 @@ function _dblog_get_message_types() {
  * Implements hook_form_FORM_ID_alter() for system_logging_settings().
  */
 function dblog_form_system_logging_settings_alter(&$form, FormStateInterface $form_state) {
-  $row_limits = array(100, 1000, 10000, 100000, 1000000);
-  $form['dblog_row_limit'] = array(
+  $row_limits = [100, 1000, 10000, 100000, 1000000];
+  $form['dblog_row_limit'] = [
     '#type' => 'select',
     '#title' => t('Database log messages to keep'),
     '#default_value' => \Drupal::configFactory()->getEditable('dblog.settings')->get('row_limit'),
-    '#options' => array(0 => t('All')) + array_combine($row_limits, $row_limits),
-    '#description' => t('The maximum number of messages to keep in the database log. Requires a <a href=":cron">cron maintenance task</a>.', array(':cron' => \Drupal::url('system.status')))
-  );
+    '#options' => [0 => t('All')] + array_combine($row_limits, $row_limits),
+    '#description' => t('The maximum number of messages to keep in the database log. Requires a <a href=":cron">cron maintenance task</a>.', [':cron' => \Drupal::url('system.status')])
+  ];
 
   $form['#submit'][] = 'dblog_logging_settings_submit';
 }
diff --git a/core/modules/dblog/dblog.views.inc b/core/modules/dblog/dblog.views.inc
index dfc1fde..20ad9ce 100644
--- a/core/modules/dblog/dblog.views.inc
+++ b/core/modules/dblog/dblog.views.inc
@@ -9,208 +9,208 @@
  * Implements hook_views_data().
  */
 function dblog_views_data() {
-  $data = array();
+  $data = [];
 
   $data['watchdog']['table']['group'] = t('Watchdog');
   $data['watchdog']['table']['wizard_id'] = 'watchdog';
 
-  $data['watchdog']['table']['base'] = array(
+  $data['watchdog']['table']['base'] = [
     'field' => 'wid',
     'title' => t('Log entries'),
     'help' => t('Contains a list of log entries.'),
-  );
+  ];
 
-  $data['watchdog']['wid'] = array(
+  $data['watchdog']['wid'] = [
     'title' => t('WID'),
     'help' => t('Unique watchdog event ID.'),
-    'field' => array(
+    'field' => [
       'id' => 'numeric',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['uid'] = array(
+  $data['watchdog']['uid'] = [
     'title' => t('UID'),
     'help' => t('The user ID of the user on which the log entry was written..'),
-    'field' => array(
+    'field' => [
       'id' => 'numeric',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'numeric',
-    ),
-    'relationship' => array(
+    ],
+    'relationship' => [
       'title' => t('User'),
       'help' => t('The user on which the log entry as written.'),
       'base' => 'users',
       'base field' => 'uid',
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['type'] = array(
+  $data['watchdog']['type'] = [
     'title' => t('Type'),
     'help' => t('The type of the log entry, for example "user" or "page not found".'),
-    'field' => array(
+    'field' => [
       'id' => 'standard',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'in_operator',
       'options callback' => '_dblog_get_message_types',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['message'] = array(
+  $data['watchdog']['message'] = [
     'title' => t('Message'),
     'help' => t('The actual message of the log entry.'),
-    'field' => array(
+    'field' => [
       'id' => 'dblog_message',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['variables'] = array(
+  $data['watchdog']['variables'] = [
     'title' => t('Variables'),
     'help' => t('The variables of the log entry in a serialized format.'),
-    'field' => array(
+    'field' => [
       'id' => 'serialized',
       'click sortable' => FALSE,
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['severity'] = array(
+  $data['watchdog']['severity'] = [
     'title' => t('Severity level'),
     'help' => t('The severity level of the event; ranges from 0 (Emergency) to 7 (Debug).'),
-    'field' => array(
+    'field' => [
       'id' => 'machine_name',
       'options callback' => 'Drupal\dblog\Controller\DbLogController::getLogLevelClassMap',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'in_operator',
       'options callback' => 'Drupal\dblog\Controller\DbLogController::getLogLevelClassMap',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['link'] = array(
+  $data['watchdog']['link'] = [
     'title' => t('Operations'),
     'help' => t('Operation links for the event.'),
-    'field' => array(
+    'field' => [
       'id' => 'dblog_operations',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['location'] = array(
+  $data['watchdog']['location'] = [
     'title' => t('Location'),
     'help' => t('URL of the origin of the event.'),
-    'field' => array(
+    'field' => [
       'id' => 'standard',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['referer'] = array(
+  $data['watchdog']['referer'] = [
     'title' => t('Referer'),
     'help' => t('URL of the previous page.'),
-    'field' => array(
+    'field' => [
       'id' => 'standard',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['hostname'] = array(
+  $data['watchdog']['hostname'] = [
     'title' => t('Hostname'),
     'help' => t('Hostname of the user who triggered the event.'),
-    'field' => array(
+    'field' => [
       'id' => 'standard',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['watchdog']['timestamp'] = array(
+  $data['watchdog']['timestamp'] = [
     'title' => t('Timestamp'),
     'help' => t('Date when the event occurred.'),
-    'field' => array(
+    'field' => [
       'id' => 'date',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'date',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
diff --git a/core/modules/dblog/src/Controller/DbLogController.php b/core/modules/dblog/src/Controller/DbLogController.php
index 36ee204..946a73c 100644
--- a/core/modules/dblog/src/Controller/DbLogController.php
+++ b/core/modules/dblog/src/Controller/DbLogController.php
@@ -94,7 +94,7 @@ public function __construct(Connection $database, ModuleHandlerInterface $module
    *   An array of log level classes.
    */
   public static function getLogLevelClassMap() {
-    return array(
+    return [
       RfcLogLevel::DEBUG => 'dblog-debug',
       RfcLogLevel::INFO => 'dblog-info',
       RfcLogLevel::NOTICE => 'dblog-notice',
@@ -103,7 +103,7 @@ public static function getLogLevelClassMap() {
       RfcLogLevel::CRITICAL => 'dblog-critical',
       RfcLogLevel::ALERT => 'dblog-alert',
       RfcLogLevel::EMERGENCY => 'dblog-emergency',
-    );
+    ];
   }
 
   /**
@@ -121,7 +121,7 @@ public static function getLogLevelClassMap() {
   public function overview() {
 
     $filter = $this->buildFilterQuery();
-    $rows = array();
+    $rows = [];
 
     $classes = static::getLogLevelClassMap();
 
@@ -129,32 +129,32 @@ public function overview() {
 
     $build['dblog_filter_form'] = $this->formBuilder->getForm('Drupal\dblog\Form\DblogFilterForm');
 
-    $header = array(
+    $header = [
       // Icon column.
       '',
-      array(
+      [
         'data' => $this->t('Type'),
         'field' => 'w.type',
-        'class' => array(RESPONSIVE_PRIORITY_MEDIUM)),
-      array(
+        'class' => [RESPONSIVE_PRIORITY_MEDIUM]],
+      [
         'data' => $this->t('Date'),
         'field' => 'w.wid',
         'sort' => 'desc',
-        'class' => array(RESPONSIVE_PRIORITY_LOW)),
+        'class' => [RESPONSIVE_PRIORITY_LOW]],
       $this->t('Message'),
-      array(
+      [
         'data' => $this->t('User'),
         'field' => 'ufd.name',
-        'class' => array(RESPONSIVE_PRIORITY_MEDIUM)),
-      array(
+        'class' => [RESPONSIVE_PRIORITY_MEDIUM]],
+      [
         'data' => $this->t('Operations'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW)),
-    );
+        'class' => [RESPONSIVE_PRIORITY_LOW]],
+    ];
 
     $query = $this->database->select('watchdog', 'w')
       ->extend('\Drupal\Core\Database\Query\PagerSelectExtender')
       ->extend('\Drupal\Core\Database\Query\TableSortExtender');
-    $query->fields('w', array(
+    $query->fields('w', [
       'wid',
       'uid',
       'severity',
@@ -163,7 +163,7 @@ public function overview() {
       'message',
       'variables',
       'link',
-    ));
+    ]);
     $query->leftJoin('users_field_data', 'ufd', 'w.uid = ufd.uid');
 
     if (!empty($filter['where'])) {
@@ -181,45 +181,45 @@ public function overview() {
         $log_text = Unicode::truncate($title, 56, TRUE, TRUE);
         // The link generator will escape any unsafe HTML entities in the final
         // text.
-        $message = $this->l($log_text, new Url('dblog.event', array('event_id' => $dblog->wid), array(
-          'attributes' => array(
+        $message = $this->l($log_text, new Url('dblog.event', ['event_id' => $dblog->wid], [
+          'attributes' => [
             // Provide a title for the link for useful hover hints. The
             // Attribute object will escape any unsafe HTML entities in the
             // final text.
             'title' => $title,
-          ),
-        )));
+          ],
+        ]));
       }
-      $username = array(
+      $username = [
         '#theme' => 'username',
         '#account' => $this->userStorage->load($dblog->uid),
-      );
-      $rows[] = array(
-        'data' => array(
+      ];
+      $rows[] = [
+        'data' => [
           // Cells.
-          array('class' => array('icon')),
+          ['class' => ['icon']],
           $this->t($dblog->type),
           $this->dateFormatter->format($dblog->timestamp, 'short'),
           $message,
-          array('data' => $username),
-          array('data' => array('#markup' => $dblog->link)),
-        ),
+          ['data' => $username],
+          ['data' => ['#markup' => $dblog->link]],
+        ],
         // Attributes for table row.
-        'class' => array(Html::getClass('dblog-' . $dblog->type), $classes[$dblog->severity]),
-      );
+        'class' => [Html::getClass('dblog-' . $dblog->type), $classes[$dblog->severity]],
+      ];
     }
 
-    $build['dblog_table'] = array(
+    $build['dblog_table'] = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-      '#attributes' => array('id' => 'admin-dblog', 'class' => array('admin-dblog')),
+      '#attributes' => ['id' => 'admin-dblog', 'class' => ['admin-dblog']],
       '#empty' => $this->t('No log messages available.'),
-      '#attached' => array(
-        'library' => array('dblog/drupal.dblog'),
-      ),
-    );
-    $build['dblog_pager'] = array('#type' => 'pager');
+      '#attached' => [
+        'library' => ['dblog/drupal.dblog'],
+      ],
+    ];
+    $build['dblog_pager'] = ['#type' => 'pager'];
 
     return $build;
 
@@ -236,60 +236,60 @@ public function overview() {
    *   format expected by drupal_render();
    */
   public function eventDetails($event_id) {
-    $build = array();
-    if ($dblog = $this->database->query('SELECT w.*, u.uid FROM {watchdog} w LEFT JOIN {users} u ON u.uid = w.uid WHERE w.wid = :id', array(':id' => $event_id))->fetchObject()) {
+    $build = [];
+    if ($dblog = $this->database->query('SELECT w.*, u.uid FROM {watchdog} w LEFT JOIN {users} u ON u.uid = w.uid WHERE w.wid = :id', [':id' => $event_id])->fetchObject()) {
       $severity = RfcLogLevel::getLevels();
       $message = $this->formatMessage($dblog);
-      $username = array(
+      $username = [
         '#theme' => 'username',
         '#account' => $dblog->uid ? $this->userStorage->load($dblog->uid) : User::getAnonymousUser(),
-      );
-      $rows = array(
-        array(
-          array('data' => $this->t('Type'), 'header' => TRUE),
+      ];
+      $rows = [
+        [
+          ['data' => $this->t('Type'), 'header' => TRUE],
           $this->t($dblog->type),
-        ),
-        array(
-          array('data' => $this->t('Date'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('Date'), 'header' => TRUE],
           $this->dateFormatter->format($dblog->timestamp, 'long'),
-        ),
-        array(
-          array('data' => $this->t('User'), 'header' => TRUE),
-          array('data' => $username),
-        ),
-        array(
-          array('data' => $this->t('Location'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('User'), 'header' => TRUE],
+          ['data' => $username],
+        ],
+        [
+          ['data' => $this->t('Location'), 'header' => TRUE],
           $this->l($dblog->location, $dblog->location ? Url::fromUri($dblog->location) : Url::fromRoute('<none>')),
-        ),
-        array(
-          array('data' => $this->t('Referrer'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('Referrer'), 'header' => TRUE],
           $this->l($dblog->referer, $dblog->referer ? Url::fromUri($dblog->referer) : Url::fromRoute('<none>')),
-        ),
-        array(
-          array('data' => $this->t('Message'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('Message'), 'header' => TRUE],
           $message,
-        ),
-        array(
-          array('data' => $this->t('Severity'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('Severity'), 'header' => TRUE],
           $severity[$dblog->severity],
-        ),
-        array(
-          array('data' => $this->t('Hostname'), 'header' => TRUE),
+        ],
+        [
+          ['data' => $this->t('Hostname'), 'header' => TRUE],
           $dblog->hostname,
-        ),
-        array(
-          array('data' => $this->t('Operations'), 'header' => TRUE),
-          array('data' => array('#markup' => $dblog->link)),
-        ),
-      );
-      $build['dblog_table'] = array(
+        ],
+        [
+          ['data' => $this->t('Operations'), 'header' => TRUE],
+          ['data' => ['#markup' => $dblog->link]],
+        ],
+      ];
+      $build['dblog_table'] = [
         '#type' => 'table',
         '#rows' => $rows,
-        '#attributes' => array('class' => array('dblog-event')),
-        '#attached' => array(
-          'library' => array('dblog/drupal.dblog'),
-        ),
-      );
+        '#attributes' => ['class' => ['dblog-event']],
+        '#attached' => [
+          'library' => ['dblog/drupal.dblog'],
+        ],
+      ];
     }
 
     return $build;
@@ -311,9 +311,9 @@ protected function buildFilterQuery() {
     $filters = dblog_filters();
 
     // Build query.
-    $where = $args = array();
+    $where = $args = [];
     foreach ($_SESSION['dblog_overview_filter'] as $key => $filter) {
-      $filter_where = array();
+      $filter_where = [];
       foreach ($filter as $value) {
         $filter_where[] = $filters[$key]['where'];
         $args[] = $value;
@@ -324,10 +324,10 @@ protected function buildFilterQuery() {
     }
     $where = !empty($where) ? implode(' AND ', $where) : '';
 
-    return array(
+    return [
       'where' => $where,
       'args' => $args,
-    );
+    ];
   }
 
   /**
@@ -378,10 +378,10 @@ public function formatMessage($row) {
    *   A build array in the format expected by drupal_render().
    */
   public function topLogMessages($type) {
-    $header = array(
-      array('data' => $this->t('Count'), 'field' => 'count', 'sort' => 'desc'),
-      array('data' => $this->t('Message'), 'field' => 'message'),
-    );
+    $header = [
+      ['data' => $this->t('Count'), 'field' => 'count', 'sort' => 'desc'],
+      ['data' => $this->t('Message'), 'field' => 'message'],
+    ];
 
     $count_query = $this->database->select('watchdog');
     $count_query->addExpression('COUNT(DISTINCT(message))');
@@ -392,7 +392,7 @@ public function topLogMessages($type) {
       ->extend('\Drupal\Core\Database\Query\TableSortExtender');
     $query->addExpression('COUNT(wid)', 'count');
     $query = $query
-      ->fields('w', array('message', 'variables'))
+      ->fields('w', ['message', 'variables'])
       ->condition('w.type', $type)
       ->groupBy('message')
       ->groupBy('variables')
@@ -401,23 +401,23 @@ public function topLogMessages($type) {
     $query->setCountQuery($count_query);
     $result = $query->execute();
 
-    $rows = array();
+    $rows = [];
     foreach ($result as $dblog) {
       if ($message = $this->formatMessage($dblog)) {
-        $rows[] = array($dblog->count, $message);
+        $rows[] = [$dblog->count, $message];
       }
     }
 
-    $build['dblog_top_table']  = array(
+    $build['dblog_top_table']  = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
       '#empty' => $this->t('No log messages available.'),
-      '#attached' => array(
-        'library' => array('dblog/drupal.dblog'),
-      ),
-    );
-    $build['dblog_top_pager'] = array('#type' => 'pager');
+      '#attached' => [
+        'library' => ['dblog/drupal.dblog'],
+      ],
+    ];
+    $build['dblog_top_pager'] = ['#type' => 'pager'];
 
     return $build;
   }
diff --git a/core/modules/dblog/src/Form/DblogClearLogConfirmForm.php b/core/modules/dblog/src/Form/DblogClearLogConfirmForm.php
index b1710df..0f420f0 100644
--- a/core/modules/dblog/src/Form/DblogClearLogConfirmForm.php
+++ b/core/modules/dblog/src/Form/DblogClearLogConfirmForm.php
@@ -64,7 +64,7 @@ public function getCancelUrl() {
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $_SESSION['dblog_overview_filter'] = array();
+    $_SESSION['dblog_overview_filter'] = [];
     $this->connection->truncate('watchdog')->execute();
     drupal_set_message($this->t('Database log cleared.'));
     $form_state->setRedirectUrl($this->getCancelUrl());
diff --git a/core/modules/dblog/src/Form/DblogFilterForm.php b/core/modules/dblog/src/Form/DblogFilterForm.php
index 0434f12..c8de0fc 100644
--- a/core/modules/dblog/src/Form/DblogFilterForm.php
+++ b/core/modules/dblog/src/Form/DblogFilterForm.php
@@ -23,39 +23,39 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $filters = dblog_filters();
 
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'details',
       '#title' => $this->t('Filter log messages'),
       '#open' => TRUE,
-    );
+    ];
     foreach ($filters as $key => $filter) {
-      $form['filters']['status'][$key] = array(
+      $form['filters']['status'][$key] = [
         '#title' => $filter['title'],
         '#type' => 'select',
         '#multiple' => TRUE,
         '#size' => 8,
         '#options' => $filter['options'],
-      );
+      ];
       if (!empty($_SESSION['dblog_overview_filter'][$key])) {
         $form['filters']['status'][$key]['#default_value'] = $_SESSION['dblog_overview_filter'][$key];
       }
     }
 
-    $form['filters']['actions'] = array(
+    $form['filters']['actions'] = [
       '#type' => 'actions',
-      '#attributes' => array('class' => array('container-inline')),
-    );
-    $form['filters']['actions']['submit'] = array(
+      '#attributes' => ['class' => ['container-inline']],
+    ];
+    $form['filters']['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Filter'),
-    );
+    ];
     if (!empty($_SESSION['dblog_overview_filter'])) {
-      $form['filters']['actions']['reset'] = array(
+      $form['filters']['actions']['reset'] = [
         '#type' => 'submit',
         '#value' => $this->t('Reset'),
-        '#limit_validation_errors' => array(),
-        '#submit' => array('::resetForm'),
-      );
+        '#limit_validation_errors' => [],
+        '#submit' => ['::resetForm'],
+      ];
     }
     return $form;
   }
@@ -90,7 +90,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
    *   The current state of the form.
    */
   public function resetForm(array &$form, FormStateInterface $form_state) {
-    $_SESSION['dblog_overview_filter'] = array();
+    $_SESSION['dblog_overview_filter'] = [];
   }
 
 }
diff --git a/core/modules/dblog/src/Logger/DbLog.php b/core/modules/dblog/src/Logger/DbLog.php
index af77be4..97b0b7b 100644
--- a/core/modules/dblog/src/Logger/DbLog.php
+++ b/core/modules/dblog/src/Logger/DbLog.php
@@ -53,7 +53,7 @@ public function __construct(Connection $connection, LogMessageParserInterface $p
   /**
    * {@inheritdoc}
    */
-  public function log($level, $message, array $context = array()) {
+  public function log($level, $message, array $context = []) {
     // Remove any backtraces since they may contain an unserializable variable.
     unset($context['backtrace']);
 
@@ -64,7 +64,7 @@ public function log($level, $message, array $context = array()) {
     try {
       $this->connection
         ->insert('watchdog')
-        ->fields(array(
+        ->fields([
           'uid' => $context['uid'],
           'type' => Unicode::substr($context['channel'], 0, 64),
           'message' => $message,
@@ -75,7 +75,7 @@ public function log($level, $message, array $context = array()) {
           'referer' => $context['referer'],
           'hostname' => Unicode::substr($context['ip'], 0, 128),
           'timestamp' => $context['timestamp'],
-        ))
+        ])
         ->execute();
     }
     catch (\Exception $e) {
diff --git a/core/modules/dblog/src/Plugin/rest/resource/DBLogResource.php b/core/modules/dblog/src/Plugin/rest/resource/DBLogResource.php
index 4ac76f0..ed801fc 100644
--- a/core/modules/dblog/src/Plugin/rest/resource/DBLogResource.php
+++ b/core/modules/dblog/src/Plugin/rest/resource/DBLogResource.php
@@ -38,13 +38,13 @@ class DBLogResource extends ResourceBase {
    */
   public function get($id = NULL) {
     if ($id) {
-      $record = db_query("SELECT * FROM {watchdog} WHERE wid = :wid", array(':wid' => $id))
+      $record = db_query("SELECT * FROM {watchdog} WHERE wid = :wid", [':wid' => $id])
         ->fetchAssoc();
       if (!empty($record)) {
         return new ResourceResponse($record);
       }
 
-      throw new NotFoundHttpException(t('Log entry with ID @id was not found', array('@id' => $id)));
+      throw new NotFoundHttpException(t('Log entry with ID @id was not found', ['@id' => $id]));
     }
 
     throw new BadRequestHttpException(t('No log entry ID was provided'));
diff --git a/core/modules/dblog/src/Plugin/views/field/DblogMessage.php b/core/modules/dblog/src/Plugin/views/field/DblogMessage.php
index e0558d8..3c68242 100644
--- a/core/modules/dblog/src/Plugin/views/field/DblogMessage.php
+++ b/core/modules/dblog/src/Plugin/views/field/DblogMessage.php
@@ -34,7 +34,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['replace_variables'] = array('default' => TRUE);
+    $options['replace_variables'] = ['default' => TRUE];
 
     return $options;
   }
@@ -45,11 +45,11 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['replace_variables'] = array(
+    $form['replace_variables'] = [
       '#title' => $this->t('Replace variables'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['replace_variables'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/dblog/src/Tests/DbLogTest.php b/core/modules/dblog/src/Tests/DbLogTest.php
index daa9421b..878f632 100644
--- a/core/modules/dblog/src/Tests/DbLogTest.php
+++ b/core/modules/dblog/src/Tests/DbLogTest.php
@@ -22,7 +22,7 @@ class DbLogTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('dblog', 'node', 'forum', 'help', 'block');
+  public static $modules = ['dblog', 'node', 'forum', 'help', 'block'];
 
   /**
    * A user with some relevant administrative permissions.
@@ -47,8 +47,8 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create users with specific permissions.
-    $this->adminUser = $this->drupalCreateUser(array('administer site configuration', 'access administration pages', 'access site reports', 'administer users'));
-    $this->webUser = $this->drupalCreateUser(array());
+    $this->adminUser = $this->drupalCreateUser(['administer site configuration', 'access administration pages', 'access site reports', 'administer users']);
+    $this->webUser = $this->drupalCreateUser([]);
   }
 
   /**
@@ -70,8 +70,8 @@ function testDbLog() {
     $this->verifyBreadcrumbs();
     $this->verifyLinkEscaping();
     // Verify the overview table sorting.
-    $orders = array('Date', 'Type', 'User');
-    $sorts = array('asc', 'desc');
+    $orders = ['Date', 'Type', 'User'];
+    $sorts = ['asc', 'desc'];
     foreach ($orders as $order) {
       foreach ($sorts as $sort) {
         $this->verifySort($sort, $order);
@@ -124,14 +124,14 @@ public function testLogEventPage() {
    */
   private function verifyRowLimit($row_limit) {
     // Change the database log row limit.
-    $edit = array();
+    $edit = [];
     $edit['dblog_row_limit'] = $row_limit;
     $this->drupalPostForm('admin/config/development/logging', $edit, t('Save configuration'));
     $this->assertResponse(200);
 
     // Check row limit variable.
     $current_limit = $this->config('dblog.settings')->get('row_limit');
-    $this->assertTrue($current_limit == $row_limit, format_string('[Cache] Row limit variable of @count equals row limit of @limit', array('@count' => $current_limit, '@limit' => $row_limit)));
+    $this->assertTrue($current_limit == $row_limit, format_string('[Cache] Row limit variable of @count equals row limit of @limit', ['@count' => $current_limit, '@limit' => $row_limit]));
   }
 
   /**
@@ -145,18 +145,18 @@ private function verifyCron($row_limit) {
     $this->generateLogEntries($row_limit + 10);
     // Verify that the database log row count exceeds the row limit.
     $count = db_query('SELECT COUNT(wid) FROM {watchdog}')->fetchField();
-    $this->assertTrue($count > $row_limit, format_string('Dblog row count of @count exceeds row limit of @limit', array('@count' => $count, '@limit' => $row_limit)));
+    $this->assertTrue($count > $row_limit, format_string('Dblog row count of @count exceeds row limit of @limit', ['@count' => $count, '@limit' => $row_limit]));
 
     // Get the number of enabled modules. Cron adds a log entry for each module.
     $list = \Drupal::moduleHandler()->getImplementations('cron');
     $module_count = count($list);
     $cron_detailed_count = $this->runCron();
-    $this->assertTrue($cron_detailed_count == $module_count + 2, format_string('Cron added @count of @expected new log entries', array('@count' => $cron_detailed_count, '@expected' => $module_count + 2)));
+    $this->assertTrue($cron_detailed_count == $module_count + 2, format_string('Cron added @count of @expected new log entries', ['@count' => $cron_detailed_count, '@expected' => $module_count + 2]));
 
     // Test disabling of detailed cron logging.
     $this->config('system.cron')->set('logging', 0)->save();
     $cron_count = $this->runCron();
-    $this->assertTrue($cron_count = 1, format_string('Cron added @count of @expected new log entries', array('@count' => $cron_count, '@expected' => 1)));
+    $this->assertTrue($cron_count = 1, format_string('Cron added @count of @expected new log entries', ['@count' => $cron_count, '@expected' => 1]));
   }
 
   /**
@@ -203,7 +203,7 @@ private function runCron() {
    *     entry.
    *   - 'timestamp': Int unix timestamp.
    */
-  private function generateLogEntries($count, $options = array()) {
+  private function generateLogEntries($count, $options = []) {
     global $base_root;
 
     // This long URL makes it just a little bit harder to pass the link part of
@@ -212,10 +212,10 @@ private function generateLogEntries($count, $options = array()) {
     $link = urldecode('/content/xo%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A%E9%85%B1%E5%87%89%E6%8B%8C%E7%B4%A0%E9%B8%A1%E7%85%A7%E7%83%A7%E9%B8%A1%E9%BB%84%E7%8E%AB%E7%91%B0-%E7%A7%91%E5%B7%9E%E7%9A%84%E5%B0%8F%E4%B9%9D%E5%AF%A8%E6%B2%9F%E7%BB%9D%E7%BE%8E%E9%AB%98%E5%B1%B1%E6%B9%96%E6%B3%8A-lake-isabelle');
 
     // Prepare the fields to be logged
-    $log = $options + array(
+    $log = $options + [
       'channel'     => 'custom',
       'message'     => 'Dblog test log message',
-      'variables'   => array(),
+      'variables'   => [],
       'severity'    => RfcLogLevel::NOTICE,
       'link'        => $link,
       'user'        => $this->adminUser,
@@ -224,7 +224,7 @@ private function generateLogEntries($count, $options = array()) {
       'referer'     => \Drupal::request()->server->get('HTTP_REFERER'),
       'ip'          => '127.0.0.1',
       'timestamp'   => REQUEST_TIME,
-    );
+    ];
 
     $logger = $this->container->get('logger.dblog');
     $message = $log['message'] . ' Entry #';
@@ -250,7 +250,7 @@ protected function clearLogsEntries() {
    *   (optional) The log entry severity.
   */
   protected function filterLogsEntries($type = NULL, $severity = NULL) {
-    $edit = array();
+    $edit = [];
     if (!is_null($type)) {
       $edit['type[]'] = $type;
     }
@@ -321,8 +321,8 @@ private function verifyBreadcrumbs() {
   private function verifyEvents() {
     // Invoke events.
     $this->doUser();
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => t('Article')));
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => t('Basic page')));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => t('Article')]);
+    $this->drupalCreateContentType(['type' => 'page', 'name' => t('Basic page')]);
     $this->doNode('article');
     $this->doNode('page');
     $this->doNode('forum');
@@ -341,7 +341,7 @@ private function verifyEvents() {
    *   The order by which the table should be sorted.
    */
   public function verifySort($sort = 'asc', $order = 'Date') {
-    $this->drupalGet('admin/reports/dblog', array('query' => array('sort' => $sort, 'order' => $order)));
+    $this->drupalGet('admin/reports/dblog', ['query' => ['sort' => $sort, 'order' => $order]]);
     $this->assertResponse(200);
     $this->assertText(t('Recent log messages'), 'DBLog report was displayed correctly and sorting went fine.');
   }
@@ -351,12 +351,12 @@ public function verifySort($sort = 'asc', $order = 'Date') {
    * page.
    */
   private function verifyLinkEscaping() {
-    $link = \Drupal::l('View', Url::fromRoute('entity.node.canonical', array('node' => 1)));
+    $link = \Drupal::l('View', Url::fromRoute('entity.node.canonical', ['node' => 1]));
     $message = 'Log entry added to do the verifyLinkEscaping test.';
-    $this->generateLogEntries(1, array(
+    $this->generateLogEntries(1, [
       'message' => $message,
       'link' => $link,
-    ));
+    ]);
 
     $result = db_query_range('SELECT wid FROM {watchdog} ORDER BY wid DESC', 0, 1);
     $this->drupalGet('admin/reports/dblog/event/' . $result->fetchField());
@@ -374,7 +374,7 @@ private function doUser() {
     $pass = user_password();
     // Add a user using the form to generate an add user event (which is not
     // triggered by drupalCreateUser).
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name;
     $edit['mail'] = $name . '@example.com';
     $edit['pass[pass1]'] = $pass;
@@ -384,7 +384,7 @@ private function doUser() {
     $this->assertResponse(200);
     // Retrieve the user object.
     $user = user_load_by_name($name);
-    $this->assertTrue($user != NULL, format_string('User @name was loaded', array('@name' => $name)));
+    $this->assertTrue($user != NULL, format_string('User @name was loaded', ['@name' => $name]));
     // pass_raw property is needed by drupalLogin.
     $user->pass_raw = $pass;
     // Log in user.
@@ -392,18 +392,18 @@ private function doUser() {
     // Log out user.
     $this->drupalLogout();
     // Fetch the row IDs in watchdog that relate to the user.
-    $result = db_query('SELECT wid FROM {watchdog} WHERE uid = :uid', array(':uid' => $user->id()));
+    $result = db_query('SELECT wid FROM {watchdog} WHERE uid = :uid', [':uid' => $user->id()]);
     foreach ($result as $row) {
       $ids[] = $row->wid;
     }
     $count_before = (isset($ids)) ? count($ids) : 0;
-    $this->assertTrue($count_before > 0, format_string('DBLog contains @count records for @name', array('@count' => $count_before, '@name' => $user->getUsername())));
+    $this->assertTrue($count_before > 0, format_string('DBLog contains @count records for @name', ['@count' => $count_before, '@name' => $user->getUsername()]));
 
     // Log in the admin user.
     $this->drupalLogin($this->adminUser);
     // Delete the user created at the start of this test.
     // We need to POST here to invoke batch_process() in the internal browser.
-    $this->drupalPostForm('user/' . $user->id() . '/cancel', array('user_cancel_method' => 'user_cancel_reassign'), t('Cancel account'));
+    $this->drupalPostForm('user/' . $user->id() . '/cancel', ['user_cancel_method' => 'user_cancel_reassign'], t('Cancel account'));
 
     // View the database log report.
     $this->drupalGet('admin/reports/dblog');
@@ -413,13 +413,13 @@ private function doUser() {
     // Add user.
     // Default display includes name and email address; if too long, the email
     // address is replaced by three periods.
-    $this->assertLogMessage(t('New user: %name %email.', array('%name' => $name, '%email' => '<' . $user->getEmail() . '>')), 'DBLog event was recorded: [add user]');
+    $this->assertLogMessage(t('New user: %name %email.', ['%name' => $name, '%email' => '<' . $user->getEmail() . '>']), 'DBLog event was recorded: [add user]');
     // Log in user.
-    $this->assertLogMessage(t('Session opened for %name.', array('%name' => $name)), 'DBLog event was recorded: [login user]');
+    $this->assertLogMessage(t('Session opened for %name.', ['%name' => $name]), 'DBLog event was recorded: [login user]');
     // Log out user.
-    $this->assertLogMessage(t('Session closed for %name.', array('%name' => $name)), 'DBLog event was recorded: [logout user]');
+    $this->assertLogMessage(t('Session closed for %name.', ['%name' => $name]), 'DBLog event was recorded: [logout user]');
     // Delete user.
-    $message = t('Deleted user: %name %email.', array('%name' => $name, '%email' => '<' . $user->getEmail() . '>'));
+    $message = t('Deleted user: %name %email.', ['%name' => $name, '%email' => '<' . $user->getEmail() . '>']);
     $message_text = Unicode::truncate(Html::decodeEntities(strip_tags($message)), 56, TRUE, TRUE);
     // Verify that the full message displays on the details page.
     $link = FALSE;
@@ -457,7 +457,7 @@ private function doUser() {
    */
   private function doNode($type) {
     // Create user.
-    $perm = array('create ' . $type . ' content', 'edit own ' . $type . ' content', 'delete own ' . $type . ' content');
+    $perm = ['create ' . $type . ' content', 'edit own ' . $type . ' content', 'delete own ' . $type . ' content'];
     $user = $this->drupalCreateUser($perm);
     // Log in user.
     $this->drupalLogin($user);
@@ -470,13 +470,13 @@ private function doNode($type) {
     $this->assertResponse(200);
     // Retrieve the node object.
     $node = $this->drupalGetNodeByTitle($title);
-    $this->assertTrue($node != NULL, format_string('Node @title was loaded', array('@title' => $title)));
+    $this->assertTrue($node != NULL, format_string('Node @title was loaded', ['@title' => $title]));
     // Edit the node.
     $edit = $this->getContentUpdate($type);
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     $this->assertResponse(200);
     // Delete the node.
-    $this->drupalPostForm('node/' . $node->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $node->id() . '/delete', [], t('Delete'));
     $this->assertResponse(200);
     // View the node (to generate page not found event).
     $this->drupalGet('node/' . $node->id());
@@ -493,11 +493,11 @@ private function doNode($type) {
 
     // Verify that node events were recorded.
     // Was node content added?
-    $this->assertLogMessage(t('@type: added %title.', array('@type' => $type, '%title' => $title)), 'DBLog event was recorded: [content added]');
+    $this->assertLogMessage(t('@type: added %title.', ['@type' => $type, '%title' => $title]), 'DBLog event was recorded: [content added]');
     // Was node content updated?
-    $this->assertLogMessage(t('@type: updated %title.', array('@type' => $type, '%title' => $title)), 'DBLog event was recorded: [content updated]');
+    $this->assertLogMessage(t('@type: updated %title.', ['@type' => $type, '%title' => $title]), 'DBLog event was recorded: [content updated]');
     // Was node content deleted?
-    $this->assertLogMessage(t('@type: deleted %title.', array('@type' => $type, '%title' => $title)), 'DBLog event was recorded: [content deleted]');
+    $this->assertLogMessage(t('@type: deleted %title.', ['@type' => $type, '%title' => $title]), 'DBLog event was recorded: [content deleted]');
 
     // View the database log access-denied report page.
     $this->drupalGet('admin/reports/access-denied');
@@ -524,18 +524,18 @@ private function doNode($type) {
   private function getContent($type) {
     switch ($type) {
       case 'forum':
-        $content = array(
+        $content = [
           'title[0][value]' => $this->randomMachineName(8),
-          'taxonomy_forums' => array(1),
+          'taxonomy_forums' => [1],
           'body[0][value]' => $this->randomMachineName(32),
-        );
+        ];
         break;
 
       default:
-        $content = array(
+        $content = [
           'title[0][value]' => $this->randomMachineName(8),
           'body[0][value]' => $this->randomMachineName(32),
-        );
+        ];
         break;
     }
     return $content;
@@ -551,9 +551,9 @@ private function getContent($type) {
    *   Random content needed by various node types.
    */
   private function getContentUpdate($type) {
-    $content = array(
+    $content = [
       'body[0][value]' => $this->randomMachineName(32),
-    );
+    ];
     return $content;
   }
 
@@ -567,10 +567,10 @@ public function testDBLogAddAndClear() {
     global $base_root;
     // Get a count of how many watchdog entries already exist.
     $count = db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField();
-    $log = array(
+    $log = [
       'channel'     => 'system',
       'message'     => 'Log entry added to test the doClearTest clear down.',
-      'variables'   => array(),
+      'variables'   => [],
       'severity'    => RfcLogLevel::NOTICE,
       'link'        => NULL,
       'user'        => $this->adminUser,
@@ -579,20 +579,20 @@ public function testDBLogAddAndClear() {
       'referer'     => \Drupal::request()->server->get('HTTP_REFERER'),
       'ip'          => '127.0.0.1',
       'timestamp'   => REQUEST_TIME,
-    );
+    ];
     // Add a watchdog entry.
     $this->container->get('logger.dblog')->log($log['severity'], $log['message'], $log);
     // Make sure the table count has actually been incremented.
-    $this->assertEqual($count + 1, db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField(), format_string('\Drupal\dblog\Logger\DbLog->log() added an entry to the dblog :count', array(':count' => $count)));
+    $this->assertEqual($count + 1, db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField(), format_string('\Drupal\dblog\Logger\DbLog->log() added an entry to the dblog :count', [':count' => $count]));
     // Log in the admin user.
     $this->drupalLogin($this->adminUser);
     // Post in order to clear the database table.
     $this->clearLogsEntries();
     // Confirm that the logs should be cleared.
-    $this->drupalPostForm(NULL, array(), 'Confirm');
+    $this->drupalPostForm(NULL, [], 'Confirm');
     // Count the rows in watchdog that previously related to the deleted user.
     $count = db_query('SELECT COUNT(*) FROM {watchdog}')->fetchField();
-    $this->assertEqual($count, 0, format_string('DBLog contains :count records after a clear.', array(':count' => $count)));
+    $this->assertEqual($count, 0, format_string('DBLog contains :count records after a clear.', [':count' => $count]));
   }
 
   /**
@@ -605,21 +605,21 @@ public function testFilter() {
     db_delete('watchdog')->execute();
 
     // Generate 9 random watchdog entries.
-    $type_names = array();
-    $types = array();
+    $type_names = [];
+    $types = [];
     for ($i = 0; $i < 3; $i++) {
       $type_names[] = $type_name = $this->randomMachineName();
       $severity = RfcLogLevel::EMERGENCY;
       for ($j = 0; $j < 3; $j++) {
-        $types[] = $type = array(
+        $types[] = $type = [
           'count' => $j + 1,
           'type' => $type_name,
           'severity' => $severity++,
-        );
-        $this->generateLogEntries($type['count'], array(
+        ];
+        $this->generateLogEntries($type['count'], [
           'channel' => $type['type'],
           'severity' => $type['severity'],
-        ));
+        ]);
       }
     }
 
@@ -658,14 +658,14 @@ public function testFilter() {
       $this->assertEqual(array_sum($count), $type['count'], 'Count matched');
     }
 
-    $this->drupalGet('admin/reports/dblog', array('query' => array('order' => 'Type')));
+    $this->drupalGet('admin/reports/dblog', ['query' => ['order' => 'Type']]);
     $this->assertResponse(200);
     $this->assertText(t('Operations'), 'Operations text found');
 
     // Clear all logs and make sure the confirmation message is found.
     $this->clearLogsEntries();
     // Confirm that the logs should be cleared.
-    $this->drupalPostForm(NULL, array(), 'Confirm');
+    $this->drupalPostForm(NULL, [], 'Confirm');
     $this->assertText(t('Database log cleared.'), 'Confirmation message found');
   }
 
@@ -680,16 +680,16 @@ public function testFilter() {
    *   - user: (string) The user associated with this database log event.
    */
   protected function getLogEntries() {
-    $entries = array();
+    $entries = [];
     if ($table = $this->getLogsEntriesTable()) {
       $table = array_shift($table);
       foreach ($table->tbody->tr as $row) {
-        $entries[] = array(
+        $entries[] = [
           'severity' => $this->getSeverityConstant($row['class']),
           'type' => $this->asText($row->td[1]),
           'message' => $this->asText($row->td[3]),
           'user' => $this->asText($row->td[4]),
-        );
+        ];
       }
     }
     return $entries;
@@ -795,7 +795,7 @@ public function testTemporaryUser() {
     $this->drupalLogin($this->adminUser);
 
     // Generate a single watchdog entry.
-    $this->generateLogEntries(1, array('user' => $tempuser, 'uid' => $tempuser_uid));
+    $this->generateLogEntries(1, ['user' => $tempuser, 'uid' => $tempuser_uid]);
     $wid = db_query('SELECT MAX(wid) FROM {watchdog}')->fetchField();
 
     // Check if the full message displays on the details page.
diff --git a/core/modules/dblog/src/Tests/Rest/DbLogResourceTest.php b/core/modules/dblog/src/Tests/Rest/DbLogResourceTest.php
index 279d202..44dbe99 100644
--- a/core/modules/dblog/src/Tests/Rest/DbLogResourceTest.php
+++ b/core/modules/dblog/src/Tests/Rest/DbLogResourceTest.php
@@ -18,7 +18,7 @@ class DbLogResourceTest extends RESTTestBase {
    *
    * @var array
    */
-  public static $modules = array('hal', 'dblog');
+  public static $modules = ['hal', 'dblog'];
 
   protected function setUp() {
     parent::setUp();
@@ -33,12 +33,12 @@ public function testWatchdog() {
     // Write a log message to the DB.
     $this->container->get('logger.channel.rest')->notice('Test message');
     // Get the ID of the written message.
-    $id = db_query_range("SELECT wid FROM {watchdog} WHERE type = :type ORDER BY wid DESC", 0, 1, array(':type' => 'rest'))
+    $id = db_query_range("SELECT wid FROM {watchdog} WHERE type = :type ORDER BY wid DESC", 0, 1, [':type' => 'rest'])
       ->fetchField();
 
     // Create a user account that has the required permissions to read
     // the watchdog resource via the REST API.
-    $account = $this->drupalCreateUser(array('restful get dblog'));
+    $account = $this->drupalCreateUser(['restful get dblog']);
     $this->drupalLogin($account);
 
     $response = $this->httpRequest(Url::fromRoute('rest.dblog.GET.' . $this->defaultFormat, ['id' => $id, '_format' => $this->defaultFormat]), 'GET');
diff --git a/core/modules/dblog/tests/src/Functional/ConnectionFailureTest.php b/core/modules/dblog/tests/src/Functional/ConnectionFailureTest.php
index df088a3..44b0457 100644
--- a/core/modules/dblog/tests/src/Functional/ConnectionFailureTest.php
+++ b/core/modules/dblog/tests/src/Functional/ConnectionFailureTest.php
@@ -12,7 +12,7 @@
  */
 class ConnectionFailureTest extends BrowserTestBase {
 
-  public static $modules = array('dblog');
+  public static $modules = ['dblog'];
 
   /**
    * Tests logging of connection failures.
diff --git a/core/modules/dblog/tests/src/Kernel/DbLogFormInjectionTest.php b/core/modules/dblog/tests/src/Kernel/DbLogFormInjectionTest.php
index 569cdbf..c0d97be 100644
--- a/core/modules/dblog/tests/src/Kernel/DbLogFormInjectionTest.php
+++ b/core/modules/dblog/tests/src/Kernel/DbLogFormInjectionTest.php
@@ -31,7 +31,7 @@ class DbLogFormInjectionTest extends KernelTestBase implements FormInterface {
    *
    * @var array
    */
-  public static $modules = array('system', 'dblog', 'user');
+  public static $modules = ['system', 'dblog', 'user'];
 
   /**
    * {@inheritdoc}
@@ -82,10 +82,10 @@ protected function setUp() {
     $this->installSchema('system', ['key_value_expire', 'sequences']);
     $this->installEntitySchema('user');
     $this->logger = \Drupal::logger('test_logger');
-    $test_user = User::create(array(
+    $test_user = User::create([
       'name' => 'foobar',
       'mail' => 'foobar@example.com',
-    ));
+    ]);
     $test_user->save();
     \Drupal::service('current_user')->setAccount($test_user);
   }
diff --git a/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php b/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
index 1968a12..7b63394 100644
--- a/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
+++ b/core/modules/dblog/tests/src/Kernel/Views/ViewsIntegrationTest.php
@@ -22,14 +22,14 @@ class ViewsIntegrationTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_dblog');
+  public static $testViews = ['test_dblog'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('dblog', 'dblog_test_views', 'user');
+  public static $modules = ['dblog', 'dblog_test_views', 'user'];
 
   /**
    * {@inheritdoc}
@@ -40,9 +40,9 @@ protected function setUp($import_test_views = TRUE) {
     // Rebuild the router, otherwise we can't generate links.
     $this->container->get('router.builder')->rebuild();
 
-    $this->installSchema('dblog', array('watchdog'));
+    $this->installSchema('dblog', ['watchdog']);
 
-    ViewTestData::createTestViews(get_class($this), array('dblog_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['dblog_test_views']);
   }
 
   /**
@@ -53,35 +53,35 @@ public function testIntegration() {
     // Remove the watchdog entries added by the potential batch process.
     $this->container->get('database')->truncate('watchdog')->execute();
 
-    $entries = array();
+    $entries = [];
     // Setup a watchdog entry without tokens.
-    $entries[] = array(
+    $entries[] = [
       'message' => $this->randomMachineName(),
-      'variables' => array('link' => \Drupal::l('Link', new Url('<front>'))),
-    );
+      'variables' => ['link' => \Drupal::l('Link', new Url('<front>'))],
+    ];
     // Setup a watchdog entry with one token.
-    $entries[] = array(
+    $entries[] = [
       'message' => '@token1',
-      'variables' => array('@token1' => $this->randomMachineName(), 'link' => \Drupal::l('Link', new Url('<front>'))),
-    );
+      'variables' => ['@token1' => $this->randomMachineName(), 'link' => \Drupal::l('Link', new Url('<front>'))],
+    ];
     // Setup a watchdog entry with two tokens.
-    $entries[] = array(
+    $entries[] = [
       'message' => '@token1 @token2',
       // Setup a link with a tag which is filtered by
       // \Drupal\Component\Utility\Xss::filterAdmin() in order to make sure
       // that strings which are not marked as safe get filtered.
-      'variables' => array(
+      'variables' => [
         '@token1' => $this->randomMachineName(),
         '@token2' => $this->randomMachineName(),
         'link' => '<a href="' . \Drupal::url('<front>') . '"><object>Link</object></a>',
-      ),
-    );
+      ],
+    ];
     $logger_factory = $this->container->get('logger.factory');
     foreach ($entries as $entry) {
-      $entry += array(
+      $entry += [
         'type' => 'test-views',
         'severity' => RfcLogLevel::NOTICE,
-      );
+      ];
       $logger_factory->get($entry['type'])->log($entry['severity'], $entry['message'], $entry['variables']);
     }
 
diff --git a/core/modules/dynamic_page_cache/tests/src/Functional/DynamicPageCacheIntegrationTest.php b/core/modules/dynamic_page_cache/tests/src/Functional/DynamicPageCacheIntegrationTest.php
index 5b8e5d7..ffa8f43 100644
--- a/core/modules/dynamic_page_cache/tests/src/Functional/DynamicPageCacheIntegrationTest.php
+++ b/core/modules/dynamic_page_cache/tests/src/Functional/DynamicPageCacheIntegrationTest.php
@@ -94,11 +94,11 @@ public function testDynamicPageCache() {
     // Controllers returning render arrays, rendered as anything except a HTML
     // response, are ignored by Dynamic Page Cache (but only because those
     // wrapper formats' responses do not implement CacheableResponseInterface).
-    $this->drupalGet('dynamic-page-cache-test/html', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax')));
+    $this->drupalGet('dynamic-page-cache-test/html', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertFalse($this->drupalGetHeader(DynamicPageCacheSubscriber::HEADER), 'Render array returned, rendered as AJAX response: Dynamic Page Cache is ignoring.');
-    $this->drupalGet('dynamic-page-cache-test/html', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog')));
+    $this->drupalGet('dynamic-page-cache-test/html', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog']]);
     $this->assertFalse($this->drupalGetHeader(DynamicPageCacheSubscriber::HEADER), 'Render array returned, rendered as dialog response: Dynamic Page Cache is ignoring.');
-    $this->drupalGet('dynamic-page-cache-test/html', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal')));
+    $this->drupalGet('dynamic-page-cache-test/html', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal']]);
     $this->assertFalse($this->drupalGetHeader(DynamicPageCacheSubscriber::HEADER), 'Render array returned, rendered as modal response: Dynamic Page Cache is ignoring.');
 
     // Admin routes are ignored by Dynamic Page Cache.
diff --git a/core/modules/editor/editor.admin.inc b/core/modules/editor/editor.admin.inc
index 83bc2cf..f91db4b 100644
--- a/core/modules/editor/editor.admin.inc
+++ b/core/modules/editor/editor.admin.inc
@@ -27,77 +27,77 @@
 function editor_image_upload_settings_form(Editor $editor) {
   // Defaults.
   $image_upload = $editor->getImageUploadSettings();
-  $image_upload += array(
+  $image_upload += [
     'status' => FALSE,
     'scheme' => file_default_scheme(),
     'directory' => 'inline-images',
     'max_size' => '',
-    'max_dimensions' => array('width' => '', 'height' => ''),
-  );
+    'max_dimensions' => ['width' => '', 'height' => ''],
+  ];
 
-  $form['status'] = array(
+  $form['status'] = [
     '#type' => 'checkbox',
     '#title' => t('Enable image uploads'),
     '#default_value' => $image_upload['status'],
-    '#attributes' => array(
+    '#attributes' => [
       'data-editor-image-upload' => 'status',
-    ),
-  );
-  $show_if_image_uploads_enabled = array(
-    'visible' => array(
-      ':input[data-editor-image-upload="status"]' => array('checked' => TRUE),
-    ),
-  );
+    ],
+  ];
+  $show_if_image_uploads_enabled = [
+    'visible' => [
+      ':input[data-editor-image-upload="status"]' => ['checked' => TRUE],
+    ],
+  ];
 
   // Any visible, writable wrapper can potentially be used for uploads,
   // including a remote file system that integrates with a CDN.
   $options = \Drupal::service('stream_wrapper_manager')->getDescriptions(StreamWrapperInterface::WRITE_VISIBLE);
   if (!empty($options)) {
-    $form['scheme'] = array(
+    $form['scheme'] = [
       '#type' => 'radios',
       '#title' => t('File storage'),
       '#default_value' => $image_upload['scheme'],
       '#options' => $options,
       '#states' => $show_if_image_uploads_enabled,
       '#access' => count($options) > 1,
-    );
+    ];
   }
   // Set data- attributes with human-readable names for all possible stream
   // wrappers, so that drupal.ckeditor.drupalimage.admin's summary rendering
   // can use that.
   foreach (\Drupal::service('stream_wrapper_manager')->getNames(StreamWrapperInterface::WRITE_VISIBLE) as $scheme => $name) {
-    $form['scheme'][$scheme]['#attributes']['data-label'] = t('Storage: @name', array('@name' => $name));
+    $form['scheme'][$scheme]['#attributes']['data-label'] = t('Storage: @name', ['@name' => $name]);
   }
 
-  $form['directory'] = array(
+  $form['directory'] = [
     '#type' => 'textfield',
     '#default_value' => $image_upload['directory'],
     '#title' => t('Upload directory'),
     '#description' => t("A directory relative to Drupal's files directory where uploaded images will be stored."),
     '#states' => $show_if_image_uploads_enabled,
-  );
+  ];
 
   $default_max_size = format_size(file_upload_max_size());
-  $form['max_size'] = array(
+  $form['max_size'] = [
     '#type' => 'textfield',
     '#default_value' => $image_upload['max_size'],
     '#title' => t('Maximum file size'),
-    '#description' => t('If this is left empty, then the file size will be limited by the PHP maximum upload size of @size.', array('@size' => $default_max_size)),
+    '#description' => t('If this is left empty, then the file size will be limited by the PHP maximum upload size of @size.', ['@size' => $default_max_size]),
     '#maxlength' => 20,
     '#size' => 10,
     '#placeholder' => $default_max_size,
     '#states' => $show_if_image_uploads_enabled,
-  );
+  ];
 
-  $form['max_dimensions'] = array(
+  $form['max_dimensions'] = [
     '#type' => 'item',
     '#title' => t('Maximum dimensions'),
     '#field_prefix' => '<div class="container-inline clearfix">',
     '#field_suffix' => '</div>',
     '#description' => t('Images larger than these dimensions will be scaled down.'),
     '#states' => $show_if_image_uploads_enabled,
-  );
-  $form['max_dimensions']['width'] = array(
+  ];
+  $form['max_dimensions']['width'] = [
     '#title' => t('Width'),
     '#title_display' => 'invisible',
     '#type' => 'number',
@@ -109,8 +109,8 @@ function editor_image_upload_settings_form(Editor $editor) {
     '#placeholder' => t('width'),
     '#field_suffix' => ' x ',
     '#states' => $show_if_image_uploads_enabled,
-  );
-  $form['max_dimensions']['height'] = array(
+  ];
+  $form['max_dimensions']['height'] = [
     '#title' => t('Height'),
     '#title_display' => 'invisible',
     '#type' => 'number',
@@ -122,7 +122,7 @@ function editor_image_upload_settings_form(Editor $editor) {
     '#placeholder' => t('height'),
     '#field_suffix' => t('pixels'),
     '#states' => $show_if_image_uploads_enabled,
-  );
+  ];
 
   return $form;
 }
diff --git a/core/modules/editor/editor.api.php b/core/modules/editor/editor.api.php
index 2fd9fa4..6485a1e 100644
--- a/core/modules/editor/editor.api.php
+++ b/core/modules/editor/editor.api.php
@@ -36,7 +36,7 @@ function hook_editor_info_alter(array &$editors) {
 function hook_editor_js_settings_alter(array &$settings) {
   if (isset($settings['editor']['formats']['basic_html'])) {
     $settings['editor']['formats']['basic_html']['editor'] = 'MyDifferentEditor';
-    $settings['editor']['formats']['basic_html']['editorSettings']['buttons'] = array('strong', 'italic', 'underline');
+    $settings['editor']['formats']['basic_html']['editorSettings']['buttons'] = ['strong', 'italic', 'underline'];
   }
 }
 
diff --git a/core/modules/editor/editor.module b/core/modules/editor/editor.module
index 8df1f04..04e4cd5 100644
--- a/core/modules/editor/editor.module
+++ b/core/modules/editor/editor.module
@@ -25,13 +25,13 @@ function editor_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.editor':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Text Editor module provides a framework that other modules (such as <a href=":ckeditor">CKEditor module</a>) can use to provide toolbars and other functionality that allow users to format text more easily than typing HTML tags directly. For more information, see the <a href=":documentation">online documentation for the Text Editor module</a>.', array(':documentation' => 'https://www.drupal.org/documentation/modules/editor', ':ckeditor' => (\Drupal::moduleHandler()->moduleExists('ckeditor')) ? \Drupal::url('help.page', array('name' => 'ckeditor')) : '#')) . '</p>';
+      $output .= '<p>' . t('The Text Editor module provides a framework that other modules (such as <a href=":ckeditor">CKEditor module</a>) can use to provide toolbars and other functionality that allow users to format text more easily than typing HTML tags directly. For more information, see the <a href=":documentation">online documentation for the Text Editor module</a>.', [':documentation' => 'https://www.drupal.org/documentation/modules/editor', ':ckeditor' => (\Drupal::moduleHandler()->moduleExists('ckeditor')) ? \Drupal::url('help.page', ['name' => 'ckeditor']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Installing text editors') . '</dt>';
-      $output .= '<dd>' . t('The Text Editor module provides a framework for managing editors. To use it, you also need to enable a text editor. This can either be the core <a href=":ckeditor">CKEditor module</a>, which can be enabled on the <a href=":extend">Extend page</a>, or a contributed module for any other text editor. When installing a contributed text editor module, be sure to check the installation instructions, because you will most likely need to download and install an external library as well as the Drupal module.', array(':ckeditor' => (\Drupal::moduleHandler()->moduleExists('ckeditor')) ? \Drupal::url('help.page', array('name' => 'ckeditor')) : '#', ':extend' => \Drupal::url('system.modules_list'))) . '</dd>';
+      $output .= '<dd>' . t('The Text Editor module provides a framework for managing editors. To use it, you also need to enable a text editor. This can either be the core <a href=":ckeditor">CKEditor module</a>, which can be enabled on the <a href=":extend">Extend page</a>, or a contributed module for any other text editor. When installing a contributed text editor module, be sure to check the installation instructions, because you will most likely need to download and install an external library as well as the Drupal module.', [':ckeditor' => (\Drupal::moduleHandler()->moduleExists('ckeditor')) ? \Drupal::url('help.page', ['name' => 'ckeditor']) : '#', ':extend' => \Drupal::url('system.modules_list')]) . '</dd>';
       $output .= '<dt>' . t('Enabling a text editor for a text format') . '</dt>';
-      $output .= '<dd>' . t('On the <a href=":formats">Text formats and editors page</a> you can see which text editor is associated with each text format. You can change this by clicking on the <em>Configure</em> link, and then choosing a text editor or <em>none</em> from the <em>Text editor</em> drop-down list. The text editor will then be displayed with any text field for which this text format is chosen.', array(':formats' => \Drupal::url('filter.admin_overview'))) . '</dd>';
+      $output .= '<dd>' . t('On the <a href=":formats">Text formats and editors page</a> you can see which text editor is associated with each text format. You can change this by clicking on the <em>Configure</em> link, and then choosing a text editor or <em>none</em> from the <em>Text editor</em> drop-down list. The text editor will then be displayed with any text field for which this text format is chosen.', [':formats' => \Drupal::url('filter.admin_overview')]) . '</dd>';
       $output .= '<dt>' . t('Configuring a text editor') . '</dt>';
       $output .= '<dd>' . t('Once a text editor is associated with a text format, you can configure it by clicking on the <em>Configure</em> link for this format. Depending on the specific text editor, you can configure it for example by adding buttons to its toolbar. Typically these buttons provide formatting or editing tools, and they often insert HTML tags into the field source. For details, see the help page of the specific text editor.') . '</dd>';
       $output .= '<dt>' . t('Using different text editors and formats') . '</dt>';
@@ -86,7 +86,7 @@ function editor_form_filter_admin_overview_alter(&$form, FormStateInterface $for
   // @todo Cleanup column injection: https://www.drupal.org/node/1876718.
   // Splice in the column for "Text editor" into the header.
   $position = array_search('name', $form['formats']['#header']) + 1;
-  $start = array_splice($form['formats']['#header'], 0, $position, array('editor' => t('Text editor')));
+  $start = array_splice($form['formats']['#header'], 0, $position, ['editor' => t('Text editor')]);
   $form['formats']['#header'] = array_merge($start, $form['formats']['#header']);
 
   // Then splice in the name of each text editor for each text format.
@@ -94,7 +94,7 @@ function editor_form_filter_admin_overview_alter(&$form, FormStateInterface $for
   foreach (Element::children($form['formats']) as $format_id) {
     $editor = editor_load($format_id);
     $editor_name = ($editor && isset($editors[$editor->getEditor()])) ? $editors[$editor->getEditor()]['label'] : '—';
-    $editor_column['editor'] = array('#markup' => $editor_name);
+    $editor_column['editor'] = ['#markup' => $editor_name];
     $position = array_search('name', array_keys($form['formats'][$format_id])) + 1;
     $start = array_splice($form['formats'][$format_id], 0, $position, $editor_column);
     $form['formats'][$format_id] = array_merge($start, $form['formats'][$format_id]);
@@ -116,37 +116,37 @@ function editor_form_filter_format_form_alter(&$form, FormStateInterface $form_s
   // Associate a text editor with this text format.
   $manager = \Drupal::service('plugin.manager.editor');
   $editor_options = $manager->listOptions();
-  $form['editor'] = array(
+  $form['editor'] = [
     // Position the editor selection before the filter settings (weight of 0),
     // but after the filter label and name (weight of -20).
     '#weight' => -9,
-  );
-  $form['editor']['editor'] = array(
+  ];
+  $form['editor']['editor'] = [
     '#type' => 'select',
     '#title' => t('Text editor'),
     '#options' => $editor_options,
     '#empty_option' => t('None'),
     '#default_value' => $editor ? $editor->getEditor() : '',
-    '#ajax' => array(
-      'trigger_as' => array('name' => 'editor_configure'),
+    '#ajax' => [
+      'trigger_as' => ['name' => 'editor_configure'],
       'callback' => 'editor_form_filter_admin_form_ajax',
       'wrapper' => 'editor-settings-wrapper',
-    ),
+    ],
     '#weight' => -10,
-  );
-  $form['editor']['configure'] = array(
+  ];
+  $form['editor']['configure'] = [
     '#type' => 'submit',
     '#name' => 'editor_configure',
     '#value' => t('Configure'),
-    '#limit_validation_errors' => array(array('editor')),
-    '#submit' => array('editor_form_filter_admin_format_editor_configure'),
-    '#ajax' => array(
+    '#limit_validation_errors' => [['editor']],
+    '#submit' => ['editor_form_filter_admin_format_editor_configure'],
+    '#ajax' => [
       'callback' => 'editor_form_filter_admin_form_ajax',
       'wrapper' => 'editor-settings-wrapper',
-    ),
+    ],
     '#weight' => -10,
-    '#attributes' => array('class' => array('js-hide')),
-  );
+    '#attributes' => ['class' => ['js-hide']],
+  ];
 
   // If there aren't any options (other than "None"), disable the select list.
   if (empty($editor_options)) {
@@ -154,27 +154,27 @@ function editor_form_filter_format_form_alter(&$form, FormStateInterface $form_s
     $form['editor']['editor']['#description'] = t('This option is disabled because no modules that provide a text editor are currently enabled.');
   }
 
-  $form['editor']['settings'] = array(
+  $form['editor']['settings'] = [
     '#tree' => TRUE,
     '#weight' => -8,
     '#type' => 'container',
     '#id' => 'editor-settings-wrapper',
-    '#attached' => array(
-      'library' => array(
+    '#attached' => [
+      'library' => [
         'editor/drupal.editor.admin',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   // Add editor-specific validation and submit handlers.
   if ($editor) {
     /** @var $plugin \Drupal\editor\Plugin\EditorPluginInterface */
     $plugin = $manager->createInstance($editor->getEditor());
-    $settings_form = array();
-    $settings_form['#element_validate'][] = array($plugin, 'validateConfigurationForm');
+    $settings_form = [];
+    $settings_form['#element_validate'][] = [$plugin, 'validateConfigurationForm'];
     $form['editor']['settings']['subform'] = $plugin->buildConfigurationForm($settings_form, $form_state);
-    $form['editor']['settings']['subform']['#parents'] = array('editor', 'settings');
-    $form['actions']['submit']['#submit'][] = array($plugin, 'submitConfigurationForm');
+    $form['editor']['settings']['subform']['#parents'] = ['editor', 'settings'];
+    $form['actions']['submit']['#submit'][] = [$plugin, 'submitConfigurationForm'];
   }
 
   $form['#validate'][] = 'editor_form_filter_admin_format_validate';
@@ -186,7 +186,7 @@ function editor_form_filter_format_form_alter(&$form, FormStateInterface $form_s
  */
 function editor_form_filter_admin_format_editor_configure($form, FormStateInterface $form_state) {
   $editor = $form_state->get('editor');
-  $editor_value = $form_state->getValue(array('editor', 'editor'));
+  $editor_value = $form_state->getValue(['editor', 'editor']);
   if ($editor_value !== NULL) {
     if ($editor_value === '') {
       $form_state->set('editor', FALSE);
@@ -236,7 +236,7 @@ function editor_form_filter_admin_format_submit($form, FormStateInterface $form_
   $format = $form_state->getFormObject()->getEntity();
   $format_id = $format->isNew() ? NULL : $format->id();
   $original_editor = editor_load($format_id);
-  if ($original_editor && $original_editor->getEditor() != $form_state->getValue(array('editor', 'editor'))) {
+  if ($original_editor && $original_editor->getEditor() != $form_state->getValue(['editor', 'editor'])) {
     $original_editor->delete();
   }
 
@@ -550,7 +550,7 @@ function editor_file_download($uri) {
  *   An array of file entity UUIDs.
  */
 function _editor_get_file_uuids_by_field(EntityInterface $entity) {
-  $uuids = array();
+  $uuids = [];
 
   $formatted_text_fields = _editor_get_formatted_text_fields($entity);
   foreach ($formatted_text_fields as $formatted_text_field) {
@@ -579,12 +579,12 @@ function _editor_get_file_uuids_by_field(EntityInterface $entity) {
 function _editor_get_formatted_text_fields(FieldableEntityInterface $entity) {
   $field_definitions = $entity->getFieldDefinitions();
   if (empty($field_definitions)) {
-    return array();
+    return [];
   }
 
   // Only return formatted text fields.
   return array_keys(array_filter($field_definitions, function (FieldDefinitionInterface $definition) {
-    return in_array($definition->getType(), array('text', 'text_long', 'text_with_summary'), TRUE);
+    return in_array($definition->getType(), ['text', 'text_long', 'text_with_summary'], TRUE);
   }));
 }
 
@@ -601,7 +601,7 @@ function _editor_get_formatted_text_fields(FieldableEntityInterface $entity) {
 function _editor_parse_file_uuids($text) {
   $dom = Html::load($text);
   $xpath = new \DOMXPath($dom);
-  $uuids = array();
+  $uuids = [];
   foreach ($xpath->query('//*[@data-entity-type="file" and @data-entity-uuid]') as $node) {
     $uuids[] = $node->getAttribute('data-entity-uuid');
   }
diff --git a/core/modules/editor/src/Ajax/EditorDialogSave.php b/core/modules/editor/src/Ajax/EditorDialogSave.php
index b4d1c27..48a7867 100644
--- a/core/modules/editor/src/Ajax/EditorDialogSave.php
+++ b/core/modules/editor/src/Ajax/EditorDialogSave.php
@@ -33,10 +33,10 @@ public function __construct($values) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'editorDialogSave',
       'values' => $this->values,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/editor/src/EditorController.php b/core/modules/editor/src/EditorController.php
index 2ef0b04..995ff7c 100644
--- a/core/modules/editor/src/EditorController.php
+++ b/core/modules/editor/src/EditorController.php
@@ -38,7 +38,7 @@ public function getUntransformedText(EntityInterface $entity, $field_name, $lang
 
     // Direct text editing is only supported for single-valued fields.
     $field = $entity->getTranslation($langcode)->$field_name;
-    $editable_text = check_markup($field->value, $field->format, $langcode, array(FilterInterface::TYPE_TRANSFORM_REVERSIBLE, FilterInterface::TYPE_TRANSFORM_IRREVERSIBLE));
+    $editable_text = check_markup($field->value, $field->format, $langcode, [FilterInterface::TYPE_TRANSFORM_REVERSIBLE, FilterInterface::TYPE_TRANSFORM_IRREVERSIBLE]);
     $response->addCommand(new GetUntransformedTextCommand($editable_text));
 
     return $response;
diff --git a/core/modules/editor/src/EditorXssFilter/Standard.php b/core/modules/editor/src/EditorXssFilter/Standard.php
index 9a8b2b1..19d5c06 100644
--- a/core/modules/editor/src/EditorXssFilter/Standard.php
+++ b/core/modules/editor/src/EditorXssFilter/Standard.php
@@ -35,7 +35,7 @@ public static function filterXss($html, FilterFormatInterface $format, FilterFor
     //   directly.
     // <iframe> is considered safe because it only allows HTML content to be
     // embedded, hence ensuring the same origin policy always applies.
-    $dangerous_tags = array('script', 'style', 'link', 'embed', 'object');
+    $dangerous_tags = ['script', 'style', 'link', 'embed', 'object'];
 
     // Simply blacklisting these five dangerous tags would bring safety, but
     // also user frustration: what if a text format is configured to allow
@@ -130,13 +130,13 @@ protected static function filterXssDataAttributes($html) {
    */
   protected static function getAllowedTags($restrictions) {
     if ($restrictions === FALSE || !isset($restrictions['allowed'])) {
-      return array();
+      return [];
     }
 
     $allowed_tags = array_keys($restrictions['allowed']);
     // Exclude the wildcard tag, which is used to set attribute restrictions on
     // all tags simultaneously.
-    $allowed_tags = array_diff($allowed_tags, array('*'));
+    $allowed_tags = array_diff($allowed_tags, ['*']);
 
     return $allowed_tags;
   }
@@ -154,7 +154,7 @@ protected static function getAllowedTags($restrictions) {
    */
   protected static function getForbiddenTags($restrictions) {
     if ($restrictions === FALSE || !isset($restrictions['forbidden_tags'])) {
-      return array();
+      return [];
     }
     else {
       return $restrictions['forbidden_tags'];
diff --git a/core/modules/editor/src/Element.php b/core/modules/editor/src/Element.php
index b83e9dc..9017310 100644
--- a/core/modules/editor/src/Element.php
+++ b/core/modules/editor/src/Element.php
@@ -64,14 +64,14 @@ function preRenderTextFormat(array $element) {
     if (!$element['format']['format']['#access']) {
       // Use the first (and only) available text format.
       $format_id = $format_ids[0];
-      $element['format']['editor'] = array(
+      $element['format']['editor'] = [
         '#type' => 'hidden',
         '#name' => $element['format']['format']['#name'],
         '#value' => $format_id,
-        '#attributes' => array(
+        '#attributes' => [
           'data-editor-for' => $field_id,
-        ),
-      );
+        ],
+      ];
     }
     // Otherwise, attach to text format selector.
     else {
diff --git a/core/modules/editor/src/Entity/Editor.php b/core/modules/editor/src/Entity/Editor.php
index f504cec..1a417d7 100644
--- a/core/modules/editor/src/Entity/Editor.php
+++ b/core/modules/editor/src/Entity/Editor.php
@@ -49,14 +49,14 @@ class Editor extends ConfigEntityBase implements EditorInterface {
    *
    * @var array
    */
-  protected $settings = array();
+  protected $settings = [];
 
   /**
    * The structured array of image upload settings.
    *
    * @var array
    */
-  protected $image_upload = array();
+  protected $image_upload = [];
 
   /**
    * The filter format this text editor is associated with.
diff --git a/core/modules/editor/src/Form/EditorImageDialog.php b/core/modules/editor/src/Form/EditorImageDialog.php
index 6f18546..547032e 100644
--- a/core/modules/editor/src/Form/EditorImageDialog.php
+++ b/core/modules/editor/src/Form/EditorImageDialog.php
@@ -94,26 +94,26 @@ public function buildForm(array $form, FormStateInterface $form_state, Editor $e
     $existing_file = isset($image_element['data-entity-uuid']) ? \Drupal::entityManager()->loadEntityByUuid('file', $image_element['data-entity-uuid']) : NULL;
     $fid = $existing_file ? $existing_file->id() : NULL;
 
-    $form['fid'] = array(
+    $form['fid'] = [
       '#title' => $this->t('Image'),
       '#type' => 'managed_file',
       '#upload_location' => $image_upload['scheme'] . '://' . $image_upload['directory'],
-      '#default_value' => $fid ? array($fid) : NULL,
-      '#upload_validators' => array(
-        'file_validate_extensions' => array('gif png jpg jpeg'),
-        'file_validate_size' => array($max_filesize),
-        'file_validate_image_resolution' => array($max_dimensions),
-      ),
+      '#default_value' => $fid ? [$fid] : NULL,
+      '#upload_validators' => [
+        'file_validate_extensions' => ['gif png jpg jpeg'],
+        'file_validate_size' => [$max_filesize],
+        'file_validate_image_resolution' => [$max_dimensions],
+      ],
       '#required' => TRUE,
-    );
+    ];
 
-    $form['attributes']['src'] = array(
+    $form['attributes']['src'] = [
       '#title' => $this->t('URL'),
       '#type' => 'textfield',
       '#default_value' => isset($image_element['src']) ? $image_element['src'] : '',
       '#maxlength' => 2048,
       '#required' => TRUE,
-    );
+    ];
 
     // If the editor has image uploads enabled, show a managed_file form item,
     // otherwise show a (file URL) text form item.
@@ -137,7 +137,7 @@ public function buildForm(array $form, FormStateInterface $form_state, Editor $e
     if ($alt === '' && !empty($image_element['src'])) {
       $alt = '""';
     }
-    $form['attributes']['alt'] = array(
+    $form['attributes']['alt'] = [
       '#title' => $this->t('Alternative text'),
       '#placeholder' => $this->t('Short description for the visually impaired'),
       '#type' => 'textfield',
@@ -145,51 +145,51 @@ public function buildForm(array $form, FormStateInterface $form_state, Editor $e
       '#required_error' => $this->t('Alternative text is required.<br />(Only in rare cases should this be left empty. To create empty alternative text, enter <code>""</code> — two double quotes without any content).'),
       '#default_value' => $alt,
       '#maxlength' => 2048,
-    );
+    ];
 
     // When Drupal core's filter_align is being used, the text editor may
     // offer the ability to change the alignment.
     if (isset($image_element['data-align']) && $editor->getFilterFormat()->filters('filter_align')->status) {
-      $form['align'] = array(
+      $form['align'] = [
         '#title' => $this->t('Align'),
         '#type' => 'radios',
-        '#options' => array(
+        '#options' => [
           'none' => $this->t('None'),
           'left' => $this->t('Left'),
           'center' => $this->t('Center'),
           'right' => $this->t('Right'),
-        ),
+        ],
         '#default_value' => $image_element['data-align'] === '' ? 'none' : $image_element['data-align'],
-        '#wrapper_attributes' => array('class' => array('container-inline')),
-        '#attributes' => array('class' => array('container-inline')),
-        '#parents' => array('attributes', 'data-align'),
-      );
+        '#wrapper_attributes' => ['class' => ['container-inline']],
+        '#attributes' => ['class' => ['container-inline']],
+        '#parents' => ['attributes', 'data-align'],
+      ];
     }
 
     // When Drupal core's filter_caption is being used, the text editor may
     // offer the ability to in-place edit the image's caption: show a toggle.
     if (isset($image_element['hasCaption']) && $editor->getFilterFormat()->filters('filter_caption')->status) {
-      $form['caption'] = array(
+      $form['caption'] = [
         '#title' => $this->t('Caption'),
         '#type' => 'checkbox',
         '#default_value' => $image_element['hasCaption'] === 'true',
-        '#parents' => array('attributes', 'hasCaption'),
-      );
+        '#parents' => ['attributes', 'hasCaption'],
+      ];
     }
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['save_modal'] = array(
+    ];
+    $form['actions']['save_modal'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
       // No regular submit-handler. This form only works via JavaScript.
-      '#submit' => array(),
-      '#ajax' => array(
+      '#submit' => [],
+      '#ajax' => [
         'callback' => '::submitForm',
         'event' => 'click',
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
@@ -202,22 +202,22 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
     // Convert any uploaded files from the FID values to data-entity-uuid
     // attributes and set data-entity-type to 'file'.
-    $fid = $form_state->getValue(array('fid', 0));
+    $fid = $form_state->getValue(['fid', 0]);
     if (!empty($fid)) {
       $file = $this->fileStorage->load($fid);
       $file_url = file_create_url($file->getFileUri());
       // Transform absolute image URLs to relative image URLs: prevent problems
       // on multisite set-ups and prevent mixed content errors.
       $file_url = file_url_transform_relative($file_url);
-      $form_state->setValue(array('attributes', 'src'), $file_url);
-      $form_state->setValue(array('attributes', 'data-entity-uuid'), $file->uuid());
-      $form_state->setValue(array('attributes', 'data-entity-type'), 'file');
+      $form_state->setValue(['attributes', 'src'], $file_url);
+      $form_state->setValue(['attributes', 'data-entity-uuid'], $file->uuid());
+      $form_state->setValue(['attributes', 'data-entity-type'], 'file');
     }
 
     // When the alt attribute is set to two double quotes, transform it to the
     // empty string: two double quotes signify "empty alt attribute". See above.
-    if (trim($form_state->getValue(array('attributes', 'alt'))) === '""') {
-      $form_state->setValue(array('attributes', 'alt'), '');
+    if (trim($form_state->getValue(['attributes', 'alt'])) === '""') {
+      $form_state->setValue(['attributes', 'alt'], '');
     }
 
     if ($form_state->getErrors()) {
diff --git a/core/modules/editor/src/Form/EditorLinkDialog.php b/core/modules/editor/src/Form/EditorLinkDialog.php
index 05703ba..724f413 100644
--- a/core/modules/editor/src/Form/EditorLinkDialog.php
+++ b/core/modules/editor/src/Form/EditorLinkDialog.php
@@ -32,7 +32,7 @@ public function buildForm(array $form, FormStateInterface $form_state, Editor $e
     // The default values are set directly from \Drupal::request()->request,
     // provided by the editor plugin opening the dialog.
     $user_input = $form_state->getUserInput();
-    $input = isset($user_input['editor_object']) ? $user_input['editor_object'] : array();
+    $input = isset($user_input['editor_object']) ? $user_input['editor_object'] : [];
 
     $form['#tree'] = TRUE;
     $form['#attached']['library'][] = 'editor/drupal.editor.dialog';
@@ -41,26 +41,26 @@ public function buildForm(array $form, FormStateInterface $form_state, Editor $e
 
     // Everything under the "attributes" key is merged directly into the
     // generated link tag's attributes.
-    $form['attributes']['href'] = array(
+    $form['attributes']['href'] = [
       '#title' => $this->t('URL'),
       '#type' => 'textfield',
       '#default_value' => isset($input['href']) ? $input['href'] : '',
       '#maxlength' => 2048,
-    );
+    ];
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['save_modal'] = array(
+    ];
+    $form['actions']['save_modal'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
       // No regular submit-handler. This form only works via JavaScript.
-      '#submit' => array(),
-      '#ajax' => array(
+      '#submit' => [],
+      '#ajax' => [
         'callback' => '::submitForm',
         'event' => 'click',
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
diff --git a/core/modules/editor/src/Plugin/EditorBase.php b/core/modules/editor/src/Plugin/EditorBase.php
index bd429d1..11cf01b 100644
--- a/core/modules/editor/src/Plugin/EditorBase.php
+++ b/core/modules/editor/src/Plugin/EditorBase.php
@@ -26,7 +26,7 @@
    * {@inheritdoc}
    */
   public function getDefaultSettings() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/editor/src/Plugin/EditorManager.php b/core/modules/editor/src/Plugin/EditorManager.php
index 5ae5bd2..4585da7 100644
--- a/core/modules/editor/src/Plugin/EditorManager.php
+++ b/core/modules/editor/src/Plugin/EditorManager.php
@@ -40,7 +40,7 @@ public function __construct(\Traversable $namespaces, CacheBackendInterface $cac
    *   An array of translated text editor labels, keyed by ID.
    */
   public function listOptions() {
-    $options = array();
+    $options = [];
     foreach ($this->getDefinitions() as $key => $definition) {
       $options[$key] = $definition['label'];
     }
@@ -59,9 +59,9 @@ public function listOptions() {
    * @see \Drupal\Core\Render\AttachmentsResponseProcessorInterface::processAttachments()
    */
   public function getAttachments(array $format_ids) {
-    $attachments = array('library' => array());
+    $attachments = ['library' => []];
 
-    $settings = array();
+    $settings = [];
     foreach ($format_ids as $format_id) {
       $editor = editor_load($format_id);
       if (!$editor) {
@@ -75,20 +75,20 @@ public function getAttachments(array $format_ids) {
       $attachments['library'] = array_merge($attachments['library'], $plugin->getLibraries($editor));
 
       // Format-specific JavaScript settings.
-      $settings['editor']['formats'][$format_id] = array(
+      $settings['editor']['formats'][$format_id] = [
         'format' => $format_id,
         'editor' => $editor->getEditor(),
         'editorSettings' => $plugin->getJSSettings($editor),
         'editorSupportsContentFiltering' => $plugin_definition['supports_content_filtering'],
         'isXssSafe' => $plugin_definition['is_xss_safe'],
-      );
+      ];
     }
 
     // Allow other modules to alter all JavaScript settings.
     $this->moduleHandler->alter('editor_js_settings', $settings);
 
     if (empty($attachments['library']) && empty($settings)) {
-      return array();
+      return [];
     }
 
     $attachments['drupalSettings'] = $settings;
diff --git a/core/modules/editor/src/Plugin/Filter/EditorFileReference.php b/core/modules/editor/src/Plugin/Filter/EditorFileReference.php
index 5eb76c6..cf725a7 100644
--- a/core/modules/editor/src/Plugin/Filter/EditorFileReference.php
+++ b/core/modules/editor/src/Plugin/Filter/EditorFileReference.php
@@ -68,7 +68,7 @@ public function process($text, $langcode) {
     if (stristr($text, 'data-entity-type="file"') !== FALSE) {
       $dom = Html::load($text);
       $xpath = new \DOMXPath($dom);
-      $processed_uuids = array();
+      $processed_uuids = [];
       foreach ($xpath->query('//*[@data-entity-type="file" and @data-entity-uuid]') as $node) {
         $uuid = $node->getAttribute('data-entity-uuid');
 
diff --git a/core/modules/editor/src/Plugin/InPlaceEditor/Editor.php b/core/modules/editor/src/Plugin/InPlaceEditor/Editor.php
index 5d50342..27a700b 100644
--- a/core/modules/editor/src/Plugin/InPlaceEditor/Editor.php
+++ b/core/modules/editor/src/Plugin/InPlaceEditor/Editor.php
@@ -60,7 +60,7 @@ function getMetadata(FieldItemListInterface $items) {
    */
   protected function textFormatHasTransformationFilters($format_id) {
     $format = FilterFormat::load($format_id);
-    return (bool) count(array_intersect(array(FilterInterface::TYPE_TRANSFORM_REVERSIBLE, FilterInterface::TYPE_TRANSFORM_IRREVERSIBLE), $format->getFiltertypes()));
+    return (bool) count(array_intersect([FilterInterface::TYPE_TRANSFORM_REVERSIBLE, FilterInterface::TYPE_TRANSFORM_IRREVERSIBLE], $format->getFiltertypes()));
   }
 
   /**
@@ -74,7 +74,7 @@ public function getAttachments() {
     $definitions = $manager->getDefinitions();
 
     // Filter the current user's formats to those that support inline editing.
-    $formats = array();
+    $formats = [];
     foreach ($user_format_ids as $format_id) {
       if ($editor = editor_load($format_id)) {
         $editor_id = $editor->getEditor();
diff --git a/core/modules/editor/src/Tests/EditorAdminTest.php b/core/modules/editor/src/Tests/EditorAdminTest.php
index 97d47b1..4315a6d 100644
--- a/core/modules/editor/src/Tests/EditorAdminTest.php
+++ b/core/modules/editor/src/Tests/EditorAdminTest.php
@@ -20,7 +20,7 @@ class EditorAdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'editor');
+  public static $modules = ['filter', 'editor'];
 
   /**
    * A user with the 'administer filters' permission.
@@ -33,16 +33,16 @@ protected function setUp() {
     parent::setUp();
 
     // Add text format.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
 
     // Create admin user.
-    $this->adminUser = $this->drupalCreateUser(array('administer filters'));
+    $this->adminUser = $this->drupalCreateUser(['administer filters']);
   }
 
   /**
@@ -83,9 +83,9 @@ public function testAddEditorToExistingFormat() {
     $this->verifyUnicornEditorConfiguration('filtered_html', FALSE);
 
     // Switch back to 'None' and check the Unicorn Editor's settings are gone.
-    $edit = array(
+    $edit = [
       'editor[editor]' => '',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'editor_configure');
     $unicorn_setting = $this->xpath('//input[@name="editor[settings][ponies_too]" and @type="checkbox" and @checked]');
     $this->assertTrue(count($unicorn_setting) === 0, "Unicorn Editor's settings form is no longer present.");
@@ -135,7 +135,7 @@ public function testDisableFormatWithEditor() {
     $this->drupalLogin($account);
 
     // The node edit page header.
-    $text = t('<em>Edit @type</em> @title', array('@type' => $node_type->label(), '@title' => $node->label()));
+    $text = t('<em>Edit @type</em> @title', ['@type' => $node_type->label(), '@title' => $node->label()]);
 
     // Go to node edit form.
     $this->drupalGet('node/' . $node->id() . '/edit');
@@ -162,10 +162,10 @@ protected function addEditorToNewFormat($format_id, $format_name) {
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('admin/config/content/formats/add');
     // Configure the text format name.
-    $edit = array(
+    $edit = [
       'name' => $format_name,
       'format' => $format_id,
-    );
+    ];
     $edit += $this->selectUnicornEditor();
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
   }
@@ -175,7 +175,7 @@ protected function addEditorToNewFormat($format_id, $format_name) {
    */
   protected function enableUnicornEditor() {
     if (!$this->container->get('module_handler')->moduleExists('editor_test')) {
-      $this->container->get('module_installer')->install(array('editor_test'));
+      $this->container->get('module_installer')->install(['editor_test']);
     }
   }
 
@@ -200,9 +200,9 @@ protected function selectUnicornEditor() {
     $this->assertNoRaw(t('This option is disabled because no modules that provide a text editor are currently enabled.'), 'Description for select absent that tells users to install a text editor module.');
 
     // Select the "Unicorn Editor" editor and click the "Configure" button.
-    $edit = array(
+    $edit = [
       'editor[editor]' => 'unicorn',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'editor_configure');
     $unicorn_setting = $this->xpath('//input[@name="editor[settings][ponies_too]" and @type="checkbox" and @checked]');
     $this->assertTrue(count($unicorn_setting), "Unicorn Editor's settings form is present.");
diff --git a/core/modules/editor/src/Tests/EditorLoadingTest.php b/core/modules/editor/src/Tests/EditorLoadingTest.php
index 88055e9..419215f 100644
--- a/core/modules/editor/src/Tests/EditorLoadingTest.php
+++ b/core/modules/editor/src/Tests/EditorLoadingTest.php
@@ -20,7 +20,7 @@ class EditorLoadingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'editor', 'editor_test', 'node');
+  public static $modules = ['filter', 'editor', 'editor_test', 'node'];
 
   /**
    * An untrusted user, with access to the 'plain_text' format.
@@ -51,57 +51,57 @@ protected function setUp() {
     \Drupal::service('plugin.manager.editor')->clearCachedDefinitions();
 
     // Add text formats.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
 
     // Create article node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
     // Create page node type, but remove the body.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'page',
       'name' => 'Page',
-    ));
+    ]);
     $body = FieldConfig::loadByName('node', 'page', 'body');
     $body->delete();
 
     // Create a formatted text field, which uses an <input type="text">.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_text',
       'entity_type' => 'node',
       'type' => 'text',
-    ))->save();
+    ])->save();
 
-    FieldConfig::create(array(
+    FieldConfig::create([
       'field_name' => 'field_text',
       'entity_type' => 'node',
       'label' => 'Textfield',
       'bundle' => 'page',
-    ))->save();
+    ])->save();
 
     entity_get_form_display('node', 'page', 'default')
       ->setComponent('field_text')
       ->save();
 
     // Create 3 users, each with access to different text formats.
-    $this->untrustedUser = $this->drupalCreateUser(array('create article content', 'edit any article content'));
-    $this->normalUser = $this->drupalCreateUser(array('create article content', 'edit any article content', 'use text format filtered_html'));
-    $this->privilegedUser = $this->drupalCreateUser(array('create article content', 'edit any article content', 'create page content', 'edit any page content', 'use text format filtered_html', 'use text format full_html'));
+    $this->untrustedUser = $this->drupalCreateUser(['create article content', 'edit any article content']);
+    $this->normalUser = $this->drupalCreateUser(['create article content', 'edit any article content', 'use text format filtered_html']);
+    $this->privilegedUser = $this->drupalCreateUser(['create article content', 'edit any article content', 'create page content', 'edit any page content', 'use text format filtered_html', 'use text format full_html']);
   }
 
   /**
@@ -112,13 +112,13 @@ public function testLoading() {
     $editor = Editor::create([
       'format' => 'full_html',
       'editor' => 'unicorn',
-      'image_upload' => array(
+      'image_upload' => [
         'status' => FALSE,
         'scheme' => file_default_scheme(),
         'directory' => 'inline-images',
         'max_size' => '',
-        'max_dimensions' => array('width' => '', 'height' => ''),
-      )
+        'max_dimensions' => ['width' => '', 'height' => ''],
+      ]
     ]);
     $editor->save();
 
@@ -140,13 +140,13 @@ public function testLoading() {
     $this->drupalLogin($this->privilegedUser);
     $this->drupalGet('node/add/article');
     list($settings, $editor_settings_present, $editor_js_present, $body, $format_selector) = $this->getThingsToCheck('body');
-    $expected = array('formats' => array('full_html' => array(
+    $expected = ['formats' => ['full_html' => [
       'format' => 'full_html',
       'editor' => 'unicorn',
-      'editorSettings' => array('ponyModeEnabled' => TRUE),
+      'editorSettings' => ['ponyModeEnabled' => TRUE],
       'editorSupportsContentFiltering' => TRUE,
       'isXssSafe' => FALSE,
-    )));
+    ]]];
     $this->assertTrue($editor_settings_present, "Text Editor module's JavaScript settings are on the page.");
     $this->assertIdentical($expected, $settings['editor'], "Text Editor module's JavaScript settings on the page are correct.");
     $this->assertTrue($editor_js_present, 'Text Editor JavaScript is present.');
@@ -174,13 +174,13 @@ public function testLoading() {
     $this->drupalLogin($this->untrustedUser);
     $this->drupalGet('node/add/article');
     list($settings, $editor_settings_present, $editor_js_present, $body, $format_selector) = $this->getThingsToCheck('body');
-    $expected = array('formats' => array('plain_text' => array(
+    $expected = ['formats' => ['plain_text' => [
       'format' => 'plain_text',
       'editor' => 'unicorn',
-      'editorSettings' => array('ponyModeEnabled' => TRUE),
+      'editorSettings' => ['ponyModeEnabled' => TRUE],
       'editorSupportsContentFiltering' => TRUE,
       'isXssSafe' => FALSE,
-    )));
+    ]]];
     $this->assertTrue($editor_settings_present, "Text Editor module's JavaScript settings are on the page.");
     $this->assertIdentical($expected, $settings['editor'], "Text Editor module's JavaScript settings on the page are correct.");
     $this->assertTrue($editor_js_present, 'Text Editor JavaScript is present.');
@@ -191,12 +191,12 @@ public function testLoading() {
 
     // Create an "article" node that uses the full_html text format, then try
     // to let the untrusted user edit it.
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'type' => 'article',
-      'body' => array(
-        array('value' => $this->randomMachineName(32), 'format' => 'full_html')
-      ),
-    ));
+      'body' => [
+        ['value' => $this->randomMachineName(32), 'format' => 'full_html']
+      ],
+    ]);
 
     // The untrusted user tries to edit content that is written in a text format
     // that (s)he is not allowed to use. The editor is still loaded. CKEditor,
@@ -220,23 +220,23 @@ public function testSupportedElementTypes() {
     $editor = Editor::create([
       'format' => 'full_html',
       'editor' => 'unicorn',
-      'image_upload' => array(
+      'image_upload' => [
         'status' => FALSE,
         'scheme' => file_default_scheme(),
         'directory' => 'inline-images',
         'max_size' => '',
-        'max_dimensions' => array('width' => '', 'height' => ''),
-      )
+        'max_dimensions' => ['width' => '', 'height' => ''],
+      ]
     ]);
     $editor->save();
 
     // Create an "page" node that uses the full_html text format.
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'type' => 'page',
-      'field_text' => array(
-        array('value' => $this->randomMachineName(32), 'format' => 'full_html')
-      ),
-    ));
+      'field_text' => [
+        ['value' => $this->randomMachineName(32), 'format' => 'full_html']
+      ],
+    ]);
 
     // Assert the unicorn editor works with textfields.
     $this->drupalLogin($this->privilegedUser);
@@ -268,7 +268,7 @@ public function testSupportedElementTypes() {
 
   protected function getThingsToCheck($field_name, $type = 'textarea') {
     $settings = $this->getDrupalSettings();
-    return array(
+    return [
       // JavaScript settings.
       $settings,
       // Editor.module's JS settings present.
@@ -279,7 +279,7 @@ protected function getThingsToCheck($field_name, $type = 'textarea') {
       $this->xpath('//' . $type . '[@id="edit-' . $field_name . '-0-value"]'),
       // Format selector.
       $this->xpath('//select[contains(@class, "filter-list")]'),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/editor/src/Tests/EditorSecurityTest.php b/core/modules/editor/src/Tests/EditorSecurityTest.php
index c771439..0c29a58 100644
--- a/core/modules/editor/src/Tests/EditorSecurityTest.php
+++ b/core/modules/editor/src/Tests/EditorSecurityTest.php
@@ -40,7 +40,7 @@ class EditorSecurityTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'editor', 'editor_test', 'node');
+  public static $modules = ['filter', 'editor', 'editor_test', 'node'];
 
   /**
    * User with access to Restricted HTML text format without text editor.
@@ -83,74 +83,74 @@ protected function setUp() {
     // With text formats 2, 3 and 5, we also associate a text editor that does
     // not guarantee XSS safety. "restricted" means the text format has XSS
     // filters on output, "unrestricted" means the opposite.
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'restricted_without_editor',
       'name' => 'Restricted HTML, without text editor',
       'weight' => 0,
-      'filters' => array(
+      'filters' => [
         // A filter of the FilterInterface::TYPE_HTML_RESTRICTOR type.
-        'filter_html' => array(
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<h2> <h3> <h4> <h5> <h6> <p> <br> <strong> <a>',
-          )
-        ),
-      ),
-    ));
+          ]
+        ],
+      ],
+    ]);
     $format->save();
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'restricted_with_editor',
       'name' => 'Restricted HTML, with text editor',
       'weight' => 1,
-      'filters' => array(
+      'filters' => [
         // A filter of the FilterInterface::TYPE_HTML_RESTRICTOR type.
-        'filter_html' => array(
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<h2> <h3> <h4> <h5> <h6> <p> <br> <strong> <a>',
-          )
-        ),
-      ),
-    ));
+          ]
+        ],
+      ],
+    ]);
     $format->save();
     $editor = Editor::create([
       'format' => 'restricted_with_editor',
       'editor' => 'unicorn',
     ]);
     $editor->save();
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'restricted_plus_dangerous_tag_with_editor',
       'name' => 'Restricted HTML, dangerous tag allowed, with text editor',
       'weight' => 1,
-      'filters' => array(
+      'filters' => [
         // A filter of the FilterInterface::TYPE_HTML_RESTRICTOR type.
-        'filter_html' => array(
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<h2> <h3> <h4> <h5> <h6> <p> <br> <strong> <a> <embed>',
-          )
-        ),
-      ),
-    ));
+          ]
+        ],
+      ],
+    ]);
     $format->save();
     $editor = Editor::create([
       'format' => 'restricted_plus_dangerous_tag_with_editor',
       'editor' => 'unicorn',
     ]);
     $editor->save();
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'unrestricted_without_editor',
       'name' => 'Unrestricted HTML, without text editor',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $format->save();
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'unrestricted_with_editor',
       'name' => 'Unrestricted HTML, with text editor',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $format->save();
     $editor = Editor::create([
       'format' => 'unrestricted_with_editor',
@@ -160,10 +160,10 @@ protected function setUp() {
 
 
     // Create node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
     // Create 4 users, each with access to different text formats/editors:
     //   - "untrusted": restricted_without_editor
@@ -172,22 +172,22 @@ protected function setUp() {
     //   - "privileged": restricted_without_editor, restricted_with_editor,
     //     restricted_plus_dangerous_tag_with_editor,
     //     unrestricted_without_editor and unrestricted_with_editor
-    $this->untrustedUser = $this->drupalCreateUser(array(
+    $this->untrustedUser = $this->drupalCreateUser([
       'create article content',
       'edit any article content',
       'use text format restricted_without_editor',
-    ));
-    $this->normalUser = $this->drupalCreateUser(array(
+    ]);
+    $this->normalUser = $this->drupalCreateUser([
       'create article content',
       'edit any article content',
       'use text format restricted_with_editor',
-    ));
-    $this->trustedUser = $this->drupalCreateUser(array(
+    ]);
+    $this->trustedUser = $this->drupalCreateUser([
       'create article content',
       'edit any article content',
       'use text format restricted_plus_dangerous_tag_with_editor',
-    ));
-    $this->privilegedUser = $this->drupalCreateUser(array(
+    ]);
+    $this->privilegedUser = $this->drupalCreateUser([
       'create article content',
       'edit any article content',
       'use text format restricted_without_editor',
@@ -195,25 +195,25 @@ protected function setUp() {
       'use text format restricted_plus_dangerous_tag_with_editor',
       'use text format unrestricted_without_editor',
       'use text format unrestricted_with_editor',
-    ));
+    ]);
 
     // Create an "article" node for each possible text format, with the same
     // sample content, to do our tests on.
-    $samples = array(
-      array('author' => $this->untrustedUser->id(), 'format' => 'restricted_without_editor'),
-      array('author' => $this->normalUser->id(), 'format' => 'restricted_with_editor'),
-      array('author' => $this->trustedUser->id(), 'format' => 'restricted_plus_dangerous_tag_with_editor'),
-      array('author' => $this->privilegedUser->id(), 'format' => 'unrestricted_without_editor'),
-      array('author' => $this->privilegedUser->id(), 'format' => 'unrestricted_with_editor'),
-    );
+    $samples = [
+      ['author' => $this->untrustedUser->id(), 'format' => 'restricted_without_editor'],
+      ['author' => $this->normalUser->id(), 'format' => 'restricted_with_editor'],
+      ['author' => $this->trustedUser->id(), 'format' => 'restricted_plus_dangerous_tag_with_editor'],
+      ['author' => $this->privilegedUser->id(), 'format' => 'unrestricted_without_editor'],
+      ['author' => $this->privilegedUser->id(), 'format' => 'unrestricted_with_editor'],
+    ];
     foreach ($samples as $sample) {
-      $this->drupalCreateNode(array(
+      $this->drupalCreateNode([
         'type' => 'article',
-        'body' => array(
-          array('value' => self::$sampleContent, 'format' => $sample['format'])
-        ),
+        'body' => [
+          ['value' => self::$sampleContent, 'format' => $sample['format']]
+        ],
         'uid' => $sample['author']
-      ));
+      ]);
     }
   }
 
@@ -223,64 +223,64 @@ protected function setUp() {
    * Tests 8 scenarios. Tests only with a text editor that is not XSS-safe.
    */
   function testInitialSecurity() {
-    $expected = array(
-      array(
+    $expected = [
+      [
         'node_id' => 1,
         'format' => 'restricted_without_editor',
         // No text editor => no XSS filtering.
         'value' => self::$sampleContent,
-        'users' => array(
+        'users' => [
           $this->untrustedUser,
           $this->privilegedUser,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 2,
         'format' => 'restricted_with_editor',
         // Text editor => XSS filtering.
         'value' => self::$sampleContentSecured,
-        'users' => array(
+        'users' => [
           $this->normalUser,
           $this->privilegedUser,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 3,
         'format' => 'restricted_plus_dangerous_tag_with_editor',
         // Text editor => XSS filtering.
         'value' => self::$sampleContentSecuredEmbedAllowed,
-        'users' => array(
+        'users' => [
           $this->trustedUser,
           $this->privilegedUser,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 4,
         'format' => 'unrestricted_without_editor',
         // No text editor => no XSS filtering.
         'value' => self::$sampleContent,
-        'users' => array(
+        'users' => [
           $this->privilegedUser,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 5,
         'format' => 'unrestricted_with_editor',
         // Text editor, no security filter => no XSS filtering.
         'value' => self::$sampleContent,
-        'users' => array(
+        'users' => [
           $this->privilegedUser,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // Log in as each user that may edit the content, and assert the value.
     foreach ($expected as $case) {
       foreach ($case['users'] as $account) {
-        $this->pass(format_string('Scenario: sample %sample_id, %format.', array(
+        $this->pass(format_string('Scenario: sample %sample_id, %format.', [
           '%sample_id' => $case['node_id'],
           '%format' => $case['format'],
-        )));
+        ]));
         $this->drupalLogin($account);
         $this->drupalGet('node/' . $case['node_id'] . '/edit');
         $dom_node = $this->xpath('//textarea[@id="edit-body-0-value"]');
@@ -303,25 +303,25 @@ function testInitialSecurity() {
    * <script> tag would be executed. Unless we apply appropriate filtering.
    */
   function testSwitchingSecurity() {
-    $expected = array(
-      array(
+    $expected = [
+      [
         'node_id' => 1,
         'value' => self::$sampleContent, // No text editor => no XSS filtering.
         'format' => 'restricted_without_editor',
-        'switch_to' => array(
+        'switch_to' => [
           'restricted_with_editor' => self::$sampleContentSecured,
           // Intersection of restrictions => most strict XSS filtering.
           'restricted_plus_dangerous_tag_with_editor' => self::$sampleContentSecured,
           // No text editor => no XSS filtering.
           'unrestricted_without_editor' => FALSE,
           'unrestricted_with_editor' => self::$sampleContentSecured,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 2,
         'value' => self::$sampleContentSecured, // Text editor => XSS filtering.
         'format' => 'restricted_with_editor',
-        'switch_to' => array(
+        'switch_to' => [
           // No text editor => no XSS filtering.
           'restricted_without_editor' => FALSE,
           // Intersection of restrictions => most strict XSS filtering.
@@ -329,13 +329,13 @@ function testSwitchingSecurity() {
           // No text editor => no XSS filtering.
           'unrestricted_without_editor' => FALSE,
           'unrestricted_with_editor' => self::$sampleContentSecured,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 3,
         'value' => self::$sampleContentSecuredEmbedAllowed, // Text editor => XSS filtering.
         'format' => 'restricted_plus_dangerous_tag_with_editor',
-        'switch_to' => array(
+        'switch_to' => [
           // No text editor => no XSS filtering.
           'restricted_without_editor' => FALSE,
           // Intersection of restrictions => most strict XSS filtering.
@@ -344,13 +344,13 @@ function testSwitchingSecurity() {
           'unrestricted_without_editor' => FALSE,
           // Intersection of restrictions => most strict XSS filtering.
           'unrestricted_with_editor' => self::$sampleContentSecured,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 4,
         'value' => self::$sampleContent, // No text editor => no XSS filtering.
         'format' => 'unrestricted_without_editor',
-        'switch_to' => array(
+        'switch_to' => [
           // No text editor => no XSS filtering.
           'restricted_without_editor' => FALSE,
           'restricted_with_editor' => self::$sampleContentSecured,
@@ -360,13 +360,13 @@ function testSwitchingSecurity() {
           // filters: resulting content when viewed was already vulnerable, so
           // it must be intentional.
           'unrestricted_with_editor' => FALSE,
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'node_id' => 5,
         'value' => self::$sampleContentSecured, // Text editor => XSS filtering.
         'format' => 'unrestricted_with_editor',
-        'switch_to' => array(
+        'switch_to' => [
           // From editor, no security filters to security filters, no editor: no
           // risk.
           'restricted_without_editor' => FALSE,
@@ -377,9 +377,9 @@ function testSwitchingSecurity() {
           // filters: resulting content when viewed was already vulnerable, so
           // it must be intentional.
           'unrestricted_without_editor' => FALSE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // Log in as the privileged user, and for every sample, do the following:
     //  - switch to every other text format/editor
@@ -395,15 +395,15 @@ function testSwitchingSecurity() {
 
       // Switch to every other text format/editor and verify the results.
       foreach ($case['switch_to'] as $format => $expected_filtered_value) {
-        $this->pass(format_string('Scenario: sample %sample_id, switch from %original_format to %format.', array(
+        $this->pass(format_string('Scenario: sample %sample_id, switch from %original_format to %format.', [
           '%sample_id' => $case['node_id'],
           '%original_format' => $case['format'],
           '%format' => $format,
-        )));
-        $post = array(
+        ]));
+        $post = [
           'value' => self::$sampleContent,
           'original_format_id' => $case['format'],
-        );
+        ];
         $response = $this->drupalPostWithFormat('editor/filter_xss/' . $format, 'json', $post);
         $this->assertResponse(200);
         $json = Json::decode($response);
diff --git a/core/modules/editor/src/Tests/QuickEditIntegrationLoadingTest.php b/core/modules/editor/src/Tests/QuickEditIntegrationLoadingTest.php
index c827450..a4515d5 100644
--- a/core/modules/editor/src/Tests/QuickEditIntegrationLoadingTest.php
+++ b/core/modules/editor/src/Tests/QuickEditIntegrationLoadingTest.php
@@ -19,47 +19,47 @@ class QuickEditIntegrationLoadingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('quickedit', 'filter', 'node', 'editor');
+  public static $modules = ['quickedit', 'filter', 'node', 'editor'];
 
   /**
    * The basic permissions necessary to view content and use in-place editing.
    *
    * @var array
    */
-  protected static $basicPermissions = array('access content', 'create article content', 'use text format filtered_html', 'access contextual links');
+  protected static $basicPermissions = ['access content', 'create article content', 'use text format filtered_html', 'access contextual links'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a text format.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(
-        'filter_caption' => array(
+      'filters' => [
+        'filter_caption' => [
           'status' => 1,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $filtered_html_format->save();
 
     // Create a node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
     // Create one node of the above node type using the above text format.
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'type' => 'article',
-      'body' => array(
-        0 => array(
+      'body' => [
+        0 => [
           'value' => '<p>Do you also love Drupal?</p><img src="druplicon.png" data-caption="Druplicon" />',
           'format' => 'filtered_html',
-        )
-      )
-    ));
+        ]
+      ]
+    ]);
   }
 
   /**
@@ -70,11 +70,11 @@ public function testUsersWithoutPermission() {
     // or both of the following permissions:
     // - the 'access in-place editing' permission
     // - the 'edit any article content' permission (necessary to edit node 1)
-    $users = array(
+    $users = [
       $this->drupalCreateUser(static::$basicPermissions),
-      $this->drupalCreateUser(array_merge(static::$basicPermissions, array('edit any article content'))),
-      $this->drupalCreateUser(array_merge(static::$basicPermissions, array('access in-place editing')))
-    );
+      $this->drupalCreateUser(array_merge(static::$basicPermissions, ['edit any article content'])),
+      $this->drupalCreateUser(array_merge(static::$basicPermissions, ['access in-place editing']))
+    ];
 
     // Now test with each of the 3 users with insufficient permissions.
     foreach ($users as $user) {
@@ -86,7 +86,7 @@ public function testUsersWithoutPermission() {
 
       // Retrieving the untransformed text should result in an 403 response and
       // return a different error message depending of the missing permission.
-      $response = $this->drupalPost('editor/' . 'node/1/body/en/full', '', array(), array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax')));
+      $response = $this->drupalPost('editor/' . 'node/1/body/en/full', '', [], ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
       $this->assertResponse(403);
       if (!$user->hasPermission('access in-place editing')) {
         $message = "The 'access in-place editing' permission is required.";
@@ -102,7 +102,7 @@ public function testUsersWithoutPermission() {
    * Test loading of untransformed text when a user does have access to it.
    */
   public function testUserWithPermission() {
-    $user = $this->drupalCreateUser(array_merge(static::$basicPermissions, array('edit any article content', 'access in-place editing')));
+    $user = $this->drupalCreateUser(array_merge(static::$basicPermissions, ['edit any article content', 'access in-place editing']));
     $this->drupalLogin($user);
     $this->drupalGet('node/1');
 
diff --git a/core/modules/editor/tests/modules/src/Plugin/Editor/TRexEditor.php b/core/modules/editor/tests/modules/src/Plugin/Editor/TRexEditor.php
index e785369..0d787a8d 100644
--- a/core/modules/editor/tests/modules/src/Plugin/Editor/TRexEditor.php
+++ b/core/modules/editor/tests/modules/src/Plugin/Editor/TRexEditor.php
@@ -26,18 +26,18 @@ class TRexEditor extends EditorBase {
    * {@inheritdoc}
    */
   public function getDefaultSettings() {
-    return array('stumpy_arms' => TRUE);
+    return ['stumpy_arms' => TRUE];
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
-    $form['stumpy_arms'] = array(
+    $form['stumpy_arms'] = [
       '#title' => t('Stumpy arms'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
+    ];
     return $form;
   }
 
@@ -45,7 +45,7 @@ public function settingsForm(array $form, FormStateInterface $form_state, Editor
    * {@inheritdoc}
    */
   public function getJSSettings(Editor $editor) {
-    $js_settings = array();
+    $js_settings = [];
     $settings = $editor->getSettings();
     if ($settings['stumpy_arms']) {
       $js_settings['doMyArmsLookStumpy'] = TRUE;
@@ -57,9 +57,9 @@ public function getJSSettings(Editor $editor) {
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    return array(
+    return [
       'editor_test/trex',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php b/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
index c196751..ddc730c 100644
--- a/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
+++ b/core/modules/editor/tests/modules/src/Plugin/Editor/UnicornEditor.php
@@ -27,18 +27,18 @@ class UnicornEditor extends EditorBase {
    * {@inheritdoc}
    */
   function getDefaultSettings() {
-    return array('ponies_too' => TRUE);
+    return ['ponies_too' => TRUE];
   }
 
   /**
    * {@inheritdoc}
    */
   function settingsForm(array $form, FormStateInterface $form_state, Editor $editor) {
-    $form['ponies_too'] = array(
+    $form['ponies_too'] = [
       '#title' => t('Pony mode'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
+    ];
     return $form;
   }
 
@@ -46,7 +46,7 @@ function settingsForm(array $form, FormStateInterface $form_state, Editor $edito
    * {@inheritdoc}
    */
   function getJSSettings(Editor $editor) {
-    $js_settings = array();
+    $js_settings = [];
     $settings = $editor->getSettings();
     if ($settings['ponies_too']) {
       $js_settings['ponyModeEnabled'] = TRUE;
@@ -58,9 +58,9 @@ function getJSSettings(Editor $editor) {
    * {@inheritdoc}
    */
   public function getLibraries(Editor $editor) {
-    return array(
+    return [
       'editor_test/unicorn',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/editor/tests/src/Kernel/EditorFileReferenceFilterTest.php b/core/modules/editor/tests/src/Kernel/EditorFileReferenceFilterTest.php
index 51eee97..621aabe 100644
--- a/core/modules/editor/tests/src/Kernel/EditorFileReferenceFilterTest.php
+++ b/core/modules/editor/tests/src/Kernel/EditorFileReferenceFilterTest.php
@@ -19,7 +19,7 @@ class EditorFileReferenceFilterTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'filter', 'editor', 'field', 'file', 'user');
+  public static $modules = ['system', 'filter', 'editor', 'field', 'file', 'user'];
 
   /**
    * @var \Drupal\filter\Plugin\FilterInterface[]
@@ -31,12 +31,12 @@ class EditorFileReferenceFilterTest extends KernelTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('system'));
+    $this->installConfig(['system']);
     $this->installEntitySchema('file');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
 
     $manager = $this->container->get('plugin.manager.filter');
-    $bag = new FilterPluginCollection($manager, array());
+    $bag = new FilterPluginCollection($manager, []);
     $this->filters = $bag->getAll();
   }
 
@@ -99,7 +99,7 @@ function testEditorFileReferenceFilter() {
     $input = '<img src="llama.jpg" data-entity-type="file" data-entity-uuid="invalid-' . $uuid . '" />';
     $output = $test($input);
     $this->assertIdentical($input, $output->getProcessedText());
-    $this->assertEqual(array(), $output->getCacheTags());
+    $this->assertEqual([], $output->getCacheTags());
 
     $this->pass('Two different data-entity-uuid attributes.');
     $input = '<img src="llama.jpg" data-entity-type="file" data-entity-uuid="' . $uuid . '" />';
diff --git a/core/modules/editor/tests/src/Kernel/EditorFileUsageTest.php b/core/modules/editor/tests/src/Kernel/EditorFileUsageTest.php
index 0411388..aac665d 100644
--- a/core/modules/editor/tests/src/Kernel/EditorFileUsageTest.php
+++ b/core/modules/editor/tests/src/Kernel/EditorFileUsageTest.php
@@ -23,22 +23,22 @@ class EditorFileUsageTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('editor', 'editor_test', 'node', 'file');
+  public static $modules = ['editor', 'editor_test', 'node', 'file'];
 
   protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('file');
-    $this->installSchema('node', array('node_access'));
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('node', ['node_access']);
+    $this->installSchema('file', ['file_usage']);
     $this->installConfig(['node']);
 
     // Add text formats.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
 
     // Set cardinality for body field.
@@ -63,13 +63,13 @@ protected function setUp() {
    * Tests the configurable text editor manager.
    */
   public function testEditorEntityHooks() {
-    $image_paths = array(
+    $image_paths = [
       0 => 'core/misc/druplicon.png',
       1 => 'core/misc/tree.png',
       2 => 'core/misc/help.png',
-    );
+    ];
 
-    $image_entities = array();
+    $image_entities = [];
     foreach ($image_paths as $key => $image_path) {
       $image = File::create();
       $image->setFileUri($image_path);
@@ -77,12 +77,12 @@ public function testEditorEntityHooks() {
       $image->save();
 
       $file_usage = $this->container->get('file.usage');
-      $this->assertIdentical(array(), $file_usage->listUsage($image), 'The image ' . $image_paths[$key] . ' has zero usages.');
+      $this->assertIdentical([], $file_usage->listUsage($image), 'The image ' . $image_paths[$key] . ' has zero usages.');
 
       $image_entities[] = $image;
     }
 
-    $body = array();
+    $body = [];
     foreach ($image_entities as $key => $image_entity) {
       // Don't be rude, say hello.
       $body_value = '<p>Hello, world!</p>';
@@ -95,10 +95,10 @@ public function testEditorEntityHooks() {
       // Test handling of a non-existing UUID.
       $body_value .= '<img src="awesome-llama-' . $key . '.jpg" data-entity-type="file" data-entity-uuid="30aac704-ba2c-40fc-b609-9ed121aa90f4" />';
 
-      $body[] = array(
+      $body[] = [
         'value' => $body_value,
         'format' => 'filtered_html',
-      );
+      ];
     }
 
     // Test editor_entity_insert(): increment.
@@ -111,7 +111,7 @@ public function testEditorEntityHooks() {
     ]);
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '1'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 1 usage.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '1']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 1 usage.');
     }
 
     // Test editor_entity_update(): increment, twice, by creating new revisions.
@@ -121,12 +121,12 @@ public function testEditorEntityHooks() {
     $node->setNewRevision(TRUE);
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '3'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '3']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
     }
 
     // Test hook_entity_update(): decrement, by modifying the last revision:
     // remove the data-entity-type attribute from the body field.
-    $original_values = array();
+    $original_values = [];
     for ($i = 0; $i < count($image_entities); $i++) {
       $original_value = $node->body[$i]->value;
       $new_value = str_replace('data-entity-type', 'data-entity-type-modified', $original_value);
@@ -135,7 +135,7 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '2'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '2']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
     }
 
     // Test editor_entity_update(): increment again by creating a new revision:
@@ -146,7 +146,7 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '3'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '3']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
     }
 
     // Test hook_entity_update(): decrement, by modifying the last revision:
@@ -158,7 +158,7 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '2'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '2']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
     }
 
     // Test hook_entity_update(): increment, by modifying the last revision:
@@ -168,13 +168,13 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '3'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '3']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 3 usages.');
     }
 
     // Test editor_entity_revision_delete(): decrement, by deleting a revision.
     $this->container->get('entity_type.manager')->getStorage('node')->deleteRevision($second_revision_id);
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '2'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '2']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
     }
 
     // Populate both the body and summary. Because this will be the same
@@ -185,7 +185,7 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '2'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '2']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
     }
 
     // Empty out the body value, but keep the summary. The number of usages
@@ -196,13 +196,13 @@ public function testEditorEntityHooks() {
     }
     $node->save();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array('editor' => array('node' => array(1 => '2'))), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
+      $this->assertIdentical(['editor' => ['node' => [1 => '2']]], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has 2 usages.');
     }
 
     // Test editor_entity_delete().
     $node->delete();
     foreach ($image_entities as $key => $image_entity) {
-      $this->assertIdentical(array(), $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has zero usages again.');
+      $this->assertIdentical([], $file_usage->listUsage($image_entity), 'The image ' . $image_paths[$key] . ' has zero usages again.');
     }
   }
 
diff --git a/core/modules/editor/tests/src/Kernel/EditorImageDialogTest.php b/core/modules/editor/tests/src/Kernel/EditorImageDialogTest.php
index 329018b..6500d1a 100644
--- a/core/modules/editor/tests/src/Kernel/EditorImageDialogTest.php
+++ b/core/modules/editor/tests/src/Kernel/EditorImageDialogTest.php
@@ -37,8 +37,8 @@ protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('file');
     $this->installSchema('system', ['key_value_expire']);
-    $this->installSchema('node', array('node_access'));
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('node', ['node_access']);
+    $this->installSchema('file', ['file_usage']);
     $this->installConfig(['node']);
 
     // Add text formats.
diff --git a/core/modules/editor/tests/src/Kernel/EditorManagerTest.php b/core/modules/editor/tests/src/Kernel/EditorManagerTest.php
index b6077a5..d1d6eaf 100644
--- a/core/modules/editor/tests/src/Kernel/EditorManagerTest.php
+++ b/core/modules/editor/tests/src/Kernel/EditorManagerTest.php
@@ -18,7 +18,7 @@ class EditorManagerTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'filter', 'editor');
+  public static $modules = ['system', 'user', 'filter', 'editor'];
 
   /**
    * The manager for text editor plugins.
@@ -33,19 +33,19 @@ protected function setUp() {
     // Install the Filter module.
 
     // Add text formats.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
   }
 
@@ -59,13 +59,13 @@ public function testManager() {
     // - listOptions() should return an empty list of options
     // - getAttachments() should return an empty #attachments array (and not
     //   a JS settings structure that is empty)
-    $this->assertIdentical(array(), $this->editorManager->listOptions(), 'When no text editor is enabled, the manager works correctly.');
-    $this->assertIdentical(array(), $this->editorManager->getAttachments(array()), 'No attachments when no text editor is enabled and retrieving attachments for zero text formats.');
-    $this->assertIdentical(array(), $this->editorManager->getAttachments(array('filtered_html', 'full_html')), 'No attachments when no text editor is enabled and retrieving attachments for multiple text formats.');
+    $this->assertIdentical([], $this->editorManager->listOptions(), 'When no text editor is enabled, the manager works correctly.');
+    $this->assertIdentical([], $this->editorManager->getAttachments([]), 'No attachments when no text editor is enabled and retrieving attachments for zero text formats.');
+    $this->assertIdentical([], $this->editorManager->getAttachments(['filtered_html', 'full_html']), 'No attachments when no text editor is enabled and retrieving attachments for multiple text formats.');
 
     // Enable the Text Editor Test module, which has the Unicorn Editor and
     // clear the editor manager's cache so it is picked up.
-    $this->enableModules(array('editor_test'));
+    $this->enableModules(['editor_test']);
     $this->editorManager = $this->container->get('plugin.manager.editor');
     $this->editorManager->clearCachedDefinitions();
 
@@ -80,11 +80,11 @@ public function testManager() {
       'editor' => 'unicorn',
     ]);
     $editor->save();
-    $this->assertIdentical(array(), $this->editorManager->getAttachments(array()), 'No attachments when one text editor is enabled and retrieving attachments for zero text formats.');
-    $expected = array(
-      'library' => array(
+    $this->assertIdentical([], $this->editorManager->getAttachments([]), 'No attachments when one text editor is enabled and retrieving attachments for zero text formats.');
+    $expected = [
+      'library' => [
         0 => 'editor_test/unicorn',
-      ),
+      ],
       'drupalSettings' => [
         'editor' => [
           'formats' => [
@@ -98,14 +98,14 @@ public function testManager() {
           ],
         ],
       ],
-    );
-    $this->assertIdentical($expected, $this->editorManager->getAttachments(array('filtered_html', 'full_html')), 'Correct attachments when one text editor is enabled and retrieving attachments for multiple text formats.');
+    ];
+    $this->assertIdentical($expected, $this->editorManager->getAttachments(['filtered_html', 'full_html']), 'Correct attachments when one text editor is enabled and retrieving attachments for multiple text formats.');
 
     // Case 4: a text editor available associated, but now with its JS settings
     // being altered via hook_editor_js_settings_alter().
     \Drupal::state()->set('editor_test_js_settings_alter_enabled', TRUE);
     $expected['drupalSettings']['editor']['formats']['full_html']['editorSettings']['ponyModeEnabled'] = FALSE;
-    $this->assertIdentical($expected, $this->editorManager->getAttachments(array('filtered_html', 'full_html')), 'hook_editor_js_settings_alter() works correctly.');
+    $this->assertIdentical($expected, $this->editorManager->getAttachments(['filtered_html', 'full_html']), 'hook_editor_js_settings_alter() works correctly.');
   }
 
 }
diff --git a/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php b/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php
index c04fe2d..276f559 100644
--- a/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php
+++ b/core/modules/editor/tests/src/Kernel/QuickEditIntegrationTest.php
@@ -26,7 +26,7 @@ class QuickEditIntegrationTest extends QuickEditTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('editor', 'editor_test');
+  public static $modules = ['editor', 'editor_test'];
 
   /**
    * The manager for editor plug-ins.
@@ -73,22 +73,22 @@ protected function setUp() {
     $this->createFieldWithStorage(
       $this->fieldName, 'text', 1, 'Long text field',
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'text_textarea',
-      array('size' => 42),
+      ['size' => 42],
       // 'default' formatter type & settings.
       'text_default',
-      array()
+      []
     );
 
     // Create text format.
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
 
     // Associate text editor with text format.
@@ -99,12 +99,12 @@ protected function setUp() {
     $editor->save();
 
     // Also create a text format without an associated text editor.
-    FilterFormat::create(array(
+    FilterFormat::create([
       'format' => 'no_editor',
       'name' => 'No Text Editor',
       'weight' => 2,
-      'filters' => array(),
-    ))->save();
+      'filters' => [],
+    ])->save();
   }
 
   /**
@@ -179,15 +179,15 @@ public function testMetadata() {
     // Verify metadata.
     $items = $entity->get($this->fieldName);
     $metadata = $this->metadataGenerator->generateFieldMetadata($items, 'default');
-    $expected = array(
+    $expected = [
       'access' => TRUE,
       'label' => 'Long text field',
       'editor' => 'editor',
-      'custom' => array(
+      'custom' => [
         'format' => 'full_html',
         'formatHasTransformations' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->assertEqual($expected, $metadata, 'The correct metadata (including custom metadata) is generated.');
   }
 
@@ -197,9 +197,9 @@ public function testMetadata() {
   public function testAttachments() {
     $this->editorSelector = $this->container->get('quickedit.editor.selector');
 
-    $editors = array('editor');
+    $editors = ['editor'];
     $attachments = $this->editorSelector->getEditorAttachments($editors);
-    $this->assertIdentical($attachments, array('library' => array('editor/quickedit.inPlaceEditor.formattedText')), "Expected attachments for Editor module's in-place editor found.");
+    $this->assertIdentical($attachments, ['library' => ['editor/quickedit.inPlaceEditor.formattedText']], "Expected attachments for Editor module's in-place editor found.");
   }
 
   /**
@@ -217,12 +217,12 @@ public function testGetUntransformedTextCommand() {
     $controller = new EditorController();
     $request = new Request();
     $response = $controller->getUntransformedText($entity, $this->fieldName, LanguageInterface::LANGCODE_DEFAULT, 'default');
-    $expected = array(
-      array(
+    $expected = [
+      [
         'command' => 'editorGetUntransformedText',
         'data' => 'Test',
-      )
-    );
+      ]
+    ];
 
     $ajax_response_attachments_processor = \Drupal::service('ajax_response.attachments_processor');
     $subscriber = new AjaxResponseSubscriber($ajax_response_attachments_processor);
diff --git a/core/modules/editor/tests/src/Unit/EditorConfigEntityUnitTest.php b/core/modules/editor/tests/src/Unit/EditorConfigEntityUnitTest.php
index e419f0a..4e96f4a 100644
--- a/core/modules/editor/tests/src/Unit/EditorConfigEntityUnitTest.php
+++ b/core/modules/editor/tests/src/Unit/EditorConfigEntityUnitTest.php
@@ -90,17 +90,17 @@ protected function setUp() {
    */
   public function testCalculateDependencies() {
     $format_id = 'filter.format.test';
-    $values = array('editor' => $this->editorId, 'format' => $format_id);
+    $values = ['editor' => $this->editorId, 'format' => $format_id];
 
     $plugin = $this->getMockBuilder('Drupal\editor\Plugin\EditorPluginInterface')
       ->disableOriginalConstructor()
       ->getMock();
     $plugin->expects($this->once())
       ->method('getPluginDefinition')
-      ->will($this->returnValue(array('provider' => 'test_module')));
+      ->will($this->returnValue(['provider' => 'test_module']));
     $plugin->expects($this->once())
       ->method('getDefaultSettings')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $this->editorPluginManager->expects($this->any())
       ->method('createInstance')
diff --git a/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php b/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
index d19758e..ce63092 100644
--- a/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
+++ b/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
@@ -27,17 +27,17 @@ protected function setUp() {
       ->getMock();
     $this->format->expects($this->any())
       ->method('getFilterTypes')
-      ->will($this->returnValue(array(FilterInterface::TYPE_HTML_RESTRICTOR)));
-    $restrictions = array(
-      'allowed' => array(
+      ->will($this->returnValue([FilterInterface::TYPE_HTML_RESTRICTOR]));
+    $restrictions = [
+      'allowed' => [
         'p' => TRUE,
         'a' => TRUE,
-        '*' => array(
+        '*' => [
           'style' => FALSE,
           'on*' => FALSE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     $this->format->expects($this->any())
       ->method('getHtmlRestrictions')
       ->will($this->returnValue($restrictions));
@@ -49,130 +49,130 @@ protected function setUp() {
    * @see \Drupal\Tests\editor\Unit\editor\EditorXssFilter\StandardTest::testFilterXss()
    */
   public function providerTestFilterXss() {
-    $data = array();
-    $data[] = array('<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>');
-    $data[] = array('<p style="color:red">Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>');
-    $data[] = array('<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><script>alert("evil");</script>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>alert("evil");');
-    $data[] = array('<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><a href="javascript:alert(1)">test</a>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><a href="alert(1)">test</a>');
+    $data = [];
+    $data[] = ['<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>'];
+    $data[] = ['<p style="color:red">Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>'];
+    $data[] = ['<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><script>alert("evil");</script>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>alert("evil");'];
+    $data[] = ['<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><a href="javascript:alert(1)">test</a>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown><a href="alert(1)">test</a>'];
 
     // All cases listed on https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
 
     // No Filter Evasion.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#No_Filter_Evasion
-    $data[] = array('<SCRIPT SRC=http://ha.ckers.org/xss.js></SCRIPT>', '');
+    $data[] = ['<SCRIPT SRC=http://ha.ckers.org/xss.js></SCRIPT>', ''];
 
     // Image XSS using the JavaScript directive.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Image_XSS_using_the_JavaScript_directive
-    $data[] = array('<IMG SRC="javascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<IMG SRC="javascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
 
     // No quotes and no semicolon.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#No_quotes_and_no_semicolon
-    $data[] = array('<IMG SRC=javascript:alert(\'XSS\')>', '<IMG>');
+    $data[] = ['<IMG SRC=javascript:alert(\'XSS\')>', '<IMG>'];
 
     // Case insensitive XSS attack vector.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Case_insensitive_XSS_attack_vector
-    $data[] = array('<IMG SRC=JaVaScRiPt:alert(\'XSS\')>', '<IMG>');
+    $data[] = ['<IMG SRC=JaVaScRiPt:alert(\'XSS\')>', '<IMG>'];
 
     // HTML entities.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#HTML_entities
-    $data[] = array('<IMG SRC=javascript:alert("XSS")>', '<IMG>');
+    $data[] = ['<IMG SRC=javascript:alert("XSS")>', '<IMG>'];
 
     // Grave accent obfuscation.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Grave_accent_obfuscation
-    $data[] = array('<IMG SRC=`javascript:alert("RSnake says, \'XSS\'")`>', '<IMG>');
+    $data[] = ['<IMG SRC=`javascript:alert("RSnake says, \'XSS\'")`>', '<IMG>'];
 
     // Malformed A tags.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Malformed_A_tags
-    $data[] = array('<a onmouseover="alert(document.cookie)">xxs link</a>', '<a>xxs link</a>');
-    $data[] = array('<a onmouseover=alert(document.cookie)>xxs link</a>', '<a>xxs link</a>');
+    $data[] = ['<a onmouseover="alert(document.cookie)">xxs link</a>', '<a>xxs link</a>'];
+    $data[] = ['<a onmouseover=alert(document.cookie)>xxs link</a>', '<a>xxs link</a>'];
 
     // Malformed IMG tags.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Malformed_IMG_tags
-    $data[] = array('<IMG """><SCRIPT>alert("XSS")</SCRIPT>">', '<IMG>alert("XSS")"&gt;');
+    $data[] = ['<IMG """><SCRIPT>alert("XSS")</SCRIPT>">', '<IMG>alert("XSS")"&gt;'];
 
     // fromCharCode.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#fromCharCode
-    $data[] = array('<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>', '<IMG src="alert(String.fromCharCode(88,83,83))">');
+    $data[] = ['<IMG SRC=javascript:alert(String.fromCharCode(88,83,83))>', '<IMG src="alert(String.fromCharCode(88,83,83))">'];
 
     // Default SRC tag to get past filters that check SRC domain.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Default_SRC_tag_to_get_past_filters_that_check_SRC_domain
-    $data[] = array('<IMG SRC=# onmouseover="alert(\'xxs\')">', '<IMG src="#">');
+    $data[] = ['<IMG SRC=# onmouseover="alert(\'xxs\')">', '<IMG src="#">'];
 
     // Default SRC tag by leaving it empty.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Default_SRC_tag_by_leaving_it_empty
-    $data[] = array('<IMG SRC= onmouseover="alert(\'xxs\')">', '<IMG nmouseover="alert(&#039;xxs&#039;)">');
+    $data[] = ['<IMG SRC= onmouseover="alert(\'xxs\')">', '<IMG nmouseover="alert(&#039;xxs&#039;)">'];
 
     // Default SRC tag by leaving it out entirely.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Default_SRC_tag_by_leaving_it_out_entirely
-    $data[] = array('<IMG onmouseover="alert(\'xxs\')">', '<IMG>');
+    $data[] = ['<IMG onmouseover="alert(\'xxs\')">', '<IMG>'];
 
     // Decimal HTML character references.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Decimal_HTML_character_references
-    $data[] = array('<IMG SRC=&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;&#88;&#83;&#83;&#39;&#41;>', '<IMG src="alert(&#039;XSS&#039;)">');
+    $data[] = ['<IMG SRC=&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#39;&#88;&#83;&#83;&#39;&#41;>', '<IMG src="alert(&#039;XSS&#039;)">'];
 
     // Decimal HTML character references without trailing semicolons.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Decimal_HTML_character_references_without_trailing_semicolons
-    $data[] = array('<IMG SRC=&#0000106&#0000097&#0000118&#0000097&#0000115&#0000099&#0000114&#0000105&#0000112&#0000116&#0000058&#0000097&#0000108&#0000101&#0000114&#0000116&#0000040&#0000039&#0000088&#0000083&#0000083&#0000039&#0000041>', '<IMG src="&amp;#0000106&amp;#0000097&amp;#0000118&amp;#0000097&amp;#0000115&amp;#0000099&amp;#0000114&amp;#0000105&amp;#0000112&amp;#0000116&amp;#0000058&amp;#0000097&amp;#0000108&amp;#0000101&amp;#0000114&amp;#0000116&amp;#0000040&amp;#0000039&amp;#0000088&amp;#0000083&amp;#0000083&amp;#0000039&amp;#0000041">');
+    $data[] = ['<IMG SRC=&#0000106&#0000097&#0000118&#0000097&#0000115&#0000099&#0000114&#0000105&#0000112&#0000116&#0000058&#0000097&#0000108&#0000101&#0000114&#0000116&#0000040&#0000039&#0000088&#0000083&#0000083&#0000039&#0000041>', '<IMG src="&amp;#0000106&amp;#0000097&amp;#0000118&amp;#0000097&amp;#0000115&amp;#0000099&amp;#0000114&amp;#0000105&amp;#0000112&amp;#0000116&amp;#0000058&amp;#0000097&amp;#0000108&amp;#0000101&amp;#0000114&amp;#0000116&amp;#0000040&amp;#0000039&amp;#0000088&amp;#0000083&amp;#0000083&amp;#0000039&amp;#0000041">'];
 
     // Hexadecimal HTML character references without trailing semicolons.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Hexadecimal_HTML_character_references_without_trailing_semicolons
-    $data[] = array('<IMG SRC=&#x6A&#x61&#x76&#x61&#x73&#x63&#x72&#x69&#x70&#x74&#x3A&#x61&#x6C&#x65&#x72&#x74&#x28&#x27&#x58&#x53&#x53&#x27&#x29>', '<IMG src="&amp;#x6A&amp;#x61&amp;#x76&amp;#x61&amp;#x73&amp;#x63&amp;#x72&amp;#x69&amp;#x70&amp;#x74&amp;#x3A&amp;#x61&amp;#x6C&amp;#x65&amp;#x72&amp;#x74&amp;#x28&amp;#x27&amp;#x58&amp;#x53&amp;#x53&amp;#x27&amp;#x29">');
+    $data[] = ['<IMG SRC=&#x6A&#x61&#x76&#x61&#x73&#x63&#x72&#x69&#x70&#x74&#x3A&#x61&#x6C&#x65&#x72&#x74&#x28&#x27&#x58&#x53&#x53&#x27&#x29>', '<IMG src="&amp;#x6A&amp;#x61&amp;#x76&amp;#x61&amp;#x73&amp;#x63&amp;#x72&amp;#x69&amp;#x70&amp;#x74&amp;#x3A&amp;#x61&amp;#x6C&amp;#x65&amp;#x72&amp;#x74&amp;#x28&amp;#x27&amp;#x58&amp;#x53&amp;#x53&amp;#x27&amp;#x29">'];
 
     // Embedded tab.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Embedded_tab
-    $data[] = array('<IMG SRC="jav  ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<IMG SRC="jav  ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
 
     // Embedded Encoded tab.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Embedded_Encoded_tab
-    $data[] = array('<IMG SRC="jav&#x09;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<IMG SRC="jav&#x09;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
 
     // Embedded newline to break up XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Embedded_newline_to_break_up_XSS
-    $data[] = array('<IMG SRC="jav&#x0A;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<IMG SRC="jav&#x0A;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
 
     // Embedded carriage return to break up XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Embedded_carriage_return_to_break_up_XSS
-    $data[] = array('<IMG SRC="jav&#x0D;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<IMG SRC="jav&#x0D;ascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
 
     // Null breaks up JavaScript directive.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Null_breaks_up_JavaScript_directive
-    $data[] = array("<IMG SRC=java\0script:alert(\"XSS\")>", '<IMG>');
+    $data[] = ["<IMG SRC=java\0script:alert(\"XSS\")>", '<IMG>'];
 
     // Spaces and meta chars before the JavaScript in images for XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Spaces_and_meta_chars_before_the_JavaScript_in_images_for_XSS
     // @fixme This dataset currently fails under 5.4 because of
     //   https://www.drupal.org/node/1210798. Restore after it's fixed.
     if (version_compare(PHP_VERSION, '5.4.0', '<')) {
-      $data[] = array('<IMG SRC=" &#14;  javascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">');
+      $data[] = ['<IMG SRC=" &#14;  javascript:alert(\'XSS\');">', '<IMG src="alert(&#039;XSS&#039;);">'];
     }
 
     // Non-alpha-non-digit XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Non-alpha-non-digit_XSS
-    $data[] = array('<SCRIPT/XSS SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '');
-    $data[] = array('<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert("XSS")>', '<BODY>');
-    $data[] = array('<SCRIPT/SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '');
+    $data[] = ['<SCRIPT/XSS SRC="http://ha.ckers.org/xss.js"></SCRIPT>', ''];
+    $data[] = ['<BODY onload!#$%&()*~+-_.,:;?@[/|\]^`=alert("XSS")>', '<BODY>'];
+    $data[] = ['<SCRIPT/SRC="http://ha.ckers.org/xss.js"></SCRIPT>', ''];
 
     // Extraneous open brackets.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Extraneous_open_brackets
-    $data[] = array('<<SCRIPT>alert("XSS");//<</SCRIPT>', '&lt;alert("XSS");//&lt;');
+    $data[] = ['<<SCRIPT>alert("XSS");//<</SCRIPT>', '&lt;alert("XSS");//&lt;'];
 
     // No closing script tags.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#No_closing_script_tags
-    $data[] = array('<SCRIPT SRC=http://ha.ckers.org/xss.js?< B >', '');
+    $data[] = ['<SCRIPT SRC=http://ha.ckers.org/xss.js?< B >', ''];
 
     // Protocol resolution in script tags.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Protocol_resolution_in_script_tags
-    $data[] = array('<SCRIPT SRC=//ha.ckers.org/.j>', '');
+    $data[] = ['<SCRIPT SRC=//ha.ckers.org/.j>', ''];
 
     // Half open HTML/JavaScript XSS vector.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Half_open_HTML.2FJavaScript_XSS_vector
-    $data[] = array('<IMG SRC="javascript:alert(\'XSS\')"', '<IMG src="alert(&#039;XSS&#039;)">');
+    $data[] = ['<IMG SRC="javascript:alert(\'XSS\')"', '<IMG src="alert(&#039;XSS&#039;)">'];
 
     // Double open angle brackets.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Double_open_angle_brackets
     // @see http://ha.ckers.org/blog/20060611/hotbot-xss-vulnerability/ to
     //      understand why this is a vulnerability.
-    $data[] = array('<iframe src=http://ha.ckers.org/scriptlet.html <', '<iframe src="http://ha.ckers.org/scriptlet.html">');
+    $data[] = ['<iframe src=http://ha.ckers.org/scriptlet.html <', '<iframe src="http://ha.ckers.org/scriptlet.html">'];
 
     // Escaping JavaScript escapes.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Escaping_JavaScript_escapes
@@ -181,43 +181,43 @@ public function providerTestFilterXss() {
 
     // End title tag.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#End_title_tag
-    $data[] = array('</TITLE><SCRIPT>alert("XSS");</SCRIPT>', '</TITLE>alert("XSS");');
+    $data[] = ['</TITLE><SCRIPT>alert("XSS");</SCRIPT>', '</TITLE>alert("XSS");'];
 
     // INPUT image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#INPUT_image
-    $data[] = array('<INPUT TYPE="IMAGE" SRC="javascript:alert(\'XSS\');">', '<INPUT type="IMAGE" src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<INPUT TYPE="IMAGE" SRC="javascript:alert(\'XSS\');">', '<INPUT type="IMAGE" src="alert(&#039;XSS&#039;);">'];
 
     // BODY image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#BODY_image
-    $data[] = array('<BODY BACKGROUND="javascript:alert(\'XSS\')">', '<BODY background="alert(&#039;XSS&#039;)">');
+    $data[] = ['<BODY BACKGROUND="javascript:alert(\'XSS\')">', '<BODY background="alert(&#039;XSS&#039;)">'];
 
     // IMG Dynsrc.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IMG_Dynsrc
-    $data[] = array('<IMG DYNSRC="javascript:alert(\'XSS\')">', '<IMG dynsrc="alert(&#039;XSS&#039;)">');
+    $data[] = ['<IMG DYNSRC="javascript:alert(\'XSS\')">', '<IMG dynsrc="alert(&#039;XSS&#039;)">'];
 
     // IMG lowsrc.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IMG_lowsrc
-    $data[] = array('<IMG LOWSRC="javascript:alert(\'XSS\')">', '<IMG lowsrc="alert(&#039;XSS&#039;)">');
+    $data[] = ['<IMG LOWSRC="javascript:alert(\'XSS\')">', '<IMG lowsrc="alert(&#039;XSS&#039;)">'];
 
     // List-style-image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#List-style-image
-    $data[] = array('<STYLE>li {list-style-image: url("javascript:alert(\'XSS\')");}</STYLE><UL><LI>XSS</br>', 'li {list-style-image: url("javascript:alert(\'XSS\')");}<UL><LI>XSS</br>');
+    $data[] = ['<STYLE>li {list-style-image: url("javascript:alert(\'XSS\')");}</STYLE><UL><LI>XSS</br>', 'li {list-style-image: url("javascript:alert(\'XSS\')");}<UL><LI>XSS</br>'];
 
     // VBscript in an image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#VBscript_in_an_image
-    $data[] = array('<IMG SRC=\'vbscript:msgbox("XSS")\'>', '<IMG src=\'msgbox(&quot;XSS&quot;)\'>');
+    $data[] = ['<IMG SRC=\'vbscript:msgbox("XSS")\'>', '<IMG src=\'msgbox(&quot;XSS&quot;)\'>'];
 
     // Livescript (older versions of Netscape only).
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Livescript_.28older_versions_of_Netscape_only.29
-    $data[] = array('<IMG SRC="livescript:[code]">', '<IMG src="[code]">');
+    $data[] = ['<IMG SRC="livescript:[code]">', '<IMG src="[code]">'];
 
     // BODY tag.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#BODY_tag
-    $data[] = array('<BODY ONLOAD=alert(\'XSS\')>', '<BODY>');
+    $data[] = ['<BODY ONLOAD=alert(\'XSS\')>', '<BODY>'];
 
     // Event handlers.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Event_Handlers
-    $events = array(
+    $events = [
       'onAbort',
       'onActivate',
       'onAfterPrint',
@@ -321,71 +321,71 @@ public function providerTestFilterXss() {
       'onUndo',
       'onUnload',
       'onURLFlip',
-    );
+    ];
     foreach ($events as $event) {
-      $data[] = array('<p ' . $event . '="javascript:alert(\'XSS\');">Dangerous llama!</p>', '<p>Dangerous llama!</p>');
+      $data[] = ['<p ' . $event . '="javascript:alert(\'XSS\');">Dangerous llama!</p>', '<p>Dangerous llama!</p>'];
     }
 
     // BGSOUND.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#BGSOUND
-    $data[] = array('<BGSOUND SRC="javascript:alert(\'XSS\');">', '<BGSOUND src="alert(&#039;XSS&#039;);">');
+    $data[] = ['<BGSOUND SRC="javascript:alert(\'XSS\');">', '<BGSOUND src="alert(&#039;XSS&#039;);">'];
 
     // & JavaScript includes.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#.26_JavaScript_includes
-    $data[] = array('<BR SIZE="&{alert(\'XSS\')}">', '<BR size="">');
+    $data[] = ['<BR SIZE="&{alert(\'XSS\')}">', '<BR size="">'];
 
     // STYLE sheet.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_sheet
-    $data[] = array('<LINK REL="stylesheet" HREF="javascript:alert(\'XSS\');">', '');
+    $data[] = ['<LINK REL="stylesheet" HREF="javascript:alert(\'XSS\');">', ''];
 
     // Remote style sheet.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Remote_style_sheet
-    $data[] = array('<LINK REL="stylesheet" HREF="http://ha.ckers.org/xss.css">', '');
+    $data[] = ['<LINK REL="stylesheet" HREF="http://ha.ckers.org/xss.css">', ''];
 
     // Remote style sheet part 2.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Remote_style_sheet_part_2
-    $data[] = array('<STYLE>@import\'http://ha.ckers.org/xss.css\';</STYLE>', '@import\'http://ha.ckers.org/xss.css\';');
+    $data[] = ['<STYLE>@import\'http://ha.ckers.org/xss.css\';</STYLE>', '@import\'http://ha.ckers.org/xss.css\';'];
 
     // Remote style sheet part 3.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Remote_style_sheet_part_3
-    $data[] = array('<META HTTP-EQUIV="Link" Content="<http://ha.ckers.org/xss.css>; REL=stylesheet">', '<META http-equiv="Link">; REL=stylesheet"&gt;');
+    $data[] = ['<META HTTP-EQUIV="Link" Content="<http://ha.ckers.org/xss.css>; REL=stylesheet">', '<META http-equiv="Link">; REL=stylesheet"&gt;'];
 
     // Remote style sheet part 4.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Remote_style_sheet_part_4
-    $data[] = array('<STYLE>BODY{-moz-binding:url("http://ha.ckers.org/xssmoz.xml#xss")}</STYLE>', 'BODY{-moz-binding:url("http://ha.ckers.org/xssmoz.xml#xss")}');
+    $data[] = ['<STYLE>BODY{-moz-binding:url("http://ha.ckers.org/xssmoz.xml#xss")}</STYLE>', 'BODY{-moz-binding:url("http://ha.ckers.org/xssmoz.xml#xss")}'];
 
     // STYLE tags with broken up JavaScript for XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_tags_with_broken_up_JavaScript_for_XSS
-    $data[] = array('<STYLE>@im\port\'\ja\vasc\ript:alert("XSS")\';</STYLE>', '@im\port\'\ja\vasc\ript:alert("XSS")\';');
+    $data[] = ['<STYLE>@im\port\'\ja\vasc\ript:alert("XSS")\';</STYLE>', '@im\port\'\ja\vasc\ript:alert("XSS")\';'];
 
     // STYLE attribute using a comment to break up expression.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_attribute_using_a_comment_to_break_up_expression
-    $data[] = array('<IMG STYLE="xss:expr/*XSS*/ession(alert(\'XSS\'))">', '<IMG>');
+    $data[] = ['<IMG STYLE="xss:expr/*XSS*/ession(alert(\'XSS\'))">', '<IMG>'];
 
     // IMG STYLE with expression.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IMG_STYLE_with_expression
-    $data[] = array('exp/*<A STYLE=\'no\xss:noxss("*//*");
-xss:ex/*XSS*//*/*/pression(alert("XSS"))\'>', 'exp/*<A>');
+    $data[] = ['exp/*<A STYLE=\'no\xss:noxss("*//*");
+xss:ex/*XSS*//*/*/pression(alert("XSS"))\'>', 'exp/*<A>'];
 
     // STYLE tag (Older versions of Netscape only).
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_tag_.28Older_versions_of_Netscape_only.29
-    $data[] = array('<STYLE TYPE="text/javascript">alert(\'XSS\');</STYLE>', 'alert(\'XSS\');');
+    $data[] = ['<STYLE TYPE="text/javascript">alert(\'XSS\');</STYLE>', 'alert(\'XSS\');'];
 
     // STYLE tag using background-image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_tag_using_background-image
-    $data[] = array('<STYLE>.XSS{background-image:url("javascript:alert(\'XSS\')");}</STYLE><A CLASS=XSS></A>', '.XSS{background-image:url("javascript:alert(\'XSS\')");}<A class="XSS"></A>');
+    $data[] = ['<STYLE>.XSS{background-image:url("javascript:alert(\'XSS\')");}</STYLE><A CLASS=XSS></A>', '.XSS{background-image:url("javascript:alert(\'XSS\')");}<A class="XSS"></A>'];
 
     // STYLE tag using background.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#STYLE_tag_using_background
-    $data[] = array('<STYLE type="text/css">BODY{background:url("javascript:alert(\'XSS\')")}</STYLE>', 'BODY{background:url("javascript:alert(\'XSS\')")}');
+    $data[] = ['<STYLE type="text/css">BODY{background:url("javascript:alert(\'XSS\')")}</STYLE>', 'BODY{background:url("javascript:alert(\'XSS\')")}'];
 
     // Anonymous HTML with STYLE attribute.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Anonymous_HTML_with_STYLE_attribute
-    $data[] = array('<XSS STYLE="xss:expression(alert(\'XSS\'))">', '<XSS>');
+    $data[] = ['<XSS STYLE="xss:expression(alert(\'XSS\'))">', '<XSS>'];
 
     // Local htc file.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Local_htc_file
-    $data[] = array('<XSS STYLE="behavior: url(xss.htc);">', '<XSS>');
+    $data[] = ['<XSS STYLE="behavior: url(xss.htc);">', '<XSS>'];
 
     // US-ASCII encoding.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#US-ASCII_encoding
@@ -393,77 +393,77 @@ public function providerTestFilterXss() {
 
     // META.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#META
-    $data[] = array('<META HTTP-EQUIV="refresh" CONTENT="0;url=javascript:alert(\'XSS\');">', '<META http-equiv="refresh" content="alert(&#039;XSS&#039;);">');
+    $data[] = ['<META HTTP-EQUIV="refresh" CONTENT="0;url=javascript:alert(\'XSS\');">', '<META http-equiv="refresh" content="alert(&#039;XSS&#039;);">'];
 
     // META using data.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#META_using_data
-    $data[] = array('<META HTTP-EQUIV="refresh" CONTENT="0;url=data:text/html base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K">', '<META http-equiv="refresh" content="text/html base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K">');
+    $data[] = ['<META HTTP-EQUIV="refresh" CONTENT="0;url=data:text/html base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K">', '<META http-equiv="refresh" content="text/html base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K">'];
 
     // META with additional URL parameter
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#META
-    $data[] = array('<META HTTP-EQUIV="refresh" CONTENT="0; URL=http://;URL=javascript:alert(\'XSS\');">', '<META http-equiv="refresh" content="//;URL=javascript:alert(&#039;XSS&#039;);">');
+    $data[] = ['<META HTTP-EQUIV="refresh" CONTENT="0; URL=http://;URL=javascript:alert(\'XSS\');">', '<META http-equiv="refresh" content="//;URL=javascript:alert(&#039;XSS&#039;);">'];
 
     // IFRAME.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IFRAME
-    $data[] = array('<IFRAME SRC="javascript:alert(\'XSS\');"></IFRAME>', '<IFRAME src="alert(&#039;XSS&#039;);"></IFRAME>');
+    $data[] = ['<IFRAME SRC="javascript:alert(\'XSS\');"></IFRAME>', '<IFRAME src="alert(&#039;XSS&#039;);"></IFRAME>'];
 
     // IFRAME Event based.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IFRAME_Event_based
-    $data[] = array('<IFRAME SRC=# onmouseover="alert(document.cookie)"></IFRAME>', '<IFRAME src="#"></IFRAME>');
+    $data[] = ['<IFRAME SRC=# onmouseover="alert(document.cookie)"></IFRAME>', '<IFRAME src="#"></IFRAME>'];
 
     // FRAME.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#FRAME
-    $data[] = array('<FRAMESET><FRAME SRC="javascript:alert(\'XSS\');"></FRAMESET>', '<FRAMESET><FRAME src="alert(&#039;XSS&#039;);"></FRAMESET>');
+    $data[] = ['<FRAMESET><FRAME SRC="javascript:alert(\'XSS\');"></FRAMESET>', '<FRAMESET><FRAME src="alert(&#039;XSS&#039;);"></FRAMESET>'];
 
     // TABLE.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#TABLE
-    $data[] = array('<TABLE BACKGROUND="javascript:alert(\'XSS\')">', '<TABLE background="alert(&#039;XSS&#039;)">');
+    $data[] = ['<TABLE BACKGROUND="javascript:alert(\'XSS\')">', '<TABLE background="alert(&#039;XSS&#039;)">'];
 
     // TD.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#TD
-    $data[] = array('<TABLE><TD BACKGROUND="javascript:alert(\'XSS\')">', '<TABLE><TD background="alert(&#039;XSS&#039;)">');
+    $data[] = ['<TABLE><TD BACKGROUND="javascript:alert(\'XSS\')">', '<TABLE><TD background="alert(&#039;XSS&#039;)">'];
 
     // DIV background-image.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#DIV_background-image
-    $data[] = array('<DIV STYLE="background-image: url(javascript:alert(\'XSS\'))">', '<DIV>');
+    $data[] = ['<DIV STYLE="background-image: url(javascript:alert(\'XSS\'))">', '<DIV>'];
 
     // DIV background-image with unicoded XSS exploit.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#DIV_background-image_with_unicoded_XSS_exploit
-    $data[] = array('<DIV STYLE="background-image:\0075\0072\006C\0028\'\006a\0061\0076\0061\0073\0063\0072\0069\0070\0074\003a\0061\006c\0065\0072\0074\0028.1027\0058.1053\0053\0027\0029\'\0029">', '<DIV>');
+    $data[] = ['<DIV STYLE="background-image:\0075\0072\006C\0028\'\006a\0061\0076\0061\0073\0063\0072\0069\0070\0074\003a\0061\006c\0065\0072\0074\0028.1027\0058.1053\0053\0027\0029\'\0029">', '<DIV>'];
 
     // DIV background-image plus extra characters.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#DIV_background-image_plus_extra_characters
-    $data[] = array('<DIV STYLE="background-image: url(&#1;javascript:alert(\'XSS\'))">', '<DIV>');
+    $data[] = ['<DIV STYLE="background-image: url(&#1;javascript:alert(\'XSS\'))">', '<DIV>'];
 
     // DIV expression.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#DIV_expression
-    $data[] = array('<DIV STYLE="width: expression(alert(\'XSS\'));">', '<DIV>');
+    $data[] = ['<DIV STYLE="width: expression(alert(\'XSS\'));">', '<DIV>'];
 
     // Downlevel-Hidden block.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Downlevel-Hidden_block
-    $data[] = array('<!--[if gte IE 4]>
+    $data[] = ['<!--[if gte IE 4]>
  <SCRIPT>alert(\'XSS\');</SCRIPT>
- <![endif]-->', "\n alert('XSS');\n ");
+ <![endif]-->', "\n alert('XSS');\n "];
 
     // BASE tag.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#BASE_tag
-    $data[] = array('<BASE HREF="javascript:alert(\'XSS\');//">', '<BASE href="alert(&#039;XSS&#039;);//">');
+    $data[] = ['<BASE HREF="javascript:alert(\'XSS\');//">', '<BASE href="alert(&#039;XSS&#039;);//">'];
 
     // OBJECT tag.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#OBJECT_tag
-    $data[] = array('<OBJECT TYPE="text/x-scriptlet" DATA="http://ha.ckers.org/scriptlet.html"></OBJECT>', '');
+    $data[] = ['<OBJECT TYPE="text/x-scriptlet" DATA="http://ha.ckers.org/scriptlet.html"></OBJECT>', ''];
 
     // Using an EMBED tag you can embed a Flash movie that contains XSS.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Using_an_EMBED_tag_you_can_embed_a_Flash_movie_that_contains_XSS
-    $data[] = array('<EMBED SRC="http://ha.ckers.org/xss.swf" AllowScriptAccess="always"></EMBED>', '');
+    $data[] = ['<EMBED SRC="http://ha.ckers.org/xss.swf" AllowScriptAccess="always"></EMBED>', ''];
 
     // You can EMBED SVG which can contain your XSS vector.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#You_can_EMBED_SVG_which_can_contain_your_XSS_vector
-    $data[] = array('<EMBED SRC="data:image/svg+xml;base64,PHN2ZyB4bWxuczpzdmc9Imh0dH A6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hs aW5rIiB2ZXJzaW9uPSIxLjAiIHg9IjAiIHk9IjAiIHdpZHRoPSIxOTQiIGhlaWdodD0iMjAw IiBpZD0ieHNzIj48c2NyaXB0IHR5cGU9InRleHQvZWNtYXNjcmlwdCI+YWxlcnQoIlh TUyIpOzwvc2NyaXB0Pjwvc3ZnPg==" type="image/svg+xml" AllowScriptAccess="always"></EMBED>', '');
+    $data[] = ['<EMBED SRC="data:image/svg+xml;base64,PHN2ZyB4bWxuczpzdmc9Imh0dH A6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hs aW5rIiB2ZXJzaW9uPSIxLjAiIHg9IjAiIHk9IjAiIHdpZHRoPSIxOTQiIGhlaWdodD0iMjAw IiBpZD0ieHNzIj48c2NyaXB0IHR5cGU9InRleHQvZWNtYXNjcmlwdCI+YWxlcnQoIlh TUyIpOzwvc2NyaXB0Pjwvc3ZnPg==" type="image/svg+xml" AllowScriptAccess="always"></EMBED>', ''];
 
     // XML data island with CDATA obfuscation.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#XML_data_island_with_CDATA_obfuscation
-    $data[] = array('<XML ID="xss"><I><B><IMG SRC="javas<!-- -->cript:alert(\'XSS\')"></B></I></XML><SPAN DATASRC="#xss" DATAFLD="B" DATAFORMATAS="HTML"></SPAN>', '<XML id="xss"><I><B><IMG>cript:alert(\'XSS\')"&gt;</B></I></XML><SPAN datasrc="#xss" datafld="B" dataformatas="HTML"></SPAN>');
+    $data[] = ['<XML ID="xss"><I><B><IMG SRC="javas<!-- -->cript:alert(\'XSS\')"></B></I></XML><SPAN DATASRC="#xss" DATAFLD="B" DATAFORMATAS="HTML"></SPAN>', '<XML id="xss"><I><B><IMG>cript:alert(\'XSS\')"&gt;</B></I></XML><SPAN datasrc="#xss" datafld="B" dataformatas="HTML"></SPAN>'];
 
     // Locally hosted XML with embedded JavaScript that is generated using an XML data island.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Locally_hosted_XML_with_embedded_JavaScript_that_is_generated_using_an_XML_data_island
@@ -472,11 +472,11 @@ public function providerTestFilterXss() {
 
     // HTML+TIME in XML.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#HTML.2BTIME_in_XML
-    $data[] = array('<?xml:namespace prefix="t" ns="urn:schemas-microsoft-com:time"><?import namespace="t" implementation="#default#time2"><t:set attributeName="innerHTML" to="XSS<SCRIPT DEFER>alert("XSS")</SCRIPT>">', '&lt;?xml:namespace prefix="t" ns="urn:schemas-microsoft-com:time"&gt;&lt;?import namespace="t" implementation="#default#time2"&gt;<t set attributename="innerHTML">alert("XSS")"&gt;');
+    $data[] = ['<?xml:namespace prefix="t" ns="urn:schemas-microsoft-com:time"><?import namespace="t" implementation="#default#time2"><t:set attributeName="innerHTML" to="XSS<SCRIPT DEFER>alert("XSS")</SCRIPT>">', '&lt;?xml:namespace prefix="t" ns="urn:schemas-microsoft-com:time"&gt;&lt;?import namespace="t" implementation="#default#time2"&gt;<t set attributename="innerHTML">alert("XSS")"&gt;'];
 
     // Assuming you can only fit in a few characters and it filters against ".js".
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Assuming_you_can_only_fit_in_a_few_characters_and_it_filters_against_.22.js.22
-    $data[] = array('<SCRIPT SRC="http://ha.ckers.org/xss.jpg"></SCRIPT>', '');
+    $data[] = ['<SCRIPT SRC="http://ha.ckers.org/xss.jpg"></SCRIPT>', ''];
 
     // IMG Embedded commands.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#IMG_Embedded_commands
@@ -485,7 +485,7 @@ public function providerTestFilterXss() {
 
     // Cookie manipulation.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#Cookie_manipulation
-    $data[] = array('<META HTTP-EQUIV="Set-Cookie" Content="USERID=<SCRIPT>alert(\'XSS\')</SCRIPT>">', '<META http-equiv="Set-Cookie">alert(\'XSS\')"&gt;');
+    $data[] = ['<META HTTP-EQUIV="Set-Cookie" Content="USERID=<SCRIPT>alert(\'XSS\')</SCRIPT>">', '<META http-equiv="Set-Cookie">alert(\'XSS\')"&gt;'];
 
     // UTF-7 encoding.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#UTF-7_encoding
@@ -493,13 +493,13 @@ public function providerTestFilterXss() {
 
     // XSS using HTML quote encapsulation.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#XSS_using_HTML_quote_encapsulation
-    $data[] = array('<SCRIPT a=">" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT =">" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT a=">" \'\' SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" \'\' SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT "a=\'>\'" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '\'" SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT a=`>` SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '` SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT a=">\'>" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '\'&gt;" SRC="http://ha.ckers.org/xss.js"&gt;');
-    $data[] = array('<SCRIPT>document.write("<SCRI");</SCRIPT>PT SRC="http://ha.ckers.org/xss.js"></SCRIPT>', 'document.write("<SCRI>PT SRC="http://ha.ckers.org/xss.js"&gt;');
+    $data[] = ['<SCRIPT a=">" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT =">" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT a=">" \'\' SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '" \'\' SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT "a=\'>\'" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '\'" SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT a=`>` SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '` SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT a=">\'>" SRC="http://ha.ckers.org/xss.js"></SCRIPT>', '\'&gt;" SRC="http://ha.ckers.org/xss.js"&gt;'];
+    $data[] = ['<SCRIPT>document.write("<SCRI");</SCRIPT>PT SRC="http://ha.ckers.org/xss.js"></SCRIPT>', 'document.write("<SCRI>PT SRC="http://ha.ckers.org/xss.js"&gt;'];
 
     // URL string evasion.
     // @see https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet#URL_string_evasion
@@ -511,12 +511,12 @@ public function providerTestFilterXss() {
     // @see \Drupal\editor\EditorXssFilter::filterXssDataAttributes()
 
     // The following two test cases verify that XSS attack vectors are filtered.
-    $data[] = array('<img src="butterfly.jpg" data-caption="&lt;script&gt;alert();&lt;/script&gt;" />', '<img src="butterfly.jpg" data-caption="alert();" />');
-    $data[] = array('<img src="butterfly.jpg" data-caption="&lt;EMBED SRC=&quot;http://ha.ckers.org/xss.swf&quot; AllowScriptAccess=&quot;always&quot;&gt;&lt;/EMBED&gt;" />', '<img src="butterfly.jpg" data-caption="" />');
+    $data[] = ['<img src="butterfly.jpg" data-caption="&lt;script&gt;alert();&lt;/script&gt;" />', '<img src="butterfly.jpg" data-caption="alert();" />'];
+    $data[] = ['<img src="butterfly.jpg" data-caption="&lt;EMBED SRC=&quot;http://ha.ckers.org/xss.swf&quot; AllowScriptAccess=&quot;always&quot;&gt;&lt;/EMBED&gt;" />', '<img src="butterfly.jpg" data-caption="" />'];
 
     // When including HTML-tags as visible content, they are double-escaped.
     // This test case ensures that we leave that content unchanged.
-    $data[] = array('<img src="butterfly.jpg" data-caption="&amp;lt;script&amp;gt;alert();&amp;lt;/script&amp;gt;" />', '<img src="butterfly.jpg" data-caption="&amp;lt;script&amp;gt;alert();&amp;lt;/script&amp;gt;" />');
+    $data[] = ['<img src="butterfly.jpg" data-caption="&amp;lt;script&amp;gt;alert();&amp;lt;/script&amp;gt;" />', '<img src="butterfly.jpg" data-caption="&amp;lt;script&amp;gt;alert();&amp;lt;/script&amp;gt;" />'];
 
     return $data;
   }
@@ -573,27 +573,27 @@ public function testBlacklistMode($value, $expected, $message, array $disallowed
    *     - (optional) The disallowed HTML tags to be passed to \Drupal\Component\Utility\Xss::filter().
    */
   public function providerTestBlackListMode() {
-    return array(
-      array(
+    return [
+      [
         '<unknown style="visibility:hidden">Pink Fairy Armadillo</unknown><video src="gerenuk.mp4"><script>alert(0)</script>',
         '<unknown>Pink Fairy Armadillo</unknown><video src="gerenuk.mp4">alert(0)',
         'Disallow only the script tag',
-        array('script')
-      ),
-      array(
+        ['script']
+      ],
+      [
         '<unknown style="visibility:hidden">Pink Fairy Armadillo</unknown><video src="gerenuk.mp4"><script>alert(0)</script>',
         '<unknown>Pink Fairy Armadillo</unknown>alert(0)',
         'Disallow both the script and video tags',
-        array('script', 'video')
-      ),
+        ['script', 'video']
+      ],
       // No real use case for this, but it is an edge case we must ensure works.
-      array(
+      [
         '<unknown style="visibility:hidden">Pink Fairy Armadillo</unknown><video src="gerenuk.mp4"><script>alert(0)</script>',
         '<unknown>Pink Fairy Armadillo</unknown><video src="gerenuk.mp4"><script>alert(0)</script>',
         'Disallow no tags',
-        array()
-      ),
-    );
+        []
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field/field.api.php b/core/modules/field/field.api.php
index 8e11650..b0899ea 100644
--- a/core/modules/field/field.api.php
+++ b/core/modules/field/field.api.php
@@ -85,7 +85,7 @@ function hook_field_storage_config_update_forbid(\Drupal\field\FieldStorageConfi
     $prior_allowed_values = $prior_field_storage->getSetting('allowed_values');
     $lost_keys = array_keys(array_diff_key($prior_allowed_values, $allowed_values));
     if (_options_values_in_use($field_storage->getTargetEntityTypeId(), $field_storage->getName(), $lost_keys)) {
-      throw new \Drupal\Core\Entity\Exception\FieldStorageDefinitionUpdateForbiddenException(t('A list field (@field_name) with existing data cannot have its keys changed.', array('@field_name' => $field_storage->getName())));
+      throw new \Drupal\Core\Entity\Exception\FieldStorageDefinitionUpdateForbiddenException(t('A list field (@field_name) with existing data cannot have its keys changed.', ['@field_name' => $field_storage->getName()]));
     }
   }
 }
@@ -257,7 +257,7 @@ function hook_field_formatter_info_alter(array &$info) {
  * @ingroup field_info
  */
 function hook_field_info_max_weight($entity_type, $bundle, $context, $context_mode) {
-  $weights = array();
+  $weights = [];
 
   foreach (my_module_entity_additions($entity_type, $bundle, $context, $context_mode) as $addition) {
     $weights[] = $addition['weight'];
diff --git a/core/modules/field/field.module b/core/modules/field/field.module
index 8133007..8f3877d 100644
--- a/core/modules/field/field.module
+++ b/core/modules/field/field.module
@@ -67,10 +67,10 @@
 function field_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.field':
-      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#';
+      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#';
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Field module allows custom data fields to be defined for <em>entity</em> types (see below). The Field module takes care of storing, loading, editing, and rendering field data. Most users will not interact with the Field module directly, but will instead use the <a href=":field-ui-help">Field UI module</a> user interface. Module developers can use the Field API to make new entity types "fieldable" and thus allow fields to be attached to them. For more information, see the <a href=":field">online documentation for the Field module</a>.', array(':field-ui-help' => $field_ui_url, ':field' => 'https://www.drupal.org/documentation/modules/field')) . '</p>';
+      $output .= '<p>' . t('The Field module allows custom data fields to be defined for <em>entity</em> types (see below). The Field module takes care of storing, loading, editing, and rendering field data. Most users will not interact with the Field module directly, but will instead use the <a href=":field-ui-help">Field UI module</a> user interface. Module developers can use the Field API to make new entity types "fieldable" and thus allow fields to be attached to them. For more information, see the <a href=":field">online documentation for the Field module</a>.', [':field-ui-help' => $field_ui_url, ':field' => 'https://www.drupal.org/documentation/modules/field']) . '</p>';
       $output .= '<h3>' . t('Terminology') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Entities and entity types') . '</dt>';
@@ -87,19 +87,19 @@ function field_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Enabling field types, widgets, and formatters') . '</dt>';
-      $output .= '<dd>' . t('The Field module provides the infrastructure for fields; the field types, formatters, and widgets are provided by Drupal core or additional modules. Some of the modules are required; the optional modules can be enabled from the <a href=":modules">Extend administration page</a>. Additional fields, formatters, and widgets may be provided by contributed modules, which you can find in the <a href=":contrib">contributed module section of Drupal.org</a>.', array(':modules' => \Drupal::url('system.modules_list'), ':contrib' => 'https://www.drupal.org/project/modules')) . '</dd>';
+      $output .= '<dd>' . t('The Field module provides the infrastructure for fields; the field types, formatters, and widgets are provided by Drupal core or additional modules. Some of the modules are required; the optional modules can be enabled from the <a href=":modules">Extend administration page</a>. Additional fields, formatters, and widgets may be provided by contributed modules, which you can find in the <a href=":contrib">contributed module section of Drupal.org</a>.', [':modules' => \Drupal::url('system.modules_list'), ':contrib' => 'https://www.drupal.org/project/modules']) . '</dd>';
 
       $output .= '<h3>' . t('Field, widget, and formatter information') . '</h3>';
 
       // Make a list of all widget, formatter, and field modules currently
       // enabled, ordered by displayed module name (module names are not
       // translated).
-      $items = array();
+      $items = [];
       $modules = \Drupal::moduleHandler()->getModuleList();
       $widgets = \Drupal::service('plugin.manager.field.widget')->getDefinitions();
       $field_types = \Drupal::service('plugin.manager.field.field_type')->getUiDefinitions();
       $formatters = \Drupal::service('plugin.manager.field.formatter')->getDefinitions();
-      $providers = array();
+      $providers = [];
       foreach (array_merge($field_types, $widgets, $formatters) as $plugin) {
         $providers[] = $plugin['provider'];
       }
@@ -111,7 +111,7 @@ function field_help($route_name, RouteMatchInterface $route_match) {
         if (isset($modules[$provider])) {
           $display = \Drupal::moduleHandler()->getName($provider);
           if (\Drupal::moduleHandler()->implementsHook($provider, 'help')) {
-            $items[] = \Drupal::l($display, new Url('help.page', array('name' => $provider)));
+            $items[] = \Drupal::l($display, new Url('help.page', ['name' => $provider]));
           }
           else {
             $items[] = $display;
@@ -121,10 +121,10 @@ function field_help($route_name, RouteMatchInterface $route_match) {
       if ($items) {
         $output .= '<dt>' . t('Provided by modules') . '</dt>';
         $output .= '<dd>' . t('Here is a list of the currently enabled field, formatter, and widget modules:');
-        $item_list = array(
+        $item_list = [
           '#theme' => 'item_list',
           '#items' => $items,
-        );
+        ];
         $output .= \Drupal::service('renderer')->renderPlain($item_list);
         $output .= '</dd>';
       }
@@ -132,10 +132,10 @@ function field_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<dt>' . t('Provided by Drupal core') . '</dt>';
       $output .= '<dd>' . t('As mentioned previously, some field types, widgets, and formatters are provided by Drupal core. Here are some notes on how to use some of these:');
       $output .= '<ul>';
-      $output .= '<li><p>' . t('<strong>Entity Reference</strong> fields allow you to create fields that contain links to other entities (such as content items, taxonomy terms, etc.) within the site. This allows you, for example, to include a link to a user within a content item. For more information, see <a href=":er_do">the online documentation for the Entity Reference module</a>.', array(':er_do' => 'https://drupal.org/documentation/modules/entityreference')) . '</p>';
+      $output .= '<li><p>' . t('<strong>Entity Reference</strong> fields allow you to create fields that contain links to other entities (such as content items, taxonomy terms, etc.) within the site. This allows you, for example, to include a link to a user within a content item. For more information, see <a href=":er_do">the online documentation for the Entity Reference module</a>.', [':er_do' => 'https://drupal.org/documentation/modules/entityreference']) . '</p>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying entity reference fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the entity reference field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => $field_ui_url)) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the entity reference field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => $field_ui_url]) . '</dd>';
       $output .= '<dt>' . t('Selecting reference type') . '</dt>';
       $output .= '<dd>' . t('In the field settings you can select which entity type you want to create a reference to.') . '</dd>';
       $output .= '<dt>' . t('Filtering and sorting reference fields') . '</dt>';
@@ -179,7 +179,7 @@ function field_entity_field_storage_info(EntityTypeInterface $entity_type) {
       ->execute();
     // Fetch all fields and key them by field name.
     $field_storages = FieldStorageConfig::loadMultiple($ids);
-    $result = array();
+    $result = [];
     foreach ($field_storages as $field_storage) {
       $result[$field_storage->getName()] = $field_storage;
     }
@@ -200,7 +200,7 @@ function field_entity_bundle_field_info(EntityTypeInterface $entity_type, $bundl
       ->execute();
     // Fetch all fields and key them by field name.
     $field_configs = FieldConfig::loadMultiple($ids);
-    $result = array();
+    $result = [];
     foreach ($field_configs as $field_instance) {
       $result[$field_instance->getName()] = $field_instance;
     }
@@ -283,7 +283,7 @@ function field_entity_bundle_delete($entity_type_id, $bundle) {
  *   An entity, initialized with the provided IDs.
  */
 function _field_create_entity_from_ids($ids) {
-  $id_properties = array();
+  $id_properties = [];
   $entity_type = \Drupal::entityManager()->getDefinition($ids->entity_type);
   if ($id_key = $entity_type->getKey('id')) {
     $id_properties[$id_key] = $ids->entity_id;
@@ -311,7 +311,7 @@ function field_config_import_steps_alter(&$sync_steps, ConfigImporter $config_im
     // Add a step to the beginning of the configuration synchronization process
     // to purge field data where the module that provides the field is being
     // uninstalled.
-    array_unshift($sync_steps, array('\Drupal\field\ConfigImporterFieldPurger', 'process'));
+    array_unshift($sync_steps, ['\Drupal\field\ConfigImporterFieldPurger', 'process']);
   };
 }
 
@@ -341,7 +341,7 @@ function field_form_config_admin_import_form_alter(&$form, FormStateInterface $f
         count($field_storages),
         'This synchronization will delete data from the field %fields.',
         'This synchronization will delete data from the fields: %fields.',
-        array('%fields' => implode(', ', $field_labels))
+        ['%fields' => implode(', ', $field_labels)]
       ), 'warning');
     }
   }
diff --git a/core/modules/field/field.purge.inc b/core/modules/field/field.purge.inc
index ae3e266..519c6af 100644
--- a/core/modules/field/field.purge.inc
+++ b/core/modules/field/field.purge.inc
@@ -73,10 +73,10 @@
  *   (optional) Limit the purge to a specific field storage.
  */
 function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
-  $properties = array(
+  $properties = [
     'deleted' => TRUE,
     'include_deleted' => TRUE,
-  );
+  ];
   if ($field_storage_uuid) {
     $properties['field_storage_uuid'] = $field_storage_uuid;
   }
@@ -106,7 +106,7 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
   }
 
   // Retrieve all deleted field storages. Any that have no fields can be purged.
-  $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+  $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
   foreach ($deleted_storages as $field_storage) {
     $field_storage = new FieldStorageConfig($field_storage);
     if ($field_storage_uuid && $field_storage->uuid() != $field_storage_uuid) {
@@ -121,7 +121,7 @@ function field_purge_batch($batch_size, $field_storage_uuid = NULL) {
       continue;
     }
 
-    $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
     if (empty($fields)) {
       field_purge_field_storage($field_storage);
     }
@@ -144,7 +144,7 @@ function field_purge_field(FieldConfigInterface $field) {
   $state->set('field.field.deleted', $deleted_fields);
 
   // Invoke external hooks after the cache is cleared for API consistency.
-  \Drupal::moduleHandler()->invokeAll('field_purge_field', array($field));
+  \Drupal::moduleHandler()->invokeAll('field_purge_field', [$field]);
 }
 
 /**
@@ -159,9 +159,9 @@ function field_purge_field(FieldConfigInterface $field) {
  * @throws Drupal\field\FieldException
  */
 function field_purge_field_storage(FieldStorageConfigInterface $field_storage) {
-  $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+  $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
   if (count($fields) > 0) {
-    throw new FieldException(t('Attempt to purge a field storage @field_name that still has fields.', array('@field_name' => $field_storage->getName())));
+    throw new FieldException(t('Attempt to purge a field storage @field_name that still has fields.', ['@field_name' => $field_storage->getName()]));
   }
 
   $state = \Drupal::state();
@@ -173,7 +173,7 @@ function field_purge_field_storage(FieldStorageConfigInterface $field_storage) {
   \Drupal::entityManager()->getStorage($field_storage->getTargetEntityTypeId())->finalizePurge($field_storage);
 
   // Invoke external hooks after the cache is cleared for API consistency.
-  \Drupal::moduleHandler()->invokeAll('field_purge_field_storage', array($field_storage));
+  \Drupal::moduleHandler()->invokeAll('field_purge_field_storage', [$field_storage]);
 }
 
 /**
diff --git a/core/modules/field/src/ConfigImporterFieldPurger.php b/core/modules/field/src/ConfigImporterFieldPurger.php
index 4137294..3974511 100644
--- a/core/modules/field/src/ConfigImporterFieldPurger.php
+++ b/core/modules/field/src/ConfigImporterFieldPurger.php
@@ -47,7 +47,7 @@ public static function process(array &$context, ConfigImporter $config_importer)
     }
     else {
       $context['finished'] = $context['sandbox']['field']['current_progress'] / $context['sandbox']['field']['steps_to_delete'];
-      $context['message'] = \Drupal::translation()->translate('Purging field @field_label', array('@field_label' => $field_storage->label()));
+      $context['message'] = \Drupal::translation()->translate('Purging field @field_label', ['@field_label' => $field_storage->label()]);
     }
   }
 
@@ -111,11 +111,11 @@ protected static function initializeSandbox(array &$context, ConfigImporter $con
   public static function getFieldStoragesToPurge(array $extensions, array $deletes) {
     $providers = array_keys($extensions['module']);
     $providers[] = 'core';
-    $storages_to_delete = array();
+    $storages_to_delete = [];
 
     // Gather fields that will be deleted during configuration synchronization
     // where the module that provides the field type is also being uninstalled.
-    $field_storage_ids = array();
+    $field_storage_ids = [];
     foreach ($deletes as $config_name) {
       $field_storage_config_prefix = \Drupal::entityManager()->getDefinition('field_storage_config')->getConfigPrefix();
       if (strpos($config_name, $field_storage_config_prefix . '.') === 0) {
@@ -134,7 +134,7 @@ public static function getFieldStoragesToPurge(array $extensions, array $deletes
 
     // Gather deleted fields from modules that are being uninstalled.
     /** @var \Drupal\field\FieldStorageConfigInterface[] $field_storages */
-    $field_storages = entity_load_multiple_by_properties('field_storage_config', array('deleted' => TRUE, 'include_deleted' => TRUE));
+    $field_storages = entity_load_multiple_by_properties('field_storage_config', ['deleted' => TRUE, 'include_deleted' => TRUE]);
     foreach ($field_storages as $field_storage) {
       if (!in_array($field_storage->getTypeProvider(), $providers)) {
         $storages_to_delete[$field_storage->id()] = $field_storage;
diff --git a/core/modules/field/src/Entity/FieldConfig.php b/core/modules/field/src/Entity/FieldConfig.php
index f5e8ab3..af2fcca 100644
--- a/core/modules/field/src/Entity/FieldConfig.php
+++ b/core/modules/field/src/Entity/FieldConfig.php
@@ -193,7 +193,7 @@ public static function preDelete(EntityStorageInterface $storage, array $fields)
     parent::preDelete($storage, $fields);
     // Keep the field definitions in the state storage so we can use them
     // later during field_purge_batch().
-    $deleted_fields = $state->get('field.field.deleted') ?: array();
+    $deleted_fields = $state->get('field.field.deleted') ?: [];
     foreach ($fields as $field) {
       if (!$field->deleted) {
         $config = $field->toArray();
@@ -228,7 +228,7 @@ public static function postDelete(EntityStorageInterface $storage, array $fields
 
     // Delete the associated field storages if they are not used anymore and are
     // not persistent.
-    $storages_to_delete = array();
+    $storages_to_delete = [];
     foreach ($fields as $field) {
       $storage_definition = $field->getFieldStorageDefinition();
       if (!$field->deleted && !$field->isUninstalling() && $storage_definition->isDeletable()) {
@@ -306,7 +306,7 @@ public function isDisplayConfigurable($context) {
    */
   public function getDisplayOptions($display_context) {
     // Hide configurable fields by default.
-    return array('region' => 'hidden');
+    return ['region' => 'hidden'];
   }
 
   /**
diff --git a/core/modules/field/src/Entity/FieldStorageConfig.php b/core/modules/field/src/Entity/FieldStorageConfig.php
index 00883d6..a63e54f 100644
--- a/core/modules/field/src/Entity/FieldStorageConfig.php
+++ b/core/modules/field/src/Entity/FieldStorageConfig.php
@@ -370,7 +370,7 @@ protected function preSaveUpdated(EntityStorageInterface $storage) {
 
     // See if any module forbids the update by throwing an exception. This
     // invokes hook_field_storage_config_update_forbid().
-    $module_handler->invokeAll('field_storage_config_update_forbid', array($this, $this->original));
+    $module_handler->invokeAll('field_storage_config_update_forbid', [$this, $this->original]);
 
     // Notify the entity manager. A listener can reject the definition
     // update as invalid by raising an exception, which stops execution before
@@ -407,7 +407,7 @@ public static function preDelete(EntityStorageInterface $storage, array $field_s
 
     // Keep the field definitions in the state storage so we can use them later
     // during field_purge_batch().
-    $deleted_storages = $state->get('field.storage.deleted') ?: array();
+    $deleted_storages = $state->get('field.storage.deleted') ?: [];
     foreach ($field_storages as $field_storage) {
       if (!$field_storage->deleted) {
         $config = $field_storage->toArray();
@@ -444,12 +444,12 @@ public function getSchema() {
       $class = $this->getFieldItemClass();
       $schema = $class::schema($this);
       // Fill in default values for optional entries.
-      $schema += array(
-        'columns' => array(),
-        'unique keys' => array(),
-        'indexes' => array(),
-        'foreign keys' => array(),
-      );
+      $schema += [
+        'columns' => [],
+        'unique keys' => [],
+        'indexes' => [],
+        'foreign keys' => [],
+      ];
 
       // Merge custom indexes with those specified by the field type. Custom
       // indexes prevail.
@@ -499,7 +499,7 @@ public function getBundles() {
         return $map[$this->getTargetEntityTypeId()][$this->getName()]['bundles'];
       }
     }
-    return array();
+    return [];
   }
 
   /**
@@ -719,7 +719,7 @@ public function __sleep() {
    * {@inheritdoc}
    */
   public function getConstraints() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/field/src/FieldConfigStorage.php b/core/modules/field/src/FieldConfigStorage.php
index 0870cd4..42d9634 100644
--- a/core/modules/field/src/FieldConfigStorage.php
+++ b/core/modules/field/src/FieldConfigStorage.php
@@ -95,12 +95,12 @@ public function importDelete($name, Config $new_config, Config $old_config) {
   /**
    * {@inheritdoc}
    */
-  public function loadByProperties(array $conditions = array()) {
+  public function loadByProperties(array $conditions = []) {
     // Include deleted fields if specified in the $conditions parameters.
     $include_deleted = isset($conditions['include_deleted']) ? $conditions['include_deleted'] : FALSE;
     unset($conditions['include_deleted']);
 
-    $fields = array();
+    $fields = [];
 
     // Get fields stored in configuration. If we are explicitly looking for
     // deleted fields only, this can be skipped, because they will be
@@ -109,7 +109,7 @@ public function loadByProperties(array $conditions = array()) {
       if (isset($conditions['entity_type']) && isset($conditions['bundle']) && isset($conditions['field_name'])) {
         // Optimize for the most frequent case where we do have a specific ID.
         $id = $conditions['entity_type'] . '.' . $conditions['bundle'] . '.' . $conditions['field_name'];
-        $fields = $this->loadMultiple(array($id));
+        $fields = $this->loadMultiple([$id]);
       }
       else {
         // No specific ID, we need to examine all existing fields.
@@ -119,8 +119,8 @@ public function loadByProperties(array $conditions = array()) {
 
     // Merge deleted fields (stored in state) if needed.
     if ($include_deleted || !empty($conditions['deleted'])) {
-      $deleted_fields = $this->state->get('field.field.deleted') ?: array();
-      $deleted_storages = $this->state->get('field.storage.deleted') ?: array();
+      $deleted_fields = $this->state->get('field.field.deleted') ?: [];
+      $deleted_storages = $this->state->get('field.storage.deleted') ?: [];
       foreach ($deleted_fields as $id => $config) {
         // If the field storage itself is deleted, inject it directly in the field.
         if (isset($deleted_storages[$config['field_storage_uuid']])) {
@@ -131,7 +131,7 @@ public function loadByProperties(array $conditions = array()) {
     }
 
     // Collect matching fields.
-    $matching_fields = array();
+    $matching_fields = [];
     foreach ($fields as $field) {
       // Some conditions are checked against the field storage.
       $field_storage = $field->getFieldStorageDefinition();
diff --git a/core/modules/field/src/FieldStorageConfigStorage.php b/core/modules/field/src/FieldStorageConfigStorage.php
index cce8412..7a793f6 100644
--- a/core/modules/field/src/FieldStorageConfigStorage.php
+++ b/core/modules/field/src/FieldStorageConfigStorage.php
@@ -94,13 +94,13 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
   /**
    * {@inheritdoc}
    */
-  public function loadByProperties(array $conditions = array()) {
+  public function loadByProperties(array $conditions = []) {
     // Include deleted fields if specified in the $conditions parameters.
     $include_deleted = isset($conditions['include_deleted']) ? $conditions['include_deleted'] : FALSE;
     unset($conditions['include_deleted']);
 
     /** @var \Drupal\field\FieldStorageConfigInterface[] $storages */
-    $storages = array();
+    $storages = [];
 
     // Get field storages living in configuration. If we are explicitly looking
     // for deleted storages only, this can be skipped, because they will be
@@ -109,7 +109,7 @@ public function loadByProperties(array $conditions = array()) {
       if (isset($conditions['entity_type']) && isset($conditions['field_name'])) {
         // Optimize for the most frequent case where we do have a specific ID.
         $id = $conditions['entity_type'] . $conditions['field_name'];
-        $storages = $this->loadMultiple(array($id));
+        $storages = $this->loadMultiple([$id]);
       }
       else {
         // No specific ID, we need to examine all existing storages.
@@ -119,14 +119,14 @@ public function loadByProperties(array $conditions = array()) {
 
     // Merge deleted field storages (living in state) if needed.
     if ($include_deleted || !empty($conditions['deleted'])) {
-      $deleted_storages = $this->state->get('field.storage.deleted') ?: array();
+      $deleted_storages = $this->state->get('field.storage.deleted') ?: [];
       foreach ($deleted_storages as $id => $config) {
         $storages[$id] = $this->create($config);
       }
     }
 
     // Collect matching fields.
-    $matches = array();
+    $matches = [];
     foreach ($storages as $field) {
       foreach ($conditions as $key => $value) {
         // Extract the actual value against which the condition is checked.
diff --git a/core/modules/field/src/Plugin/migrate/process/d6/FieldFormatterSettingsDefaults.php b/core/modules/field/src/Plugin/migrate/process/d6/FieldFormatterSettingsDefaults.php
index 034ab0b..9a8e86a 100644
--- a/core/modules/field/src/Plugin/migrate/process/d6/FieldFormatterSettingsDefaults.php
+++ b/core/modules/field/src/Plugin/migrate/process/d6/FieldFormatterSettingsDefaults.php
@@ -26,7 +26,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
     if (isset($value[1])) {
       $module = $row->getSourceProperty('module');
       if ($module === 'date') {
-        $value = array('format_type' => 'fallback');
+        $value = ['format_type' => 'fallback'];
       }
       elseif ($module === 'number') {
         // We have to do the lookup here in the process plugin because for
@@ -35,7 +35,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
         return $this->numberSettings($row->getDestinationProperty('options/type'), $value[1]);
       }
       else {
-        $value = array();
+        $value = [];
       }
     }
     return $value;
diff --git a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceDefaults.php b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceDefaults.php
index 3ff0d8c..748eca2 100644
--- a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceDefaults.php
+++ b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceDefaults.php
@@ -20,7 +20,7 @@ class FieldInstanceDefaults extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     list($widget_type, $widget_settings) = $value;
-    $default = array();
+    $default = [];
 
     switch ($widget_type) {
       case 'text_textfield':
@@ -58,7 +58,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
         break;
     }
     if (!empty($default)) {
-      $default = array($default);
+      $default = [$default];
     }
     return $default;
   }
diff --git a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceSettings.php b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceSettings.php
index 080a4d7..82f25b5 100644
--- a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceSettings.php
+++ b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceSettings.php
@@ -20,7 +20,7 @@ class FieldInstanceSettings extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     list($widget_type, $widget_settings, $field_settings) = $value;
-    $settings = array();
+    $settings = [];
     switch ($widget_type) {
       case 'number':
         $settings['min'] = $field_settings['min'];
@@ -33,7 +33,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
         // $settings['url'] = $widget_settings['default_value'][0]['url'];
         // D6 has optional, required, value and none. D8 only has disabled (0)
         // optional (1) and required (2).
-        $map = array('disabled' => 0, 'optional' => 1, 'required' => 2);
+        $map = ['disabled' => 0, 'optional' => 1, 'required' => 2];
         $settings['title'] = $map[$field_settings['title']];
         break;
 
diff --git a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
index 1c7ede6..62c9829 100644
--- a/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
+++ b/core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php
@@ -41,41 +41,41 @@ public function getSettings($widget_type, $widget_settings) {
     $size = isset($widget_settings['size']) ? $widget_settings['size'] : 60;
     $rows = isset($widget_settings['rows']) ? $widget_settings['rows'] : 5;
 
-    $settings = array(
-      'text_textfield' => array(
+    $settings = [
+      'text_textfield' => [
         'size' => $size,
         'placeholder' => '',
-      ),
-      'text_textarea' => array(
+      ],
+      'text_textarea' => [
         'rows' => $rows,
         'placeholder' => '',
-      ),
-      'number' => array(
+      ],
+      'number' => [
         'placeholder' => '',
-      ),
-      'email_textfield' => array(
+      ],
+      'email_textfield' => [
         'placeholder' => '',
-      ),
-      'link' => array(
+      ],
+      'link' => [
         'placeholder_url' => '',
         'placeholder_title' => '',
-      ),
-      'filefield_widget' => array(
+      ],
+      'filefield_widget' => [
         'progress_indicator' => $progress,
-      ),
-      'imagefield_widget' => array(
+      ],
+      'imagefield_widget' => [
         'progress_indicator' => $progress,
         'preview_image_style' => 'thumbnail',
-      ),
-      'optionwidgets_onoff' => array(
+      ],
+      'optionwidgets_onoff' => [
         'display_label' => FALSE,
-      ),
-      'phone_textfield' => array(
+      ],
+      'phone_textfield' => [
         'placeholder' => '',
-      ),
-    );
+      ],
+    ];
 
-    return isset($settings[$widget_type]) ? $settings[$widget_type] : array();
+    return isset($settings[$widget_type]) ? $settings[$widget_type] : [];
   }
 
 }
diff --git a/core/modules/field/src/Plugin/migrate/process/d6/FieldSettings.php b/core/modules/field/src/Plugin/migrate/process/d6/FieldSettings.php
index 018afe6..1bb5b77 100644
--- a/core/modules/field/src/Plugin/migrate/process/d6/FieldSettings.php
+++ b/core/modules/field/src/Plugin/migrate/process/d6/FieldSettings.php
@@ -59,26 +59,26 @@ public function getSettings($field_type, $global_settings) {
       }
     }
 
-    $settings = array(
-      'text' => array(
+    $settings = [
+      'text' => [
         'max_length' => $max_length,
-      ),
-      'datetime' => array('datetime_type' => 'datetime'),
-      'list_string' => array(
+      ],
+      'datetime' => ['datetime_type' => 'datetime'],
+      'list_string' => [
         'allowed_values' => $allowed_values,
-      ),
-      'list_integer' => array(
+      ],
+      'list_integer' => [
         'allowed_values' => $allowed_values,
-      ),
-      'list_float' => array(
+      ],
+      'list_float' => [
         'allowed_values' => $allowed_values,
-      ),
-      'boolean' => array(
+      ],
+      'boolean' => [
         'allowed_values' => $allowed_values,
-      ),
-    );
+      ],
+    ];
 
-    return isset($settings[$field_type]) ? $settings[$field_type] : array();
+    return isset($settings[$field_type]) ? $settings[$field_type] : [];
   }
 
 }
diff --git a/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceDefaults.php b/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceDefaults.php
index 08501ab..2a46381 100644
--- a/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceDefaults.php
+++ b/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceDefaults.php
@@ -20,7 +20,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
     list($default_value, $widget_settings) = $value;
     $widget_type = $widget_settings['type'];
 
-    $default = array();
+    $default = [];
 
     foreach ($default_value as $item) {
       switch ($widget_type) {
diff --git a/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php b/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php
index d280079..70a9498 100644
--- a/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php
+++ b/core/modules/field/src/Plugin/migrate/process/d7/FieldInstanceSettings.php
@@ -52,13 +52,13 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
     switch ($widget_type) {
       case 'image_image':
         $settings = $instance_settings;
-        $settings['default_image'] = array(
+        $settings['default_image'] = [
           'alt' => '',
           'title' => '',
           'width' => NULL,
           'height' => NULL,
           'uuid' => '',
-        );
+        ];
         break;
 
       default:
diff --git a/core/modules/field/src/Plugin/migrate/process/d7/FieldSettings.php b/core/modules/field/src/Plugin/migrate/process/d7/FieldSettings.php
index bec448a..dc629a4 100644
--- a/core/modules/field/src/Plugin/migrate/process/d7/FieldSettings.php
+++ b/core/modules/field/src/Plugin/migrate/process/d7/FieldSettings.php
@@ -22,7 +22,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
     switch ($row->getSourceProperty('type')) {
       case 'image':
         if (!is_array($value['default_image'])) {
-          $value['default_image'] = array('uuid' => '');
+          $value['default_image'] = ['uuid' => ''];
         }
         break;
 
diff --git a/core/modules/field/src/Plugin/migrate/source/d6/Field.php b/core/modules/field/src/Plugin/migrate/source/d6/Field.php
index cb108d7..7c9e620 100644
--- a/core/modules/field/src/Plugin/migrate/source/d6/Field.php
+++ b/core/modules/field/src/Plugin/migrate/source/d6/Field.php
@@ -20,7 +20,7 @@ class Field extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('content_node_field', 'cnf')
-      ->fields('cnf', array(
+      ->fields('cnf', [
         'field_name',
         'type',
         'global_settings',
@@ -31,7 +31,7 @@ public function query() {
         'db_columns',
         'active',
         'locked',
-      ))
+      ])
       ->distinct();
     // Only import fields which are actually being used.
     $query->innerJoin('content_node_field_instance', 'cnfi', 'cnfi.field_name = cnf.field_name');
@@ -43,7 +43,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('Field name'),
       'type' => $this->t('Type (text, integer, ....)'),
       'widget_type' => $this->t('An instance-specific widget type'),
@@ -55,7 +55,7 @@ public function fields() {
       'db_columns' => $this->t('DB Columns'),
       'active' => $this->t('Active'),
       'locked' => $this->t('Locked'),
-    );
+    ];
   }
 
   /**
@@ -96,10 +96,10 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function getIds() {
-    $ids['field_name'] = array(
+    $ids['field_name'] = [
       'type' => 'string',
       'alias' => 'cnf',
-    );
+    ];
     return $ids;
   }
 
diff --git a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstance.php b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstance.php
index 5436df6..dbea7a8 100644
--- a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstance.php
+++ b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstance.php
@@ -33,7 +33,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The machine name of field.'),
       'type_name' => $this->t('Content type where this field is in use.'),
       'weight' => $this->t('Weight.'),
@@ -45,7 +45,7 @@ public function fields() {
       'widget_module' => $this->t('Module that implements widget.'),
       'widget_active' => $this->t('Status of widget'),
       'module' => $this->t('The module that provides the field.'),
-    );
+    ];
   }
 
   /**
@@ -66,15 +66,15 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function getIds() {
-    $ids = array(
-      'field_name' => array(
+    $ids = [
+      'field_name' => [
         'type' => 'string',
         'alias' => 'cnfi',
-      ),
-      'type_name' => array(
+      ],
+      'type_name' => [
         'type' => 'string',
-      ),
-    );
+      ],
+    ];
     return $ids;
   }
 
diff --git a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerFormDisplay.php b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerFormDisplay.php
index 44bad61..21baa9e 100644
--- a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerFormDisplay.php
+++ b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerFormDisplay.php
@@ -18,7 +18,7 @@ class FieldInstancePerFormDisplay extends DrupalSqlBase {
    * {@inheritdoc}
    */
   protected function initializeIterator() {
-    $rows = array();
+    $rows = [];
     $result = $this->prepareQuery()->execute();
     while ($field_row = $result->fetchAssoc()) {
       $bundle = $field_row['type_name'];
@@ -44,7 +44,7 @@ protected function initializeIterator() {
    */
   public function query() {
     $query = $this->select('content_node_field_instance', 'cnfi')
-      ->fields('cnfi', array(
+      ->fields('cnfi', [
         'field_name',
         'type_name',
         'weight',
@@ -55,11 +55,11 @@ public function query() {
         'description',
         'widget_module',
         'widget_active',
-      ))
-      ->fields('cnf', array(
+      ])
+      ->fields('cnf', [
         'type',
         'module',
-      ));
+      ]);
     $query->join('content_node_field', 'cnf', 'cnfi.field_name = cnf.field_name');
     $query->orderBy('cnfi.weight');
 
@@ -70,7 +70,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The machine name of field.'),
       'type_name' => $this->t('Content type where this field is used.'),
       'weight' => $this->t('Weight.'),
@@ -81,7 +81,7 @@ public function fields() {
       'description' => $this->t('A description of field.'),
       'widget_module' => $this->t('Module that implements widget.'),
       'widget_active' => $this->t('Status of widget'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerViewMode.php b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerViewMode.php
index 2e1832e..43d2782 100644
--- a/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerViewMode.php
+++ b/core/modules/field/src/Plugin/migrate/source/d6/FieldInstancePerViewMode.php
@@ -18,7 +18,7 @@ class FieldInstancePerViewMode extends ViewModeBase {
    * {@inheritdoc}
    */
   protected function initializeIterator() {
-    $rows = array();
+    $rows = [];
     $result = $this->prepareQuery()->execute();
     while ($field_row = $result->fetchAssoc()) {
       // These are added to every view mode row.
@@ -52,18 +52,18 @@ protected function initializeIterator() {
    */
   public function query() {
     $query = $this->select('content_node_field_instance', 'cnfi')
-      ->fields('cnfi', array(
+      ->fields('cnfi', [
         'field_name',
         'type_name',
         'weight',
         'label',
         'display_settings',
         'widget_settings',
-      ))
-      ->fields('cnf', array(
+      ])
+      ->fields('cnf', [
         'type',
         'module',
-      ));
+      ]);
     $query->join('content_node_field', 'cnf', 'cnfi.field_name = cnf.field_name');
     $query->orderBy('cnfi.weight');
 
@@ -74,7 +74,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The machine name of field.'),
       'type_name' => $this->t('Content type where this field is used.'),
       'weight' => $this->t('Weight.'),
@@ -85,7 +85,7 @@ public function fields() {
       'description' => $this->t('A description of field.'),
       'widget_module' => $this->t('Module that implements widget.'),
       'widget_active' => $this->t('Status of widget'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/field/src/Plugin/migrate/source/d7/Field.php b/core/modules/field/src/Plugin/migrate/source/d7/Field.php
index 2e8f745..d9aef91 100644
--- a/core/modules/field/src/Plugin/migrate/source/d7/Field.php
+++ b/core/modules/field/src/Plugin/migrate/source/d7/Field.php
@@ -21,7 +21,7 @@ public function query() {
     $query = $this->select('field_config', 'fc')
       ->distinct()
       ->fields('fc')
-      ->fields('fci', array('entity_type'))
+      ->fields('fci', ['entity_type'])
       ->condition('fc.active', 1)
       ->condition('fc.deleted', 0)
       ->condition('fc.storage_active', 1);
@@ -34,7 +34,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The name of this field.'),
       'type' => $this->t('The type of this field.'),
       'module' => $this->t('The module that implements the field type.'),
@@ -42,7 +42,7 @@ public function fields() {
       'locked' => $this->t('Locked'),
       'cardinality' => $this->t('Cardinality'),
       'translatable' => $this->t('Translatable'),
-    );
+    ];
   }
 
   /**
@@ -59,16 +59,16 @@ public function prepareRow(Row $row, $keep = TRUE) {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'field_name' => array(
+    return [
+      'field_name' => [
         'type' => 'string',
         'alias' => 'fc',
-      ),
-      'entity_type' => array(
+      ],
+      'entity_type' => [
         'type' => 'string',
         'alias' => 'fci',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstance.php b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstance.php
index 3da02b9..d06336e 100644
--- a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstance.php
+++ b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstance.php
@@ -25,7 +25,7 @@ public function query() {
       ->condition('fc.active', 1)
       ->condition('fc.deleted', 0)
       ->condition('fc.storage_active', 1)
-      ->fields('fc', array('type'));
+      ->fields('fc', ['type']);
 
     $query->innerJoin('field_config', 'fc', 'fci.field_id = fc.id');
     $query->addField('fc', 'data', 'field_data');
@@ -46,7 +46,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The machine name of field.'),
       'entity_type' => $this->t('The entity type.'),
       'bundle' => $this->t('The entity bundle.'),
@@ -55,7 +55,7 @@ public function fields() {
       'widget_settings' => $this->t('Widget settings.'),
       'display_settings' => $this->t('Display settings.'),
       'field_settings' => $this->t('Field settings.'),
-    );
+    ];
   }
 
   /**
@@ -68,7 +68,7 @@ public function prepareRow(Row $row) {
     $row->setSourceProperty('description', $data['description']);
     $row->setSourceProperty('required', $data['required']);
 
-    $default_value = !empty($data['default_value']) ? $data['default_value'] : array();
+    $default_value = !empty($data['default_value']) ? $data['default_value'] : [];
     if ($data['widget']['type'] == 'email_textfield' && $default_value) {
       $default_value[0]['value'] = $default_value[0]['email'];
       unset($default_value[0]['email']);
@@ -112,20 +112,20 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'entity_type' => array(
+    return [
+      'entity_type' => [
         'type' => 'string',
         'alias' => 'fci',
-      ),
-      'bundle' => array(
+      ],
+      'bundle' => [
         'type' => 'string',
         'alias' => 'fci',
-      ),
-      'field_name' => array(
+      ],
+      'field_name' => [
         'type' => 'string',
         'alias' => 'fci',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerFormDisplay.php b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerFormDisplay.php
index 62de5d9..ac599ec 100644
--- a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerFormDisplay.php
+++ b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerFormDisplay.php
@@ -19,16 +19,16 @@ class FieldInstancePerFormDisplay extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('field_config_instance', 'fci')
-      ->fields('fci', array(
+      ->fields('fci', [
         'field_name',
         'bundle',
         'data',
         'entity_type'
-      ))
-      ->fields('fc', array(
+      ])
+      ->fields('fc', [
         'type',
         'module',
-      ));
+      ]);
     $query->join('field_config', 'fc', 'fci.field_id = fc.id');
     return $query;
   }
@@ -47,27 +47,27 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'field_name' => $this->t('The machine name of field.'),
       'bundle' => $this->t('Content type where this field is used.'),
       'data' => $this->t('Field configuration data.'),
       'entity_type' => $this->t('The entity type.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'bundle' => array(
+    return [
+      'bundle' => [
         'type' => 'string',
-      ),
-      'field_name' => array(
+      ],
+      'field_name' => [
         'type' => 'string',
         'alias' => 'fci',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerViewMode.php b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerViewMode.php
index 72a845b..7339e76 100644
--- a/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerViewMode.php
+++ b/core/modules/field/src/Plugin/migrate/source/d7/FieldInstancePerViewMode.php
@@ -18,7 +18,7 @@ class FieldInstancePerViewMode extends DrupalSqlBase {
    * {@inheritdoc}
    */
   protected function initializeIterator() {
-    $rows = array();
+    $rows = [];
     $result = $this->prepareQuery()->execute();
     foreach ($result as $field_instance) {
       $data = unserialize($field_instance['data']);
@@ -53,7 +53,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'entity_type' => $this->t('The entity type ID.'),
       'bundle' => $this->t('The bundle ID.'),
       'field_name' => $this->t('Machine name of the field.'),
@@ -64,27 +64,27 @@ public function fields() {
       'settings' => $this->t('Array of formatter-specific settings.'),
       'module' => $this->t('The module providing the formatter.'),
       'weight' => $this->t('Display weight of the field.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'entity_type' => array(
+    return [
+      'entity_type' => [
         'type' => 'string',
-      ),
-      'bundle' => array(
+      ],
+      'bundle' => [
         'type' => 'string',
-      ),
-      'view_mode' => array(
+      ],
+      'view_mode' => [
         'type' => 'string',
-      ),
-      'field_name' => array(
+      ],
+      'field_name' => [
         'type' => 'string',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php b/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
index 5fa491b..17292e0 100644
--- a/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
+++ b/core/modules/field/src/Tests/Boolean/BooleanFieldTest.php
@@ -47,12 +47,12 @@ class BooleanFieldTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalLogin($this->drupalCreateUser([
       'view test entity',
       'administer entity_test content',
       'administer entity_test form display',
       'administer entity_test fields',
-    )));
+    ]));
   }
 
   /**
@@ -65,36 +65,36 @@ function testBooleanField() {
 
     // Create a field with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'boolean',
-    ));
+    ]);
     $this->fieldStorage->save();
-    $this->field = FieldConfig::create(array(
+    $this->field = FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
       'label' => $label,
       'required' => TRUE,
-      'settings' => array(
+      'settings' => [
         'on_label' => $on,
         'off_label' => $off,
-      ),
-    ));
+      ],
+    ]);
     $this->field->save();
 
     // Create a form display for the default form mode.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'boolean_checkbox',
-      ))
+      ])
       ->save();
     // Create a display for the full view mode.
     entity_get_display('entity_test', 'entity_test', 'full')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'boolean',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -104,13 +104,13 @@ function testBooleanField() {
     $this->assertNoRaw($on, 'Does not use the "On" label.');
 
     // Submit and ensure it is accepted.
-    $edit = array(
+    $edit = [
       "{$field_name}[value]" => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     // Verify that boolean value is displayed.
     $entity = EntityTest::load($id);
@@ -121,12 +121,12 @@ function testBooleanField() {
 
     // Test with "On" label option.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'boolean_checkbox',
-        'settings' => array(
+        'settings' => [
           'display_label' => FALSE,
-        )
-      ))
+        ]
+      ])
       ->save();
 
     $this->drupalGet('entity_test/add');
@@ -136,9 +136,9 @@ function testBooleanField() {
 
     // Test if we can change the on label.
     $on = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'settings[on_label]' => $on,
-    );
+    ];
     $this->drupalPostForm('entity_test/structure/entity_test/fields/entity_test.entity_test.' . $field_name, $edit, t('Save settings'));
     // Check if we see the updated labels in the creation form.
     $this->drupalGet('entity_test/add');
@@ -150,7 +150,7 @@ function testBooleanField() {
     $this->drupalGet($fieldEditUrl);
 
     // Click on the widget settings button to open the widget settings form.
-    $this->drupalPostAjaxForm(NULL, array(), $field_name . "_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], $field_name . "_settings_edit");
 
     $this->assertText(
       'Use field label instead of the "On label" as label',
@@ -158,7 +158,7 @@ function testBooleanField() {
     );
 
     // Enable setting.
-    $edit = array('fields[' . $field_name . '][settings_edit_form][settings][display_label]' => 1);
+    $edit = ['fields[' . $field_name . '][settings_edit_form][settings][display_label]' => 1];
     $this->drupalPostAjaxForm(NULL, $edit, $field_name . "_plugin_settings_update");
     $this->drupalPostForm(NULL, NULL, 'Save');
 
@@ -167,7 +167,7 @@ function testBooleanField() {
     $this->drupalGet($fieldEditUrl);
     $this->assertText('Use field label: Yes', 'Checking the display settings checkbox updated the value.');
 
-    $this->drupalPostAjaxForm(NULL, array(), $field_name . "_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], $field_name . "_settings_edit");
     $this->assertText(
       'Use field label instead of the "On label" as label',
       t('Display setting checkbox is available')
diff --git a/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php b/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
index 0d0c475..f454420 100644
--- a/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
+++ b/core/modules/field/src/Tests/Boolean/BooleanFormatterSettingsTest.php
@@ -44,10 +44,10 @@ protected function setUp() {
 
     // Create a content type. Use Node because it has Field UI pages that work.
     $type_name = Unicode::strtolower($this->randomMachineName(8)) . '_test';
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $this->bundle = $type->id();
 
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node display', 'bypass node access', 'administer nodes'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node display', 'bypass node access', 'administer nodes']);
     $this->drupalLogin($admin_user);
 
     $this->fieldName = Unicode::strtolower($this->randomMachineName(8));
@@ -81,14 +81,14 @@ function testBooleanFormatterSettings() {
     // List the options we expect to see on the settings form. Omit the one
     // with the Unicode check/x characters, which does not appear to work
     // well in WebTestBase.
-    $options = array(
+    $options = [
       'Yes / No',
       'True / False',
       'On / Off',
       'Enabled / Disabled',
       '1 / 0',
       'Custom',
-    );
+    ];
 
     // Define what the "default" option should look like, depending on the
     // field settings.
@@ -96,29 +96,29 @@ function testBooleanFormatterSettings() {
 
     // For several different values of the field settings, test that the
     // options, including default, are shown correctly.
-    $settings = array(
-      array('Yes', 'No'),
-      array('On', 'Off'),
-      array('TRUE', 'FALSE'),
-    );
+    $settings = [
+      ['Yes', 'No'],
+      ['On', 'Off'],
+      ['TRUE', 'FALSE'],
+    ];
 
     foreach ($settings as $values) {
       // Set up the field settings.
       $this->drupalGet('admin/structure/types/manage/' . $this->bundle . '/fields/node.' . $this->bundle . '.' . $this->fieldName);
-      $this->drupalPostForm(NULL, array(
+      $this->drupalPostForm(NULL, [
         'settings[on_label]' => $values[0],
         'settings[off_label]' => $values[1],
-      ), 'Save settings');
+      ], 'Save settings');
 
       // Open the Manage Display page and trigger the field settings form.
       $this->drupalGet('admin/structure/types/manage/' . $this->bundle . '/display');
-      $this->drupalPostAjaxForm(NULL, array(), $this->fieldName . '_settings_edit');
+      $this->drupalPostAjaxForm(NULL, [], $this->fieldName . '_settings_edit');
 
       // Test that the settings options are present in the correct format.
       foreach ($options as $string) {
         $this->assertText($string);
       }
-      $this->assertText(SafeMarkup::format($default, array('@on' => $values[0], '@off' => $values[1])));
+      $this->assertText(SafeMarkup::format($default, ['@on' => $values[0], '@off' => $values[1]]));
     }
 
     foreach ($settings as $values) {
diff --git a/core/modules/field/src/Tests/Email/EmailFieldTest.php b/core/modules/field/src/Tests/Email/EmailFieldTest.php
index 7c22861..779870c 100644
--- a/core/modules/field/src/Tests/Email/EmailFieldTest.php
+++ b/core/modules/field/src/Tests/Email/EmailFieldTest.php
@@ -20,7 +20,7 @@ class EmailFieldTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'entity_test', 'field_ui');
+  public static $modules = ['node', 'entity_test', 'field_ui'];
 
   /**
    * A field storage to use in this test class.
@@ -39,11 +39,11 @@ class EmailFieldTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalLogin($this->drupalCreateUser([
       'view test entity',
       'administer entity_test content',
       'administer content types',
-    )));
+    ]));
   }
 
   /**
@@ -52,11 +52,11 @@ protected function setUp() {
   function testEmailField() {
     // Create a field with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'email',
-    ));
+    ]);
     $this->fieldStorage->save();
     $this->field = FieldConfig::create([
       'field_storage' => $this->fieldStorage,
@@ -66,18 +66,18 @@ function testEmailField() {
 
     // Create a form display for the default form mode.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'email_default',
-        'settings' => array(
+        'settings' => [
           'placeholder' => 'example@example.com',
-        ),
-      ))
+        ],
+      ])
       ->save();
     // Create a display for the full view mode.
     entity_get_display('entity_test', 'entity_test', 'full')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'email_mailto',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -87,13 +87,13 @@ function testEmailField() {
 
     // Submit a valid email address and ensure it is accepted.
     $value = 'test@example.com';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
     $this->assertRaw($value);
 
     // Verify that a mailto link is displayed.
diff --git a/core/modules/field/src/Tests/EntityReference/EntityReferenceAdminTest.php b/core/modules/field/src/Tests/EntityReference/EntityReferenceAdminTest.php
index 3803029..fa68cb6 100644
--- a/core/modules/field/src/Tests/EntityReference/EntityReferenceAdminTest.php
+++ b/core/modules/field/src/Tests/EntityReference/EntityReferenceAdminTest.php
@@ -46,18 +46,18 @@ protected function setUp() {
 
     // Create a content type, with underscores.
     $type_name = strtolower($this->randomMachineName(8)) . '_test';
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $this->type = $type->id();
 
     // Create test user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'access content',
       'administer node fields',
       'administer node display',
       'administer views',
       'create ' . $type_name . ' content',
       'edit own ' . $type_name . ' content',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
@@ -74,11 +74,11 @@ public function testFieldAdminHandler() {
     $this->assertOption('edit-new-storage-type', 'field_ui:entity_reference:node');
     $this->assertOption('edit-new-storage-type', 'field_ui:entity_reference:user');
 
-    $this->drupalPostForm(NULL, array(
+    $this->drupalPostForm(NULL, [
       'label' => 'Test label',
       'field_name' => 'test',
       'new_storage_type' => 'entity_reference',
-    ), t('Save and continue'));
+    ], t('Save and continue'));
 
     // Node should be selected by default.
     $this->assertFieldByName('settings[target_type]', 'node');
@@ -87,7 +87,7 @@ public function testFieldAdminHandler() {
     $this->assertFieldSelectOptions('settings[target_type]', array_keys(\Drupal::entityManager()->getDefinitions()));
 
     // Second step: 'Field settings' form.
-    $this->drupalPostForm(NULL, array(), t('Save field settings'));
+    $this->drupalPostForm(NULL, [], t('Save field settings'));
 
     // The base handler should be selected by default.
     $this->assertFieldByName('settings[handler]', 'default:node');
@@ -106,7 +106,7 @@ public function testFieldAdminHandler() {
     $this->assertFieldByName('settings[handler_settings][sort][field]', '_none');
     $this->assertNoFieldByName('settings[handler_settings][sort][direction]');
     // Option 1: sort by field.
-    $this->drupalPostAjaxForm(NULL, array('settings[handler_settings][sort][field]' => 'nid'), 'settings[handler_settings][sort][field]');
+    $this->drupalPostAjaxForm(NULL, ['settings[handler_settings][sort][field]' => 'nid'], 'settings[handler_settings][sort][field]');
     $this->assertFieldByName('settings[handler_settings][sort][direction]', 'ASC');
 
     // Test that a non-translatable base field is a sort option.
@@ -117,14 +117,14 @@ public function testFieldAdminHandler() {
     $this->assertFieldByXPath("//select[@name='settings[handler_settings][sort][field]']/option[@value='body.value']");
 
     // Set back to no sort.
-    $this->drupalPostAjaxForm(NULL, array('settings[handler_settings][sort][field]' => '_none'), 'settings[handler_settings][sort][field]');
+    $this->drupalPostAjaxForm(NULL, ['settings[handler_settings][sort][field]' => '_none'], 'settings[handler_settings][sort][field]');
     $this->assertNoFieldByName('settings[handler_settings][sort][direction]');
 
     // Third step: confirm.
-    $this->drupalPostForm(NULL, array(
+    $this->drupalPostForm(NULL, [
       'required' => '1',
       'settings[handler_settings][target_bundles][' . key($bundles) . ']' => key($bundles),
-    ), t('Save settings'));
+    ], t('Save settings'));
 
     // Check that the field appears in the overview form.
     $this->assertFieldByXPath('//table[@id="field-overview"]//tr[@id="field-test"]/td[1]', 'Test label', 'Field was created and appears in the overview page.');
@@ -133,14 +133,14 @@ public function testFieldAdminHandler() {
     // field is required.
     // The first 'Edit' link is for the Body field.
     $this->clickLink(t('Edit'), 1);
-    $this->drupalPostForm(NULL, array(), t('Save settings'));
+    $this->drupalPostForm(NULL, [], t('Save settings'));
 
     // Switch the target type to 'taxonomy_term' and check that the settings
     // specific to its selection handler are displayed.
     $field_name = 'node.' . $this->type . '.field_test';
-    $edit = array(
+    $edit = [
       'settings[target_type]' => 'taxonomy_term',
-    );
+    ];
     $this->drupalPostForm($bundle_path . '/fields/' . $field_name . '/storage', $edit, t('Save field settings'));
     $this->drupalGet($bundle_path . '/fields/' . $field_name);
     $this->assertFieldByName('settings[handler_settings][auto_create]');
@@ -148,63 +148,63 @@ public function testFieldAdminHandler() {
     // Switch the target type to 'user' and check that the settings specific to
     // its selection handler are displayed.
     $field_name = 'node.' . $this->type . '.field_test';
-    $edit = array(
+    $edit = [
       'settings[target_type]' => 'user',
-    );
+    ];
     $this->drupalPostForm($bundle_path . '/fields/' . $field_name . '/storage', $edit, t('Save field settings'));
     $this->drupalGet($bundle_path . '/fields/' . $field_name);
     $this->assertFieldByName('settings[handler_settings][filter][type]', '_none');
 
     // Switch the target type to 'node'.
     $field_name = 'node.' . $this->type . '.field_test';
-    $edit = array(
+    $edit = [
       'settings[target_type]' => 'node',
-    );
+    ];
     $this->drupalPostForm($bundle_path . '/fields/' . $field_name . '/storage', $edit, t('Save field settings'));
 
     // Try to select the views handler.
-    $edit = array(
+    $edit = [
       'settings[handler]' => 'views',
-    );
+    ];
     $this->drupalPostAjaxForm($bundle_path . '/fields/' . $field_name, $edit, 'settings[handler]');
-    $this->assertRaw(t('No eligible views were found. <a href=":create">Create a view</a> with an <em>Entity Reference</em> display, or add such a display to an <a href=":existing">existing view</a>.', array(
+    $this->assertRaw(t('No eligible views were found. <a href=":create">Create a view</a> with an <em>Entity Reference</em> display, or add such a display to an <a href=":existing">existing view</a>.', [
       ':create' => \Drupal::url('views_ui.add'),
       ':existing' => \Drupal::url('entity.view.collection'),
-    )));
+    ]));
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     // If no eligible view is available we should see a message.
     $this->assertText('The views entity selection mode requires a view.');
 
     // Enable the entity_reference_test module which creates an eligible view.
-    $this->container->get('module_installer')->install(array('entity_reference_test'));
+    $this->container->get('module_installer')->install(['entity_reference_test']);
     $this->resetAll();
     $this->drupalGet($bundle_path . '/fields/' . $field_name);
     $this->drupalPostAjaxForm($bundle_path . '/fields/' . $field_name, $edit, 'settings[handler]');
-    $edit = array(
+    $edit = [
       'settings[handler_settings][view][view_and_display]' => 'test_entity_reference:entity_reference_1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     $this->assertResponse(200);
 
     // Switch the target type to 'entity_test'.
-    $edit = array(
+    $edit = [
       'settings[target_type]' => 'entity_test',
-    );
+    ];
     $this->drupalPostForm($bundle_path . '/fields/' . $field_name . '/storage', $edit, t('Save field settings'));
     $this->drupalGet($bundle_path . '/fields/' . $field_name);
-    $edit = array(
+    $edit = [
       'settings[handler]' => 'views',
-    );
+    ];
     $this->drupalPostAjaxForm($bundle_path . '/fields/' . $field_name, $edit, 'settings[handler]');
-    $edit = array(
+    $edit = [
       'required' => FALSE,
       'settings[handler_settings][view][view_and_display]' => 'test_entity_reference_entity_test:entity_reference_1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     $this->assertResponse(200);
 
     // Create a new view and display it as a entity reference.
-    $edit = array(
+    $edit = [
       'id' => 'node_test_view',
       'label' => 'Node Test View',
       'show[wizard_key]' => 'node',
@@ -214,13 +214,13 @@ public function testFieldAdminHandler() {
       'page[path]' => 'test/node/view',
       'page[style][style_plugin]' => 'default',
       'page[style][row_plugin]' => 'fields',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/add', $edit, t('Save and edit'));
-    $this->drupalPostForm(NULL, array(), t('Duplicate as Entity Reference'));
+    $this->drupalPostForm(NULL, [], t('Duplicate as Entity Reference'));
     $this->clickLink(t('Settings'));
-    $edit = array(
+    $edit = [
       'style_options[search_fields][title]' => 'title',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
 
     // Set sort to NID ascending.
@@ -230,33 +230,33 @@ public function testFieldAdminHandler() {
     $this->drupalPostForm('admin/structure/views/nojs/add-handler/node_test_view/entity_reference_1/sort', $edit, t('Add and configure sort criteria'));
     $this->drupalPostForm(NULL, NULL, t('Apply'));
 
-    $this->drupalPostForm('admin/structure/views/view/node_test_view/edit/entity_reference_1', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/node_test_view/edit/entity_reference_1', [], t('Save'));
     $this->clickLink(t('Settings'));
 
     // Create a test entity reference field.
     $field_name = 'test_entity_ref_field';
-    $edit = array(
+    $edit = [
       'new_storage_type' => 'field_ui:entity_reference:node',
       'label' => 'Test Entity Reference Field',
       'field_name' => $field_name,
-    );
+    ];
     $this->drupalPostForm($bundle_path . '/fields/add-field', $edit, t('Save and continue'));
 
     // Set to unlimited.
-    $edit = array(
+    $edit = [
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save field settings'));
 
     // Add the view to the test field.
-    $edit = array(
+    $edit = [
       'settings[handler]' => 'views',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'settings[handler]');
-    $edit = array(
+    $edit = [
       'required' => FALSE,
       'settings[handler_settings][view][view_and_display]' => 'node_test_view:entity_reference_1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
 
     // Create nodes.
@@ -275,34 +275,34 @@ public function testFieldAdminHandler() {
     $this->drupalGet('node/add/' . $this->type);
     $result = $this->xpath('//input[@name="field_test_entity_ref_field[0][target_id]" and contains(@data-autocomplete-path, "/entity_reference_autocomplete/node/views/")]');
     $target_url = $this->getAbsoluteUrl($result[0]['data-autocomplete-path']);
-    $this->drupalGet($target_url, array('query' => array('q' => 'Foo')));
+    $this->drupalGet($target_url, ['query' => ['q' => 'Foo']]);
     $this->assertRaw($node1->getTitle() . ' (' . $node1->id() . ')');
     $this->assertRaw($node2->getTitle() . ' (' . $node2->id() . ')');
 
     // Try to add a new node, fill the entity reference field and submit the
     // form.
     $this->drupalPostForm('node/add/' . $this->type, [], t('Add another item'));
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'Example',
       'field_test_entity_ref_field[0][target_id]' => 'Foo Node (' . $node1->id() . ')',
       'field_test_entity_ref_field[1][target_id]' => 'Foo Node (' . $node2->id() . ')',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertResponse(200);
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'Example',
       'field_test_entity_ref_field[0][target_id]' => 'Test'
-    );
+    ];
     $this->drupalPostForm('node/add/' . $this->type, $edit, t('Save'));
 
     // Assert that entity reference autocomplete field is validated.
     $this->assertText(t('There are no entities matching "@entity"', ['@entity' => 'Test']));
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'Test',
       'field_test_entity_ref_field[0][target_id]' => $node1->getTitle()
-    );
+    ];
     $this->drupalPostForm('node/add/' . $this->type, $edit, t('Save'));
 
     // Assert the results multiple times to avoid sorting problem of nodes with
@@ -312,15 +312,15 @@ public function testFieldAdminHandler() {
     $this->assertText(t("@node2", ['@node2' => $node2->getTitle() . ' (' . $node2->id() . ')']));
     $this->assertText(t('Specify the one you want by appending the id in parentheses, like "@example".', ['@example' => $node2->getTitle() . ' (' . $node2->id() . ')']));
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'Test',
       'field_test_entity_ref_field[0][target_id]' => $node1->getTitle() . ' (' . $node1->id() . ')'
-    );
+    ];
     $this->drupalPostForm('node/add/' . $this->type, $edit, t('Save'));
     $this->assertLink($node1->getTitle());
 
     // Tests adding default values to autocomplete widgets.
-    Vocabulary::create(array('vid' => 'tags', 'name' => 'tags'))->save();
+    Vocabulary::create(['vid' => 'tags', 'name' => 'tags'])->save();
     $taxonomy_term_field_name = $this->createEntityReferenceField('taxonomy_term', ['tags']);
     $field_path = 'node.' . $this->type . '.field_' . $taxonomy_term_field_name;
     $this->drupalGet($bundle_path . '/fields/' . $field_path . '/storage');
@@ -351,7 +351,7 @@ public function testFieldAdminHandler() {
    */
   public function testAvailableFormatters() {
     // Create a new vocabulary.
-    Vocabulary::create(array('vid' => 'tags', 'name' => 'tags'))->save();
+    Vocabulary::create(['vid' => 'tags', 'name' => 'tags'])->save();
 
     // Create entity reference field with taxonomy term as a target.
     $taxonomy_term_field_name = $this->createEntityReferenceField('taxonomy_term', ['tags']);
@@ -370,38 +370,38 @@ public function testAvailableFormatters() {
 
     // Check for Taxonomy Term select box values.
     // Test if Taxonomy Term Entity Reference Field has the correct formatters.
-    $this->assertFieldSelectOptions('fields[field_' . $taxonomy_term_field_name . '][type]', array(
+    $this->assertFieldSelectOptions('fields[field_' . $taxonomy_term_field_name . '][type]', [
       'entity_reference_label',
       'entity_reference_entity_id',
       'entity_reference_rss_category',
       'entity_reference_entity_view',
-    ));
+    ]);
 
     // Test if User Reference Field has the correct formatters.
     // Author should be available for this field.
     // RSS Category should not be available for this field.
-    $this->assertFieldSelectOptions('fields[field_' . $user_field_name . '][type]', array(
+    $this->assertFieldSelectOptions('fields[field_' . $user_field_name . '][type]', [
       'author',
       'entity_reference_entity_id',
       'entity_reference_entity_view',
       'entity_reference_label',
-    ));
+    ]);
 
     // Test if Node Entity Reference Field has the correct formatters.
     // RSS Category should not be available for this field.
-    $this->assertFieldSelectOptions('fields[field_' . $node_field_name . '][type]', array(
+    $this->assertFieldSelectOptions('fields[field_' . $node_field_name . '][type]', [
       'entity_reference_label',
       'entity_reference_entity_id',
       'entity_reference_entity_view',
-    ));
+    ]);
 
     // Test if Date Format Reference Field has the correct formatters.
     // RSS Category & Entity View should not be available for this field.
     // This could be any field without a ViewBuilder.
-    $this->assertFieldSelectOptions('fields[field_' . $date_format_field_name . '][type]', array(
+    $this->assertFieldSelectOptions('fields[field_' . $date_format_field_name . '][type]', [
       'entity_reference_label',
       'entity_reference_entity_id',
-    ));
+    ]);
   }
 
   /**
@@ -483,7 +483,7 @@ protected function createEntityReferenceField($target_type, $bundles = []) {
     // Generate a random field name, must be only lowercase characters.
     $field_name = strtolower($this->randomMachineName());
 
-    $storage_edit = $field_edit = array();
+    $storage_edit = $field_edit = [];
     $storage_edit['settings[target_type]'] = $target_type;
     foreach ($bundles as $bundle) {
       $field_edit['settings[handler_settings][target_bundles][' . $bundle . ']'] = TRUE;
@@ -507,7 +507,7 @@ protected function createEntityReferenceField($target_type, $bundles = []) {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertFieldSelectOptions($name, array $expected_options) {
-    $xpath = $this->buildXPathQuery('//select[@name=:name]', array(':name' => $name));
+    $xpath = $this->buildXPathQuery('//select[@name=:name]', [':name' => $name]);
     $fields = $this->xpath($xpath);
     if ($fields) {
       $field = $fields[0];
@@ -533,7 +533,7 @@ protected function assertFieldSelectOptions($name, array $expected_options) {
    *   An array of option values as strings.
    */
   protected function getAllOptionsList(\SimpleXMLElement $element) {
-    $options = array();
+    $options = [];
     // Add all options items.
     foreach ($element->option as $option) {
       $options[] = (string) $option['value'];
diff --git a/core/modules/field/src/Tests/EntityReference/EntityReferenceFileUploadTest.php b/core/modules/field/src/Tests/EntityReference/EntityReferenceFileUploadTest.php
index 6aef0f8..1957584 100644
--- a/core/modules/field/src/Tests/EntityReference/EntityReferenceFileUploadTest.php
+++ b/core/modules/field/src/Tests/EntityReference/EntityReferenceFileUploadTest.php
@@ -14,7 +14,7 @@
  */
 class EntityReferenceFileUploadTest extends WebTestBase {
 
-  public static $modules = array('entity_reference', 'node', 'file');
+  public static $modules = ['entity_reference', 'node', 'file'];
 
   /**
    * The name of a content type that will reference $referencedType.
@@ -46,19 +46,19 @@ protected function setUp() {
 
     $referenced = $this->drupalCreateContentType();
     $this->referencedType = $referenced->id();
-    $this->nodeId = $this->drupalCreateNode(array('type' => $referenced->id()))->id();
+    $this->nodeId = $this->drupalCreateNode(['type' => $referenced->id()])->id();
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'test_field',
       'entity_type' => 'node',
       'translatable' => FALSE,
-      'entity_types' => array(),
-      'settings' => array(
+      'entity_types' => [],
+      'settings' => [
         'target_type' => 'node',
-      ),
+      ],
       'type' => 'entity_reference',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
 
     FieldConfig::create([
       'label' => 'Entity reference field',
@@ -66,25 +66,25 @@ protected function setUp() {
       'entity_type' => 'node',
       'required' => TRUE,
       'bundle' => $referencing->id(),
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
+        'handler_settings' => [
           // Reference a single vocabulary.
-          'target_bundles' => array(
+          'target_bundles' => [
             $referenced->id(),
-          ),
-        ),
-      ),
+          ],
+        ],
+      ],
     ])->save();
 
 
     // Create a file field.
     $file_field_name = 'file_field';
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $file_field_name,
       'entity_type' => 'node',
       'type' => 'file'
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'entity_type' => 'node',
@@ -98,12 +98,12 @@ protected function setUp() {
       ->setComponent($file_field_name)
       ->save();
     entity_get_form_display('node', $referencing->id(), 'default')
-      ->setComponent('test_field', array(
+      ->setComponent('test_field', [
         'type' => 'entity_reference_autocomplete',
-      ))
-      ->setComponent($file_field_name, array(
+      ])
+      ->setComponent($file_field_name, [
          'type' => 'file_generic',
-      ))
+      ])
       ->save();
   }
 
@@ -111,17 +111,17 @@ protected function setUp() {
    * Tests that the autocomplete input element does not cause ajax fatal.
    */
   public function testFileUpload() {
-    $user1 = $this->drupalCreateUser(array('access content', "create $this->referencingType content"));
+    $user1 = $this->drupalCreateUser(['access content', "create $this->referencingType content"]);
     $this->drupalLogin($user1);
 
     $test_file = current($this->drupalGetTestFiles('text'));
     $edit['files[file_field_0]'] = drupal_realpath($test_file->uri);
     $this->drupalPostForm('node/add/' . $this->referencingType, $edit, 'Upload');
     $this->assertResponse(200);
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'test_field[0][target_id]' => $this->nodeId,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertResponse(200);
   }
diff --git a/core/modules/field/src/Tests/EntityReference/EntityReferenceTestTrait.php b/core/modules/field/src/Tests/EntityReference/EntityReferenceTestTrait.php
index 13e28da..568cd4d 100644
--- a/core/modules/field/src/Tests/EntityReference/EntityReferenceTestTrait.php
+++ b/core/modules/field/src/Tests/EntityReference/EntityReferenceTestTrait.php
@@ -34,30 +34,30 @@
    *
    * @see \Drupal\Core\Entity\Plugin\EntityReferenceSelection\SelectionBase::buildConfigurationForm()
    */
-  protected function createEntityReferenceField($entity_type, $bundle, $field_name, $field_label, $target_entity_type, $selection_handler = 'default', $selection_handler_settings = array(), $cardinality = 1) {
+  protected function createEntityReferenceField($entity_type, $bundle, $field_name, $field_label, $target_entity_type, $selection_handler = 'default', $selection_handler_settings = [], $cardinality = 1) {
     // Look for or add the specified field to the requested entity bundle.
     if (!FieldStorageConfig::loadByName($entity_type, $field_name)) {
-      FieldStorageConfig::create(array(
+      FieldStorageConfig::create([
         'field_name' => $field_name,
         'type' => 'entity_reference',
         'entity_type' => $entity_type,
         'cardinality' => $cardinality,
-        'settings' => array(
+        'settings' => [
           'target_type' => $target_entity_type,
-        ),
-      ))->save();
+        ],
+      ])->save();
     }
     if (!FieldConfig::loadByName($entity_type, $bundle, $field_name)) {
-      FieldConfig::create(array(
+      FieldConfig::create([
         'field_name' => $field_name,
         'entity_type' => $entity_type,
         'bundle' => $bundle,
         'label' => $field_label,
-        'settings' => array(
+        'settings' => [
           'handler' => $selection_handler,
           'handler_settings' => $selection_handler_settings,
-        ),
-      ))->save();
+        ],
+      ])->save();
     }
   }
 
diff --git a/core/modules/field/src/Tests/FieldDefaultValueCallbackTest.php b/core/modules/field/src/Tests/FieldDefaultValueCallbackTest.php
index e7f5a4c..b6926ce 100644
--- a/core/modules/field/src/Tests/FieldDefaultValueCallbackTest.php
+++ b/core/modules/field/src/Tests/FieldDefaultValueCallbackTest.php
@@ -18,7 +18,7 @@ class FieldDefaultValueCallbackTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_test', 'field_ui');
+  public static $modules = ['node', 'field_test', 'field_ui'];
 
   /**
    * The field name.
@@ -37,10 +37,10 @@ protected function setUp() {
 
     // Create Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array(
+      $this->drupalCreateContentType([
         'type' => 'article',
         'name' => 'Article',
-      ));
+      ]);
     }
 
   }
diff --git a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
index e69e04f..e353086 100644
--- a/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
+++ b/core/modules/field/src/Tests/FieldImportDeleteUninstallUiTest.php
@@ -22,12 +22,12 @@ class FieldImportDeleteUninstallUiTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'telephone', 'config', 'filter', 'datetime');
+  public static $modules = ['entity_test', 'telephone', 'config', 'filter', 'datetime'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array('synchronize configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['synchronize configuration']));
   }
 
   /**
@@ -35,11 +35,11 @@ protected function setUp() {
    */
   public function testImportDeleteUninstall() {
     // Create a telephone field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_tel',
       'entity_type' => 'entity_test',
       'type' => 'telephone',
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -47,11 +47,11 @@ public function testImportDeleteUninstall() {
     ])->save();
 
     // Create a text field.
-    $date_field_storage = FieldStorageConfig::create(array(
+    $date_field_storage = FieldStorageConfig::create([
       'field_name' => 'field_date',
       'entity_type' => 'entity_test',
       'type' => 'datetime',
-    ));
+    ]);
     $date_field_storage->save();
     FieldConfig::create([
       'field_storage' => $date_field_storage,
@@ -104,12 +104,12 @@ public function testImportDeleteUninstall() {
 
     // This will purge all the data, delete the field and uninstall the
     // Telephone and Text modules.
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $this->assertNoText('Field data will be deleted by this synchronization.');
     $this->rebuildContainer();
     $this->assertFalse(\Drupal::moduleHandler()->moduleExists('telephone'));
     $this->assertFalse(\Drupal::entityManager()->loadEntityByUuid('field_storage_config', $field_storage->uuid()), 'The telephone field has been deleted by the configuration synchronization');
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertFalse(isset($deleted_storages[$field_storage->uuid()]), 'Telephone field has been completed removed from the system.');
     $this->assertFalse(isset($deleted_storages[$field_storage->uuid()]), 'Text field has been completed removed from the system.');
   }
diff --git a/core/modules/field/src/Tests/FieldTestBase.php b/core/modules/field/src/Tests/FieldTestBase.php
index 30c80df..ce4161b 100644
--- a/core/modules/field/src/Tests/FieldTestBase.php
+++ b/core/modules/field/src/Tests/FieldTestBase.php
@@ -23,7 +23,7 @@
    *   An array of random values, in the format expected for field values.
    */
   function _generateTestFieldValues($cardinality) {
-    $values = array();
+    $values = [];
     for ($i = 0; $i < $cardinality; $i++) {
       // field_test fields treat 0 as 'empty value'.
       $values[$i]['value'] = mt_rand(1, 127);
@@ -61,7 +61,7 @@ function assertFieldValues(EntityInterface $entity, $field_name, $expected_value
     $values = $field->getValue();
     $this->assertEqual(count($values), count($expected_values), 'Expected number of values were saved.');
     foreach ($expected_values as $key => $value) {
-      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', array('@value' => $value)));
+      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', ['@value' => $value]));
     }
   }
 
diff --git a/core/modules/field/src/Tests/FormTest.php b/core/modules/field/src/Tests/FormTest.php
index 16625a9..77cc274 100644
--- a/core/modules/field/src/Tests/FormTest.php
+++ b/core/modules/field/src/Tests/FormTest.php
@@ -25,7 +25,7 @@ class FormTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_test', 'options', 'entity_test', 'locale');
+  public static $modules = ['node', 'field_test', 'options', 'entity_test', 'locale'];
 
   /**
    * An array of values defining a field single.
@@ -58,37 +58,37 @@ class FormTest extends FieldTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('view test entity', 'administer entity_test content'));
+    $web_user = $this->drupalCreateUser(['view test entity', 'administer entity_test content']);
     $this->drupalLogin($web_user);
 
-    $this->fieldStorageSingle = array(
+    $this->fieldStorageSingle = [
       'field_name' => 'field_single',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    );
-    $this->fieldStorageMultiple = array(
+    ];
+    $this->fieldStorageMultiple = [
       'field_name' => 'field_multiple',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'cardinality' => 4,
-    );
-    $this->fieldStorageUnlimited = array(
+    ];
+    $this->fieldStorageUnlimited = [
       'field_name' => 'field_unlimited',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
+    ];
 
-    $this->field = array(
+    $this->field = [
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
       'label' => $this->randomMachineName() . '_label',
       'description' => '[site:name]_description',
       'weight' => mt_rand(0, 127),
-      'settings' => array(
+      'settings' => [
         'test_field_setting' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
   }
 
   function testFieldFormSingle() {
@@ -115,22 +115,22 @@ function testFieldFormSingle() {
     $this->assertNoText('From hook_field_widget_form_alter(): Default form is true.', 'Not default value form in hook_field_widget_form_alter().');
 
     // Submit with invalid value (field-level validation).
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => -1
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $this->field['label'])), 'Field validation fails with invalid input.');
+    $this->assertRaw(t('%name does not accept the value -1.', ['%name' => $this->field['label']]), 'Field validation fails with invalid input.');
     // TODO : check that the correct field is flagged for error.
 
     // Create an entity
     $value = mt_rand(1, 127);
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
     $entity = EntityTest::load($id);
     $this->assertEqual($entity->{$field_name}->value, $value, 'Field value was saved');
 
@@ -141,23 +141,23 @@ function testFieldFormSingle() {
 
     // Update the entity.
     $value = mt_rand(1, 127);
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('entity_test @id has been updated.', array('@id' => $id)), 'Entity was updated');
-    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache(array($id));
+    $this->assertText(t('entity_test @id has been updated.', ['@id' => $id]), 'Entity was updated');
+    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache([$id]);
     $entity = EntityTest::load($id);
     $this->assertEqual($entity->{$field_name}->value, $value, 'Field value was updated');
 
     // Empty the field.
     $value = '';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value
-    );
+    ];
     $this->drupalPostForm('entity_test/manage/' . $id . '/edit', $edit, t('Save'));
-    $this->assertText(t('entity_test @id has been updated.', array('@id' => $id)), 'Entity was updated');
-    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache(array($id));
+    $this->assertText(t('entity_test @id has been updated.', ['@id' => $id]), 'Entity was updated');
+    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache([$id]);
     $entity = EntityTest::load($id);
     $this->assertTrue($entity->{$field_name}->isEmpty(), 'Field was emptied');
   }
@@ -170,7 +170,7 @@ function testFieldFormDefaultValue() {
     $field_name = $field_storage['field_name'];
     $this->field['field_name'] = $field_name;
     $default = rand(1, 127);
-    $this->field['default_value'] = array(array('value' => $default));
+    $this->field['default_value'] = [['value' => $default]];
     FieldStorageConfig::create($field_storage)->save();
     FieldConfig::create($this->field)->save();
     entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
@@ -183,13 +183,13 @@ function testFieldFormDefaultValue() {
     $this->assertFieldByXpath("//input[@name='{$field_name}[0][value]' and @value='$default']");
 
     // Try to submit an empty value.
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => '',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created.');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created.');
     $entity = EntityTest::load($id);
     $this->assertTrue($entity->{$field_name}->isEmpty(), 'Field is now empty.');
   }
@@ -206,29 +206,29 @@ function testFieldFormSingleRequired() {
       ->save();
 
     // Submit with missing required value.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('entity_test/add', $edit, t('Save'));
-    $this->assertRaw(t('@name field is required.', array('@name' => $this->field['label'])), 'Required field with no value fails validation');
+    $this->assertRaw(t('@name field is required.', ['@name' => $this->field['label']]), 'Required field with no value fails validation');
 
     // Create an entity
     $value = mt_rand(1, 127);
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
     $entity = EntityTest::load($id);
     $this->assertEqual($entity->{$field_name}->value, $value, 'Field value was saved');
 
     // Edit with missing required value.
     $value = '';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm('entity_test/manage/' . $id . '/edit', $edit, t('Save'));
-    $this->assertRaw(t('@name field is required.', array('@name' => $this->field['label'])), 'Required field with no value fails validation');
+    $this->assertRaw(t('@name field is required.', ['@name' => $this->field['label']]), 'Required field with no value fails validation');
   }
 
   function testFieldFormUnlimited() {
@@ -251,20 +251,20 @@ function testFieldFormUnlimited() {
     $this->assertTrue(isset($elements[0]), t('aria-describedby attribute is properly placed on multiple value widgets.'));
 
     // Press 'add more' button -> 2 widgets.
-    $this->drupalPostForm(NULL, array(), t('Add another item'));
+    $this->drupalPostForm(NULL, [], t('Add another item'));
     $this->assertFieldByName("{$field_name}[0][value]", '', 'Widget 1 is displayed');
     $this->assertFieldByName("{$field_name}[1][value]", '', 'New widget is displayed');
     $this->assertNoField("{$field_name}[2][value]", 'No extraneous widget is displayed');
     // TODO : check that non-field inputs are preserved ('title'), etc.
 
     // Yet another time so that we can play with more values -> 3 widgets.
-    $this->drupalPostForm(NULL, array(), t('Add another item'));
+    $this->drupalPostForm(NULL, [], t('Add another item'));
 
     // Prepare values and weights.
     $count = 3;
     $delta_range = $count - 1;
-    $values = $weights = $pattern = $expected_values = array();
-    $edit = array();
+    $values = $weights = $pattern = $expected_values = [];
+    $edit = [];
     for ($delta = 0; $delta <= $delta_range; $delta++) {
       // Assign unique random values and weights.
       do {
@@ -299,7 +299,7 @@ function testFieldFormUnlimited() {
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
     $entity = EntityTest::load($id);
     ksort($field_values);
     $field_values = array_values($field_values);
@@ -330,11 +330,11 @@ public function testFieldFormUnlimitedRequired() {
     // Display creation form -> 1 widget.
     $this->drupalGet('entity_test/add');
     // Check that the Required symbol is present for the multifield label.
-    $element = $this->xpath('//h4[contains(@class, "label") and contains(@class, "js-form-required") and contains(text(), :value)]', array(':value' => $this->field['label']));
+    $element = $this->xpath('//h4[contains(@class, "label") and contains(@class, "js-form-required") and contains(text(), :value)]', [':value' => $this->field['label']]);
     $this->assertTrue(isset($element[0]), 'Required symbol added field label.');
     // Check that the label of the field input is visually hidden and contains
     // the field title and an indication of the delta for a11y.
-    $element = $this->xpath('//label[@for=:for and contains(@class, "visually-hidden") and contains(text(), :value)]', array(':for' => 'edit-field-unlimited-0-value', ':value' => $this->field['label'] . ' (value 1)'));
+    $element = $this->xpath('//label[@for=:for and contains(@class, "visually-hidden") and contains(text(), :value)]', [':for' => 'edit-field-unlimited-0-value', ':value' => $this->field['label'] . ' (value 1)']);
     $this->assertTrue(isset($element[0]), 'Required symbol not added for field input.');
   }
 
@@ -353,32 +353,32 @@ function testFieldFormMultivalueWithRequiredRadio() {
       ->save();
 
     // Add a required radio field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'required_radio_test',
       'entity_type' => 'entity_test',
       'type' => 'list_string',
-      'settings' => array(
-        'allowed_values' => array('yes' => 'yes', 'no' => 'no'),
-      ),
-    ))->save();
-    $field = array(
+      'settings' => [
+        'allowed_values' => ['yes' => 'yes', 'no' => 'no'],
+      ],
+    ])->save();
+    $field = [
       'field_name' => 'required_radio_test',
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
       'required' => TRUE,
-    );
+    ];
     FieldConfig::create($field)->save();
     entity_get_form_display($field['entity_type'], $field['bundle'], 'default')
-      ->setComponent($field['field_name'], array(
+      ->setComponent($field['field_name'], [
         'type' => 'options_buttons',
-      ))
+      ])
       ->save();
 
     // Display creation form.
     $this->drupalGet('entity_test/add');
 
     // Press the 'Add more' button.
-    $this->drupalPostForm(NULL, array(), t('Add another item'));
+    $this->drupalPostForm(NULL, [], t('Add another item'));
 
     // Verify that no error is thrown by the radio element.
     $this->assertNoFieldByXpath('//div[contains(@class, "error")]', FALSE, 'No error message is displayed.');
@@ -405,13 +405,13 @@ function testFieldFormJSAddMore() {
     // Press 'add more' button a couple times -> 3 widgets.
     // drupalPostAjaxForm() will not work iteratively, so we add those through
     // non-JS submission.
-    $this->drupalPostForm(NULL, array(), t('Add another item'));
-    $this->drupalPostForm(NULL, array(), t('Add another item'));
+    $this->drupalPostForm(NULL, [], t('Add another item'));
+    $this->drupalPostForm(NULL, [], t('Add another item'));
 
     // Prepare values and weights.
     $count = 3;
     $delta_range = $count - 1;
-    $values = $weights = $pattern = $expected_values = $edit = array();
+    $values = $weights = $pattern = $expected_values = $edit = [];
     for ($delta = 0; $delta <= $delta_range; $delta++) {
       // Assign unique random values and weights.
       do {
@@ -457,9 +457,9 @@ function testFieldFormMultipleWidget() {
     FieldStorageConfig::create($field_storage)->save();
     FieldConfig::create($this->field)->save();
     entity_get_form_display($this->field['entity_type'], $this->field['bundle'], 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'test_field_widget_multiple',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -467,27 +467,27 @@ function testFieldFormMultipleWidget() {
     $this->assertFieldByName($field_name, '', 'Widget is displayed.');
 
     // Create entity with three values.
-    $edit = array(
+    $edit = [
       $field_name => '1, 2, 3',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
 
     // Check that the values were saved.
     $entity_init = EntityTest::load($id);
-    $this->assertFieldValues($entity_init, $field_name, array(1, 2, 3));
+    $this->assertFieldValues($entity_init, $field_name, [1, 2, 3]);
 
     // Display the form, check that the values are correctly filled in.
     $this->drupalGet('entity_test/manage/' . $id . '/edit');
     $this->assertFieldByName($field_name, '1, 2, 3', 'Widget is displayed.');
 
     // Submit the form with more values than the field accepts.
-    $edit = array($field_name => '1, 2, 3, 4, 5');
+    $edit = [$field_name => '1, 2, 3, 4, 5'];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertRaw('this field cannot hold more than 4 values', 'Form validation failed.');
     // Check that the field values were not submitted.
-    $this->assertFieldValues($entity_init, $field_name, array(1, 2, 3));
+    $this->assertFieldValues($entity_init, $field_name, [1, 2, 3]);
   }
 
   /**
@@ -511,18 +511,18 @@ function testFieldFormAccess() {
 
     // Create a field with no edit access. See
     // field_test_entity_field_access().
-    $field_storage_no_access = array(
+    $field_storage_no_access = [
       'field_name' => 'field_no_edit_access',
       'entity_type' => $entity_type,
       'type' => 'test_field',
-    );
+    ];
     $field_name_no_access = $field_storage_no_access['field_name'];
-    $field_no_access = array(
+    $field_no_access = [
       'field_name' => $field_name_no_access,
       'entity_type' => $entity_type,
       'bundle' => $entity_type,
-      'default_value' => array(0 => array('value' => 99)),
-    );
+      'default_value' => [0 => ['value' => 99]],
+    ];
     FieldStorageConfig::create($field_storage_no_access)->save();
     FieldConfig::create($field_no_access)->save();
     entity_get_form_display($field_no_access['entity_type'], $field_no_access['bundle'], 'default')
@@ -533,10 +533,10 @@ function testFieldFormAccess() {
     // apart from #access.
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('id' => 0, 'revision_id' => 0));
+      ->create(['id' => 0, 'revision_id' => 0]);
 
     $display = entity_get_form_display($entity_type, $entity_type, 'default');
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $display->buildForm($entity, $form, $form_state);
 
@@ -547,9 +547,9 @@ function testFieldFormAccess() {
     $this->assertNoFieldByName("{$field_name_no_access}[0][value]", '', 'Widget is not displayed if field access is denied.');
 
     // Create entity.
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match("|$entity_type/manage/(\d+)|", $this->url, $match);
     $id = $match[1];
@@ -562,10 +562,10 @@ function testFieldFormAccess() {
     $this->assertEqual($entity->$field_name->value, 1, 'Entered value vas saved for the field with edit access.');
 
     // Create a new revision.
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => 2,
       'revision' => TRUE,
-    );
+    ];
     $this->drupalPostForm($entity_type . '/manage/' . $id . '/edit', $edit, t('Save'));
 
     // Check that the new revision has the expected values.
@@ -591,7 +591,7 @@ function testHiddenField() {
     $field_storage['entity_type'] = $entity_type;
     $field_name = $field_storage['field_name'];
     $this->field['field_name'] = $field_name;
-    $this->field['default_value'] = array(0 => array('value' => 99));
+    $this->field['default_value'] = [0 => ['value' => 99]];
     $this->field['entity_type'] = $entity_type;
     $this->field['bundle'] = $entity_type;
     FieldStorageConfig::create($field_storage)->save();
@@ -606,10 +606,10 @@ function testHiddenField() {
     // Create an entity and test that the default value is assigned correctly to
     // the field that uses the hidden widget.
     $this->assertNoField("{$field_name}[0][value]", 'The field does not appear in the form');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     preg_match('|' . $entity_type . '/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test_rev @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test_rev @id has been created.', ['@id' => $id]), 'Entity was created');
     $storage = $this->container->get('entity_type.manager')
       ->getStorage($entity_type);
 
@@ -618,12 +618,12 @@ function testHiddenField() {
 
     // Update the field to remove the default value, and switch to the default
     // widget.
-    $this->field->setDefaultValue(array());
+    $this->field->setDefaultValue([]);
     $this->field->save();
     entity_get_form_display($entity_type, $this->field->getTargetBundle(), 'default')
-      ->setComponent($this->field->getName(), array(
+      ->setComponent($this->field->getName(), [
         'type' => 'test_field_widget',
-      ))
+      ])
       ->save();
 
     // Display edit form.
@@ -632,9 +632,9 @@ function testHiddenField() {
 
     // Update the entity.
     $value = mt_rand(1, 127);
-    $edit = array("{$field_name}[0][value]" => $value);
+    $edit = ["{$field_name}[0][value]" => $value];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('entity_test_rev @id has been updated.', array('@id' => $id)), 'Entity was updated');
+    $this->assertText(t('entity_test_rev @id has been updated.', ['@id' => $id]), 'Entity was updated');
     $storage->resetCache([$id]);
     $entity = $storage->load($id);
     $this->assertEqual($entity->{$field_name}->value, $value, 'Field value was updated');
@@ -645,11 +645,11 @@ function testHiddenField() {
       ->save();
 
     // Create a new revision.
-    $edit = array('revision' => TRUE);
+    $edit = ['revision' => TRUE];
     $this->drupalPostForm($entity_type . '/manage/' . $id . '/edit', $edit, t('Save'));
 
     // Check that the expected value has been carried over to the new revision.
-    $storage->resetCache(array($id));
+    $storage->resetCache([$id]);
     $entity = $storage->load($id);
     $this->assertEqual($entity->{$field_name}->value, $value, 'New revision has the expected value for the field with the Hidden widget');
   }
diff --git a/core/modules/field/src/Tests/NestedFormTest.php b/core/modules/field/src/Tests/NestedFormTest.php
index 8b3402d..530bb20 100644
--- a/core/modules/field/src/Tests/NestedFormTest.php
+++ b/core/modules/field/src/Tests/NestedFormTest.php
@@ -17,36 +17,36 @@ class NestedFormTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test', 'entity_test');
+  public static $modules = ['field_test', 'entity_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('view test entity', 'administer entity_test content'));
+    $web_user = $this->drupalCreateUser(['view test entity', 'administer entity_test content']);
     $this->drupalLogin($web_user);
 
-    $this->fieldStorageSingle = array(
+    $this->fieldStorageSingle = [
       'field_name' => 'field_single',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    );
-    $this->fieldStorageUnlimited = array(
+    ];
+    $this->fieldStorageUnlimited = [
       'field_name' => 'field_unlimited',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
+    ];
 
-    $this->field = array(
+    $this->field = [
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
       'label' => $this->randomMachineName() . '_label',
       'description' => '[site:name]_description',
       'weight' => mt_rand(0, 127),
-      'settings' => array(
+      'settings' => [
         'test_field_setting' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -80,7 +80,7 @@ function testNestedFieldForm() {
     $entity_1->field_unlimited->value = 1;
     $entity_1->save();
 
-    $entity_2 = $storage->create(array('id' => 2));
+    $entity_2 = $storage->create(['id' => 2]);
     $entity_2->enforceIsNew();
     $entity_2->field_single->value = 10;
     $entity_2->field_unlimited->value = 11;
@@ -94,75 +94,75 @@ function testNestedFieldForm() {
     $this->assertFieldByName('entity_2[field_unlimited][0][value]', 11, 'Entity 2: field_unlimited value 0 appears correctly is the form.');
 
     // Submit the form and check that the entities are updated accordingly.
-    $edit = array(
+    $edit = [
       'field_single[0][value]' => 1,
       'field_unlimited[0][value]' => 2,
       'field_unlimited[1][value]' => 3,
       'entity_2[field_single][0][value]' => 11,
       'entity_2[field_unlimited][0][value]' => 12,
       'entity_2[field_unlimited][1][value]' => 13,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $entity_1 = $storage->load(1);
     $entity_2 = $storage->load(2);
-    $this->assertFieldValues($entity_1, 'field_single', array(1));
-    $this->assertFieldValues($entity_1, 'field_unlimited', array(2, 3));
-    $this->assertFieldValues($entity_2, 'field_single', array(11));
-    $this->assertFieldValues($entity_2, 'field_unlimited', array(12, 13));
+    $this->assertFieldValues($entity_1, 'field_single', [1]);
+    $this->assertFieldValues($entity_1, 'field_unlimited', [2, 3]);
+    $this->assertFieldValues($entity_2, 'field_single', [11]);
+    $this->assertFieldValues($entity_2, 'field_unlimited', [12, 13]);
 
     // Submit invalid values and check that errors are reported on the
     // correct widgets.
-    $edit = array(
+    $edit = [
       'field_unlimited[1][value]' => -1,
-    );
+    ];
     $this->drupalPostForm('test-entity/nested/1/2', $edit, t('Save'));
-    $this->assertRaw(t('%label does not accept the value -1', array('%label' => 'Unlimited field')), 'Entity 1: the field validation error was reported.');
-    $error_field = $this->xpath('//input[@id=:id and contains(@class, "error")]', array(':id' => 'edit-field-unlimited-1-value'));
+    $this->assertRaw(t('%label does not accept the value -1', ['%label' => 'Unlimited field']), 'Entity 1: the field validation error was reported.');
+    $error_field = $this->xpath('//input[@id=:id and contains(@class, "error")]', [':id' => 'edit-field-unlimited-1-value']);
     $this->assertTrue($error_field, 'Entity 1: the error was flagged on the correct element.');
-    $edit = array(
+    $edit = [
       'entity_2[field_unlimited][1][value]' => -1,
-    );
+    ];
     $this->drupalPostForm('test-entity/nested/1/2', $edit, t('Save'));
-    $this->assertRaw(t('%label does not accept the value -1', array('%label' => 'Unlimited field')), 'Entity 2: the field validation error was reported.');
-    $error_field = $this->xpath('//input[@id=:id and contains(@class, "error")]', array(':id' => 'edit-entity-2-field-unlimited-1-value'));
+    $this->assertRaw(t('%label does not accept the value -1', ['%label' => 'Unlimited field']), 'Entity 2: the field validation error was reported.');
+    $error_field = $this->xpath('//input[@id=:id and contains(@class, "error")]', [':id' => 'edit-entity-2-field-unlimited-1-value']);
     $this->assertTrue($error_field, 'Entity 2: the error was flagged on the correct element.');
 
     // Test that reordering works on both entities.
-    $edit = array(
+    $edit = [
       'field_unlimited[0][_weight]' => 0,
       'field_unlimited[1][_weight]' => -1,
       'entity_2[field_unlimited][0][_weight]' => 0,
       'entity_2[field_unlimited][1][_weight]' => -1,
-    );
+    ];
     $this->drupalPostForm('test-entity/nested/1/2', $edit, t('Save'));
-    $this->assertFieldValues($entity_1, 'field_unlimited', array(3, 2));
-    $this->assertFieldValues($entity_2, 'field_unlimited', array(13, 12));
+    $this->assertFieldValues($entity_1, 'field_unlimited', [3, 2]);
+    $this->assertFieldValues($entity_2, 'field_unlimited', [13, 12]);
 
     // Test the 'add more' buttons. Only Ajax submission is tested, because
     // the two 'add more' buttons present in the form have the same #value,
     // which confuses drupalPostForm().
     // 'Add more' button in the first entity:
     $this->drupalGet('test-entity/nested/1/2');
-    $this->drupalPostAjaxForm(NULL, array(), 'field_unlimited_add_more');
+    $this->drupalPostAjaxForm(NULL, [], 'field_unlimited_add_more');
     $this->assertFieldByName('field_unlimited[0][value]', 3, 'Entity 1: field_unlimited value 0 appears correctly is the form.');
     $this->assertFieldByName('field_unlimited[1][value]', 2, 'Entity 1: field_unlimited value 1 appears correctly is the form.');
     $this->assertFieldByName('field_unlimited[2][value]', '', 'Entity 1: field_unlimited value 2 appears correctly is the form.');
     $this->assertFieldByName('field_unlimited[3][value]', '', 'Entity 1: an empty widget was added for field_unlimited value 3.');
     // 'Add more' button in the first entity (changing field values):
-    $edit = array(
+    $edit = [
       'entity_2[field_unlimited][0][value]' => 13,
       'entity_2[field_unlimited][1][value]' => 14,
       'entity_2[field_unlimited][2][value]' => 15,
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'entity_2_field_unlimited_add_more');
     $this->assertFieldByName('entity_2[field_unlimited][0][value]', 13, 'Entity 2: field_unlimited value 0 appears correctly is the form.');
     $this->assertFieldByName('entity_2[field_unlimited][1][value]', 14, 'Entity 2: field_unlimited value 1 appears correctly is the form.');
     $this->assertFieldByName('entity_2[field_unlimited][2][value]', 15, 'Entity 2: field_unlimited value 2 appears correctly is the form.');
     $this->assertFieldByName('entity_2[field_unlimited][3][value]', '', 'Entity 2: an empty widget was added for field_unlimited value 3.');
     // Save the form and check values are saved correctly.
-    $this->drupalPostForm(NULL, array(), t('Save'));
-    $this->assertFieldValues($entity_1, 'field_unlimited', array(3, 2));
-    $this->assertFieldValues($entity_2, 'field_unlimited', array(13, 14, 15));
+    $this->drupalPostForm(NULL, [], t('Save'));
+    $this->assertFieldValues($entity_1, 'field_unlimited', [3, 2]);
+    $this->assertFieldValues($entity_2, 'field_unlimited', [13, 14, 15]);
   }
 
   /**
diff --git a/core/modules/field/src/Tests/Number/NumberFieldTest.php b/core/modules/field/src/Tests/Number/NumberFieldTest.php
index 14777ec..3fea616 100644
--- a/core/modules/field/src/Tests/Number/NumberFieldTest.php
+++ b/core/modules/field/src/Tests/Number/NumberFieldTest.php
@@ -20,11 +20,11 @@ class NumberFieldTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'entity_test', 'field_ui');
+  public static $modules = ['node', 'entity_test', 'field_ui'];
 
   protected function setUp() {
     parent::setUp();
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalLogin($this->drupalCreateUser([
       'view test entity',
       'administer entity_test content',
       'administer content types',
@@ -32,7 +32,7 @@ protected function setUp() {
       'administer node display',
       'bypass node access',
       'administer entity_test fields',
-    )));
+    ]));
   }
 
   /**
@@ -41,14 +41,14 @@ protected function setUp() {
   function testNumberDecimalField() {
     // Create a field with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'decimal',
-      'settings' => array(
+      'settings' => [
         'precision' => 8, 'scale' => 4,
-      )
-    ))->save();
+      ]
+    ])->save();
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
@@ -56,17 +56,17 @@ function testNumberDecimalField() {
     ])->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '0.00'
-        ),
-      ))
+        ],
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number_decimal',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -76,49 +76,49 @@ function testNumberDecimalField() {
 
     // Submit a signed decimal value within the allowed precision and scale.
     $value = '-1234.5678';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
     $this->assertRaw($value, 'Value is displayed.');
 
     // Try to create entries with more than one decimal separator; assert fail.
-    $wrong_entries = array(
+    $wrong_entries = [
       '3.14.159',
       '0..45469',
       '..4589',
       '6.459.52',
       '6.3..25',
-    );
+    ];
 
     foreach ($wrong_entries as $wrong_entry) {
       $this->drupalGet('entity_test/add');
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value]" => $wrong_entry,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
-      $this->assertRaw(t('%name must be a number.', array('%name' => $field_name)), 'Correctly failed to save decimal value with more than one decimal point.');
+      $this->assertRaw(t('%name must be a number.', ['%name' => $field_name]), 'Correctly failed to save decimal value with more than one decimal point.');
     }
 
     // Try to create entries with minus sign not in the first position.
-    $wrong_entries = array(
+    $wrong_entries = [
       '3-3',
       '4-',
       '1.3-',
       '1.2-4',
       '-10-10',
-    );
+    ];
 
     foreach ($wrong_entries as $wrong_entry) {
       $this->drupalGet('entity_test/add');
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value]" => $wrong_entry,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
-      $this->assertRaw(t('%name must be a number.', array('%name' => $field_name)), 'Correctly failed to save decimal value with minus sign in the wrong position.');
+      $this->assertRaw(t('%name must be a number.', ['%name' => $field_name]), 'Correctly failed to save decimal value with minus sign in the wrong position.');
     }
   }
 
@@ -131,52 +131,52 @@ function testNumberIntegerField() {
 
     // Create a field with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $storage = FieldStorageConfig::create(array(
+    $storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'integer',
-    ));
+    ]);
     $storage->save();
 
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
-      'settings' => array(
+      'settings' => [
         'min' => $minimum, 'max' => $maximum, 'prefix' => 'ThePrefix',
-      )
+      ]
     ])->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '4'
-        ),
-      ))
+        ],
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number_integer',
-        'settings' => array(
+        'settings' => [
           'prefix_suffix' => FALSE,
-        ),
-      ))
+        ],
+      ])
       ->save();
 
     // Check the storage schema.
-    $expected = array(
-      'columns' => array(
-        'value' => array(
+    $expected = [
+      'columns' => [
+        'value' => [
           'type' => 'int',
           'unsigned' => '',
           'size' => 'normal'
-        ),
-      ),
-      'unique keys' => array(),
-      'indexes' => array(),
-      'foreign keys' => array()
-    );
+        ],
+      ],
+      'unique keys' => [],
+      'indexes' => [],
+      'foreign keys' => []
+    ];
     $this->assertEqual($storage->getSchema(), $expected);
 
     // Display creation form.
@@ -186,84 +186,84 @@ function testNumberIntegerField() {
 
     // Submit a valid integer
     $value = rand($minimum, $maximum);
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
 
     // Try to set a value below the minimum value
     $this->drupalGet('entity_test/add');
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $minimum - 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('%name must be higher than or equal to %minimum.', array('%name' => $field_name, '%minimum' => $minimum)), 'Correctly failed to save integer value less than minimum allowed value.');
+    $this->assertRaw(t('%name must be higher than or equal to %minimum.', ['%name' => $field_name, '%minimum' => $minimum]), 'Correctly failed to save integer value less than minimum allowed value.');
 
     // Try to set a decimal value
     $this->drupalGet('entity_test/add');
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => 1.5,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('%name is not a valid number.', array('%name' => $field_name)), 'Correctly failed to save decimal value to integer field.');
+    $this->assertRaw(t('%name is not a valid number.', ['%name' => $field_name]), 'Correctly failed to save decimal value to integer field.');
 
     // Try to set a value above the maximum value
     $this->drupalGet('entity_test/add');
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $maximum + 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('%name must be lower than or equal to %maximum.', array('%name' => $field_name, '%maximum' => $maximum)), 'Correctly failed to save integer value greater than maximum allowed value.');
+    $this->assertRaw(t('%name must be lower than or equal to %maximum.', ['%name' => $field_name, '%maximum' => $maximum]), 'Correctly failed to save integer value greater than maximum allowed value.');
 
     // Try to set a wrong integer value.
     $this->drupalGet('entity_test/add');
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => '20-40',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('%name must be a number.', array('%name' => $field_name)), 'Correctly failed to save wrong integer value.');
+    $this->assertRaw(t('%name must be a number.', ['%name' => $field_name]), 'Correctly failed to save wrong integer value.');
 
     // Test with valid entries.
-    $valid_entries = array(
+    $valid_entries = [
       '-1234',
       '0',
       '1234',
-    );
+    ];
 
     foreach ($valid_entries as $valid_entry) {
       $this->drupalGet('entity_test/add');
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value]" => $valid_entry,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
       preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
       $id = $match[1];
-      $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+      $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
       $this->assertRaw($valid_entry, 'Value is displayed.');
       $this->assertNoFieldByXpath('//div[@content="' . $valid_entry . '"]', NULL, 'The "content" attribute is not present since the Prefix is not being displayed');
     }
 
     // Test for the content attribute when a Prefix is displayed. Presumably this also tests for the attribute when a Suffix is displayed.
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number_integer',
-        'settings' => array(
+        'settings' => [
           'prefix_suffix' => TRUE,
-        ),
-      ))
+        ],
+      ])
       ->save();
     $integer_value = '123';
     $this->drupalGet('entity_test/add');
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $integer_value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
     $this->drupalGet('entity_test/' . $id);
     $this->assertFieldByXPath('//div[@content="' . $integer_value . '"]', 'ThePrefix' . $integer_value, 'The "content" attribute has been set to the value of the field, and the prefix is being displayed.');
   }
@@ -274,11 +274,11 @@ function testNumberIntegerField() {
   function testNumberFloatField() {
     // Create a field with settings to validate.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'float',
-    ))->save();
+    ])->save();
 
     FieldConfig::create([
       'field_name' => $field_name,
@@ -287,18 +287,18 @@ function testNumberFloatField() {
     ])->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '0.00'
-        ),
-      ))
+        ],
+      ])
       ->save();
 
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'number_decimal',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -308,13 +308,13 @@ function testNumberFloatField() {
 
     // Submit a signed decimal value within the allowed precision and scale.
     $value = '-1234.5678';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
 
     // Ensure that the 'number_decimal' formatter displays the number with the
     // expected rounding.
@@ -322,39 +322,39 @@ function testNumberFloatField() {
     $this->assertRaw(round($value, 2));
 
     // Try to create entries with more than one decimal separator; assert fail.
-    $wrong_entries = array(
+    $wrong_entries = [
       '3.14.159',
       '0..45469',
       '..4589',
       '6.459.52',
       '6.3..25',
-    );
+    ];
 
     foreach ($wrong_entries as $wrong_entry) {
       $this->drupalGet('entity_test/add');
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value]" => $wrong_entry,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
-      $this->assertRaw(t('%name must be a number.', array('%name' => $field_name)), 'Correctly failed to save float value with more than one decimal point.');
+      $this->assertRaw(t('%name must be a number.', ['%name' => $field_name]), 'Correctly failed to save float value with more than one decimal point.');
     }
 
     // Try to create entries with minus sign not in the first position.
-    $wrong_entries = array(
+    $wrong_entries = [
       '3-3',
       '4-',
       '1.3-',
       '1.2-4',
       '-10-10',
-    );
+    ];
 
     foreach ($wrong_entries as $wrong_entry) {
       $this->drupalGet('entity_test/add');
-      $edit = array(
+      $edit = [
         "{$field_name}[0][value]" => $wrong_entry,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
-      $this->assertRaw(t('%name must be a number.', array('%name' => $field_name)), 'Correctly failed to save float value with minus sign in the wrong position.');
+      $this->assertRaw(t('%name must be a number.', ['%name' => $field_name]), 'Correctly failed to save float value with minus sign in the wrong position.');
     }
   }
 
@@ -365,70 +365,70 @@ function testNumberFormatter() {
     $type = Unicode::strtolower($this->randomMachineName());
     $float_field = Unicode::strtolower($this->randomMachineName());
     $integer_field = Unicode::strtolower($this->randomMachineName());
-    $thousand_separators = array('', '.', ',', ' ', chr(8201), "'");
-    $decimal_separators = array('.', ',');
+    $thousand_separators = ['', '.', ',', ' ', chr(8201), "'"];
+    $decimal_separators = ['.', ','];
     $prefix = $this->randomMachineName();
     $suffix = $this->randomMachineName();
     $random_float = rand(0, pow(10, 6));
     $random_integer = rand(0, pow(10, 6));
 
     // Create a content type containing float and integer fields.
-    $this->drupalCreateContentType(array('type' => $type));
+    $this->drupalCreateContentType(['type' => $type]);
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $float_field,
       'entity_type' => 'node',
       'type' => 'float',
-    ))->save();
+    ])->save();
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $integer_field,
       'entity_type' => 'node',
       'type' => 'integer',
-    ))->save();
+    ])->save();
 
     FieldConfig::create([
       'field_name' => $float_field,
       'entity_type' => 'node',
       'bundle' => $type,
-      'settings' => array(
+      'settings' => [
         'prefix' => $prefix,
         'suffix' => $suffix
-      ),
+      ],
     ])->save();
 
     FieldConfig::create([
       'field_name' => $integer_field,
       'entity_type' => 'node',
       'bundle' => $type,
-      'settings' => array(
+      'settings' => [
         'prefix' => $prefix,
         'suffix' => $suffix
-      ),
+      ],
     ])->save();
 
     entity_get_form_display('node', $type, 'default')
-      ->setComponent($float_field, array(
+      ->setComponent($float_field, [
         'type' => 'number',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '0.00'
-        ),
-      ))
-      ->setComponent($integer_field, array(
+        ],
+      ])
+      ->setComponent($integer_field, [
         'type' => 'number',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '0.00'
-        ),
-      ))
+        ],
+      ])
       ->save();
 
     entity_get_display('node', $type, 'default')
-      ->setComponent($float_field, array(
+      ->setComponent($float_field, [
         'type' => 'number_decimal',
-      ))
-      ->setComponent($integer_field, array(
+      ])
+      ->setComponent($integer_field, [
         'type' => 'number_unformatted',
-      ))
+      ])
       ->save();
 
     // Create a node to test formatters.
@@ -448,15 +448,15 @@ function testNumberFormatter() {
     $decimal_separator = $decimal_separators[array_rand($decimal_separators)];
     $scale = rand(0, 10);
 
-    $this->drupalPostAjaxForm(NULL, array(), "${float_field}_settings_edit");
-    $edit = array(
+    $this->drupalPostAjaxForm(NULL, [], "${float_field}_settings_edit");
+    $edit = [
       "fields[${float_field}][settings_edit_form][settings][prefix_suffix]" => TRUE,
       "fields[${float_field}][settings_edit_form][settings][scale]" => $scale,
       "fields[${float_field}][settings_edit_form][settings][decimal_separator]" => $decimal_separator,
       "fields[${float_field}][settings_edit_form][settings][thousand_separator]" => $thousand_separator,
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, "${float_field}_plugin_settings_update");
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Check number_decimal and number_unformatted formatters behavior.
     $this->drupalGet('node/' . $node->id());
@@ -466,21 +466,21 @@ function testNumberFormatter() {
 
     // Configure the number_decimal formatter.
     entity_get_display('node', $type, 'default')
-      ->setComponent($integer_field, array(
+      ->setComponent($integer_field, [
         'type' => 'number_integer',
-      ))
+      ])
       ->save();
     $this->drupalGet("admin/structure/types/manage/$type/display");
 
     $thousand_separator = $thousand_separators[array_rand($thousand_separators)];
 
-    $this->drupalPostAjaxForm(NULL, array(), "${integer_field}_settings_edit");
-    $edit = array(
+    $this->drupalPostAjaxForm(NULL, [], "${integer_field}_settings_edit");
+    $edit = [
       "fields[${integer_field}][settings_edit_form][settings][prefix_suffix]" => FALSE,
       "fields[${integer_field}][settings_edit_form][settings][thousand_separator]" => $thousand_separator,
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, "${integer_field}_plugin_settings_update");
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Check number_integer formatter behavior.
     $this->drupalGet('node/' . $node->id());
@@ -495,11 +495,11 @@ function testNumberFormatter() {
   function testCreateNumberFloatField() {
     // Create a float field.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'float',
-    ))->save();
+    ])->save();
 
     $field = FieldConfig::create([
       'field_name' => $field_name,
@@ -520,11 +520,11 @@ function testCreateNumberFloatField() {
   function testCreateNumberDecimalField() {
     // Create a decimal field.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'decimal',
-    ))->save();
+    ])->save();
 
     $field = FieldConfig::create([
       'field_name' => $field_name,
@@ -546,14 +546,14 @@ function assertSetMinimumValue($field, $minimum_value) {
     $field_configuration_url = 'entity_test/structure/entity_test/fields/entity_test.entity_test.' . $field->getName();
 
     // Set the minimum value.
-    $edit = array(
+    $edit = [
       'settings[min]' => $minimum_value,
-    );
+    ];
     $this->drupalPostForm($field_configuration_url, $edit, t('Save settings'));
     // Check if an error message is shown.
-    $this->assertNoRaw(t('%name is not a valid number.', array('%name' => t('Minimum'))), 'Saved ' . gettype($minimum_value) . '  value as minimal value on a ' . $field->getType() . ' field');
+    $this->assertNoRaw(t('%name is not a valid number.', ['%name' => t('Minimum')]), 'Saved ' . gettype($minimum_value) . '  value as minimal value on a ' . $field->getType() . ' field');
     // Check if a success message is shown.
-    $this->assertRaw(t('Saved %label configuration.', array('%label' => $field->getLabel())));
+    $this->assertRaw(t('Saved %label configuration.', ['%label' => $field->getLabel()]));
     // Check if the minimum value was actually set.
     $this->drupalGet($field_configuration_url);
     $this->assertFieldById('edit-settings-min', $minimum_value, 'Minimal ' . gettype($minimum_value) . '  value was set on a ' . $field->getType() . ' field.');
diff --git a/core/modules/field/src/Tests/String/StringFieldTest.php b/core/modules/field/src/Tests/String/StringFieldTest.php
index 0ac5748..6bd034d 100644
--- a/core/modules/field/src/Tests/String/StringFieldTest.php
+++ b/core/modules/field/src/Tests/String/StringFieldTest.php
@@ -20,7 +20,7 @@ class StringFieldTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'file');
+  public static $modules = ['entity_test', 'file'];
 
   /**
    * A user without any special permissions.
@@ -32,7 +32,7 @@ class StringFieldTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('view test entity', 'administer entity_test content'));
+    $this->webUser = $this->drupalCreateUser(['view test entity', 'administer entity_test content']);
     $this->drupalLogin($this->webUser);
   }
 
@@ -52,11 +52,11 @@ function testTextfieldWidgets() {
   function _testTextfieldWidgets($field_type, $widget_type) {
     // Create a field.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => $field_type
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -64,12 +64,12 @@ function _testTextfieldWidgets($field_type, $widget_type) {
       'label' => $this->randomMachineName() . '_label',
     ])->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => $widget_type,
-        'settings' => array(
+        'settings' => [
           'placeholder' => 'A placeholder on ' . $widget_type,
-        ),
-      ))
+        ],
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
       ->setComponent($field_name)
@@ -79,17 +79,17 @@ function _testTextfieldWidgets($field_type, $widget_type) {
     $this->drupalGet('entity_test/add');
     $this->assertFieldByName("{$field_name}[0][value]", '', 'Widget is displayed');
     $this->assertNoFieldByName("{$field_name}[0][format]", '1', 'Format selector is not displayed');
-    $this->assertRaw(format_string('placeholder="A placeholder on @widget_type"', array('@widget_type' => $widget_type)));
+    $this->assertRaw(format_string('placeholder="A placeholder on @widget_type"', ['@widget_type' => $widget_type]));
 
     // Submit with some value.
     $value = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
 
     // Display the entity.
     $entity = EntityTest::load($id);
diff --git a/core/modules/field/src/Tests/Views/FieldTestBase.php b/core/modules/field/src/Tests/Views/FieldTestBase.php
index 0f977a8..cd57994 100644
--- a/core/modules/field/src/Tests/Views/FieldTestBase.php
+++ b/core/modules/field/src/Tests/Views/FieldTestBase.php
@@ -25,7 +25,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'field_test_views');
+  public static $modules = ['node', 'field_test_views'];
 
   /**
    * Stores the field definitions used by the test.
@@ -51,19 +51,19 @@ protected function setUp() {
       'name' => 'page',
     ])->save();
 
-    ViewTestData::createTestViews(get_class($this), array('field_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['field_test_views']);
   }
 
   function setUpFieldStorages($amount = 3, $type = 'string') {
     // Create three fields.
-    $field_names = array();
+    $field_names = [];
     for ($i = 0; $i < $amount; $i++) {
       $field_names[$i] = 'field_name_' . $i;
-      $this->fieldStorages[$i] = FieldStorageConfig::create(array(
+      $this->fieldStorages[$i] = FieldStorageConfig::create([
         'field_name' => $field_names[$i],
         'entity_type' => 'node',
         'type' => $type,
-      ));
+      ]);
       $this->fieldStorages[$i]->save();
     }
     return $field_names;
diff --git a/core/modules/field/src/Tests/Views/FieldUITest.php b/core/modules/field/src/Tests/Views/FieldUITest.php
index c47bf19..ce8208b 100644
--- a/core/modules/field/src/Tests/Views/FieldUITest.php
+++ b/core/modules/field/src/Tests/Views/FieldUITest.php
@@ -19,14 +19,14 @@ class FieldUITest extends FieldTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_fieldapi');
+  public static $testViews = ['test_view_fieldapi'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui');
+  public static $modules = ['views_ui'];
 
   /**
    * A user with the 'administer views' permission.
@@ -41,7 +41,7 @@ class FieldUITest extends FieldTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->account = $this->drupalCreateUser(array('administer views'));
+    $this->account = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($this->account);
 
     $this->setUpFieldStorages(1, 'text');
@@ -56,26 +56,26 @@ public function testHandlerUI() {
     $this->drupalGet($url);
 
     // Tests the available formatter options.
-    $result = $this->xpath('//select[@id=:id]/option', array(':id' => 'edit-options-type'));
+    $result = $this->xpath('//select[@id=:id]/option', [':id' => 'edit-options-type']);
     $options = array_map(function($item) {
       return (string) $item->attributes()->value[0];
     }, $result);
     // @todo Replace this sort by assertArray once it's in.
     sort($options, SORT_STRING);
-    $this->assertEqual($options, array('text_default', 'text_trimmed'), 'The text formatters for a simple text field appear as expected.');
+    $this->assertEqual($options, ['text_default', 'text_trimmed'], 'The text formatters for a simple text field appear as expected.');
 
-    $this->drupalPostForm(NULL, array('options[type]' => 'text_trimmed'), t('Apply'));
+    $this->drupalPostForm(NULL, ['options[type]' => 'text_trimmed'], t('Apply'));
 
     $this->drupalGet($url);
     $this->assertOptionSelected('edit-options-type', 'text_trimmed');
 
     $random_number = rand(100, 400);
-    $this->drupalPostForm(NULL, array('options[settings][trim_length]' => $random_number), t('Apply'));
+    $this->drupalPostForm(NULL, ['options[settings][trim_length]' => $random_number], t('Apply'));
     $this->drupalGet($url);
     $this->assertFieldByName('options[settings][trim_length]', $random_number, 'The formatter setting got saved.');
 
     // Save the view and test whether the settings are saved.
-    $this->drupalPostForm('admin/structure/views/view/test_view_fieldapi', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/test_view_fieldapi', [], t('Save'));
     $view = Views::getView('test_view_fieldapi');
     $view->initHandlers();
     $this->assertEqual($view->field['field_name_0']->options['type'], 'text_trimmed');
@@ -101,7 +101,7 @@ public function testHandlerUI() {
    */
   public function testHandlerUIAggregation() {
     // Enable aggregation.
-    $edit = array('group_by' => '1');
+    $edit = ['group_by' => '1'];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view_fieldapi/default/group_by', $edit, t('Apply'));
 
     $url = "admin/structure/views/nojs/handler/test_view_fieldapi/default/field/field_name_0";
@@ -110,13 +110,13 @@ public function testHandlerUIAggregation() {
 
     // Test the click sort column options.
     // Tests the available formatter options.
-    $result = $this->xpath('//select[@id=:id]/option', array(':id' => 'edit-options-click-sort-column'));
+    $result = $this->xpath('//select[@id=:id]/option', [':id' => 'edit-options-click-sort-column']);
     $options = array_map(function($item) {
       return (string) $item->attributes()->value[0];
     }, $result);
     sort($options, SORT_STRING);
 
-    $this->assertEqual($options, array('format', 'value'), 'The expected sort field options were found.');
+    $this->assertEqual($options, ['format', 'value'], 'The expected sort field options were found.');
   }
 
   /**
@@ -138,7 +138,7 @@ public function testBooleanFilterHandler() {
     $field->save();
 
     $url = "admin/structure/views/nojs/add-handler/test_view_fieldapi/default/filter";
-    $this->drupalPostForm($url, ['name[node__' . $field_name . '.' . $field_name . '_value]' => TRUE], t('Add and configure @handler', array('@handler' => t('filter criteria'))));
+    $this->drupalPostForm($url, ['name[node__' . $field_name . '.' . $field_name . '_value]' => TRUE], t('Add and configure @handler', ['@handler' => t('filter criteria')]));
     $this->assertResponse(200);
     // Verify that using a boolean field as a filter also results in using the
     // boolean plugin.
diff --git a/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php b/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
index 303eb2f..dfbb89b 100644
--- a/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
+++ b/core/modules/field/src/Tests/Views/HandlerFieldFieldTest.php
@@ -22,14 +22,14 @@ class HandlerFieldFieldTest extends FieldTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('node', 'field_test');
+  public static $modules = ['node', 'field_test'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view_fieldapi');
+  public static $testViews = ['test_view_fieldapi'];
 
   /**
    * Test nodes.
@@ -48,47 +48,47 @@ protected function setUp() {
     $this->setUpFieldStorages(3);
 
     // Setup a field with cardinality > 1.
-    $this->fieldStorages[3] = FieldStorageConfig::create(array(
+    $this->fieldStorages[3] = FieldStorageConfig::create([
       'field_name' => 'field_name_3',
       'entity_type' => 'node',
       'type' => 'string',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ));
+    ]);
     $this->fieldStorages[3]->save();
     // Setup a field that will have no value.
-    $this->fieldStorages[4] = FieldStorageConfig::create(array(
+    $this->fieldStorages[4] = FieldStorageConfig::create([
       'field_name' => 'field_name_4',
       'entity_type' => 'node',
       'type' => 'string',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ));
+    ]);
     $this->fieldStorages[4]->save();
 
     // Setup a text field.
-    $this->fieldStorages[5] = FieldStorageConfig::create(array(
+    $this->fieldStorages[5] = FieldStorageConfig::create([
       'field_name' => 'field_name_5',
       'entity_type' => 'node',
       'type' => 'text',
-    ));
+    ]);
     $this->fieldStorages[5]->save();
 
     // Setup a text field with access control.
     // @see field_test_entity_field_access()
-    $this->fieldStorages[6] = FieldStorageConfig::create(array(
+    $this->fieldStorages[6] = FieldStorageConfig::create([
       'field_name' => 'field_no_view_access',
       'entity_type' => 'node',
       'type' => 'text',
-    ));
+    ]);
     $this->fieldStorages[6]->save();
 
     $this->setUpFields();
 
     // Create some nodes.
-    $this->nodes = array();
+    $this->nodes = [];
     for ($i = 0; $i < 3; $i++) {
-      $edit = array('type' => 'page');
+      $edit = ['type' => 'page'];
 
-      foreach (array(0, 1, 2, 5) as $key) {
+      foreach ([0, 1, 2, 5] as $key) {
         $field_storage = $this->fieldStorages[$key];
         $edit[$field_storage->getName()][0]['value'] = $this->randomMachineName(8);
       }
@@ -98,7 +98,7 @@ protected function setUp() {
         $edit[$this->fieldStorages[3]->getName()][$j]['value'] = $this->randomMachineName(8);
       }
       // Set this field to be empty.
-      $edit[$this->fieldStorages[4]->getName()] = array(array('value' => NULL));
+      $edit[$this->fieldStorages[4]->getName()] = [['value' => NULL]];
 
       $this->nodes[$i] = $this->drupalCreateNode($edit);
     }
@@ -171,9 +171,9 @@ public function _testFormatterSimpleFieldRender() {
     $view = Views::getView('test_view_fieldapi');
     $this->prepareView($view);
     $view->displayHandlers->get('default')->options['fields'][$this->fieldStorages[5]->getName()]['type'] = 'text_trimmed';
-    $view->displayHandlers->get('default')->options['fields'][$this->fieldStorages[5]->getName()]['settings'] = array(
+    $view->displayHandlers->get('default')->options['fields'][$this->fieldStorages[5]->getName()]['settings'] = [
       'trim_length' => 3,
-    );
+    ];
     $this->executeView($view);
 
     // Make sure that the formatter works as expected.
@@ -196,7 +196,7 @@ public function _testMultipleFieldRender() {
 
     for ($i = 0; $i < 3; $i++) {
       $rendered_field = $view->style_plugin->getField($i, $field_name);
-      $items = array();
+      $items = [];
       $pure_items = $this->nodes[$i]->{$field_name}->getValue();
       $pure_items = array_splice($pure_items, 0, 3);
       foreach ($pure_items as $j => $item) {
@@ -218,7 +218,7 @@ public function _testMultipleFieldRender() {
 
     for ($i = 0; $i < 3; $i++) {
       $rendered_field = $view->style_plugin->getField($i, $field_name);
-      $items = array();
+      $items = [];
       $pure_items = $this->nodes[$i]->{$field_name}->getValue();
       $pure_items = array_splice($pure_items, 1, 3);
       foreach ($pure_items as $j => $item) {
@@ -238,7 +238,7 @@ public function _testMultipleFieldRender() {
 
     for ($i = 0; $i < 3; $i++) {
       $rendered_field = $view->style_plugin->getField($i, $field_name);
-      $items = array();
+      $items = [];
       $pure_items = $this->nodes[$i]->{$field_name}->getValue();
       array_splice($pure_items, 0, -3);
       $pure_items = array_reverse($pure_items);
@@ -259,7 +259,7 @@ public function _testMultipleFieldRender() {
 
     for ($i = 0; $i < 3; $i++) {
       $rendered_field = $view->style_plugin->getField($i, $field_name);
-      $items = array();
+      $items = [];
       $pure_items = $this->nodes[$i]->{$field_name}->getValue();
       $items[] = $pure_items[0]['value'];
       $items[] = $pure_items[4]['value'];
@@ -277,7 +277,7 @@ public function _testMultipleFieldRender() {
 
     for ($i = 0; $i < 3; $i++) {
       $rendered_field = $view->style_plugin->getField($i, $field_name);
-      $items = array();
+      $items = [];
       $pure_items = $this->nodes[$i]->{$field_name}->getValue();
       $pure_items = array_splice($pure_items, 0, 3);
       foreach ($pure_items as $j => $item) {
diff --git a/core/modules/field/src/Tests/reEnableModuleFieldTest.php b/core/modules/field/src/Tests/reEnableModuleFieldTest.php
index b718e75..141b5e1 100644
--- a/core/modules/field/src/Tests/reEnableModuleFieldTest.php
+++ b/core/modules/field/src/Tests/reEnableModuleFieldTest.php
@@ -18,22 +18,22 @@ class reEnableModuleFieldTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'field',
     'node',
     // We use telephone module instead of test_field because test_field is
     // hidden and does not display on the admin/modules page.
     'telephone'
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalCreateContentType(['type' => 'article']);
+    $this->drupalLogin($this->drupalCreateUser([
       'create article content',
       'edit own article content',
-    )));
+    ]));
   }
 
   /**
@@ -44,11 +44,11 @@ protected function setUp() {
   function testReEnabledField() {
 
     // Add a telephone field to the article content type.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_telephone',
       'entity_type' => 'node',
       'type' => 'telephone',
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -57,19 +57,19 @@ function testReEnabledField() {
     ])->save();
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent('field_telephone', array(
+      ->setComponent('field_telephone', [
         'type' => 'telephone_default',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '123-456-7890',
-        ),
-      ))
+        ],
+      ])
       ->save();
 
     entity_get_display('node', 'article', 'default')
-      ->setComponent('field_telephone', array(
+      ->setComponent('field_telephone', [
         'type' => 'telephone_link',
         'weight' => 1,
-      ))
+      ])
       ->save();
 
     // Display the article node form and verify the telephone widget is present.
@@ -78,16 +78,16 @@ function testReEnabledField() {
 
     // Submit an article node with a telephone field so data exist for the
     // field.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'field_telephone[0][value]' => "123456789",
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertRaw('<a href="tel:123456789">');
 
     // Test that the module can't be uninstalled from the UI while there is data
     // for it's fields.
-    $admin_user = $this->drupalCreateUser(array('access administration pages', 'administer modules'));
+    $admin_user = $this->drupalCreateUser(['access administration pages', 'administer modules']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('admin/modules/uninstall');
     $this->assertText("The Telephone number field type is used in the following field: node.field_telephone");
@@ -95,11 +95,11 @@ function testReEnabledField() {
     // Add another telephone field to a different entity type in order to test
     // the message for the case when multiple fields are blocking the
     // uninstallation of a module.
-    $field_storage2 = entity_create('field_storage_config', array(
+    $field_storage2 = entity_create('field_storage_config', [
       'field_name' => 'field_telephone_2',
       'entity_type' => 'user',
       'type' => 'telephone',
-    ));
+    ]);
     $field_storage2->save();
     FieldConfig::create([
       'field_storage' => $field_storage2,
diff --git a/core/modules/field/tests/modules/field_test/field_test.entity.inc b/core/modules/field/tests/modules/field_test/field_test.entity.inc
index d5614ac..ee831ff 100644
--- a/core/modules/field/tests/modules/field_test/field_test.entity.inc
+++ b/core/modules/field/tests/modules/field_test/field_test.entity.inc
@@ -19,7 +19,7 @@ function field_test_entity_type_alter(array &$entity_types) {
  * Helper function to enable entity translations.
  */
 function field_test_entity_info_translatable($entity_type_id = NULL, $translatable = NULL) {
-  $stored_value = &drupal_static(__FUNCTION__, array());
+  $stored_value = &drupal_static(__FUNCTION__, []);
   if (isset($entity_type_id)) {
     $entity_manager = \Drupal::entityManager();
     $original = $entity_manager->getDefinition($entity_type_id);
diff --git a/core/modules/field/tests/modules/field_test/field_test.field.inc b/core/modules/field/tests/modules/field_test/field_test.field.inc
index 9798fc7..5edd25d 100644
--- a/core/modules/field/tests/modules/field_test/field_test.field.inc
+++ b/core/modules/field/tests/modules/field_test/field_test.field.inc
@@ -34,7 +34,7 @@ function field_test_field_storage_config_update_forbid(FieldStorageConfigInterfa
  * Sample 'default value' callback.
  */
 function field_test_default_value(FieldableEntityInterface $entity, FieldDefinitionInterface $definition) {
-  return array(array('value' => 99));
+  return [['value' => 99]];
 }
 
 /**
diff --git a/core/modules/field/tests/modules/field_test/field_test.module b/core/modules/field/tests/modules/field_test/field_test.module
index 7eda288..f819836 100644
--- a/core/modules/field/tests/modules/field_test/field_test.module
+++ b/core/modules/field/tests/modules/field_test/field_test.module
@@ -66,7 +66,7 @@ function field_test_memorize($key = NULL, $value = NULL) {
 
   if (!isset($key)) {
     $return = $memorize;
-    $memorize = array();
+    $memorize = [];
     return $return;
   }
   if (is_array($memorize)) {
@@ -88,11 +88,11 @@ function field_test_field_storage_config_create(FieldStorageConfigInterface $fie
 function field_test_entity_display_build_alter(&$output, $context) {
   $display_options = $context['display']->getComponent('test_field');
   if (isset($display_options['settings']['alter'])) {
-    $output['test_field'][] = array('#markup' => 'field_test_entity_display_build_alter');
+    $output['test_field'][] = ['#markup' => 'field_test_entity_display_build_alter'];
   }
 
   if (isset($output['test_field'])) {
-    $output['test_field'][] = array('#markup' => 'entity language is ' . $context['entity']->language()->getId());
+    $output['test_field'][] = ['#markup' => 'entity language is ' . $context['entity']->language()->getId()];
   }
 }
 
diff --git a/core/modules/field/tests/modules/field_test/src/Form/NestedEntityTestForm.php b/core/modules/field/tests/modules/field_test/src/Form/NestedEntityTestForm.php
index d54c683..949ffda 100644
--- a/core/modules/field/tests/modules/field_test/src/Form/NestedEntityTestForm.php
+++ b/core/modules/field/tests/modules/field_test/src/Form/NestedEntityTestForm.php
@@ -54,11 +54,11 @@ public function buildForm(array $form, FormStateInterface $form_state, EntityInt
       ];
     }
 
-    $form['save'] = array(
+    $form['save'] = [
       '#type' => 'submit',
       '#value' => t('Save'),
       '#weight' => 100,
-    );
+    ];
 
     return $form;
   }
@@ -101,7 +101,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $entity_2 = $form_state->get('entity_2');
     $entity_2->save();
 
-    drupal_set_message($this->t('test_entities @id_1 and @id_2 have been updated.', array('@id_1' => $entity_1->id(), '@id_2' => $entity_2->id())));
+    drupal_set_message($this->t('test_entities @id_1 and @id_2 have been updated.', ['@id_1' => $entity_1->id(), '@id_2' => $entity_2->id()]));
   }
 
 }
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldApplicableFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldApplicableFormatter.php
index c2916f5..418b4c6 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldApplicableFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldApplicableFormatter.php
@@ -34,7 +34,7 @@ public static function isApplicable(FieldDefinitionInterface $field_definition)
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    return array('#markup' => 'Nothing to see here');
+    return ['#markup' => 'Nothing to see here'];
   }
 
 }
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldDefaultFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldDefaultFormatter.php
index 5eb0354..80f860b 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldDefaultFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldDefaultFormatter.php
@@ -26,22 +26,22 @@ class TestFieldDefaultFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_formatter_setting' => 'dummy test string',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['test_formatter_setting'] = array(
+    $element['test_formatter_setting'] = [
       '#title' => t('Setting'),
       '#type' => 'textfield',
       '#size' => 20,
       '#default_value' => $this->getSetting('test_formatter_setting'),
       '#required' => TRUE,
-    );
+    ];
     return $element;
   }
 
@@ -49,8 +49,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('@setting: @value', array('@setting' => 'test_formatter_setting', '@value' => $this->getSetting('test_formatter_setting')));
+    $summary = [];
+    $summary[] = t('@setting: @value', ['@setting' => 'test_formatter_setting', '@value' => $this->getSetting('test_formatter_setting')]);
     return $summary;
   }
 
@@ -58,10 +58,10 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
-      $elements[$delta] = array('#markup' => $this->getSetting('test_formatter_setting') . '|' . $item->value);
+      $elements[$delta] = ['#markup' => $this->getSetting('test_formatter_setting') . '|' . $item->value];
     }
 
     return $elements;
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptyFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptyFormatter.php
index bbe0b30..c807217 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptyFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptyFormatter.php
@@ -23,25 +23,25 @@ class TestFieldEmptyFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_empty_string' => '**EMPTY FIELD**',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     if ($items->isEmpty()) {
       // For fields with no value, just add the configured "empty" value.
-      $elements[0] = array('#markup' => $this->getSetting('test_empty_string'));
+      $elements[0] = ['#markup' => $this->getSetting('test_empty_string')];
     }
     else {
       foreach ($items as $delta => $item) {
         // This formatter only needs to output raw for testing.
-        $elements[$delta] = array('#markup' => $item->value);
+        $elements[$delta] = ['#markup' => $item->value];
       }
     }
 
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptySettingFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptySettingFormatter.php
index ca08861..f36fea2 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptySettingFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldEmptySettingFormatter.php
@@ -24,22 +24,22 @@ class TestFieldEmptySettingFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'field_empty_setting' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['field_empty_setting'] = array(
+    $element['field_empty_setting'] = [
       '#title' => t('Setting'),
       '#type' => 'textfield',
       '#size' => 20,
       '#default_value' => $this->getSetting('field_empty_setting'),
       '#required' => TRUE,
-    );
+    ];
     return $element;
   }
 
@@ -47,7 +47,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
     $setting = $this->getSetting('field_empty_setting');
     if (!empty($setting)) {
       $summary[] = t('Default empty setting now has a value.');
@@ -59,11 +59,11 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     if (!empty($items)) {
       foreach ($items as $delta => $item) {
-        $elements[$delta] = array('#markup' => $this->getSetting('field_empty_setting'));
+        $elements[$delta] = ['#markup' => $this->getSetting('field_empty_setting')];
       }
     }
 
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldMultipleFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldMultipleFormatter.php
index 97bb1e6..978e18f 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldMultipleFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldMultipleFormatter.php
@@ -26,23 +26,23 @@ class TestFieldMultipleFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_formatter_setting_multiple' => 'dummy test string',
       'alter' => FALSE,
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['test_formatter_setting_multiple'] = array(
+    $element['test_formatter_setting_multiple'] = [
       '#title' => t('Setting'),
       '#type' => 'textfield',
       '#size' => 20,
       '#default_value' => $this->getSetting('test_formatter_setting_multiple'),
       '#required' => TRUE,
-    );
+    ];
     return $element;
   }
 
@@ -50,8 +50,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('@setting: @value', array('@setting' => 'test_formatter_setting_multiple', '@value' => $this->getSetting('test_formatter_setting_multiple')));
+    $summary = [];
+    $summary[] = t('@setting: @value', ['@setting' => 'test_formatter_setting_multiple', '@value' => $this->getSetting('test_formatter_setting_multiple')]);
     return $summary;
   }
 
@@ -59,14 +59,14 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     if (!empty($items)) {
-      $array = array();
+      $array = [];
       foreach ($items as $delta => $item) {
         $array[] = $delta . ':' . $item->value;
       }
-      $elements[0] = array('#markup' => $this->getSetting('test_formatter_setting_multiple') . '|' . implode('|', $array));
+      $elements[0] = ['#markup' => $this->getSetting('test_formatter_setting_multiple') . '|' . implode('|', $array)];
     }
 
     return $elements;
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldNoSettingsFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldNoSettingsFormatter.php
index 0ab66d5..922207e 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldNoSettingsFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldNoSettingsFormatter.php
@@ -23,11 +23,11 @@ class TestFieldNoSettingsFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
       // This formatter only needs to output raw for testing.
-      $elements[$delta] = array('#markup' => $item->value);
+      $elements[$delta] = ['#markup' => $item->value];
     }
 
     return $elements;
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldPrepareViewFormatter.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldPrepareViewFormatter.php
index f7df0c0..39bff8d 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldPrepareViewFormatter.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldFormatter/TestFieldPrepareViewFormatter.php
@@ -25,22 +25,22 @@ class TestFieldPrepareViewFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_formatter_setting_additional' => 'dummy test string',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['test_formatter_setting_additional'] = array(
+    $element['test_formatter_setting_additional'] = [
       '#title' => t('Setting'),
       '#type' => 'textfield',
       '#size' => 20,
       '#default_value' => $this->getSetting('test_formatter_setting_additional'),
       '#required' => TRUE,
-    );
+    ];
     return $element;
   }
 
@@ -48,8 +48,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('@setting: @value', array('@setting' => 'test_formatter_setting_additional', '@value' => $this->getSetting('test_formatter_setting_additional')));
+    $summary = [];
+    $summary[] = t('@setting: @value', ['@setting' => 'test_formatter_setting_additional', '@value' => $this->getSetting('test_formatter_setting_additional')]);
     return $summary;
   }
 
@@ -71,10 +71,10 @@ public function prepareView(array $entities_items) {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
-      $elements[$delta] = array('#markup' => $this->getSetting('test_formatter_setting_additional') . '|' . $item->value . '|' . $item->additional_formatter_value);
+      $elements[$delta] = ['#markup' => $this->getSetting('test_formatter_setting_additional') . '|' . $item->value . '|' . $item->additional_formatter_value];
     }
 
     return $elements;
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
index 1b8822f..2f67879 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldType/TestItem.php
@@ -24,22 +24,22 @@ class TestItem extends FieldItemBase {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'test_field_storage_setting' => 'dummy test string',
       'changeable' => 'a changeable field storage setting',
       'unchangeable' => 'an unchangeable field storage setting',
       'translatable_storage_setting' => 'a translatable field storage setting',
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    return array(
+    return [
       'test_field_setting' => 'dummy test string',
       'translatable_field_setting' => 'a translatable field setting',
-    ) + parent::defaultFieldSettings();
+    ] + parent::defaultFieldSettings();
   }
 
   /**
@@ -57,30 +57,30 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'int',
           'size' => 'medium',
-        ),
-      ),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $form['test_field_storage_setting'] = array(
+    $form['test_field_storage_setting'] = [
       '#type' => 'textfield',
       '#title' => t('Field test field storage setting'),
       '#default_value' => $this->getSetting('test_field_storage_setting'),
       '#required' => FALSE,
       '#description' => t('A dummy form element to simulate field storage setting.'),
-    );
+    ];
 
     return $form;
   }
@@ -89,13 +89,13 @@ public function storageSettingsForm(array &$form, FormStateInterface $form_state
    * {@inheritdoc}
    */
   public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
-    $form['test_field_setting'] = array(
+    $form['test_field_setting'] = [
       '#type' => 'textfield',
       '#title' => t('Field test field setting'),
       '#default_value' => $this->getSetting('test_field_setting'),
       '#required' => FALSE,
       '#description' => t('A dummy form element to simulate field setting.'),
-    );
+    ];
 
     return $form;
   }
@@ -105,7 +105,7 @@ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
    */
   public function delete() {
     // Reports that delete() method is executed for testing purposes.
-    field_test_memorize('field_test_field_delete', array($this->getEntity()));
+    field_test_memorize('field_test_field_delete', [$this->getEntity()]);
   }
 
   /**
@@ -115,14 +115,14 @@ public function getConstraints() {
     $constraint_manager = \Drupal::typedDataManager()->getValidationConstraintManager();
     $constraints = parent::getConstraints();
 
-    $constraints[] = $constraint_manager->create('ComplexData', array(
-      'value' => array(
-        'TestField' => array(
+    $constraints[] = $constraint_manager->create('ComplexData', [
+      'value' => [
+        'TestField' => [
           'value' => -1,
-          'message' => t('%name does not accept the value @value.', array('%name' => $this->getFieldDefinition()->getLabel(), '@value' => -1)),
-        )
-      ),
-    ));
+          'message' => t('%name does not accept the value @value.', ['%name' => $this->getFieldDefinition()->getLabel(), '@value' => -1]),
+        ]
+      ],
+    ]);
 
     return $constraints;
   }
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidget.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidget.php
index 14a5b3c..9dd3387 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidget.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidget.php
@@ -27,24 +27,24 @@ class TestFieldWidget extends WidgetBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_widget_setting' => 'dummy test string',
       'role' => 'anonymous',
       'role2' => 'anonymous',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['test_widget_setting'] = array(
+    $element['test_widget_setting'] = [
       '#type' => 'textfield',
       '#title' => t('Field test field widget setting'),
       '#description' => t('A dummy form element to simulate field widget setting.'),
       '#default_value' => $this->getSetting('test_widget_setting'),
       '#required' => FALSE,
-    );
+    ];
     return $element;
   }
 
@@ -52,8 +52,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('@setting: @value', array('@setting' => 'test_widget_setting', '@value' => $this->getSetting('test_widget_setting')));
+    $summary = [];
+    $summary[] = t('@setting: @value', ['@setting' => 'test_widget_setting', '@value' => $this->getSetting('test_widget_setting')]);
     return $summary;
   }
 
@@ -61,11 +61,11 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
-    $element += array(
+    $element += [
       '#type' => 'textfield',
       '#default_value' => isset($items[$delta]->value) ? $items[$delta]->value : '',
-    );
-    return array('value' => $element);
+    ];
+    return ['value' => $element];
   }
 
   /**
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidgetMultiple.php b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidgetMultiple.php
index 02f2d24..32cf6e4 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidgetMultiple.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Field/FieldWidget/TestFieldWidgetMultiple.php
@@ -29,22 +29,22 @@ class TestFieldWidgetMultiple extends WidgetBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'test_widget_setting_multiple' => 'dummy test string',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['test_widget_setting_multiple'] = array(
+    $element['test_widget_setting_multiple'] = [
       '#type' => 'textfield',
       '#title' => t('Field test field widget setting'),
       '#description' => t('A dummy form element to simulate field widget setting.'),
       '#default_value' => $this->getSetting('test_widget_setting_multiple'),
       '#required' => FALSE,
-    );
+    ];
     return $element;
   }
 
@@ -52,8 +52,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('@setting: @value', array('@setting' => 'test_widget_setting_multiple', '@value' => $this->getSetting('test_widget_setting_multiple')));
+    $summary = [];
+    $summary[] = t('@setting: @value', ['@setting' => 'test_widget_setting_multiple', '@value' => $this->getSetting('test_widget_setting_multiple')]);
     return $summary;
   }
 
@@ -61,15 +61,15 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
-    $values = array();
+    $values = [];
     foreach ($items as $item) {
       $values[] = $item->value;
     }
-    $element += array(
+    $element += [
       '#type' => 'textfield',
       '#default_value' => implode(', ', $values),
-      '#element_validate' => array(array(get_class($this), 'multipleValidate')),
-    );
+      '#element_validate' => [[get_class($this), 'multipleValidate']],
+    ];
     return $element;
   }
 
@@ -85,9 +85,9 @@ public function errorElement(array $element, ConstraintViolationInterface $viola
    */
   public static function multipleValidate($element, FormStateInterface $form_state) {
     $values = array_map('trim', explode(',', $element['#value']));
-    $items = array();
+    $items = [];
     foreach ($values as $value) {
-      $items[] = array('value' => $value);
+      $items[] = ['value' => $value];
     }
     $form_state->setValueForElement($element, $items);
   }
diff --git a/core/modules/field/tests/modules/field_test/src/Plugin/Validation/Constraint/TestFieldConstraint.php b/core/modules/field/tests/modules/field_test/src/Plugin/Validation/Constraint/TestFieldConstraint.php
index 8a511ed..8105a22 100644
--- a/core/modules/field/tests/modules/field_test/src/Plugin/Validation/Constraint/TestFieldConstraint.php
+++ b/core/modules/field/tests/modules/field_test/src/Plugin/Validation/Constraint/TestFieldConstraint.php
@@ -19,7 +19,7 @@ class TestFieldConstraint extends NotEqualTo {
    * {@inheritdoc}
    */
   public function getRequiredOptions() {
-    return array('value');
+    return ['value'];
   }
 
   /**
diff --git a/core/modules/field/tests/modules/field_third_party_test/field_third_party_test.module b/core/modules/field/tests/modules/field_third_party_test/field_third_party_test.module
index 9dc2b19..d59a0c0 100644
--- a/core/modules/field/tests/modules/field_third_party_test/field_third_party_test.module
+++ b/core/modules/field/tests/modules/field_third_party_test/field_third_party_test.module
@@ -14,11 +14,11 @@
  * Implements hook_field_widget_third_party_settings_form().
  */
 function field_third_party_test_field_widget_third_party_settings_form(WidgetInterface $plugin, FieldDefinitionInterface $field_definition, $form_mode, $form, FormStateInterface $form_state) {
-  $element['field_test_widget_third_party_settings_form'] = array(
+  $element['field_test_widget_third_party_settings_form'] = [
     '#type' => 'textfield',
     '#title' => t('3rd party widget settings form'),
     '#default_value' => $plugin->getThirdPartySetting('field_third_party_test', 'field_test_widget_third_party_settings_form'),
-  );
+  ];
   return $element;
 }
 
@@ -34,11 +34,11 @@ function field_third_party_test_field_widget_settings_summary_alter(&$summary, $
  * Implements hook_field_formatter_third_party_settings_form().
  */
 function field_third_party_test_field_formatter_third_party_settings_form(FormatterInterface $plugin, FieldDefinitionInterface $field_definition, $view_mode, $form, FormStateInterface $form_state) {
-  $element['field_test_field_formatter_third_party_settings_form'] = array(
+  $element['field_test_field_formatter_third_party_settings_form'] = [
     '#type' => 'textfield',
     '#title' => t('3rd party formatter settings form'),
     '#default_value' => $plugin->getThirdPartySetting('field_third_party_test', 'field_test_field_formatter_third_party_settings_form'),
-  );
+  ];
   return $element;
 }
 
diff --git a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceAutoCreateTest.php b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceAutoCreateTest.php
index b2a1655..90895b1 100644
--- a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceAutoCreateTest.php
+++ b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceAutoCreateTest.php
@@ -46,43 +46,43 @@ protected function setUp() {
     $referenced = $this->drupalCreateContentType();
     $this->referencedType = $referenced->id();
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'test_field',
       'entity_type' => 'node',
       'translatable' => FALSE,
-      'entity_types' => array(),
-      'settings' => array(
+      'entity_types' => [],
+      'settings' => [
         'target_type' => 'node',
-      ),
+      ],
       'type' => 'entity_reference',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
 
     FieldConfig::create([
       'label' => 'Entity reference field',
       'field_name' => 'test_field',
       'entity_type' => 'node',
       'bundle' => $referencing->id(),
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
+        'handler_settings' => [
           // Reference a single vocabulary.
-          'target_bundles' => array(
+          'target_bundles' => [
             $referenced->id(),
-          ),
+          ],
           // Enable auto-create.
           'auto_create' => TRUE,
-        ),
-      ),
+        ],
+      ],
     ])->save();
 
     entity_get_display('node', $referencing->id(), 'default')
       ->setComponent('test_field')
       ->save();
     entity_get_form_display('node', $referencing->id(), 'default')
-      ->setComponent('test_field', array(
+      ->setComponent('test_field', [
         'type' => 'entity_reference_autocomplete',
-      ))
+      ])
       ->save();
 
     $account = $this->drupalCreateUser(['access content', "create $this->referencingType content"]);
@@ -109,10 +109,10 @@ public function testAutoCreate() {
     $result = $query->execute();
     $this->assertFalse($result, 'Referenced node does not exist yet.');
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'test_field[0][target_id]' => $new_title,
-    );
+    ];
     $this->drupalPostForm("node/add/$this->referencingType", $edit, 'Save');
 
     // Assert referenced node was created.
diff --git a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldDefaultValueTest.php b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldDefaultValueTest.php
index 5af26f1..2f55cd5 100644
--- a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldDefaultValueTest.php
+++ b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldDefaultValueTest.php
@@ -36,11 +36,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create default content type.
-    $this->drupalCreateContentType(array('type' => 'reference_content'));
-    $this->drupalCreateContentType(array('type' => 'referenced_content'));
+    $this->drupalCreateContentType(['type' => 'reference_content']);
+    $this->drupalCreateContentType(['type' => 'referenced_content']);
 
     // Create admin user.
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node form display', 'bypass node access']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -49,33 +49,33 @@ protected function setUp() {
    */
   function testEntityReferenceDefaultValue() {
     // Create a node to be referenced.
-    $referenced_node = $this->drupalCreateNode(array('type' => 'referenced_content'));
+    $referenced_node = $this->drupalCreateNode(['type' => 'referenced_content']);
 
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'entity_reference',
-      'settings' => array('target_type' => 'node'),
-    ));
+      'settings' => ['target_type' => 'node'],
+    ]);
     $field_storage->save();
     $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'reference_content',
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
-          'target_bundles' => array('referenced_content'),
-          'sort' => array('field' => '_none'),
-        ),
-      ),
+        'handler_settings' => [
+          'target_bundles' => ['referenced_content'],
+          'sort' => ['field' => '_none'],
+        ],
+      ],
     ]);
     $field->save();
 
     // Set created node as default_value.
-    $field_edit = array(
+    $field_edit = [
       'default_value_input[' . $field_name . '][0][target_id]' => $referenced_node->getTitle() . ' (' . $referenced_node->id() . ')',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/reference_content/fields/node.reference_content.' . $field_name, $field_edit, t('Save settings'));
 
     // Check that default value is selected in default value form.
@@ -88,7 +88,7 @@ function testEntityReferenceDefaultValue() {
     $this->assertEqual($config_entity['default_value'][0]['target_uuid'], $referenced_node->uuid(), 'Content uuid and config entity uuid are the same');
     // Ensure the configuration has the expected dependency on the entity that
     // is being used a default value.
-    $this->assertEqual(array($referenced_node->getConfigDependencyName()), $config_entity['dependencies']['content']);
+    $this->assertEqual([$referenced_node->getConfigDependencyName()], $config_entity['dependencies']['content']);
 
     // Clear field definitions cache in order to avoid stale cache values.
     \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -111,35 +111,35 @@ function testEntityReferenceDefaultValue() {
    */
   function testEntityReferenceDefaultConfigValue() {
     // Create a node to be referenced.
-    $referenced_node_type = $this->drupalCreateContentType(array('type' => 'referenced_config_to_delete'));
-    $referenced_node_type2 = $this->drupalCreateContentType(array('type' => 'referenced_config_to_preserve'));
+    $referenced_node_type = $this->drupalCreateContentType(['type' => 'referenced_config_to_delete']);
+    $referenced_node_type2 = $this->drupalCreateContentType(['type' => 'referenced_config_to_preserve']);
 
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'entity_reference',
-      'settings' => array('target_type' => 'node_type'),
+      'settings' => ['target_type' => 'node_type'],
       'cardinality' => FieldStorageConfig::CARDINALITY_UNLIMITED,
-    ));
+    ]);
     $field_storage->save();
     $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'reference_content',
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
-          'sort' => array('field' => '_none'),
-        ),
-      ),
+        'handler_settings' => [
+          'sort' => ['field' => '_none'],
+        ],
+      ],
     ]);
     $field->save();
 
     // Set created node as default_value.
-    $field_edit = array(
+    $field_edit = [
       'default_value_input[' . $field_name . '][0][target_id]' => $referenced_node_type->label() . ' (' . $referenced_node_type->id() . ')',
       'default_value_input[' . $field_name . '][1][target_id]' => $referenced_node_type2->label() . ' (' . $referenced_node_type2->id() . ')',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/reference_content/fields/node.reference_content.' . $field_name, $field_edit, t('Save settings'));
 
     // Check that the field has a dependency on the default value.
diff --git a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldTranslatedReferenceViewTest.php b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldTranslatedReferenceViewTest.php
index 52dde09..889bd1a 100644
--- a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldTranslatedReferenceViewTest.php
+++ b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceFieldTranslatedReferenceViewTest.php
@@ -111,11 +111,11 @@ class EntityReferenceFieldTranslatedReferenceViewTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'node',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
@@ -203,20 +203,20 @@ protected function enableTranslation() {
    * Adds term reference field for the article content type.
    */
   protected function setUpEntityReferenceField() {
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->referenceFieldName,
       'entity_type' => $this->testEntityTypeName,
       'type' => 'entity_reference',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
       'translatable' => $this->translatable,
-      'settings' => array(
-        'allowed_values' => array(
-          array(
+      'settings' => [
+        'allowed_values' => [
+          [
             'target_type' => $this->testEntityTypeName,
-          ),
-        ),
-      ),
-    ))->save();
+          ],
+        ],
+      ],
+    ])->save();
 
     FieldConfig::create([
       'field_name' => $this->referenceFieldName,
@@ -225,14 +225,14 @@ protected function setUpEntityReferenceField() {
     ])
       ->save();
     entity_get_form_display($this->testEntityTypeName, $this->referrerType->id(), 'default')
-      ->setComponent($this->referenceFieldName, array(
+      ->setComponent($this->referenceFieldName, [
         'type' => 'entity_reference_autocomplete',
-      ))
+      ])
       ->save();
     entity_get_display($this->testEntityTypeName, $this->referrerType->id(), 'default')
-      ->setComponent($this->referenceFieldName, array(
+      ->setComponent($this->referenceFieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -240,14 +240,14 @@ protected function setUpEntityReferenceField() {
    * Create content types.
    */
   protected function setUpContentTypes() {
-    $this->referrerType = $this->drupalCreateContentType(array(
+    $this->referrerType = $this->drupalCreateContentType([
         'type' => 'referrer',
         'name' => 'Referrer',
-      ));
-    $this->referencedType = $this->drupalCreateContentType(array(
+      ]);
+    $this->referencedType = $this->drupalCreateContentType([
         'type' => 'referenced_page',
         'name' => 'Referenced Page',
-      ));
+      ]);
   }
 
   /**
@@ -255,19 +255,19 @@ protected function setUpContentTypes() {
    */
   protected function createReferencedEntityWithTranslation() {
     /** @var \Drupal\node\Entity\Node $node */
-    $node = entity_create($this->testEntityTypeName, array(
+    $node = entity_create($this->testEntityTypeName, [
       'title' => $this->originalLabel,
       'type' => $this->referencedType->id(),
-      'description' => array(
+      'description' => [
         'value' => $this->randomMachineName(),
         'format' => 'basic_html',
-      ),
+      ],
       'langcode' => $this->baseLangcode,
-    ));
+    ]);
     $node->save();
-    $node->addTranslation($this->translateToLangcode, array(
+    $node->addTranslation($this->translateToLangcode, [
       'title' => $this->translatedLabel,
-    ));
+    ]);
     $node->save();
 
     return $node;
@@ -279,15 +279,15 @@ protected function createReferencedEntityWithTranslation() {
    */
   protected function createNotTranslatedReferencedEntity() {
     /** @var \Drupal\node\Entity\Node $node */
-    $node = entity_create($this->testEntityTypeName, array(
+    $node = entity_create($this->testEntityTypeName, [
       'title' => $this->labelOfNotTranslatedReference,
       'type' => $this->referencedType->id(),
-      'description' => array(
+      'description' => [
         'value' => $this->randomMachineName(),
         'format' => 'basic_html',
-      ),
+      ],
       'langcode' => $this->baseLangcode,
-    ));
+    ]);
     $node->save();
 
     return $node;
@@ -298,19 +298,19 @@ protected function createNotTranslatedReferencedEntity() {
    */
   protected function createReferrerEntity($translatable = TRUE) {
     /** @var \Drupal\node\Entity\Node $node */
-    $node = entity_create($this->testEntityTypeName, array(
+    $node = entity_create($this->testEntityTypeName, [
       'title' => $this->randomMachineName(),
       'type' => $this->referrerType->id(),
-      'description' => array(
+      'description' => [
         'value' => $this->randomMachineName(),
         'format' => 'basic_html',
-      ),
-      $this->referenceFieldName => array(
-        array('target_id' => $this->referencedEntityWithTranslation->id()),
-        array('target_id' => $this->referencedEntityWithoutTranslation->id()),
-      ),
+      ],
+      $this->referenceFieldName => [
+        ['target_id' => $this->referencedEntityWithTranslation->id()],
+        ['target_id' => $this->referencedEntityWithoutTranslation->id()],
+      ],
       'langcode' => $this->baseLangcode,
-    ));
+    ]);
     if ($translatable) {
       $node->addTranslation($this->translateToLangcode, $node->toArray());
     }
diff --git a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceIntegrationTest.php b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceIntegrationTest.php
index cb54d15..5648470 100644
--- a/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceIntegrationTest.php
+++ b/core/modules/field/tests/src/Functional/EntityReference/EntityReferenceIntegrationTest.php
@@ -54,7 +54,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create a test user.
-    $web_user = $this->drupalCreateUser(array('administer entity_test content', 'administer entity_test fields', 'view test entity'));
+    $web_user = $this->drupalCreateUser(['administer entity_test content', 'administer entity_test fields', 'view test entity']);
     $this->drupalLogin($web_user);
   }
 
@@ -66,18 +66,18 @@ public function testSupportedEntityTypesAndWidgets() {
       $this->fieldName = 'field_test_' . $referenced_entities[0]->getEntityTypeId();
 
       // Create an Entity reference field.
-      $this->createEntityReferenceField($this->entityType, $this->bundle, $this->fieldName, $this->fieldName, $referenced_entities[0]->getEntityTypeId(), 'default', array(), 2);
+      $this->createEntityReferenceField($this->entityType, $this->bundle, $this->fieldName, $this->fieldName, $referenced_entities[0]->getEntityTypeId(), 'default', [], 2);
 
       // Test the default 'entity_reference_autocomplete' widget.
       entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName)->save();
 
       $entity_name = $this->randomMachineName();
-      $edit = array(
+      $edit = [
         'name[0][value]' => $entity_name,
         $this->fieldName . '[0][target_id]' => $referenced_entities[0]->label() . ' (' . $referenced_entities[0]->id() . ')',
         // Test an input of the entity label without a ' (entity_id)' suffix.
         $this->fieldName . '[1][target_id]' => $referenced_entities[1]->label(),
-      );
+      ];
       $this->drupalPostForm($this->entityType . '/add', $edit, t('Save'));
       $this->assertFieldValues($entity_name, $referenced_entities);
 
@@ -90,22 +90,22 @@ public function testSupportedEntityTypesAndWidgets() {
       $this->assertFieldByName($this->fieldName . '[0][target_id]', $referenced_entities[0]->label() . ' (' . $referenced_entities[0]->id() . ')');
       $this->assertFieldByName($this->fieldName . '[1][target_id]', $referenced_entities[1]->label() . ' (' . $referenced_entities[1]->id() . ')');
 
-      $this->drupalPostForm(NULL, array(), t('Save'));
+      $this->drupalPostForm(NULL, [], t('Save'));
       $this->assertFieldValues($entity_name, $referenced_entities);
 
       // Test the 'entity_reference_autocomplete_tags' widget.
-      entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName, array(
+      entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))->save();
+      ])->save();
 
       $entity_name = $this->randomMachineName();
       $target_id = $referenced_entities[0]->label() . ' (' . $referenced_entities[0]->id() . ')';
       // Test an input of the entity label without a ' (entity_id)' suffix.
       $target_id .= ', ' . $referenced_entities[1]->label();
-      $edit = array(
+      $edit = [
         'name[0][value]' => $entity_name,
         $this->fieldName . '[target_id]' => $target_id,
-      );
+      ];
       $this->drupalPostForm($this->entityType . '/add', $edit, t('Save'));
       $this->assertFieldValues($entity_name, $referenced_entities);
 
@@ -115,23 +115,23 @@ public function testSupportedEntityTypesAndWidgets() {
       $this->drupalGet($this->entityType . '/manage/' . $entity->id() . '/edit');
       $this->assertFieldByName($this->fieldName . '[target_id]', $target_id . ' (' . $referenced_entities[1]->id() . ')');
 
-      $this->drupalPostForm(NULL, array(), t('Save'));
+      $this->drupalPostForm(NULL, [], t('Save'));
       $this->assertFieldValues($entity_name, $referenced_entities);
 
       // Test all the other widgets supported by the entity reference field.
       // Since we don't know the form structure for these widgets, just test
       // that editing and saving an already created entity works.
-      $exclude = array('entity_reference_autocomplete', 'entity_reference_autocomplete_tags');
+      $exclude = ['entity_reference_autocomplete', 'entity_reference_autocomplete_tags'];
       $entity = current($storage->loadByProperties(['name' => $entity_name]));
       $supported_widgets = \Drupal::service('plugin.manager.field.widget')->getOptions('entity_reference');
       $supported_widget_types = array_diff(array_keys($supported_widgets), $exclude);
 
       foreach ($supported_widget_types as $widget_type) {
-        entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName, array(
+        entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName, [
           'type' => $widget_type,
-        ))->save();
+        ])->save();
 
-        $this->drupalPostForm($this->entityType . '/manage/' . $entity->id() . '/edit', array(), t('Save'));
+        $this->drupalPostForm($this->entityType . '/manage/' . $entity->id() . '/edit', [], t('Save'));
         $this->assertFieldValues($entity_name, $referenced_entities);
       }
 
@@ -139,9 +139,9 @@ public function testSupportedEntityTypesAndWidgets() {
       entity_get_form_display($this->entityType, $this->bundle, 'default')->setComponent($this->fieldName)->save();
 
       // Set first entity as the default_value.
-      $field_edit = array(
+      $field_edit = [
         'default_value_input[' . $this->fieldName . '][0][target_id]' => $referenced_entities[0]->label() . ' (' . $referenced_entities[0]->id() . ')',
-      );
+      ];
       if ($key == 'content') {
         $field_edit['settings[handler_settings][target_bundles][' . $referenced_entities[0]->getEntityTypeId() . ']'] = TRUE;
       }
@@ -179,7 +179,7 @@ protected function assertFieldValues($entity_name, $referenced_entities) {
     $entity = current($this->container->get('entity_type.manager')->getStorage(
     $this->entityType)->loadByProperties(['name' => $entity_name]));
 
-    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', array('%entity_type' => $this->entityType)));
+    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', ['%entity_type' => $this->entityType]));
 
     $this->assertEqual($entity->{$this->fieldName}->target_id, $referenced_entities[0]->id());
     $this->assertEqual($entity->{$this->fieldName}->entity->id(), $referenced_entities[0]->id());
@@ -197,26 +197,26 @@ protected function assertFieldValues($entity_name, $referenced_entities) {
    *   An array of entity objects.
    */
   protected function getTestEntities() {
-    $config_entity_1 = entity_create('config_test', array('id' => $this->randomMachineName(), 'label' => $this->randomMachineName()));
+    $config_entity_1 = entity_create('config_test', ['id' => $this->randomMachineName(), 'label' => $this->randomMachineName()]);
     $config_entity_1->save();
-    $config_entity_2 = entity_create('config_test', array('id' => $this->randomMachineName(), 'label' => $this->randomMachineName()));
+    $config_entity_2 = entity_create('config_test', ['id' => $this->randomMachineName(), 'label' => $this->randomMachineName()]);
     $config_entity_2->save();
 
-    $content_entity_1 = EntityTest::create(array('name' => $this->randomMachineName()));
+    $content_entity_1 = EntityTest::create(['name' => $this->randomMachineName()]);
     $content_entity_1->save();
-    $content_entity_2 = EntityTest::create(array('name' => $this->randomMachineName()));
+    $content_entity_2 = EntityTest::create(['name' => $this->randomMachineName()]);
     $content_entity_2->save();
 
-    return array(
-      'config' => array(
+    return [
+      'config' => [
         $config_entity_1,
         $config_entity_2,
-      ),
-      'content' => array(
+      ],
+      'content' => [
         $content_entity_1,
         $content_entity_2,
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field/tests/src/Functional/EntityReference/Views/SelectionTest.php b/core/modules/field/tests/src/Functional/EntityReference/Views/SelectionTest.php
index 4ccf8cf..cfb5ecf 100644
--- a/core/modules/field/tests/src/Functional/EntityReference/Views/SelectionTest.php
+++ b/core/modules/field/tests/src/Functional/EntityReference/Views/SelectionTest.php
@@ -21,7 +21,7 @@ class SelectionTest extends BrowserTestBase {
    *
    * @var array
    */
-  protected $nodes = array();
+  protected $nodes = [];
 
   /**
    * The entity reference field to test.
@@ -38,39 +38,39 @@ protected function setUp() {
 
     // Create nodes.
     $type = $this->drupalCreateContentType()->id();
-    $node1 = $this->drupalCreateNode(array('type' => $type));
-    $node2 = $this->drupalCreateNode(array('type' => $type));
+    $node1 = $this->drupalCreateNode(['type' => $type]);
+    $node2 = $this->drupalCreateNode(['type' => $type]);
     $node3 = $this->drupalCreateNode();
 
-    foreach (array($node1, $node2, $node3) as $node) {
+    foreach ([$node1, $node2, $node3] as $node) {
       $this->nodes[$node->getType()][$node->id()] = $node->label();
     }
 
     // Create a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'test_field',
       'entity_type' => 'entity_test',
       'translatable' => FALSE,
-      'settings' => array(
+      'settings' => [
         'target_type' => 'node',
-      ),
+      ],
       'type' => 'entity_reference',
       'cardinality' => '1',
-    ));
+    ]);
     $field_storage->save();
     $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'test_bundle',
-      'settings' => array(
+      'settings' => [
         'handler' => 'views',
-        'handler_settings' => array(
-          'view' => array(
+        'handler_settings' => [
+          'view' => [
             'view_name' => 'test_entity_reference',
             'display_name' => 'entity_reference_1',
-            'arguments' => array(),
-          ),
-        ),
-      ),
+            'arguments' => [],
+          ],
+        ],
+      ],
     ]);
     $field->save();
     $this->field = $field;
@@ -112,23 +112,23 @@ public function testSelectionHandlerRelationship() {
     // Add a relationship to the view.
     $view = Views::getView('test_entity_reference');
     $view->setDisplay();
-    $view->displayHandlers->get('default')->setOption('relationships', array(
-      'test_relationship' => array(
+    $view->displayHandlers->get('default')->setOption('relationships', [
+      'test_relationship' => [
         'id' => 'uid',
         'table' => 'node_field_data',
         'field' => 'uid',
-      ),
-    ));
+      ],
+    ]);
 
     // Add a filter depending on the relationship to the test view.
-    $view->displayHandlers->get('default')->setOption('filters', array(
-      'uid' => array(
+    $view->displayHandlers->get('default')->setOption('filters', [
+      'uid' => [
         'id' => 'uid',
         'table' => 'users_field_data',
         'field' => 'uid',
         'relationship' => 'test_relationship',
-      )
-    ));
+      ]
+    ]);
 
     // Set view to distinct so only one row per node is returned.
     $query_options = $view->display_handler->getOption('query');
diff --git a/core/modules/field/tests/src/Functional/FieldAccessTest.php b/core/modules/field/tests/src/Functional/FieldAccessTest.php
index a9af836..36f0ef9 100644
--- a/core/modules/field/tests/src/Functional/FieldAccessTest.php
+++ b/core/modules/field/tests/src/Functional/FieldAccessTest.php
@@ -17,7 +17,7 @@ class FieldAccessTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_test');
+  public static $modules = ['node', 'field_test'];
 
   /**
    * Node entity to use in this test.
@@ -36,28 +36,28 @@ class FieldAccessTest extends FieldTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('view test_view_field content'));
+    $web_user = $this->drupalCreateUser(['view test_view_field content']);
     $this->drupalLogin($web_user);
 
     // Create content type.
     $content_type_info = $this->drupalCreateContentType();
     $content_type = $content_type_info->id();
 
-    $field_storage = array(
+    $field_storage = [
       'field_name' => 'test_view_field',
       'entity_type' => 'node',
       'type' => 'text',
-    );
+    ];
     FieldStorageConfig::create($field_storage)->save();
-    $field = array(
+    $field = [
       'field_name' => $field_storage['field_name'],
       'entity_type' => 'node',
       'bundle' => $content_type,
-    );
+    ];
     FieldConfig::create($field)->save();
 
     // Assign display properties for the 'default' and 'teaser' view modes.
-    foreach (array('default', 'teaser') as $view_mode) {
+    foreach (['default', 'teaser'] as $view_mode) {
       entity_get_display('node', $content_type, $view_mode)
         ->setComponent($field_storage['field_name'])
         ->save();
@@ -65,10 +65,10 @@ protected function setUp() {
 
     // Create test node.
     $this->testViewFieldValue = 'This is some text';
-    $settings = array();
+    $settings = [];
     $settings['type'] = $content_type;
     $settings['title'] = 'Field view access test';
-    $settings['test_view_field'] = array(array('value' => $this->testViewFieldValue));
+    $settings['test_view_field'] = [['value' => $this->testViewFieldValue]];
     $this->node = $this->drupalCreateNode($settings);
   }
 
diff --git a/core/modules/field/tests/src/Functional/FieldHelpTest.php b/core/modules/field/tests/src/Functional/FieldHelpTest.php
index 76affaa..9a6ff67 100644
--- a/core/modules/field/tests/src/Functional/FieldHelpTest.php
+++ b/core/modules/field/tests/src/Functional/FieldHelpTest.php
@@ -16,7 +16,7 @@ class FieldHelpTest extends BrowserTestBase {
    *
    * @var array.
    */
-  public static $modules = array('field', 'help');
+  public static $modules = ['field', 'help'];
 
   // Tests field help implementation without optional core modules enabled.
   protected $profile = 'minimal';
@@ -30,7 +30,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create the admin user.
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'view the administration theme'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'view the administration theme']);
   }
 
   /**
@@ -44,7 +44,7 @@ public function testFieldHelp() {
     $this->drupalGet('admin/help/field');
 
     // Enable the Options, Email and Field API Test modules.
-    \Drupal::service('module_installer')->install(array('options', 'field_test'));
+    \Drupal::service('module_installer')->install(['options', 'field_test']);
     $this->resetAll();
     \Drupal::service('plugin.manager.field.widget')->clearCachedDefinitions();
     \Drupal::service('plugin.manager.field.field_type')->clearCachedDefinitions();
diff --git a/core/modules/field/tests/src/Functional/FieldTestBase.php b/core/modules/field/tests/src/Functional/FieldTestBase.php
index 40cffac..108d5f5 100644
--- a/core/modules/field/tests/src/Functional/FieldTestBase.php
+++ b/core/modules/field/tests/src/Functional/FieldTestBase.php
@@ -20,7 +20,7 @@
    *   An array of random values, in the format expected for field values.
    */
   function _generateTestFieldValues($cardinality) {
-    $values = array();
+    $values = [];
     for ($i = 0; $i < $cardinality; $i++) {
       // field_test fields treat 0 as 'empty value'.
       $values[$i]['value'] = mt_rand(1, 127);
@@ -58,7 +58,7 @@ function assertFieldValues(EntityInterface $entity, $field_name, $expected_value
     $values = $field->getValue();
     $this->assertEqual(count($values), count($expected_values), 'Expected number of values were saved.');
     foreach ($expected_values as $key => $value) {
-      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', array('@value' => $value)));
+      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', ['@value' => $value]));
     }
   }
 
diff --git a/core/modules/field/tests/src/Functional/TranslationWebTest.php b/core/modules/field/tests/src/Functional/TranslationWebTest.php
index 3e0f849..e09e585 100644
--- a/core/modules/field/tests/src/Functional/TranslationWebTest.php
+++ b/core/modules/field/tests/src/Functional/TranslationWebTest.php
@@ -19,7 +19,7 @@ class TranslationWebTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'field_test', 'entity_test');
+  public static $modules = ['language', 'field_test', 'entity_test'];
 
   /**
    * The name of the field to use in this test.
@@ -54,19 +54,19 @@ protected function setUp() {
 
     $this->fieldName = Unicode::strtolower($this->randomMachineName() . '_field_name');
 
-    $field_storage = array(
+    $field_storage = [
       'field_name' => $this->fieldName,
       'entity_type' => $this->entityTypeId,
       'type' => 'test_field',
       'cardinality' => 4,
-    );
+    ];
     FieldStorageConfig::create($field_storage)->save();
     $this->fieldStorage = FieldStorageConfig::load($this->entityTypeId . '.' . $this->fieldName);
 
-    $field = array(
+    $field = [
       'field_storage' => $this->fieldStorage,
       'bundle' => $this->entityTypeId,
-    );
+    ];
     FieldConfig::create($field)->save();
     $this->field = FieldConfig::load($this->entityTypeId . '.' . $field['bundle'] . '.' . $this->fieldName);
 
@@ -75,10 +75,10 @@ protected function setUp() {
       ->save();
 
     for ($i = 0; $i < 3; ++$i) {
-      ConfigurableLanguage::create(array(
+      ConfigurableLanguage::create([
         'id' => 'l' . $i,
         'label' => $this->randomString(),
-      ))->save();
+      ])->save();
     }
   }
 
@@ -86,7 +86,7 @@ protected function setUp() {
    * Tests field translations when creating a new revision.
    */
   function testFieldFormTranslationRevisions() {
-    $web_user = $this->drupalCreateUser(array('view test entity', 'administer entity_test content'));
+    $web_user = $this->drupalCreateUser(['view test entity', 'administer entity_test content']);
     $this->drupalLogin($web_user);
 
     // Prepare the field translations.
@@ -107,10 +107,10 @@ function testFieldFormTranslationRevisions() {
     $entity->save();
 
     // Create a new revision.
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $entity->{$field_name}->value,
       'revision' => TRUE,
-    );
+    ];
     $this->drupalPostForm($this->entityTypeId . '/manage/' . $entity->id() . '/edit', $edit, t('Save'));
 
     // Check translation revisions.
@@ -129,7 +129,7 @@ private function checkTranslationRevisions($id, $revision_id, $available_langcod
       ->loadRevision($revision_id);
     foreach ($available_langcodes as $langcode => $value) {
       $passed = $entity->getTranslation($langcode)->{$field_name}->value == $value + 1;
-      $this->assertTrue($passed, format_string('The @language translation for revision @revision was correctly stored', array('@language' => $langcode, '@revision' => $entity->getRevisionId())));
+      $this->assertTrue($passed, format_string('The @language translation for revision @revision was correctly stored', ['@language' => $langcode, '@revision' => $entity->getRevisionId()]));
     }
   }
 
diff --git a/core/modules/field/tests/src/Kernel/Boolean/BooleanItemTest.php b/core/modules/field/tests/src/Kernel/Boolean/BooleanItemTest.php
index cb8b501..37acab8 100644
--- a/core/modules/field/tests/src/Kernel/Boolean/BooleanItemTest.php
+++ b/core/modules/field/tests/src/Kernel/Boolean/BooleanItemTest.php
@@ -23,11 +23,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create a boolean field and storage for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_boolean',
       'entity_type' => 'entity_test',
       'type' => 'boolean',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_boolean',
@@ -36,9 +36,9 @@ protected function setUp() {
 
     // Create a form display for the default form mode.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent('field_boolean', array(
+      ->setComponent('field_boolean', [
         'type' => 'boolean_checkbox',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/field/tests/src/Kernel/BulkDeleteTest.php b/core/modules/field/tests/src/Kernel/BulkDeleteTest.php
index b01926a..f0497d6 100644
--- a/core/modules/field/tests/src/Kernel/BulkDeleteTest.php
+++ b/core/modules/field/tests/src/Kernel/BulkDeleteTest.php
@@ -90,31 +90,31 @@ function checkHooksInvocations($expected_hooks, $actual_hooks) {
   protected function setUp() {
     parent::setUp();
 
-    $this->fieldStorages = array();
-    $this->entities = array();
-    $this->entitiesByBundles = array();
+    $this->fieldStorages = [];
+    $this->entities = [];
+    $this->entitiesByBundles = [];
 
     // Create two bundles.
-    $this->bundles = array('bb_1' => 'bb_1', 'bb_2' => 'bb_2');
+    $this->bundles = ['bb_1' => 'bb_1', 'bb_2' => 'bb_2'];
     foreach ($this->bundles as $name => $desc) {
       entity_test_create_bundle($name, $desc);
     }
 
     // Create two field storages.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'bf_1',
       'entity_type' => $this->entityTypeId,
       'type' => 'test_field',
       'cardinality' => 1
-    ));
+    ]);
     $field_storage->save();
     $this->fieldStorages[] = $field_storage;
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'bf_2',
       'entity_type' => $this->entityTypeId,
       'type' => 'test_field',
       'cardinality' => 4
-    ));
+    ]);
     $field_storage->save();
     $this->fieldStorages[] = $field_storage;
 
@@ -130,7 +130,7 @@ protected function setUp() {
       for ($i = 0; $i < 10; $i++) {
         $entity = $this->container->get('entity_type.manager')
           ->getStorage($this->entityTypeId)
-          ->create(array('type' => $bundle));
+          ->create(['type' => $bundle]);
         foreach ($this->fieldStorages as $field_storage) {
           $entity->{$field_storage->getName()}->setValue($this->_generateTestFieldValues($field_storage->getCardinality()));
         }
@@ -175,7 +175,7 @@ function testDeleteField() {
     $field->delete();
 
     // The field still exists, deleted.
-    $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 1, 'There is one deleted field');
     $field = $fields[$field->uuid()];
     $this->assertEqual($field->getTargetBundle(), $bundle, 'The deleted field is for the correct bundle');
@@ -218,12 +218,12 @@ public function testPurgeWithDeletedAndActiveField() {
     $bundle = reset($this->bundles);
     // Create another field storage.
     $field_name = 'bf_3';
-    $deleted_field_storage = FieldStorageConfig::create(array(
+    $deleted_field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => $this->entityTypeId,
       'type' => 'test_field',
       'cardinality' => 1
-    ));
+    ]);
     $deleted_field_storage->save();
     // Create the field.
     FieldConfig::create([
@@ -234,7 +234,7 @@ public function testPurgeWithDeletedAndActiveField() {
     for ($i = 0; $i < 20; $i++) {
       $entity = $this->container->get('entity_type.manager')
         ->getStorage($this->entityTypeId)
-        ->create(array('type' => $bundle));
+        ->create(['type' => $bundle]);
       $entity->{$field_name}->setValue($this->_generateTestFieldValues(1));
       $entity->save();
     }
@@ -245,16 +245,16 @@ public function testPurgeWithDeletedAndActiveField() {
     $deleted_field_uuid = $deleted_field->uuid();
 
     // Reload the field storage.
-    $field_storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $deleted_field_storage->uuid(), 'include_deleted' => TRUE));
+    $field_storages = entity_load_multiple_by_properties('field_storage_config', ['uuid' => $deleted_field_storage->uuid(), 'include_deleted' => TRUE]);
     $deleted_field_storage = reset($field_storages);
 
     // Create the field again.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => $this->entityTypeId,
       'type' => 'test_field',
       'cardinality' => 1
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -262,14 +262,14 @@ public function testPurgeWithDeletedAndActiveField() {
     ])->save();
 
     // The field still exists, deleted, with the same field name.
-    $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $deleted_field_uuid, 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['uuid' => $deleted_field_uuid, 'include_deleted' => TRUE]);
     $this->assertTrue(isset($fields[$deleted_field_uuid]) && $fields[$deleted_field_uuid]->isDeleted(), 'The field exists and is deleted');
     $this->assertTrue(isset($fields[$deleted_field_uuid]) && $fields[$deleted_field_uuid]->getName() == $field_name);
 
     for ($i = 0; $i < 10; $i++) {
       $entity = $this->container->get('entity_type.manager')
         ->getStorage($this->entityTypeId)
-        ->create(array('type' => $bundle));
+        ->create(['type' => $bundle]);
       $entity->{$field_name}->setValue($this->_generateTestFieldValues(1));
       $entity->save();
     }
@@ -289,13 +289,13 @@ public function testPurgeWithDeletedAndActiveField() {
     $this->assertFalse(\Drupal::database()->schema()->tableExists($deleted_table_name));
 
     // The field has been removed from the system.
-    $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $deleted_field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $deleted_field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 0, 'The field is gone');
 
     // Verify there are still 10 entries in the main table.
     $count = \Drupal::database()
       ->select('entity_test__' . $field_name, 'f')
-      ->fields('f', array('entity_id'))
+      ->fields('f', ['entity_id'])
       ->condition('bundle', $bundle)
       ->countQuery()
       ->execute()
@@ -340,7 +340,7 @@ function testPurgeField() {
     // FieldItemInterface::delete() should have been called once for each entity in the
     // bundle.
     $actual_hooks = field_test_memorize();
-    $hooks = array();
+    $hooks = [];
     $entities = $this->entitiesByBundles[$bundle];
     foreach ($entities as $id => $entity) {
       $hooks['field_test_field_delete'][] = $entity;
@@ -348,19 +348,19 @@ function testPurgeField() {
     $this->checkHooksInvocations($hooks, $actual_hooks);
 
     // The field still exists, deleted.
-    $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 1, 'There is one deleted field');
 
     // Purge the field.
     field_purge_batch($batch_size);
 
     // The field is gone.
-    $fields = entity_load_multiple_by_properties('field_config', array('field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['field_storage_uuid' => $field_storage->uuid(), 'deleted' => TRUE, 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 0, 'The field is gone');
 
     // The field storage still exists, not deleted, because it has a second
     // field.
-    $storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+    $storages = entity_load_multiple_by_properties('field_storage_config', ['uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
     $this->assertTrue(isset($storages[$field_storage->uuid()]), 'The field storage exists and is not deleted');
   }
 
@@ -391,7 +391,7 @@ function testPurgeFieldStorage() {
     // FieldItemInterface::delete() should have been called once for each entity in the
     // bundle.
     $actual_hooks = field_test_memorize();
-    $hooks = array();
+    $hooks = [];
     $entities = $this->entitiesByBundles[$bundle];
     foreach ($entities as $id => $entity) {
       $hooks['field_test_field_delete'][] = $entity;
@@ -399,17 +399,17 @@ function testPurgeFieldStorage() {
     $this->checkHooksInvocations($hooks, $actual_hooks);
 
     // The field still exists, deleted.
-    $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['uuid' => $field->uuid(), 'include_deleted' => TRUE]);
     $this->assertTrue(isset($fields[$field->uuid()]) && $fields[$field->uuid()]->isDeleted(), 'The field exists and is deleted');
 
     // Purge again to purge the field.
     field_purge_batch(0);
 
     // The field is gone.
-    $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['uuid' => $field->uuid(), 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 0, 'The field is purged.');
     // The field storage still exists, not deleted.
-    $storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+    $storages = entity_load_multiple_by_properties('field_storage_config', ['uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
     $this->assertTrue(isset($storages[$field_storage->uuid()]) && !$storages[$field_storage->uuid()]->isDeleted(), 'The field storage exists and is not deleted');
 
     // Delete the second field.
@@ -426,7 +426,7 @@ function testPurgeFieldStorage() {
 
     // Check hooks invocations (same as above, for the 2nd bundle).
     $actual_hooks = field_test_memorize();
-    $hooks = array();
+    $hooks = [];
     $entities = $this->entitiesByBundles[$bundle];
     foreach ($entities as $id => $entity) {
       $hooks['field_test_field_delete'][] = $entity;
@@ -434,18 +434,18 @@ function testPurgeFieldStorage() {
     $this->checkHooksInvocations($hooks, $actual_hooks);
 
     // The field and the storage still exist, deleted.
-    $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['uuid' => $field->uuid(), 'include_deleted' => TRUE]);
     $this->assertTrue(isset($fields[$field->uuid()]) && $fields[$field->uuid()]->isDeleted(), 'The field exists and is deleted');
-    $storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+    $storages = entity_load_multiple_by_properties('field_storage_config', ['uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
     $this->assertTrue(isset($storages[$field_storage->uuid()]) && $storages[$field_storage->uuid()]->isDeleted(), 'The field storage exists and is deleted');
 
     // Purge again to purge the field and the storage.
     field_purge_batch(0);
 
     // The field and the storage are gone.
-    $fields = entity_load_multiple_by_properties('field_config', array('uuid' => $field->uuid(), 'include_deleted' => TRUE));
+    $fields = entity_load_multiple_by_properties('field_config', ['uuid' => $field->uuid(), 'include_deleted' => TRUE]);
     $this->assertEqual(count($fields), 0, 'The field is purged.');
-    $storages = entity_load_multiple_by_properties('field_storage_config', array('uuid' => $field_storage->uuid(), 'include_deleted' => TRUE));
+    $storages = entity_load_multiple_by_properties('field_storage_config', ['uuid' => $field_storage->uuid(), 'include_deleted' => TRUE]);
     $this->assertEqual(count($storages), 0, 'The field storage is purged.');
   }
 
diff --git a/core/modules/field/tests/src/Kernel/DisplayApiTest.php b/core/modules/field/tests/src/Kernel/DisplayApiTest.php
index c1218a6..1072de1 100644
--- a/core/modules/field/tests/src/Kernel/DisplayApiTest.php
+++ b/core/modules/field/tests/src/Kernel/DisplayApiTest.php
@@ -69,33 +69,33 @@ protected function setUp() {
     $this->label = $this->randomMachineName();
     $this->cardinality = 4;
 
-    $field_storage = array(
+    $field_storage = [
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'cardinality' => $this->cardinality,
-    );
-    $field = array(
+    ];
+    $field = [
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
       'label' => $this->label,
-    );
+    ];
 
-    $this->displayOptions = array(
-      'default' => array(
+    $this->displayOptions = [
+      'default' => [
         'type' => 'field_test_default',
-        'settings' => array(
+        'settings' => [
           'test_formatter_setting' => $this->randomMachineName(),
-        ),
-      ),
-      'teaser' => array(
+        ],
+      ],
+      'teaser' => [
         'type' => 'field_test_default',
-        'settings' => array(
+        'settings' => [
           'test_formatter_setting' => $this->randomMachineName(),
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     FieldStorageConfig::create($field_storage)->save();
     FieldConfig::create($field)->save();
@@ -104,7 +104,7 @@ protected function setUp() {
       ->setComponent($this->fieldName, $this->displayOptions['default'])
       ->save();
     // Create a display for the teaser view mode.
-    EntityViewMode::create(array('id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'))->save();
+    EntityViewMode::create(['id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'])->save();
     entity_get_display($field['entity_type'], $field['bundle'], 'teaser')
       ->setComponent($this->fieldName, $this->displayOptions['teaser'])
       ->save();
@@ -132,66 +132,66 @@ function testFieldItemListView() {
     $setting = $settings['test_formatter_setting'];
     $this->assertText($this->label, 'Label was displayed.');
     foreach ($this->values as $delta => $value) {
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // Display settings: Check hidden field.
-    $display = array(
+    $display = [
       'label' => 'hidden',
       'type' => 'field_test_multiple',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_multiple' => $this->randomMachineName(),
         'alter' => TRUE,
-      ),
-    );
+      ],
+    ];
     $build = $items->view($display);
     $this->render($build);
     $setting = $display['settings']['test_formatter_setting_multiple'];
     $this->assertNoText($this->label, 'Label was not displayed.');
     $this->assertText('field_test_entity_display_build_alter', 'Alter fired, display passed.');
     $this->assertText('entity language is en', 'Language is placed onto the context.');
-    $array = array();
+    $array = [];
     foreach ($this->values as $delta => $value) {
       $array[] = $delta . ':' . $value['value'];
     }
     $this->assertText($setting . '|' . implode('|', $array), 'Values were displayed with expected setting.');
 
     // Display settings: Check visually_hidden field.
-    $display = array(
+    $display = [
       'label' => 'visually_hidden',
       'type' => 'field_test_multiple',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_multiple' => $this->randomMachineName(),
         'alter' => TRUE,
-      ),
-    );
+      ],
+    ];
     $build = $items->view($display);
     $this->render($build);
     $setting = $display['settings']['test_formatter_setting_multiple'];
     $this->assertRaw('visually-hidden', 'Label was visually hidden.');
     $this->assertText('field_test_entity_display_build_alter', 'Alter fired, display passed.');
     $this->assertText('entity language is en', 'Language is placed onto the context.');
-    $array = array();
+    $array = [];
     foreach ($this->values as $delta => $value) {
       $array[] = $delta . ':' . $value['value'];
     }
     $this->assertText($setting . '|' . implode('|', $array), 'Values were displayed with expected setting.');
 
     // Check the prepare_view steps are invoked.
-    $display = array(
+    $display = [
       'label' => 'hidden',
       'type' => 'field_test_with_prepare_view',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_additional' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $build = $items->view($display);
     $this->render($build);
     $setting = $display['settings']['test_formatter_setting_additional'];
     $this->assertNoText($this->label, 'Label was not displayed.');
     $this->assertNoText('field_test_entity_display_build_alter', 'Alter not fired.');
     foreach ($this->values as $delta => $value) {
-      $this->assertText($setting . '|' . $value['value'] . '|' . ($value['value'] + 1), format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'] . '|' . ($value['value'] + 1), format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // View mode: check that display settings specified in the display object
@@ -201,7 +201,7 @@ function testFieldItemListView() {
     $setting = $this->displayOptions['teaser']['settings']['test_formatter_setting'];
     $this->assertText($this->label, 'Label was displayed.');
     foreach ($this->values as $delta => $value) {
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // Unknown view mode: check that display settings for 'default' view mode
@@ -211,7 +211,7 @@ function testFieldItemListView() {
     $setting = $this->displayOptions['default']['settings']['test_formatter_setting'];
     $this->assertText($this->label, 'Label was displayed.');
     foreach ($this->values as $delta => $value) {
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
   }
 
@@ -226,37 +226,37 @@ function testFieldItemView() {
       $item = $this->entity->{$this->fieldName}[$delta];
       $build = $item->view();
       $this->render($build);
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // Check that explicit display settings are used.
-    $display = array(
+    $display = [
       'type' => 'field_test_multiple',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_multiple' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $setting = $display['settings']['test_formatter_setting_multiple'];
     foreach ($this->values as $delta => $value) {
       $item = $this->entity->{$this->fieldName}[$delta];
       $build = $item->view($display);
       $this->render($build);
-      $this->assertText($setting . '|0:' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|0:' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // Check that prepare_view steps are invoked.
-    $display = array(
+    $display = [
       'type' => 'field_test_with_prepare_view',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_additional' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $setting = $display['settings']['test_formatter_setting_additional'];
     foreach ($this->values as $delta => $value) {
       $item = $this->entity->{$this->fieldName}[$delta];
       $build = $item->view($display);
       $this->render($build);
-      $this->assertText($setting . '|' . $value['value'] . '|' . ($value['value'] + 1), format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'] . '|' . ($value['value'] + 1), format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // View mode: check that display settings specified in the field are used.
@@ -265,7 +265,7 @@ function testFieldItemView() {
       $item = $this->entity->{$this->fieldName}[$delta];
       $build = $item->view('teaser');
       $this->render($build);
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
 
     // Unknown view mode: check that display settings for 'default' view mode
@@ -275,7 +275,7 @@ function testFieldItemView() {
       $item = $this->entity->{$this->fieldName}[$delta];
       $build = $item->view('unknown_view_mode');
       $this->render($build);
-      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', array('@delta' => $delta)));
+      $this->assertText($setting . '|' . $value['value'], format_string('Value @delta was displayed with expected setting.', ['@delta' => $delta]));
     }
   }
 
@@ -284,13 +284,13 @@ function testFieldItemView() {
    */
   function testFieldEmpty() {
     // Uses \Drupal\field_test\Plugin\Field\FieldFormatter\TestFieldEmptyFormatter.
-    $display = array(
+    $display = [
       'label' => 'hidden',
       'type' => 'field_empty_test',
-      'settings' => array(
+      'settings' => [
         'test_empty_string' => '**EMPTY FIELD**' . $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     // $this->entity is set by the setUp() method and by default contains 4
     // numeric values.  We only want to test the display of this one field.
     $build = $this->entity->get($this->fieldName)->view($display);
@@ -300,7 +300,7 @@ function testFieldEmpty() {
     $this->assertNoText($display['settings']['test_empty_string']);
 
     // Now remove the values from the test field and retest.
-    $this->entity->{$this->fieldName} = array();
+    $this->entity->{$this->fieldName} = [];
     $this->entity->save();
     $build = $this->entity->get($this->fieldName)->view($display);
     $this->render($build);
diff --git a/core/modules/field/tests/src/Kernel/Email/EmailItemTest.php b/core/modules/field/tests/src/Kernel/Email/EmailItemTest.php
index cd8b7ac..10b4433 100644
--- a/core/modules/field/tests/src/Kernel/Email/EmailItemTest.php
+++ b/core/modules/field/tests/src/Kernel/Email/EmailItemTest.php
@@ -20,11 +20,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create an email field storage and field for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_email',
       'entity_type' => 'entity_test',
       'type' => 'email',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_email',
@@ -33,9 +33,9 @@ protected function setUp() {
 
     // Create a form display for the default form mode.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent('field_email', array(
+      ->setComponent('field_email', [
         'type' => 'email_default',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
index da4481a..9c94aca 100644
--- a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
+++ b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceFormatterTest.php
@@ -68,7 +68,7 @@ protected function setUp() {
     $this->config('system.theme')->set('default', 'classy')->save();
     $this->installEntitySchema('entity_test');
     // Grant the 'view test entity' permission.
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
     Role::load(RoleInterface::ANONYMOUS_ID)
       ->grantPermission('view test entity')
       ->save();
@@ -76,16 +76,16 @@ protected function setUp() {
     // The label formatter rendering generates links, so build the router.
     $this->container->get('router.builder')->rebuild();
 
-    $this->createEntityReferenceField($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType, 'default', array(), FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
+    $this->createEntityReferenceField($this->entityType, $this->bundle, $this->fieldName, 'Field test', $this->entityType, 'default', [], FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     // Set up a field, so that the entity that'll be referenced bubbles up a
     // cache tag when rendering it entirely.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'body',
       'entity_type' => $this->entityType,
       'type' => 'text',
-      'settings' => array(),
-    ))->save();
+      'settings' => [],
+    ])->save();
     FieldConfig::create([
       'entity_type' => $this->entityType,
       'bundle' => $this->bundle,
@@ -93,35 +93,35 @@ protected function setUp() {
       'label' => 'Body',
     ])->save();
     entity_get_display($this->entityType, $this->bundle, 'default')
-      ->setComponent('body', array(
+      ->setComponent('body', [
         'type' => 'text_default',
-        'settings' => array(),
-      ))
+        'settings' => [],
+      ])
       ->save();
 
-    FilterFormat::create(array(
+    FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
-    ))->save();
+    ])->save();
 
     // Create the entity to be referenced.
     $this->referencedEntity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
-    $this->referencedEntity->body = array(
+      ->create(['name' => $this->randomMachineName()]);
+    $this->referencedEntity->body = [
       'value' => '<p>Hello, world!</p>',
       'format' => 'full_html',
-    );
+    ];
     $this->referencedEntity->save();
 
     // Create another entity to be referenced but do not save it.
     $this->unsavedReferencedEntity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
-    $this->unsavedReferencedEntity->body = array(
+      ->create(['name' => $this->randomMachineName()]);
+    $this->unsavedReferencedEntity->body = [
       'value' => '<p>Hello, unsaved world!</p>',
       'format' => 'full_html',
-    );
+    ];
   }
 
   /**
@@ -137,7 +137,7 @@ public function testAccess() {
 
     $referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
+      ->create(['name' => $this->randomMachineName()]);
     $referencing_entity->save();
     $referencing_entity->{$field_name}->entity = $this->referencedEntity;
 
@@ -150,16 +150,16 @@ public function testAccess() {
     foreach ($formatter_manager->getOptions('entity_reference') as $formatter => $name) {
       // Set formatter type for the 'full' view mode.
       entity_get_display($this->entityType, $this->bundle, 'default')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => $formatter,
-        ))
+        ])
         ->save();
 
       // Invoke entity view.
       entity_view($referencing_entity, 'default');
 
       // Verify the un-accessible item still exists.
-      $this->assertEqual($referencing_entity->{$field_name}->target_id, $this->referencedEntity->id(), format_string('The un-accessible item still exists after @name formatter was executed.', array('@name' => $name)));
+      $this->assertEqual($referencing_entity->{$field_name}->target_id, $this->referencedEntity->id(), format_string('The un-accessible item still exists after @name formatter was executed.', ['@name' => $name]));
     }
   }
 
@@ -198,7 +198,7 @@ public function testEntityFormatter() {
     $this->assertEqual($build[0]['#markup'], 'default | ' . $this->referencedEntity->label() . $expected_rendered_name_field_1 . $expected_rendered_body_field_1, sprintf('The markup returned by the %s formatter is correct for an item with a saved entity.', $formatter));
     $expected_cache_tags = Cache::mergeTags(\Drupal::entityManager()->getViewBuilder($this->entityType)->getCacheTags(), $this->referencedEntity->getCacheTags());
     $expected_cache_tags = Cache::mergeTags($expected_cache_tags, FilterFormat::load('full_html')->getCacheTags());
-    $this->assertEqual($build[0]['#cache']['tags'], $expected_cache_tags, format_string('The @formatter formatter has the expected cache tags.', array('@formatter' => $formatter)));
+    $this->assertEqual($build[0]['#cache']['tags'], $expected_cache_tags, format_string('The @formatter formatter has the expected cache tags.', ['@formatter' => $formatter]));
 
     // Test the second field item.
     $expected_rendered_name_field_2 = '
@@ -338,37 +338,37 @@ public function testLabelFormatter() {
       'max-age' => Cache::PERMANENT,
     ];
     $this->assertEqual($build['#cache'], $expected_field_cacheability, 'The field render array contains the entity access cacheability metadata');
-    $expected_item_1 = array(
+    $expected_item_1 = [
       '#type' => 'link',
       '#title' => $this->referencedEntity->label(),
       '#url' => $this->referencedEntity->urlInfo(),
       '#options' => $this->referencedEntity->urlInfo()->getOptions(),
-      '#cache' => array(
+      '#cache' => [
         'contexts' => [
           'user.permissions',
         ],
         'tags' => $this->referencedEntity->getCacheTags(),
-      ),
-    );
+      ],
+    ];
     $this->assertEqual($renderer->renderRoot($build[0]), $renderer->renderRoot($expected_item_1), sprintf('The markup returned by the %s formatter is correct for an item with a saved entity.', $formatter));
     $this->assertEqual(CacheableMetadata::createFromRenderArray($build[0]), CacheableMetadata::createFromRenderArray($expected_item_1));
 
     // The second referenced entity is "autocreated", therefore not saved and
     // lacking any URL info.
-    $expected_item_2 = array(
+    $expected_item_2 = [
       '#plain_text' => $this->unsavedReferencedEntity->label(),
-      '#cache' => array(
+      '#cache' => [
         'contexts' => [
           'user.permissions',
         ],
         'tags' => $this->unsavedReferencedEntity->getCacheTags(),
         'max-age' => Cache::PERMANENT,
-      ),
-    );
+      ],
+    ];
     $this->assertEqual($build[1], $expected_item_2, sprintf('The render array returned by the %s formatter is correct for an item with a unsaved entity.', $formatter));
 
     // Test with the 'link' setting set to FALSE.
-    $build = $this->buildRenderArray([$this->referencedEntity, $this->unsavedReferencedEntity], $formatter, array('link' => FALSE));
+    $build = $this->buildRenderArray([$this->referencedEntity, $this->unsavedReferencedEntity], $formatter, ['link' => FALSE]);
     $this->assertEqual($build[0]['#plain_text'], $this->referencedEntity->label(), sprintf('The markup returned by the %s formatter is correct for an item with a saved entity.', $formatter));
     $this->assertEqual($build[1]['#plain_text'], $this->unsavedReferencedEntity->label(), sprintf('The markup returned by the %s formatter is correct for an item with a unsaved entity.', $formatter));
 
@@ -379,12 +379,12 @@ public function testLabelFormatter() {
     $field_storage_config->setSetting('target_type', 'entity_test_label');
     $field_storage_config->save();
 
-    $referenced_entity_with_no_link_template = EntityTestLabel::create(array(
+    $referenced_entity_with_no_link_template = EntityTestLabel::create([
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $referenced_entity_with_no_link_template->save();
 
-    $build = $this->buildRenderArray([$referenced_entity_with_no_link_template], $formatter, array('link' => TRUE));
+    $build = $this->buildRenderArray([$referenced_entity_with_no_link_template], $formatter, ['link' => TRUE]);
     $this->assertEqual($build[0]['#plain_text'], $referenced_entity_with_no_link_template->label(), sprintf('The markup returned by the %s formatter is correct for an entity type with no valid link template.', $formatter));
   }
 
@@ -403,11 +403,11 @@ public function testLabelFormatter() {
    * @return array
    *   A render array.
    */
-  protected function buildRenderArray(array $referenced_entities, $formatter, $formatter_options = array()) {
+  protected function buildRenderArray(array $referenced_entities, $formatter, $formatter_options = []) {
     // Create the entity that will have the entity reference field.
     $referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
+      ->create(['name' => $this->randomMachineName()]);
 
     $items = $referencing_entity->get($this->fieldName);
 
@@ -417,7 +417,7 @@ protected function buildRenderArray(array $referenced_entities, $formatter, $for
     }
 
     // Build the renderable array for the field.
-    return $items->view(array('type' => $formatter, 'settings' => $formatter_options));
+    return $items->view(['type' => $formatter, 'settings' => $formatter_options]);
   }
 
 }
diff --git a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceItemTest.php b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceItemTest.php
index 90d4d1f..ded93b8 100644
--- a/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceItemTest.php
+++ b/core/modules/field/tests/src/Kernel/EntityReference/EntityReferenceItemTest.php
@@ -175,7 +175,7 @@ public function testContentEntityReferenceItem() {
     // Delete terms so we have nothing to reference and try again
     $term->delete();
     $term2->delete();
-    $entity = EntityTest::create(array('name' => $this->randomMachineName()));
+    $entity = EntityTest::create(['name' => $this->randomMachineName()]);
     $entity->save();
 
     // Test the generateSampleValue() method.
@@ -244,7 +244,7 @@ public function testConfigEntityReferenceItem() {
     // Delete terms so we have nothing to reference and try again
     $this->vocabulary->delete();
     $vocabulary2->delete();
-    $entity = EntityTest::create(array('name' => $this->randomMachineName()));
+    $entity = EntityTest::create(['name' => $this->randomMachineName()]);
     $entity->save();
   }
 
@@ -253,11 +253,11 @@ public function testConfigEntityReferenceItem() {
    */
   public function testEntityAutoCreate() {
     // The term entity is unsaved here.
-    $term = Term::create(array(
+    $term = Term::create([
       'name' => $this->randomMachineName(),
       'vid' => $this->term->bundle(),
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $entity = EntityTest::create();
     // Now assign the unsaved term to the field.
     $entity->field_test_taxonomy_term->entity = $term;
@@ -304,22 +304,22 @@ public function testEntitySaveOrder() {
    */
   public function testSelectionHandlerSettings() {
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'entity_reference',
-      'settings' => array(
+      'settings' => [
         'target_type' => 'entity_test'
-      ),
-    ));
+      ],
+    ]);
     $field_storage->save();
 
     // Do not specify any value for the 'handler' setting in order to verify
     // that the default handler with the correct derivative is used.
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
     $field = FieldConfig::load($field->id());
     $this->assertEqual($field->getSetting('handler'), 'default:entity_test');
@@ -350,11 +350,11 @@ public function testSelectionHandlerSettings() {
    */
   public function testAutocreateValidation() {
     // The term entity is unsaved here.
-    $term = Term::create(array(
+    $term = Term::create([
       'name' => $this->randomMachineName(),
       'vid' => $this->term->bundle(),
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $entity = EntityTest::create([
       'field_test_taxonomy_term' => [
         'entity' => $term,
diff --git a/core/modules/field/tests/src/Kernel/EntityReference/Views/EntityReferenceRelationshipTest.php b/core/modules/field/tests/src/Kernel/EntityReference/Views/EntityReferenceRelationshipTest.php
index d18d9f3..2b0be85 100644
--- a/core/modules/field/tests/src/Kernel/EntityReference/Views/EntityReferenceRelationshipTest.php
+++ b/core/modules/field/tests/src/Kernel/EntityReference/Views/EntityReferenceRelationshipTest.php
@@ -27,14 +27,14 @@ class EntityReferenceRelationshipTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array(
+  public static $testViews = [
     'test_entity_reference_entity_test_view',
     'test_entity_reference_entity_test_view_long',
     'test_entity_reference_reverse_entity_test_view',
     'test_entity_reference_entity_test_mul_view',
     'test_entity_reference_reverse_entity_test_mul_view',
     'test_entity_reference_group_by_empty_relationships',
-    );
+    ];
 
   /**
    * Modules to install.
@@ -48,7 +48,7 @@ class EntityReferenceRelationshipTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  protected $entities = array();
+  protected $entities = [];
 
   /**
    * {@inheritdoc}
@@ -74,9 +74,9 @@ protected function setUp($import_test_views = TRUE) {
     $this->createEntityReferenceField('entity_test_mul_changed', 'entity_test_mul_changed', 'field_test_data_with_a_long_name', 'field_test_data_with_a_long_name', 'entity_test');
 
     // Create reference from entity_test_mul to entity_test cardinality: infinite.
-    $this->createEntityReferenceField('entity_test_mul', 'entity_test_mul', 'field_data_test_unlimited', 'field_data_test_unlimited', 'entity_test', 'default', array(), FieldStorageConfig::CARDINALITY_UNLIMITED);
+    $this->createEntityReferenceField('entity_test_mul', 'entity_test_mul', 'field_data_test_unlimited', 'field_data_test_unlimited', 'entity_test', 'default', [], FieldStorageConfig::CARDINALITY_UNLIMITED);
 
-    ViewTestData::createTestViews(get_class($this), array('entity_reference_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['entity_reference_test_views']);
   }
 
   /**
diff --git a/core/modules/field/tests/src/Kernel/FieldAttachOtherTest.php b/core/modules/field/tests/src/Kernel/FieldAttachOtherTest.php
index ba96bc9..c1e7ae1 100644
--- a/core/modules/field/tests/src/Kernel/FieldAttachOtherTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldAttachOtherTest.php
@@ -42,23 +42,23 @@ function testEntityDisplayBuild() {
     $display = entity_get_display($entity_type, $entity->bundle(), 'full');
 
     $formatter_setting = $this->randomMachineName();
-    $display_options = array(
+    $display_options = [
       'label' => 'above',
       'type' => 'field_test_default',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting' => $formatter_setting,
-      ),
-    );
+      ],
+    ];
     $display->setComponent($this->fieldTestData->field_name, $display_options);
 
     $formatter_setting_2 = $this->randomMachineName();
-    $display_options_2 = array(
+    $display_options_2 = [
       'label' => 'above',
       'type' => 'field_test_default',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting' => $formatter_setting_2,
-      ),
-    );
+      ],
+    ];
     $display->setComponent($this->fieldTestData->field_name_2, $display_options_2);
 
     // View all fields.
@@ -94,13 +94,13 @@ function testEntityDisplayBuild() {
     // Multiple formatter.
     $entity = clone($entity_init);
     $formatter_setting = $this->randomMachineName();
-    $display->setComponent($this->fieldTestData->field_name, array(
+    $display->setComponent($this->fieldTestData->field_name, [
       'label' => 'above',
       'type' => 'field_test_multiple',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_multiple' => $formatter_setting,
-      ),
-    ));
+      ],
+    ]);
     $content = $display->build($entity);
     $this->render($content);
     $expected_output = $formatter_setting;
@@ -112,13 +112,13 @@ function testEntityDisplayBuild() {
     // Test a formatter that uses hook_field_formatter_prepare_view().
     $entity = clone($entity_init);
     $formatter_setting = $this->randomMachineName();
-    $display->setComponent($this->fieldTestData->field_name, array(
+    $display->setComponent($this->fieldTestData->field_name, [
       'label' => 'above',
       'type' => 'field_test_with_prepare_view',
-      'settings' => array(
+      'settings' => [
         'test_formatter_setting_additional' => $formatter_setting,
-      ),
-    ));
+      ],
+    ]);
     $content = $display->build($entity);
     $this->render($content);
     foreach ($values as $delta => $value) {
@@ -136,18 +136,18 @@ function testEntityDisplayBuild() {
   function testEntityDisplayViewMultiple() {
     // Use a formatter that has a prepareView() step.
     $display = entity_get_display('entity_test', 'entity_test', 'full')
-      ->setComponent($this->fieldTestData->field_name, array(
+      ->setComponent($this->fieldTestData->field_name, [
         'type' => 'field_test_with_prepare_view',
-      ));
+      ]);
 
     // Create two entities.
-    $entity1 = EntityTest::create(array('id' => 1, 'type' => 'entity_test'));
+    $entity1 = EntityTest::create(['id' => 1, 'type' => 'entity_test']);
     $entity1->{$this->fieldTestData->field_name}->setValue($this->_generateTestFieldValues(1));
-    $entity2 = EntityTest::create(array('id' => 2, 'type' => 'entity_test'));
+    $entity2 = EntityTest::create(['id' => 2, 'type' => 'entity_test']);
     $entity2->{$this->fieldTestData->field_name}->setValue($this->_generateTestFieldValues(1));
 
     // Run buildMultiple(), and check that the entities come out as expected.
-    $display->buildMultiple(array($entity1, $entity2));
+    $display->buildMultiple([$entity1, $entity2]);
     $item1 = $entity1->{$this->fieldTestData->field_name}[0];
     $this->assertEqual($item1->additional_formatter_value, $item1->value + 1, 'Entity 1 ran through the prepareView() formatter method.');
     $item2 = $entity2->{$this->fieldTestData->field_name}[0];
@@ -162,7 +162,7 @@ function testEntityDisplayViewMultiple() {
    */
   function testEntityCache() {
     // Initialize random values and a test entity.
-    $entity_init = EntityTest::create(array('type' => $this->fieldTestData->field->getTargetBundle()));
+    $entity_init = EntityTest::create(['type' => $this->fieldTestData->field->getTargetBundle()]);
     $values = $this->_generateTestFieldValues($this->fieldTestData->field_storage->getCardinality());
 
     // Non-cacheable entity type.
@@ -185,9 +185,9 @@ function testEntityCache() {
 
     $entity_init = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         'type' => $entity_type,
-      ));
+      ]);
 
     // Check that no initial cache entry is present.
     $cid = "values:$entity_type:" . $entity->id();
@@ -247,11 +247,11 @@ function testEntityFormDisplayBuildForm() {
     $this->createFieldWithStorage('_2');
 
     $entity_type = 'entity_test';
-    $entity = entity_create($entity_type, array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->getTargetBundle()));
+    $entity = entity_create($entity_type, ['id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->getTargetBundle()]);
 
     // Test generating widgets for all fields.
     $display = entity_get_form_display($entity_type, $this->fieldTestData->field->getTargetBundle(), 'default');
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $display->buildForm($entity, $form, $form_state);
 
@@ -273,7 +273,7 @@ function testEntityFormDisplayBuildForm() {
         $display->removeComponent($name);
       }
     }
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $display->buildForm($entity, $form, $form_state);
 
@@ -294,18 +294,18 @@ function testEntityFormDisplayExtractFormValues() {
     $entity_type = 'entity_test';
     $entity_init = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->getTargetBundle()));
+      ->create(['id' => 1, 'revision_id' => 1, 'type' => $this->fieldTestData->field->getTargetBundle()]);
 
     // Build the form for all fields.
     $display = entity_get_form_display($entity_type, $this->fieldTestData->field->getTargetBundle(), 'default');
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $display->buildForm($entity_init, $form, $form_state);
 
     // Simulate incoming values.
     // First field.
-    $values = array();
-    $weights = array();
+    $values = [];
+    $weights = [];
     for ($delta = 0; $delta < $this->fieldTestData->field_storage->getCardinality(); $delta++) {
       $values[$delta]['value'] = mt_rand(1, 127);
       // Assign random weight.
@@ -318,8 +318,8 @@ function testEntityFormDisplayExtractFormValues() {
     // Leave an empty value. 'field_test' fields are empty if empty().
     $values[1]['value'] = 0;
     // Second field.
-    $values_2 = array();
-    $weights_2 = array();
+    $values_2 = [];
+    $weights_2 = [];
     for ($delta = 0; $delta < $this->fieldTestData->field_storage_2->getCardinality(); $delta++) {
       $values_2[$delta]['value'] = mt_rand(1, 127);
       // Assign random weight.
@@ -345,17 +345,17 @@ function testEntityFormDisplayExtractFormValues() {
 
     asort($weights);
     asort($weights_2);
-    $expected_values = array();
-    $expected_values_2 = array();
+    $expected_values = [];
+    $expected_values_2 = [];
     foreach ($weights as $key => $value) {
       if ($key != 1) {
-        $expected_values[] = array('value' => $values[$key]['value']);
+        $expected_values[] = ['value' => $values[$key]['value']];
       }
     }
     $this->assertIdentical($entity->{$this->fieldTestData->field_name}->getValue(), $expected_values, 'Submit filters empty values');
     foreach ($weights_2 as $key => $value) {
       if ($key != 1) {
-        $expected_values_2[] = array('value' => $values_2[$key]['value']);
+        $expected_values_2[] = ['value' => $values_2[$key]['value']];
       }
     }
     $this->assertIdentical($entity->{$this->fieldTestData->field_name_2}->getValue(), $expected_values_2, 'Submit filters empty values');
@@ -368,10 +368,10 @@ function testEntityFormDisplayExtractFormValues() {
     }
     $entity = clone($entity_init);
     $display->extractFormValues($entity, $form, $form_state);
-    $expected_values_2 = array();
+    $expected_values_2 = [];
     foreach ($weights_2 as $key => $value) {
       if ($key != 1) {
-        $expected_values_2[] = array('value' => $values_2[$key]['value']);
+        $expected_values_2[] = ['value' => $values_2[$key]['value']];
       }
     }
     $this->assertTrue($entity->{$this->fieldTestData->field_name}->isEmpty(), 'The first field is empty in the entity object');
diff --git a/core/modules/field/tests/src/Kernel/FieldAttachStorageTest.php b/core/modules/field/tests/src/Kernel/FieldAttachStorageTest.php
index 8237ef4..9f0eef3 100644
--- a/core/modules/field/tests/src/Kernel/FieldAttachStorageTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldAttachStorageTest.php
@@ -31,7 +31,7 @@ function testFieldAttachSaveLoad() {
 
     // TODO : test empty values filtering and "compression" (store consecutive deltas).
     // Preparation: create three revisions and store them in $revision array.
-    $values = array();
+    $values = [];
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
       ->create();
@@ -54,17 +54,17 @@ function testFieldAttachSaveLoad() {
     $this->assertEqual(count($entity->{$this->fieldTestData->field_name}), $cardinality, 'Current revision: expected number of values');
     for ($delta = 0; $delta < $cardinality; $delta++) {
       // The field value loaded matches the one inserted or updated.
-      $this->assertEqual($entity->{$this->fieldTestData->field_name}[$delta]->value, $values[$current_revision][$delta]['value'], format_string('Current revision: expected value %delta was found.', array('%delta' => $delta)));
+      $this->assertEqual($entity->{$this->fieldTestData->field_name}[$delta]->value, $values[$current_revision][$delta]['value'], format_string('Current revision: expected value %delta was found.', ['%delta' => $delta]));
     }
 
     // Confirm each revision loads the correct data.
     foreach (array_keys($values) as $revision_id) {
       $entity = $storage->loadRevision($revision_id);
       // Number of values per field loaded equals the field cardinality.
-      $this->assertEqual(count($entity->{$this->fieldTestData->field_name}), $cardinality, format_string('Revision %revision_id: expected number of values.', array('%revision_id' => $revision_id)));
+      $this->assertEqual(count($entity->{$this->fieldTestData->field_name}), $cardinality, format_string('Revision %revision_id: expected number of values.', ['%revision_id' => $revision_id]));
       for ($delta = 0; $delta < $cardinality; $delta++) {
         // The field value loaded matches the one inserted or updated.
-        $this->assertEqual($entity->{$this->fieldTestData->field_name}[$delta]->value, $values[$revision_id][$delta]['value'], format_string('Revision %revision_id: expected value %delta was found.', array('%revision_id' => $revision_id, '%delta' => $delta)));
+        $this->assertEqual($entity->{$this->fieldTestData->field_name}[$delta]->value, $values[$revision_id][$delta]['value'], format_string('Revision %revision_id: expected value %delta was found.', ['%revision_id' => $revision_id, '%delta' => $delta]));
       }
     }
   }
@@ -76,28 +76,28 @@ function testFieldAttachLoadMultiple() {
     $entity_type = 'entity_test_rev';
 
     // Define 2 bundles.
-    $bundles = array(
+    $bundles = [
       1 => 'test_bundle_1',
       2 => 'test_bundle_2',
-    );
+    ];
     entity_test_create_bundle($bundles[1]);
     entity_test_create_bundle($bundles[2]);
     // Define 3 fields:
     // - field_1 is in bundle_1 and bundle_2,
     // - field_2 is in bundle_1,
     // - field_3 is in bundle_2.
-    $field_bundles_map = array(
-      1 => array(1, 2),
-      2 => array(1),
-      3 => array(2),
-    );
+    $field_bundles_map = [
+      1 => [1, 2],
+      2 => [1],
+      3 => [2],
+    ];
     for ($i = 1; $i <= 3; $i++) {
       $field_names[$i] = 'field_' . $i;
-      $field_storage = FieldStorageConfig::create(array(
+      $field_storage = FieldStorageConfig::create([
         'field_name' => $field_names[$i],
         'entity_type' => $entity_type,
         'type' => 'test_field',
-      ));
+      ]);
       $field_storage->save();
       $field_ids[$i] = $field_storage->uuid();
       foreach ($field_bundles_map[$i] as $bundle) {
@@ -113,14 +113,14 @@ function testFieldAttachLoadMultiple() {
     foreach ($bundles as $index => $bundle) {
       $entities[$index] = $this->container->get('entity_type.manager')
         ->getStorage($entity_type)
-        ->create(array('id' => $index, 'revision_id' => $index, 'type' => $bundle));
+        ->create(['id' => $index, 'revision_id' => $index, 'type' => $bundle]);
       $entity = clone($entities[$index]);
       foreach ($field_names as $field_name) {
         if (!$entity->hasField($field_name)) {
           continue;
         }
         $values[$index][$field_name] = mt_rand(1, 127);
-        $entity->$field_name->setValue(array('value' => $values[$index][$field_name]));
+        $entity->$field_name->setValue(['value' => $values[$index][$field_name]]);
       }
       $entity->enforceIsnew();
       $entity->save();
@@ -136,7 +136,7 @@ function testFieldAttachLoadMultiple() {
           continue;
         }
         // The field value loaded matches the one inserted.
-        $this->assertEqual($entity->{$field_name}->value, $values[$index][$field_name], format_string('Entity %index: expected value was found.', array('%index' => $index)));
+        $this->assertEqual($entity->{$field_name}->value, $values[$index][$field_name], format_string('Entity %index: expected value was found.', ['%index' => $index]));
       }
     }
   }
@@ -150,7 +150,7 @@ function testFieldAttachSaveEmptyData() {
 
     $entity_init = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('id' => 1));
+      ->create(['id' => 1]);
 
     // Insert: Field is NULL.
     $entity = clone $entity_init;
@@ -184,7 +184,7 @@ function testFieldAttachSaveEmptyData() {
 
     // Update: Field is empty array. Data should be wiped.
     $entity = clone($entity_init);
-    $entity->{$this->fieldTestData->field_name} = array();
+    $entity->{$this->fieldTestData->field_name} = [];
     $entity = $this->entitySaveReload($entity);
     $this->assertTrue($entity->{$this->fieldTestData->field_name}->isEmpty(), 'Update: empty array removes existing values');
   }
@@ -203,7 +203,7 @@ function testFieldAttachSaveEmptyDataDefaultValue() {
     // Verify that fields are populated with default values.
     $entity_init = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('id' => 1, 'revision_id' => 1));
+      ->create(['id' => 1, 'revision_id' => 1]);
     $default = field_test_default_value($entity_init, $this->fieldTestData->field);
     $this->assertEqual($entity_init->{$this->fieldTestData->field_name}->getValue(), $default, 'Default field value correctly populated.');
 
@@ -215,10 +215,10 @@ function testFieldAttachSaveEmptyDataDefaultValue() {
     $this->assertTrue($entity->{$this->fieldTestData->field_name}->isEmpty(), 'Insert: NULL field results in no value saved');
 
     // Verify that prepopulated field values are not overwritten by defaults.
-    $value = array(array('value' => $default[0]['value'] - mt_rand(1, 127)));
+    $value = [['value' => $default[0]['value'] - mt_rand(1, 127)]];
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('type' => $entity_init->bundle(), $this->fieldTestData->field_name => $value));
+      ->create(['type' => $entity_init->bundle(), $this->fieldTestData->field_name => $value]);
     $this->assertEqual($entity->{$this->fieldTestData->field_name}->getValue(), $value, 'Prepopulated field value correctly maintained.');
   }
 
@@ -231,8 +231,8 @@ function testFieldAttachDelete() {
     $cardinality = $this->fieldTestData->field_storage->getCardinality();
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('type' => $this->fieldTestData->field->getTargetBundle()));
-    $vids = array();
+      ->create(['type' => $this->fieldTestData->field->getTargetBundle()]);
+    $vids = [];
 
     // Create revision 0
     $values = $this->_generateTestFieldValues($cardinality);
@@ -261,7 +261,7 @@ function testFieldAttachDelete() {
     // Delete revision 1, confirm the other two still load.
     $controller->deleteRevision($vids[1]);
     $controller->resetCache();
-    foreach (array(0, 2) as $key) {
+    foreach ([0, 2] as $key) {
       $vid = $vids[$key];
       $revision = $controller->loadRevision($vid);
       $this->assertEqual(count($revision->{$this->fieldTestData->field_name}), $cardinality, "The test entity revision $vid has $cardinality values.");
@@ -275,7 +275,7 @@ function testFieldAttachDelete() {
     // Delete all field data, confirm nothing loads
     $entity->delete();
     $controller->resetCache();
-    foreach (array(0, 1, 2) as $vid) {
+    foreach ([0, 1, 2] as $vid) {
       $revision = $controller->loadRevision($vid);
       $this->assertFalse($revision);
     }
@@ -301,7 +301,7 @@ function testEntityCreateBundle() {
     // Save an entity with data in the field.
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('type' => $this->fieldTestData->field->getTargetBundle()));
+      ->create(['type' => $this->fieldTestData->field->getTargetBundle()]);
     $values = $this->_generateTestFieldValues($cardinality);
     $entity->{$this->fieldTestData->field_name} = $values;
 
@@ -327,27 +327,27 @@ function testEntityDeleteBundle() {
 
     // Create a second field for the test bundle
     $field_name = Unicode::strtolower($this->randomMachineName() . '_field_name');
-    $field_storage = array(
+    $field_storage = [
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'type' => 'test_field',
       'cardinality' => 1,
-    );
+    ];
     FieldStorageConfig::create($field_storage)->save();
-    $field = array(
+    $field = [
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'bundle' => $this->fieldTestData->field->getTargetBundle(),
       'label' => $this->randomMachineName() . '_label',
       'description' => $this->randomMachineName() . '_description',
       'weight' => mt_rand(0, 127),
-    );
+    ];
     FieldConfig::create($field)->save();
 
     // Save an entity with data for both fields
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('type' => $this->fieldTestData->field->getTargetBundle()));
+      ->create(['type' => $this->fieldTestData->field->getTargetBundle()]);
     $values = $this->_generateTestFieldValues($this->fieldTestData->field_storage->getCardinality());
     $entity->{$this->fieldTestData->field_name} = $values;
     $entity->{$field_name} = $this->_generateTestFieldValues(1);
diff --git a/core/modules/field/tests/src/Kernel/FieldCrudTest.php b/core/modules/field/tests/src/Kernel/FieldCrudTest.php
index a61d645..85121c9 100644
--- a/core/modules/field/tests/src/Kernel/FieldCrudTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldCrudTest.php
@@ -40,18 +40,18 @@ class FieldCrudTest extends FieldKernelTestBase {
   function setUp() {
     parent::setUp();
 
-    $this->fieldStorageDefinition = array(
+    $this->fieldStorageDefinition = [
       'field_name' => Unicode::strtolower($this->randomMachineName()),
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    );
+    ];
     $this->fieldStorage = FieldStorageConfig::create($this->fieldStorageDefinition);
     $this->fieldStorage->save();
-    $this->fieldDefinition = array(
+    $this->fieldDefinition = [
       'field_name' => $this->fieldStorage->getName(),
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
-    );
+    ];
   }
 
   // TODO : test creation with
@@ -223,12 +223,12 @@ function testDeleteField() {
     FieldConfig::create($another_field_definition)->save();
 
     // Test that the first field is not deleted, and then delete it.
-    $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE)));
+    $field = current(entity_load_multiple_by_properties('field_config', ['entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE]));
     $this->assertTrue(!empty($field) && empty($field->deleted), 'A new field is not marked for deletion.');
     $field->delete();
 
     // Make sure the field is marked as deleted when it is specifically loaded.
-    $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE)));
+    $field = current(entity_load_multiple_by_properties('field_config', ['entity_type' => 'entity_test', 'field_name' => $this->fieldDefinition['field_name'], 'bundle' => $this->fieldDefinition['bundle'], 'include_deleted' => TRUE]));
     $this->assertTrue($field->isDeleted(), 'A deleted field is marked for deletion.');
 
     // Try to load the field normally and make sure it does not show up.
@@ -276,7 +276,7 @@ function testDeleteFieldCrossDeletion() {
     $field->save();
     $field_2 = FieldConfig::create($field_definition_2);
     $field_2->save();
-    $this->container->get('entity.manager')->getStorage('field_config')->delete(array($field, $field_2));
+    $this->container->get('entity.manager')->getStorage('field_config')->delete([$field, $field_2]);
     $this->assertFalse(FieldStorageConfig::loadByName('entity_test', $field_storage->getName()));
   }
 
diff --git a/core/modules/field/tests/src/Kernel/FieldDataCountTest.php b/core/modules/field/tests/src/Kernel/FieldDataCountTest.php
index e0ea683..2bbe24d 100644
--- a/core/modules/field/tests/src/Kernel/FieldDataCountTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldDataCountTest.php
@@ -50,12 +50,12 @@ public function testEntityCountAndHasData() {
     // Create a field with a cardinality of 2 to show that we are counting
     // entities and not rows in a table.
     /** @var \Drupal\field\Entity\FieldStorageConfig $field_storage */
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_int',
       'entity_type' => 'entity_test',
       'type' => 'integer',
       'cardinality' => 2,
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -112,7 +112,7 @@ public function testEntityCountAndHasData() {
 
     $entity_init = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array('type' => $entity_type,));
+      ->create(['type' => $entity_type,]);
     $cardinality = $this->fieldTestData->field_storage_2->getCardinality();
 
     $this->assertIdentical($this->fieldTestData->field_storage_2->hasData(), FALSE, 'There are no entities with field data.');
@@ -129,7 +129,7 @@ public function testEntityCountAndHasData() {
     $this->assertIdentical($this->fieldTestData->field_storage_2->hasData(), TRUE, 'There are entities with field data.');
     $this->assertIdentical($this->storageRev->countFieldData($this->fieldTestData->field_storage_2), 1, 'There is 1 entity with field data.');
 
-    $entity->{$this->fieldTestData->field_name_2} = array();
+    $entity->{$this->fieldTestData->field_name_2} = [];
     $entity->setNewRevision();
     $entity->save();
 
@@ -137,7 +137,7 @@ public function testEntityCountAndHasData() {
 
     $storage = $this->container->get('entity.manager')->getStorage($entity_type);
     $entity = $storage->loadRevision($first_revision);
-    $this->assertEqual(count($entity->{$this->fieldTestData->field_name_2}), $cardinality, format_string('Revision %revision_id: expected number of values.', array('%revision_id' => $first_revision)));
+    $this->assertEqual(count($entity->{$this->fieldTestData->field_name_2}), $cardinality, format_string('Revision %revision_id: expected number of values.', ['%revision_id' => $first_revision]));
   }
 
   /**
@@ -146,27 +146,27 @@ public function testEntityCountAndHasData() {
   public function testCountWithIndex0() {
     // Create a field that will require dedicated storage.
     /** @var \Drupal\field\Entity\FieldStorageConfig $field_storage */
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_int',
       'entity_type' => 'user',
       'type' => 'integer',
       'cardinality' => 2,
-    ));
+    ]);
     $field_storage->save();
-    FieldConfig::create(array(
+    FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'user',
-    ))->save();
+    ])->save();
 
     // Create an entry for the anonymous user, who has user ID 0.
     $user = $this->storageUser
-      ->create(array(
+      ->create([
         'uid' => 0,
         'name' => 'anonymous',
         'mail' => NULL,
         'status' => FALSE,
         'field_int' => 42,
-      ));
+      ]);
     $user->save();
 
     // Test shared table storage.
diff --git a/core/modules/field/tests/src/Kernel/FieldImportChangeTest.php b/core/modules/field/tests/src/Kernel/FieldImportChangeTest.php
index 8cd0291..10eff6d 100644
--- a/core/modules/field/tests/src/Kernel/FieldImportChangeTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldImportChangeTest.php
@@ -20,7 +20,7 @@ class FieldImportChangeTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test_config');
+  public static $modules = ['field_test_config'];
 
   /**
    * Tests importing an updated field.
diff --git a/core/modules/field/tests/src/Kernel/FieldImportCreateTest.php b/core/modules/field/tests/src/Kernel/FieldImportCreateTest.php
index 3478dd3..007bb0f 100644
--- a/core/modules/field/tests/src/Kernel/FieldImportCreateTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldImportCreateTest.php
@@ -37,7 +37,7 @@ function testImportCreateDefault() {
 
     // Enable field_test_config module and check that the field and storage
     // shipped in the module's default config were created.
-    \Drupal::service('module_installer')->install(array('field_test_config'));
+    \Drupal::service('module_installer')->install(['field_test_config']);
 
     // A field storage with one single field.
     $field_storage = FieldStorageConfig::load($field_storage_id);
diff --git a/core/modules/field/tests/src/Kernel/FieldImportDeleteTest.php b/core/modules/field/tests/src/Kernel/FieldImportDeleteTest.php
index b536fe8..0eef137 100644
--- a/core/modules/field/tests/src/Kernel/FieldImportDeleteTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldImportDeleteTest.php
@@ -22,7 +22,7 @@ class FieldImportDeleteTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test_config');
+  public static $modules = ['field_test_config'];
 
   /**
    * Tests deleting field storages and fields as part of config import.
@@ -60,11 +60,11 @@ public function testImportDelete() {
     $active = $this->container->get('config.storage');
     $sync = $this->container->get('config.storage.sync');
     $this->copyConfig($active, $sync);
-    $this->assertTrue($sync->delete($field_storage_config_name), SafeMarkup::format('Deleted field storage: @field_storage', array('@field_storage' => $field_storage_config_name)));
-    $this->assertTrue($sync->delete($field_storage_config_name_2), SafeMarkup::format('Deleted field storage: @field_storage', array('@field_storage' => $field_storage_config_name_2)));
-    $this->assertTrue($sync->delete($field_config_name), SafeMarkup::format('Deleted field: @field', array('@field' => $field_config_name)));
-    $this->assertTrue($sync->delete($field_config_name_2a), SafeMarkup::format('Deleted field: @field', array('@field' => $field_config_name_2a)));
-    $this->assertTrue($sync->delete($field_config_name_2b), SafeMarkup::format('Deleted field: @field', array('@field' => $field_config_name_2b)));
+    $this->assertTrue($sync->delete($field_storage_config_name), SafeMarkup::format('Deleted field storage: @field_storage', ['@field_storage' => $field_storage_config_name]));
+    $this->assertTrue($sync->delete($field_storage_config_name_2), SafeMarkup::format('Deleted field storage: @field_storage', ['@field_storage' => $field_storage_config_name_2]));
+    $this->assertTrue($sync->delete($field_config_name), SafeMarkup::format('Deleted field: @field', ['@field' => $field_config_name]));
+    $this->assertTrue($sync->delete($field_config_name_2a), SafeMarkup::format('Deleted field: @field', ['@field' => $field_config_name_2a]));
+    $this->assertTrue($sync->delete($field_config_name_2b), SafeMarkup::format('Deleted field: @field', ['@field' => $field_config_name_2b]));
 
     $deletes = $this->configImporter()->getUnprocessedConfiguration('delete');
     $this->assertEqual(count($deletes), 5, 'Importing configuration will delete 3 fields and 2 field storages.');
@@ -73,39 +73,39 @@ public function testImportDelete() {
     $this->configImporter()->import();
 
     // Check that the field storages and fields are gone.
-    \Drupal::entityManager()->getStorage('field_storage_config')->resetCache(array($field_storage_id));
+    \Drupal::entityManager()->getStorage('field_storage_config')->resetCache([$field_storage_id]);
     $field_storage = FieldStorageConfig::load($field_storage_id);
     $this->assertFalse($field_storage, 'The field storage was deleted.');
-    \Drupal::entityManager()->getStorage('field_storage_config')->resetCache(array($field_storage_id_2));
+    \Drupal::entityManager()->getStorage('field_storage_config')->resetCache([$field_storage_id_2]);
     $field_storage_2 = FieldStorageConfig::load($field_storage_id_2);
     $this->assertFalse($field_storage_2, 'The second field storage was deleted.');
-    \Drupal::entityManager()->getStorage('field_config')->resetCache(array($field_id));
+    \Drupal::entityManager()->getStorage('field_config')->resetCache([$field_id]);
     $field = FieldConfig::load($field_id);
     $this->assertFalse($field, 'The field was deleted.');
-    \Drupal::entityManager()->getStorage('field_config')->resetCache(array($field_id_2a));
+    \Drupal::entityManager()->getStorage('field_config')->resetCache([$field_id_2a]);
     $field_2a = FieldConfig::load($field_id_2a);
     $this->assertFalse($field_2a, 'The second field on test bundle was deleted.');
-    \Drupal::entityManager()->getStorage('field_config')->resetCache(array($field_id_2b));
+    \Drupal::entityManager()->getStorage('field_config')->resetCache([$field_id_2b]);
     $field_2b = FieldConfig::load($field_id_2b);
     $this->assertFalse($field_2b, 'The second field on test bundle 2 was deleted.');
 
     // Check that all config files are gone.
     $active = $this->container->get('config.storage');
-    $this->assertIdentical($active->listAll($field_storage_config_name), array());
-    $this->assertIdentical($active->listAll($field_storage_config_name_2), array());
-    $this->assertIdentical($active->listAll($field_config_name), array());
-    $this->assertIdentical($active->listAll($field_config_name_2a), array());
-    $this->assertIdentical($active->listAll($field_config_name_2b), array());
+    $this->assertIdentical($active->listAll($field_storage_config_name), []);
+    $this->assertIdentical($active->listAll($field_storage_config_name_2), []);
+    $this->assertIdentical($active->listAll($field_config_name), []);
+    $this->assertIdentical($active->listAll($field_config_name_2a), []);
+    $this->assertIdentical($active->listAll($field_config_name_2b), []);
 
     // Check that the storage definition is preserved in state.
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertTrue(isset($deleted_storages[$field_storage_uuid]));
     $this->assertTrue(isset($deleted_storages[$field_storage_uuid_2]));
 
     // Purge field data, and check that the storage definition has been
     // completely removed once the data is purged.
     field_purge_batch(10);
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertTrue(empty($deleted_storages), 'Fields are deleted');
   }
 
diff --git a/core/modules/field/tests/src/Kernel/FieldImportDeleteUninstallTest.php b/core/modules/field/tests/src/Kernel/FieldImportDeleteUninstallTest.php
index dab6e0d..c3a4d3c 100644
--- a/core/modules/field/tests/src/Kernel/FieldImportDeleteUninstallTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldImportDeleteUninstallTest.php
@@ -21,14 +21,14 @@ class FieldImportDeleteUninstallTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('telephone');
+  public static $modules = ['telephone'];
 
   protected function setUp() {
     parent::setUp();
     // Module uninstall requires users_data tables.
     // @see drupal_flush_all_caches()
     // @see user_modules_uninstalled()
-    $this->installSchema('user', array('users_data'));
+    $this->installSchema('user', ['users_data']);
   }
 
   /**
@@ -38,11 +38,11 @@ public function testImportDeleteUninstall() {
     // Create a field to delete to prove that
     // \Drupal\field\ConfigImporterFieldPurger does not purge fields that are
     // not related to the configuration synchronization.
-    $unrelated_field_storage = FieldStorageConfig::create(array(
+    $unrelated_field_storage = FieldStorageConfig::create([
       'field_name' => 'field_int',
       'entity_type' => 'entity_test',
       'type' => 'integer',
-    ));
+    ]);
     $unrelated_field_storage->save();
     FieldConfig::create([
       'field_storage' => $unrelated_field_storage,
@@ -50,11 +50,11 @@ public function testImportDeleteUninstall() {
     ])->save();
 
     // Create a telephone field for validation.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_test',
       'entity_type' => 'entity_test',
       'type' => 'telephone',
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -93,7 +93,7 @@ public function testImportDeleteUninstall() {
     $sync->delete('field.field.entity_test.entity_test.field_test');
 
     $steps = $this->configImporter()->initialize();
-    $this->assertIdentical($steps[0], array('\Drupal\field\ConfigImporterFieldPurger', 'process'), 'The additional process configuration synchronization step has been added.');
+    $this->assertIdentical($steps[0], ['\Drupal\field\ConfigImporterFieldPurger', 'process'], 'The additional process configuration synchronization step has been added.');
 
     // This will purge all the data, delete the field and uninstall the
     // Telephone module.
@@ -101,7 +101,7 @@ public function testImportDeleteUninstall() {
 
     $this->assertFalse(\Drupal::moduleHandler()->moduleExists('telephone'));
     $this->assertFalse(\Drupal::entityManager()->loadEntityByUuid('field_storage_config', $field_storage->uuid()), 'The test field has been deleted by the configuration synchronization');
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertFalse(isset($deleted_storages[$field_storage->uuid()]), 'Telephone field has been completed removed from the system.');
     $this->assertTrue(isset($deleted_storages[$unrelated_field_storage->uuid()]), 'Unrelated field not purged by configuration synchronization.');
   }
@@ -112,11 +112,11 @@ public function testImportDeleteUninstall() {
    */
   public function testImportAlreadyDeletedUninstall() {
     // Create a telephone field for validation.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_test',
       'entity_type' => 'entity_test',
       'type' => 'telephone',
-    ));
+    ]);
     $field_storage->save();
     $field_storage_uuid = $field_storage->uuid();
     FieldConfig::create([
@@ -150,18 +150,18 @@ public function testImportAlreadyDeletedUninstall() {
     unset($core_extension['module']['telephone']);
     $sync->write('core.extension', $core_extension);
 
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertTrue(isset($deleted_storages[$field_storage_uuid]), 'Field has been deleted and needs purging before configuration synchronization.');
 
     $steps = $this->configImporter()->initialize();
-    $this->assertIdentical($steps[0], array('\Drupal\field\ConfigImporterFieldPurger', 'process'), 'The additional process configuration synchronization step has been added.');
+    $this->assertIdentical($steps[0], ['\Drupal\field\ConfigImporterFieldPurger', 'process'], 'The additional process configuration synchronization step has been added.');
 
     // This will purge all the data, delete the field and uninstall the
     // Telephone module.
     $this->configImporter()->import();
 
     $this->assertFalse(\Drupal::moduleHandler()->moduleExists('telephone'));
-    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: array();
+    $deleted_storages = \Drupal::state()->get('field.storage.deleted') ?: [];
     $this->assertFalse(isset($deleted_storages[$field_storage_uuid]), 'Field has been completed removed from the system.');
   }
 
diff --git a/core/modules/field/tests/src/Kernel/FieldKernelTestBase.php b/core/modules/field/tests/src/Kernel/FieldKernelTestBase.php
index 4d6bd51..6bc40cc 100644
--- a/core/modules/field/tests/src/Kernel/FieldKernelTestBase.php
+++ b/core/modules/field/tests/src/Kernel/FieldKernelTestBase.php
@@ -43,24 +43,24 @@
   protected function setUp() {
     parent::setUp();
 
-    $this->fieldTestData = new \ArrayObject(array(), \ArrayObject::ARRAY_AS_PROPS);
+    $this->fieldTestData = new \ArrayObject([], \ArrayObject::ARRAY_AS_PROPS);
 
     $this->installEntitySchema('entity_test');
     $this->installEntitySchema('user');
     $this->installSchema('system', ['sequences', 'key_value']);
 
     // Set default storage backend and configure the theme system.
-    $this->installConfig(array('field', 'system'));
+    $this->installConfig(['field', 'system']);
 
     // Create user 1.
     $storage = \Drupal::entityManager()->getStorage('user');
     $storage
-      ->create(array(
+      ->create([
         'uid' => 1,
         'name' => 'entity-test',
         'mail' => 'entity@localhost',
         'status' => TRUE,
-      ))
+      ])
       ->save();
   }
 
@@ -88,33 +88,33 @@ protected function createFieldWithStorage($suffix = '', $entity_type = 'entity_t
     $field_definition = 'field_definition' . $suffix;
 
     $this->fieldTestData->$field_name = Unicode::strtolower($this->randomMachineName() . '_field_name' . $suffix);
-    $this->fieldTestData->$field_storage = FieldStorageConfig::create(array(
+    $this->fieldTestData->$field_storage = FieldStorageConfig::create([
       'field_name' => $this->fieldTestData->$field_name,
       'entity_type' => $entity_type,
       'type' => 'test_field',
       'cardinality' => 4,
-    ));
+    ]);
     $this->fieldTestData->$field_storage->save();
     $this->fieldTestData->$field_storage_uuid = $this->fieldTestData->$field_storage->uuid();
-    $this->fieldTestData->$field_definition = array(
+    $this->fieldTestData->$field_definition = [
       'field_storage' => $this->fieldTestData->$field_storage,
       'bundle' => $bundle,
       'label' => $this->randomMachineName() . '_label',
       'description' => $this->randomMachineName() . '_description',
-      'settings' => array(
+      'settings' => [
         'test_field_setting' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $this->fieldTestData->$field = FieldConfig::create($this->fieldTestData->$field_definition);
     $this->fieldTestData->$field->save();
 
     entity_get_form_display($entity_type, $bundle, 'default')
-      ->setComponent($this->fieldTestData->$field_name, array(
+      ->setComponent($this->fieldTestData->$field_name, [
         'type' => 'test_field_widget',
-        'settings' => array(
+        'settings' => [
           'test_widget_setting' => $this->randomMachineName(),
-        )
-      ))
+        ]
+      ])
       ->save();
   }
 
@@ -159,7 +159,7 @@ protected function entityValidateAndSave(EntityInterface $entity) {
    *   An array of random values, in the format expected for field values.
    */
   protected function _generateTestFieldValues($cardinality) {
-    $values = array();
+    $values = [];
     for ($i = 0; $i < $cardinality; $i++) {
       // field_test fields treat 0 as 'empty value'.
       $values[$i]['value'] = mt_rand(1, 127);
@@ -197,7 +197,7 @@ protected function assertFieldValues(EntityInterface $entity, $field_name, $expe
     $values = $field->getValue();
     $this->assertEqual(count($values), count($expected_values), 'Expected number of values were saved.');
     foreach ($expected_values as $key => $value) {
-      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', array('@value' => $value)));
+      $this->assertEqual($values[$key][$column], $value, format_string('Value @value was saved correctly.', ['@value' => $value]));
     }
   }
 
diff --git a/core/modules/field/tests/src/Kernel/FieldStorageCrudTest.php b/core/modules/field/tests/src/Kernel/FieldStorageCrudTest.php
index da1948c..13091c4 100644
--- a/core/modules/field/tests/src/Kernel/FieldStorageCrudTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldStorageCrudTest.php
@@ -21,7 +21,7 @@ class FieldStorageCrudTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array();
+  public static $modules = [];
 
   // TODO : test creation with
   // - a full fledged $field structure, check that all the values are there
@@ -32,11 +32,11 @@ class FieldStorageCrudTest extends FieldKernelTestBase {
    * Test the creation of a field storage.
    */
   function testCreate() {
-    $field_storage_definition = array(
+    $field_storage_definition = [
       'field_name' => 'field_2',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    );
+    ];
     field_test_memorize();
     $field_storage = FieldStorageConfig::create($field_storage_definition);
     $field_storage->save();
@@ -86,10 +86,10 @@ function testCreate() {
 
     // Check that field type is required.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'field_name' => 'field_1',
         'entity_type' => 'entity_type',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create a field with no type.'));
     }
@@ -99,10 +99,10 @@ function testCreate() {
 
     // Check that field name is required.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'type' => 'test_field',
         'entity_type' => 'entity_test',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create an unnamed field.'));
     }
@@ -111,10 +111,10 @@ function testCreate() {
     }
     // Check that entity type is required.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'field_name' => 'test_field',
         'type' => 'test_field'
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail('Cannot create a field without an entity type.');
     }
@@ -124,11 +124,11 @@ function testCreate() {
 
     // Check that field name must start with a letter or _.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'field_name' => '2field_2',
         'entity_type' => 'entity_test',
         'type' => 'test_field',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create a field with a name starting with a digit.'));
     }
@@ -138,11 +138,11 @@ function testCreate() {
 
     // Check that field name must only contain lowercase alphanumeric or _.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'field_name' => 'field#_3',
         'entity_type' => 'entity_test',
         'type' => 'test_field',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create a field with a name containing an illegal character.'));
     }
@@ -152,11 +152,11 @@ function testCreate() {
 
     // Check that field name cannot be longer than 32 characters long.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'field_name' => '_12345678901234567890123456789012',
         'entity_type' => 'entity_test',
         'type' => 'test_field',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create a field with a name longer than 32 characters.'));
     }
@@ -167,11 +167,11 @@ function testCreate() {
     // Check that field name can not be an entity key.
     // "id" is known as an entity key from the "entity_test" type.
     try {
-      $field_storage_definition = array(
+      $field_storage_definition = [
         'type' => 'test_field',
         'field_name' => 'id',
         'entity_type' => 'entity_test',
-      );
+      ];
       FieldStorageConfig::create($field_storage_definition)->save();
       $this->fail(t('Cannot create a field bearing the name of an entity key.'));
     }
@@ -187,15 +187,15 @@ function testCreate() {
    * since plugin classes (and thus the field type schema) cannot be accessed.
    */
   function testCreateWithExplicitSchema() {
-    $schema = array(
+    $schema = [
       'dummy' => 'foobar'
-    );
-    $field_storage = FieldStorageConfig::create(array(
+    ];
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_2',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'schema' => $schema,
-    ));
+    ]);
     $this->assertEqual($field_storage->getSchema(), $schema);
   }
 
@@ -203,31 +203,31 @@ function testCreateWithExplicitSchema() {
    * Tests reading field storage definitions.
    */
   function testRead() {
-    $field_storage_definition = array(
+    $field_storage_definition = [
       'field_name' => 'field_1',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    );
+    ];
     $field_storage = FieldStorageConfig::create($field_storage_definition);
     $field_storage->save();
     $id = $field_storage->id();
 
     // Check that 'single column' criteria works.
-    $fields = entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['field_name']));
+    $fields = entity_load_multiple_by_properties('field_storage_config', ['field_name' => $field_storage_definition['field_name']]);
     $this->assertTrue(count($fields) == 1 && isset($fields[$id]), 'The field was properly read.');
 
     // Check that 'multi column' criteria works.
-    $fields = entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['field_name'], 'type' => $field_storage_definition['type']));
+    $fields = entity_load_multiple_by_properties('field_storage_config', ['field_name' => $field_storage_definition['field_name'], 'type' => $field_storage_definition['type']]);
     $this->assertTrue(count($fields) == 1 && isset($fields[$id]), 'The field was properly read.');
-    $fields = entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['field_name'], 'type' => 'foo'));
+    $fields = entity_load_multiple_by_properties('field_storage_config', ['field_name' => $field_storage_definition['field_name'], 'type' => 'foo']);
     $this->assertTrue(empty($fields), 'No field was found.');
 
     // Create a field from the field storage.
-    $field_definition = array(
+    $field_definition = [
       'field_name' => $field_storage_definition['field_name'],
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
-    );
+    ];
     FieldConfig::create($field_definition)->save();
   }
 
@@ -236,48 +236,48 @@ function testRead() {
    */
   function testIndexes() {
     // Check that indexes specified by the field type are used by default.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_1',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    ));
+    ]);
     $field_storage->save();
     $field_storage = FieldStorageConfig::load($field_storage->id());
     $schema = $field_storage->getSchema();
-    $expected_indexes = array('value' => array('value'));
+    $expected_indexes = ['value' => ['value']];
     $this->assertEqual($schema['indexes'], $expected_indexes, 'Field type indexes saved by default');
 
     // Check that indexes specified by the field definition override the field
     // type indexes.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_2',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-      'indexes' => array(
-        'value' => array(),
-      ),
-    ));
+      'indexes' => [
+        'value' => [],
+      ],
+    ]);
     $field_storage->save();
     $field_storage = FieldStorageConfig::load($field_storage->id());
     $schema = $field_storage->getSchema();
-    $expected_indexes = array('value' => array());
+    $expected_indexes = ['value' => []];
     $this->assertEqual($schema['indexes'], $expected_indexes, 'Field definition indexes override field type indexes');
 
     // Check that indexes specified by the field definition add to the field
     // type indexes.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_3',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-      'indexes' => array(
-        'value_2' => array('value'),
-      ),
-    ));
+      'indexes' => [
+        'value_2' => ['value'],
+      ],
+    ]);
     $field_storage->save();
     $id = $field_storage->id();
     $field_storage = FieldStorageConfig::load($id);
     $schema = $field_storage->getSchema();
-    $expected_indexes = array('value' => array('value'), 'value_2' => array('value'));
+    $expected_indexes = ['value' => ['value'], 'value_2' => ['value']];
     $this->assertEqual($schema['indexes'], $expected_indexes, 'Field definition indexes are merged with field type indexes');
   }
 
@@ -288,43 +288,43 @@ function testDelete() {
     // TODO: Also test deletion of the data stored in the field ?
 
     // Create two fields (so we can test that only one is deleted).
-    $field_storage_definition = array(
+    $field_storage_definition = [
       'field_name' => 'field_1',
       'type' => 'test_field',
       'entity_type' => 'entity_test',
-    );
+    ];
     FieldStorageConfig::create($field_storage_definition)->save();
-    $another_field_storage_definition = array(
+    $another_field_storage_definition = [
       'field_name' => 'field_2',
       'type' => 'test_field',
       'entity_type' => 'entity_test',
-    );
+    ];
     FieldStorageConfig::create($another_field_storage_definition)->save();
 
     // Create fields for each.
-    $field_definition = array(
+    $field_definition = [
       'field_name' => $field_storage_definition['field_name'],
       'entity_type' => 'entity_test',
       'bundle' => 'entity_test',
-    );
+    ];
     FieldConfig::create($field_definition)->save();
     $another_field_definition = $field_definition;
     $another_field_definition['field_name'] = $another_field_storage_definition['field_name'];
     FieldConfig::create($another_field_definition)->save();
 
     // Test that the first field is not deleted, and then delete it.
-    $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['field_name'], 'include_deleted' => TRUE)));
+    $field_storage = current(entity_load_multiple_by_properties('field_storage_config', ['field_name' => $field_storage_definition['field_name'], 'include_deleted' => TRUE]));
     $this->assertTrue(!empty($field_storage) && !$field_storage->isDeleted(), 'A new storage is not marked for deletion.');
     FieldStorageConfig::loadByName('entity_test', $field_storage_definition['field_name'])->delete();
 
     // Make sure that the field is marked as deleted when it is specifically
     // loaded.
-    $field_storage = current(entity_load_multiple_by_properties('field_storage_config', array('field_name' => $field_storage_definition['field_name'], 'include_deleted' => TRUE)));
+    $field_storage = current(entity_load_multiple_by_properties('field_storage_config', ['field_name' => $field_storage_definition['field_name'], 'include_deleted' => TRUE]));
     $this->assertTrue($field_storage->isDeleted(), 'A deleted storage is marked for deletion.');
 
     // Make sure that this field is marked as deleted when it is
     // specifically loaded.
-    $field = current(entity_load_multiple_by_properties('field_config', array('entity_type' => 'entity_test', 'field_name' => $field_definition['field_name'], 'bundle' => $field_definition['bundle'], 'include_deleted' => TRUE)));
+    $field = current(entity_load_multiple_by_properties('field_config', ['entity_type' => 'entity_test', 'field_name' => $field_definition['field_name'], 'bundle' => $field_definition['bundle'], 'include_deleted' => TRUE]));
     $this->assertTrue($field->isDeleted(), 'A field whose storage was deleted is marked for deletion.');
 
     // Try to load the storage normally and make sure it does not show up.
@@ -364,11 +364,11 @@ function testDelete() {
   }
 
   function testUpdateFieldType() {
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_type',
       'entity_type' => 'entity_test',
       'type' => 'decimal',
-    ));
+    ]);
     $field_storage->save();
 
     try {
@@ -389,12 +389,12 @@ function testUpdate() {
     // respected. Since cardinality enforcement is consistent across database
     // systems, it makes a good test case.
     $cardinality = 4;
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_update',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
       'cardinality' => $cardinality,
-    ));
+    ]);
     $field_storage->save();
     $field = FieldConfig::create([
       'field_storage' => $field_storage,
@@ -427,14 +427,14 @@ function testUpdate() {
    * Test field type modules forbidding an update.
    */
   function testUpdateForbid() {
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'forbidden',
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-      'settings' => array(
+      'settings' => [
         'changeable' => 0,
         'unchangeable' => 0
-    )));
+    ]]);
     $field_storage->save();
     $field_storage->setSetting('changeable', $field_storage->getSetting('changeable') + 1);
     try {
diff --git a/core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php b/core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php
index 6d44384..fe46a05 100644
--- a/core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php
@@ -19,10 +19,10 @@ class FieldTypePluginManagerTest extends FieldKernelTestBase {
    */
   function testDefaultSettings() {
     $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
-    foreach (array('test_field', 'shape', 'hidden_test_field') as $type) {
+    foreach (['test_field', 'shape', 'hidden_test_field'] as $type) {
       $definition = $field_type_manager->getDefinition($type);
-      $this->assertIdentical($field_type_manager->getDefaultStorageSettings($type), $definition['class']::defaultStorageSettings(), format_string("%type storage settings were returned", array('%type' => $type)));
-      $this->assertIdentical($field_type_manager->getDefaultFieldSettings($type), $definition['class']::defaultFieldSettings(), format_string(" %type field settings were returned", array('%type' => $type)));
+      $this->assertIdentical($field_type_manager->getDefaultStorageSettings($type), $definition['class']::defaultStorageSettings(), format_string("%type storage settings were returned", ['%type' => $type]));
+      $this->assertIdentical($field_type_manager->getDefaultFieldSettings($type), $definition['class']::defaultFieldSettings(), format_string(" %type field settings were returned", ['%type' => $type]));
     }
   }
 
@@ -32,7 +32,7 @@ function testDefaultSettings() {
   public function testCreateInstance() {
     /** @var \Drupal\Core\Field\FieldTypePluginManagerInterface $field_type_manager */
     $field_type_manager = \Drupal::service('plugin.manager.field.field_type');
-    foreach (array('test_field', 'shape', 'hidden_test_field') as $type) {
+    foreach (['test_field', 'shape', 'hidden_test_field'] as $type) {
       $definition = $field_type_manager->getDefinition($type);
 
       $class = $definition['class'];
@@ -40,16 +40,16 @@ public function testCreateInstance() {
 
       $field_definition = BaseFieldDefinition::create($type);
 
-      $configuration = array(
+      $configuration = [
         'field_definition' => $field_definition,
         'name' => $field_name,
         'parent' => NULL,
-      );
+      ];
 
       $instance = $field_type_manager->createInstance($type, $configuration);
 
-      $this->assertTrue($instance instanceof $class, SafeMarkup::format('Created a @class instance', array('@class' => $class)));
-      $this->assertEqual($field_name, $instance->getName(), SafeMarkup::format('Instance name is @name', array('@name' => $field_name)));
+      $this->assertTrue($instance instanceof $class, SafeMarkup::format('Created a @class instance', ['@class' => $class]));
+      $this->assertEqual($field_name, $instance->getName(), SafeMarkup::format('Instance name is @name', ['@name' => $field_name]));
     }
   }
 
@@ -69,18 +69,18 @@ public function testCreateInstanceWithConfig() {
       ->setLabel('Jenny')
       ->setDefaultValue(8675309);
 
-    $configuration = array(
+    $configuration = [
       'field_definition' => $field_definition,
       'name' => $field_name,
       'parent' => NULL,
-    );
+    ];
 
     $entity = EntityTest::create();
 
     $instance = $field_type_manager->createInstance($type, $configuration);
 
-    $this->assertTrue($instance instanceof $class, SafeMarkup::format('Created a @class instance', array('@class' => $class)));
-    $this->assertEqual($field_name, $instance->getName(), SafeMarkup::format('Instance name is @name', array('@name' => $field_name)));
+    $this->assertTrue($instance instanceof $class, SafeMarkup::format('Created a @class instance', ['@class' => $class]));
+    $this->assertEqual($field_name, $instance->getName(), SafeMarkup::format('Instance name is @name', ['@name' => $field_name]));
     $this->assertEqual($instance->getFieldDefinition()->getLabel(), 'Jenny', 'Instance label is Jenny');
     $this->assertEqual($instance->getFieldDefinition()->getDefaultValue($entity), [['value' => 8675309]], 'Instance default_value is 8675309');
   }
diff --git a/core/modules/field/tests/src/Kernel/FieldValidationTest.php b/core/modules/field/tests/src/Kernel/FieldValidationTest.php
index 3715832..5eac773 100644
--- a/core/modules/field/tests/src/Kernel/FieldValidationTest.php
+++ b/core/modules/field/tests/src/Kernel/FieldValidationTest.php
@@ -34,9 +34,9 @@ protected function setUp() {
     $this->createFieldWithStorage('', $this->entityType, $this->bundle);
 
     // Create an 'entity_test' entity.
-    $this->entity = entity_create($this->entityType, array(
+    $this->entity = entity_create($this->entityType, [
       'type' => $this->bundle,
-    ));
+    ]);
   }
 
   /**
@@ -47,7 +47,7 @@ function testCardinalityConstraint() {
     $entity = $this->entity;
 
     for ($delta = 0; $delta < $cardinality + 1; $delta++) {
-      $entity->{$this->fieldTestData->field_name}[] = array('value' => 1);
+      $entity->{$this->fieldTestData->field_name}[] = ['value' => 1];
     }
 
     // Validate the field.
@@ -56,7 +56,7 @@ function testCardinalityConstraint() {
     // Check that the expected constraint violations are reported.
     $this->assertEqual(count($violations), 1);
     $this->assertEqual($violations[0]->getPropertyPath(), '');
-    $this->assertEqual($violations[0]->getMessage(), t('%name: this field cannot hold more than @count values.', array('%name' => $this->fieldTestData->field->getLabel(), '@count' => $cardinality)));
+    $this->assertEqual($violations[0]->getMessage(), t('%name: this field cannot hold more than @count values.', ['%name' => $this->fieldTestData->field->getLabel(), '@count' => $cardinality]));
   }
 
   /**
@@ -70,7 +70,7 @@ function testFieldConstraints() {
     $this->assertTrue($cardinality >= 2);
 
     // Set up values for the field.
-    $expected_violations = array();
+    $expected_violations = [];
     for ($delta = 0; $delta < $cardinality; $delta++) {
       // All deltas except '1' have incorrect values.
       if ($delta == 1) {
@@ -78,7 +78,7 @@ function testFieldConstraints() {
       }
       else {
         $value = -1;
-        $expected_violations[$delta . '.value'][] = t('%name does not accept the value -1.', array('%name' => $this->fieldTestData->field->getLabel()));
+        $expected_violations[$delta . '.value'][] = t('%name does not accept the value -1.', ['%name' => $this->fieldTestData->field->getLabel()]);
       }
       $entity->{$this->fieldTestData->field_name}[] = $value;
     }
@@ -87,7 +87,7 @@ function testFieldConstraints() {
     $violations = $entity->{$this->fieldTestData->field_name}->validate();
 
     // Check that the expected constraint violations are reported.
-    $violations_by_path = array();
+    $violations_by_path = [];
     foreach ($violations as $violation) {
       $violations_by_path[$violation->getPropertyPath()][] = $violation->getMessage();
     }
diff --git a/core/modules/field/tests/src/Kernel/FormatterPluginManagerTest.php b/core/modules/field/tests/src/Kernel/FormatterPluginManagerTest.php
index 4425a44..0b07e3a 100644
--- a/core/modules/field/tests/src/Kernel/FormatterPluginManagerTest.php
+++ b/core/modules/field/tests/src/Kernel/FormatterPluginManagerTest.php
@@ -24,13 +24,13 @@ public function testNotApplicableFallback() {
       // Set a name that will make isApplicable() return TRUE.
       ->setName('field_test_field');
 
-    $formatter_options = array(
+    $formatter_options = [
       'field_definition' => $base_field_definition,
       'view_mode' => 'default',
-      'configuration' => array(
+      'configuration' => [
         'type' => 'field_test_applicable',
-      ),
-    );
+      ],
+    ];
 
     $instance = $formatter_plugin_manager->getInstance($formatter_options);
     $this->assertEqual($instance->getPluginId(), 'field_test_applicable');
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldFormatterSettingsTest.php b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldFormatterSettingsTest.php
index 2ee3c77..edf6dc0 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldFormatterSettingsTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldFormatterSettingsTest.php
@@ -26,14 +26,14 @@ protected function setUp() {
   public function testEntityDisplaySettings() {
     // Run tests.
     $field_name = "field_test";
-    $expected = array(
+    $expected = [
       'label' => 'above',
       'weight' => 1,
       'type' => 'text_trimmed',
-      'settings' => array('trim_length' => 600),
-      'third_party_settings' => array(),
+      'settings' => ['trim_length' => 600],
+      'third_party_settings' => [],
       'region' => 'content',
-    );
+    ];
 
     // Can we load any entity display.
     $display = EntityViewDisplay::load('node.story.teaser');
@@ -51,7 +51,7 @@ public function testEntityDisplaySettings() {
 
     // Test the default format with text_default which comes from a static map.
     $expected['type'] = 'text_default';
-    $expected['settings'] = array();
+    $expected['settings'] = [];
     $display = EntityViewDisplay::load('node.story.default');
     $this->assertIdentical($expected, $display->getComponent($field_name));
 
@@ -66,40 +66,40 @@ public function testEntityDisplaySettings() {
     // Test the number field formatter settings are correct.
     $expected['weight'] = 1;
     $expected['type'] = 'number_integer';
-    $expected['settings'] = array(
+    $expected['settings'] = [
       'thousand_separator' => ',',
       'prefix_suffix' => TRUE,
-    );
+    ];
     $component = $display->getComponent('field_test_two');
     $this->assertIdentical($expected, $component);
     $expected['weight'] = 2;
     $expected['type'] = 'number_decimal';
-    $expected['settings'] = array(
+    $expected['settings'] = [
        'scale' => 2,
        'decimal_separator' => '.',
        'thousand_separator' => ',',
        'prefix_suffix' => TRUE,
-    );
+    ];
     $component = $display->getComponent('field_test_three');
     $this->assertIdentical($expected, $component);
 
     // Test the email field formatter settings are correct.
     $expected['weight'] = 6;
     $expected['type'] = 'email_mailto';
-    $expected['settings'] = array();
+    $expected['settings'] = [];
     $component = $display->getComponent('field_test_email');
     $this->assertIdentical($expected, $component);
 
     // Test the link field formatter settings.
     $expected['weight'] = 7;
     $expected['type'] = 'link';
-    $expected['settings'] = array(
+    $expected['settings'] = [
       'trim_length' => 80,
       'url_only' => TRUE,
       'url_plain' => TRUE,
       'rel' => '0',
       'target' => '0',
-    );
+    ];
     $component = $display->getComponent('field_test_link');
     $this->assertIdentical($expected, $component);
     $expected['settings']['url_only'] = FALSE;
@@ -111,7 +111,7 @@ public function testEntityDisplaySettings() {
     // Test the file field formatter settings.
     $expected['weight'] = 8;
     $expected['type'] = 'file_default';
-    $expected['settings'] = array();
+    $expected['settings'] = [];
     $component = $display->getComponent('field_test_filefield');
     $this->assertIdentical($expected, $component);
     $display = EntityViewDisplay::load('node.story.default');
@@ -122,7 +122,7 @@ public function testEntityDisplaySettings() {
     // Test the image field formatter settings.
     $expected['weight'] = 9;
     $expected['type'] = 'image';
-    $expected['settings'] = array('image_style' => '', 'image_link' => '');
+    $expected['settings'] = ['image_style' => '', 'image_link' => ''];
     $component = $display->getComponent('field_test_imagefield');
     $this->assertIdentical($expected, $component);
     $display = EntityViewDisplay::load('node.story.teaser');
@@ -133,15 +133,15 @@ public function testEntityDisplaySettings() {
     // Test phone field.
     $expected['weight'] = 13;
     $expected['type'] = 'basic_string';
-    $expected['settings'] = array();
+    $expected['settings'] = [];
     $component = $display->getComponent('field_test_phone');
     $this->assertIdentical($expected, $component);
 
     // Test date field.
-    $defaults = array('format_type' => 'fallback', 'timezone_override' => '',);
+    $defaults = ['format_type' => 'fallback', 'timezone_override' => '',];
     $expected['weight'] = 10;
     $expected['type'] = 'datetime_default';
-    $expected['settings'] = array('format_type' => 'fallback') + $defaults;
+    $expected['settings'] = ['format_type' => 'fallback'] + $defaults;
     $component = $display->getComponent('field_test_date');
     $this->assertIdentical($expected, $component);
     $display = EntityViewDisplay::load('node.story.default');
@@ -155,13 +155,13 @@ public function testEntityDisplaySettings() {
     $component = $display->getComponent('field_test_datestamp');
     $this->assertIdentical($expected, $component);
     $display = EntityViewDisplay::load('node.story.teaser');
-    $expected['settings'] = array('format_type' => 'medium') + $defaults;
+    $expected['settings'] = ['format_type' => 'medium'] + $defaults;
     $component = $display->getComponent('field_test_datestamp');
     $this->assertIdentical($expected, $component);
 
     // Test datetime field.
     $expected['weight'] = 12;
-    $expected['settings'] = array('format_type' => 'short') + $defaults;
+    $expected['settings'] = ['format_type' => 'short'] + $defaults;
     $component = $display->getComponent('field_test_datetime');
     $this->assertIdentical($expected, $component);
     $display = EntityViewDisplay::load('node.story.default');
@@ -176,7 +176,7 @@ public function testEntityDisplaySettings() {
     $component = $display->getComponent('field_test_datetime');
     $this->assertIdentical($expected, $component);
     // Test that our Id map has the correct data.
-    $this->assertIdentical(array('node', 'story', 'teaser', 'field_test'), $this->getMigration('d6_field_formatter_settings')->getIdMap()->lookupDestinationID(array('story', 'teaser', 'node', 'field_test')));
+    $this->assertIdentical(['node', 'story', 'teaser', 'field_test'], $this->getMigration('d6_field_formatter_settings')->getIdMap()->lookupDestinationID(['story', 'teaser', 'node', 'field_test']));
   }
 
 }
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldInstanceTest.php b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldInstanceTest.php
index b3fac3f..b1eec35 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldInstanceTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldInstanceTest.php
@@ -32,24 +32,24 @@ public function testFieldInstanceMigration() {
     // Test a number field.
     $field = FieldConfig::load('node.story.field_test_two');
     $this->assertIdentical('Integer Field', $field->label());
-    $expected = array(
+    $expected = [
       'min' => 10,
       'max' => 100,
       'prefix' => 'pref',
       'suffix' => 'suf',
       'unsigned' => FALSE,
       'size' => 'normal',
-    );
+    ];
     $this->assertIdentical($expected, $field->getSettings());
 
     $field = FieldConfig::load('node.story.field_test_four');
     $this->assertIdentical('Float Field', $field->label());
-    $expected = array(
+    $expected = [
       'min' => 100.0,
       'max' => 200.0,
       'prefix' => 'id-',
       'suffix' => '',
-    );
+    ];
     $this->assertIdentical($expected, $field->getSettings());
 
     // Test email field.
@@ -70,7 +70,7 @@ public function testFieldInstanceMigration() {
     // Test a filefield.
     $field = FieldConfig::load('node.story.field_test_filefield');
     $this->assertIdentical('File Field', $field->label());
-    $expected = array(
+    $expected = [
       'file_extensions' => 'txt pdf doc',
       'file_directory' => 'images',
       'description_field' => TRUE,
@@ -80,8 +80,8 @@ public function testFieldInstanceMigration() {
       'display_default' => FALSE,
       'uri_scheme' => 'public',
       'handler' => 'default:file',
-      'handler_settings' => array(),
-    );
+      'handler_settings' => [],
+    ];
     $field_settings = $field->getSettings();
     ksort($expected);
     ksort($field_settings);
@@ -91,7 +91,7 @@ public function testFieldInstanceMigration() {
     // Test a link field.
     $field = FieldConfig::load('node.story.field_test_link');
     $this->assertIdentical('Link Field', $field->label());
-    $expected = array('title' => 2, 'link_type' => LinkItemInterface::LINK_GENERIC);
+    $expected = ['title' => 2, 'link_type' => LinkItemInterface::LINK_GENERIC];
     $this->assertIdentical($expected, $field->getSettings());
     $this->assertIdentical('default link title', $entity->field_test_link->title, 'Field field_test_link default title is correct.');
     $this->assertIdentical('https://www.drupal.org', $entity->field_test_link->url, 'Field field_test_link default title is correct.');
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldTest.php b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldTest.php
index ea3fec8..6900161 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldTest.php
@@ -33,38 +33,38 @@ public function testFields() {
 
     // Integer field.
     $field_storage = FieldStorageConfig::load('node.field_test_two');
-    $this->assertIdentical("integer", $field_storage->getType(), t('Field type is @fieldtype. It should be integer.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("integer", $field_storage->getType(), t('Field type is @fieldtype. It should be integer.', ['@fieldtype' => $field_storage->getType()]));
 
     // Float field.
     $field_storage = FieldStorageConfig::load('node.field_test_three');
-    $this->assertIdentical("decimal", $field_storage->getType(), t('Field type is @fieldtype. It should be decimal.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("decimal", $field_storage->getType(), t('Field type is @fieldtype. It should be decimal.', ['@fieldtype' => $field_storage->getType()]));
 
     // Link field.
     $field_storage = FieldStorageConfig::load('node.field_test_link');
-    $this->assertIdentical("link", $field_storage->getType(), t('Field type is @fieldtype. It should be link.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("link", $field_storage->getType(), t('Field type is @fieldtype. It should be link.', ['@fieldtype' => $field_storage->getType()]));
 
     // File field.
     $field_storage = FieldStorageConfig::load('node.field_test_filefield');
-    $this->assertIdentical("file", $field_storage->getType(), t('Field type is @fieldtype. It should be file.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("file", $field_storage->getType(), t('Field type is @fieldtype. It should be file.', ['@fieldtype' => $field_storage->getType()]));
 
     $field_storage = FieldStorageConfig::load('node.field_test_imagefield');
-    $this->assertIdentical("image", $field_storage->getType(), t('Field type is @fieldtype. It should be image.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("image", $field_storage->getType(), t('Field type is @fieldtype. It should be image.', ['@fieldtype' => $field_storage->getType()]));
     $settings = $field_storage->getSettings();
     $this->assertIdentical('file', $settings['target_type']);
     $this->assertIdentical('public', $settings['uri_scheme']);
-    $this->assertIdentical(array(), array_filter($settings['default_image']));
+    $this->assertIdentical([], array_filter($settings['default_image']));
 
     // Phone field.
     $field_storage = FieldStorageConfig::load('node.field_test_phone');
-    $this->assertIdentical("telephone", $field_storage->getType(), t('Field type is @fieldtype. It should be telephone.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("telephone", $field_storage->getType(), t('Field type is @fieldtype. It should be telephone.', ['@fieldtype' => $field_storage->getType()]));
 
     // Date field.
     $field_storage = FieldStorageConfig::load('node.field_test_datetime');
-    $this->assertIdentical("datetime", $field_storage->getType(), t('Field type is @fieldtype. It should be datetime.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("datetime", $field_storage->getType(), t('Field type is @fieldtype. It should be datetime.', ['@fieldtype' => $field_storage->getType()]));
 
     // Decimal field with radio buttons.
     $field_storage = FieldStorageConfig::load('node.field_test_decimal_radio_buttons');
-    $this->assertIdentical("list_float", $field_storage->getType(), t('Field type is @fieldtype. It should be list_float.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("list_float", $field_storage->getType(), t('Field type is @fieldtype. It should be list_float.', ['@fieldtype' => $field_storage->getType()]));
     $this->assertNotNull($field_storage->getSetting('allowed_values')['1.2'], t('First allowed value key is set to 1.2'));
     $this->assertNotNull($field_storage->getSetting('allowed_values')['2.1'], t('Second allowed value key is set to 2.1'));
     $this->assertIdentical('1.2', $field_storage->getSetting('allowed_values')['1.2'], t('First allowed value is set to 1.2'));
@@ -72,11 +72,11 @@ public function testFields() {
 
     // Float field with a single checkbox.
     $field_storage = FieldStorageConfig::load('node.field_test_float_single_checkbox');
-    $this->assertIdentical("boolean", $field_storage->getType(), t('Field type is @fieldtype. It should be boolean.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("boolean", $field_storage->getType(), t('Field type is @fieldtype. It should be boolean.', ['@fieldtype' => $field_storage->getType()]));
 
     // Integer field with a select list.
     $field_storage = FieldStorageConfig::load('node.field_test_integer_selectlist');
-    $this->assertIdentical("list_integer", $field_storage->getType(), t('Field type is @fieldtype. It should be list_integer.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("list_integer", $field_storage->getType(), t('Field type is @fieldtype. It should be list_integer.', ['@fieldtype' => $field_storage->getType()]));
     $this->assertNotNull($field_storage->getSetting('allowed_values')['1234'], t('First allowed value key is set to 1234'));
     $this->assertNotNull($field_storage->getSetting('allowed_values')['2341'], t('Second allowed value key is set to 2341'));
     $this->assertNotNull($field_storage->getSetting('allowed_values')['3412'], t('Third allowed value key is set to 3412'));
@@ -88,7 +88,7 @@ public function testFields() {
 
     // Text field with a single checkbox.
     $field_storage = FieldStorageConfig::load('node.field_test_text_single_checkbox');
-    $this->assertIdentical("boolean", $field_storage->getType(), t('Field type is @fieldtype. It should be boolean.', array('@fieldtype' => $field_storage->getType())));
+    $this->assertIdentical("boolean", $field_storage->getType(), t('Field type is @fieldtype. It should be boolean.', ['@fieldtype' => $field_storage->getType()]));
 
     // Validate that the source count and processed count match up.
     /** @var \Drupal\migrate\Plugin\MigrationInterface $migration */
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldWidgetSettingsTest.php b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldWidgetSettingsTest.php
index e7bb636..2a9dd1b 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldWidgetSettingsTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d6/MigrateFieldWidgetSettingsTest.php
@@ -30,9 +30,9 @@ public function testWidgetSettings() {
 
     // Text field.
     $component = $form_display->getComponent('field_test');
-    $expected = array('weight' => 1, 'type' => 'text_textfield');
-    $expected['settings'] = array('size' => 60, 'placeholder' => '');
-    $expected['third_party_settings'] = array();
+    $expected = ['weight' => 1, 'type' => 'text_textfield'];
+    $expected['settings'] = ['size' => 60, 'placeholder' => ''];
+    $expected['third_party_settings'] = [];
     $expected['region'] = 'content';
     $this->assertIdentical($expected, $component, 'Text field settings are correct.');
 
@@ -40,7 +40,7 @@ public function testWidgetSettings() {
     $component = $form_display->getComponent('field_test_two');
     $expected['type'] = 'number';
     $expected['weight'] = 1;
-    $expected['settings'] = array('placeholder' => '');
+    $expected['settings'] = ['placeholder' => ''];
     $this->assertIdentical($expected, $component);
 
     // Float field.
@@ -52,7 +52,7 @@ public function testWidgetSettings() {
     $component = $form_display->getComponent('field_test_email');
     $expected['type'] = 'email_default';
     $expected['weight'] = 6;
-    $expected['settings'] = array('placeholder' => '', 'size' => 60);
+    $expected['settings'] = ['placeholder' => '', 'size' => 60];
     $this->assertIdentical($expected, $component);
 
     // Link field.
@@ -65,28 +65,28 @@ public function testWidgetSettings() {
     $component = $form_display->getComponent('field_test_filefield');
     $expected['type'] = 'file_generic';
     $expected['weight'] = 8;
-    $expected['settings'] = array('progress_indicator' => 'bar');
+    $expected['settings'] = ['progress_indicator' => 'bar'];
     $this->assertIdentical($expected, $component);
 
     // Image field.
     $component = $form_display->getComponent('field_test_imagefield');
     $expected['type'] = 'image_image';
     $expected['weight'] = 9;
-    $expected['settings'] = array('progress_indicator' => 'bar', 'preview_image_style' => 'thumbnail');
+    $expected['settings'] = ['progress_indicator' => 'bar', 'preview_image_style' => 'thumbnail'];
     $this->assertIdentical($expected, $component);
 
     // Phone field.
     $component = $form_display->getComponent('field_test_phone');
     $expected['type'] = 'telephone_default';
     $expected['weight'] = 13;
-    $expected['settings'] = array('placeholder' => '');
+    $expected['settings'] = ['placeholder' => ''];
     $this->assertIdentical($expected, $component);
 
     // Date fields.
     $component = $form_display->getComponent('field_test_date');
     $expected['type'] = 'datetime_default';
     $expected['weight'] = 10;
-    $expected['settings'] = array();
+    $expected['settings'] = [];
     $this->assertIdentical($expected, $component);
 
     $component = $form_display->getComponent('field_test_datestamp');
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldFormatterSettingsTest.php b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldFormatterSettingsTest.php
index 14f37cb..dd38569 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldFormatterSettingsTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldFormatterSettingsTest.php
@@ -96,40 +96,40 @@ protected function setUp() {
     // an "unsupported operand types" fatal).
     Database::getConnection('default', 'migrate')
       ->update('field_config_instance')
-      ->fields(array(
-        'data' => serialize(array (
+      ->fields([
+        'data' => serialize( [
           'label' => 'Body',
           'widget' =>
-            array (
+             [
               'type' => 'text_textarea_with_summary',
               'settings' =>
-                array (
+                 [
                   'rows' => 20,
                   'summary_rows' => 5,
-                ),
+                ],
               'weight' => -4,
               'module' => 'text',
-            ),
+            ],
           'settings' =>
-            array (
+             [
               'display_summary' => TRUE,
               'text_processing' => 1,
               'user_register_form' => FALSE,
-            ),
+            ],
           'display' =>
-            array (
+             [
               'default' =>
-                array (
+                 [
                   'label' => 'hidden',
                   'type' => 'text_default',
                   'settings' =>
-                    array (
-                    ),
+                     [
+                    ],
                   'module' => 'text',
                   'weight' => 0,
-                ),
+                ],
               'teaser' =>
-                array (
+                 [
                   'label' => 'hidden',
                   'type' => 'text_summary_or_trimmed',
                   // settings is always expected to be an array. Making it NULL
@@ -137,12 +137,12 @@ protected function setUp() {
                   'settings' => NULL,
                   'module' => 'text',
                   'weight' => 0,
-                ),
-            ),
+                ],
+            ],
           'required' => FALSE,
           'description' => '',
-        )),
-      ))
+        ]),
+      ])
       ->condition('entity_type', 'node')
       ->condition('bundle', 'article')
       ->condition('field_name', 'body')
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceTest.php b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceTest.php
index c50c324..1e3df9e 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceTest.php
@@ -21,7 +21,7 @@ class MigrateFieldInstanceTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'comment',
     'datetime',
     'file',
@@ -32,7 +32,7 @@ class MigrateFieldInstanceTest extends MigrateDrupal7TestBase {
     'taxonomy',
     'telephone',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -57,16 +57,16 @@ protected function setUp() {
    *   The node type ID.
    */
   protected function createType($id) {
-    NodeType::create(array(
+    NodeType::create([
       'type' => $id,
       'label' => $this->randomString(),
-    ))->save();
+    ])->save();
 
-    CommentType::create(array(
+    CommentType::create([
       'id' => 'comment_node_' . $id,
       'label' => $this->randomString(),
       'target_entity_type_id' => 'node',
-    ))->save();
+    ])->save();
   }
 
   /**
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceWidgetSettingsTest.php b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceWidgetSettingsTest.php
index 7f2e024..5a47e38 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceWidgetSettingsTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldInstanceWidgetSettingsTest.php
@@ -18,7 +18,7 @@ class MigrateFieldInstanceWidgetSettingsTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'comment',
     'datetime',
     'field',
@@ -29,7 +29,7 @@ class MigrateFieldInstanceWidgetSettingsTest extends MigrateDrupal7TestBase {
     'taxonomy',
     'telephone',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldTest.php b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldTest.php
index 4a0f8cd..ab2fe8e 100644
--- a/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldTest.php
+++ b/core/modules/field/tests/src/Kernel/Migrate/d7/MigrateFieldTest.php
@@ -18,7 +18,7 @@ class MigrateFieldTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'comment',
     'datetime',
     'file',
@@ -29,7 +29,7 @@ class MigrateFieldTest extends MigrateDrupal7TestBase {
     'taxonomy',
     'telephone',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php b/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
index 25b99bb..578eeda 100644
--- a/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
+++ b/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
@@ -21,18 +21,18 @@ class NumberItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array();
+  public static $modules = [];
 
   protected function setUp() {
     parent::setUp();
 
     // Create number field storages and fields for validation.
-    foreach (array('integer', 'float', 'decimal') as $type) {
-      FieldStorageConfig::create(array(
+    foreach (['integer', 'float', 'decimal'] as $type) {
+      FieldStorageConfig::create([
         'entity_type' => 'entity_test',
         'field_name' => 'field_' . $type,
         'type' => $type,
-      ))->save();
+      ])->save();
       FieldConfig::create([
         'entity_type' => 'entity_test',
         'field_name' => 'field_' . $type,
diff --git a/core/modules/field/tests/src/Kernel/ShapeItemTest.php b/core/modules/field/tests/src/Kernel/ShapeItemTest.php
index 644a15f..80ab04f 100644
--- a/core/modules/field/tests/src/Kernel/ShapeItemTest.php
+++ b/core/modules/field/tests/src/Kernel/ShapeItemTest.php
@@ -20,7 +20,7 @@ class ShapeItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test');
+  public static $modules = ['field_test'];
 
   /**
    * The name of the field to use in this test.
@@ -33,11 +33,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create a 'shape' field and storage for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => 'shape',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => $this->fieldName,
diff --git a/core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php b/core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php
index 02d72d0..1000d64 100644
--- a/core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php
+++ b/core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php
@@ -23,7 +23,7 @@ class RawStringFormatterTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field', 'text', 'entity_test', 'system', 'filter', 'user');
+  public static $modules = ['field', 'text', 'entity_test', 'system', 'filter', 'user'];
 
   /**
    * @var string
@@ -52,7 +52,7 @@ protected function setUp() {
     parent::setUp();
 
     // Configure the theme system.
-    $this->installConfig(array('system', 'field'));
+    $this->installConfig(['system', 'field']);
     \Drupal::service('router.builder')->rebuild();
     $this->installEntitySchema('entity_test');
 
@@ -60,25 +60,25 @@ protected function setUp() {
     $this->bundle = $this->entityType;
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
 
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => $this->entityType,
       'type' => 'string_long',
-    ));
+    ]);
     $field_storage->save();
 
-    $instance = FieldConfig::create(array(
+    $instance = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => $this->bundle,
       'label' => $this->randomMachineName(),
-    ));
+    ]);
     $instance->save();
 
     $this->display = entity_get_display($this->entityType, $this->bundle, 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'string',
-        'settings' => array(),
-      ));
+        'settings' => [],
+      ]);
     $this->display->save();
   }
 
@@ -107,7 +107,7 @@ public function testStringFormatter() {
     $value .= "\n\n<strong>" . $this->randomString() . '</strong>';
     $value .= "\n\n" . $this->randomString();
 
-    $entity = EntityTest::create(array());
+    $entity = EntityTest::create([]);
     $entity->{$this->fieldName}->value = $value;
 
     // Verify that all HTML is escaped and newlines are retained.
diff --git a/core/modules/field/tests/src/Kernel/String/StringFormatterTest.php b/core/modules/field/tests/src/Kernel/String/StringFormatterTest.php
index b52a92f..b09eb58 100644
--- a/core/modules/field/tests/src/Kernel/String/StringFormatterTest.php
+++ b/core/modules/field/tests/src/Kernel/String/StringFormatterTest.php
@@ -23,7 +23,7 @@ class StringFormatterTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field', 'text', 'entity_test', 'system', 'filter', 'user');
+  public static $modules = ['field', 'text', 'entity_test', 'system', 'filter', 'user'];
 
   /**
    * @var string
@@ -52,7 +52,7 @@ protected function setUp() {
     parent::setUp();
 
     // Configure the theme system.
-    $this->installConfig(array('system', 'field'));
+    $this->installConfig(['system', 'field']);
     \Drupal::service('router.builder')->rebuild();
     $this->installEntitySchema('entity_test_rev');
 
@@ -60,25 +60,25 @@ protected function setUp() {
     $this->bundle = $this->entityType;
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
 
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => $this->entityType,
       'type' => 'string',
-    ));
+    ]);
     $field_storage->save();
 
-    $instance = FieldConfig::create(array(
+    $instance = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => $this->bundle,
       'label' => $this->randomMachineName(),
-    ));
+    ]);
     $instance->save();
 
     $this->display = entity_get_display($this->entityType, $this->bundle, 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'string',
-        'settings' => array(),
-      ));
+        'settings' => [],
+      ]);
     $this->display->save();
   }
 
@@ -107,7 +107,7 @@ public function testStringFormatter() {
     $value .= "\n\n<strong>" . $this->randomString() . '</strong>';
     $value .= "\n\n" . $this->randomString();
 
-    $entity = EntityTestRev::create(array());
+    $entity = EntityTestRev::create([]);
     $entity->{$this->fieldName}->value = $value;
 
     // Verify that all HTML is escaped and newlines are retained.
diff --git a/core/modules/field/tests/src/Kernel/TestItemTest.php b/core/modules/field/tests/src/Kernel/TestItemTest.php
index 6766b40..73a9948 100644
--- a/core/modules/field/tests/src/Kernel/TestItemTest.php
+++ b/core/modules/field/tests/src/Kernel/TestItemTest.php
@@ -21,7 +21,7 @@ class TestItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test');
+  public static $modules = ['field_test'];
 
   /**
    * The name of the field to use in this test.
@@ -34,11 +34,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create a 'test_field' field and storage for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => 'test_field',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => $this->fieldName,
@@ -76,19 +76,19 @@ public function testTestItem() {
     $this->assertEqual($entity->{$this->fieldName}->value, $new_value);
 
     // Test the schema for this field type.
-    $expected_schema = array(
-      'columns' => array(
-        'value' => array(
+    $expected_schema = [
+      'columns' => [
+        'value' => [
           'type' => 'int',
           'size' => 'medium',
-        ),
-      ),
-      'unique keys' => array(),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-      'foreign keys' => array(),
-    );
+        ],
+      ],
+      'unique keys' => [],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+      'foreign keys' => [],
+    ];
     $field_schema = BaseFieldDefinition::create('test_field')->getSchema();
     $this->assertEqual($field_schema, $expected_schema);
   }
diff --git a/core/modules/field/tests/src/Kernel/TestItemWithDependenciesTest.php b/core/modules/field/tests/src/Kernel/TestItemWithDependenciesTest.php
index 9766a06..d1a269a 100644
--- a/core/modules/field/tests/src/Kernel/TestItemWithDependenciesTest.php
+++ b/core/modules/field/tests/src/Kernel/TestItemWithDependenciesTest.php
@@ -17,7 +17,7 @@ class TestItemWithDependenciesTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test');
+  public static $modules = ['field_test'];
 
   /**
    * The name of the field to use in this test.
@@ -31,11 +31,11 @@ class TestItemWithDependenciesTest extends FieldKernelTestBase {
    */
   public function testTestItemWithDepenencies() {
     // Create a 'test_field_with_dependencies' field and storage for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => 'test_field_with_dependencies',
-    ))->save();
+    ])->save();
     $field = FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => $this->fieldName,
diff --git a/core/modules/field/tests/src/Kernel/TestObjectItemTest.php b/core/modules/field/tests/src/Kernel/TestObjectItemTest.php
index 8a78755..1ac87fc 100644
--- a/core/modules/field/tests/src/Kernel/TestObjectItemTest.php
+++ b/core/modules/field/tests/src/Kernel/TestObjectItemTest.php
@@ -18,7 +18,7 @@ class TestObjectItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test');
+  public static $modules = ['field_test'];
 
   /**
    * {@inheritdoc}
@@ -27,11 +27,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create a 'test_field' field and storage for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test',
       'entity_type' => 'entity_test',
       'type' => 'test_object_field',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_test',
diff --git a/core/modules/field/tests/src/Kernel/Timestamp/TimestampFormatterTest.php b/core/modules/field/tests/src/Kernel/Timestamp/TimestampFormatterTest.php
index ee97cab..f71be31 100644
--- a/core/modules/field/tests/src/Kernel/Timestamp/TimestampFormatterTest.php
+++ b/core/modules/field/tests/src/Kernel/Timestamp/TimestampFormatterTest.php
@@ -140,7 +140,7 @@ public function testTimestampFormatter() {
   public function testTimestampAgoFormatter() {
     $data = [];
 
-    foreach (array(1, 2, 3, 4, 5, 6) as $granularity) {
+    foreach ([1, 2, 3, 4, 5, 6] as $granularity) {
       $data[] = [
         'future_format' => '@interval hence',
         'past_format' => '@interval ago',
diff --git a/core/modules/field/tests/src/Kernel/TranslationTest.php b/core/modules/field/tests/src/Kernel/TranslationTest.php
index 78172a3..f1fffe6 100644
--- a/core/modules/field/tests/src/Kernel/TranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/TranslationTest.php
@@ -23,7 +23,7 @@ class TranslationTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'node');
+  public static $modules = ['language', 'node'];
 
   /**
    * The name of the field to use in this test.
@@ -73,33 +73,33 @@ class TranslationTest extends FieldKernelTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('language'));
+    $this->installConfig(['language']);
 
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
 
     $this->entityType = 'entity_test';
 
-    $this->fieldStorageDefinition = array(
+    $this->fieldStorageDefinition = [
       'field_name' => $this->fieldName,
       'entity_type' => $this->entityType,
       'type' => 'test_field',
       'cardinality' => 4,
-    );
+    ];
     $this->fieldStorage = FieldStorageConfig::create($this->fieldStorageDefinition);
     $this->fieldStorage->save();
 
-    $this->fieldDefinition = array(
+    $this->fieldDefinition = [
       'field_storage' => $this->fieldStorage,
       'bundle' => 'entity_test',
-    );
+    ];
     $this->field = FieldConfig::create($this->fieldDefinition);
     $this->field->save();
 
     for ($i = 0; $i < 3; ++$i) {
-      ConfigurableLanguage::create(array(
+      ConfigurableLanguage::create([
         'id' => 'l' . $i,
         'label' => $this->randomString(),
-      ))->save();
+      ])->save();
     }
   }
 
@@ -117,8 +117,8 @@ function testTranslatableFieldSaveLoad() {
     field_test_entity_info_translatable($entity_type_id, TRUE);
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type_id)
-      ->create(array('type' => $this->field->getTargetBundle()));
-    $field_translations = array();
+      ->create(['type' => $this->field->getTargetBundle()]);
+    $field_translations = [];
     $available_langcodes = array_keys($this->container->get('language_manager')->getLanguages());
     $entity->langcode->value = reset($available_langcodes);
     foreach ($available_langcodes as $langcode) {
@@ -136,7 +136,7 @@ function testTranslatableFieldSaveLoad() {
       foreach ($items as $delta => $item) {
         $result = $result && $item['value'] == $entity->getTranslation($langcode)->{$this->fieldName}[$delta]->value;
       }
-      $this->assertTrue($result, format_string('%language translation correctly handled.', array('%language' => $langcode)));
+      $this->assertTrue($result, format_string('%language translation correctly handled.', ['%language' => $langcode]));
     }
 
     // Test default values.
@@ -148,7 +148,7 @@ function testTranslatableFieldSaveLoad() {
 
     $field_definition = $this->fieldDefinition;
     $field_definition['field_storage'] = $field_storage;
-    $field_definition['default_value'] = array(array('value' => rand(1, 127)));
+    $field_definition['default_value'] = [['value' => rand(1, 127)]];
     $field = FieldConfig::create($field_definition);
     $field->save();
 
@@ -156,7 +156,7 @@ function testTranslatableFieldSaveLoad() {
     asort($translation_langcodes);
     $translation_langcodes = array_values($translation_langcodes);
 
-    $values = array('type' => $field->getTargetBundle(), 'langcode' => $translation_langcodes[0]);
+    $values = ['type' => $field->getTargetBundle(), 'langcode' => $translation_langcodes[0]];
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type_id)
       ->create($values);
@@ -173,11 +173,11 @@ function testTranslatableFieldSaveLoad() {
     // @todo Test every translation once the Entity Translation API allows for
     //   multilingual defaults.
     $langcode = $entity->language()->getId();
-    $this->assertEqual($entity->getTranslation($langcode)->{$field_name_default}->getValue(), $field->getDefaultValueLiteral(), format_string('Default value correctly populated for language %language.', array('%language' => $langcode)));
+    $this->assertEqual($entity->getTranslation($langcode)->{$field_name_default}->getValue(), $field->getDefaultValueLiteral(), format_string('Default value correctly populated for language %language.', ['%language' => $langcode]));
 
     // Check that explicit empty values are not overridden with default values.
-    foreach (array(NULL, array()) as $empty_items) {
-      $values = array('type' => $field->getTargetBundle(), 'langcode' => $translation_langcodes[0]);
+    foreach ([NULL, []] as $empty_items) {
+      $values = ['type' => $field->getTargetBundle(), 'langcode' => $translation_langcodes[0]];
       $entity = entity_create($entity_type_id, $values);
       foreach ($translation_langcodes as $langcode) {
         $values[$this->fieldName][$langcode] = $this->_generateTestFieldValues($this->fieldStorage->getCardinality());
@@ -188,7 +188,7 @@ function testTranslatableFieldSaveLoad() {
       }
 
       foreach ($entity->getTranslationLanguages() as $langcode => $language) {
-        $this->assertEquals([], $entity->getTranslation($langcode)->{$field_name_default}->getValue(), format_string('Empty value correctly populated for language %language.', array('%language' => $langcode)));
+        $this->assertEquals([], $entity->getTranslation($langcode)->{$field_name_default}->getValue(), format_string('Empty value correctly populated for language %language.', ['%language' => $langcode]));
       }
     }
   }
diff --git a/core/modules/field/tests/src/Kernel/WidgetPluginManagerTest.php b/core/modules/field/tests/src/Kernel/WidgetPluginManagerTest.php
index 3eff2ca..47edb9f 100644
--- a/core/modules/field/tests/src/Kernel/WidgetPluginManagerTest.php
+++ b/core/modules/field/tests/src/Kernel/WidgetPluginManagerTest.php
@@ -33,13 +33,13 @@ public function testNotApplicableFallback() {
       // Set a name that will make isApplicable() return TRUE.
       ->setName('field_multiwidgetfield');
 
-    $widget_options = array(
+    $widget_options = [
       'field_definition' => $base_field_definition,
       'form_mode' => 'default',
-      'configuration' => array(
+      'configuration' => [
         'type' => 'test_field_widget_multiple',
-      ),
-    );
+      ],
+    ];
 
     $instance = $widget_plugin_manager->getInstance($widget_options);
     $this->assertEqual($instance->getPluginId(), 'test_field_widget_multiple');
diff --git a/core/modules/field/tests/src/Unit/FieldConfigEntityUnitTest.php b/core/modules/field/tests/src/Unit/FieldConfigEntityUnitTest.php
index 3f687d4..3a0c8aa 100644
--- a/core/modules/field/tests/src/Unit/FieldConfigEntityUnitTest.php
+++ b/core/modules/field/tests/src/Unit/FieldConfigEntityUnitTest.php
@@ -100,14 +100,14 @@ protected function setUp() {
       ->will($this->returnValue('field_test'));
     $this->fieldStorage->expects($this->any())
       ->method('getSettings')
-      ->willReturn(array());
+      ->willReturn([]);
     // Place the field in the mocked entity manager's field registry.
     $this->entityManager->expects($this->any())
       ->method('getFieldStorageDefinitions')
       ->with('test_entity_type')
-      ->will($this->returnValue(array(
+      ->will($this->returnValue([
         $this->fieldStorage->getName() => $this->fieldStorage,
-      )));
+      ]));
   }
 
   /**
@@ -118,7 +118,7 @@ public function testCalculateDependencies() {
     $target_entity_type = $this->getMock('\Drupal\Core\Entity\EntityTypeInterface');
     $target_entity_type->expects($this->any())
       ->method('getBundleConfigDependency')
-      ->will($this->returnValue(array('type' => 'config', 'name' => 'test.test_entity_type.id')));
+      ->will($this->returnValue(['type' => 'config', 'name' => 'test.test_entity_type.id']));
 
     $this->entityManager->expects($this->at(0))
       ->method('getDefinition')
@@ -146,12 +146,12 @@ public function testCalculateDependencies() {
       ->method('getConfigDependencyName')
       ->will($this->returnValue('field.storage.test_entity_type.test_field'));
 
-    $field = new FieldConfig(array(
+    $field = new FieldConfig([
       'field_name' => $this->fieldStorage->getName(),
       'entity_type' => 'test_entity_type',
       'bundle' => 'test_bundle',
       'field_type' => 'test_field',
-    ), $this->entityTypeId);
+    ], $this->entityTypeId);
     $dependencies = $field->calculateDependencies()->getDependencies();
     $this->assertContains('field.storage.test_entity_type.test_field', $dependencies['config']);
     $this->assertContains('test.test_entity_type.id', $dependencies['config']);
@@ -176,10 +176,10 @@ public function testCalculateDependenciesIncorrectBundle() {
       ->with('bundle_entity_type')
       ->will($this->returnValue($storage));
 
-    $target_entity_type = new EntityType(array(
+    $target_entity_type = new EntityType([
       'id' => 'test_entity_type',
       'bundle_entity_type' => 'bundle_entity_type',
-    ));
+    ]);
 
     $this->entityManager->expects($this->at(0))
       ->method('getDefinition')
@@ -203,12 +203,12 @@ public function testCalculateDependenciesIncorrectBundle() {
       ->with('test_field')
       ->willReturn(['provider' => 'test_module', 'config_dependencies' => ['module' => ['test_module2']], 'class' => '\Drupal\Tests\field\Unit\DependencyFieldItem']);
 
-    $field = new FieldConfig(array(
+    $field = new FieldConfig([
       'field_name' => $this->fieldStorage->getName(),
       'entity_type' => 'test_entity_type',
       'bundle' => 'test_bundle_not_exists',
       'field_type' => 'test_field',
-    ), $this->entityTypeId);
+    ], $this->entityTypeId);
     $field->calculateDependencies();
   }
 
@@ -245,14 +245,14 @@ public function testOnDependencyRemoval() {
    * @covers ::toArray
    */
   public function testToArray() {
-    $field = new FieldConfig(array(
+    $field = new FieldConfig([
       'field_name' => $this->fieldStorage->getName(),
       'entity_type' => 'test_entity_type',
       'bundle' => 'test_bundle',
       'field_type' => 'test_field',
-    ), $this->entityTypeId);
+    ], $this->entityTypeId);
 
-    $expected = array(
+    $expected = [
       'id' => 'test_entity_type.test_bundle.field_test',
       'uuid' => NULL,
       'status' => TRUE,
@@ -263,12 +263,12 @@ public function testToArray() {
       'label' => '',
       'description' => '',
       'required' => FALSE,
-      'default_value' => array(),
+      'default_value' => [],
       'default_value_callback' => '',
-      'settings' => array(),
-      'dependencies' => array(),
+      'settings' => [],
+      'dependencies' => [],
       'field_type' => 'test_field',
-    );
+    ];
     $this->entityManager->expects($this->any())
       ->method('getDefinition')
       ->with($this->entityTypeId)
@@ -279,7 +279,7 @@ public function testToArray() {
       ->will($this->returnValue('id'));
     $this->typedConfigManager->expects($this->once())
       ->method('getDefinition')
-      ->will($this->returnValue(array('mapping' => array_fill_keys(array_keys($expected), ''))));
+      ->will($this->returnValue(['mapping' => array_fill_keys(array_keys($expected), '')]));
 
     $export = $field->toArray();
     $this->assertEquals($expected, $export);
@@ -296,12 +296,12 @@ public function testGetType() {
     $this->fieldStorage->expects($this->never())
       ->method('getType');
 
-    $field = new FieldConfig(array(
+    $field = new FieldConfig([
       'field_name' => $this->fieldStorage->getName(),
       'entity_type' => 'test_entity_type',
       'bundle' => 'test_bundle',
       'field_type' => 'test_field',
-    ), $this->entityTypeId);
+    ], $this->entityTypeId);
 
     $this->assertEquals('test_field', $field->getType());
   }
diff --git a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
index edeef21..df18fec 100644
--- a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
+++ b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
@@ -36,32 +36,32 @@ public function testGetSettings($field_type, $field_settings, $allowed_values) {
    * Provides field settings for testGetSettings().
    */
   public function getSettingsProvider() {
-    return array(
-      array(
+    return [
+      [
         'list_integer',
-        array('allowed_values' => "1|One\n2|Two\n3"),
-        array(
+        ['allowed_values' => "1|One\n2|Two\n3"],
+        [
           '1' => 'One',
           '2' => 'Two',
           '3' => '3',
-        ),
-      ),
-      array(
+        ],
+      ],
+      [
         'list_string',
-        array('allowed_values' => NULL),
-        array(),
-      ),
-      array(
+        ['allowed_values' => NULL],
+        [],
+      ],
+      [
         'list_float',
-        array('allowed_values' => ""),
-        array(),
-      ),
-      array(
+        ['allowed_values' => ""],
+        [],
+      ],
+      [
         'boolean',
-        array(),
-        array(),
-      ),
-    );
+        [],
+        [],
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/field_ui/field_ui.api.php b/core/modules/field_ui/field_ui.api.php
index 28cb246..92cbaf2 100644
--- a/core/modules/field_ui/field_ui.api.php
+++ b/core/modules/field_ui/field_ui.api.php
@@ -30,15 +30,15 @@
  * @see \Drupal\field_ui\DisplayOverView
  */
 function hook_field_formatter_third_party_settings_form(\Drupal\Core\Field\FormatterInterface $plugin, \Drupal\Core\Field\FieldDefinitionInterface $field_definition, $view_mode, $form, \Drupal\Core\Form\FormStateInterface $form_state) {
-  $element = array();
+  $element = [];
   // Add a 'my_setting' checkbox to the settings form for 'foo_formatter' field
   // formatters.
   if ($plugin->getPluginId() == 'foo_formatter') {
-    $element['my_setting'] = array(
+    $element['my_setting'] = [
       '#type' => 'checkbox',
       '#title' => t('My setting'),
       '#default_value' => $plugin->getThirdPartySetting('my_module', 'my_setting'),
-    );
+    ];
   }
   return $element;
 }
@@ -63,15 +63,15 @@ function hook_field_formatter_third_party_settings_form(\Drupal\Core\Field\Forma
  * @see \Drupal\field_ui\FormDisplayOverView
  */
 function hook_field_widget_third_party_settings_form(\Drupal\Core\Field\WidgetInterface $plugin, \Drupal\Core\Field\FieldDefinitionInterface $field_definition, $form_mode, $form, \Drupal\Core\Form\FormStateInterface $form_state) {
-  $element = array();
+  $element = [];
   // Add a 'my_setting' checkbox to the settings form for 'foo_widget' field
   // widgets.
   if ($plugin->getPluginId() == 'foo_widget') {
-    $element['my_setting'] = array(
+    $element['my_setting'] = [
       '#type' => 'checkbox',
       '#title' => t('My setting'),
       '#default_value' => $plugin->getThirdPartySetting('my_module', 'my_setting'),
-    );
+    ];
   }
   return $element;
 }
diff --git a/core/modules/field_ui/field_ui.module b/core/modules/field_ui/field_ui.module
index 5134cad..79b3f15 100644
--- a/core/modules/field_ui/field_ui.module
+++ b/core/modules/field_ui/field_ui.module
@@ -22,7 +22,7 @@ function field_ui_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.field_ui':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Field UI module provides an administrative user interface (UI) for managing and displaying fields. Fields can be attached to most content entity sub-types. Different field types, widgets, and formatters are provided by the modules enabled on your site, and managed by the Field module. For background information and terminology related to fields and entities, see the <a href=":field">Field module help page</a>. For more information about the Field UI, see the <a href=":field_ui_docs">online documentation for the Field UI module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui_docs' => 'https://www.drupal.org/documentation/modules/field-ui')) . '</p>';
+      $output .= '<p>' . t('The Field UI module provides an administrative user interface (UI) for managing and displaying fields. Fields can be attached to most content entity sub-types. Different field types, widgets, and formatters are provided by the modules enabled on your site, and managed by the Field module. For background information and terminology related to fields and entities, see the <a href=":field">Field module help page</a>. For more information about the Field UI, see the <a href=":field_ui_docs">online documentation for the Field UI module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui_docs' => 'https://www.drupal.org/documentation/modules/field-ui']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating a field') . '</dt>';
@@ -34,9 +34,9 @@ function field_ui_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<dt>' . t('Configuring field display') . '</dt>';
       $output .= '<dd>' . t('On the <em>Manage display</em> page of your entity type or sub-type, you can configure how each field is displayed by default and in each view mode. If your entity type has multiple view modes, you can toggle between the view modes at the top of the page, and you can toggle whether each view mode uses the default settings or custom settings in the <em>Custom display settings</em> section. For each field in each view mode, you can choose whether and how to display the label of the field from the <em>Label</em> drop-down list. You can also select the formatter to use for display; some formatters have configuration options, which you can edit using the Edit button (which looks like a wheel). You can also change the display order of fields. You can exclude a field from a specific view mode by choosing <em>Hidden</em> from the formatter drop-down list, or by dragging it into the <em>Disabled</em> section.') . '</dd>';
       $output .= '<dt>' . t('Configuring view and form modes') . '</dt>';
-      $output .= '<dd>' . t('You can add, edit, and delete view modes for entities on the <a href=":view_modes">View modes page</a>, and you can add, edit, and delete form modes for entities on the <a href=":form_modes">Form modes page</a>. Once you have defined a view mode or form mode for an entity type, it will be available on the Manage display or Manage form display page for each sub-type of that entity.', array(':view_modes' => \Drupal::url('entity.entity_view_mode.collection'), ':form_modes' => \Drupal::url('entity.entity_form_mode.collection'))) . '</dd>';
+      $output .= '<dd>' . t('You can add, edit, and delete view modes for entities on the <a href=":view_modes">View modes page</a>, and you can add, edit, and delete form modes for entities on the <a href=":form_modes">Form modes page</a>. Once you have defined a view mode or form mode for an entity type, it will be available on the Manage display or Manage form display page for each sub-type of that entity.', [':view_modes' => \Drupal::url('entity.entity_view_mode.collection'), ':form_modes' => \Drupal::url('entity.entity_form_mode.collection')]) . '</dd>';
       $output .= '<dt>' . t('Listing fields') . '</dt>';
-      $output .= '<dd>' . t('There are two reports available that list the fields defined on your site. The <a href=":entity-list" title="Entities field list report">Entities</a> report lists all your fields, showing the field machine names, types, and the entity types or sub-types they are used on (each sub-type links to the Manage fields page). If the <a href=":views">Views</a> and <a href=":views-ui">Views UI</a> modules are enabled, the <a href=":views-list" title="Used in views field list report">Used in views</a> report lists each field that is used in a view, with a link to edit that view.', array(':entity-list' => \Drupal::url('entity.field_storage_config.collection'), ':views-list' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('views_ui.reports_fields') : '#', ':views' => (\Drupal::moduleHandler()->moduleExists('views')) ? \Drupal::url('help.page', array('name' => 'views')) : '#', ':views-ui' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('help.page', array('name' => 'views_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('There are two reports available that list the fields defined on your site. The <a href=":entity-list" title="Entities field list report">Entities</a> report lists all your fields, showing the field machine names, types, and the entity types or sub-types they are used on (each sub-type links to the Manage fields page). If the <a href=":views">Views</a> and <a href=":views-ui">Views UI</a> modules are enabled, the <a href=":views-list" title="Used in views field list report">Used in views</a> report lists each field that is used in a view, with a link to edit that view.', [':entity-list' => \Drupal::url('entity.field_storage_config.collection'), ':views-list' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('views_ui.reports_fields') : '#', ':views' => (\Drupal::moduleHandler()->moduleExists('views')) ? \Drupal::url('help.page', ['name' => 'views']) : '#', ':views-ui' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('help.page', ['name' => 'views_ui']) : '#']) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -49,21 +49,21 @@ function field_ui_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function field_ui_theme() {
-  return array(
-    'field_ui_table' => array(
-      'variables' => array(
+  return [
+    'field_ui_table' => [
+      'variables' => [
         'header' => NULL,
         'rows' => NULL,
         'footer' => NULL,
-        'attributes' => array(),
+        'attributes' => [],
         'caption' => NULL,
-        'colgroups' => array(),
+        'colgroups' => [],
         'sticky' => FALSE,
         'responsive' => TRUE,
         'empty' => '',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
@@ -138,38 +138,38 @@ function field_ui_form_node_type_form_alter(&$form, FormStateInterface $form_sta
  * Implements hook_entity_operation().
  */
 function field_ui_entity_operation(EntityInterface $entity) {
-  $operations = array();
+  $operations = [];
   $info = $entity->getEntityType();
   // Add manage fields and display links if this entity type is the bundle
   // of another and that type has field UI enabled.
   if (($bundle_of = $info->getBundleOf()) && \Drupal::entityManager()->getDefinition($bundle_of)->get('field_ui_base_route')) {
     $account = \Drupal::currentUser();
     if ($account->hasPermission('administer ' . $bundle_of . ' fields')) {
-      $operations['manage-fields'] = array(
+      $operations['manage-fields'] = [
         'title' => t('Manage fields'),
         'weight' => 15,
-        'url' => Url::fromRoute("entity.{$bundle_of}.field_ui_fields", array(
+        'url' => Url::fromRoute("entity.{$bundle_of}.field_ui_fields", [
           $entity->getEntityTypeId() => $entity->id(),
-        )),
-      );
+        ]),
+      ];
     }
     if ($account->hasPermission('administer ' . $bundle_of . ' form display')) {
-      $operations['manage-form-display'] = array(
+      $operations['manage-form-display'] = [
         'title' => t('Manage form display'),
         'weight' => 20,
-        'url' => Url::fromRoute("entity.entity_form_display.{$bundle_of}.default", array(
+        'url' => Url::fromRoute("entity.entity_form_display.{$bundle_of}.default", [
           $entity->getEntityTypeId() => $entity->id(),
-        )),
-      );
+        ]),
+      ];
     }
     if ($account->hasPermission('administer ' . $bundle_of . ' display')) {
-      $operations['manage-display'] = array(
+      $operations['manage-display'] = [
         'title' => t('Manage display'),
         'weight' => 25,
-        'url' => Url::fromRoute("entity.entity_view_display.{$bundle_of}.default", array(
+        'url' => Url::fromRoute("entity.entity_view_display.{$bundle_of}.default", [
           $entity->getEntityTypeId() => $entity->id(),
-        )),
-      );
+        ]),
+      ];
     }
   }
 
diff --git a/core/modules/field_ui/src/Controller/EntityDisplayModeController.php b/core/modules/field_ui/src/Controller/EntityDisplayModeController.php
index 545e191..b4a608a 100644
--- a/core/modules/field_ui/src/Controller/EntityDisplayModeController.php
+++ b/core/modules/field_ui/src/Controller/EntityDisplayModeController.php
@@ -17,20 +17,20 @@ class EntityDisplayModeController extends ControllerBase {
    *   A list of entity types to add a view mode for.
    */
   public function viewModeTypeSelection() {
-    $entity_types = array();
+    $entity_types = [];
     foreach ($this->entityManager()->getDefinitions() as $entity_type_id => $entity_type) {
       if ($entity_type->get('field_ui_base_route') && $entity_type->hasViewBuilderClass()) {
-        $entity_types[$entity_type_id] = array(
+        $entity_types[$entity_type_id] = [
           'title' => $entity_type->getLabel(),
-          'url' => Url::fromRoute('entity.entity_view_mode.add_form', array('entity_type_id' => $entity_type_id)),
-          'localized_options' => array(),
-        );
+          'url' => Url::fromRoute('entity.entity_view_mode.add_form', ['entity_type_id' => $entity_type_id]),
+          'localized_options' => [],
+        ];
       }
     }
-    return array(
+    return [
       '#theme' => 'admin_block_content',
       '#content' => $entity_types,
-    );
+    ];
   }
 
   /**
@@ -40,20 +40,20 @@ public function viewModeTypeSelection() {
    *   A list of entity types to add a form mode for.
    */
   public function formModeTypeSelection() {
-    $entity_types = array();
+    $entity_types = [];
     foreach ($this->entityManager()->getDefinitions() as $entity_type_id => $entity_type) {
       if ($entity_type->get('field_ui_base_route') && $entity_type->hasFormClasses()) {
-        $entity_types[$entity_type_id] = array(
+        $entity_types[$entity_type_id] = [
           'title' => $entity_type->getLabel(),
-          'url' => Url::fromRoute('entity.entity_form_mode.add_form', array('entity_type_id' => $entity_type_id)),
-          'localized_options' => array(),
-        );
+          'url' => Url::fromRoute('entity.entity_form_mode.add_form', ['entity_type_id' => $entity_type_id]),
+          'localized_options' => [],
+        ];
       }
     }
-    return array(
+    return [
       '#theme' => 'admin_block_content',
       '#content' => $entity_types,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/field_ui/src/Element/FieldUiTable.php b/core/modules/field_ui/src/Element/FieldUiTable.php
index 05d5d04..f8f3146 100644
--- a/core/modules/field_ui/src/Element/FieldUiTable.php
+++ b/core/modules/field_ui/src/Element/FieldUiTable.php
@@ -42,7 +42,7 @@ public function getInfo() {
    * @see \Drupal\Core\Render\Element\Table::preRenderTable()
    */
   public static function tablePreRender($elements) {
-    $js_settings = array();
+    $js_settings = [];
 
     // For each region, build the tree structure from the weight and parenting
     // data contained in the flat form structure, to determine row order and
diff --git a/core/modules/field_ui/src/EntityDisplayModeListBuilder.php b/core/modules/field_ui/src/EntityDisplayModeListBuilder.php
index d025055..c9d8966 100644
--- a/core/modules/field_ui/src/EntityDisplayModeListBuilder.php
+++ b/core/modules/field_ui/src/EntityDisplayModeListBuilder.php
@@ -71,7 +71,7 @@ public function buildRow(EntityInterface $entity) {
    * {@inheritdoc}
    */
   public function load() {
-    $entities = array();
+    $entities = [];
     foreach (parent::load() as $entity) {
       $entities[$entity->getTargetType()][] = $entity;
     }
@@ -82,7 +82,7 @@ public function load() {
    * {@inheritdoc}
    */
   public function render() {
-    $build = array();
+    $build = [];
     foreach ($this->load() as $entity_type => $entities) {
       if (!isset($this->entityTypes[$entity_type])) {
         continue;
@@ -93,12 +93,12 @@ public function render() {
         continue;
       }
 
-      $table = array(
+      $table = [
         '#prefix' => '<h2>' . $this->entityTypes[$entity_type]->getLabel() . '</h2>',
         '#type' => 'table',
         '#header' => $this->buildHeader(),
-        '#rows' => array(),
-      );
+        '#rows' => [],
+      ];
       foreach ($entities as $entity) {
         if ($row = $this->buildRow($entity)) {
           $table['#rows'][$entity->id()] = $row;
@@ -110,15 +110,15 @@ public function render() {
         $table['#weight'] = -10;
       }
 
-      $short_type = str_replace(array('entity_', '_mode'), '', $this->entityTypeId);
-      $table['#rows']['_add_new'][] = array(
-        'data' => array(
+      $short_type = str_replace(['entity_', '_mode'], '', $this->entityTypeId);
+      $table['#rows']['_add_new'][] = [
+        'data' => [
           '#type' => 'link',
           '#url' => Url::fromRoute($short_type == 'view' ? 'entity.entity_view_mode.add_form' : 'entity.entity_form_mode.add_form', ['entity_type_id' => $entity_type]),
-          '#title' => $this->t('Add new %label @entity-type', array('%label' => $this->entityTypes[$entity_type]->getLabel(), '@entity-type' => $this->entityType->getLowercaseLabel())),
-        ),
+          '#title' => $this->t('Add new %label @entity-type', ['%label' => $this->entityTypes[$entity_type]->getLabel(), '@entity-type' => $this->entityType->getLowercaseLabel()]),
+        ],
         'colspan' => count($table['#header']),
-      );
+      ];
       $build[$entity_type] = $table;
     }
     return $build;
diff --git a/core/modules/field_ui/src/FieldConfigListBuilder.php b/core/modules/field_ui/src/FieldConfigListBuilder.php
index c8739da..7a6960e 100644
--- a/core/modules/field_ui/src/FieldConfigListBuilder.php
+++ b/core/modules/field_ui/src/FieldConfigListBuilder.php
@@ -93,7 +93,7 @@ public function load() {
 
     // Sort the entities using the entity class's sort() method.
     // See \Drupal\Core\Config\Entity\ConfigEntityBase::sort().
-    uasort($entities, array($this->entityType->getClass(), 'sort'));
+    uasort($entities, [$this->entityType->getClass(), 'sort']);
     return $entities;
   }
 
@@ -101,14 +101,14 @@ public function load() {
    * {@inheritdoc}
    */
   public function buildHeader() {
-    $header = array(
+    $header = [
       'label' => $this->t('Label'),
-      'field_name' => array(
+      'field_name' => [
         'data' => $this->t('Machine name'),
-        'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-      ),
+        'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+      ],
       'field_type' => $this->t('Field type'),
-    );
+    ];
     return $header + parent::buildHeader();
   }
 
@@ -118,31 +118,31 @@ public function buildHeader() {
   public function buildRow(EntityInterface $field_config) {
     /** @var \Drupal\field\FieldConfigInterface $field_config */
     $field_storage = $field_config->getFieldStorageDefinition();
-    $route_parameters = array(
+    $route_parameters = [
       'field_config' => $field_config->id(),
-    ) + FieldUI::getRouteBundleParameter($this->entityManager->getDefinition($this->targetEntityTypeId), $this->targetBundle);
+    ] + FieldUI::getRouteBundleParameter($this->entityManager->getDefinition($this->targetEntityTypeId), $this->targetBundle);
 
-    $row = array(
+    $row = [
       'id' => Html::getClass($field_config->getName()),
-      'data' => array(
+      'data' => [
         'label' => $field_config->getLabel(),
         'field_name' => $field_config->getName(),
-        'field_type' => array(
-          'data' => array(
+        'field_type' => [
+          'data' => [
             '#type' => 'link',
             '#title' => $this->fieldTypeManager->getDefinitions()[$field_storage->getType()]['label'],
             '#url' => Url::fromRoute("entity.field_config.{$this->targetEntityTypeId}_storage_edit_form", $route_parameters),
-            '#options' => array('attributes' => array('title' => $this->t('Edit field settings.'))),
-          ),
-        ),
-      ),
-    );
+            '#options' => ['attributes' => ['title' => $this->t('Edit field settings.')]],
+          ],
+        ],
+      ],
+    ];
 
     // Add the operations.
     $row['data'] = $row['data'] + parent::buildRow($field_config);
 
     if ($field_storage->isLocked()) {
-      $row['data']['operations'] = array('data' => array('#markup' => $this->t('Locked')));
+      $row['data']['operations'] = ['data' => ['#markup' => $this->t('Locked')]];
       $row['class'][] = 'menu-disabled';
     }
 
@@ -157,26 +157,26 @@ public function getDefaultOperations(EntityInterface $entity) {
     $operations = parent::getDefaultOperations($entity);
 
     if ($entity->access('update') && $entity->hasLinkTemplate("{$entity->getTargetEntityTypeId()}-field-edit-form")) {
-      $operations['edit'] = array(
+      $operations['edit'] = [
         'title' => $this->t('Edit'),
         'weight' => 10,
         'url' => $entity->urlInfo("{$entity->getTargetEntityTypeId()}-field-edit-form"),
-      );
+      ];
     }
     if ($entity->access('delete') && $entity->hasLinkTemplate("{$entity->getTargetEntityTypeId()}-field-delete-form")) {
-      $operations['delete'] = array(
+      $operations['delete'] = [
         'title' => $this->t('Delete'),
         'weight' => 100,
         'url' => $entity->urlInfo("{$entity->getTargetEntityTypeId()}-field-delete-form"),
-      );
+      ];
     }
 
-    $operations['storage-settings'] = array(
+    $operations['storage-settings'] = [
       'title' => $this->t('Storage settings'),
       'weight' => 20,
-      'attributes' => array('title' => $this->t('Edit storage settings.')),
+      'attributes' => ['title' => $this->t('Edit storage settings.')],
       'url' => $entity->urlInfo("{$entity->getTargetEntityTypeId()}-storage-edit-form"),
-    );
+    ];
     $operations['edit']['attributes']['title'] = $this->t('Edit field settings.');
     $operations['delete']['attributes']['title'] = $this->t('Delete field.');
 
diff --git a/core/modules/field_ui/src/FieldStorageConfigListBuilder.php b/core/modules/field_ui/src/FieldStorageConfigListBuilder.php
index e39954c..f82bd9d 100644
--- a/core/modules/field_ui/src/FieldStorageConfigListBuilder.php
+++ b/core/modules/field_ui/src/FieldStorageConfigListBuilder.php
@@ -82,10 +82,10 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
    */
   public function buildHeader() {
     $header['id'] = $this->t('Field name');
-    $header['type'] = array(
+    $header['type'] = [
       'data' => $this->t('Field type'),
-      'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-    );
+      'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+    ];
     $header['usage'] = $this->t('Used in');
     return $header;
   }
@@ -95,17 +95,17 @@ public function buildHeader() {
    */
   public function buildRow(EntityInterface $field_storage) {
     if ($field_storage->isLocked()) {
-      $row['class'] = array('menu-disabled');
-      $row['data']['id'] = $this->t('@field_name (Locked)', array('@field_name' => $field_storage->getName()));
+      $row['class'] = ['menu-disabled'];
+      $row['data']['id'] = $this->t('@field_name (Locked)', ['@field_name' => $field_storage->getName()]);
     }
     else {
       $row['data']['id'] = $field_storage->getName();
     }
 
     $field_type = $this->fieldTypes[$field_storage->getType()];
-    $row['data']['type'] = $this->t('@type (module: @module)', array('@type' => $field_type['label'], '@module' => $field_type['provider']));
+    $row['data']['type'] = $this->t('@type (module: @module)', ['@type' => $field_type['label'], '@module' => $field_type['provider']]);
 
-    $usage = array();
+    $usage = [];
     foreach ($field_storage->getBundles() as $bundle) {
       $entity_type_id = $field_storage->getTargetEntityTypeId();
       if ($route_info = FieldUI::getOverviewRouteInfo($entity_type_id, $bundle)) {
diff --git a/core/modules/field_ui/src/FieldUI.php b/core/modules/field_ui/src/FieldUI.php
index b341694..b9351a4 100644
--- a/core/modules/field_ui/src/FieldUI.php
+++ b/core/modules/field_ui/src/FieldUI.php
@@ -47,9 +47,9 @@ public static function getNextDestination(array $destinations) {
     $next_destination = array_shift($destinations);
     if (is_array($next_destination)) {
       $next_destination['options']['query']['destinations'] = $destinations;
-      $next_destination += array(
-        'route_parameters' => array(),
-      );
+      $next_destination += [
+        'route_parameters' => [],
+      ];
       $next_destination = Url::fromRoute($next_destination['route_name'], $next_destination['route_parameters'], $next_destination['options']);
     }
     else {
@@ -77,7 +77,7 @@ public static function getNextDestination(array $destinations) {
    */
   public static function getRouteBundleParameter(EntityTypeInterface $entity_type, $bundle) {
     $bundle_parameter_key = $entity_type->getBundleEntityType() ?: 'bundle';
-    return array($bundle_parameter_key => $bundle);
+    return [$bundle_parameter_key => $bundle];
   }
 
 }
diff --git a/core/modules/field_ui/src/Form/EntityDisplayFormBase.php b/core/modules/field_ui/src/Form/EntityDisplayFormBase.php
index 8908f65..42a4e81 100644
--- a/core/modules/field_ui/src/Form/EntityDisplayFormBase.php
+++ b/core/modules/field_ui/src/Form/EntityDisplayFormBase.php
@@ -90,17 +90,17 @@ public function getEntityFromRouteMatch(RouteMatchInterface $route_match, $entit
    *   @endcode
    */
   public function getRegions() {
-    return array(
-      'content' => array(
+    return [
+      'content' => [
         'title' => $this->t('Content'),
         'invisible' => TRUE,
         'message' => $this->t('No field is displayed.')
-      ),
-      'hidden' => array(
-        'title' => $this->t('Disabled', array(), array('context' => 'Plural')),
+      ],
+      'hidden' => [
+        'title' => $this->t('Disabled', [], ['context' => 'Plural']),
         'message' => $this->t('No field is hidden.')
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -110,7 +110,7 @@ public function getRegions() {
    *   An array containing the region options.
    */
   public function getRegionOptions() {
-    $options = array();
+    $options = [];
     foreach ($this->getRegions() as $region => $data) {
       $options[$region] = $data['title'];
     }
@@ -139,48 +139,48 @@ public function form(array $form, FormStateInterface $form_state) {
     $field_definitions = $this->getFieldDefinitions();
     $extra_fields = $this->getExtraFields();
 
-    $form += array(
+    $form += [
       '#entity_type' => $this->entity->getTargetEntityTypeId(),
       '#bundle' => $this->entity->getTargetBundle(),
       '#fields' => array_keys($field_definitions),
       '#extra' => array_keys($extra_fields),
-    );
+    ];
 
     if (empty($field_definitions) && empty($extra_fields) && $route_info = FieldUI::getOverviewRouteInfo($this->entity->getTargetEntityTypeId(), $this->entity->getTargetBundle())) {
-      drupal_set_message($this->t('There are no fields yet added. You can add new fields on the <a href=":link">Manage fields</a> page.', array(':link' => $route_info->toString())), 'warning');
+      drupal_set_message($this->t('There are no fields yet added. You can add new fields on the <a href=":link">Manage fields</a> page.', [':link' => $route_info->toString()]), 'warning');
       return $form;
     }
 
-    $table = array(
+    $table = [
       '#type' => 'field_ui_table',
       '#header' => $this->getTableHeader(),
       '#regions' => $this->getRegions(),
-      '#attributes' => array(
-        'class' => array('field-ui-overview'),
+      '#attributes' => [
+        'class' => ['field-ui-overview'],
         'id' => 'field-display-overview',
-      ),
-      '#tabledrag' => array(
-        array(
+      ],
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'field-weight',
-        ),
-        array(
+        ],
+        [
           'action' => 'match',
           'relationship' => 'parent',
           'group' => 'field-parent',
           'subgroup' => 'field-parent',
           'source' => 'field-name',
-        ),
-        array(
+        ],
+        [
           'action' => 'match',
           'relationship' => 'parent',
           'group' => 'field-region',
           'subgroup' => 'field-region',
           'source' => 'field-name',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // Field rows.
     foreach ($field_definitions as $field_name => $field_definition) {
@@ -201,21 +201,21 @@ public function form(array $form, FormStateInterface $form_state) {
       // Unset default option.
       unset($display_mode_options['default']);
       if ($display_mode_options) {
-        $form['modes'] = array(
+        $form['modes'] = [
           '#type' => 'details',
           '#title' => $this->t('Custom display settings'),
-        );
+        ];
         // Prepare default values for the 'Custom display settings' checkboxes.
-        $default = array();
+        $default = [];
         if ($enabled_displays = array_filter($this->getDisplayStatuses())) {
           $default = array_keys(array_intersect_key($display_mode_options, $enabled_displays));
         }
-        $form['modes']['display_modes_custom'] = array(
+        $form['modes']['display_modes_custom'] = [
           '#type' => 'checkboxes',
           '#title' => $this->t('Use custom display settings for the following @display_context modes', ['@display_context' => $this->displayContext]),
           '#options' => $display_mode_options,
           '#default_value' => $default,
-        );
+        ];
         // Provide link to manage display modes.
         $form['modes']['display_modes_link'] = $this->getDisplayModesLink();
       }
@@ -227,29 +227,29 @@ public function form(array $form, FormStateInterface $form_state) {
     // the selects, but triggered by the client-side script through a hidden
     // #ajax 'Refresh' button. A hidden 'refresh_rows' input tracks the name of
     // affected rows.
-    $form['refresh_rows'] = array('#type' => 'hidden');
-    $form['refresh'] = array(
+    $form['refresh_rows'] = ['#type' => 'hidden'];
+    $form['refresh'] = [
       '#type' => 'submit',
       '#value' => $this->t('Refresh'),
       '#op' => 'refresh_table',
-      '#submit' => array('::multistepSubmit'),
-      '#ajax' => array(
+      '#submit' => ['::multistepSubmit'],
+      '#ajax' => [
         'callback' => '::multistepAjax',
         'wrapper' => 'field-display-overview-wrapper',
         'effect' => 'fade',
         // The button stays hidden, so we hide the Ajax spinner too. Ad-hoc
         // spinners will be added manually by the client-side script.
         'progress' => 'none',
-      ),
-      '#attributes' => array('class' => array('visually-hidden'))
-    );
+      ],
+      '#attributes' => ['class' => ['visually-hidden']]
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#button_type' => 'primary',
       '#value' => $this->t('Save'),
-    );
+    ];
 
     $form['#attached']['library'][] = 'field_ui/drupal.field_ui';
 
@@ -281,82 +281,82 @@ protected function buildFieldRow(FieldDefinitionInterface $field_definition, arr
     }
 
     $regions = array_keys($this->getRegions());
-    $field_row = array(
-      '#attributes' => array('class' => array('draggable', 'tabledrag-leaf')),
+    $field_row = [
+      '#attributes' => ['class' => ['draggable', 'tabledrag-leaf']],
       '#row_type' => 'field',
-      '#region_callback' => array($this, 'getRowRegion'),
-      '#js_settings' => array(
+      '#region_callback' => [$this, 'getRowRegion'],
+      '#js_settings' => [
         'rowHandler' => 'field',
         'defaultPlugin' => $this->getDefaultPlugin($field_definition->getType()),
-      ),
-      'human_name' => array(
+      ],
+      'human_name' => [
         '#plain_text' => $label,
-      ),
-      'weight' => array(
+      ],
+      'weight' => [
         '#type' => 'textfield',
-        '#title' => $this->t('Weight for @title', array('@title' => $label)),
+        '#title' => $this->t('Weight for @title', ['@title' => $label]),
         '#title_display' => 'invisible',
         '#default_value' => $display_options ? $display_options['weight'] : '0',
         '#size' => 3,
-        '#attributes' => array('class' => array('field-weight')),
-      ),
-      'parent_wrapper' => array(
-        'parent' => array(
+        '#attributes' => ['class' => ['field-weight']],
+      ],
+      'parent_wrapper' => [
+        'parent' => [
           '#type' => 'select',
-          '#title' => $this->t('Label display for @title', array('@title' => $label)),
+          '#title' => $this->t('Label display for @title', ['@title' => $label]),
           '#title_display' => 'invisible',
           '#options' => array_combine($regions, $regions),
           '#empty_value' => '',
-          '#attributes' => array('class' => array('js-field-parent', 'field-parent')),
-          '#parents' => array('fields', $field_name, 'parent'),
-        ),
-        'hidden_name' => array(
+          '#attributes' => ['class' => ['js-field-parent', 'field-parent']],
+          '#parents' => ['fields', $field_name, 'parent'],
+        ],
+        'hidden_name' => [
           '#type' => 'hidden',
           '#default_value' => $field_name,
-          '#attributes' => array('class' => array('field-name')),
-        ),
-      ),
-      'region' => array(
+          '#attributes' => ['class' => ['field-name']],
+        ],
+      ],
+      'region' => [
         '#type' => 'select',
-        '#title' => $this->t('Region for @title', array('@title' => $label)),
+        '#title' => $this->t('Region for @title', ['@title' => $label]),
         '#title_display' => 'invisible',
         '#options' => $this->getRegionOptions(),
         '#default_value' => $display_options ? $display_options['region'] : 'hidden',
-        '#attributes' => array('class' => array('field-region')),
-      ),
-    );
+        '#attributes' => ['class' => ['field-region']],
+      ],
+    ];
 
-    $field_row['plugin'] = array(
-      'type' => array(
+    $field_row['plugin'] = [
+      'type' => [
         '#type' => 'select',
-        '#title' => $this->t('Plugin for @title', array('@title' => $label)),
+        '#title' => $this->t('Plugin for @title', ['@title' => $label]),
         '#title_display' => 'invisible',
         '#options' => $this->getApplicablePluginOptions($field_definition),
         '#default_value' => $display_options ? $display_options['type'] : 'hidden',
-        '#parents' => array('fields', $field_name, 'type'),
-        '#attributes' => array('class' => array('field-plugin-type')),
-      ),
-      'settings_edit_form' => array(),
-    );
+        '#parents' => ['fields', $field_name, 'type'],
+        '#attributes' => ['class' => ['field-plugin-type']],
+      ],
+      'settings_edit_form' => [],
+    ];
 
     // Get the corresponding plugin object.
     $plugin = $this->entity->getRenderer($field_name);
 
     // Base button element for the various plugin settings actions.
-    $base_button = array(
-      '#submit' => array('::multistepSubmit'),
-      '#ajax' => array(
+    $base_button = [
+      '#submit' => ['::multistepSubmit'],
+      '#ajax' => [
         'callback' => '::multistepAjax',
         'wrapper' => 'field-display-overview-wrapper',
         'effect' => 'fade',
-      ),
+      ],
       '#field_name' => $field_name,
-    );
+    ];
 
     if ($form_state->get('plugin_settings_edit') == $field_name) {
       // We are currently editing this field's plugin settings. Display the
       // settings form and submit buttons.
-      $field_row['plugin']['settings_edit_form'] = array();
+      $field_row['plugin']['settings_edit_form'] = [];
 
       if ($plugin) {
         // Generate the settings form and allow other modules to alter it.
@@ -364,43 +364,43 @@ protected function buildFieldRow(FieldDefinitionInterface $field_definition, arr
         $third_party_settings_form = $this->thirdPartySettingsForm($plugin, $field_definition, $form, $form_state);
 
         if ($settings_form || $third_party_settings_form) {
-          $field_row['plugin']['#cell_attributes'] = array('colspan' => 3);
-          $field_row['plugin']['settings_edit_form'] = array(
+          $field_row['plugin']['#cell_attributes'] = ['colspan' => 3];
+          $field_row['plugin']['settings_edit_form'] = [
             '#type' => 'container',
-            '#attributes' => array('class' => array('field-plugin-settings-edit-form')),
-            '#parents' => array('fields', $field_name, 'settings_edit_form'),
-            'label' => array(
+            '#attributes' => ['class' => ['field-plugin-settings-edit-form']],
+            '#parents' => ['fields', $field_name, 'settings_edit_form'],
+            'label' => [
               '#markup' => $this->t('Plugin settings'),
-            ),
+            ],
             'settings' => $settings_form,
             'third_party_settings' => $third_party_settings_form,
-            'actions' => array(
+            'actions' => [
               '#type' => 'actions',
-              'save_settings' => $base_button + array(
+              'save_settings' => $base_button + [
                 '#type' => 'submit',
                 '#button_type' => 'primary',
                 '#name' => $field_name . '_plugin_settings_update',
                 '#value' => $this->t('Update'),
                 '#op' => 'update',
-              ),
-              'cancel_settings' => $base_button + array(
+              ],
+              'cancel_settings' => $base_button + [
                 '#type' => 'submit',
                 '#name' => $field_name . '_plugin_settings_cancel',
                 '#value' => $this->t('Cancel'),
                 '#op' => 'cancel',
                 // Do not check errors for the 'Cancel' button, but make sure we
                 // get the value of the 'plugin type' select.
-                '#limit_validation_errors' => array(array('fields', $field_name, 'type')),
-              ),
-            ),
-          );
+                '#limit_validation_errors' => [['fields', $field_name, 'type']],
+              ],
+            ],
+          ];
           $field_row['#attributes']['class'][] = 'field-plugin-settings-editing';
         }
       }
     }
     else {
-      $field_row['settings_summary'] = array();
-      $field_row['settings_edit'] = array();
+      $field_row['settings_summary'] = [];
+      $field_row['settings_edit'] = [];
 
       if ($plugin) {
         // Display a summary of the current plugin settings, and (if the
@@ -411,30 +411,30 @@ protected function buildFieldRow(FieldDefinitionInterface $field_definition, arr
         $this->alterSettingsSummary($summary, $plugin, $field_definition);
 
         if (!empty($summary)) {
-          $field_row['settings_summary'] = array(
+          $field_row['settings_summary'] = [
             '#type' => 'inline_template',
             '#template' => '<div class="field-plugin-summary">{{ summary|safe_join("<br />") }}</div>',
-            '#context' => array('summary' => $summary),
-            '#cell_attributes' => array('class' => array('field-plugin-summary-cell')),
-          );
+            '#context' => ['summary' => $summary],
+            '#cell_attributes' => ['class' => ['field-plugin-summary-cell']],
+          ];
         }
 
         // Check selected plugin settings to display edit link or not.
         $settings_form = $plugin->settingsForm($form, $form_state);
         $third_party_settings_form = $this->thirdPartySettingsForm($plugin, $field_definition, $form, $form_state);
         if (!empty($settings_form) || !empty($third_party_settings_form)) {
-          $field_row['settings_edit'] = $base_button + array(
+          $field_row['settings_edit'] = $base_button + [
             '#type' => 'image_button',
             '#name' => $field_name . '_settings_edit',
             '#src' => 'core/misc/icons/787878/cog.svg',
-            '#attributes' => array('class' => array('field-plugin-settings-edit'), 'alt' => $this->t('Edit')),
+            '#attributes' => ['class' => ['field-plugin-settings-edit'], 'alt' => $this->t('Edit')],
             '#op' => 'edit',
             // Do not check errors for the 'Edit' button, but make sure we get
             // the value of the 'plugin type' select.
-            '#limit_validation_errors' => array(array('fields', $field_name, 'type')),
+            '#limit_validation_errors' => [['fields', $field_name, 'type']],
             '#prefix' => '<div class="field-plugin-settings-edit-wrapper">',
             '#suffix' => '</div>',
-          );
+          ];
         }
       }
     }
@@ -457,50 +457,50 @@ protected function buildExtraFieldRow($field_id, $extra_field) {
     $display_options = $this->entity->getComponent($field_id);
 
     $regions = array_keys($this->getRegions());
-    $extra_field_row = array(
-      '#attributes' => array('class' => array('draggable', 'tabledrag-leaf')),
+    $extra_field_row = [
+      '#attributes' => ['class' => ['draggable', 'tabledrag-leaf']],
       '#row_type' => 'extra_field',
-      '#region_callback' => array($this, 'getRowRegion'),
-      '#js_settings' => array('rowHandler' => 'field'),
-      'human_name' => array(
+      '#region_callback' => [$this, 'getRowRegion'],
+      '#js_settings' => ['rowHandler' => 'field'],
+      'human_name' => [
         '#markup' => $extra_field['label'],
-      ),
-      'weight' => array(
+      ],
+      'weight' => [
         '#type' => 'textfield',
-        '#title' => $this->t('Weight for @title', array('@title' => $extra_field['label'])),
+        '#title' => $this->t('Weight for @title', ['@title' => $extra_field['label']]),
         '#title_display' => 'invisible',
         '#default_value' => $display_options ? $display_options['weight'] : 0,
         '#size' => 3,
-        '#attributes' => array('class' => array('field-weight')),
-      ),
-      'parent_wrapper' => array(
-        'parent' => array(
+        '#attributes' => ['class' => ['field-weight']],
+      ],
+      'parent_wrapper' => [
+        'parent' => [
           '#type' => 'select',
-          '#title' => $this->t('Parents for @title', array('@title' => $extra_field['label'])),
+          '#title' => $this->t('Parents for @title', ['@title' => $extra_field['label']]),
           '#title_display' => 'invisible',
           '#options' => array_combine($regions, $regions),
           '#empty_value' => '',
-          '#attributes' => array('class' => array('js-field-parent', 'field-parent')),
-          '#parents' => array('fields', $field_id, 'parent'),
-        ),
-        'hidden_name' => array(
+          '#attributes' => ['class' => ['js-field-parent', 'field-parent']],
+          '#parents' => ['fields', $field_id, 'parent'],
+        ],
+        'hidden_name' => [
           '#type' => 'hidden',
           '#default_value' => $field_id,
-          '#attributes' => array('class' => array('field-name')),
-        ),
-      ),
-      'region' => array(
+          '#attributes' => ['class' => ['field-name']],
+        ],
+      ],
+      'region' => [
         '#type' => 'select',
-        '#title' => $this->t('Region for @title', array('@title' => $extra_field['label'])),
+        '#title' => $this->t('Region for @title', ['@title' => $extra_field['label']]),
         '#title_display' => 'invisible',
         '#options' => $this->getRegionOptions(),
         '#default_value' => $display_options ? $display_options['region'] : 'hidden',
-        '#attributes' => array('class' => array('field-region')),
-      ),
-      'plugin' => array(),
-      'settings_summary' => array(),
-      'settings_edit' => array(),
-    );
+        '#attributes' => ['class' => ['field-region']],
+      ],
+      'plugin' => [],
+      'settings_summary' => [],
+      'settings_edit' => [],
+    ];
 
     return $extra_field_row;
   }
@@ -524,7 +524,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $display_modes = $this->getDisplayModes();
       $current_statuses = $this->getDisplayStatuses();
 
-      $statuses = array();
+      $statuses = [];
       foreach ($form_values['display_modes_custom'] as $mode => $value) {
         if (!empty($value) && empty($current_statuses[$mode])) {
           // If no display exists for the newly enabled view mode, initialize
@@ -595,10 +595,10 @@ protected function copyFormValuesToEntity(EntityInterface $entity, array $form,
         $entity->removeComponent($name);
       }
       else {
-        $entity->setComponent($name, array(
+        $entity->setComponent($name, [
           'weight' => $form_values['fields'][$name]['weight'],
           'region' => $form_values['fields'][$name]['region'],
-        ));
+        ]);
       }
     }
   }
@@ -655,19 +655,19 @@ public function multistepAjax($form, FormStateInterface $form_state) {
     // Pick the elements that need to receive the ajax-new-content effect.
     switch ($op) {
       case 'edit':
-        $updated_rows = array($trigger['#field_name']);
-        $updated_columns = array('plugin');
+        $updated_rows = [$trigger['#field_name']];
+        $updated_columns = ['plugin'];
         break;
 
       case 'update':
       case 'cancel':
-        $updated_rows = array($trigger['#field_name']);
-        $updated_columns = array('plugin', 'settings_summary', 'settings_edit');
+        $updated_rows = [$trigger['#field_name']];
+        $updated_columns = ['plugin', 'settings_summary', 'settings_edit'];
         break;
 
       case 'refresh_table':
         $updated_rows = array_values(explode(' ', $form_state->getValue('refresh_rows')));
-        $updated_columns = array('settings_summary', 'settings_edit');
+        $updated_columns = ['settings_summary', 'settings_edit'];
         break;
     }
 
@@ -727,7 +727,7 @@ public function reduceOrder($array, $a) {
   protected function getExtraFields() {
     $context = $this->displayContext == 'view' ? 'display' : $this->displayContext;
     $extra_fields = $this->entityManager->getExtraFields($this->entity->getTargetEntityTypeId(), $this->entity->getTargetBundle());
-    return isset($extra_fields[$context]) ? $extra_fields[$context] : array();
+    return isset($extra_fields[$context]) ? $extra_fields[$context] : [];
   }
 
   /**
@@ -756,7 +756,7 @@ protected function getExtraFields() {
    */
   protected function getApplicablePluginOptions(FieldDefinitionInterface $field_definition) {
     $options = $this->pluginManager->getOptions($field_definition->getType());
-    $applicable_options = array();
+    $applicable_options = [];
     foreach ($options as $option => $label) {
       $plugin_class = DefaultFactory::getPluginClass($option, $this->pluginManager->getDefinition($option));
       if ($plugin_class::isApplicable($field_definition)) {
@@ -825,7 +825,7 @@ public function getRowRegion($row) {
    *   An array holding entity displays or entity form displays.
    */
   protected function getDisplays() {
-    $load_ids = array();
+    $load_ids = [];
     $display_entity_type = $this->entity->getEntityTypeId();
     $entity_type = $this->entityManager->getDefinition($display_entity_type);
     $config_prefix = $entity_type->getConfigPrefix();
@@ -847,7 +847,7 @@ protected function getDisplays() {
    *   An array of form or view mode statuses.
    */
   protected function getDisplayStatuses() {
-    $display_statuses = array();
+    $display_statuses = [];
     $displays = $this->getDisplays();
     foreach ($displays as $display) {
       $display_statuses[$display->get('mode')] = $display->status();
diff --git a/core/modules/field_ui/src/Form/EntityDisplayModeAddForm.php b/core/modules/field_ui/src/Form/EntityDisplayModeAddForm.php
index 141af84..ed1c5fe 100644
--- a/core/modules/field_ui/src/Form/EntityDisplayModeAddForm.php
+++ b/core/modules/field_ui/src/Form/EntityDisplayModeAddForm.php
@@ -26,7 +26,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
     // Change replace_pattern to avoid undesired dots.
     $form['id']['#machine_name']['replace_pattern'] = '[^a-z0-9_]+';
     $definition = $this->entityManager->getDefinition($this->targetEntityTypeId);
-    $form['#title'] = $this->t('Add new %label @entity-type', array('%label' => $definition->getLabel(), '@entity-type' => $this->entityType->getLowercaseLabel()));
+    $form['#title'] = $this->t('Add new %label @entity-type', ['%label' => $definition->getLabel(), '@entity-type' => $this->entityType->getLowercaseLabel()]);
     return $form;
   }
 
diff --git a/core/modules/field_ui/src/Form/EntityDisplayModeDeleteForm.php b/core/modules/field_ui/src/Form/EntityDisplayModeDeleteForm.php
index fa22a37..f7d8804 100644
--- a/core/modules/field_ui/src/Form/EntityDisplayModeDeleteForm.php
+++ b/core/modules/field_ui/src/Form/EntityDisplayModeDeleteForm.php
@@ -14,7 +14,7 @@ class EntityDisplayModeDeleteForm extends EntityDeleteForm {
    */
   public function getDescription() {
     $entity_type = $this->entity->getEntityType();
-    return $this->t('Deleting a @entity-type will cause any output still requesting to use that @entity-type to use the default display settings.', array('@entity-type' => $entity_type->getLowercaseLabel()));
+    return $this->t('Deleting a @entity-type will cause any output still requesting to use that @entity-type to use the default display settings.', ['@entity-type' => $entity_type->getLowercaseLabel()]);
   }
 
 }
diff --git a/core/modules/field_ui/src/Form/EntityDisplayModeFormBase.php b/core/modules/field_ui/src/Form/EntityDisplayModeFormBase.php
index 7a56641..72a8a19 100644
--- a/core/modules/field_ui/src/Form/EntityDisplayModeFormBase.php
+++ b/core/modules/field_ui/src/Form/EntityDisplayModeFormBase.php
@@ -29,24 +29,24 @@ protected function init(FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function form(array $form, FormStateInterface $form_state) {
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Name'),
       '#maxlength' => 100,
       '#default_value' => $this->entity->label(),
-    );
+    ];
 
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'machine_name',
       '#description' => $this->t('A unique machine-readable name. Can only contain lowercase letters, numbers, and underscores.'),
       '#disabled' => !$this->entity->isNew(),
       '#default_value' => $this->entity->id(),
       '#field_prefix' => $this->entity->isNew() ? $this->entity->getTargetType() . '.' : '',
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
         'replace_pattern' => '[^a-z0-9_.]+',
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
@@ -78,7 +78,7 @@ public function exists($entity_id, array $element) {
    * {@inheritdoc}
    */
   public function save(array $form, FormStateInterface $form_state) {
-    drupal_set_message($this->t('Saved the %label @entity-type.', array('%label' => $this->entity->label(), '@entity-type' => $this->entityType->getLowercaseLabel())));
+    drupal_set_message($this->t('Saved the %label @entity-type.', ['%label' => $this->entity->label(), '@entity-type' => $this->entityType->getLowercaseLabel()]));
     $this->entity->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
     $form_state->setRedirectUrl($this->entity->urlInfo('collection'));
diff --git a/core/modules/field_ui/src/Form/EntityFormDisplayEditForm.php b/core/modules/field_ui/src/Form/EntityFormDisplayEditForm.php
index af8e2ed..2c3e360 100644
--- a/core/modules/field_ui/src/Form/EntityFormDisplayEditForm.php
+++ b/core/modules/field_ui/src/Form/EntityFormDisplayEditForm.php
@@ -38,7 +38,7 @@ protected function buildFieldRow(FieldDefinitionInterface $field_definition, arr
     $field_name = $field_definition->getName();
 
     // Update the (invisible) title of the 'plugin' column.
-    $field_row['plugin']['#title'] = $this->t('Formatter for @title', array('@title' => $field_definition->getLabel()));
+    $field_row['plugin']['#title'] = $this->t('Formatter for @title', ['@title' => $field_definition->getLabel()]);
     if (!empty($field_row['plugin']['settings_edit_form']) && ($plugin = $this->entity->getRenderer($field_name))) {
       $plugin_type_info = $plugin->getPluginDefinition();
       $field_row['plugin']['settings_edit_form']['label']['#markup'] = $this->t('Widget settings:') . ' <span class="plugin-name">' . $plugin_type_info['label'] . '</span>';
@@ -90,13 +90,13 @@ protected function getDisplayModesLink() {
    * {@inheritdoc}
    */
   protected function getTableHeader() {
-    return array(
+    return [
       $this->t('Field'),
       $this->t('Weight'),
       $this->t('Parent'),
       $this->t('Region'),
-      array('data' => $this->t('Widget'), 'colspan' => 3),
-    );
+      ['data' => $this->t('Widget'), 'colspan' => 3],
+    ];
   }
 
   /**
@@ -113,17 +113,17 @@ protected function getOverviewUrl($mode) {
    * {@inheritdoc}
    */
   protected function thirdPartySettingsForm(PluginSettingsInterface $plugin, FieldDefinitionInterface $field_definition, array $form, FormStateInterface $form_state) {
-    $settings_form = array();
+    $settings_form = [];
     // Invoke hook_field_widget_third_party_settings_form(), keying resulting
     // subforms by module name.
     foreach ($this->moduleHandler->getImplementations('field_widget_third_party_settings_form') as $module) {
-      $settings_form[$module] = $this->moduleHandler->invoke($module, 'field_widget_third_party_settings_form', array(
+      $settings_form[$module] = $this->moduleHandler->invoke($module, 'field_widget_third_party_settings_form', [
         $plugin,
         $field_definition,
         $this->entity->getMode(),
         $form,
         $form_state,
-      ));
+      ]);
     }
     return $settings_form;
   }
@@ -132,11 +132,11 @@ protected function thirdPartySettingsForm(PluginSettingsInterface $plugin, Field
    * {@inheritdoc}
    */
   protected function alterSettingsSummary(array &$summary, PluginSettingsInterface $plugin, FieldDefinitionInterface $field_definition) {
-    $context = array(
+    $context = [
       'widget' => $plugin,
       'field_definition' => $field_definition,
       'form_mode' => $this->entity->getMode(),
-    );
+    ];
     $this->moduleHandler->alter('field_widget_settings_summary', $summary, $context);
   }
 
diff --git a/core/modules/field_ui/src/Form/EntityViewDisplayEditForm.php b/core/modules/field_ui/src/Form/EntityViewDisplayEditForm.php
index 174726f..c27f3d4 100644
--- a/core/modules/field_ui/src/Form/EntityViewDisplayEditForm.php
+++ b/core/modules/field_ui/src/Form/EntityViewDisplayEditForm.php
@@ -39,21 +39,21 @@ protected function buildFieldRow(FieldDefinitionInterface $field_definition, arr
     $display_options = $this->entity->getComponent($field_name);
 
     // Insert the label column.
-    $label = array(
-      'label' => array(
+    $label = [
+      'label' => [
         '#type' => 'select',
-        '#title' => $this->t('Label display for @title', array('@title' => $field_definition->getLabel())),
+        '#title' => $this->t('Label display for @title', ['@title' => $field_definition->getLabel()]),
         '#title_display' => 'invisible',
         '#options' => $this->getFieldLabelOptions(),
         '#default_value' => $display_options ? $display_options['label'] : 'above',
-      ),
-    );
+      ],
+    ];
 
     $label_position = array_search('plugin', array_keys($field_row));
     $field_row = array_slice($field_row, 0, $label_position, TRUE) + $label + array_slice($field_row, $label_position, count($field_row) - 1, TRUE);
 
     // Update the (invisible) title of the 'plugin' column.
-    $field_row['plugin']['#title'] = $this->t('Formatter for @title', array('@title' => $field_definition->getLabel()));
+    $field_row['plugin']['#title'] = $this->t('Formatter for @title', ['@title' => $field_definition->getLabel()]);
     if (!empty($field_row['plugin']['settings_edit_form']) && ($plugin = $this->entity->getRenderer($field_name))) {
       $plugin_type_info = $plugin->getPluginDefinition();
       $field_row['plugin']['settings_edit_form']['label']['#markup'] = $this->t('Format settings:') . ' <span class="plugin-name">' . $plugin_type_info['label'] . '</span>';
@@ -69,11 +69,11 @@ protected function buildExtraFieldRow($field_id, $extra_field) {
     $extra_field_row = parent::buildExtraFieldRow($field_id, $extra_field);
 
     // Insert an empty placeholder for the label column.
-    $label = array(
-      'empty_cell' => array(
+    $label = [
+      'empty_cell' => [
         '#markup' => '&nbsp;'
-      )
-    );
+      ]
+    ];
     $label_position = array_search('plugin', array_keys($extra_field_row));
     $extra_field_row = array_slice($extra_field_row, 0, $label_position, TRUE) + $label + array_slice($extra_field_row, $label_position, count($extra_field_row) - 1, TRUE);
 
@@ -123,14 +123,14 @@ protected function getDisplayModesLink() {;
    * {@inheritdoc}
    */
   protected function getTableHeader() {
-    return array(
+    return [
       $this->t('Field'),
       $this->t('Weight'),
       $this->t('Parent'),
       $this->t('Region'),
       $this->t('Label'),
-      array('data' => $this->t('Format'), 'colspan' => 3),
-    );
+      ['data' => $this->t('Format'), 'colspan' => 3],
+    ];
   }
 
   /**
@@ -150,29 +150,29 @@ protected function getOverviewUrl($mode) {
    *   An array of visibility options.
    */
   protected function getFieldLabelOptions() {
-    return array(
+    return [
       'above' => $this->t('Above'),
       'inline' => $this->t('Inline'),
       'hidden' => '- ' . $this->t('Hidden') . ' -',
       'visually_hidden' => '- ' . $this->t('Visually Hidden') . ' -',
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   protected function thirdPartySettingsForm(PluginSettingsInterface $plugin, FieldDefinitionInterface $field_definition, array $form, FormStateInterface $form_state) {
-    $settings_form = array();
+    $settings_form = [];
     // Invoke hook_field_formatter_third_party_settings_form(), keying resulting
     // subforms by module name.
     foreach ($this->moduleHandler->getImplementations('field_formatter_third_party_settings_form') as $module) {
-      $settings_form[$module] = $this->moduleHandler->invoke($module, 'field_formatter_third_party_settings_form', array(
+      $settings_form[$module] = $this->moduleHandler->invoke($module, 'field_formatter_third_party_settings_form', [
         $plugin,
         $field_definition,
         $this->entity->getMode(),
         $form,
         $form_state,
-      ));
+      ]);
     }
     return $settings_form;
   }
@@ -181,11 +181,11 @@ protected function thirdPartySettingsForm(PluginSettingsInterface $plugin, Field
    * {@inheritdoc}
    */
   protected function alterSettingsSummary(array &$summary, PluginSettingsInterface $plugin, FieldDefinitionInterface $field_definition) {
-    $context = array(
+    $context = [
       'formatter' => $plugin,
       'field_definition' => $field_definition,
       'view_mode' => $this->entity->getMode(),
-    );
+    ];
     $this->moduleHandler->alter('field_formatter_settings_summary', $summary, $context);
   }
 
diff --git a/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php b/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
index f9c7755..6778231 100644
--- a/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
+++ b/core/modules/field_ui/src/Form/FieldConfigDeleteForm.php
@@ -96,10 +96,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
     if ($field_storage && !$field_storage->isLocked()) {
       $this->entity->delete();
-      drupal_set_message($this->t('The field %field has been deleted from the %type content type.', array('%field' => $this->entity->label(), '%type' => $bundle_label)));
+      drupal_set_message($this->t('The field %field has been deleted from the %type content type.', ['%field' => $this->entity->label(), '%type' => $bundle_label]));
     }
     else {
-      drupal_set_message($this->t('There was a problem removing the %field from the %type content type.', array('%field' => $this->entity->label(), '%type' => $bundle_label)), 'error');
+      drupal_set_message($this->t('There was a problem removing the %field from the %type content type.', ['%field' => $this->entity->label(), '%type' => $bundle_label]), 'error');
     }
 
     $form_state->setRedirectUrl($this->getCancelUrl());
diff --git a/core/modules/field_ui/src/Form/FieldConfigEditForm.php b/core/modules/field_ui/src/Form/FieldConfigEditForm.php
index ff6d157..2895479 100644
--- a/core/modules/field_ui/src/Form/FieldConfigEditForm.php
+++ b/core/modules/field_ui/src/Form/FieldConfigEditForm.php
@@ -33,75 +33,75 @@ public function form(array $form, FormStateInterface $form_state) {
     $field_storage = $this->entity->getFieldStorageDefinition();
     $bundles = $this->entityManager->getBundleInfo($this->entity->getTargetEntityTypeId());
 
-    $form_title = $this->t('%field settings for %bundle', array(
+    $form_title = $this->t('%field settings for %bundle', [
       '%field' => $this->entity->getLabel(),
       '%bundle' => $bundles[$this->entity->getTargetBundle()]['label'],
-    ));
+    ]);
     $form['#title'] = $form_title;
 
     if ($field_storage->isLocked()) {
-      $form['locked'] = array(
-        '#markup' => $this->t('The field %field is locked and cannot be edited.', array('%field' => $this->entity->getLabel())),
-      );
+      $form['locked'] = [
+        '#markup' => $this->t('The field %field is locked and cannot be edited.', ['%field' => $this->entity->getLabel()]),
+      ];
       return $form;
     }
 
     // Build the configurable field values.
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#default_value' => $this->entity->getLabel() ?: $field_storage->getName(),
       '#required' => TRUE,
       '#weight' => -20,
-    );
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Help text'),
       '#default_value' => $this->entity->getDescription(),
       '#rows' => 5,
-      '#description' => $this->t('Instructions to present to the user below this field on the editing form.<br />Allowed HTML tags: @tags', array('@tags' => FieldFilteredMarkup::displayAllowedTags())) . '<br />' . $this->t('This field supports tokens.'),
+      '#description' => $this->t('Instructions to present to the user below this field on the editing form.<br />Allowed HTML tags: @tags', ['@tags' => FieldFilteredMarkup::displayAllowedTags()]) . '<br />' . $this->t('This field supports tokens.'),
       '#weight' => -10,
-    );
+    ];
 
-    $form['required'] = array(
+    $form['required'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Required field'),
       '#default_value' => $this->entity->isRequired(),
       '#weight' => -5,
-    );
+    ];
 
     // Create an arbitrary entity object (used by the 'default value' widget).
-    $ids = (object) array(
+    $ids = (object) [
       'entity_type' => $this->entity->getTargetEntityTypeId(),
       'bundle' => $this->entity->getTargetBundle(),
       'entity_id' => NULL
-    );
+    ];
     $form['#entity'] = _field_create_entity_from_ids($ids);
     $items = $form['#entity']->get($this->entity->getName());
     $item = $items->first() ?: $items->appendItem();
 
     // Add field settings for the field type and a container for third party
     // settings that modules can add to via hook_form_FORM_ID_alter().
-    $form['settings'] = array(
+    $form['settings'] = [
       '#tree' => TRUE,
       '#weight' => 10,
-    );
+    ];
     $form['settings'] += $item->fieldSettingsForm($form, $form_state);
-    $form['third_party_settings'] = array(
+    $form['third_party_settings'] = [
       '#tree' => TRUE,
       '#weight' => 11,
-    );
+    ];
 
     // Add handling for default value.
     if ($element = $items->defaultValuesForm($form, $form_state)) {
-      $element = array_merge($element, array(
+      $element = array_merge($element, [
         '#type' => 'details',
         '#title' => $this->t('Default value'),
         '#open' => TRUE,
         '#tree' => TRUE,
         '#description' => $this->t('The default value for this field, used when creating new content.'),
-      ));
+      ]);
 
       $form['default_value'] = $element;
     }
@@ -128,15 +128,15 @@ protected function actions(array $form, FormStateInterface $form_state) {
         $query['destination'] = $this->getRequest()->query->get('destination');
         $url->setOption('query', $query);
       }
-      $actions['delete'] = array(
+      $actions['delete'] = [
         '#type' => 'link',
         '#title' => $this->t('Delete'),
         '#url' => $url,
         '#access' => $this->entity->access('delete'),
-        '#attributes' => array(
-          'class' => array('button', 'button--danger'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['button', 'button--danger'],
+        ],
+      ];
     }
 
     return $actions;
@@ -161,7 +161,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
 
     // Handle the default value.
-    $default_value = array();
+    $default_value = [];
     if (isset($form['default_value'])) {
       $items = $form['#entity']->get($this->entity->getName());
       $default_value = $items->defaultValuesFormSubmit($form['default_value'], $form, $form_state);
@@ -175,7 +175,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     $this->entity->save();
 
-    drupal_set_message($this->t('Saved %label configuration.', array('%label' => $this->entity->getLabel())));
+    drupal_set_message($this->t('Saved %label configuration.', ['%label' => $this->entity->getLabel()]));
 
     $request = $this->getRequest();
     if (($destinations = $request->query->get('destinations')) && $next_destination = FieldUI::getNextDestination($destinations)) {
diff --git a/core/modules/field_ui/src/Form/FieldStorageAddForm.php b/core/modules/field_ui/src/Form/FieldStorageAddForm.php
index 231fd63..5e5a842 100644
--- a/core/modules/field_ui/src/Form/FieldStorageAddForm.php
+++ b/core/modules/field_ui/src/Form/FieldStorageAddForm.php
@@ -101,65 +101,65 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
     $this->bundle = $form_state->get('bundle');
 
     // Gather valid field types.
-    $field_type_options = array();
+    $field_type_options = [];
     foreach ($this->fieldTypePluginManager->getGroupedDefinitions($this->fieldTypePluginManager->getUiDefinitions()) as $category => $field_types) {
       foreach ($field_types as $name => $field_type) {
         $field_type_options[$category][$name] = $field_type['label'];
       }
     }
 
-    $form['add'] = array(
+    $form['add'] = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('form--inline', 'clearfix')),
-    );
+      '#attributes' => ['class' => ['form--inline', 'clearfix']],
+    ];
 
-    $form['add']['new_storage_type'] = array(
+    $form['add']['new_storage_type'] = [
       '#type' => 'select',
       '#title' => $this->t('Add a new field'),
       '#options' => $field_type_options,
       '#empty_option' => $this->t('- Select a field type -'),
-    );
+    ];
 
     // Re-use existing field.
     if ($existing_field_storage_options = $this->getExistingFieldStorageOptions()) {
-      $form['add']['separator'] = array(
+      $form['add']['separator'] = [
         '#type' => 'item',
         '#markup' => $this->t('or'),
-      );
-      $form['add']['existing_storage_name'] = array(
+      ];
+      $form['add']['existing_storage_name'] = [
         '#type' => 'select',
         '#title' => $this->t('Re-use an existing field'),
         '#options' => $existing_field_storage_options,
         '#empty_option' => $this->t('- Select an existing field -'),
-      );
+      ];
 
       $form['#attached']['drupalSettings']['existingFieldLabels'] = $this->getExistingFieldLabels(array_keys($existing_field_storage_options));
     }
     else {
       // Provide a placeholder form element to simplify the validation code.
-      $form['add']['existing_storage_name'] = array(
+      $form['add']['existing_storage_name'] = [
         '#type' => 'value',
         '#value' => FALSE,
-      );
+      ];
     }
 
     // Field label and field_name.
-    $form['new_storage_wrapper'] = array(
+    $form['new_storage_wrapper'] = [
       '#type' => 'container',
-      '#states' => array(
-        '!visible' => array(
-          ':input[name="new_storage_type"]' => array('value' => ''),
-        ),
-      ),
-    );
-    $form['new_storage_wrapper']['label'] = array(
+      '#states' => [
+        '!visible' => [
+          ':input[name="new_storage_type"]' => ['value' => ''],
+        ],
+      ],
+    ];
+    $form['new_storage_wrapper']['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#size' => 15,
-    );
+    ];
 
     $field_prefix = $this->config('field_ui.settings')->get('field_prefix');
-    $form['new_storage_wrapper']['field_name'] = array(
+    $form['new_storage_wrapper']['field_name'] = [
       '#type' => 'machine_name',
       // This field should stay LTR even for RTL languages.
       '#field_prefix' => '<span dir="ltr">' . $field_prefix,
@@ -169,44 +169,44 @@ public function buildForm(array $form, FormStateInterface $form_state, $entity_t
       // Calculate characters depending on the length of the field prefix
       // setting. Maximum length is 32.
       '#maxlength' => FieldStorageConfig::NAME_MAX_LENGTH - strlen($field_prefix),
-      '#machine_name' => array(
-        'source' => array('new_storage_wrapper', 'label'),
-        'exists' => array($this, 'fieldNameExists'),
-      ),
+      '#machine_name' => [
+        'source' => ['new_storage_wrapper', 'label'],
+        'exists' => [$this, 'fieldNameExists'],
+      ],
       '#required' => FALSE,
-    );
+    ];
 
     // Provide a separate label element for the "Re-use existing field" case
     // and place it outside the $form['add'] wrapper because those elements
     // are displayed inline.
     if ($existing_field_storage_options) {
-      $form['existing_storage_label'] = array(
+      $form['existing_storage_label'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Label'),
         '#size' => 15,
-        '#states' => array(
-          '!visible' => array(
-            ':input[name="existing_storage_name"]' => array('value' => ''),
-          ),
-        ),
-      );
+        '#states' => [
+          '!visible' => [
+            ':input[name="existing_storage_name"]' => ['value' => ''],
+          ],
+        ],
+      ];
     }
 
     // Place the 'translatable' property as an explicit value so that contrib
     // modules can form_alter() the value for newly created fields. By default
     // we create field storage as translatable so it will be possible to enable
     // translation at field level.
-    $form['translatable'] = array(
+    $form['translatable'] = [
       '#type' => 'value',
       '#value' => TRUE,
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save and continue'),
       '#button_type' => 'primary',
-    );
+    ];
 
     $form['#attached']['library'][] = 'field_ui/drupal.field_ui';
 
@@ -290,7 +290,7 @@ protected function validateAddExisting(array $form, FormStateInterface $form_sta
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $error = FALSE;
     $values = $form_state->getValues();
-    $destinations = array();
+    $destinations = [];
     $entity_type = $this->entityManager->getDefinition($this->entityTypeId);
 
     // Create new field.
@@ -321,7 +321,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
         // Merge in preconfigured field storage options.
         if (isset($field_options['field_storage_config'])) {
-          foreach (array('cardinality', 'settings') as $key) {
+          foreach (['cardinality', 'settings'] as $key) {
             if (isset($field_options['field_storage_config'][$key])) {
               $field_storage_values[$key] = $field_options['field_storage_config'][$key];
             }
@@ -330,7 +330,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
         // Merge in preconfigured field options.
         if (isset($field_options['field_config'])) {
-          foreach (array('required', 'settings') as $key) {
+          foreach (['required', 'settings'] as $key) {
             if (isset($field_options['field_config'][$key])) {
               $field_values[$key] = $field_options['field_config'][$key];
             }
@@ -352,19 +352,19 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
         // Always show the field settings step, as the cardinality needs to be
         // configured for new fields.
-        $route_parameters = array(
+        $route_parameters = [
           'field_config' => $field->id(),
-        ) + FieldUI::getRouteBundleParameter($entity_type, $this->bundle);
-        $destinations[] = array('route_name' => "entity.field_config.{$this->entityTypeId}_storage_edit_form", 'route_parameters' => $route_parameters);
-        $destinations[] = array('route_name' => "entity.field_config.{$this->entityTypeId}_field_edit_form", 'route_parameters' => $route_parameters);
-        $destinations[] = array('route_name' => "entity.{$this->entityTypeId}.field_ui_fields", 'route_parameters' => $route_parameters);
+        ] + FieldUI::getRouteBundleParameter($entity_type, $this->bundle);
+        $destinations[] = ['route_name' => "entity.field_config.{$this->entityTypeId}_storage_edit_form", 'route_parameters' => $route_parameters];
+        $destinations[] = ['route_name' => "entity.field_config.{$this->entityTypeId}_field_edit_form", 'route_parameters' => $route_parameters];
+        $destinations[] = ['route_name' => "entity.{$this->entityTypeId}.field_ui_fields", 'route_parameters' => $route_parameters];
 
         // Store new field information for any additional submit handlers.
         $form_state->set(['fields_added', '_add_new_field'], $values['field_name']);
       }
       catch (\Exception $e) {
         $error = TRUE;
-        drupal_set_message($this->t('There was a problem creating field %label: @message', array('%label' => $values['label'], '@message' => $e->getMessage())), 'error');
+        drupal_set_message($this->t('There was a problem creating field %label: @message', ['%label' => $values['label'], '@message' => $e->getMessage()]), 'error');
       }
     }
 
@@ -373,29 +373,29 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $field_name = $values['existing_storage_name'];
 
       try {
-        $field = $this->entityManager->getStorage('field_config')->create(array(
+        $field = $this->entityManager->getStorage('field_config')->create([
           'field_name' => $field_name,
           'entity_type' => $this->entityTypeId,
           'bundle' => $this->bundle,
           'label' => $values['existing_storage_label'],
-        ));
+        ]);
         $field->save();
 
         $this->configureEntityFormDisplay($field_name);
         $this->configureEntityViewDisplay($field_name);
 
-        $route_parameters = array(
+        $route_parameters = [
           'field_config' => $field->id(),
-        ) + FieldUI::getRouteBundleParameter($entity_type, $this->bundle);
-        $destinations[] = array('route_name' => "entity.field_config.{$this->entityTypeId}_field_edit_form", 'route_parameters' => $route_parameters);
-        $destinations[] = array('route_name' => "entity.{$this->entityTypeId}.field_ui_fields", 'route_parameters' => $route_parameters);
+        ] + FieldUI::getRouteBundleParameter($entity_type, $this->bundle);
+        $destinations[] = ['route_name' => "entity.field_config.{$this->entityTypeId}_field_edit_form", 'route_parameters' => $route_parameters];
+        $destinations[] = ['route_name' => "entity.{$this->entityTypeId}.field_ui_fields", 'route_parameters' => $route_parameters];
 
         // Store new field information for any additional submit handlers.
         $form_state->set(['fields_added', '_add_existing_field'], $field_name);
       }
       catch (\Exception $e) {
         $error = TRUE;
-        drupal_set_message($this->t('There was a problem creating field %label: @message', array('%label' => $values['label'], '@message' => $e->getMessage())), 'error');
+        drupal_set_message($this->t('There was a problem creating field %label: @message', ['%label' => $values['label'], '@message' => $e->getMessage()]), 'error');
       }
     }
 
@@ -452,7 +452,7 @@ protected function configureEntityViewDisplay($field_name, $formatter_id = NULL)
    *   An array of existing field storages keyed by name.
    */
   protected function getExistingFieldStorageOptions() {
-    $options = array();
+    $options = [];
     // Load the field_storages and build the list of options.
     $field_types = $this->fieldTypePluginManager->getDefinitions();
     foreach ($this->entityManager->getFieldStorageDefinitions($this->entityTypeId) as $field_name => $field_storage) {
@@ -466,10 +466,10 @@ protected function getExistingFieldStorageOptions() {
         && !$field_storage->isLocked()
         && empty($field_types[$field_type]['no_ui'])
         && !in_array($this->bundle, $field_storage->getBundles(), TRUE)) {
-        $options[$field_name] = $this->t('@type: @field', array(
+        $options[$field_name] = $this->t('@type: @field', [
           '@type' => $field_types[$field_type]['label'],
           '@field' => $field_name,
-        ));
+        ]);
       }
     }
     asort($options);
@@ -500,7 +500,7 @@ protected function getExistingFieldLabels(array $field_names) {
     $fields = $this->entityManager->getStorage('field_config')->loadMultiple($field_ids);
 
     // Go through all the fields and use the label of the first encounter.
-    $labels = array();
+    $labels = [];
     foreach ($fields as $field) {
       if (!isset($labels[$field->getName()])) {
         $labels[$field->getName()] = $field->label();
diff --git a/core/modules/field_ui/src/Form/FieldStorageConfigEditForm.php b/core/modules/field_ui/src/Form/FieldStorageConfigEditForm.php
index bbaeb63..a0c1294 100644
--- a/core/modules/field_ui/src/Form/FieldStorageConfigEditForm.php
+++ b/core/modules/field_ui/src/Form/FieldStorageConfigEditForm.php
@@ -62,7 +62,7 @@ public function form(array $form, FormStateInterface $form_state) {
 
     $field_label = $form_state->get('field_config')->label();
     $form['#title'] = $field_label;
-    $form['#prefix'] = '<p>' . $this->t('These settings apply to the %field field everywhere it is used. These settings impact the way that data is stored in the database and cannot be changed once data has been created.', array('%field' => $field_label)) . '</p>';
+    $form['#prefix'] = '<p>' . $this->t('These settings apply to the %field field everywhere it is used. These settings impact the way that data is stored in the database and cannot be changed once data has been created.', ['%field' => $field_label]) . '</p>';
 
     // See if data already exists for this field.
     // If so, prevent changes to the field settings.
@@ -73,17 +73,17 @@ public function form(array $form, FormStateInterface $form_state) {
     // Add settings provided by the field module. The field module is
     // responsible for not returning settings that cannot be changed if
     // the field already has data.
-    $form['settings'] = array(
+    $form['settings'] = [
       '#weight' => -10,
       '#tree' => TRUE,
-    );
+    ];
     // Create an arbitrary entity object, so that we can have an instantiated
     // FieldItem.
-    $ids = (object) array(
+    $ids = (object) [
       'entity_type' => $form_state->get('entity_type_id'),
       'bundle' => $form_state->get('bundle'),
       'entity_id' => NULL
-    );
+    ];
     $entity = _field_create_entity_from_ids($ids);
     $items = $entity->get($this->entity->getName());
     $item = $items->first() ?: $items->appendItem();
@@ -91,43 +91,43 @@ public function form(array $form, FormStateInterface $form_state) {
 
     // Build the configurable field values.
     $cardinality = $this->entity->getCardinality();
-    $form['cardinality_container'] = array(
+    $form['cardinality_container'] = [
       // Reset #parents so the additional container does not appear.
-      '#parents' => array(),
+      '#parents' => [],
       '#type' => 'fieldset',
       '#title' => $this->t('Allowed number of values'),
-      '#attributes' => array('class' => array(
+      '#attributes' => ['class' => [
         'container-inline',
         'fieldgroup',
         'form-composite'
-      )),
-    );
-    $form['cardinality_container']['cardinality'] = array(
+      ]],
+    ];
+    $form['cardinality_container']['cardinality'] = [
       '#type' => 'select',
       '#title' => $this->t('Allowed number of values'),
       '#title_display' => 'invisible',
-      '#options' => array(
+      '#options' => [
         'number' => $this->t('Limited'),
         FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED => $this->t('Unlimited'),
-      ),
+      ],
       '#default_value' => ($cardinality == FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED) ? FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED : 'number',
-    );
-    $form['cardinality_container']['cardinality_number'] = array(
+    ];
+    $form['cardinality_container']['cardinality_number'] = [
       '#type' => 'number',
       '#default_value' => $cardinality != FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED ? $cardinality : 1,
       '#min' => 1,
       '#title' => $this->t('Limit'),
       '#title_display' => 'invisible',
       '#size' => 2,
-      '#states' => array(
-        'visible' => array(
-         ':input[name="cardinality"]' => array('value' => 'number'),
-        ),
-        'disabled' => array(
-         ':input[name="cardinality"]' => array('value' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+         ':input[name="cardinality"]' => ['value' => 'number'],
+        ],
+        'disabled' => [
+         ':input[name="cardinality"]' => ['value' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED],
+        ],
+      ],
+    ];
 
     return $form;
   }
@@ -190,7 +190,7 @@ public function save(array $form, FormStateInterface $form_state) {
     $field_label = $form_state->get('field_config')->label();
     try {
       $this->entity->save();
-      drupal_set_message($this->t('Updated field %label field settings.', array('%label' => $field_label)));
+      drupal_set_message($this->t('Updated field %label field settings.', ['%label' => $field_label]));
       $request = $this->getRequest();
       if (($destinations = $request->query->get('destinations')) && $next_destination = FieldUI::getNextDestination($destinations)) {
         $request->query->remove('destinations');
@@ -201,7 +201,7 @@ public function save(array $form, FormStateInterface $form_state) {
       }
     }
     catch (\Exception $e) {
-      drupal_set_message($this->t('Attempt to update field %label failed: %message.', array('%label' => $field_label, '%message' => $e->getMessage())), 'error');
+      drupal_set_message($this->t('Attempt to update field %label failed: %message.', ['%label' => $field_label, '%message' => $e->getMessage()]), 'error');
     }
   }
 
diff --git a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalAction.php b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalAction.php
index 4d81c8b..b92d702 100644
--- a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalAction.php
+++ b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalAction.php
@@ -50,15 +50,15 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $this->derivatives = array();
+    $this->derivatives = [];
 
     foreach ($this->entityManager->getDefinitions() as $entity_type_id => $entity_type) {
       if ($entity_type->get('field_ui_base_route')) {
-        $this->derivatives["field_storage_config_add_$entity_type_id"] = array(
+        $this->derivatives["field_storage_config_add_$entity_type_id"] = [
           'route_name' => "field_ui.field_storage_config_add_$entity_type_id",
           'title' => $this->t('Add field'),
-          'appears_on' => array("entity.$entity_type_id.field_ui_fields"),
-        );
+          'appears_on' => ["entity.$entity_type_id.field_ui_fields"],
+        ];
       }
     }
 
diff --git a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php
index 3ebf959..6d95abd 100644
--- a/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php
+++ b/core/modules/field_ui/src/Plugin/Derivative/FieldUiLocalTask.php
@@ -61,46 +61,46 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $this->derivatives = array();
+    $this->derivatives = [];
 
     foreach ($this->entityManager->getDefinitions() as $entity_type_id => $entity_type) {
       if ($entity_type->get('field_ui_base_route')) {
-        $this->derivatives["overview_$entity_type_id"] = array(
+        $this->derivatives["overview_$entity_type_id"] = [
           'route_name' => "entity.$entity_type_id.field_ui_fields",
           'weight' => 1,
           'title' => $this->t('Manage fields'),
           'base_route' => "entity.$entity_type_id.field_ui_fields",
-        );
+        ];
 
         // 'Manage form display' tab.
-        $this->derivatives["form_display_overview_$entity_type_id"] = array(
+        $this->derivatives["form_display_overview_$entity_type_id"] = [
           'route_name' => "entity.entity_form_display.$entity_type_id.default",
           'weight' => 2,
           'title' => $this->t('Manage form display'),
           'base_route' => "entity.$entity_type_id.field_ui_fields",
-        );
+        ];
 
         // 'Manage display' tab.
-        $this->derivatives["display_overview_$entity_type_id"] = array(
+        $this->derivatives["display_overview_$entity_type_id"] = [
           'route_name' => "entity.entity_view_display.$entity_type_id.default",
           'weight' => 3,
           'title' => $this->t('Manage display'),
           'base_route' => "entity.$entity_type_id.field_ui_fields",
-        );
+        ];
 
         // Field edit tab.
-        $this->derivatives["field_edit_$entity_type_id"] = array(
+        $this->derivatives["field_edit_$entity_type_id"] = [
           'route_name' => "entity.field_config.{$entity_type_id}_field_edit_form",
           'title' => $this->t('Edit'),
           'base_route' => "entity.field_config.{$entity_type_id}_field_edit_form",
-        );
+        ];
 
         // Field settings tab.
-        $this->derivatives["field_storage_$entity_type_id"] = array(
+        $this->derivatives["field_storage_$entity_type_id"] = [
           'route_name' => "entity.field_config.{$entity_type_id}_storage_edit_form",
           'title' => $this->t('Field settings'),
           'base_route' => "entity.field_config.{$entity_type_id}_field_edit_form",
-        );
+        ];
 
         // View and form modes secondary tabs.
         // The same base $path for the menu item (with a placeholder) can be
@@ -109,47 +109,47 @@ public function getDerivativeDefinitions($base_plugin_definition) {
         // modes available for customisation. So we define menu items for all
         // view modes, and use a route requirement to determine which ones are
         // actually visible for a given bundle.
-        $this->derivatives['field_form_display_default_' . $entity_type_id] = array(
+        $this->derivatives['field_form_display_default_' . $entity_type_id] = [
           'title' => 'Default',
           'route_name' => "entity.entity_form_display.$entity_type_id.default",
           'parent_id' => "field_ui.fields:form_display_overview_$entity_type_id",
           'weight' => -1,
-        );
-        $this->derivatives['field_display_default_' . $entity_type_id] = array(
+        ];
+        $this->derivatives['field_display_default_' . $entity_type_id] = [
           'title' => 'Default',
           'route_name' => "entity.entity_view_display.$entity_type_id.default",
           'parent_id' => "field_ui.fields:display_overview_$entity_type_id",
           'weight' => -1,
-        );
+        ];
 
         // One local task for each form mode.
         $weight = 0;
         foreach ($this->entityManager->getFormModes($entity_type_id) as $form_mode => $form_mode_info) {
-          $this->derivatives['field_form_display_' . $form_mode . '_' . $entity_type_id] = array(
+          $this->derivatives['field_form_display_' . $form_mode . '_' . $entity_type_id] = [
             'title' => $form_mode_info['label'],
             'route_name' => "entity.entity_form_display.$entity_type_id.form_mode",
-            'route_parameters' => array(
+            'route_parameters' => [
               'form_mode_name' => $form_mode,
-            ),
+            ],
             'parent_id' => "field_ui.fields:form_display_overview_$entity_type_id",
             'weight' => $weight++,
             'cache_tags' => $this->entityManager->getDefinition('entity_form_display')->getListCacheTags(),
-          );
+          ];
         }
 
         // One local task for each view mode.
         $weight = 0;
         foreach ($this->entityManager->getViewModes($entity_type_id) as $view_mode => $form_mode_info) {
-          $this->derivatives['field_display_' . $view_mode . '_' . $entity_type_id] = array(
+          $this->derivatives['field_display_' . $view_mode . '_' . $entity_type_id] = [
             'title' => $form_mode_info['label'],
             'route_name' => "entity.entity_view_display.$entity_type_id.view_mode",
-            'route_parameters' => array(
+            'route_parameters' => [
               'view_mode_name' => $view_mode,
-            ),
+            ],
             'parent_id' => "field_ui.fields:display_overview_$entity_type_id",
             'weight' => $weight++,
             'cache_tags' => $this->entityManager->getDefinition('entity_view_display')->getListCacheTags(),
-          );
+          ];
         }
       }
     }
diff --git a/core/modules/field_ui/src/Routing/RouteSubscriber.php b/core/modules/field_ui/src/Routing/RouteSubscriber.php
index 696a049..b08e7f8 100644
--- a/core/modules/field_ui/src/Routing/RouteSubscriber.php
+++ b/core/modules/field_ui/src/Routing/RouteSubscriber.php
@@ -44,16 +44,16 @@ protected function alterRoutes(RouteCollection $collection) {
 
         $options = $entity_route->getOptions();
         if ($bundle_entity_type = $entity_type->getBundleEntityType()) {
-          $options['parameters'][$bundle_entity_type] = array(
+          $options['parameters'][$bundle_entity_type] = [
             'type' => 'entity:' . $bundle_entity_type,
-          );
+          ];
         }
         // Special parameter used to easily recognize all Field UI routes.
         $options['_field_ui'] = TRUE;
 
-        $defaults = array(
+        $defaults = [
           'entity_type_id' => $entity_type_id,
-        );
+        ];
         // If the entity type has no bundles and it doesn't use {bundle} in its
         // admin path, use the entity type.
         if (strpos($path, '{bundle}') === FALSE) {
@@ -62,95 +62,95 @@ protected function alterRoutes(RouteCollection $collection) {
 
         $route = new Route(
           "$path/fields/{field_config}",
-          array(
+          [
             '_entity_form' => 'field_config.edit',
             '_title_callback' => '\Drupal\field_ui\Form\FieldConfigEditForm::getTitle',
-          ) + $defaults,
-          array('_entity_access' => 'field_config.update'),
+          ] + $defaults,
+          ['_entity_access' => 'field_config.update'],
           $options
         );
         $collection->add("entity.field_config.{$entity_type_id}_field_edit_form", $route);
 
         $route = new Route(
           "$path/fields/{field_config}/storage",
-          array('_entity_form' => 'field_storage_config.edit') + $defaults,
-          array('_permission' => 'administer ' . $entity_type_id . ' fields'),
+          ['_entity_form' => 'field_storage_config.edit'] + $defaults,
+          ['_permission' => 'administer ' . $entity_type_id . ' fields'],
           $options
         );
         $collection->add("entity.field_config.{$entity_type_id}_storage_edit_form", $route);
 
         $route = new Route(
           "$path/fields/{field_config}/delete",
-          array('_entity_form' => 'field_config.delete') + $defaults,
-          array('_entity_access' => 'field_config.delete'),
+          ['_entity_form' => 'field_config.delete'] + $defaults,
+          ['_entity_access' => 'field_config.delete'],
           $options
         );
         $collection->add("entity.field_config.{$entity_type_id}_field_delete_form", $route);
 
         $route = new Route(
           "$path/fields",
-          array(
+          [
             '_controller' => '\Drupal\field_ui\Controller\FieldConfigListController::listing',
             '_title' => 'Manage fields',
-          ) + $defaults,
-          array('_permission' => 'administer ' . $entity_type_id . ' fields'),
+          ] + $defaults,
+          ['_permission' => 'administer ' . $entity_type_id . ' fields'],
           $options
         );
         $collection->add("entity.{$entity_type_id}.field_ui_fields", $route);
 
         $route = new Route(
           "$path/fields/add-field",
-          array(
+          [
             '_form' => '\Drupal\field_ui\Form\FieldStorageAddForm',
             '_title' => 'Add field',
-          ) + $defaults,
-          array('_permission' => 'administer ' . $entity_type_id . ' fields'),
+          ] + $defaults,
+          ['_permission' => 'administer ' . $entity_type_id . ' fields'],
           $options
         );
         $collection->add("field_ui.field_storage_config_add_$entity_type_id", $route);
 
         $route = new Route(
           "$path/form-display",
-          array(
+          [
             '_entity_form' => 'entity_form_display.edit',
             '_title' => 'Manage form display',
             'form_mode_name' => 'default',
-          ) + $defaults,
-          array('_field_ui_form_mode_access' => 'administer ' . $entity_type_id . ' form display'),
+          ] + $defaults,
+          ['_field_ui_form_mode_access' => 'administer ' . $entity_type_id . ' form display'],
           $options
         );
         $collection->add("entity.entity_form_display.{$entity_type_id}.default", $route);
 
         $route = new Route(
           "$path/form-display/{form_mode_name}",
-          array(
+          [
             '_entity_form' => 'entity_form_display.edit',
             '_title' => 'Manage form display',
-          ) + $defaults,
-          array('_field_ui_form_mode_access' => 'administer ' . $entity_type_id . ' form display'),
+          ] + $defaults,
+          ['_field_ui_form_mode_access' => 'administer ' . $entity_type_id . ' form display'],
           $options
         );
         $collection->add("entity.entity_form_display.{$entity_type_id}.form_mode", $route);
 
         $route = new Route(
           "$path/display",
-          array(
+          [
             '_entity_form' => 'entity_view_display.edit',
             '_title' => 'Manage display',
             'view_mode_name' => 'default',
-          ) + $defaults,
-          array('_field_ui_view_mode_access' => 'administer ' . $entity_type_id . ' display'),
+          ] + $defaults,
+          ['_field_ui_view_mode_access' => 'administer ' . $entity_type_id . ' display'],
           $options
         );
         $collection->add("entity.entity_view_display.{$entity_type_id}.default", $route);
 
         $route = new Route(
           "$path/display/{view_mode_name}",
-          array(
+          [
             '_entity_form' => 'entity_view_display.edit',
             '_title' => 'Manage display',
-          ) + $defaults,
-          array('_field_ui_view_mode_access' => 'administer ' . $entity_type_id . ' display'),
+          ] + $defaults,
+          ['_field_ui_view_mode_access' => 'administer ' . $entity_type_id . ' display'],
           $options
         );
         $collection->add("entity.entity_view_display.{$entity_type_id}.view_mode", $route);
@@ -163,7 +163,7 @@ protected function alterRoutes(RouteCollection $collection) {
    */
   public static function getSubscribedEvents() {
     $events = parent::getSubscribedEvents();
-    $events[RoutingEvents::ALTER] = array('onAlterRoutes', -100);
+    $events[RoutingEvents::ALTER] = ['onAlterRoutes', -100];
     return $events;
   }
 
diff --git a/core/modules/field_ui/src/Tests/FieldUIDeleteTest.php b/core/modules/field_ui/src/Tests/FieldUIDeleteTest.php
index 59469ac..542a99c 100644
--- a/core/modules/field_ui/src/Tests/FieldUIDeleteTest.php
+++ b/core/modules/field_ui/src/Tests/FieldUIDeleteTest.php
@@ -21,14 +21,14 @@ class FieldUIDeleteTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'field_test', 'block', 'field_test_views');
+  public static $modules = ['node', 'field_ui', 'field_test', 'block', 'field_test_views'];
 
   /**
    * Test views to enable
    *
    * @var string[]
    */
-  public static $testViews = array('test_view_field_delete');
+  public static $testViews = ['test_view_field_delete'];
 
   /**
    * {@inheritdoc}
@@ -41,7 +41,7 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create a test user.
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access']);
     $this->drupalLogin($admin_user);
   }
 
@@ -55,7 +55,7 @@ function testDeleteField() {
 
     // Create an additional node type.
     $type_name1 = strtolower($this->randomMachineName(8)) . '_test';
-    $type1 = $this->drupalCreateContentType(array('name' => $type_name1, 'type' => $type_name1));
+    $type1 = $this->drupalCreateContentType(['name' => $type_name1, 'type' => $type_name1]);
     $type_name1 = $type1->id();
 
     // Create a new field.
@@ -64,7 +64,7 @@ function testDeleteField() {
 
     // Create an additional node type.
     $type_name2 = strtolower($this->randomMachineName(8)) . '_test';
-    $type2 = $this->drupalCreateContentType(array('name' => $type_name2, 'type' => $type_name2));
+    $type2 = $this->drupalCreateContentType(['name' => $type_name2, 'type' => $type_name2]);
     $type_name2 = $type2->id();
 
     // Add a field to the second node type.
@@ -72,7 +72,7 @@ function testDeleteField() {
     $this->fieldUIAddExistingField($bundle_path2, $field_name, $field_label);
 
     \Drupal::service('module_installer')->install(['views']);
-    ViewTestData::createTestViews(get_class($this), array('field_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['field_test_views']);
 
     // Check the config dependencies of the first field, the field storage must
     // not be shown as being deleted yet.
diff --git a/core/modules/field_ui/src/Tests/FieldUiTestTrait.php b/core/modules/field_ui/src/Tests/FieldUiTestTrait.php
index 9bb0ecb..39c41a3 100644
--- a/core/modules/field_ui/src/Tests/FieldUiTestTrait.php
+++ b/core/modules/field_ui/src/Tests/FieldUiTestTrait.php
@@ -26,13 +26,13 @@
    *   (optional) $edit parameter for drupalPostForm() on the third step ('Field
    *   settings' form).
    */
-  public function fieldUIAddNewField($bundle_path, $field_name, $label = NULL, $field_type = 'test_field', array $storage_edit = array(), array $field_edit = array()) {
+  public function fieldUIAddNewField($bundle_path, $field_name, $label = NULL, $field_type = 'test_field', array $storage_edit = [], array $field_edit = []) {
     $label = $label ?: $this->randomString();
-    $initial_edit = array(
+    $initial_edit = [
       'new_storage_type' => $field_type,
       'label' => $label,
       'field_name' => $field_name,
-    );
+    ];
 
     // Allow the caller to set a NULL path in case they navigated to the right
     // page before calling this method.
@@ -42,17 +42,17 @@ public function fieldUIAddNewField($bundle_path, $field_name, $label = NULL, $fi
 
     // First step: 'Add field' page.
     $this->drupalPostForm($bundle_path, $initial_edit, t('Save and continue'));
-    $this->assertRaw(t('These settings apply to the %label field everywhere it is used.', array('%label' => $label)), 'Storage settings page was displayed.');
+    $this->assertRaw(t('These settings apply to the %label field everywhere it is used.', ['%label' => $label]), 'Storage settings page was displayed.');
     // Test Breadcrumbs.
     $this->assertLink($label, 0, 'Field label is correct in the breadcrumb of the storage settings page.');
 
     // Second step: 'Storage settings' form.
     $this->drupalPostForm(NULL, $storage_edit, t('Save field settings'));
-    $this->assertRaw(t('Updated field %label field settings.', array('%label' => $label)), 'Redirected to field settings page.');
+    $this->assertRaw(t('Updated field %label field settings.', ['%label' => $label]), 'Redirected to field settings page.');
 
     // Third step: 'Field settings' form.
     $this->drupalPostForm(NULL, $field_edit, t('Save settings'));
-    $this->assertRaw(t('Saved %label configuration.', array('%label' => $label)), 'Redirected to "Manage fields" page.');
+    $this->assertRaw(t('Saved %label configuration.', ['%label' => $label]), 'Redirected to "Manage fields" page.');
 
     // Check that the field appears in the overview form.
     $this->assertFieldByXPath('//table[@id="field-overview"]//tr/td[1]', $label, 'Field was created and appears in the overview page.');
@@ -72,12 +72,12 @@ public function fieldUIAddNewField($bundle_path, $field_name, $label = NULL, $fi
    *   (optional) $edit parameter for drupalPostForm() on the second step
    *   ('Field settings' form).
    */
-  public function fieldUIAddExistingField($bundle_path, $existing_storage_name, $label = NULL, array $field_edit = array()) {
+  public function fieldUIAddExistingField($bundle_path, $existing_storage_name, $label = NULL, array $field_edit = []) {
     $label = $label ?: $this->randomString();
-    $initial_edit = array(
+    $initial_edit = [
       'existing_storage_name' => $existing_storage_name,
       'existing_storage_label' => $label,
-    );
+    ];
 
     // First step: 'Re-use existing field' on the 'Add field' page.
     $this->drupalPostForm("$bundle_path/fields/add-field", $initial_edit, t('Save and continue'));
@@ -90,7 +90,7 @@ public function fieldUIAddExistingField($bundle_path, $existing_storage_name, $l
 
     // Second step: 'Field settings' form.
     $this->drupalPostForm(NULL, $field_edit, t('Save settings'));
-    $this->assertRaw(t('Saved %label configuration.', array('%label' => $label)), 'Redirected to "Manage fields" page.');
+    $this->assertRaw(t('Saved %label configuration.', ['%label' => $label]), 'Redirected to "Manage fields" page.');
 
     // Check that the field appears in the overview form.
     $this->assertFieldByXPath('//table[@id="field-overview"]//tr/td[1]', $label, 'Field was created and appears in the overview page.');
@@ -111,14 +111,14 @@ public function fieldUIAddExistingField($bundle_path, $existing_storage_name, $l
   public function fieldUIDeleteField($bundle_path, $field_name, $label, $bundle_label) {
     // Display confirmation form.
     $this->drupalGet("$bundle_path/fields/$field_name/delete");
-    $this->assertRaw(t('Are you sure you want to delete the field %label', array('%label' => $label)), 'Delete confirmation was found.');
+    $this->assertRaw(t('Are you sure you want to delete the field %label', ['%label' => $label]), 'Delete confirmation was found.');
 
     // Test Breadcrumbs.
     $this->assertLink($label, 0, 'Field label is correct in the breadcrumb of the field delete page.');
 
     // Submit confirmation form.
-    $this->drupalPostForm(NULL, array(), t('Delete'));
-    $this->assertRaw(t('The field %label has been deleted from the %type content type.', array('%label' => $label, '%type' => $bundle_label)), 'Delete message was found.');
+    $this->drupalPostForm(NULL, [], t('Delete'));
+    $this->assertRaw(t('The field %label has been deleted from the %type content type.', ['%label' => $label, '%type' => $bundle_label]), 'Delete message was found.');
 
     // Check that the field does not appear in the overview form.
     $this->assertNoFieldByXPath('//table[@id="field-overview"]//span[@class="label-field"]', $label, 'Field does not appear in the overview page.');
diff --git a/core/modules/field_ui/src/Tests/ManageDisplayTest.php b/core/modules/field_ui/src/Tests/ManageDisplayTest.php
index 902a193..9c8798f 100644
--- a/core/modules/field_ui/src/Tests/ManageDisplayTest.php
+++ b/core/modules/field_ui/src/Tests/ManageDisplayTest.php
@@ -25,7 +25,7 @@ class ManageDisplayTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'taxonomy', 'search', 'field_test', 'field_third_party_test', 'block');
+  public static $modules = ['node', 'field_ui', 'taxonomy', 'search', 'field_test', 'field_third_party_test', 'block'];
 
   /**
    * {@inheritdoc}
@@ -35,24 +35,24 @@ protected function setUp() {
     $this->drupalPlaceBlock('system_breadcrumb_block');
 
     // Create a test user.
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer taxonomy', 'administer taxonomy_term fields', 'administer taxonomy_term display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer taxonomy', 'administer taxonomy_term fields', 'administer taxonomy_term display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access']);
     $this->drupalLogin($admin_user);
 
     // Create content type, with underscores.
     $type_name = strtolower($this->randomMachineName(8)) . '_test';
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $this->type = $type->id();
 
     // Create a default vocabulary.
-    $vocabulary = Vocabulary::create(array(
+    $vocabulary = Vocabulary::create([
       'name' => $this->randomMachineName(),
       'description' => $this->randomMachineName(),
       'vid' => Unicode::strtolower($this->randomMachineName()),
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
       'help' => '',
-      'nodes' => array('article' => 'article'),
+      'nodes' => ['article' => 'article'],
       'weight' => mt_rand(0, 10),
-    ));
+    ]);
     $vocabulary->save();
     $this->vocabulary = $vocabulary->id();
   }
@@ -83,11 +83,11 @@ function testFormatterUI() {
     $this->assertText("$setting_name: $setting_value", 'The expected summary is displayed.');
 
     // Check whether formatter weights are respected.
-    $result = $this->xpath('//select[@id=:id]/option', array(':id' => 'edit-fields-field-test-type'));
+    $result = $this->xpath('//select[@id=:id]/option', [':id' => 'edit-fields-field-test-type']);
     $options = array_map(function($item) {
       return (string) $item->attributes()->value[0];
     }, $result);
-    $expected_options = array (
+    $expected_options =  [
       'field_no_settings',
       'field_empty_test',
       'field_empty_setting',
@@ -95,7 +95,7 @@ function testFormatterUI() {
       'field_test_multiple',
       'field_test_with_prepare_view',
       'field_test_applicable',
-    );
+    ];
     $this->assertEqual($options, $expected_options, 'The expected formatter ordering is respected.');
 
     // Ensure that fields can be hidden directly by changing the region.
@@ -115,12 +115,12 @@ function testFormatterUI() {
     $this->drupalPostForm($manage_display, $edit, t('Save'));
 
     // Change the formatter and check that the summary is updated.
-    $edit = array(
+    $edit = [
       'fields[field_test][type]' => 'field_test_multiple',
       'fields[field_test][region]' => 'content',
       'refresh_rows' => 'field_test'
-    );
-    $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh')));
+    ];
+    $this->drupalPostAjaxForm(NULL, $edit, ['op' => t('Refresh')]);
     $format = 'field_test_multiple';
     $default_settings = \Drupal::service('plugin.manager.field.formatter')->getDefaultSettings($format);
     $setting_name = key($default_settings);
@@ -129,7 +129,7 @@ function testFormatterUI() {
     $this->assertText("$setting_name: $setting_value", 'The expected summary is displayed.');
 
     // Submit the form and check that the display is updated.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $display = entity_get_display('node', $this->type, 'default');
     $display_options = $display->getComponent('field_test');
     $current_format = $display_options['type'];
@@ -142,17 +142,17 @@ function testFormatterUI() {
 
     // Click on the formatter settings button to open the formatter settings
     // form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
 
     // Assert that the field added in
     // field_test_field_formatter_third_party_settings_form() is present.
     $fieldname = 'fields[field_test][settings_edit_form][third_party_settings][field_third_party_test][field_test_field_formatter_third_party_settings_form]';
     $this->assertField($fieldname, 'The field added in hook_field_formatter_third_party_settings_form() is present on the settings form.');
-    $edit = array($fieldname => 'foo');
+    $edit = [$fieldname => 'foo'];
     $this->drupalPostAjaxForm(NULL, $edit, "field_test_plugin_settings_update");
 
     // Save the form to save the third party settings.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     \Drupal::entityManager()->clearCachedFieldDefinitions();
     $id = 'node.' . $this->type . '.default';
@@ -163,42 +163,42 @@ function testFormatterUI() {
     $this->assertTrue(in_array('field_third_party_test', $display->calculateDependencies()->getDependencies()['module']), 'The display has a dependency on field_third_party_test module.');
 
     // Confirm that the third party settings are not updated on the settings form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
     $this->assertFieldByName($fieldname, '');
 
     // Test the empty setting formatter.
-    $edit = array(
+    $edit = [
       'fields[field_test][type]' => 'field_empty_setting',
       'fields[field_test][region]' => 'content',
-      );
+      ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertNoText('Default empty setting now has a value.');
     $this->assertFieldById('edit-fields-field-test-settings-edit');
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
     $fieldname = 'fields[field_test][settings_edit_form][settings][field_empty_setting]';
-    $edit = array($fieldname => 'non empty setting');
+    $edit = [$fieldname => 'non empty setting'];
     $this->drupalPostAjaxForm(NULL, $edit, "field_test_plugin_settings_update");
     $this->assertText('Default empty setting now has a value.');
 
     // Test the settings form behavior. An edit button should be present since
     // there are third party settings to configure.
-    $edit = array(
+    $edit = [
       'fields[field_test][type]' => 'field_no_settings',
       'fields[field_test][region]' => 'content',
       'refresh_rows' => 'field_test',
-    );
-    $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh')));
+    ];
+    $this->drupalPostAjaxForm(NULL, $edit, ['op' => t('Refresh')]);
     $this->assertFieldByName('field_test_settings_edit');
 
     // Make sure we can save the third party settings when there are no settings available
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
     $this->drupalPostAjaxForm(NULL, $edit, "field_test_plugin_settings_update");
 
     // When a module providing third-party settings to a formatter (or widget)
     // is uninstalled, the formatter remains enabled but the provided settings,
     // together with the corresponding form elements, are removed from the
     // display component.
-    \Drupal::service('module_installer')->uninstall(array('field_third_party_test'));
+    \Drupal::service('module_installer')->uninstall(['field_third_party_test']);
 
     // Ensure the button is still there after the module has been disabled.
     $this->drupalGet($manage_display);
@@ -206,7 +206,7 @@ function testFormatterUI() {
     $this->assertFieldByName('field_test_settings_edit');
 
     // Ensure that third-party form elements are not present anymore.
-    $this->drupalPostAjaxForm(NULL, array(), 'field_test_settings_edit');
+    $this->drupalPostAjaxForm(NULL, [], 'field_test_settings_edit');
     $fieldname = 'fields[field_test][settings_edit_form][third_party_settings][field_third_party_test][field_test_field_formatter_third_party_settings_form]';
     $this->assertNoField($fieldname);
 
@@ -245,23 +245,23 @@ public function testWidgetUI() {
     $this->assertText("$setting_name: $setting_value", 'The expected summary is displayed.');
 
     // Check whether widget weights are respected.
-    $result = $this->xpath('//select[@id=:id]/option', array(':id' => 'edit-fields-field-test-type'));
+    $result = $this->xpath('//select[@id=:id]/option', [':id' => 'edit-fields-field-test-type']);
     $options = array_map(function($item) {
       return (string) $item->attributes()->value[0];
     }, $result);
-    $expected_options = array (
+    $expected_options =  [
       'test_field_widget',
       'test_field_widget_multiple',
-    );
+    ];
     $this->assertEqual($options, $expected_options, 'The expected widget ordering is respected.');
 
     // Change the widget and check that the summary is updated.
-    $edit = array(
+    $edit = [
       'fields[field_test][type]' => 'test_field_widget_multiple',
       'fields[field_test][region]' => 'content',
       'refresh_rows' => 'field_test',
-    );
-    $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh')));
+    ];
+    $this->drupalPostAjaxForm(NULL, $edit, ['op' => t('Refresh')]);
     $widget_type = 'test_field_widget_multiple';
     $default_settings = \Drupal::service('plugin.manager.field.widget')->getDefaultSettings($widget_type);
     $setting_name = key($default_settings);
@@ -270,7 +270,7 @@ public function testWidgetUI() {
     $this->assertText("$setting_name: $setting_value", 'The expected summary is displayed.');
 
     // Submit the form and check that the display is updated.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $display = entity_get_form_display('node', $this->type, 'default');
     $display_options = $display->getComponent('field_test');
     $current_widget = $display_options['type'];
@@ -282,26 +282,26 @@ public function testWidgetUI() {
     $this->assertText('field_test_field_widget_settings_summary_alter');
 
     // Click on the widget settings button to open the widget settings form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
 
     // Assert that the field added in
     // field_test_field_widget_third_party_settings_form() is present.
     $fieldname = 'fields[field_test][settings_edit_form][third_party_settings][field_third_party_test][field_test_widget_third_party_settings_form]';
     $this->assertField($fieldname, 'The field added in hook_field_widget_third_party_settings_form() is present on the settings form.');
-    $edit = array($fieldname => 'foo');
+    $edit = [$fieldname => 'foo'];
     $this->drupalPostAjaxForm(NULL, $edit, "field_test_plugin_settings_update");
 
     // Save the form to save the third party settings.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     \Drupal::entityManager()->clearCachedFieldDefinitions();
     $storage = $this->container->get('entity_type.manager')->getStorage('entity_form_display');
-    $storage->resetCache(array('node.' . $this->type . '.default'));
+    $storage->resetCache(['node.' . $this->type . '.default']);
     $display = $storage->load('node.' . $this->type . '.default');
     $this->assertEqual($display->getRenderer('field_test')->getThirdPartySetting('field_third_party_test', 'field_test_widget_third_party_settings_form'), 'foo');
     $this->assertTrue(in_array('field_third_party_test', $display->calculateDependencies()->getDependencies()['module']), 'Form display does not have a dependency on field_third_party_test module.');
 
     // Confirm that the third party settings are not updated on the settings form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_test_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_test_settings_edit");
     $this->assertFieldByName($fieldname, '');
 
     // Creates a new field that can not be used with the multiple formatter.
@@ -312,8 +312,8 @@ public function testWidgetUI() {
     $this->drupalGet($manage_display);
 
     // Checks if the select elements contain the specified options.
-    $this->assertFieldSelectOptions('fields[field_test][type]', array('test_field_widget', 'test_field_widget_multiple'));
-    $this->assertFieldSelectOptions('fields[field_onewidgetfield][type]', array('test_field_widget'));
+    $this->assertFieldSelectOptions('fields[field_test][type]', ['test_field_widget', 'test_field_widget_multiple']);
+    $this->assertFieldSelectOptions('fields[field_onewidgetfield][type]', ['test_field_widget']);
 
     // Ensure that fields can be hidden directly by changing the region.
     $this->assertFieldByName('fields[field_test][region]', 'content');
@@ -335,20 +335,20 @@ function testViewModeCustom() {
     // to appear in a rendered node other than as part of the field being tested
     // (for example, unlikely to be part of the "Submitted by ... on ..." line).
     $value = 12345;
-    $settings = array(
+    $settings = [
       'type' => $this->type,
-      'field_test' => array(array('value' => $value)),
-    );
+      'field_test' => [['value' => $value]],
+    ];
     $node = $this->drupalCreateNode($settings);
 
     // Gather expected output values with the various formatters.
     $formatter_plugin_manager = \Drupal::service('plugin.manager.field.formatter');
     $field_test_default_settings = $formatter_plugin_manager->getDefaultSettings('field_test_default');
     $field_test_with_prepare_view_settings = $formatter_plugin_manager->getDefaultSettings('field_test_with_prepare_view');
-    $output = array(
+    $output = [
       'field_test_default' => $field_test_default_settings['test_formatter_setting'] . '|' . $value,
       'field_test_with_prepare_view' => $field_test_with_prepare_view_settings['test_formatter_setting_additional'] . '|' . $value . '|' . ($value + 1),
-    );
+    ];
 
     // Check that the field is displayed with the default formatter in 'rss'
     // mode (uses 'default'), and hidden in 'teaser' mode (uses custom settings).
@@ -357,40 +357,40 @@ function testViewModeCustom() {
 
     // Change formatter for 'default' mode, check that the field is displayed
     // accordingly in 'rss' mode.
-    $edit = array(
+    $edit = [
       'fields[field_test][type]' => 'field_test_with_prepare_view',
       'fields[field_test][region]' => 'content',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->type . '/display', $edit, t('Save'));
     $this->assertNodeViewText($node, 'rss', $output['field_test_with_prepare_view'], "The field is displayed as expected in view modes that use 'default' settings.");
 
     // Specialize the 'rss' mode, check that the field is displayed the same.
-    $edit = array(
+    $edit = [
       "display_modes_custom[rss]" => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->type . '/display', $edit, t('Save'));
     $this->assertNodeViewText($node, 'rss', $output['field_test_with_prepare_view'], "The field is displayed as expected in newly specialized 'rss' mode.");
 
     // Set the field to 'hidden' in the view mode, check that the field is
     // hidden.
-    $edit = array(
+    $edit = [
       'fields[field_test][region]' => 'hidden',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->type . '/display/rss', $edit, t('Save'));
     $this->assertNodeViewNoText($node, 'rss', $value, "The field is hidden in 'rss' mode.");
 
     // Set the view mode back to 'default', check that the field is displayed
     // accordingly.
-    $edit = array(
+    $edit = [
       "display_modes_custom[rss]" => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->type . '/display', $edit, t('Save'));
     $this->assertNodeViewText($node, 'rss', $output['field_test_with_prepare_view'], "The field is displayed as expected when 'rss' mode is set back to 'default' settings.");
 
     // Specialize the view mode again.
-    $edit = array(
+    $edit = [
       "display_modes_custom[rss]" => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->type . '/display', $edit, t('Save'));
     // Check that the previous settings for the view mode have been kept.
     $this->assertNodeViewNoText($node, 'rss', $value, "The previous settings are kept when 'rss' mode is specialized again.");
@@ -428,7 +428,7 @@ function testSingleViewMode() {
     $this->assertNoText('Use custom display settings for the following view modes', 'Custom display settings fieldset found.');
 
     // This may not trigger a notice when 'view_modes_custom' isn't available.
-    $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary . '/overview/display', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary . '/overview/display', [], t('Save'));
   }
 
   /**
@@ -436,13 +436,13 @@ function testSingleViewMode() {
    */
   function testNoFieldsDisplayOverview() {
     // Create a fresh content type without any fields.
-    NodeType::create(array(
+    NodeType::create([
       'type' => 'no_fields',
       'name' => 'No fields',
-    ))->save();
+    ])->save();
 
     $this->drupalGet('admin/structure/types/manage/no_fields/display');
-    $this->assertRaw(t('There are no fields yet added. You can add new fields on the <a href=":link">Manage fields</a> page.', array(':link' => \Drupal::url('entity.node.field_ui_fields', array('node_type' => 'no_fields')))));
+    $this->assertRaw(t('There are no fields yet added. You can add new fields on the <a href=":link">Manage fields</a> page.', [':link' => \Drupal::url('entity.node.field_ui_fields', ['node_type' => 'no_fields'])]));
   }
 
   /**
@@ -514,7 +514,7 @@ function assertNodeViewTextHelper(EntityInterface $node, $view_mode, $text, $mes
     $clone = clone $node;
     $element = node_view($clone, $view_mode);
     $output = \Drupal::service('renderer')->renderRoot($element);
-    $this->verbose(t('Rendered node - view mode: @view_mode', array('@view_mode' => $view_mode)) . '<hr />' . $output);
+    $this->verbose(t('Rendered node - view mode: @view_mode', ['@view_mode' => $view_mode]) . '<hr />' . $output);
 
     // Assign content so that WebTestBase functions can be used.
     $this->setRawContent($output);
@@ -539,7 +539,7 @@ function assertNodeViewTextHelper(EntityInterface $node, $view_mode, $text, $mes
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertFieldSelectOptions($name, array $expected_options) {
-    $xpath = $this->buildXPathQuery('//select[@name=:name]', array(':name' => $name));
+    $xpath = $this->buildXPathQuery('//select[@name=:name]', [':name' => $name]);
     $fields = $this->xpath($xpath);
     if ($fields) {
       $field = $fields[0];
@@ -565,7 +565,7 @@ protected function assertFieldSelectOptions($name, array $expected_options) {
    *   An array of option values as strings.
    */
   protected function getAllOptionsList(\SimpleXMLElement $element) {
-    $options = array();
+    $options = [];
     // Add all options items.
     foreach ($element->option as $option) {
       $options[] = (string) $option['value'];
diff --git a/core/modules/field_ui/src/Tests/ManageFieldsTest.php b/core/modules/field_ui/src/Tests/ManageFieldsTest.php
index cbe9f53..6be1366 100644
--- a/core/modules/field_ui/src/Tests/ManageFieldsTest.php
+++ b/core/modules/field_ui/src/Tests/ManageFieldsTest.php
@@ -26,7 +26,7 @@ class ManageFieldsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'field_test', 'taxonomy', 'image', 'block');
+  public static $modules = ['node', 'field_ui', 'field_test', 'taxonomy', 'image', 'block'];
 
   /**
    * The ID of the custom content type created for testing.
@@ -68,12 +68,12 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create a test user.
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer taxonomy', 'administer taxonomy_term fields', 'administer taxonomy_term display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer taxonomy', 'administer taxonomy_term fields', 'administer taxonomy_term display', 'administer users', 'administer account settings', 'administer user display', 'bypass node access']);
     $this->drupalLogin($admin_user);
 
     // Create content type, with underscores.
     $type_name = strtolower($this->randomMachineName(8)) . '_test';
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $this->contentType = $type->id();
 
     // Create random field name with markup to test escaping.
@@ -82,22 +82,22 @@ protected function setUp() {
     $this->fieldName = 'field_' . $this->fieldNameInput;
 
     // Create Basic page and Article node types.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     // Create a vocabulary named "Tags".
-    $vocabulary = Vocabulary::create(array(
+    $vocabulary = Vocabulary::create([
       'name' => 'Tags',
       'vid' => 'tags',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $vocabulary->save();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $vocabulary->id() => $vocabulary->id(),
-      ),
-    );
+      ],
+    ];
     $this->createEntityReferenceField('node', 'article', 'field_' . $vocabulary->id(), 'Tags', 'taxonomy_term', 'default', $handler_settings);
 
     entity_get_form_display('node', 'article', 'default')
@@ -132,15 +132,15 @@ function manageFieldsPage($type = '') {
     $type = empty($type) ? $this->contentType : $type;
     $this->drupalGet('admin/structure/types/manage/' . $type . '/fields');
     // Check all table columns.
-    $table_headers = array(
+    $table_headers = [
       t('Label'),
       t('Machine name'),
       t('Field type'),
       t('Operations'),
-    );
+    ];
     foreach ($table_headers as $table_header) {
       // We check that the label appear in the table headings.
-      $this->assertRaw($table_header . '</th>', format_string('%table_header table header was found.', array('%table_header' => $table_header)));
+      $this->assertRaw($table_header . '</th>', format_string('%table_header table header was found.', ['%table_header' => $table_header]));
     }
 
     // Test the "Add field" action link.
@@ -194,16 +194,16 @@ function updateField() {
 
     // Populate the field settings with new settings.
     $string = 'updated dummy test string';
-    $edit = array(
+    $edit = [
       'settings[test_field_storage_setting]' => $string,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save field settings'));
 
     // Go to the field edit page.
     $this->drupalGet('admin/structure/types/manage/' . $this->contentType . '/fields/' . $field_id);
-    $edit = array(
+    $edit = [
       'settings[test_field_setting]' => $string,
-    );
+    ];
     $this->assertText(t('Default value'), 'Default value heading is shown');
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
 
@@ -226,7 +226,7 @@ function addExistingField() {
     // do not show up in the "Re-use existing field" list.
     $this->assertFalse($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value="comment"]'), 'The list of options respects entity type restrictions.');
     // Validate the FALSE assertion above by also testing a valid one.
-    $this->assertTrue($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', array(':field_name' => $this->fieldName)), 'The list of options shows a valid option.');
+    $this->assertTrue($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', [':field_name' => $this->fieldName]), 'The list of options shows a valid option.');
 
     // Add a new field based on an existing field.
     $this->fieldUIAddExistingField("admin/structure/types/manage/page", $this->fieldName, $this->fieldLabel . '_2');
@@ -243,18 +243,18 @@ function cardinalitySettings() {
 
     // Assert the cardinality other field cannot be empty when cardinality is
     // set to 'number'.
-    $edit = array(
+    $edit = [
       'cardinality' => 'number',
       'cardinality_number' => '',
-    );
+    ];
     $this->drupalPostForm($field_edit_path, $edit, t('Save field settings'));
     $this->assertText('Number of values is required.');
 
     // Submit a custom number.
-    $edit = array(
+    $edit = [
       'cardinality' => 'number',
       'cardinality_number' => 6,
-    );
+    ];
     $this->drupalPostForm($field_edit_path, $edit, t('Save field settings'));
     $this->assertText('Updated field Body field settings.');
     $this->drupalGet($field_edit_path);
@@ -285,9 +285,9 @@ function cardinalitySettings() {
     $this->drupalPostForm('node/add/article', $edit, 'Save');
 
     // Set to unlimited.
-    $edit = array(
+    $edit = [
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
+    ];
     $this->drupalPostForm($field_edit_path, $edit, t('Save field settings'));
     $this->assertText('Updated field Body field settings.');
     $this->drupalGet($field_edit_path);
@@ -340,7 +340,7 @@ protected function addPersistentFieldStorage() {
       // Delete all the body field instances.
       $this->drupalGet('admin/structure/types/manage/' . $node_type . '/fields/node.' . $node_type . '.' . $this->fieldName);
       $this->clickLink(t('Delete'));
-      $this->drupalPostForm(NULL, array(), t('Delete'));
+      $this->drupalPostForm(NULL, [], t('Delete'));
     }
     // Check "Re-use existing field" appears.
     $this->drupalGet('admin/structure/types/manage/page/fields/add-field');
@@ -387,17 +387,17 @@ function testFieldPrefix() {
     $field_exceed_max_length_input = $this->randomMachineName(23);
 
     // Try to create the field.
-    $edit = array(
+    $edit = [
       'label' => $field_exceed_max_length_label,
       'field_name' => $field_exceed_max_length_input,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $this->contentType . '/fields/add-field', $edit, t('Save and continue'));
     $this->assertText('Machine-readable name cannot be longer than 22 characters but is currently 23 characters long.');
 
     // Create a valid field.
     $this->fieldUIAddNewField('admin/structure/types/manage/' . $this->contentType, $this->fieldNameInput, $this->fieldLabel);
     $this->drupalGet('admin/structure/types/manage/' . $this->contentType . '/fields/node.' . $this->contentType . '.' . $field_prefix . $this->fieldNameInput);
-    $this->assertText(format_string('@label settings for @type', array('@label' => $this->fieldLabel, '@type' => $this->contentType)));
+    $this->assertText(format_string('@label settings for @type', ['@label' => $this->fieldLabel, '@type' => $this->contentType]));
   }
 
   /**
@@ -406,16 +406,16 @@ function testFieldPrefix() {
   function testDefaultValue() {
     // Create a test field storage and field.
     $field_name = 'test';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'test_field'
-    ))->save();
-    $field = FieldConfig::create(array(
+    ])->save();
+    $field = FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'bundle' => $this->contentType,
-    ));
+    ]);
     $field->save();
 
     entity_get_form_display('node', $this->contentType, 'default')
@@ -429,23 +429,23 @@ function testDefaultValue() {
     $this->assertFieldById($element_id, '', 'The default value widget was empty.');
 
     // Check that invalid default values are rejected.
-    $edit = array($element_name => '-1');
+    $edit = [$element_name => '-1'];
     $this->drupalPostForm($admin_path, $edit, t('Save settings'));
     $this->assertText("$field_name does not accept the value -1", 'Form validation failed.');
 
     // Check that the default value is saved.
-    $edit = array($element_name => '1');
+    $edit = [$element_name => '1'];
     $this->drupalPostForm($admin_path, $edit, t('Save settings'));
     $this->assertText("Saved $field_name configuration", 'The form was successfully submitted.');
     $field = FieldConfig::loadByName('node', $this->contentType, $field_name);
-    $this->assertEqual($field->getDefaultValueLiteral(), array(array('value' => 1)), 'The default value was correctly saved.');
+    $this->assertEqual($field->getDefaultValueLiteral(), [['value' => 1]], 'The default value was correctly saved.');
 
     // Check that the default value shows up in the form
     $this->drupalGet($admin_path);
     $this->assertFieldById($element_id, '1', 'The default value widget was displayed with the correct value.');
 
     // Check that the default value can be emptied.
-    $edit = array($element_name => '');
+    $edit = [$element_name => ''];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     $this->assertText("Saved $field_name configuration", 'The form was successfully submitted.');
     $field = FieldConfig::loadByName('node', $this->contentType, $field_name);
@@ -458,13 +458,13 @@ function testDefaultValue() {
     $field_storage->save();
 
     $this->drupalGet($admin_path);
-    $edit = array(
+    $edit = [
       'required' => 1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
 
     $this->drupalGet($admin_path);
-    $this->drupalPostForm(NULL, array(), t('Save settings'));
+    $this->drupalPostForm(NULL, [], t('Save settings'));
     $this->assertText("Saved $field_name configuration", 'The form was successfully submitted.');
     $field = FieldConfig::loadByName('node', $this->contentType, $field_name);
     $this->assertEqual($field->getDefaultValueLiteral(), NULL, 'The default value was correctly saved.');
@@ -486,7 +486,7 @@ function testDeleteField() {
 
     // Create an additional node type.
     $type_name2 = strtolower($this->randomMachineName(8)) . '_test';
-    $type2 = $this->drupalCreateContentType(array('name' => $type_name2, 'type' => $type_name2));
+    $type2 = $this->drupalCreateContentType(['name' => $type_name2, 'type' => $type_name2]);
     $type_name2 = $type2->id();
 
     // Add a field to the second node type.
@@ -518,10 +518,10 @@ function testDisallowedFieldNames() {
     $this->config('field_ui.settings')->set('field_prefix', '')->save();
 
     $label = 'Disallowed field';
-    $edit = array(
+    $edit = [
       'label' => $label,
       'new_storage_type' => 'test_field',
-    );
+    ];
 
     // Try with an entity key.
     $edit['field_name'] = 'title';
@@ -543,31 +543,31 @@ function testLockedField() {
     // Create a locked field and attach it to a bundle. We need to do this
     // programmatically as there's no way to create a locked field through UI.
     $field_name = strtolower($this->randomMachineName(8));
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'test_field',
       'cardinality' => 1,
       'locked' => TRUE
-    ));
+    ]);
     $field_storage->save();
-    FieldConfig::create(array(
+    FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => $this->contentType,
-    ))->save();
+    ])->save();
     entity_get_form_display('node', $this->contentType, 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'test_field_widget',
-      ))
+      ])
       ->save();
 
     // Check that the links for edit and delete are not present.
     $this->drupalGet('admin/structure/types/manage/' . $this->contentType . '/fields');
-    $locked = $this->xpath('//tr[@id=:field_name]/td[4]', array(':field_name' => $field_name));
+    $locked = $this->xpath('//tr[@id=:field_name]/td[4]', [':field_name' => $field_name]);
     $this->assertTrue(in_array('Locked', $locked), 'Field is marked as Locked in the UI');
-    $edit_link = $this->xpath('//tr[@id=:field_name]/td[4]', array(':field_name' => $field_name));
+    $edit_link = $this->xpath('//tr[@id=:field_name]/td[4]', [':field_name' => $field_name]);
     $this->assertFalse(in_array('edit', $edit_link), 'Edit option for locked field is not present the UI');
-    $delete_link = $this->xpath('//tr[@id=:field_name]/td[4]', array(':field_name' => $field_name));
+    $delete_link = $this->xpath('//tr[@id=:field_name]/td[4]', [':field_name' => $field_name]);
     $this->assertFalse(in_array('delete', $delete_link), 'Delete option for locked field is not present the UI');
     $this->drupalGet('admin/structure/types/manage/' . $this->contentType . '/fields/node.' . $this->contentType . '.' . $field_name . '/delete');
     $this->assertResponse(403);
@@ -584,22 +584,22 @@ function testHiddenFields() {
 
     // Create a field storage and a field programmatically.
     $field_name = 'hidden_test_field';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => $field_name,
-    ))->save();
-    $field = array(
+    ])->save();
+    $field = [
       'field_name' => $field_name,
       'bundle' => $this->contentType,
       'entity_type' => 'node',
       'label' => t('Hidden field'),
-    );
+    ];
     FieldConfig::create($field)->save();
     entity_get_form_display('node', $this->contentType, 'default')
       ->setComponent($field_name)
       ->save();
-    $this->assertTrue(FieldConfig::load('node.' . $this->contentType . '.' . $field_name), format_string('A field of the field storage %field was created programmatically.', array('%field' => $field_name)));
+    $this->assertTrue(FieldConfig::load('node.' . $this->contentType . '.' . $field_name), format_string('A field of the field storage %field was created programmatically.', ['%field' => $field_name]));
 
     // Check that the newly added field appears on the 'Manage Fields'
     // screen.
@@ -609,17 +609,17 @@ function testHiddenFields() {
     // Check that the field does not appear in the 're-use existing field' row
     // on other bundles.
     $this->drupalGet('admin/structure/types/manage/page/fields/add-field');
-    $this->assertFalse($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', array(':field_name' => $field_name)), "The 're-use existing field' select respects field types 'no_ui' property.");
-    $this->assertTrue($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', array(':field_name' => 'field_tags')), "The 're-use existing field' select shows a valid option.");
+    $this->assertFalse($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', [':field_name' => $field_name]), "The 're-use existing field' select respects field types 'no_ui' property.");
+    $this->assertTrue($this->xpath('//select[@id="edit-existing-storage-name"]//option[@value=:field_name]', [':field_name' => 'field_tags']), "The 're-use existing field' select shows a valid option.");
 
     // Check that non-configurable fields are not available.
     $field_types = \Drupal::service('plugin.manager.field.field_type')->getDefinitions();
     foreach ($field_types as $field_type => $definition) {
       if (empty($definition['no_ui'])) {
-        $this->assertTrue($this->xpath('//select[@id="edit-new-storage-type"]//option[@value=:field_type]', array(':field_type' => $field_type)), SafeMarkup::format('Configurable field type @field_type is available.', array('@field_type' => $field_type)));
+        $this->assertTrue($this->xpath('//select[@id="edit-new-storage-type"]//option[@value=:field_type]', [':field_type' => $field_type]), SafeMarkup::format('Configurable field type @field_type is available.', ['@field_type' => $field_type]));
       }
       else {
-        $this->assertFalse($this->xpath('//select[@id="edit-new-storage-type"]//option[@value=:field_type]', array(':field_type' => $field_type)), SafeMarkup::format('Non-configurable field type @field_type is not available.', array('@field_type' => $field_type)));
+        $this->assertFalse($this->xpath('//select[@id="edit-new-storage-type"]//option[@value=:field_type]', [':field_type' => $field_type]), SafeMarkup::format('Non-configurable field type @field_type is not available.', ['@field_type' => $field_type]));
       }
     }
   }
@@ -630,16 +630,16 @@ function testHiddenFields() {
   function testDuplicateFieldName() {
     // field_tags already exists, so we're expecting an error when trying to
     // create a new field with the same name.
-    $edit = array(
+    $edit = [
       'field_name' => 'tags',
       'label' => $this->randomMachineName(),
       'new_storage_type' => 'entity_reference',
-    );
+    ];
     $url = 'admin/structure/types/manage/' . $this->contentType . '/fields/add-field';
     $this->drupalPostForm($url, $edit, t('Save and continue'));
 
     $this->assertText(t('The machine-readable name is already in use. It must be unique.'));
-    $this->assertUrl($url, array(), 'Stayed on the same page.');
+    $this->assertUrl($url, [], 'Stayed on the same page.');
   }
 
   /**
@@ -679,24 +679,24 @@ function testDeleteTaxonomyField() {
    */
   function testHelpDescriptions() {
     // Create an image field
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_image',
       'entity_type' => 'node',
       'type' => 'image',
-    ))->save();
+    ])->save();
 
-    FieldConfig::create(array(
+    FieldConfig::create([
       'field_name' => 'field_image',
       'entity_type' => 'node',
       'label' => 'Image',
       'bundle' => 'article',
-    ))->save();
+    ])->save();
 
     entity_get_form_display('node', 'article', 'default')->setComponent('field_image')->save();
 
-    $edit = array(
+    $edit = [
       'description' => '<strong>Test with an upload field.',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_image', $edit, t('Save settings'));
 
     // Check that hook_field_widget_form_alter() does believe this is the
@@ -704,9 +704,9 @@ function testHelpDescriptions() {
     $this->drupalGet('admin/structure/types/manage/article/fields/node.article.field_tags');
     $this->assertText('From hook_field_widget_form_alter(): Default form is true.', 'Default value form in hook_field_widget_form_alter().');
 
-    $edit = array(
+    $edit = [
       'description' => '<em>Test with a non upload field.',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_tags', $edit, t('Save settings'));
 
     $this->drupalGet('node/add/article');
diff --git a/core/modules/field_ui/tests/modules/field_ui_test/field_ui_test.module b/core/modules/field_ui/tests/modules/field_ui_test/field_ui_test.module
index 5fb232b..95234f1 100644
--- a/core/modules/field_ui/tests/modules/field_ui_test/field_ui_test.module
+++ b/core/modules/field_ui/tests/modules/field_ui_test/field_ui_test.module
@@ -15,41 +15,41 @@ function field_ui_test_form_entity_view_display_edit_form_alter(&$form, FormStat
   $table = &$form['fields'];
 
   foreach (Element::children($table) as $name) {
-    $table[$name]['parent_wrapper']['parent']['#options'] = array('indent' => 'Indent');
+    $table[$name]['parent_wrapper']['parent']['#options'] = ['indent' => 'Indent'];
     $table[$name]['parent_wrapper']['parent']['#default_value'] = 'indent';
   }
 
   $table['indent'] = [
-    '#attributes' => array('class' => array('draggable', 'field-group'), 'id' => 'indent-id'),
+    '#attributes' => ['class' => ['draggable', 'field-group'], 'id' => 'indent-id'],
     '#row_type' => 'group',
     '#region_callback' => 'field_ui_test_region_callback',
-    '#js_settings' => array('rowHandler' => 'group'),
-    'human_name' => array(
+    '#js_settings' => ['rowHandler' => 'group'],
+    'human_name' => [
       '#markup' => 'Indent',
       '#prefix' => '<span class="group-label">',
       '#suffix' => '</span>',
-    ),
-    'weight' => array(
+    ],
+    'weight' => [
       '#type' => 'textfield',
       '#default_value' => 0,
       '#size' => 3,
-      '#attributes' => array('class' => array('field-weight')),
-    ),
-    'parent_wrapper' => array(
-      'parent' => array(
+      '#attributes' => ['class' => ['field-weight']],
+    ],
+    'parent_wrapper' => [
+      'parent' => [
         '#type' => 'select',
-        '#options' => array('indent' => 'Indent'),
+        '#options' => ['indent' => 'Indent'],
         '#empty_value' => '',
         '#default_value' => '',
-        '#attributes' => array('class' => array('field-parent')),
-        '#parents' => array('fields', 'indent', 'parent'),
-      ),
-      'hidden_name' => array(
+        '#attributes' => ['class' => ['field-parent']],
+        '#parents' => ['fields', 'indent', 'parent'],
+      ],
+      'hidden_name' => [
         '#type' => 'hidden',
         '#default_value' => 'indent',
-        '#attributes' => array('class' => array('field-name')),
-      ),
-    ),
+        '#attributes' => ['class' => ['field-name']],
+      ],
+    ],
   ];
 
 }
diff --git a/core/modules/field_ui/tests/src/Functional/EntityDisplayModeTest.php b/core/modules/field_ui/tests/src/Functional/EntityDisplayModeTest.php
index 1d2cab0..3bb0b13 100644
--- a/core/modules/field_ui/tests/src/Functional/EntityDisplayModeTest.php
+++ b/core/modules/field_ui/tests/src/Functional/EntityDisplayModeTest.php
@@ -35,7 +35,7 @@ public function testEntityViewModeUI() {
     // Test the listing page.
     $this->drupalGet('admin/structure/display-modes/view');
     $this->assertResponse(403);
-    $this->drupalLogin($this->drupalCreateUser(array('administer display modes')));
+    $this->drupalLogin($this->drupalCreateUser(['administer display modes']));
     $this->drupalGet('admin/structure/display-modes/view');
     $this->assertResponse(200);
     $this->assertText(t('Add view mode'));
@@ -50,29 +50,29 @@ public function testEntityViewModeUI() {
 
     // Test adding a view mode including dots in machine_name.
     $this->clickLink(t('Test entity'));
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName()) . '.' . strtolower($this->randomMachineName()),
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertRaw('The machine-readable name must contain only lowercase letters, numbers, and underscores.');
 
     // Test adding a view mode.
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName()),
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('Saved the %label view mode.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Saved the %label view mode.', ['%label' => $edit['label']]));
 
     // Test editing the view mode.
     $this->drupalGet('admin/structure/display-modes/view/manage/entity_test.' . $edit['id']);
 
     // Test deleting the view mode.
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete the view mode %label?', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Are you sure you want to delete the view mode %label?', ['%label' => $edit['label']]));
     $this->drupalPostForm(NULL, NULL, t('Delete'));
-    $this->assertRaw(t('The view mode %label has been deleted.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('The view mode %label has been deleted.', ['%label' => $edit['label']]));
   }
 
   /**
@@ -82,7 +82,7 @@ public function testEntityFormModeUI() {
     // Test the listing page.
     $this->drupalGet('admin/structure/display-modes/form');
     $this->assertResponse(403);
-    $this->drupalLogin($this->drupalCreateUser(array('administer display modes')));
+    $this->drupalLogin($this->drupalCreateUser(['administer display modes']));
     $this->drupalGet('admin/structure/display-modes/form');
     $this->assertResponse(200);
     $this->assertText(t('Add form mode'));
@@ -96,29 +96,29 @@ public function testEntityFormModeUI() {
 
     // Test adding a view mode including dots in machine_name.
     $this->clickLink(t('Test entity'));
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName()) . '.' . strtolower($this->randomMachineName()),
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertRaw('The machine-readable name must contain only lowercase letters, numbers, and underscores.');
 
     // Test adding a form mode.
-    $edit = array(
+    $edit = [
       'id' => strtolower($this->randomMachineName()),
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('Saved the %label form mode.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Saved the %label form mode.', ['%label' => $edit['label']]));
 
     // Test editing the form mode.
     $this->drupalGet('admin/structure/display-modes/form/manage/entity_test.' . $edit['id']);
 
     // Test deleting the form mode.
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete the form mode %label?', array('%label' => $edit['label'])));
+    $this->assertRaw(t('Are you sure you want to delete the form mode %label?', ['%label' => $edit['label']]));
     $this->drupalPostForm(NULL, NULL, t('Delete'));
-    $this->assertRaw(t('The form mode %label has been deleted.', array('%label' => $edit['label'])));
+    $this->assertRaw(t('The form mode %label has been deleted.', ['%label' => $edit['label']]));
   }
 
 }
diff --git a/core/modules/field_ui/tests/src/Functional/FieldUIIndentationTest.php b/core/modules/field_ui/tests/src/Functional/FieldUIIndentationTest.php
index 528f2c4..3eb90d0 100644
--- a/core/modules/field_ui/tests/src/Functional/FieldUIIndentationTest.php
+++ b/core/modules/field_ui/tests/src/Functional/FieldUIIndentationTest.php
@@ -16,7 +16,7 @@ class FieldUIIndentationTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'field_ui_test');
+  public static $modules = ['node', 'field_ui', 'field_ui_test'];
 
   /**
    * {@inheritdoc}
@@ -25,11 +25,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create a test user.
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node display'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node display']);
     $this->drupalLogin($admin_user);
 
     // Create Basic page node type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
   }
 
diff --git a/core/modules/field_ui/tests/src/Functional/FieldUIRouteTest.php b/core/modules/field_ui/tests/src/Functional/FieldUIRouteTest.php
index 1e954e5..fe7a270 100644
--- a/core/modules/field_ui/tests/src/Functional/FieldUIRouteTest.php
+++ b/core/modules/field_ui/tests/src/Functional/FieldUIRouteTest.php
@@ -49,7 +49,7 @@ public function testFieldUIRoutes() {
     $this->assertTitle('Manage display | Drupal');
     $this->assertLocalTasks();
 
-    $edit = array('display_modes_custom[compact]' => TRUE);
+    $edit = ['display_modes_custom[compact]' => TRUE];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->drupalGet('admin/config/people/accounts/display/compact');
     $this->assertTitle('Manage display | Drupal');
@@ -63,37 +63,37 @@ public function testFieldUIRoutes() {
     $this->assertTitle('Manage form display | Drupal');
     $this->assertLocalTasks();
 
-    $edit = array('display_modes_custom[register]' => TRUE);
+    $edit = ['display_modes_custom[register]' => TRUE];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertResponse(200);
     $this->drupalGet('admin/config/people/accounts/form-display/register');
     $this->assertTitle('Manage form display | Drupal');
     $this->assertLocalTasks();
-    $this->assert(count($this->xpath('//ul/li[1]/a[contains(text(), :text)]', array(':text' => 'Default'))) == 1, 'Default secondary tab is in first position.');
+    $this->assert(count($this->xpath('//ul/li[1]/a[contains(text(), :text)]', [':text' => 'Default'])) == 1, 'Default secondary tab is in first position.');
 
     // Create new view mode and verify it's available on the Manage Display
     // screen after enabling it.
-    EntityViewMode::create(array(
+    EntityViewMode::create([
       'id' => 'user.test',
       'label' => 'Test',
       'targetEntityType' => 'user',
-    ))->save();
+    ])->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
 
-    $edit = array('display_modes_custom[test]' => TRUE);
+    $edit = ['display_modes_custom[test]' => TRUE];
     $this->drupalPostForm('admin/config/people/accounts/display', $edit, t('Save'));
     $this->assertLink('Test');
 
     // Create new form mode and verify it's available on the Manage Form
     // Display screen after enabling it.
-    EntityFormMode::create(array(
+    EntityFormMode::create([
       'id' => 'user.test',
       'label' => 'Test',
       'targetEntityType' => 'user',
-    ))->save();
+    ])->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
 
-    $edit = array('display_modes_custom[test]' => TRUE);
+    $edit = ['display_modes_custom[test]' => TRUE];
     $this->drupalPostForm('admin/config/people/accounts/form-display', $edit, t('Save'));
     $this->assertLink('Test');
   }
diff --git a/core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php b/core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php
index d060163..9e46d82 100644
--- a/core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php
+++ b/core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php
@@ -29,46 +29,46 @@ class EntityDisplayTest extends KernelTestBase {
    *
    * @var string[]
    */
-  public static $modules = array('field_ui', 'field', 'entity_test', 'user', 'text', 'field_test', 'node', 'system');
+  public static $modules = ['field_ui', 'field', 'entity_test', 'user', 'text', 'field_test', 'node', 'system'];
 
   protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('node');
     $this->installEntitySchema('user');
-    $this->installConfig(array('field', 'node', 'user'));
+    $this->installConfig(['field', 'node', 'user']);
   }
 
   /**
    * Tests basic CRUD operations on entity display objects.
    */
   public function testEntityDisplayCRUD() {
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ));
+    ]);
 
-    $expected = array();
+    $expected = [];
 
     // Check that providing no 'weight' results in the highest current weight
     // being assigned. The 'name' field's formatter has weight -5, therefore
     // these follow.
-    $expected['component_1'] = array('weight' => -4, 'settings' => array(), 'third_party_settings' => array());
-    $expected['component_2'] = array('weight' => -3, 'settings' => array(), 'third_party_settings' => array());
+    $expected['component_1'] = ['weight' => -4, 'settings' => [], 'third_party_settings' => []];
+    $expected['component_2'] = ['weight' => -3, 'settings' => [], 'third_party_settings' => []];
     $display->setComponent('component_1');
     $display->setComponent('component_2');
     $this->assertEqual($display->getComponent('component_1'), $expected['component_1']);
     $this->assertEqual($display->getComponent('component_2'), $expected['component_2']);
 
     // Check that arbitrary options are correctly stored.
-    $expected['component_3'] = array('weight' => 10, 'third_party_settings' => array('field_test' => array('foo' => 'bar')), 'settings' => array());
+    $expected['component_3'] = ['weight' => 10, 'third_party_settings' => ['field_test' => ['foo' => 'bar']], 'settings' => []];
     $display->setComponent('component_3', $expected['component_3']);
     $this->assertEqual($display->getComponent('component_3'), $expected['component_3']);
 
     // Check that the display can be properly saved and read back.
     $display->save();
     $display = EntityViewDisplay::load($display->id());
-    foreach (array('component_1', 'component_2', 'component_3') as $name) {
+    foreach (['component_1', 'component_2', 'component_3'] as $name) {
       $expected[$name]['region'] = 'content';
       $this->assertEqual($display->getComponent($name), $expected[$name]);
     }
@@ -79,16 +79,16 @@ public function testEntityDisplayCRUD() {
     $this->assertEqual('bar', $display->getThirdPartySetting('entity_test', 'foo'), 'Third party settings were added to the entity view display.');
 
     // Check that getComponents() returns options for all components.
-    $expected['name'] = array(
+    $expected['name'] = [
       'label' => 'hidden',
       'type' => 'string',
       'weight' => -5,
-      'settings' => array(
+      'settings' => [
         'link_to_entity' => FALSE,
-      ),
-      'third_party_settings' => array(),
+      ],
+      'third_party_settings' => [],
       'region' => 'content'
-    );
+    ];
     $this->assertEqual($display->getComponents(), $expected);
 
     // Check that a component can be removed.
@@ -102,12 +102,12 @@ public function testEntityDisplayCRUD() {
 
     // Check that createCopy() creates a new component that can be correctly
     // saved.
-    EntityViewMode::create(array('id' => $display->getTargetEntityTypeId() . '.other_view_mode', 'targetEntityType' => $display->getTargetEntityTypeId()))->save();
+    EntityViewMode::create(['id' => $display->getTargetEntityTypeId() . '.other_view_mode', 'targetEntityType' => $display->getTargetEntityTypeId()])->save();
     $new_display = $display->createCopy('other_view_mode');
     $new_display->save();
     $new_display = EntityViewDisplay::load($new_display->id());
     $dependencies = $new_display->calculateDependencies()->getDependencies();
-    $this->assertEqual(array('config' => array('core.entity_view_mode.entity_test.other_view_mode'), 'module' => array('entity_test')), $dependencies);
+    $this->assertEqual(['config' => ['core.entity_view_mode.entity_test.other_view_mode'], 'module' => ['entity_test']], $dependencies);
     $this->assertEqual($new_display->getTargetEntityTypeId(), $display->getTargetEntityTypeId());
     $this->assertEqual($new_display->getTargetBundle(), $display->getTargetBundle());
     $this->assertEqual($new_display->getMode(), 'other_view_mode');
@@ -118,18 +118,18 @@ public function testEntityDisplayCRUD() {
    * Test sorting of components by name on basic CRUD operations
    */
   public function testEntityDisplayCRUDSort() {
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ));
+    ]);
     $display->setComponent('component_3');
     $display->setComponent('component_1');
     $display->setComponent('component_2');
     $display->save();
     $components = array_keys($display->getComponents());
     // The name field is not configurable so will be added automatically.
-    $expected = array ( 0 => 'component_1', 1 => 'component_2', 2 => 'component_3', 'name');
+    $expected =  [ 0 => 'component_1', 1 => 'component_2', 2 => 'component_3', 'name'];
     $this->assertIdentical($components, $expected);
   }
 
@@ -143,14 +143,14 @@ public function testEntityGetDisplay() {
     $this->assertTrue($display->isNew());
 
     // Add some components and save the display.
-    $display->setComponent('component_1', array('weight' => 10, 'settings' => array()))
+    $display->setComponent('component_1', ['weight' => 10, 'settings' => []])
       ->save();
 
     // Check that entity_get_display() returns the correct object.
     $display = entity_get_display('entity_test', 'entity_test', 'default');
     $this->assertFalse($display->isNew());
     $this->assertEqual($display->id(), 'entity_test.entity_test.default');
-    $this->assertEqual($display->getComponent('component_1'), array( 'weight' => 10, 'settings' => array(), 'third_party_settings' => array(), 'region' => 'content'));
+    $this->assertEqual($display->getComponent('component_1'), [ 'weight' => 10, 'settings' => [], 'third_party_settings' => [], 'region' => 'content']);
   }
 
   /**
@@ -158,22 +158,22 @@ public function testEntityGetDisplay() {
    */
   public function testExtraFieldComponent() {
     entity_test_create_bundle('bundle_with_extra_fields');
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'bundle_with_extra_fields',
       'mode' => 'default',
-    ));
+    ]);
 
     // Check that the default visibility taken into account for extra fields
     // unknown in the display.
-    $this->assertEqual($display->getComponent('display_extra_field'), array('weight' => 5, 'region' => 'content'));
+    $this->assertEqual($display->getComponent('display_extra_field'), ['weight' => 5, 'region' => 'content']);
     $this->assertNull($display->getComponent('display_extra_field_hidden'));
 
     // Check that setting explicit options overrides the defaults.
     $display->removeComponent('display_extra_field');
-    $display->setComponent('display_extra_field_hidden', array('weight' => 10));
+    $display->setComponent('display_extra_field_hidden', ['weight' => 10]);
     $this->assertNull($display->getComponent('display_extra_field'));
-    $this->assertEqual($display->getComponent('display_extra_field_hidden'), array('weight' => 10, 'settings' => array(), 'third_party_settings' => array()));
+    $this->assertEqual($display->getComponent('display_extra_field_hidden'), ['weight' => 10, 'settings' => [], 'third_party_settings' => []]);
   }
 
   /**
@@ -181,7 +181,7 @@ public function testExtraFieldComponent() {
    */
   public function testExtraFieldComponentInitialInvalidConfig() {
     entity_test_create_bundle('bundle_with_extra_fields');
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'bundle_with_extra_fields',
       'mode' => 'default',
@@ -191,18 +191,18 @@ public function testExtraFieldComponentInitialInvalidConfig() {
           'weight' => 5,
         ],
       ],
-    ));
+    ]);
 
     // Check that the default visibility taken into account for extra fields
     // unknown in the display that were included in the initial config.
-    $this->assertEqual($display->getComponent('display_extra_field'), array('weight' => 5, 'region' => 'content'));
+    $this->assertEqual($display->getComponent('display_extra_field'), ['weight' => 5, 'region' => 'content']);
     $this->assertNull($display->getComponent('display_extra_field_hidden'));
 
     // Check that setting explicit options overrides the defaults.
     $display->removeComponent('display_extra_field');
-    $display->setComponent('display_extra_field_hidden', array('weight' => 10));
+    $display->setComponent('display_extra_field_hidden', ['weight' => 10]);
     $this->assertNull($display->getComponent('display_extra_field'));
-    $this->assertEqual($display->getComponent('display_extra_field_hidden'), array('weight' => 10, 'settings' => array(), 'third_party_settings' => array()));
+    $this->assertEqual($display->getComponent('display_extra_field_hidden'), ['weight' => 10, 'settings' => [], 'third_party_settings' => []]);
   }
 
   /**
@@ -211,36 +211,36 @@ public function testExtraFieldComponentInitialInvalidConfig() {
   public function testFieldComponent() {
     $field_name = 'test_field';
     // Create a field storage and a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'test_field'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ));
+    ]);
 
     // Check that providing no options results in default values being used.
     $display->setComponent($field_name);
     $field_type_info = \Drupal::service('plugin.manager.field.field_type')->getDefinition($field_storage->getType());
     $default_formatter = $field_type_info['default_formatter'];
     $formatter_settings = \Drupal::service('plugin.manager.field.formatter')->getDefaultSettings($default_formatter);
-    $expected = array(
+    $expected = [
       'weight' => -4,
       'label' => 'above',
       'type' => $default_formatter,
       'settings' => $formatter_settings,
-      'third_party_settings' => array(),
-    );
+      'third_party_settings' => [],
+    ];
     $this->assertEqual($display->getComponent($field_name), $expected);
 
     // Check that the getFormatter() method returns the correct formatter plugin.
@@ -256,9 +256,9 @@ public function testFieldComponent() {
     $this->assertEqual($formatter->randomValue, $random_value);
 
     // Check that changing the definition creates a new formatter.
-    $display->setComponent($field_name, array(
+    $display->setComponent($field_name, [
       'type' => 'field_test_multiple',
-    ));
+    ]);
     $formatter = $display->getRenderer($field_name);
     $this->assertEqual($formatter->getPluginId(), 'field_test_multiple');
     $this->assertFalse(isset($formatter->randomValue));
@@ -266,40 +266,40 @@ public function testFieldComponent() {
     // Check that the display has dependencies on the field and the module that
     // provides the formatter.
     $dependencies = $display->calculateDependencies()->getDependencies();
-    $this->assertEqual(array('config' => array('field.field.entity_test.entity_test.test_field'), 'module' => array('entity_test', 'field_test')), $dependencies);
+    $this->assertEqual(['config' => ['field.field.entity_test.entity_test.test_field'], 'module' => ['entity_test', 'field_test']], $dependencies);
   }
 
   /**
    * Tests the behavior of a field component for a base field.
    */
   public function testBaseFieldComponent() {
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test_base_field_display',
       'bundle' => 'entity_test_base_field_display',
       'mode' => 'default',
-    ));
+    ]);
 
     // Check that default options are correctly filled in.
     $formatter_settings = \Drupal::service('plugin.manager.field.formatter')->getDefaultSettings('text_default');
-    $expected = array(
+    $expected = [
       'test_no_display' => NULL,
-      'test_display_configurable' => array(
+      'test_display_configurable' => [
         'label' => 'above',
         'type' => 'text_default',
         'settings' => $formatter_settings,
-        'third_party_settings' => array(),
+        'third_party_settings' => [],
         'weight' => 10,
         'region' => 'content',
-      ),
-      'test_display_non_configurable' => array(
+      ],
+      'test_display_non_configurable' => [
         'label' => 'above',
         'type' => 'text_default',
         'settings' => $formatter_settings,
-        'third_party_settings' => array(),
+        'third_party_settings' => [],
         'weight' => 11,
         'region' => 'content',
-      ),
-    );
+      ],
+    ];
     foreach ($expected as $field_name => $options) {
       $this->assertEqual($display->getComponent($field_name), $options);
     }
@@ -337,7 +337,7 @@ public function testBaseFieldComponent() {
    */
   public function testDeleteBundle() {
     // Create a node bundle, display and form display object.
-    $type = NodeType::create(array('type' => 'article'));
+    $type = NodeType::create(['type' => 'article']);
     $type->save();
     node_add_body_field($type);
     entity_get_display('node', 'article', 'default')->save();
@@ -357,30 +357,30 @@ public function testDeleteBundle() {
   public function testDeleteField() {
     $field_name = 'test_field';
     // Create a field storage and a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'test_field'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
     // Create default and teaser entity display.
-    EntityViewMode::create(array('id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'))->save();
-    EntityViewDisplay::create(array(
+    EntityViewMode::create(['id' => 'entity_test.teaser', 'targetEntityType' => 'entity_test'])->save();
+    EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ))->setComponent($field_name)->save();
-    EntityViewDisplay::create(array(
+    ])->setComponent($field_name)->save();
+    EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'teaser',
-    ))->setComponent($field_name)->save();
+    ])->setComponent($field_name)->save();
 
     // Check the component exists.
     $display = entity_get_display('entity_test', 'entity_test', 'default');
@@ -402,27 +402,27 @@ public function testDeleteField() {
    * Tests \Drupal\Core\Entity\EntityDisplayBase::onDependencyRemoval().
    */
   public function testOnDependencyRemoval() {
-    $this->enableModules(array('field_plugins_test'));
+    $this->enableModules(['field_plugins_test']);
 
     $field_name = 'test_field';
     // Create a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'text'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
-    EntityViewDisplay::create(array(
+    EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ))->setComponent($field_name, array('type' => 'field_plugins_test_text_formatter'))->save();
+    ])->setComponent($field_name, ['type' => 'field_plugins_test_text_formatter'])->save();
 
     // Check the component exists and is of the correct type.
     $display = entity_get_display('entity_test', 'entity_test', 'default');
@@ -460,47 +460,47 @@ public function testEntityDisplayInvalidateCacheTags() {
    * Test getDisplayModeOptions().
    */
   public function testGetDisplayModeOptions() {
-    NodeType::create(array('type' => 'article'))->save();
+    NodeType::create(['type' => 'article'])->save();
 
-    EntityViewDisplay::create(array(
+    EntityViewDisplay::create([
       'targetEntityType' => 'node',
       'bundle' => 'article',
       'mode' => 'default',
-    ))->setStatus(TRUE)->save();
+    ])->setStatus(TRUE)->save();
 
-    $display_teaser = EntityViewDisplay::create(array(
+    $display_teaser = EntityViewDisplay::create([
       'targetEntityType' => 'node',
       'bundle' => 'article',
       'mode' => 'teaser',
-    ));
+    ]);
     $display_teaser->save();
 
-    EntityFormDisplay::create(array(
+    EntityFormDisplay::create([
       'targetEntityType' => 'user',
       'bundle' => 'user',
       'mode' => 'default',
-    ))->setStatus(TRUE)->save();
+    ])->setStatus(TRUE)->save();
 
-    $form_display_teaser = EntityFormDisplay::create(array(
+    $form_display_teaser = EntityFormDisplay::create([
       'targetEntityType' => 'user',
       'bundle' => 'user',
       'mode' => 'register',
-    ));
+    ]);
     $form_display_teaser->save();
 
     // Test getViewModeOptionsByBundle().
     $view_modes = \Drupal::entityManager()->getViewModeOptionsByBundle('node', 'article');
-    $this->assertEqual($view_modes, array('default' => 'Default'));
+    $this->assertEqual($view_modes, ['default' => 'Default']);
     $display_teaser->setStatus(TRUE)->save();
     $view_modes = \Drupal::entityManager()->getViewModeOptionsByBundle('node', 'article');
-    $this->assertEqual($view_modes, array('default' => 'Default', 'teaser' => 'Teaser'));
+    $this->assertEqual($view_modes, ['default' => 'Default', 'teaser' => 'Teaser']);
 
     // Test getFormModeOptionsByBundle().
     $form_modes = \Drupal::entityManager()->getFormModeOptionsByBundle('user', 'user');
-    $this->assertEqual($form_modes, array('default' => 'Default'));
+    $this->assertEqual($form_modes, ['default' => 'Default']);
     $form_display_teaser->setStatus(TRUE)->save();
     $form_modes = \Drupal::entityManager()->getFormModeOptionsByBundle('user', 'user');
-    $this->assertEqual($form_modes, array('default' => 'Default', 'register' => 'Register'));
+    $this->assertEqual($form_modes, ['default' => 'Default', 'register' => 'Register']);
   }
 
   /**
diff --git a/core/modules/field_ui/tests/src/Kernel/EntityFormDisplayTest.php b/core/modules/field_ui/tests/src/Kernel/EntityFormDisplayTest.php
index 6f770d6..09d2a20 100644
--- a/core/modules/field_ui/tests/src/Kernel/EntityFormDisplayTest.php
+++ b/core/modules/field_ui/tests/src/Kernel/EntityFormDisplayTest.php
@@ -36,14 +36,14 @@ public function testEntityGetFromDisplay() {
     $this->assertTrue($form_display->isNew());
 
     // Add some components and save the display.
-    $form_display->setComponent('component_1', array('weight' => 10))
+    $form_display->setComponent('component_1', ['weight' => 10])
       ->save();
 
     // Check that entity_get_form_display() returns the correct object.
     $form_display = entity_get_form_display('entity_test', 'entity_test', 'default');
     $this->assertFalse($form_display->isNew());
     $this->assertEqual($form_display->id(), 'entity_test.entity_test.default');
-    $this->assertEqual($form_display->getComponent('component_1'), array('weight' => 10, 'settings' => array(), 'third_party_settings' => array(), 'region' => 'content'));
+    $this->assertEqual($form_display->getComponent('component_1'), ['weight' => 10, 'settings' => [], 'third_party_settings' => [], 'region' => 'content']);
   }
 
   /**
@@ -52,35 +52,35 @@ public function testEntityGetFromDisplay() {
   public function testFieldComponent() {
     // Create a field storage and a field.
     $field_name = 'test_field';
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'test_field'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
-    $form_display = EntityFormDisplay::create(array(
+    $form_display = EntityFormDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ));
+    ]);
 
     // Check that providing no options results in default values being used.
     $form_display->setComponent($field_name);
     $field_type_info = \Drupal::service('plugin.manager.field.field_type')->getDefinition($field_storage->getType());
     $default_widget = $field_type_info['default_widget'];
     $widget_settings = \Drupal::service('plugin.manager.field.widget')->getDefaultSettings($default_widget);
-    $expected = array(
+    $expected = [
       'weight' => 3,
       'type' => $default_widget,
       'settings' => $widget_settings,
-      'third_party_settings' => array(),
-    );
+      'third_party_settings' => [],
+    ];
     $this->assertEqual($form_display->getComponent($field_name), $expected);
 
     // Check that the getWidget() method returns the correct widget plugin.
@@ -96,9 +96,9 @@ public function testFieldComponent() {
     $this->assertEqual($widget->randomValue, $random_value);
 
     // Check that changing the definition creates a new widget.
-    $form_display->setComponent($field_name, array(
+    $form_display->setComponent($field_name, [
       'type' => 'field_test_multiple',
-    ));
+    ]);
     $widget = $form_display->getRenderer($field_name);
     $this->assertEqual($widget->getPluginId(), 'test_field_widget');
     $this->assertFalse(isset($widget->randomValue));
@@ -106,9 +106,9 @@ public function testFieldComponent() {
     // Check that specifying an unknown widget (e.g. case of a disabled module)
     // gets stored as is in the display, but results in the default widget being
     // used.
-    $form_display->setComponent($field_name, array(
+    $form_display->setComponent($field_name, [
       'type' => 'unknown_widget',
-    ));
+    ]);
     $options = $form_display->getComponent($field_name);
     $this->assertEqual($options['type'], 'unknown_widget');
     $widget = $form_display->getRenderer($field_name);
@@ -119,31 +119,31 @@ public function testFieldComponent() {
    * Tests the behavior of a field component for a base field.
    */
   public function testBaseFieldComponent() {
-    $display = EntityFormDisplay::create(array(
+    $display = EntityFormDisplay::create([
       'targetEntityType' => 'entity_test_base_field_display',
       'bundle' => 'entity_test_base_field_display',
       'mode' => 'default',
-    ));
+    ]);
 
     // Check that default options are correctly filled in.
     $formatter_settings = \Drupal::service('plugin.manager.field.widget')->getDefaultSettings('text_textfield');
-    $expected = array(
+    $expected = [
       'test_no_display' => NULL,
-      'test_display_configurable' => array(
+      'test_display_configurable' => [
         'type' => 'text_textfield',
         'settings' => $formatter_settings,
-        'third_party_settings' => array(),
+        'third_party_settings' => [],
         'weight' => 10,
         'region' => 'content',
-      ),
-      'test_display_non_configurable' => array(
+      ],
+      'test_display_non_configurable' => [
         'type' => 'text_textfield',
         'settings' => $formatter_settings,
-        'third_party_settings' => array(),
+        'third_party_settings' => [],
         'weight' => 11,
         'region' => 'content',
-      ),
-    );
+      ],
+    ];
     foreach ($expected as $field_name => $options) {
       $this->assertEqual($display->getComponent($field_name), $options);
     }
@@ -182,30 +182,30 @@ public function testBaseFieldComponent() {
   public function testDeleteField() {
     $field_name = 'test_field';
     // Create a field storage and a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'test_field'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
     // Create default and compact entity display.
-    EntityFormMode::create(array('id' => 'entity_test.compact', 'targetEntityType' => 'entity_test'))->save();
-    EntityFormDisplay::create(array(
+    EntityFormMode::create(['id' => 'entity_test.compact', 'targetEntityType' => 'entity_test'])->save();
+    EntityFormDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ))->setComponent($field_name)->save();
-    EntityFormDisplay::create(array(
+    ])->setComponent($field_name)->save();
+    EntityFormDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'compact',
-    ))->setComponent($field_name)->save();
+    ])->setComponent($field_name)->save();
 
     // Check the component exists.
     $display = entity_get_form_display('entity_test', 'entity_test', 'default');
@@ -227,27 +227,27 @@ public function testDeleteField() {
    * Tests \Drupal\Core\Entity\EntityDisplayBase::onDependencyRemoval().
    */
   public function testOnDependencyRemoval() {
-    $this->enableModules(array('field_plugins_test'));
+    $this->enableModules(['field_plugins_test']);
 
     $field_name = 'test_field';
     // Create a field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'text'
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'entity_test',
-    ));
+    ]);
     $field->save();
 
-    EntityFormDisplay::create(array(
+    EntityFormDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ))->setComponent($field_name, array('type' => 'field_plugins_test_text_widget'))->save();
+    ])->setComponent($field_name, ['type' => 'field_plugins_test_text_widget'])->save();
 
     // Check the component exists and is of the correct type.
     $display = entity_get_form_display('entity_test', 'entity_test', 'default');
diff --git a/core/modules/file/file.api.php b/core/modules/file/file.api.php
index c7994ff..1fda717 100644
--- a/core/modules/file/file.api.php
+++ b/core/modules/file/file.api.php
@@ -25,7 +25,7 @@
  * @see file_validate()
  */
 function hook_file_validate(Drupal\file\FileInterface $file) {
-  $errors = array();
+  $errors = [];
 
   if (!$file->getFilename()) {
     $errors[] = t("The file's name is empty. Please give a name to the file.");
@@ -53,7 +53,7 @@ function hook_file_copy(Drupal\file\FileInterface $file, Drupal\file\FileInterfa
     $file->setFilename($file->getOwner()->name . '_' . $file->getFilename());
     $file->save();
 
-    \Drupal::logger('file')->notice('Copied file %source has been renamed to %destination', array('%source' => $source->filename, '%destination' => $file->getFilename()));
+    \Drupal::logger('file')->notice('Copied file %source has been renamed to %destination', ['%source' => $source->filename, '%destination' => $file->getFilename()]);
   }
 }
 
@@ -73,7 +73,7 @@ function hook_file_move(Drupal\file\FileInterface $file, Drupal\file\FileInterfa
     $file->setFilename($file->getOwner()->name . '_' . $file->getFilename());
     $file->save();
 
-    \Drupal::logger('file')->notice('Moved file %source has been renamed to %destination', array('%source' => $source->filename, '%destination' => $file->getFilename()));
+    \Drupal::logger('file')->notice('Moved file %source has been renamed to %destination', ['%source' => $source->filename, '%destination' => $file->getFilename()]);
   }
 }
 
diff --git a/core/modules/file/file.field.inc b/core/modules/file/file.field.inc
index bbfc2b2..80ffbe9 100644
--- a/core/modules/file/file.field.inc
+++ b/core/modules/file/file.field.inc
@@ -26,26 +26,26 @@ function template_preprocess_file_widget_multiple(&$variables) {
   $table_id = $element['#id'] . '-table';
 
   // Build up a table of applicable fields.
-  $headers = array();
+  $headers = [];
   $headers[] = t('File information');
   if ($element['#display_field']) {
-    $headers[] = array(
+    $headers[] = [
       'data' => t('Display'),
-      'class' => array('checkbox'),
-    );
+      'class' => ['checkbox'],
+    ];
   }
   $headers[] = t('Weight');
   $headers[] = t('Operations');
 
   // Get our list of widgets in order (needed when the form comes back after
   // preview or failed validation).
-  $widgets = array();
+  $widgets = [];
   foreach (Element::children($element) as $key) {
     $widgets[] = &$element[$key];
   }
   usort($widgets, '_field_multiple_value_form_sort_helper');
 
-  $rows = array();
+  $rows = [];
   foreach ($widgets as $key => &$widget) {
     // Save the uploading row for last.
     if (empty($widget['#files'])) {
@@ -56,7 +56,7 @@ function template_preprocess_file_widget_multiple(&$variables) {
 
     // Delay rendering of the buttons, so that they can be rendered later in the
     // "operations" column.
-    $operations_elements = array();
+    $operations_elements = [];
     foreach (Element::children($widget) as $sub_key) {
       if (isset($widget[$sub_key]['#type']) && $widget[$sub_key]['#type'] == 'submit') {
         hide($widget[$sub_key]);
@@ -72,21 +72,21 @@ function template_preprocess_file_widget_multiple(&$variables) {
     hide($widget['_weight']);
 
     // Render everything else together in a column, without the normal wrappers.
-    $widget['#theme_wrappers'] = array();
+    $widget['#theme_wrappers'] = [];
     $information = drupal_render($widget);
     $display = '';
     if ($element['#display_field']) {
       unset($widget['display']['#title']);
-      $display = array(
+      $display = [
         'data' => render($widget['display']),
-        'class' => array('checkbox'),
-      );
+        'class' => ['checkbox'],
+      ];
     }
-    $widget['_weight']['#attributes']['class'] = array($weight_class);
+    $widget['_weight']['#attributes']['class'] = [$weight_class];
     $weight = render($widget['_weight']);
 
     // Arrange the row with all of the rendered columns.
-    $row = array();
+    $row = [];
     $row[] = $information;
     if ($element['#display_field']) {
       $row[] = $display;
@@ -98,31 +98,31 @@ function template_preprocess_file_widget_multiple(&$variables) {
     foreach (Element::children($operations_elements) as $key) {
       show($operations_elements[$key]);
     }
-    $row[] = array(
+    $row[] = [
       'data' => $operations_elements,
-    );
-    $rows[] = array(
+    ];
+    $rows[] = [
       'data' => $row,
-      'class' => isset($widget['#attributes']['class']) ? array_merge($widget['#attributes']['class'], array('draggable')) : array('draggable'),
-    );
+      'class' => isset($widget['#attributes']['class']) ? array_merge($widget['#attributes']['class'], ['draggable']) : ['draggable'],
+    ];
   }
 
-  $variables['table'] = array(
+  $variables['table'] = [
     '#type' => 'table',
     '#header' => $headers,
     '#rows' => $rows,
-    '#attributes' => array(
+    '#attributes' => [
       'id' => $table_id,
-    ),
-    '#tabledrag' => array(
-      array(
+    ],
+    '#tabledrag' => [
+      [
         'action' => 'order',
         'relationship' => 'sibling',
         'group' => $weight_class,
-      ),
-    ),
+      ],
+    ],
     '#access' => !empty($rows),
-  );
+  ];
 
   $variables['element'] = $element;
 }
@@ -144,7 +144,7 @@ function template_preprocess_file_upload_help(&$variables) {
   $upload_validators = $variables['upload_validators'];
   $cardinality = $variables['cardinality'];
 
-  $descriptions = array();
+  $descriptions = [];
 
   if (!empty($description)) {
     $descriptions[] = FieldFilteredMarkup::create($description);
@@ -158,26 +158,26 @@ function template_preprocess_file_upload_help(&$variables) {
     }
   }
   if (isset($upload_validators['file_validate_size'])) {
-    $descriptions[] = t('@size limit.', array('@size' => format_size($upload_validators['file_validate_size'][0])));
+    $descriptions[] = t('@size limit.', ['@size' => format_size($upload_validators['file_validate_size'][0])]);
   }
   if (isset($upload_validators['file_validate_extensions'])) {
-    $descriptions[] = t('Allowed types: @extensions.', array('@extensions' => $upload_validators['file_validate_extensions'][0]));
+    $descriptions[] = t('Allowed types: @extensions.', ['@extensions' => $upload_validators['file_validate_extensions'][0]]);
   }
 
   if (isset($upload_validators['file_validate_image_resolution'])) {
     $max = $upload_validators['file_validate_image_resolution'][0];
     $min = $upload_validators['file_validate_image_resolution'][1];
     if ($min && $max && $min == $max) {
-      $descriptions[] = t('Images must be exactly <strong>@size</strong> pixels.', array('@size' => $max));
+      $descriptions[] = t('Images must be exactly <strong>@size</strong> pixels.', ['@size' => $max]);
     }
     elseif ($min && $max) {
-      $descriptions[] = t('Images must be larger than <strong>@min</strong> pixels. Images larger than <strong>@max</strong> pixels will be resized.', array('@min' => $min, '@max' => $max));
+      $descriptions[] = t('Images must be larger than <strong>@min</strong> pixels. Images larger than <strong>@max</strong> pixels will be resized.', ['@min' => $min, '@max' => $max]);
     }
     elseif ($min) {
-      $descriptions[] = t('Images must be larger than <strong>@min</strong> pixels.', array('@min' => $min));
+      $descriptions[] = t('Images must be larger than <strong>@min</strong> pixels.', ['@min' => $min]);
     }
     elseif ($max) {
-      $descriptions[] = t('Images larger than <strong>@max</strong> pixels will be resized.', array('@max' => $max));
+      $descriptions[] = t('Images larger than <strong>@max</strong> pixels will be resized.', ['@max' => $max]);
     }
   }
 
diff --git a/core/modules/file/file.install b/core/modules/file/file.install
index d371384..9134a25 100644
--- a/core/modules/file/file.install
+++ b/core/modules/file/file.install
@@ -9,51 +9,51 @@
  * Implements hook_schema().
  */
 function file_schema() {
-  $schema['file_usage'] = array(
+  $schema['file_usage'] = [
     'description' => 'Track where a file is used.',
-    'fields' => array(
-      'fid' => array(
+    'fields' => [
+      'fid' => [
         'description' => 'File ID.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'module' => array(
+      ],
+      'module' => [
         'description' => 'The name of the module that is using the file.',
         'type' => 'varchar_ascii',
         'length' => DRUPAL_EXTENSION_NAME_MAX_LENGTH,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'type' => array(
+      ],
+      'type' => [
         'description' => 'The name of the object type in which the file is used.',
         'type' => 'varchar_ascii',
         'length' => 64,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'id' => array(
+      ],
+      'id' => [
         'description' => 'The primary key of the object using the file.',
         'type' => 'varchar_ascii',
         'length' => 64,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'count' => array(
+      ],
+      'count' => [
         'description' => 'The number of times this file is used by this object.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('fid', 'type', 'id', 'module'),
-    'indexes' => array(
-      'type_id' => array('type', 'id'),
-      'fid_count' => array('fid', 'count'),
-      'fid_module' => array('fid', 'module'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['fid', 'type', 'id', 'module'],
+    'indexes' => [
+      'type_id' => ['type', 'id'],
+      'fid_count' => ['fid', 'count'],
+      'fid_module' => ['fid', 'module'],
+    ],
+  ];
   return $schema;
 }
 
@@ -63,7 +63,7 @@ function file_schema() {
  * Display information about getting upload progress bars working.
  */
 function file_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   // Check the server's ability to indicate upload progress.
   if ($phase == 'runtime') {
@@ -107,11 +107,11 @@ function file_requirements($phase) {
     elseif ($implementation == 'uploadprogress') {
       $value = t('Enabled (<a href="http://pecl.php.net/package/uploadprogress">PECL uploadprogress</a>)');
     }
-    $requirements['file_progress'] = array(
+    $requirements['file_progress'] = [
       'title' => t('Upload progress'),
       'value' => $value,
       'description' => $description,
-    );
+    ];
   }
 
   return $requirements;
diff --git a/core/modules/file/file.module b/core/modules/file/file.module
index 687a62c..a6fc3f6 100644
--- a/core/modules/file/file.module
+++ b/core/modules/file/file.module
@@ -30,15 +30,15 @@ function file_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.file':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The File module allows you to create fields that contain files. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":file_documentation">online documentation for the File module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':file_documentation' => 'https://www.drupal.org/documentation/modules/file')) . '</p>';
+      $output .= '<p>' . t('The File module allows you to create fields that contain files. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":file_documentation">online documentation for the File module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':file_documentation' => 'https://www.drupal.org/documentation/modules/file']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying file fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the file field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the file field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Allowing file extensions') . '</dt>';
       $output .= '<dd>' . t('In the field settings, you can define the allowed file extensions (for example <em>pdf docx psd</em>) for the files that will be uploaded with the file field.') . '</dd>';
       $output .= '<dt>' . t('Storing files') . '</dt>';
-      $output .= '<dd>' . t('Uploaded files can either be stored as <em>public</em> or <em>private</em>, depending on the <a href=":file-system">File system settings</a>. For more information, see the <a href=":system-help">System module help page</a>.', array(':file-system' => \Drupal::url('system.file_system_settings'), ':system-help' => \Drupal::url('help.page', array('name' => 'system')))) . '</dd>';
+      $output .= '<dd>' . t('Uploaded files can either be stored as <em>public</em> or <em>private</em>, depending on the <a href=":file-system">File system settings</a>. For more information, see the <a href=":system-help">System module help page</a>.', [':file-system' => \Drupal::url('system.file_system_settings'), ':system-help' => \Drupal::url('help.page', ['name' => 'system'])]) . '</dd>';
       $output .= '<dt>' . t('Restricting the maximum file size') . '</dt>';
       $output .= '<dd>' . t('The maximum file size that users can upload is limited by PHP settings of the server, but you can restrict by entering the desired value as the <em>Maximum upload size</em> setting. The maximum file size is automatically displayed to users in the help text of the file field.') . '</dd>';
       $output .= '<dt>' . t('Displaying files and descriptions') . '<dt>';
@@ -96,7 +96,7 @@ function file_load_multiple(array $fids = NULL, $reset = FALSE) {
  */
 function file_load($fid, $reset = FALSE) {
   if ($reset) {
-    \Drupal::entityManager()->getStorage('file')->resetCache(array($fid));
+    \Drupal::entityManager()->getStorage('file')->resetCache([$fid]);
   }
   return File::load($fid);
 }
@@ -141,12 +141,12 @@ function file_load($fid, $reset = FALSE) {
 function file_copy(FileInterface $source, $destination = NULL, $replace = FILE_EXISTS_RENAME) {
   if (!file_valid_uri($destination)) {
     if (($realpath = drupal_realpath($source->getFileUri())) !== FALSE) {
-      \Drupal::logger('file')->notice('File %file (%realpath) could not be copied because the destination %destination is invalid. This is often caused by improper use of file_copy() or a missing stream wrapper.', array('%file' => $source->getFileUri(), '%realpath' => $realpath, '%destination' => $destination));
+      \Drupal::logger('file')->notice('File %file (%realpath) could not be copied because the destination %destination is invalid. This is often caused by improper use of file_copy() or a missing stream wrapper.', ['%file' => $source->getFileUri(), '%realpath' => $realpath, '%destination' => $destination]);
     }
     else {
-      \Drupal::logger('file')->notice('File %file could not be copied because the destination %destination is invalid. This is often caused by improper use of file_copy() or a missing stream wrapper.', array('%file' => $source->getFileUri(), '%destination' => $destination));
+      \Drupal::logger('file')->notice('File %file could not be copied because the destination %destination is invalid. This is often caused by improper use of file_copy() or a missing stream wrapper.', ['%file' => $source->getFileUri(), '%destination' => $destination]);
     }
-    drupal_set_message(t('The specified file %file could not be copied because the destination is invalid. More information is available in the system log.', array('%file' => $source->getFileUri())), 'error');
+    drupal_set_message(t('The specified file %file could not be copied because the destination is invalid. More information is available in the system log.', ['%file' => $source->getFileUri()]), 'error');
     return FALSE;
   }
 
@@ -158,7 +158,7 @@ function file_copy(FileInterface $source, $destination = NULL, $replace = FILE_E
     // @todo Do not create a new entity in order to update it. See
     //   https://www.drupal.org/node/2241865.
     if ($replace == FILE_EXISTS_REPLACE) {
-      $existing_files = entity_load_multiple_by_properties('file', array('uri' => $uri));
+      $existing_files = entity_load_multiple_by_properties('file', ['uri' => $uri]);
       if (count($existing_files)) {
         $existing = reset($existing_files);
         $file->fid = $existing->id();
@@ -175,7 +175,7 @@ function file_copy(FileInterface $source, $destination = NULL, $replace = FILE_E
     $file->save();
 
     // Inform modules that the file has been copied.
-    \Drupal::moduleHandler()->invokeAll('file_copy', array($file, $source));
+    \Drupal::moduleHandler()->invokeAll('file_copy', [$file, $source]);
 
     return $file;
   }
@@ -216,12 +216,12 @@ function file_copy(FileInterface $source, $destination = NULL, $replace = FILE_E
 function file_move(FileInterface $source, $destination = NULL, $replace = FILE_EXISTS_RENAME) {
   if (!file_valid_uri($destination)) {
     if (($realpath = drupal_realpath($source->getFileUri())) !== FALSE) {
-      \Drupal::logger('file')->notice('File %file (%realpath) could not be moved because the destination %destination is invalid. This may be caused by improper use of file_move() or a missing stream wrapper.', array('%file' => $source->getFileUri(), '%realpath' => $realpath, '%destination' => $destination));
+      \Drupal::logger('file')->notice('File %file (%realpath) could not be moved because the destination %destination is invalid. This may be caused by improper use of file_move() or a missing stream wrapper.', ['%file' => $source->getFileUri(), '%realpath' => $realpath, '%destination' => $destination]);
     }
     else {
-      \Drupal::logger('file')->notice('File %file could not be moved because the destination %destination is invalid. This may be caused by improper use of file_move() or a missing stream wrapper.', array('%file' => $source->getFileUri(), '%destination' => $destination));
+      \Drupal::logger('file')->notice('File %file could not be moved because the destination %destination is invalid. This may be caused by improper use of file_move() or a missing stream wrapper.', ['%file' => $source->getFileUri(), '%destination' => $destination]);
     }
-    drupal_set_message(t('The specified file %file could not be moved because the destination is invalid. More information is available in the system log.', array('%file' => $source->getFileUri())), 'error');
+    drupal_set_message(t('The specified file %file could not be moved because the destination is invalid. More information is available in the system log.', ['%file' => $source->getFileUri()]), 'error');
     return FALSE;
   }
 
@@ -232,7 +232,7 @@ function file_move(FileInterface $source, $destination = NULL, $replace = FILE_E
     $file->setFileUri($uri);
     // If we are replacing an existing file re-use its database record.
     if ($replace == FILE_EXISTS_REPLACE) {
-      $existing_files = entity_load_multiple_by_properties('file', array('uri' => $uri));
+      $existing_files = entity_load_multiple_by_properties('file', ['uri' => $uri]);
       if (count($existing_files)) {
         $existing = reset($existing_files);
         $delete_source = TRUE;
@@ -249,7 +249,7 @@ function file_move(FileInterface $source, $destination = NULL, $replace = FILE_E
     $file->save();
 
     // Inform modules that the file has been moved.
-    \Drupal::moduleHandler()->invokeAll('file_move', array($file, $source));
+    \Drupal::moduleHandler()->invokeAll('file_move', [$file, $source]);
 
     // Delete the original if it's not in use elsewhere.
     if ($delete_source && !\Drupal::service('file.usage')->listUsage($source)) {
@@ -283,9 +283,9 @@ function file_move(FileInterface $source, $destination = NULL, $replace = FILE_E
  *
  * @see hook_file_validate()
  */
-function file_validate(FileInterface $file, $validators = array()) {
+function file_validate(FileInterface $file, $validators = []) {
   // Call the validation functions specified by this function's caller.
-  $errors = array();
+  $errors = [];
   foreach ($validators as $function => $args) {
     if (function_exists($function)) {
       array_unshift($args, $file);
@@ -294,7 +294,7 @@ function file_validate(FileInterface $file, $validators = array()) {
   }
 
   // Let other modules perform validation on the new file.
-  return array_merge($errors, \Drupal::moduleHandler()->invokeAll('file_validate', array($file)));
+  return array_merge($errors, \Drupal::moduleHandler()->invokeAll('file_validate', [$file]));
 }
 
 /**
@@ -308,7 +308,7 @@ function file_validate(FileInterface $file, $validators = array()) {
  *   array containing an error message if it's not or is empty.
  */
 function file_validate_name_length(FileInterface $file) {
-  $errors = array();
+  $errors = [];
 
   if (!$file->getFilename()) {
     $errors[] = t("The file's name is empty. Please give a name to the file.");
@@ -334,11 +334,11 @@ function file_validate_name_length(FileInterface $file) {
  * @see hook_file_validate()
  */
 function file_validate_extensions(FileInterface $file, $extensions) {
-  $errors = array();
+  $errors = [];
 
   $regex = '/\.(' . preg_replace('/ +/', '|', preg_quote($extensions)) . ')$/i';
   if (!preg_match($regex, $file->getFilename())) {
-    $errors[] = t('Only files with the following extensions are allowed: %files-allowed.', array('%files-allowed' => $extensions));
+    $errors[] = t('Only files with the following extensions are allowed: %files-allowed.', ['%files-allowed' => $extensions]);
   }
   return $errors;
 }
@@ -363,15 +363,15 @@ function file_validate_extensions(FileInterface $file, $extensions) {
  */
 function file_validate_size(FileInterface $file, $file_limit = 0, $user_limit = 0) {
   $user = \Drupal::currentUser();
-  $errors = array();
+  $errors = [];
 
   if ($file_limit && $file->getSize() > $file_limit) {
-    $errors[] = t('The file is %filesize exceeding the maximum file size of %maxsize.', array('%filesize' => format_size($file->getSize()), '%maxsize' => format_size($file_limit)));
+    $errors[] = t('The file is %filesize exceeding the maximum file size of %maxsize.', ['%filesize' => format_size($file->getSize()), '%maxsize' => format_size($file_limit)]);
   }
 
   // Save a query by only calling spaceUsed() when a limit is provided.
   if ($user_limit && (\Drupal::entityManager()->getStorage('file')->spaceUsed($user->id()) + $file->getSize()) > $user_limit) {
-    $errors[] = t('The file is %filesize which would exceed your disk quota of %quota.', array('%filesize' => format_size($file->getSize()), '%quota' => format_size($user_limit)));
+    $errors[] = t('The file is %filesize which would exceed your disk quota of %quota.', ['%filesize' => format_size($file->getSize()), '%quota' => format_size($user_limit)]);
   }
 
   return $errors;
@@ -390,13 +390,13 @@ function file_validate_size(FileInterface $file, $file_limit = 0, $user_limit =
  * @see hook_file_validate()
  */
 function file_validate_is_image(FileInterface $file) {
-  $errors = array();
+  $errors = [];
 
   $image_factory = \Drupal::service('image.factory');
   $image = $image_factory->get($file->getFileUri());
   if (!$image->isValid()) {
     $supported_extensions = $image_factory->getSupportedExtensions();
-    $errors[] = t('Image type not supported. Allowed types: %types', array('%types' => implode(' ', $supported_extensions)));
+    $errors[] = t('Image type not supported. Allowed types: %types', ['%types' => implode(' ', $supported_extensions)]);
   }
 
   return $errors;
@@ -429,7 +429,7 @@ function file_validate_is_image(FileInterface $file) {
  * @see hook_file_validate()
  */
 function file_validate_image_resolution(FileInterface $file, $maximum_dimensions = 0, $minimum_dimensions = 0) {
-  $errors = array();
+  $errors = [];
 
   // Check first that the file is an image.
   $image_factory = \Drupal::service('image.factory');
@@ -443,13 +443,13 @@ function file_validate_image_resolution(FileInterface $file, $maximum_dimensions
         if ($image->scale($width, $height)) {
           $image->save();
           if (!empty($width) && !empty($height)) {
-            $message = t('The image was resized to fit within the maximum allowed dimensions of %dimensions pixels.', array('%dimensions' => $maximum_dimensions));
+            $message = t('The image was resized to fit within the maximum allowed dimensions of %dimensions pixels.', ['%dimensions' => $maximum_dimensions]);
           }
           elseif (empty($width)) {
-            $message = t('The image was resized to fit within the maximum allowed height of %height pixels.', array('%height' => $height));
+            $message = t('The image was resized to fit within the maximum allowed height of %height pixels.', ['%height' => $height]);
           }
           elseif (empty($height)) {
-            $message = t('The image was resized to fit within the maximum allowed width of %width pixels.', array('%width' => $width));
+            $message = t('The image was resized to fit within the maximum allowed width of %width pixels.', ['%width' => $width]);
           }
           drupal_set_message($message);
         }
@@ -463,7 +463,7 @@ function file_validate_image_resolution(FileInterface $file, $maximum_dimensions
       // Check that it is larger than the given dimensions.
       list($width, $height) = explode('x', $minimum_dimensions);
       if ($image->getWidth() < $width || $image->getHeight() < $height) {
-        $errors[] = t('The image is too small; the minimum dimensions are %dimensions pixels.', array('%dimensions' => $minimum_dimensions));
+        $errors[] = t('The image is too small; the minimum dimensions are %dimensions pixels.', ['%dimensions' => $minimum_dimensions]);
       }
     }
   }
@@ -503,7 +503,7 @@ function file_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAM
     $destination = file_default_scheme() . '://';
   }
   if (!file_valid_uri($destination)) {
-    \Drupal::logger('file')->notice('The data could not be saved because the destination %destination is invalid. This may be caused by improper use of file_save_data() or a missing stream wrapper.', array('%destination' => $destination));
+    \Drupal::logger('file')->notice('The data could not be saved because the destination %destination is invalid. This may be caused by improper use of file_save_data() or a missing stream wrapper.', ['%destination' => $destination]);
     drupal_set_message(t('The data could not be saved because the destination is invalid. More information is available in the system log.'), 'error');
     return FALSE;
   }
@@ -519,7 +519,7 @@ function file_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAM
     // @todo Do not create a new entity in order to update it. See
     //   https://www.drupal.org/node/2241865.
     if ($replace == FILE_EXISTS_REPLACE) {
-      $existing_files = entity_load_multiple_by_properties('file', array('uri' => $uri));
+      $existing_files = entity_load_multiple_by_properties('file', ['uri' => $uri]);
       if (count($existing_files)) {
         $existing = reset($existing_files);
         $file->fid = $existing->id();
@@ -552,36 +552,36 @@ function file_save_data($data, $destination = NULL, $replace = FILE_EXISTS_RENAM
 function file_get_content_headers(FileInterface $file) {
   $type = Unicode::mimeHeaderEncode($file->getMimeType());
 
-  return array(
+  return [
     'Content-Type' => $type,
     'Content-Length' => $file->getSize(),
     'Cache-Control' => 'private',
-  );
+  ];
 }
 
 /**
  * Implements hook_theme().
  */
 function file_theme() {
-  return array(
+  return [
     // From file.module.
-    'file_link' => array(
-      'variables' => array('file' => NULL, 'description' => NULL, 'attributes' => array()),
-    ),
-    'file_managed_file' => array(
+    'file_link' => [
+      'variables' => ['file' => NULL, 'description' => NULL, 'attributes' => []],
+    ],
+    'file_managed_file' => [
       'render element' => 'element',
-    ),
+    ],
 
     // From file.field.inc.
-    'file_widget_multiple' => array(
+    'file_widget_multiple' => [
       'render element' => 'element',
       'file' => 'file.field.inc',
-    ),
-    'file_upload_help' => array(
-      'variables' => array('description' => NULL, 'upload_validators' => NULL, 'cardinality' => NULL),
+    ],
+    'file_upload_help' => [
+      'variables' => ['description' => NULL, 'upload_validators' => NULL, 'cardinality' => NULL],
       'file' => 'file.field.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -590,7 +590,7 @@ function file_theme() {
 function file_file_download($uri) {
   // Get the file record based on the URI. If not in the database just return.
   /** @var \Drupal\file\FileInterface[] $files */
-  $files = entity_load_multiple_by_properties('file', array('uri' => $uri));
+  $files = entity_load_multiple_by_properties('file', ['uri' => $uri]);
   if (count($files)) {
     foreach ($files as $item) {
       // Since some database servers sometimes use a case-insensitive comparison
@@ -663,11 +663,11 @@ function file_cron() {
           $file->delete();
         }
         else {
-          \Drupal::logger('file system')->error('Could not delete temporary file "%path" during garbage collection', array('%path' => $file->getFileUri()));
+          \Drupal::logger('file system')->error('Could not delete temporary file "%path" during garbage collection', ['%path' => $file->getFileUri()]);
         }
       }
       else {
-        \Drupal::logger('file system')->info('Did not delete temporary file "%path" during garbage collection because it is in use by the following modules: %modules.', array('%path' => $file->getFileUri(), '%modules' => implode(', ', array_keys($references))));
+        \Drupal::logger('file system')->info('Did not delete temporary file "%path" during garbage collection because it is in use by the following modules: %modules.', ['%path' => $file->getFileUri(), '%modules' => implode(', ', array_keys($references))]);
       }
     }
   }
@@ -711,11 +711,11 @@ function file_cron() {
  *   array element contains the file entity if the upload succeeded or FALSE if
  *   there was an error. Function returns NULL if no file was uploaded.
  */
-function file_save_upload($form_field_name, $validators = array(), $destination = FALSE, $delta = NULL, $replace = FILE_EXISTS_RENAME) {
+function file_save_upload($form_field_name, $validators = [], $destination = FALSE, $delta = NULL, $replace = FILE_EXISTS_RENAME) {
   $user = \Drupal::currentUser();
   static $upload_cache;
 
-  $all_files = \Drupal::request()->files->get('files', array());
+  $all_files = \Drupal::request()->files->get('files', []);
   // Make sure there's an upload to process.
   if (empty($all_files[$form_field_name])) {
     return NULL;
@@ -735,10 +735,10 @@ function file_save_upload($form_field_name, $validators = array(), $destination
   // for multiple uploads and we fix that here.
   $uploaded_files = $file_upload;
   if (!is_array($file_upload)) {
-    $uploaded_files = array($file_upload);
+    $uploaded_files = [$file_upload];
   }
 
-  $files = array();
+  $files = [];
   foreach ($uploaded_files as $i => $file_info) {
     // Check for file upload errors and return FALSE for this file if a lower
     // level system error occurred. For a complete list of errors:
@@ -746,13 +746,13 @@ function file_save_upload($form_field_name, $validators = array(), $destination
     switch ($file_info->getError()) {
       case UPLOAD_ERR_INI_SIZE:
       case UPLOAD_ERR_FORM_SIZE:
-        drupal_set_message(t('The file %file could not be saved because it exceeds %maxsize, the maximum allowed size for uploads.', array('%file' => $file_info->getFilename(), '%maxsize' => format_size(file_upload_max_size()))), 'error');
+        drupal_set_message(t('The file %file could not be saved because it exceeds %maxsize, the maximum allowed size for uploads.', ['%file' => $file_info->getFilename(), '%maxsize' => format_size(file_upload_max_size())]), 'error');
         $files[$i] = FALSE;
         continue;
 
       case UPLOAD_ERR_PARTIAL:
       case UPLOAD_ERR_NO_FILE:
-        drupal_set_message(t('The file %file could not be saved because the upload did not complete.', array('%file' => $file_info->getFilename())), 'error');
+        drupal_set_message(t('The file %file could not be saved because the upload did not complete.', ['%file' => $file_info->getFilename()]), 'error');
         $files[$i] = FALSE;
         continue;
 
@@ -765,19 +765,19 @@ function file_save_upload($form_field_name, $validators = array(), $destination
 
         // Unknown error
       default:
-        drupal_set_message(t('The file %file could not be saved. An unknown error has occurred.', array('%file' => $file_info->getFilename())), 'error');
+        drupal_set_message(t('The file %file could not be saved. An unknown error has occurred.', ['%file' => $file_info->getFilename()]), 'error');
         $files[$i] = FALSE;
         continue;
 
     }
     // Begin building file entity.
-    $values = array(
+    $values = [
       'uid' => $user->id(),
       'status' => 0,
       'filename' => $file_info->getClientOriginalName(),
       'uri' => $file_info->getRealPath(),
       'filesize' => $file_info->getSize(),
-    );
+    ];
     $values['filemime'] = \Drupal::service('file.mime_type.guesser')->guess($values['filename']);
     $file = File::create($values);
 
@@ -798,7 +798,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination
       // No validator was provided, so add one using the default list.
       // Build a default non-munged safe list for file_munge_filename().
       $extensions = 'jpg jpeg gif png txt doc xls pdf ppt pps odt ods odp';
-      $validators['file_validate_extensions'] = array();
+      $validators['file_validate_extensions'] = [];
       $validators['file_validate_extensions'][0] = $extensions;
     }
 
@@ -820,7 +820,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination
       // to add it here or else the file upload will fail.
       if (!empty($extensions)) {
         $validators['file_validate_extensions'][0] .= ' txt';
-        drupal_set_message(t('For security reasons, your upload has been renamed to %filename.', array('%filename' => $file->getFilename())));
+        drupal_set_message(t('For security reasons, your upload has been renamed to %filename.', ['%filename' => $file->getFilename()]));
       }
     }
 
@@ -832,7 +832,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination
     // Assert that the destination contains a valid stream.
     $destination_scheme = file_uri_scheme($destination);
     if (!file_stream_wrapper_valid_scheme($destination_scheme)) {
-      drupal_set_message(t('The file could not be uploaded because the destination %destination is invalid.', array('%destination' => $destination)), 'error');
+      drupal_set_message(t('The file could not be uploaded because the destination %destination is invalid.', ['%destination' => $destination]), 'error');
       $files[$i] = FALSE;
       continue;
     }
@@ -846,28 +846,28 @@ function file_save_upload($form_field_name, $validators = array(), $destination
     // If file_destination() returns FALSE then $replace === FILE_EXISTS_ERROR and
     // there's an existing file so we need to bail.
     if ($file->destination === FALSE) {
-      drupal_set_message(t('The file %source could not be uploaded because a file by that name already exists in the destination %directory.', array('%source' => $form_field_name, '%directory' => $destination)), 'error');
+      drupal_set_message(t('The file %source could not be uploaded because a file by that name already exists in the destination %directory.', ['%source' => $form_field_name, '%directory' => $destination]), 'error');
       $files[$i] = FALSE;
       continue;
     }
 
     // Add in our check of the file name length.
-    $validators['file_validate_name_length'] = array();
+    $validators['file_validate_name_length'] = [];
 
     // Call the validation functions specified by this function's caller.
     $errors = file_validate($file, $validators);
 
     // Check for errors.
     if (!empty($errors)) {
-      $message = array(
-        'error' => array(
-          '#markup' => t('The specified file %name could not be uploaded.', array('%name' => $file->getFilename())),
-        ),
-        'item_list' => array(
+      $message = [
+        'error' => [
+          '#markup' => t('The specified file %name could not be uploaded.', ['%name' => $file->getFilename()]),
+        ],
+        'item_list' => [
           '#theme' => 'item_list',
           '#items' => $errors,
-        ),
-      );
+        ],
+      ];
       // @todo Add support for render arrays in drupal_set_message()? See
       //  https://www.drupal.org/node/2505497.
       drupal_set_message(\Drupal::service('renderer')->renderPlain($message), 'error');
@@ -881,7 +881,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination
     $file->setFileUri($file->destination);
     if (!drupal_move_uploaded_file($file_info->getRealPath(), $file->getFileUri())) {
       drupal_set_message(t('File upload error. Could not move uploaded file.'), 'error');
-      \Drupal::logger('file')->notice('Upload error. Could not move uploaded file %file to destination %destination.', array('%file' => $file->getFilename(), '%destination' => $file->getFileUri()));
+      \Drupal::logger('file')->notice('Upload error. Could not move uploaded file %file to destination %destination.', ['%file' => $file->getFilename(), '%destination' => $file->getFileUri()]);
       $files[$i] = FALSE;
       continue;
     }
@@ -893,7 +893,7 @@ function file_save_upload($form_field_name, $validators = array(), $destination
     // @todo Do not create a new entity in order to update it. See
     //   https://www.drupal.org/node/2241865.
     if ($replace == FILE_EXISTS_REPLACE) {
-      $existing_files = entity_load_multiple_by_properties('file', array('uri' => $file->getFileUri()));
+      $existing_files = entity_load_multiple_by_properties('file', ['uri' => $file->getFileUri()]);
       if (count($existing_files)) {
         $existing = reset($existing_files);
         $file->fid = $existing->id();
@@ -949,7 +949,7 @@ function file_file_predelete(File $file) {
 function file_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['langcode'])) {
     $url_options['language'] = \Drupal::languageManager()->getLanguage($options['langcode']);
     $langcode = $options['langcode'];
@@ -958,7 +958,7 @@ function file_tokens($type, $tokens, array $data, array $options, BubbleableMeta
     $langcode = NULL;
   }
 
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'file' && !empty($data['file'])) {
     /** @var \Drupal\file\FileInterface $file */
@@ -1020,15 +1020,15 @@ function file_tokens($type, $tokens, array $data, array $options, BubbleableMeta
     }
 
     if ($date_tokens = $token_service->findWithPrefix($tokens, 'created')) {
-      $replacements += $token_service->generate('date', $date_tokens, array('date' => $file->getCreatedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $date_tokens, ['date' => $file->getCreatedTime()], $options, $bubbleable_metadata);
     }
 
     if ($date_tokens = $token_service->findWithPrefix($tokens, 'changed')) {
-      $replacements += $token_service->generate('date', $date_tokens, array('date' => $file->getChangedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $date_tokens, ['date' => $file->getChangedTime()], $options, $bubbleable_metadata);
     }
 
     if (($owner_tokens = $token_service->findWithPrefix($tokens, 'owner')) && $file->getOwner()) {
-      $replacements += $token_service->generate('user', $owner_tokens, array('user' => $file->getOwner()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('user', $owner_tokens, ['user' => $file->getOwner()], $options, $bubbleable_metadata);
     }
   }
 
@@ -1039,59 +1039,59 @@ function file_tokens($type, $tokens, array $data, array $options, BubbleableMeta
  * Implements hook_token_info().
  */
 function file_token_info() {
-  $types['file'] = array(
+  $types['file'] = [
     'name' => t("Files"),
     'description' => t("Tokens related to uploaded files."),
     'needs-data' => 'file',
-  );
+  ];
 
   // File related tokens.
-  $file['fid'] = array(
+  $file['fid'] = [
     'name' => t("File ID"),
     'description' => t("The unique ID of the uploaded file."),
-  );
-  $file['name'] = array(
+  ];
+  $file['name'] = [
     'name' => t("File name"),
     'description' => t("The name of the file on disk."),
-  );
-  $file['path'] = array(
+  ];
+  $file['path'] = [
     'name' => t("Path"),
     'description' => t("The location of the file relative to Drupal root."),
-  );
-  $file['mime'] = array(
+  ];
+  $file['mime'] = [
     'name' => t("MIME type"),
     'description' => t("The MIME type of the file."),
-  );
-  $file['size'] = array(
+  ];
+  $file['size'] = [
     'name' => t("File size"),
     'description' => t("The size of the file."),
-  );
-  $file['url'] = array(
+  ];
+  $file['url'] = [
     'name' => t("URL"),
     'description' => t("The web-accessible URL for the file."),
-  );
-  $file['created'] = array(
+  ];
+  $file['created'] = [
     'name' => t("Created"),
     'description' => t("The date the file created."),
     'type' => 'date',
-  );
-  $file['changed'] = array(
+  ];
+  $file['changed'] = [
     'name' => t("Changed"),
     'description' => t("The date the file was most recently changed."),
     'type' => 'date',
-  );
-  $file['owner'] = array(
+  ];
+  $file['owner'] = [
     'name' => t("Owner"),
     'description' => t("The user who originally uploaded the file."),
     'type' => 'user',
-  );
+  ];
 
-  return array(
+  return [
     'types' => $types,
-    'tokens' => array(
+    'tokens' => [
       'file' => $file,
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -1115,7 +1115,7 @@ function file_managed_file_submit($form, FormStateInterface $form_state) {
     $fids = array_keys($element['#files']);
     // Get files that will be removed.
     if ($element['#multiple']) {
-      $remove_fids = array();
+      $remove_fids = [];
       foreach (Element::children($element) as $name) {
         if (strpos($name, 'file_') === 0 && $element[$name]['selected']['#value']) {
           $remove_fids[] = (int) substr($name, 5);
@@ -1128,7 +1128,7 @@ function file_managed_file_submit($form, FormStateInterface $form_state) {
       // element's value to empty array (file could not be removed from
       // element if we don't do that).
       $remove_fids = $fids;
-      $fids = array();
+      $fids = [];
     }
 
     foreach ($remove_fids as $fid) {
@@ -1175,7 +1175,7 @@ function file_managed_file_submit($form, FormStateInterface $form_state) {
  */
 function file_managed_file_save_upload($element, FormStateInterface $form_state) {
   $upload_name = implode('_', $element['#parents']);
-  $all_files = \Drupal::request()->files->get('files', array());
+  $all_files = \Drupal::request()->files->get('files', []);
   if (empty($all_files[$upload_name])) {
     return FALSE;
   }
@@ -1183,7 +1183,7 @@ function file_managed_file_save_upload($element, FormStateInterface $form_state)
 
   $destination = isset($element['#upload_location']) ? $element['#upload_location'] : NULL;
   if (isset($destination) && !file_prepare_directory($destination, FILE_CREATE_DIRECTORY)) {
-    \Drupal::logger('file')->notice('The upload directory %directory for the file field %name could not be created or is not accessible. A newly uploaded file could not be saved in this directory as a consequence, and the upload was canceled.', array('%directory' => $destination, '%name' => $element['#field_name']));
+    \Drupal::logger('file')->notice('The upload directory %directory for the file field %name could not be created or is not accessible. A newly uploaded file could not be saved in this directory as a consequence, and the upload was canceled.', ['%directory' => $destination, '%name' => $element['#field_name']]);
     $form_state->setError($element, t('The file could not be uploaded.'));
     return FALSE;
   }
@@ -1193,19 +1193,19 @@ function file_managed_file_save_upload($element, FormStateInterface $form_state)
   $files_uploaded |= !$element['#multiple'] && !empty($file_upload);
   if ($files_uploaded) {
     if (!$files = file_save_upload($upload_name, $element['#upload_validators'], $destination)) {
-      \Drupal::logger('file')->notice('The file upload failed. %upload', array('%upload' => $upload_name));
-      $form_state->setError($element, t('Files in the @name field were unable to be uploaded.', array('@name' => $element['#title'])));
-      return array();
+      \Drupal::logger('file')->notice('The file upload failed. %upload', ['%upload' => $upload_name]);
+      $form_state->setError($element, t('Files in the @name field were unable to be uploaded.', ['@name' => $element['#title']]));
+      return [];
     }
 
     // Value callback expects FIDs to be keys.
     $files = array_filter($files);
     $fids = array_map(function($file) { return $file->id(); }, $files);
 
-    return empty($files) ? array() : array_combine($fids, $files);
+    return empty($files) ? [] : array_combine($fids, $files);
   }
 
-  return array();
+  return [];
 }
 
 /**
@@ -1220,7 +1220,7 @@ function file_managed_file_save_upload($element, FormStateInterface $form_state)
 function template_preprocess_file_managed_file(&$variables) {
   $element = $variables['element'];
 
-  $variables['attributes'] = array();
+  $variables['attributes'] = [];
   if (isset($element['#id'])) {
     $variables['attributes']['id'] = $element['#id'];
   }
@@ -1244,7 +1244,7 @@ function template_preprocess_file_managed_file(&$variables) {
  */
 function template_preprocess_file_link(&$variables) {
   $file = $variables['file'];
-  $options = array();
+  $options = [];
 
   $file_entity = ($file instanceof File) ? $file : File::load($file->fid);
   // @todo Wrap in file_url_transform_relative(). This is currently
@@ -1270,13 +1270,13 @@ function template_preprocess_file_link(&$variables) {
   }
 
   // Classes to add to the file field for icons.
-  $classes = array(
+  $classes = [
     'file',
     // Add a specific class for each and every mime type.
-    'file--mime-' . strtr($mime_type, array('/' => '-', '.' => '-')),
+    'file--mime-' . strtr($mime_type, ['/' => '-', '.' => '-']),
     // Add a more general class for groups of well known MIME types.
     'file--' . file_icon_class($mime_type),
-  );
+  ];
 
   // Set file classes to the options array.
   $variables['attributes'] = new Attribute($variables['attributes']);
@@ -1302,7 +1302,7 @@ function file_icon_class($mime_type) {
   }
 
   // Use generic icons for each category that provides such icons.
-  foreach (array('audio', 'image', 'text', 'video') as $category) {
+  foreach (['audio', 'image', 'text', 'video'] as $category) {
     if (strpos($mime_type, $category) === 0) {
       return $category;
     }
@@ -1473,14 +1473,14 @@ function file_icon_map($mime_type) {
  * @ingroup file
  */
 function file_get_file_references(FileInterface $file, FieldDefinitionInterface $field = NULL, $age = EntityStorageInterface::FIELD_LOAD_REVISION, $field_type = 'file') {
-  $references = &drupal_static(__FUNCTION__, array());
-  $field_columns = &drupal_static(__FUNCTION__ . ':field_columns', array());
+  $references = &drupal_static(__FUNCTION__, []);
+  $field_columns = &drupal_static(__FUNCTION__ . ':field_columns', []);
 
   // Fill the static cache, disregard $field and $field_type for now.
   if (!isset($references[$file->id()][$age])) {
-    $references[$file->id()][$age] = array();
+    $references[$file->id()][$age] = [];
     $usage_list = \Drupal::service('file.usage')->listUsage($file);
-    $file_usage_list = isset($usage_list['file']) ? $usage_list['file'] : array();
+    $file_usage_list = isset($usage_list['file']) ? $usage_list['file'] : [];
     foreach ($file_usage_list as $entity_type_id => $entity_ids) {
       $entities = \Drupal::entityTypeManager()
         ->getStorage($entity_type_id)->loadMultiple(array_keys($entity_ids));
@@ -1488,7 +1488,7 @@ function file_get_file_references(FileInterface $file, FieldDefinitionInterface
         $bundle = $entity->bundle();
         // We need to find file fields for this entity type and bundle.
         if (!isset($file_fields[$entity_type_id][$bundle])) {
-          $file_fields[$entity_type_id][$bundle] = array();
+          $file_fields[$entity_type_id][$bundle] = [];
           // This contains the possible field names.
           foreach ($entity->getFieldDefinitions() as $field_name => $field_definition) {
             // If this is the first time this field type is seen, check
@@ -1549,10 +1549,10 @@ function file_get_file_references(FileInterface $file, FieldDefinitionInterface
  *   An array of file statuses or a specified status if $choice is set.
  */
 function _views_file_status($choice = NULL) {
-  $status = array(
+  $status = [
     0 => t('Temporary'),
     FILE_STATUS_PERMANENT => t('Permanent'),
-  );
+  ];
 
   if (isset($choice)) {
     return isset($status[$choice]) ? $status[$choice] : t('Unknown');
diff --git a/core/modules/file/file.views.inc b/core/modules/file/file.views.inc
index 7fb54b6..8e45101 100644
--- a/core/modules/file/file.views.inc
+++ b/core/modules/file/file.views.inc
@@ -19,13 +19,13 @@ function file_field_views_data(FieldStorageConfigInterface $field_storage) {
   $data = views_field_default_views_data($field_storage);
   foreach ($data as $table_name => $table_data) {
     // Add the relationship only on the fid field.
-    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = array(
+    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = [
       'id' => 'standard',
       'base' => 'file_managed',
       'entity type' => 'file',
       'base field' => 'fid',
-      'label' => t('file from @field_name', array('@field_name' => $field_storage->getName())),
-    );
+      'label' => t('file from @field_name', ['@field_name' => $field_storage->getName()]),
+    ];
   }
 
   return $data;
@@ -47,11 +47,11 @@ function file_field_views_data_views_data_alter(array &$data, FieldStorageConfig
 
   list($label) = views_entity_field_label($entity_type_id, $field_name);
 
-  $data['file_managed'][$pseudo_field_name]['relationship'] = array(
-    'title' => t('@entity using @field', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
-    'label' => t('@field_name', array('@field_name' => $field_name)),
+  $data['file_managed'][$pseudo_field_name]['relationship'] = [
+    'title' => t('@entity using @field', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
+    'label' => t('@field_name', ['@field_name' => $field_name]),
     'group' => $entity_type->getLabel(),
-    'help' => t('Relate each @entity with a @field set to the file.', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
+    'help' => t('Relate each @entity with a @field set to the file.', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
     'id' => 'entity_reverse',
     'base' => $entity_type->getDataTable() ?: $entity_type->getBaseTable(),
     'entity_type' => $entity_type_id,
@@ -59,12 +59,12 @@ function file_field_views_data_views_data_alter(array &$data, FieldStorageConfig
     'field_name' => $field_name,
     'field table' => $table_mapping->getDedicatedDataTableName($field_storage),
     'field field' => $field_name . '_target_id',
-    'join_extra' => array(
-      0 => array(
+    'join_extra' => [
+      0 => [
         'field' => 'deleted',
         'value' => 0,
         'numeric' => TRUE,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
diff --git a/core/modules/file/src/Controller/FileWidgetAjaxController.php b/core/modules/file/src/Controller/FileWidgetAjaxController.php
index d5c6874..c958750 100644
--- a/core/modules/file/src/Controller/FileWidgetAjaxController.php
+++ b/core/modules/file/src/Controller/FileWidgetAjaxController.php
@@ -19,23 +19,23 @@ class FileWidgetAjaxController {
    *   A JsonResponse object.
    */
   public function progress($key) {
-    $progress = array(
+    $progress = [
       'message' => t('Starting upload...'),
       'percentage' => -1,
-    );
+    ];
 
     $implementation = file_progress_implementation();
     if ($implementation == 'uploadprogress') {
       $status = uploadprogress_get_info($key);
       if (isset($status['bytes_uploaded']) && !empty($status['bytes_total'])) {
-        $progress['message'] = t('Uploading... (@current of @total)', array('@current' => format_size($status['bytes_uploaded']), '@total' => format_size($status['bytes_total'])));
+        $progress['message'] = t('Uploading... (@current of @total)', ['@current' => format_size($status['bytes_uploaded']), '@total' => format_size($status['bytes_total'])]);
         $progress['percentage'] = round(100 * $status['bytes_uploaded'] / $status['bytes_total']);
       }
     }
     elseif ($implementation == 'apc') {
       $status = apcu_fetch('upload_' . $key);
       if (isset($status['current']) && !empty($status['total'])) {
-        $progress['message'] = t('Uploading... (@current of @total)', array('@current' => format_size($status['current']), '@total' => format_size($status['total'])));
+        $progress['message'] = t('Uploading... (@current of @total)', ['@current' => format_size($status['current']), '@total' => format_size($status['total'])]);
         $progress['percentage'] = round(100 * $status['current'] / $status['total']);
       }
     }
diff --git a/core/modules/file/src/Element/ManagedFile.php b/core/modules/file/src/Element/ManagedFile.php
index f465b18..45c8aa7 100644
--- a/core/modules/file/src/Element/ManagedFile.php
+++ b/core/modules/file/src/Element/ManagedFile.php
@@ -108,7 +108,7 @@ public static function valueCallback(&$element, $input, FormStateInterface $form
                 // submissions of the same form, so to allow that, check for the
                 // token added by $this->processManagedFile().
                 elseif (\Drupal::currentUser()->isAnonymous()) {
-                  $token = NestedArray::getValue($form_state->getUserInput(), array_merge($element['#parents'], array('file_' . $file->id(), 'fid_token')));
+                  $token = NestedArray::getValue($form_state->getUserInput(), array_merge($element['#parents'], ['file_' . $file->id(), 'fid_token']));
                   if ($token !== Crypt::hmacBase64('file-' . $file->id(), \Drupal::service('private_key')->get() . Settings::getHashSalt())) {
                     $force_default = TRUE;
                     break;
@@ -334,10 +334,10 @@ public static function processManagedFile(&$element, FormStateInterface $form_st
         // of the same form (for example, after an Ajax upload or form
         // validation error).
         if ($file->isTemporary() && \Drupal::currentUser()->isAnonymous()) {
-          $element['file_' . $delta]['fid_token'] = array(
+          $element['file_' . $delta]['fid_token'] = [
             '#type' => 'hidden',
             '#value' => Crypt::hmacBase64('file-' . $delta, \Drupal::service('private_key')->get() . Settings::getHashSalt()),
-          );
+          ];
         }
       }
     }
diff --git a/core/modules/file/src/Entity/File.php b/core/modules/file/src/Entity/File.php
index cd7a658..a68b9ba 100644
--- a/core/modules/file/src/Entity/File.php
+++ b/core/modules/file/src/Entity/File.php
@@ -70,7 +70,7 @@ public function setFileUri($uri) {
    *
    * @see file_url_transform_relative()
    */
-  public function url($rel = 'canonical', $options = array()) {
+  public function url($rel = 'canonical', $options = []) {
     return file_create_url($this->getFileUri());
   }
 
diff --git a/core/modules/file/src/FileUsage/DatabaseFileUsageBackend.php b/core/modules/file/src/FileUsage/DatabaseFileUsageBackend.php
index 12647b1..cfb0c44 100644
--- a/core/modules/file/src/FileUsage/DatabaseFileUsageBackend.php
+++ b/core/modules/file/src/FileUsage/DatabaseFileUsageBackend.php
@@ -44,14 +44,14 @@ public function __construct(Connection $connection, $table = 'file_usage') {
    */
   public function add(FileInterface $file, $module, $type, $id, $count = 1) {
     $this->connection->merge($this->tableName)
-      ->keys(array(
+      ->keys([
         'fid' => $file->id(),
         'module' => $module,
         'type' => $type,
         'id' => $id,
-      ))
-      ->fields(array('count' => $count))
-      ->expression('count', 'count + :count', array(':count' => $count))
+      ])
+      ->fields(['count' => $count])
+      ->expression('count', 'count + :count', [':count' => $count])
       ->execute();
 
     parent::add($file, $module, $type, $id, $count);
@@ -85,7 +85,7 @@ public function delete(FileInterface $file, $module, $type = NULL, $id = NULL, $
           ->condition('type', $type)
           ->condition('id', $id);
       }
-      $query->expression('count', 'count - :count', array(':count' => $count));
+      $query->expression('count', 'count - :count', [':count' => $count]);
       $query->execute();
     }
 
@@ -97,11 +97,11 @@ public function delete(FileInterface $file, $module, $type = NULL, $id = NULL, $
    */
   public function listUsage(FileInterface $file) {
     $result = $this->connection->select($this->tableName, 'f')
-      ->fields('f', array('module', 'type', 'id', 'count'))
+      ->fields('f', ['module', 'type', 'id', 'count'])
       ->condition('fid', $file->id())
       ->condition('count', 0, '>')
       ->execute();
-    $references = array();
+    $references = [];
     foreach ($result as $usage) {
       $references[$usage->module][$usage->type][$usage->id] = $usage->count;
     }
diff --git a/core/modules/file/src/FileViewsData.php b/core/modules/file/src/FileViewsData.php
index cf24062..459a37e 100644
--- a/core/modules/file/src/FileViewsData.php
+++ b/core/modules/file/src/FileViewsData.php
@@ -20,13 +20,13 @@ public function getViewsData() {
     $data['file_managed']['table']['base']['defaults']['field'] = 'filename';
     $data['file_managed']['table']['wizard_id'] = 'file_managed';
 
-    $data['file_managed']['fid']['argument'] = array(
+    $data['file_managed']['fid']['argument'] = [
       'id' => 'file_fid',
       // The field to display in the summary.
       'name field' => 'filename',
       'numeric' => TRUE,
-    );
-    $data['file_managed']['fid']['relationship'] = array(
+    ];
+    $data['file_managed']['fid']['relationship'] = [
       'title' => $this->t('File usage'),
       'help' => $this->t('Relate file entities to their usage.'),
       'id' => 'standard',
@@ -34,24 +34,24 @@ public function getViewsData() {
       'base field' => 'fid',
       'field' => 'fid',
       'label' => $this->t('File usage'),
-    );
+    ];
 
     $data['file_managed']['uri']['field']['default_formatter'] = 'file_uri';
 
     $data['file_managed']['filemime']['field']['default_formatter'] = 'file_filemime';
 
-    $data['file_managed']['extension'] = array(
+    $data['file_managed']['extension'] = [
       'title' => $this->t('Extension'),
       'help' => $this->t('The extension of the file.'),
       'real field' => 'filename',
-      'field' => array(
+      'field' => [
         'entity_type' => 'file',
         'field_name' => 'filename',
         'default_formatter' => 'file_extension',
         'id' => 'field',
         'click sortable' => FALSE,
-       ),
-    );
+       ],
+    ];
 
     $data['file_managed']['filesize']['field']['default_formatter'] = 'file_size';
 
@@ -71,40 +71,40 @@ public function getViewsData() {
     // ("file_managed") so that we can create relationships from files to
     // entities, and then on each core entity type base table so that we can
     // provide general relationships between entities and files.
-    $data['file_usage']['table']['join'] = array(
-      'file_managed' => array(
+    $data['file_usage']['table']['join'] = [
+      'file_managed' => [
         'field' => 'fid',
         'left_field' => 'fid',
-      ),
+      ],
       // Link ourselves to the {node_field_data} table
       // so we can provide node->file relationships.
-      'node_field_data' => array(
+      'node_field_data' => [
         'field' => 'id',
         'left_field' => 'nid',
-        'extra' => array(array('field' => 'type', 'value' => 'node')),
-      ),
+        'extra' => [['field' => 'type', 'value' => 'node']],
+      ],
       // Link ourselves to the {users_field_data} table
       // so we can provide user->file relationships.
-      'users_field_data' => array(
+      'users_field_data' => [
         'field' => 'id',
         'left_field' => 'uid',
-        'extra' => array(array('field' => 'type', 'value' => 'user')),
-      ),
+        'extra' => [['field' => 'type', 'value' => 'user']],
+      ],
       // Link ourselves to the {comment_field_data} table
       // so we can provide comment->file relationships.
-      'comment' => array(
+      'comment' => [
         'field' => 'id',
         'left_field' => 'cid',
-        'extra' => array(array('field' => 'type', 'value' => 'comment')),
-      ),
+        'extra' => [['field' => 'type', 'value' => 'comment']],
+      ],
       // Link ourselves to the {taxonomy_term_field_data} table
       // so we can provide taxonomy_term->file relationships.
-      'taxonomy_term_data' => array(
+      'taxonomy_term_data' => [
         'field' => 'id',
         'left_field' => 'tid',
-        'extra' => array(array('field' => 'type', 'value' => 'taxonomy_term')),
-      ),
-    );
+        'extra' => [['field' => 'type', 'value' => 'taxonomy_term']],
+      ],
+    ];
 
     // Provide a relationship between the files table and each entity type,
     // and between each entity type and the files table. Entity->file
@@ -113,210 +113,210 @@ public function getViewsData() {
     // declarations below.
 
     // Describes relationships between files and nodes.
-    $data['file_usage']['file_to_node'] = array(
+    $data['file_usage']['file_to_node'] = [
       'title' => $this->t('Content'),
       'help' => $this->t('Content that is associated with this file, usually because this file is in a field on the content.'),
       // Only provide this field/relationship/etc.,
       // when the 'file_managed' base table is present.
-      'skip base' => array('node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'id',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('Content'),
         'label' => $this->t('Content'),
         'base' => 'node_field_data',
         'base field' => 'nid',
         'relationship field' => 'id',
-        'extra' => array(array('table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'node')),
-      ),
-    );
-    $data['file_usage']['node_to_file'] = array(
+        'extra' => [['table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'node']],
+      ],
+    ];
+    $data['file_usage']['node_to_file'] = [
       'title' => $this->t('File'),
       'help' => $this->t('A file that is associated with this node, usually because it is in a field on the node.'),
       // Only provide this field/relationship/etc.,
       // when the 'node' base table is present.
-      'skip base' => array('file_managed', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['file_managed', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'fid',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('File'),
         'label' => $this->t('File'),
         'base' => 'file_managed',
         'base field' => 'fid',
         'relationship field' => 'fid',
-      ),
-    );
+      ],
+    ];
 
     // Describes relationships between files and users.
-    $data['file_usage']['file_to_user'] = array(
+    $data['file_usage']['file_to_user'] = [
       'title' => $this->t('User'),
       'help' => $this->t('A user that is associated with this file, usually because this file is in a field on the user.'),
       // Only provide this field/relationship/etc.,
       // when the 'file_managed' base table is present.
-      'skip base' => array('node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'id',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('User'),
         'label' => $this->t('User'),
         'base' => 'users',
         'base field' => 'uid',
         'relationship field' => 'id',
-        'extra' => array(array('table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'user')),
-      ),
-    );
-    $data['file_usage']['user_to_file'] = array(
+        'extra' => [['table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'user']],
+      ],
+    ];
+    $data['file_usage']['user_to_file'] = [
       'title' => $this->t('File'),
       'help' => $this->t('A file that is associated with this user, usually because it is in a field on the user.'),
       // Only provide this field/relationship/etc.,
       // when the 'users' base table is present.
-      'skip base' => array('file_managed', 'node_field_data', 'node_field_revision', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['file_managed', 'node_field_data', 'node_field_revision', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'fid',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('File'),
         'label' => $this->t('File'),
         'base' => 'file_managed',
         'base field' => 'fid',
         'relationship field' => 'fid',
-      ),
-    );
+      ],
+    ];
 
     // Describes relationships between files and comments.
-    $data['file_usage']['file_to_comment'] = array(
+    $data['file_usage']['file_to_comment'] = [
       'title' => $this->t('Comment'),
       'help' => $this->t('A comment that is associated with this file, usually because this file is in a field on the comment.'),
       // Only provide this field/relationship/etc.,
       // when the 'file_managed' base table is present.
-      'skip base' => array('node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'id',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('Comment'),
         'label' => $this->t('Comment'),
         'base' => 'comment_field_data',
         'base field' => 'cid',
         'relationship field' => 'id',
-        'extra' => array(array('table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'comment')),
-      ),
-    );
-    $data['file_usage']['comment_to_file'] = array(
+        'extra' => [['table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'comment']],
+      ],
+    ];
+    $data['file_usage']['comment_to_file'] = [
       'title' => $this->t('File'),
       'help' => $this->t('A file that is associated with this comment, usually because it is in a field on the comment.'),
       // Only provide this field/relationship/etc.,
       // when the 'comment' base table is present.
-      'skip base' => array('file_managed', 'node_field_data', 'node_field_revision', 'users_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['file_managed', 'node_field_data', 'node_field_revision', 'users_field_data', 'taxonomy_term_field_data'],
       'real field' => 'fid',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('File'),
         'label' => $this->t('File'),
         'base' => 'file_managed',
         'base field' => 'fid',
         'relationship field' => 'fid',
-      ),
-    );
+      ],
+    ];
 
     // Describes relationships between files and taxonomy_terms.
-    $data['file_usage']['file_to_taxonomy_term'] = array(
+    $data['file_usage']['file_to_taxonomy_term'] = [
       'title' => $this->t('Taxonomy Term'),
       'help' => $this->t('A taxonomy term that is associated with this file, usually because this file is in a field on the taxonomy term.'),
       // Only provide this field/relationship/etc.,
       // when the 'file_managed' base table is present.
-      'skip base' => array('node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'),
+      'skip base' => ['node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data', 'taxonomy_term_field_data'],
       'real field' => 'id',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('Taxonomy Term'),
         'label' => $this->t('Taxonomy Term'),
         'base' => 'taxonomy_term_data',
         'base field' => 'tid',
         'relationship field' => 'id',
-        'extra' => array(array('table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'taxonomy_term')),
-      ),
-    );
-    $data['file_usage']['taxonomy_term_to_file'] = array(
+        'extra' => [['table' => 'file_usage', 'field' => 'type', 'operator' => '=', 'value' => 'taxonomy_term']],
+      ],
+    ];
+    $data['file_usage']['taxonomy_term_to_file'] = [
       'title' => $this->t('File'),
       'help' => $this->t('A file that is associated with this taxonomy term, usually because it is in a field on the taxonomy term.'),
       // Only provide this field/relationship/etc.,
       // when the 'taxonomy_term_data' base table is present.
-      'skip base' => array('file_managed', 'node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data'),
+      'skip base' => ['file_managed', 'node_field_data', 'node_field_revision', 'users_field_data', 'comment_field_data'],
       'real field' => 'fid',
-      'relationship' => array(
+      'relationship' => [
         'title' => $this->t('File'),
         'label' => $this->t('File'),
         'base' => 'file_managed',
         'base field' => 'fid',
         'relationship field' => 'fid',
-      ),
-    );
+      ],
+    ];
 
     // Provide basic fields from the {file_usage} table to all of the base tables
     // we've declared joins to, because there is no 'skip base' property on these
     // fields.
-    $data['file_usage']['module'] = array(
+    $data['file_usage']['module'] = [
       'title' => $this->t('Module'),
       'help' => $this->t('The module managing this file relationship.'),
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-       ),
-      'filter' => array(
+       ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['file_usage']['type'] = array(
+      ],
+    ];
+    $data['file_usage']['type'] = [
       'title' => $this->t('Entity type'),
       'help' => $this->t('The type of entity that is related to the file.'),
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-       ),
-      'filter' => array(
+       ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['file_usage']['id'] = array(
+      ],
+    ];
+    $data['file_usage']['id'] = [
       'title' => $this->t('Entity ID'),
       'help' => $this->t('The ID of the entity that is related to the file.'),
-      'field' => array(
+      'field' => [
         'id' => 'numeric',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'numeric',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['file_usage']['count'] = array(
+      ],
+    ];
+    $data['file_usage']['count'] = [
       'title' => $this->t('Use count'),
       'help' => $this->t('The number of times the file is used by this entity.'),
-      'field' => array(
+      'field' => [
         'id' => 'numeric',
-       ),
-      'filter' => array(
+       ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['file_usage']['entity_label'] = array(
+      ],
+    ];
+    $data['file_usage']['entity_label'] = [
       'title' => $this->t('Entity label'),
       'help' => $this->t('The label of the entity that is related to the file.'),
       'real field' => 'id',
-      'field' => array(
+      'field' => [
         'id' => 'entity_label',
         'entity type field' => 'type',
-      ),
-    );
+      ],
+    ];
 
     return $data;
   }
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/FileExtensionFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/FileExtensionFormatter.php
index bb6a770..afe1b7e 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/FileExtensionFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/FileExtensionFormatter.php
@@ -34,12 +34,12 @@ public static function defaultSettings() {
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $form = parent::settingsForm($form, $form_state);
-    $form['extension_detect_tar'] = array(
+    $form['extension_detect_tar'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Include tar in extension'),
       '#description' => $this->t("If the part of the filename just before the extension is '.tar', include this in the extension output."),
       '#default_value' => $this->getSetting('extension_detect_tar'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/FilemimeFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/FilemimeFormatter.php
index 6103239..631d941 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/FilemimeFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/FilemimeFormatter.php
@@ -43,12 +43,12 @@ public static function defaultSettings() {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $form = parent::settingsForm($form, $form_state);
 
-    $form['filemime_image'] = array(
+    $form['filemime_image'] = [
       '#title' => $this->t('Display an icon'),
       '#description' => $this->t('The icon is representing the file type, instead of the MIME text (such as "image/jpeg")'),
       '#type' => 'checkbox',
       '#default_value' => $this->getSetting('filemime_image'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/GenericFileFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/GenericFileFormatter.php
index a76d75a..daeb9f42 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/GenericFileFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/GenericFileFormatter.php
@@ -21,21 +21,21 @@ class GenericFileFormatter extends FileFormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($this->getEntitiesToView($items, $langcode) as $delta => $file) {
       $item = $file->_referringItem;
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#theme' => 'file_link',
         '#file' => $file,
         '#description' => $item->description,
-        '#cache' => array(
+        '#cache' => [
           'tags' => $file->getCacheTags(),
-        ),
-      );
+        ],
+      ];
       // Pass field item attributes to the theme function.
       if (isset($item->_attributes)) {
-        $elements[$delta] += array('#attributes' => array());
+        $elements[$delta] += ['#attributes' => []];
         $elements[$delta]['#attributes'] += $item->_attributes;
         // Unset field item attributes since they have been included in the
         // formatter output and should not be rendered in the field template.
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/RSSEnclosureFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/RSSEnclosureFormatter.php
index 46bbbde..a433d99 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/RSSEnclosureFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/RSSEnclosureFormatter.php
@@ -25,17 +25,17 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
     // Add the first file as an enclosure to the RSS item. RSS allows only one
     // enclosure per item. See: http://wikipedia.org/wiki/RSS_enclosure
     foreach ($this->getEntitiesToView($items, $langcode) as $delta => $file) {
-      $entity->rss_elements[] = array(
+      $entity->rss_elements[] = [
         'key' => 'enclosure',
-        'attributes' => array(
+        'attributes' => [
           // In RSS feeds, it is necessary to use absolute URLs. The 'url.site'
           // cache context is already associated with RSS feed responses, so it
           // does not need to be specified here.
           'url' => file_create_url($file->getFileUri()),
           'length' => $file->getSize(),
           'type' => $file->getMimeType(),
-        ),
-      );
+        ],
+      ];
     }
     return [];
   }
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/TableFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/TableFormatter.php
index 939329a..4da9e84 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/TableFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/TableFormatter.php
@@ -21,33 +21,33 @@ class TableFormatter extends FileFormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     if ($files = $this->getEntitiesToView($items, $langcode)) {
-      $header = array(t('Attachment'), t('Size'));
-      $rows = array();
+      $header = [t('Attachment'), t('Size')];
+      $rows = [];
       foreach ($files as $delta => $file) {
-        $rows[] = array(
-          array(
-            'data' => array(
+        $rows[] = [
+          [
+            'data' => [
               '#theme' => 'file_link',
               '#file' => $file,
-              '#cache' => array(
+              '#cache' => [
                 'tags' => $file->getCacheTags(),
-              ),
-            ),
-          ),
-          array('data' => format_size($file->getSize())),
-        );
+              ],
+            ],
+          ],
+          ['data' => format_size($file->getSize())],
+        ];
       }
 
-      $elements[0] = array();
+      $elements[0] = [];
       if (!empty($rows)) {
-        $elements[0] = array(
+        $elements[0] = [
           '#theme' => 'table__file_formatter_table',
           '#header' => $header,
           '#rows' => $rows,
-        );
+        ];
       }
     }
 
diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/UrlPlainFormatter.php b/core/modules/file/src/Plugin/Field/FieldFormatter/UrlPlainFormatter.php
index ccb97d5..d5e2a7c 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/UrlPlainFormatter.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/UrlPlainFormatter.php
@@ -21,15 +21,15 @@ class UrlPlainFormatter extends FileFormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($this->getEntitiesToView($items, $langcode) as $delta => $file) {
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#markup' => file_url_transform_relative(file_create_url($file->getFileUri())),
-        '#cache' => array(
+        '#cache' => [
           'tags' => $file->getCacheTags(),
-        ),
-      );
+        ],
+      ];
     }
 
     return $elements;
diff --git a/core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php b/core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php
index 20f4797..9a4dc83 100644
--- a/core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php
+++ b/core/modules/file/src/Plugin/Field/FieldType/FileFieldItemList.php
@@ -30,7 +30,7 @@ public function postSave($update) {
     else {
       // Get current target file entities and file IDs.
       $files = $this->referencedEntities();
-      $ids = array();
+      $ids = [];
 
       /** @var \Drupal\file\FileInterface $file */
       foreach ($files as $file) {
@@ -48,7 +48,7 @@ public function postSave($update) {
 
       // Get the file IDs attached to the field before this update.
       $field_name = $this->getFieldDefinition()->getName();
-      $original_ids = array();
+      $original_ids = [];
       $langcode = $this->getLangcode();
       $original = $entity->original;
       if ($original->hasTranslation($langcode)) {
diff --git a/core/modules/file/src/Plugin/Field/FieldType/FileItem.php b/core/modules/file/src/Plugin/Field/FieldType/FileItem.php
index 5ea2692..7373c43 100644
--- a/core/modules/file/src/Plugin/Field/FieldType/FileItem.php
+++ b/core/modules/file/src/Plugin/Field/FieldType/FileItem.php
@@ -32,59 +32,59 @@ class FileItem extends EntityReferenceItem {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'target_type' => 'file',
       'display_field' => FALSE,
       'display_default' => FALSE,
       'uri_scheme' => file_default_scheme(),
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    return array(
+    return [
       'file_extensions' => 'txt',
       'file_directory' => '[date:custom:Y]-[date:custom:m]',
       'max_filesize' => '',
       'description_field' => 0,
-    ) + parent::defaultFieldSettings();
+    ] + parent::defaultFieldSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'target_id' => array(
+    return [
+      'columns' => [
+        'target_id' => [
           'description' => 'The ID of the file entity.',
           'type' => 'int',
           'unsigned' => TRUE,
-        ),
-        'display' => array(
+        ],
+        'display' => [
           'description' => 'Flag to control whether this file should be displayed when viewing content.',
           'type' => 'int',
           'size' => 'tiny',
           'unsigned' => TRUE,
           'default' => 1,
-        ),
-        'description' => array(
+        ],
+        'description' => [
           'description' => 'A description of the file.',
           'type' => 'text',
-        ),
-      ),
-      'indexes' => array(
-        'target_id' => array('target_id'),
-      ),
-      'foreign keys' => array(
-        'target_id' => array(
+        ],
+      ],
+      'indexes' => [
+        'target_id' => ['target_id'],
+      ],
+      'foreign keys' => [
+        'target_id' => [
           'table' => 'file_managed',
-          'columns' => array('target_id' => 'fid'),
-        ),
-      ),
-    );
+          'columns' => ['target_id' => 'fid'],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -107,37 +107,37 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $element = array();
+    $element = [];
 
     $element['#attached']['library'][] = 'file/drupal.file';
 
-    $element['display_field'] = array(
+    $element['display_field'] = [
       '#type' => 'checkbox',
       '#title' => t('Enable <em>Display</em> field'),
       '#default_value' => $this->getSetting('display_field'),
       '#description' => t('The display option allows users to choose if a file should be shown when viewing the content.'),
-    );
-    $element['display_default'] = array(
+    ];
+    $element['display_default'] = [
       '#type' => 'checkbox',
       '#title' => t('Files displayed by default'),
       '#default_value' => $this->getSetting('display_default'),
       '#description' => t('This setting only has an effect if the display option is enabled.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="settings[display_field]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="settings[display_field]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
     $scheme_options = \Drupal::service('stream_wrapper_manager')->getNames(StreamWrapperInterface::WRITE_VISIBLE);
-    $element['uri_scheme'] = array(
+    $element['uri_scheme'] = [
       '#type' => 'radios',
       '#title' => t('Upload destination'),
       '#options' => $scheme_options,
       '#default_value' => $this->getSetting('uri_scheme'),
       '#description' => t('Select where the final files should be stored. Private file storage has significantly more overhead than public files, but allows restricted access to files within this field.'),
       '#disabled' => $has_data,
-    );
+    ];
 
     return $element;
   }
@@ -146,50 +146,50 @@ public function storageSettingsForm(array &$form, FormStateInterface $form_state
    * {@inheritdoc}
    */
   public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
-    $element = array();
+    $element = [];
     $settings = $this->getSettings();
 
-    $element['file_directory'] = array(
+    $element['file_directory'] = [
       '#type' => 'textfield',
       '#title' => t('File directory'),
       '#default_value' => $settings['file_directory'],
       '#description' => t('Optional subdirectory within the upload destination where files will be stored. Do not include preceding or trailing slashes.'),
-      '#element_validate' => array(array(get_class($this), 'validateDirectory')),
+      '#element_validate' => [[get_class($this), 'validateDirectory']],
       '#weight' => 3,
-    );
+    ];
 
     // Make the extension list a little more human-friendly by comma-separation.
     $extensions = str_replace(' ', ', ', $settings['file_extensions']);
-    $element['file_extensions'] = array(
+    $element['file_extensions'] = [
       '#type' => 'textfield',
       '#title' => t('Allowed file extensions'),
       '#default_value' => $extensions,
       '#description' => t('Separate extensions with a space or comma and do not include the leading dot.'),
-      '#element_validate' => array(array(get_class($this), 'validateExtensions')),
+      '#element_validate' => [[get_class($this), 'validateExtensions']],
       '#weight' => 1,
       '#maxlength' => 256,
       // By making this field required, we prevent a potential security issue
       // that would allow files of any type to be uploaded.
       '#required' => TRUE,
-    );
+    ];
 
-    $element['max_filesize'] = array(
+    $element['max_filesize'] = [
       '#type' => 'textfield',
       '#title' => t('Maximum upload size'),
       '#default_value' => $settings['max_filesize'],
-      '#description' => t('Enter a value like "512" (bytes), "80 KB" (kilobytes) or "50 MB" (megabytes) in order to restrict the allowed file size. If left empty the file sizes will be limited only by PHP\'s maximum post and file upload sizes (current limit <strong>%limit</strong>).', array('%limit' => format_size(file_upload_max_size()))),
+      '#description' => t('Enter a value like "512" (bytes), "80 KB" (kilobytes) or "50 MB" (megabytes) in order to restrict the allowed file size. If left empty the file sizes will be limited only by PHP\'s maximum post and file upload sizes (current limit <strong>%limit</strong>).', ['%limit' => format_size(file_upload_max_size())]),
       '#size' => 10,
-      '#element_validate' => array(array(get_class($this), 'validateMaxFilesize')),
+      '#element_validate' => [[get_class($this), 'validateMaxFilesize']],
       '#weight' => 5,
-    );
+    ];
 
-    $element['description_field'] = array(
+    $element['description_field'] = [
       '#type' => 'checkbox',
       '#title' => t('Enable <em>Description</em> field'),
       '#default_value' => isset($settings['description_field']) ? $settings['description_field'] : '',
       '#description' => t('The description field allows users to enter a description about the uploaded file.'),
       '#weight' => 11,
-    );
+    ];
 
     return $element;
   }
@@ -245,7 +245,7 @@ public static function validateExtensions($element, FormStateInterface $form_sta
    */
   public static function validateMaxFilesize($element, FormStateInterface $form_state) {
     if (!empty($element['#value']) && !is_numeric(Bytes::toInt($element['#value']))) {
-      $form_state->setError($element, t('The "@name" option must contain a valid value. You may either leave the text field empty or enter a string like "512" (bytes), "80 KB" (kilobytes) or "50 MB" (megabytes).', array('@name' => $element['title'])));
+      $form_state->setError($element, t('The "@name" option must contain a valid value. You may either leave the text field empty or enter a string like "512" (bytes), "80 KB" (kilobytes) or "50 MB" (megabytes).', ['@name' => $element['title']]));
     }
   }
 
@@ -261,7 +261,7 @@ public static function validateMaxFilesize($element, FormStateInterface $form_st
    *
    * @see \Drupal\Core\Utility\Token::replace()
    */
-  public function getUploadLocation($data = array()) {
+  public function getUploadLocation($data = []) {
     return static::doGetUploadLocation($this->getSettings(), $data);
   }
 
@@ -296,7 +296,7 @@ protected static function doGetUploadLocation(array $settings, $data = []) {
    *   element's '#upload_validators' property.
    */
   public function getUploadValidators() {
-    $validators = array();
+    $validators = [];
     $settings = $this->getSettings();
 
     // Cap the upload size according to the PHP limit.
@@ -306,11 +306,11 @@ public function getUploadValidators() {
     }
 
     // There is always a file size limit due to the PHP server limit.
-    $validators['file_validate_size'] = array($max_filesize);
+    $validators['file_validate_size'] = [$max_filesize];
 
     // Add the extension check if necessary.
     if (!empty($settings['file_extensions'])) {
-      $validators['file_validate_extensions'] = array($settings['file_extensions']);
+      $validators['file_validate_extensions'] = [$settings['file_extensions']];
     }
 
     return $validators;
@@ -331,11 +331,11 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
     $destination = $dirname . '/' . $random->name(10, TRUE) . '.txt';
     $data = $random->paragraphs(3);
     $file = file_save_data($data, $destination, FILE_EXISTS_ERROR);
-    $values = array(
+    $values = [
       'target_id' => $file->id(),
       'display' => (int)$settings['display_default'],
       'description' => $random->sentences(10),
-    );
+    ];
     return $values;
   }
 
diff --git a/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php b/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
index 9a9dfe2..587a396 100644
--- a/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
+++ b/core/modules/file/src/Plugin/Field/FieldWidget/FileWidget.php
@@ -48,27 +48,27 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'progress_indicator' => 'throbber',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['progress_indicator'] = array(
+    $element['progress_indicator'] = [
       '#type' => 'radios',
       '#title' => t('Progress indicator'),
-      '#options' => array(
+      '#options' => [
         'throbber' => t('Throbber'),
         'bar' => t('Bar with progress meter'),
-      ),
+      ],
       '#default_value' => $this->getSetting('progress_indicator'),
       '#description' => t('The throbber display does not show the status of uploads but takes up less space. The progress bar is helpful for monitoring progress on large uploads.'),
       '#weight' => 16,
       '#access' => file_progress_implementation(),
-    );
+    ];
     return $element;
   }
 
@@ -76,8 +76,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('Progress indicator: @progress_indicator', array('@progress_indicator' => $this->getSetting('progress_indicator')));
+    $summary = [];
+    $summary[] = t('Progress indicator: @progress_indicator', ['@progress_indicator' => $this->getSetting('progress_indicator')]);
     return $summary;
   }
 
@@ -115,15 +115,15 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
     $title = $this->fieldDefinition->getLabel();
     $description = $this->getFilteredDescription();
 
-    $elements = array();
+    $elements = [];
 
     $delta = 0;
     // Add an element for every existing item.
     foreach ($items as $item) {
-      $element = array(
+      $element = [
         '#title' => $title,
         '#description' => $description,
-      );
+      ];
       $element = $this->formSingleElement($items, $delta, $element, $form, $form_state);
 
       if ($element) {
@@ -131,15 +131,15 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
         if ($is_multiple) {
           // We name the element '_weight' to avoid clashing with elements
           // defined by widget.
-          $element['_weight'] = array(
+          $element['_weight'] = [
             '#type' => 'weight',
-            '#title' => t('Weight for row @number', array('@number' => $delta + 1)),
+            '#title' => t('Weight for row @number', ['@number' => $delta + 1]),
             '#title_display' => 'invisible',
             // Note: this 'delta' is the FAPI #type 'weight' element's property.
             '#delta' => $max,
             '#default_value' => $item->_weight ?: $delta,
             '#weight' => 100,
-          );
+          ];
         }
 
         $elements[$delta] = $element;
@@ -155,10 +155,10 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
     if ($empty_single_allowed || $empty_multiple_allowed) {
       // Create a new empty item.
       $items->appendItem();
-      $element = array(
+      $element = [
         '#title' => $title,
         '#description' => $description,
-      );
+      ];
       $element = $this->formSingleElement($items, $delta, $element, $form, $form_state);
       if ($element) {
         $element['#required'] = ($element['#required'] && $delta == 0);
@@ -173,8 +173,8 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
       $elements['#type'] = 'details';
       $elements['#open'] = TRUE;
       $elements['#theme'] = 'file_widget_multiple';
-      $elements['#theme_wrappers'] = array('details');
-      $elements['#process'] = array(array(get_class($this), 'processMultiple'));
+      $elements['#theme_wrappers'] = ['details'];
+      $elements['#process'] = [[get_class($this), 'processMultiple']];
       $elements['#title'] = $title;
 
       $elements['#description'] = $description;
@@ -183,19 +183,19 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
       // The field settings include defaults for the field type. However, this
       // widget is a base class for other widgets (e.g., ImageWidget) that may
       // act on field types without these expected settings.
-      $field_settings = $this->getFieldSettings() + array('display_field' => NULL);
+      $field_settings = $this->getFieldSettings() + ['display_field' => NULL];
       $elements['#display_field'] = (bool) $field_settings['display_field'];
 
       // Add some properties that will eventually be added to the file upload
       // field. These are added here so that they may be referenced easily
       // through a hook_form_alter().
       $elements['#file_upload_title'] = t('Add a new file');
-      $elements['#file_upload_description'] = array(
+      $elements['#file_upload_description'] = [
         '#theme' => 'file_upload_help',
         '#description' => '',
         '#upload_validators' => $elements[0]['#upload_validators'],
         '#cardinality' => $cardinality,
-      );
+      ];
     }
 
     return $elements;
@@ -210,28 +210,28 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     // The field settings include defaults for the field type. However, this
     // widget is a base class for other widgets (e.g., ImageWidget) that may act
     // on field types without these expected settings.
-    $field_settings += array(
+    $field_settings += [
       'display_default' => NULL,
       'display_field' => NULL,
       'description_field' => NULL,
-    );
+    ];
 
     $cardinality = $this->fieldDefinition->getFieldStorageDefinition()->getCardinality();
-    $defaults = array(
-      'fids' => array(),
+    $defaults = [
+      'fids' => [],
       'display' => (bool) $field_settings['display_default'],
       'description' => '',
-    );
+    ];
 
     // Essentially we use the managed_file type, extended with some
     // enhancements.
     $element_info = $this->elementInfo->getInfo('managed_file');
-    $element += array(
+    $element += [
       '#type' => 'managed_file',
       '#upload_location' => $items[$delta]->getUploadLocation(),
       '#upload_validators' => $items[$delta]->getUploadValidators(),
-      '#value_callback' => array(get_class($this), 'value'),
-      '#process' => array_merge($element_info['#process'], array(array(get_class($this), 'process'))),
+      '#value_callback' => [get_class($this), 'value'],
+      '#process' => array_merge($element_info['#process'], [[get_class($this), 'process']]),
       '#progress_indicator' => $this->getSetting('progress_indicator'),
       // Allows this field to return an array instead of a single value.
       '#extended' => TRUE,
@@ -242,29 +242,29 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       '#display_default' => $field_settings['display_default'],
       '#description_field' => $field_settings['description_field'],
       '#cardinality' => $cardinality,
-    );
+    ];
 
     $element['#weight'] = $delta;
 
     // Field stores FID value in a single mode, so we need to transform it for
     // form element to recognize it correctly.
     if (!isset($items[$delta]->fids) && isset($items[$delta]->target_id)) {
-      $items[$delta]->fids = array($items[$delta]->target_id);
+      $items[$delta]->fids = [$items[$delta]->target_id];
     }
     $element['#default_value'] = $items[$delta]->getValue() + $defaults;
 
     $default_fids = $element['#extended'] ? $element['#default_value']['fids'] : $element['#default_value'];
     if (empty($default_fids)) {
-      $file_upload_help = array(
+      $file_upload_help = [
         '#theme' => 'file_upload_help',
         '#description' => $element['#description'],
         '#upload_validators' => $element['#upload_validators'],
         '#cardinality' => $cardinality,
-      );
+      ];
       $element['#description'] = \Drupal::service('renderer')->renderPlain($file_upload_help);
       $element['#multiple'] = $cardinality != 1 ? TRUE : FALSE;
       if ($cardinality != 1 && $cardinality != -1) {
-        $element['#element_validate'] = array(array(get_class($this), 'validateMultipleCount'));
+        $element['#element_validate'] = [[get_class($this), 'validateMultipleCount']];
       }
     }
 
@@ -278,7 +278,7 @@ public function massageFormValues(array $values, array $form, FormStateInterface
     // Since file upload widget now supports uploads of more than one file at a
     // time it always returns an array of fids. We have to translate this to a
     // single fid, as field expects single value.
-    $new_values = array();
+    $new_values = [];
     foreach ($values as &$value) {
       foreach ($value['fids'] as $fid) {
         $new_value = $value;
@@ -324,11 +324,11 @@ public static function value($element, $input, FormStateInterface $form_state) {
     $return = ManagedFile::valueCallback($element, $input, $form_state);
 
     // Ensure that all the required properties are returned even if empty.
-    $return += array(
-      'fids' => array(),
+    $return += [
+      'fids' => [],
       'display' => 1,
       'description' => '',
-    );
+    ];
 
     return $return;
   }
@@ -353,7 +353,7 @@ public static function validateMultipleCount($element, FormStateInterface $form_
     if ($total_uploaded_count > $field_storage->getCardinality()) {
       $keep = $newly_uploaded_count - $total_uploaded_count + $field_storage->getCardinality();
       $removed_files = array_slice($values['fids'], $keep);
-      $removed_names = array();
+      $removed_names = [];
       foreach ($removed_files as $fid) {
         $file = File::load($fid);
         $removed_names[] = $file->getFilename();
@@ -385,11 +385,11 @@ public static function process($element, FormStateInterface $form_state, $form)
 
     // Add the display field if enabled.
     if ($element['#display_field']) {
-      $element['display'] = array(
+      $element['display'] = [
         '#type' => empty($item['fids']) ? 'hidden' : 'checkbox',
         '#title' => t('Include file in display'),
-        '#attributes' => array('class' => array('file-display')),
-      );
+        '#attributes' => ['class' => ['file-display']],
+      ];
       if (isset($item['display'])) {
         $element['display']['#value'] = $item['display'] ? '1' : '';
       }
@@ -398,33 +398,33 @@ public static function process($element, FormStateInterface $form_state, $form)
       }
     }
     else {
-      $element['display'] = array(
+      $element['display'] = [
         '#type' => 'hidden',
         '#value' => '1',
-      );
+      ];
     }
 
     // Add the description field if enabled.
     if ($element['#description_field'] && $item['fids']) {
       $config = \Drupal::config('file.settings');
-      $element['description'] = array(
+      $element['description'] = [
         '#type' => $config->get('description.type'),
         '#title' => t('Description'),
         '#value' => isset($item['description']) ? $item['description'] : '',
         '#maxlength' => $config->get('description.length'),
         '#description' => t('The description may be used as the label of the link to the file.'),
-      );
+      ];
     }
 
     // Adjust the Ajax settings so that on upload and remove of any individual
     // file, the entire group of file fields is updated together.
     if ($element['#cardinality'] != 1) {
       $parents = array_slice($element['#array_parents'], 0, -1);
-      $new_options = array(
-        'query' => array(
+      $new_options = [
+        'query' => [
           'element_parents' => implode('/', $parents),
-        ),
-      );
+        ],
+      ];
       $field_element = NestedArray::getValue($form, $parents);
       $new_wrapper = $field_element['#id'] . '-ajax-wrapper';
       foreach (Element::children($element) as $key) {
@@ -440,9 +440,9 @@ public static function process($element, FormStateInterface $form_state, $form)
     // functionality needed by the field widget. This submit handler, along with
     // the rebuild logic in file_field_widget_form() requires the entire field,
     // not just the individual item, to be valid.
-    foreach (array('upload_button', 'remove_button') as $key) {
-      $element[$key]['#submit'][] = array(get_called_class(), 'submit');
-      $element[$key]['#limit_validation_errors'] = array(array_slice($element['#parents'], 0, -1));
+    foreach (['upload_button', 'remove_button'] as $key) {
+      $element[$key]['#submit'][] = [get_called_class(), 'submit'];
+      $element[$key]['#limit_validation_errors'] = [array_slice($element['#parents'], 0, -1)];
     }
 
     return $element;
@@ -477,22 +477,22 @@ public static function processMultiple($element, FormStateInterface $form_state,
     foreach ($element_children as $delta => $key) {
       if ($key != $element['#file_upload_delta']) {
         $description = static::getDescriptionFromElement($element[$key]);
-        $element[$key]['_weight'] = array(
+        $element[$key]['_weight'] = [
           '#type' => 'weight',
-          '#title' => $description ? t('Weight for @title', array('@title' => $description)) : t('Weight for new file'),
+          '#title' => $description ? t('Weight for @title', ['@title' => $description]) : t('Weight for new file'),
           '#title_display' => 'invisible',
           '#delta' => $count,
           '#default_value' => $delta,
-        );
+        ];
       }
       else {
         // The title needs to be assigned to the upload field so that validation
         // errors include the correct widget label.
         $element[$key]['#title'] = $element['#title'];
-        $element[$key]['_weight'] = array(
+        $element[$key]['_weight'] = [
           '#type' => 'hidden',
           '#default_value' => $delta,
-        );
+        ];
       }
     }
 
@@ -559,12 +559,12 @@ public static function submit($form, FormStateInterface $form_state) {
 
     // If there are more files uploaded via the same widget, we have to separate
     // them, as we display each file in its own widget.
-    $new_values = array();
+    $new_values = [];
     foreach ($submitted_values as $delta => $submitted_value) {
       if (is_array($submitted_value['fids'])) {
         foreach ($submitted_value['fids'] as $fid) {
           $new_value = $submitted_value;
-          $new_value['fids'] = array($fid);
+          $new_value['fids'] = [$fid];
           $new_values[] = $new_value;
         }
       }
diff --git a/core/modules/file/src/Plugin/migrate/cckfield/d7/ImageField.php b/core/modules/file/src/Plugin/migrate/cckfield/d7/ImageField.php
index 7f47caa..ad24ae2 100644
--- a/core/modules/file/src/Plugin/migrate/cckfield/d7/ImageField.php
+++ b/core/modules/file/src/Plugin/migrate/cckfield/d7/ImageField.php
@@ -17,7 +17,7 @@ class ImageField extends CckFieldPluginBase {
    * {@inheritdoc}
    */
   public function getFieldFormatterMap() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/file/src/Plugin/migrate/source/d6/File.php b/core/modules/file/src/Plugin/migrate/source/d6/File.php
index 13aee57..0564b6b 100644
--- a/core/modules/file/src/Plugin/migrate/source/d6/File.php
+++ b/core/modules/file/src/Plugin/migrate/source/d6/File.php
@@ -75,7 +75,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'fid' => $this->t('File ID'),
       'uid' => $this->t('The {users}.uid who added the file. If set to 0, this file was added by an anonymous user.'),
       'filename' => $this->t('File name'),
@@ -85,7 +85,7 @@ public function fields() {
       'timestamp' => $this->t('The time that the file was added.'),
       'file_directory_path' => $this->t('The Drupal files path.'),
       'is_public' => $this->t('TRUE if the files directory is public otherwise FALSE.'),
-    );
+    ];
   }
   /**
    * {@inheritdoc}
diff --git a/core/modules/file/src/Plugin/migrate/source/d6/Upload.php b/core/modules/file/src/Plugin/migrate/source/d6/Upload.php
index 5b7c3ae..4e07a23 100644
--- a/core/modules/file/src/Plugin/migrate/source/d6/Upload.php
+++ b/core/modules/file/src/Plugin/migrate/source/d6/Upload.php
@@ -26,7 +26,7 @@ class Upload extends DrupalSqlBase {
   public function query() {
     $query = $this->select('upload', 'u')
       ->distinct()
-      ->fields('u', array('nid', 'vid'));
+      ->fields('u', ['nid', 'vid']);
     $query->innerJoin('node', 'n', static::JOIN);
     $query->addField('n', 'type');
     return $query;
@@ -37,7 +37,7 @@ public function query() {
    */
   public function prepareRow(Row $row) {
     $query = $this->select('upload', 'u')
-      ->fields('u', array('fid', 'description', 'list'))
+      ->fields('u', ['fid', 'description', 'list'])
       ->condition('u.nid', $row->getSourceProperty('nid'))
       ->orderBy('u.weight');
     $query->innerJoin('node', 'n', static::JOIN);
@@ -49,7 +49,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'fid' => $this->t('The file Id.'),
       'nid' => $this->t('The node Id.'),
       'vid' => $this->t('The version Id.'),
@@ -57,7 +57,7 @@ public function fields() {
       'description' => $this->t('The file description.'),
       'list' => $this->t('Whether the list should be visible on the node page.'),
       'weight' => $this->t('The file weight.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/file/src/Plugin/migrate/source/d6/UploadInstance.php b/core/modules/file/src/Plugin/migrate/source/d6/UploadInstance.php
index c20ac03..c1b3345 100644
--- a/core/modules/file/src/Plugin/migrate/source/d6/UploadInstance.php
+++ b/core/modules/file/src/Plugin/migrate/source/d6/UploadInstance.php
@@ -30,7 +30,7 @@ protected function initializeIterator() {
     $max_filesize = $this->variableGet('upload_uploadsize_default', 1);
     $max_filesize = $max_filesize ? $max_filesize . 'MB' : '';
     $file_extensions = $this->variableGet('upload_extensions_default', 'jpg jpeg gif png txt doc xls pdf ppt pps odt ods odp');
-    $return = array();
+    $return = [];
     $values = $this->select('variable', 'v')
       ->fields('v', ['name', 'value'])
       ->condition('v.name', $variables, 'IN')
@@ -55,22 +55,22 @@ protected function initializeIterator() {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'node_type' => array(
+    return [
+      'node_type' => [
         'type' => 'string',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'node_type' => $this->t('Node type'),
       'max_filesize' => $this->t('Max filesize'),
       'file_extensions' => $this->t('File extensions'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/file/src/Plugin/migrate/source/d7/File.php b/core/modules/file/src/Plugin/migrate/source/d7/File.php
index 247a6cf..e418f82 100644
--- a/core/modules/file/src/Plugin/migrate/source/d7/File.php
+++ b/core/modules/file/src/Plugin/migrate/source/d7/File.php
@@ -46,7 +46,7 @@ public function query() {
 
     // Filter by scheme(s), if configured.
     if (isset($this->configuration['scheme'])) {
-      $schemes = array();
+      $schemes = [];
       // Accept either a single scheme, or a list.
       foreach ((array) $this->configuration['scheme'] as $scheme) {
         $schemes[] = rtrim($scheme) . '://';
@@ -93,7 +93,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'fid' => $this->t('File ID'),
       'uid' => $this->t('The {users}.uid who added the file. If set to 0, this file was added by an anonymous user.'),
       'filename' => $this->t('File name'),
@@ -101,7 +101,7 @@ public function fields() {
       'filemime' => $this->t('File MIME Type'),
       'status' => $this->t('The published status of a file.'),
       'timestamp' => $this->t('The time that the file was added.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/file/src/Plugin/views/argument/Fid.php b/core/modules/file/src/Plugin/views/argument/Fid.php
index 832e85d..1654fcc 100644
--- a/core/modules/file/src/Plugin/views/argument/Fid.php
+++ b/core/modules/file/src/Plugin/views/argument/Fid.php
@@ -61,7 +61,7 @@ public function titleQuery() {
       ->condition('fid', $this->value, 'IN')
       ->execute();
     $files = $storage->loadMultiple($fids);
-    $titles = array();
+    $titles = [];
     foreach ($files as $file) {
       $titles[] = $file->getFilename();
     }
diff --git a/core/modules/file/src/Plugin/views/field/File.php b/core/modules/file/src/Plugin/views/field/File.php
index 18bc1fc..57d8c60 100644
--- a/core/modules/file/src/Plugin/views/field/File.php
+++ b/core/modules/file/src/Plugin/views/field/File.php
@@ -33,7 +33,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['link_to_file'] = array('default' => FALSE);
+    $options['link_to_file'] = ['default' => FALSE];
     return $options;
   }
 
@@ -41,12 +41,12 @@ protected function defineOptions() {
    * Provide link to file option
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['link_to_file'] = array(
+    $form['link_to_file'] = [
       '#title' => $this->t('Link this field to download the file'),
       '#description' => $this->t("Enable to override this field's links."),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['link_to_file']),
-    );
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
diff --git a/core/modules/file/src/Tests/DownloadTest.php b/core/modules/file/src/Tests/DownloadTest.php
index e92cef3..bb871d4 100644
--- a/core/modules/file/src/Tests/DownloadTest.php
+++ b/core/modules/file/src/Tests/DownloadTest.php
@@ -63,7 +63,7 @@ protected function doPrivateFileTransferTest() {
     $url  = file_create_url($file->getFileUri());
 
     // Set file_test access header to allow the download.
-    file_test_set_return('download', array('x-foo' => 'Bar'));
+    file_test_set_return('download', ['x-foo' => 'Bar']);
     $this->drupalGet($url);
     $this->assertEqual($this->drupalGetHeader('x-foo'), 'Bar', 'Found header set by file_test module on private download.');
     $this->assertFalse($this->drupalGetHeader('x-drupal-cache'), 'Page cache is disabled on private file download.');
@@ -102,10 +102,10 @@ function testFileCreateUrl() {
     // routed through Drupal, whereas private files should be served by Drupal,
     // so they need to be. The difference is most apparent when $script_path
     // is not empty (i.e., when not using clean URLs).
-    $clean_url_settings = array(
+    $clean_url_settings = [
       'clean' => '',
       'unclean' => 'index.php/',
-    );
+    ];
     $public_directory_path = \Drupal::service('stream_wrapper_manager')->getViaScheme('public')->getDirectoryPath();
     foreach ($clean_url_settings as $clean_url_setting => $script_path) {
       $clean_urls = $clean_url_setting == 'clean';
@@ -158,7 +158,7 @@ private function checkUrl($scheme, $directory, $filename, $expected_url) {
     if ($scheme == 'private') {
       // Tell the implementation of hook_file_download() in file_test.module
       // that this file may be downloaded.
-      file_test_set_return('download', array('x-foo' => 'Bar'));
+      file_test_set_return('download', ['x-foo' => 'Bar']);
     }
 
     $this->drupalGet($url);
diff --git a/core/modules/file/src/Tests/FileFieldAnonymousSubmissionTest.php b/core/modules/file/src/Tests/FileFieldAnonymousSubmissionTest.php
index 2286473..b59b1ba 100644
--- a/core/modules/file/src/Tests/FileFieldAnonymousSubmissionTest.php
+++ b/core/modules/file/src/Tests/FileFieldAnonymousSubmissionTest.php
@@ -19,10 +19,10 @@ class FileFieldAnonymousSubmissionTest extends FileFieldTestBase {
   protected function setUp() {
     parent::setUp();
     // Set up permissions for anonymous attacker user.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'create article content' => TRUE,
       'access content' => TRUE,
-    ));
+    ]);
   }
 
   /**
@@ -36,17 +36,17 @@ public function testAnonymousNode() {
     $this->drupalLogout();
     $this->drupalGet('node/add/article');
     $this->assertResponse(200, 'Loaded the article node form.');
-    $this->assertText(strip_tags(t('Create @name', array('@name' => $bundle_label))));
+    $this->assertText(strip_tags(t('Create @name', ['@name' => $bundle_label])));
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
       'body[0][value]' => 'Test article',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertResponse(200);
-    $t_args = array('@type' => $bundle_label, '%title' => $node_title);
+    $t_args = ['@type' => $bundle_label, '%title' => $node_title];
     $this->assertText(strip_tags(t('@type %title has been created.', $t_args)), 'The node was created.');
-    $matches = array();
+    $matches = [];
     if (preg_match('@node/(\d+)$@', $this->getUrl(), $matches)) {
       $nid = end($matches);
       $this->assertNotEqual($nid, 0, 'The node ID was extracted from the URL.');
@@ -61,28 +61,28 @@ public function testAnonymousNode() {
   public function testAnonymousNodeWithFile() {
     $bundle_label = 'Article';
     $node_title = 'Test page';
-    $this->createFileField('field_image', 'node', 'article', array(), array('file_extensions' => 'txt png'));
+    $this->createFileField('field_image', 'node', 'article', [], ['file_extensions' => 'txt png']);
 
     // Load the node form.
     $this->drupalLogout();
     $this->drupalGet('node/add/article');
     $this->assertResponse(200, 'Loaded the article node form.');
-    $this->assertText(strip_tags(t('Create @name', array('@name' => $bundle_label))));
+    $this->assertText(strip_tags(t('Create @name', ['@name' => $bundle_label])));
 
     // Generate an image file.
     $image = $this->getTestFile('image');
 
     // Submit the form.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
       'body[0][value]' => 'Test article',
       'files[field_image_0]' => $this->container->get('file_system')->realpath($image->getFileUri()),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertResponse(200);
-    $t_args = array('@type' => $bundle_label, '%title' => $node_title);
+    $t_args = ['@type' => $bundle_label, '%title' => $node_title];
     $this->assertText(strip_tags(t('@type %title has been created.', $t_args)), 'The node was created.');
-    $matches = array();
+    $matches = [];
     if (preg_match('@node/(\d+)$@', $this->getUrl(), $matches)) {
       $nid = end($matches);
       $this->assertNotEqual($nid, 0, 'The node ID was extracted from the URL.');
@@ -104,11 +104,11 @@ public function testAnonymousNodeWithFileWithoutTitle() {
    * Tests file submission for an authenticated user with a missing node title.
    */
   public function testAuthenticatedNodeWithFileWithoutTitle() {
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'bypass node access',
       'access content overview',
       'administer nodes',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
     $this->doTestNodeWithFileWithoutTitle();
   }
@@ -119,21 +119,21 @@ public function testAuthenticatedNodeWithFileWithoutTitle() {
   protected function doTestNodeWithFileWithoutTitle() {
     $bundle_label = 'Article';
     $node_title = 'Test page';
-    $this->createFileField('field_image', 'node', 'article', array(), array('file_extensions' => 'txt png'));
+    $this->createFileField('field_image', 'node', 'article', [], ['file_extensions' => 'txt png']);
 
     // Load the node form.
     $this->drupalGet('node/add/article');
     $this->assertResponse(200, 'Loaded the article node form.');
-    $this->assertText(strip_tags(t('Create @name', array('@name' => $bundle_label))));
+    $this->assertText(strip_tags(t('Create @name', ['@name' => $bundle_label])));
 
     // Generate an image file.
     $image = $this->getTestFile('image');
 
     // Submit the form but exclude the title field.
-    $edit = array(
+    $edit = [
       'body[0][value]' => 'Test article',
       'files[field_image_0]' => $this->container->get('file_system')->realpath($image->getFileUri()),
-    );
+    ];
     if (!$this->loggedInUser) {
       $label = 'Save';
     }
@@ -142,21 +142,21 @@ protected function doTestNodeWithFileWithoutTitle() {
     }
     $this->drupalPostForm(NULL, $edit, $label);
     $this->assertResponse(200);
-    $t_args = array('@type' => $bundle_label, '%title' => $node_title);
+    $t_args = ['@type' => $bundle_label, '%title' => $node_title];
     $this->assertNoText(strip_tags(t('@type %title has been created.', $t_args)), 'The node was created.');
     $this->assertText('Title field is required.');
 
     // Submit the form again but this time with the missing title field. This
     // should still work.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, $label);
 
     // Confirm the final submission actually worked.
-    $t_args = array('@type' => $bundle_label, '%title' => $node_title);
+    $t_args = ['@type' => $bundle_label, '%title' => $node_title];
     $this->assertText(strip_tags(t('@type %title has been created.', $t_args)), 'The node was created.');
-    $matches = array();
+    $matches = [];
     if (preg_match('@node/(\d+)$@', $this->getUrl(), $matches)) {
       $nid = end($matches);
       $this->assertNotEqual($nid, 0, 'The node ID was extracted from the URL.');
diff --git a/core/modules/file/src/Tests/FileFieldDisplayTest.php b/core/modules/file/src/Tests/FileFieldDisplayTest.php
index b25b514..f78cd7d 100644
--- a/core/modules/file/src/Tests/FileFieldDisplayTest.php
+++ b/core/modules/file/src/Tests/FileFieldDisplayTest.php
@@ -18,23 +18,23 @@ class FileFieldDisplayTest extends FileFieldTestBase {
   function testNodeDisplay() {
     $field_name = strtolower($this->randomMachineName());
     $type_name = 'article';
-    $field_storage_settings = array(
+    $field_storage_settings = [
       'display_field' => '1',
       'display_default' => '1',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
-    $field_settings = array(
+    ];
+    $field_settings = [
       'description_field' => '1',
-    );
-    $widget_settings = array();
+    ];
+    $widget_settings = [];
     $this->createFileField($field_name, 'node', $type_name, $field_storage_settings, $field_settings, $widget_settings);
 
     // Create a new node *without* the file field set, and check that the field
     // is not shown for each node display.
-    $node = $this->drupalCreateNode(array('type' => $type_name));
+    $node = $this->drupalCreateNode(['type' => $type_name]);
     // Check file_default last as the assertions below assume that this is the
     // case.
-    $file_formatters = array('file_table', 'file_url_plain', 'hidden', 'file_default');
+    $file_formatters = ['file_table', 'file_url_plain', 'hidden', 'file_default'];
     foreach ($file_formatters as $formatter) {
       if ($formatter === 'hidden') {
         $edit = [
@@ -49,7 +49,7 @@ function testNodeDisplay() {
       }
       $this->drupalPostForm("admin/structure/types/manage/$type_name/display", $edit, t('Save'));
       $this->drupalGet('node/' . $node->id());
-      $this->assertNoText($field_name, format_string('Field label is hidden when no file attached for formatter %formatter', array('%formatter' => $formatter)));
+      $this->assertNoText($field_name, format_string('Field label is hidden when no file attached for formatter %formatter', ['%formatter' => $formatter]));
     }
 
     $test_file = $this->getTestFile('text');
@@ -65,28 +65,28 @@ function testNodeDisplay() {
 
     // Check that the default formatter is displaying with the file name.
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
-    $file_link = array(
+    $file_link = [
       '#theme' => 'file_link',
       '#file' => $node_file,
-    );
+    ];
     $default_output = \Drupal::service('renderer')->renderRoot($file_link);
     $this->assertRaw($default_output, 'Default formatter displaying correctly on full node view.');
 
     // Turn the "display" option off and check that the file is no longer displayed.
-    $edit = array($field_name . '[0][display]' => FALSE);
+    $edit = [$field_name . '[0][display]' => FALSE];
     $this->drupalPostForm('node/' . $nid . '/edit', $edit, t('Save and keep published'));
 
     $this->assertNoRaw($default_output, 'Field is hidden when "display" option is unchecked.');
 
     // Add a description and make sure that it is displayed.
     $description = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       $field_name . '[0][description]' => $description,
       $field_name . '[0][display]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('node/' . $nid . '/edit', $edit, t('Save and keep published'));
     $this->assertText($description);
 
@@ -113,15 +113,15 @@ function testNodeDisplay() {
   function testDefaultFileFieldDisplay() {
     $field_name = strtolower($this->randomMachineName());
     $type_name = 'article';
-    $field_storage_settings = array(
+    $field_storage_settings = [
       'display_field' => '1',
       'display_default' => '0',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    );
-    $field_settings = array(
+    ];
+    $field_settings = [
       'description_field' => '1',
-    );
-    $widget_settings = array();
+    ];
+    $widget_settings = [];
     $this->createFileField($field_name, 'node', $type_name, $field_storage_settings, $field_settings, $widget_settings);
 
     $test_file = $this->getTestFile('text');
@@ -142,31 +142,31 @@ function testDescToggle() {
     $field_type = 'file';
     $field_name = strtolower($this->randomMachineName());
     // Use the UI to add a new content type that also contains a file field.
-    $edit = array(
+    $edit = [
       'name' => $type_name,
       'type' => $type_name,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, t('Save and manage fields'));
-    $edit = array(
+    $edit = [
       'new_storage_type' => $field_type,
       'field_name' => $field_name,
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm('/admin/structure/types/manage/' . $type_name . '/fields/add-field', $edit, t('Save and continue'));
-    $this->drupalPostForm(NULL, array(), t('Save field settings'));
+    $this->drupalPostForm(NULL, [], t('Save field settings'));
     // Ensure the description field is selected on the field instance settings
     // form. That's what this test is all about.
-    $edit = array(
+    $edit = [
       'settings[description_field]' => TRUE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save settings'));
     // Add a node of our new type and upload a file to it.
     $file = current($this->drupalGetTestFiles('text'));
     $title = $this->randomString();
-    $edit = array(
+    $edit = [
       'title[0][value]' => $title,
       'files[field_' . $field_name . '_0]' => drupal_realpath($file->uri),
-    );
+    ];
     $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish'));
     $node = $this->drupalGetNodeByTitle($title);
     $this->drupalGet('node/' . $node->id() . '/edit');
diff --git a/core/modules/file/src/Tests/FileFieldPathTest.php b/core/modules/file/src/Tests/FileFieldPathTest.php
index c9a15de..f2498b5 100644
--- a/core/modules/file/src/Tests/FileFieldPathTest.php
+++ b/core/modules/file/src/Tests/FileFieldPathTest.php
@@ -26,7 +26,7 @@ function testUploadPath() {
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
 
     // Check that the file was uploaded to the correct location.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     /** @var \Drupal\file\FileInterface $node_file */
     $node_file = $node->{$field_name}->entity;
@@ -36,36 +36,36 @@ function testUploadPath() {
       $date_formatter->format(REQUEST_TIME, 'custom', 'Y') . '-' .
       $date_formatter->format(REQUEST_TIME, 'custom', 'm') . '/' .
       $test_file->getFilename();
-    $this->assertPathMatch($expected_filename, $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path.', array('%file' => $node_file->getFileUri())));
+    $this->assertPathMatch($expected_filename, $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path.', ['%file' => $node_file->getFileUri()]));
 
     // Change the path to contain multiple subdirectories.
-    $this->updateFileField($field_name, $type_name, array('file_directory' => 'foo/bar/baz'));
+    $this->updateFileField($field_name, $type_name, ['file_directory' => 'foo/bar/baz']);
 
     // Upload a new file into the subdirectories.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
 
     // Check that the file was uploaded into the subdirectory.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
-    $this->assertPathMatch('public://foo/bar/baz/' . $test_file->getFilename(), $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path.', array('%file' => $node_file->getFileUri())));
+    $this->assertPathMatch('public://foo/bar/baz/' . $test_file->getFilename(), $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path.', ['%file' => $node_file->getFileUri()]));
 
     // Check the path when used with tokens.
     // Change the path to contain multiple token directories.
-    $this->updateFileField($field_name, $type_name, array('file_directory' => '[current-user:uid]/[current-user:name]'));
+    $this->updateFileField($field_name, $type_name, ['file_directory' => '[current-user:uid]/[current-user:name]']);
 
     // Upload a new file into the token subdirectories.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
 
     // Check that the file was uploaded into the subdirectory.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     // Do token replacement using the same user which uploaded the file, not
     // the user running the test case.
-    $data = array('user' => $this->adminUser);
+    $data = ['user' => $this->adminUser];
     $subdirectory = \Drupal::token()->replace('[user:uid]/[user:name]', $data);
-    $this->assertPathMatch('public://' . $subdirectory . '/' . $test_file->getFilename(), $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path with token replacements.', array('%file' => $node_file->getFileUri())));
+    $this->assertPathMatch('public://' . $subdirectory . '/' . $test_file->getFilename(), $node_file->getFileUri(), format_string('The file %file was uploaded to the correct path with token replacements.', ['%file' => $node_file->getFileUri()]));
   }
 
   /**
diff --git a/core/modules/file/src/Tests/FileFieldRSSContentTest.php b/core/modules/file/src/Tests/FileFieldRSSContentTest.php
index 4e18e71..e16e82e 100644
--- a/core/modules/file/src/Tests/FileFieldRSSContentTest.php
+++ b/core/modules/file/src/Tests/FileFieldRSSContentTest.php
@@ -16,7 +16,7 @@ class FileFieldRSSContentTest extends FileFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'views');
+  public static $modules = ['node', 'views'];
 
   /**
    * Tests RSS enclosure formatter display for RSS feeds.
@@ -30,29 +30,29 @@ function testFileFieldRSSContent() {
 
     // RSS display must be added manually.
     $this->drupalGet("admin/structure/types/manage/$type_name/display");
-    $edit = array(
+    $edit = [
       "display_modes_custom[rss]" => '1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Change the format to 'RSS enclosure'.
     $this->drupalGet("admin/structure/types/manage/$type_name/display/rss");
-    $edit = array(
+    $edit = [
       "fields[$field_name][type]" => 'file_rss_enclosure',
       "fields[$field_name][region]" => 'content',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Create a new node with a file field set. Promote to frontpage
     // needs to be set so this node will appear in the RSS feed.
-    $node = $this->drupalCreateNode(array('type' => $type_name, 'promote' => 1));
+    $node = $this->drupalCreateNode(['type' => $type_name, 'promote' => 1]);
     $test_file = $this->getTestFile('text');
 
     // Create a new node with the uploaded file.
     $nid = $this->uploadNodeFile($test_file, $field_name, $node->id());
 
     // Get the uploaded file from the node.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
 
@@ -61,7 +61,7 @@ function testFileFieldRSSContent() {
     $uploaded_filename = str_replace('public://', '', $node_file->getFileUri());
     $selector = sprintf(
       'enclosure[url="%s"][length="%s"][type="%s"]',
-      file_create_url("public://$uploaded_filename", array('absolute' => TRUE)),
+      file_create_url("public://$uploaded_filename", ['absolute' => TRUE]),
       $node_file->getSize(),
       $node_file->getMimeType()
     );
diff --git a/core/modules/file/src/Tests/FileFieldRevisionTest.php b/core/modules/file/src/Tests/FileFieldRevisionTest.php
index f5d00c7..ef79041 100644
--- a/core/modules/file/src/Tests/FileFieldRevisionTest.php
+++ b/core/modules/file/src/Tests/FileFieldRevisionTest.php
@@ -35,7 +35,7 @@ function testRevisions() {
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
 
     // Check that the file exists on disk and in the database.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file_r1 = File::load($node->{$field_name}->target_id);
     $node_vid_r1 = $node->getRevisionId();
@@ -45,7 +45,7 @@ function testRevisions() {
 
     // Upload another file to the same node in a new revision.
     $this->replaceNodeFile($test_file, $field_name, $nid);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file_r2 = File::load($node->{$field_name}->target_id);
     $node_vid_r2 = $node->getRevisionId();
@@ -63,8 +63,8 @@ function testRevisions() {
 
     // Save a new version of the node without any changes.
     // Check that the file is still the same as the previous revision.
-    $this->drupalPostForm('node/' . $nid . '/edit', array('revision' => '1'), t('Save and keep published'));
-    $node_storage->resetCache(array($nid));
+    $this->drupalPostForm('node/' . $nid . '/edit', ['revision' => '1'], t('Save and keep published'));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file_r3 = File::load($node->{$field_name}->target_id);
     $node_vid_r3 = $node->getRevisionId();
@@ -72,8 +72,8 @@ function testRevisions() {
     $this->assertFileIsPermanent($node_file_r3, 'New revision file is permanent.');
 
     // Revert to the first revision and check that the original file is active.
-    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r1 . '/revert', array(), t('Revert'));
-    $node_storage->resetCache(array($nid));
+    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r1 . '/revert', [], t('Revert'));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file_r4 = File::load($node->{$field_name}->target_id);
     $this->assertEqual($node_file_r1->id(), $node_file_r4->id(), 'Original revision file still in place after reverting to the original revision.');
@@ -81,7 +81,7 @@ function testRevisions() {
 
     // Delete the second revision and check that the file is kept (since it is
     // still being used by the third revision).
-    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r2 . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r2 . '/delete', [], t('Delete'));
     $this->assertFileExists($node_file_r3, 'Second file is still available after deleting second revision, since it is being used by the third revision.');
     $this->assertFileEntryExists($node_file_r3, 'Second file entry is still available after deleting second revision, since it is being used by the third revision.');
     $this->assertFileIsPermanent($node_file_r3, 'Second file entry is still permanent after deleting second revision, since it is being used by the third revision.');
@@ -94,7 +94,7 @@ function testRevisions() {
     $this->drupalGet('user/' . $user->id() . '/edit');
 
     // Delete the third revision and check that the file is not deleted yet.
-    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r3 . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $nid . '/revisions/' . $node_vid_r3 . '/delete', [], t('Delete'));
     $this->assertFileExists($node_file_r3, 'Second file is still available after deleting third revision, since it is being used by the user.');
     $this->assertFileEntryExists($node_file_r3, 'Second file entry is still available after deleting third revision, since it is being used by the user.');
     $this->assertFileIsPermanent($node_file_r3, 'Second file entry is still permanent after deleting third revision, since it is being used by the user.');
@@ -113,9 +113,9 @@ function testRevisions() {
     // of the file is older than the system.file.temporary_maximum_age
     // configuration value.
     db_update('file_managed')
-      ->fields(array(
+      ->fields([
         'changed' => REQUEST_TIME - ($this->config('system.file')->get('temporary_maximum_age') + 1),
-      ))
+      ])
       ->condition('fid', $node_file_r3->id())
       ->execute();
     \Drupal::service('cron')->run();
@@ -124,14 +124,14 @@ function testRevisions() {
     $this->assertFileEntryNotExists($node_file_r3, 'Second file entry is now deleted after deleting third revision, since it is no longer being used by any other nodes.');
 
     // Delete the entire node and check that the original file is deleted.
-    $this->drupalPostForm('node/' . $nid . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $nid . '/delete', [], t('Delete'));
     // Call file_cron() to clean up the file. Make sure the changed timestamp
     // of the file is older than the system.file.temporary_maximum_age
     // configuration value.
     db_update('file_managed')
-      ->fields(array(
+      ->fields([
         'changed' => REQUEST_TIME - ($this->config('system.file')->get('temporary_maximum_age') + 1),
-      ))
+      ])
       ->condition('fid', $node_file_r1->id())
       ->execute();
     \Drupal::service('cron')->run();
diff --git a/core/modules/file/src/Tests/FileFieldTestBase.php b/core/modules/file/src/Tests/FileFieldTestBase.php
index 9ec9c75..a9c96f3 100644
--- a/core/modules/file/src/Tests/FileFieldTestBase.php
+++ b/core/modules/file/src/Tests/FileFieldTestBase.php
@@ -21,7 +21,7 @@
   *
   * @var array
   */
-  public static $modules = array('node', 'file', 'file_module_test', 'field_ui');
+  public static $modules = ['node', 'file', 'file_module_test', 'field_ui'];
 
   /**
    * An user with administration permissions.
@@ -32,9 +32,9 @@
 
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'access administration pages', 'administer site configuration', 'administer users', 'administer permissions', 'administer content types', 'administer node fields', 'administer node display', 'administer nodes', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'access administration pages', 'administer site configuration', 'administer users', 'administer permissions', 'administer content types', 'administer node fields', 'administer node display', 'administer nodes', 'bypass node access']);
     $this->drupalLogin($this->adminUser);
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
   }
 
   /**
@@ -76,14 +76,14 @@ function getLastFileId() {
    * @param array $widget_settings
    *   A list of widget settings that will be added to the widget defaults.
    */
-  function createFileField($name, $entity_type, $bundle, $storage_settings = array(), $field_settings = array(), $widget_settings = array()) {
-    $field_storage = FieldStorageConfig::create(array(
+  function createFileField($name, $entity_type, $bundle, $storage_settings = [], $field_settings = [], $widget_settings = []) {
+    $field_storage = FieldStorageConfig::create([
       'entity_type' => $entity_type,
       'field_name' => $name,
       'type' => 'file',
       'settings' => $storage_settings,
       'cardinality' => !empty($storage_settings['cardinality']) ? $storage_settings['cardinality'] : 1,
-    ));
+    ]);
     $field_storage->save();
 
     $this->attachFileField($name, $entity_type, $bundle, $field_settings, $widget_settings);
@@ -104,44 +104,44 @@ function createFileField($name, $entity_type, $bundle, $storage_settings = array
    * @param array $widget_settings
    *   A list of widget settings that will be added to the widget defaults.
    */
-  function attachFileField($name, $entity_type, $bundle, $field_settings = array(), $widget_settings = array()) {
-    $field = array(
+  function attachFileField($name, $entity_type, $bundle, $field_settings = [], $widget_settings = []) {
+    $field = [
       'field_name' => $name,
       'label' => $name,
       'entity_type' => $entity_type,
       'bundle' => $bundle,
       'required' => !empty($field_settings['required']),
       'settings' => $field_settings,
-    );
+    ];
     FieldConfig::create($field)->save();
 
     entity_get_form_display($entity_type, $bundle, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'file_generic',
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
     // Assign display settings.
     entity_get_display($entity_type, $bundle, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'label' => 'hidden',
         'type' => 'file_default',
-      ))
+      ])
       ->save();
   }
 
   /**
    * Updates an existing file field with new settings.
    */
-  function updateFileField($name, $type_name, $field_settings = array(), $widget_settings = array()) {
+  function updateFileField($name, $type_name, $field_settings = [], $widget_settings = []) {
     $field = FieldConfig::loadByName('node', $type_name, $name);
     $field->setSettings(array_merge($field->getSettings(), $field_settings));
     $field->save();
 
     entity_get_form_display('node', $type_name, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
   }
 
@@ -163,7 +163,7 @@ function updateFileField($name, $type_name, $field_settings = array(), $widget_s
    * @return int
    *   The node id.
    */
-  function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = array()) {
+  function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = []) {
     return $this->uploadNodeFiles([$file], $field_name, $nid_or_type, $new_revision, $extras);
   }
 
@@ -185,16 +185,16 @@ function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_rev
    * @return int
    *   The node id.
    */
-  function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = array()) {
-    $edit = array(
+  function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = []) {
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     if (is_numeric($nid_or_type)) {
       $nid = $nid_or_type;
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
     }
     else {
@@ -205,7 +205,7 @@ function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision
       // Save at least one revision to better simulate a real site.
       $node->setNewRevision();
       $node->save();
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $this->assertNotEqual($nid, $node->getRevisionId(), 'Node revision exists.');
     }
@@ -238,11 +238,11 @@ function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision
    * Note that if replacing a file, it must first be removed then added again.
    */
   function removeNodeFile($nid, $new_revision = TRUE) {
-    $edit = array(
+    $edit = [
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
-    $this->drupalPostForm('node/' . $nid . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $nid . '/edit', [], t('Remove'));
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
   }
 
@@ -250,12 +250,12 @@ function removeNodeFile($nid, $new_revision = TRUE) {
    * Replaces a file within a node.
    */
   function replaceNodeFile($file, $field_name, $nid, $new_revision = TRUE) {
-    $edit = array(
+    $edit = [
       'files[' . $field_name . '_0]' => drupal_realpath($file->getFileUri()),
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
-    $this->drupalPostForm('node/' . $nid . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $nid . '/edit', [], t('Remove'));
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
   }
 
@@ -263,7 +263,7 @@ function replaceNodeFile($file, $field_name, $nid, $new_revision = TRUE) {
    * Asserts that a file exists physically on disk.
    */
   function assertFileExists($file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file exists on the disk.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists on the disk.', ['%file' => $file->getFileUri()]);
     $this->assertTrue(is_file($file->getFileUri()), $message);
   }
 
@@ -273,7 +273,7 @@ function assertFileExists($file, $message = NULL) {
   function assertFileEntryExists($file, $message = NULL) {
     $this->container->get('entity.manager')->getStorage('file')->resetCache();
     $db_file = File::load($file->id());
-    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', ['%file' => $file->getFileUri()]);
     $this->assertEqual($db_file->getFileUri(), $file->getFileUri(), $message);
   }
 
@@ -281,7 +281,7 @@ function assertFileEntryExists($file, $message = NULL) {
    * Asserts that a file does not exist on disk.
    */
   function assertFileNotExists($file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file exists on the disk.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists on the disk.', ['%file' => $file->getFileUri()]);
     $this->assertFalse(is_file($file->getFileUri()), $message);
   }
 
@@ -290,7 +290,7 @@ function assertFileNotExists($file, $message = NULL) {
    */
   function assertFileEntryNotExists($file, $message) {
     $this->container->get('entity.manager')->getStorage('file')->resetCache();
-    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', ['%file' => $file->getFileUri()]);
     $this->assertFalse(File::load($file->id()), $message);
   }
 
@@ -298,7 +298,7 @@ function assertFileEntryNotExists($file, $message) {
    * Asserts that a file's status is set to permanent in the database.
    */
   function assertFileIsPermanent(FileInterface $file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file is permanent.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file is permanent.', ['%file' => $file->getFileUri()]);
     $this->assertTrue($file->isPermanent(), $message);
   }
 
diff --git a/core/modules/file/src/Tests/FileFieldValidateTest.php b/core/modules/file/src/Tests/FileFieldValidateTest.php
index 9d43060..0f8b1f1 100644
--- a/core/modules/file/src/Tests/FileFieldValidateTest.php
+++ b/core/modules/file/src/Tests/FileFieldValidateTest.php
@@ -21,22 +21,22 @@ function testRequired() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $type_name = 'article';
     $field_name = strtolower($this->randomMachineName());
-    $storage = $this->createFileField($field_name, 'node', $type_name, array(), array('required' => '1'));
+    $storage = $this->createFileField($field_name, 'node', $type_name, [], ['required' => '1']);
     $field = FieldConfig::loadByName('node', $type_name, $field_name);
 
     $test_file = $this->getTestFile('text');
 
     // Try to post a new node without uploading a file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish'));
-    $this->assertRaw(t('@title field is required.', array('@title' => $field->getLabel())), 'Node save failed when required file field was empty.');
+    $this->assertRaw(t('@title field is required.', ['@title' => $field->getLabel()]), 'Node save failed when required file field was empty.');
 
     // Create a new node with the uploaded file.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $this->assertTrue($nid !== FALSE, format_string('uploadNodeFile(@test_file, @field_name, @type_name) succeeded', array('@test_file' => $test_file->getFileUri(), '@field_name' => $field_name, '@type_name' => $type_name)));
+    $this->assertTrue($nid !== FALSE, format_string('uploadNodeFile(@test_file, @field_name, @type_name) succeeded', ['@test_file' => $test_file->getFileUri(), '@field_name' => $field_name, '@type_name' => $type_name]));
 
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
 
     $node_file = File::load($node->{$field_name}->target_id);
@@ -45,17 +45,17 @@ function testRequired() {
 
     // Try again with a multiple value field.
     $storage->delete();
-    $this->createFileField($field_name, 'node', $type_name, array('cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED), array('required' => '1'));
+    $this->createFileField($field_name, 'node', $type_name, ['cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED], ['required' => '1']);
 
     // Try to post a new node without uploading a file in the multivalue field.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish'));
-    $this->assertRaw(t('@title field is required.', array('@title' => $field->getLabel())), 'Node save failed when required multiple value file field was empty.');
+    $this->assertRaw(t('@title field is required.', ['@title' => $field->getLabel()]), 'Node save failed when required multiple value file field was empty.');
 
     // Create a new node with the uploaded file into the multivalue field.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     $this->assertFileExists($node_file, 'File exists after uploading to the required multiple value field.');
@@ -69,46 +69,46 @@ function testFileMaxSize() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $type_name = 'article';
     $field_name = strtolower($this->randomMachineName());
-    $this->createFileField($field_name, 'node', $type_name, array(), array('required' => '1'));
+    $this->createFileField($field_name, 'node', $type_name, [], ['required' => '1']);
 
     $small_file = $this->getTestFile('text', 131072); // 128KB.
     $large_file = $this->getTestFile('text', 1310720); // 1.2MB
 
     // Test uploading both a large and small file with different increments.
-    $sizes = array(
+    $sizes = [
       '1M' => 1048576,
       '1024K' => 1048576,
       '1048576' => 1048576,
-    );
+    ];
 
     foreach ($sizes as $max_filesize => $file_limit) {
       // Set the max file upload size.
-      $this->updateFileField($field_name, $type_name, array('max_filesize' => $max_filesize));
+      $this->updateFileField($field_name, $type_name, ['max_filesize' => $max_filesize]);
 
       // Create a new node with the small file, which should pass.
       $nid = $this->uploadNodeFile($small_file, $field_name, $type_name);
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $node_file = File::load($node->{$field_name}->target_id);
-      $this->assertFileExists($node_file, format_string('File exists after uploading a file (%filesize) under the max limit (%maxsize).', array('%filesize' => format_size($small_file->getSize()), '%maxsize' => $max_filesize)));
-      $this->assertFileEntryExists($node_file, format_string('File entry exists after uploading a file (%filesize) under the max limit (%maxsize).', array('%filesize' => format_size($small_file->getSize()), '%maxsize' => $max_filesize)));
+      $this->assertFileExists($node_file, format_string('File exists after uploading a file (%filesize) under the max limit (%maxsize).', ['%filesize' => format_size($small_file->getSize()), '%maxsize' => $max_filesize]));
+      $this->assertFileEntryExists($node_file, format_string('File entry exists after uploading a file (%filesize) under the max limit (%maxsize).', ['%filesize' => format_size($small_file->getSize()), '%maxsize' => $max_filesize]));
 
       // Check that uploading the large file fails (1M limit).
       $this->uploadNodeFile($large_file, $field_name, $type_name);
-      $error_message = t('The file is %filesize exceeding the maximum file size of %maxsize.', array('%filesize' => format_size($large_file->getSize()), '%maxsize' => format_size($file_limit)));
-      $this->assertRaw($error_message, format_string('Node save failed when file (%filesize) exceeded the max upload size (%maxsize).', array('%filesize' => format_size($large_file->getSize()), '%maxsize' => $max_filesize)));
+      $error_message = t('The file is %filesize exceeding the maximum file size of %maxsize.', ['%filesize' => format_size($large_file->getSize()), '%maxsize' => format_size($file_limit)]);
+      $this->assertRaw($error_message, format_string('Node save failed when file (%filesize) exceeded the max upload size (%maxsize).', ['%filesize' => format_size($large_file->getSize()), '%maxsize' => $max_filesize]));
     }
 
     // Turn off the max filesize.
-    $this->updateFileField($field_name, $type_name, array('max_filesize' => ''));
+    $this->updateFileField($field_name, $type_name, ['max_filesize' => '']);
 
     // Upload the big file successfully.
     $nid = $this->uploadNodeFile($large_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
-    $this->assertFileExists($node_file, format_string('File exists after uploading a file (%filesize) with no max limit.', array('%filesize' => format_size($large_file->getSize()))));
-    $this->assertFileEntryExists($node_file, format_string('File entry exists after uploading a file (%filesize) with no max limit.', array('%filesize' => format_size($large_file->getSize()))));
+    $this->assertFileExists($node_file, format_string('File exists after uploading a file (%filesize) with no max limit.', ['%filesize' => format_size($large_file->getSize())]));
+    $this->assertFileEntryExists($node_file, format_string('File entry exists after uploading a file (%filesize) with no max limit.', ['%filesize' => format_size($large_file->getSize())]));
   }
 
   /**
@@ -124,30 +124,30 @@ function testFileExtension() {
     list(, $test_file_extension) = explode('.', $test_file->getFilename());
 
     // Disable extension checking.
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => ''));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => '']);
 
     // Check that the file can be uploaded with no extension checking.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     $this->assertFileExists($node_file, 'File exists after uploading a file with no extension checking.');
     $this->assertFileEntryExists($node_file, 'File entry exists after uploading a file with no extension checking.');
 
     // Enable extension checking for text files.
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => 'txt'));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => 'txt']);
 
     // Check that the file with the wrong extension cannot be uploaded.
     $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $error_message = t('Only files with the following extensions are allowed: %files-allowed.', array('%files-allowed' => 'txt'));
+    $error_message = t('Only files with the following extensions are allowed: %files-allowed.', ['%files-allowed' => 'txt']);
     $this->assertRaw($error_message, 'Node save failed when file uploaded with the wrong extension.');
 
     // Enable extension checking for text and image files.
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => "txt $test_file_extension"));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => "txt $test_file_extension"]);
 
     // Check that the file can be uploaded with extension checking.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     $this->assertFileExists($node_file, 'File exists after uploading a file with extension checking.');
@@ -166,18 +166,18 @@ public function testFileRemoval() {
     $test_file = $this->getTestFile('image');
 
     // Disable extension checking.
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => ''));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => '']);
 
     // Check that the file can be uploaded with no extension checking.
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     $this->assertFileExists($node_file, 'File exists after uploading a file with no extension checking.');
     $this->assertFileEntryExists($node_file, 'File entry exists after uploading a file with no extension checking.');
 
     // Enable extension checking for text files.
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => 'txt'));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => 'txt']);
 
     // Check that the file can still be removed.
     $this->removeNodeFile($nid);
diff --git a/core/modules/file/src/Tests/FileFieldWidgetTest.php b/core/modules/file/src/Tests/FileFieldWidgetTest.php
index 414c86b..f132d70 100644
--- a/core/modules/file/src/Tests/FileFieldWidgetTest.php
+++ b/core/modules/file/src/Tests/FileFieldWidgetTest.php
@@ -38,7 +38,7 @@ protected function setUp() {
    *
    * @var array
    */
-  public static $modules = array('comment', 'block');
+  public static $modules = ['comment', 'block'];
 
   /**
    * Creates a temporary file, for a specific user.
@@ -81,13 +81,13 @@ function testSingleValuedWidget() {
 
     $test_file = $this->getTestFile('text');
 
-    foreach (array('nojs', 'js') as $type) {
+    foreach (['nojs', 'js'] as $type) {
       // Create a new node with the uploaded file and ensure it got uploaded
       // successfully.
       // @todo This only tests a 'nojs' submission, because drupalPostAjaxForm()
       //   does not yet support file uploads.
       $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $node_file = File::load($node->{$field_name}->target_id);
       $this->assertFileExists($node_file, 'New file saved to disk on node creation.');
@@ -104,11 +104,11 @@ function testSingleValuedWidget() {
       // "Click" the remove button (emulating either a nojs or js submission).
       switch ($type) {
         case 'nojs':
-          $this->drupalPostForm(NULL, array(), t('Remove'));
+          $this->drupalPostForm(NULL, [], t('Remove'));
           break;
         case 'js':
           $button = $this->xpath('//input[@type="submit" and @value="' . t('Remove') . '"]');
-          $this->drupalPostAjaxForm(NULL, array(), array((string) $button[0]['name'] => (string) $button[0]['value']));
+          $this->drupalPostAjaxForm(NULL, [], [(string) $button[0]['name'] => (string) $button[0]['value']]);
           break;
       }
 
@@ -121,8 +121,8 @@ function testSingleValuedWidget() {
       $this->assertTrue(isset($label[0]), 'Label for upload found.');
 
       // Save the node and ensure it does not have the file.
-      $this->drupalPostForm(NULL, array(), t('Save and keep published'));
-      $node_storage->resetCache(array($nid));
+      $this->drupalPostForm(NULL, [], t('Save and keep published'));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $this->assertTrue(empty($node->{$field_name}->target_id), 'File was successfully removed from the node.');
     }
@@ -143,12 +143,12 @@ function testMultiValuedWidget() {
     $field_name = 'test_file_field_1';
     $field_name2 = 'test_file_field_2';
     $cardinality = 3;
-    $this->createFileField($field_name, 'node', $type_name, array('cardinality' => $cardinality));
-    $this->createFileField($field_name2, 'node', $type_name, array('cardinality' => $cardinality));
+    $this->createFileField($field_name, 'node', $type_name, ['cardinality' => $cardinality]);
+    $this->createFileField($field_name2, 'node', $type_name, ['cardinality' => $cardinality]);
 
     $test_file = $this->getTestFile('text');
 
-    foreach (array('nojs', 'js') as $type) {
+    foreach (['nojs', 'js'] as $type) {
       // Visit the node creation form, and upload 3 files for each field. Since
       // the field has cardinality of 3, ensure the "Upload" button is displayed
       // until after the 3rd file, and after that, isn't displayed. Because
@@ -158,9 +158,9 @@ function testMultiValuedWidget() {
       //   does not yet emulate jQuery's file upload.
       //
       $this->drupalGet("node/add/$type_name");
-      foreach (array($field_name2, $field_name) as $each_field_name) {
+      foreach ([$field_name2, $field_name] as $each_field_name) {
         for ($delta = 0; $delta < 3; $delta++) {
-          $edit = array('files[' . $each_field_name . '_' . $delta . '][]' => drupal_realpath($test_file->getFileUri()));
+          $edit = ['files[' . $each_field_name . '_' . $delta . '][]' => drupal_realpath($test_file->getFileUri())];
           // If the Upload button doesn't exist, drupalPostForm() will automatically
           // fail with an assertion message.
           $this->drupalPostForm(NULL, $edit, t('Upload'));
@@ -170,7 +170,7 @@ function testMultiValuedWidget() {
 
       $num_expected_remove_buttons = 6;
 
-      foreach (array($field_name, $field_name2) as $current_field_name) {
+      foreach ([$field_name, $field_name2] as $current_field_name) {
         // How many uploaded files for the current field are remaining.
         $remaining = 3;
         // Test clicking each "Remove" button. For extra robustness, test them out
@@ -179,11 +179,11 @@ function testMultiValuedWidget() {
         // - First remove the 2nd file.
         // - Then remove what is then the 2nd file (was originally the 3rd file).
         // - Then remove the first file.
-        foreach (array(1, 1, 0) as $delta) {
+        foreach ([1, 1, 0] as $delta) {
           // Ensure we have the expected number of Remove buttons, and that they
           // are numbered sequentially.
           $buttons = $this->xpath('//input[@type="submit" and @value="Remove"]');
-          $this->assertTrue(is_array($buttons) && count($buttons) === $num_expected_remove_buttons, format_string('There are %n "Remove" buttons displayed (JSMode=%type).', array('%n' => $num_expected_remove_buttons, '%type' => $type)));
+          $this->assertTrue(is_array($buttons) && count($buttons) === $num_expected_remove_buttons, format_string('There are %n "Remove" buttons displayed (JSMode=%type).', ['%n' => $num_expected_remove_buttons, '%type' => $type]));
           foreach ($buttons as $i => $button) {
             $key = $i >= $remaining ? $i - $remaining : $i;
             $check_field_name = $field_name2;
@@ -210,12 +210,12 @@ function testMultiValuedWidget() {
                   $button['value'] = 'DUMMY';
                 }
               }
-              $this->drupalPostForm(NULL, array(), t('Remove'));
+              $this->drupalPostForm(NULL, [], t('Remove'));
               break;
             case 'js':
               // drupalPostAjaxForm() lets us target the button precisely, so we don't
               // require the workaround used above for nojs.
-              $this->drupalPostAjaxForm(NULL, array(), array($button_name => t('Remove')));
+              $this->drupalPostAjaxForm(NULL, [], [$button_name => t('Remove')]);
               break;
           }
           $num_expected_remove_buttons--;
@@ -224,38 +224,38 @@ function testMultiValuedWidget() {
           // Ensure an "Upload" button for the current field is displayed with the
           // correct name.
           $upload_button_name = $current_field_name . '_' . $remaining . '_upload_button';
-          $buttons = $this->xpath('//input[@type="submit" and @value="Upload" and @name=:name]', array(':name' => $upload_button_name));
-          $this->assertTrue(is_array($buttons) && count($buttons) == 1, format_string('The upload button is displayed with the correct name (JSMode=%type).', array('%type' => $type)));
+          $buttons = $this->xpath('//input[@type="submit" and @value="Upload" and @name=:name]', [':name' => $upload_button_name]);
+          $this->assertTrue(is_array($buttons) && count($buttons) == 1, format_string('The upload button is displayed with the correct name (JSMode=%type).', ['%type' => $type]));
 
           // Ensure only at most one button per field is displayed.
           $buttons = $this->xpath('//input[@type="submit" and @value="Upload"]');
           $expected = $current_field_name == $field_name ? 1 : 2;
-          $this->assertTrue(is_array($buttons) && count($buttons) == $expected, format_string('After removing a file, only one "Upload" button for each possible field is displayed (JSMode=%type).', array('%type' => $type)));
+          $this->assertTrue(is_array($buttons) && count($buttons) == $expected, format_string('After removing a file, only one "Upload" button for each possible field is displayed (JSMode=%type).', ['%type' => $type]));
         }
       }
 
       // Ensure the page now has no Remove buttons.
-      $this->assertNoFieldByXPath('//input[@type="submit"]', t('Remove'), format_string('After removing all files, there is no "Remove" button displayed (JSMode=%type).', array('%type' => $type)));
+      $this->assertNoFieldByXPath('//input[@type="submit"]', t('Remove'), format_string('After removing all files, there is no "Remove" button displayed (JSMode=%type).', ['%type' => $type]));
 
       // Save the node and ensure it does not have any files.
-      $this->drupalPostForm(NULL, array('title[0][value]' => $this->randomMachineName()), t('Save and publish'));
-      $matches = array();
+      $this->drupalPostForm(NULL, ['title[0][value]' => $this->randomMachineName()], t('Save and publish'));
+      $matches = [];
       preg_match('/node\/([0-9]+)/', $this->getUrl(), $matches);
       $nid = $matches[1];
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $this->assertTrue(empty($node->{$field_name}->target_id), 'Node was successfully saved without any files.');
     }
 
-    $upload_files_node_creation = array($test_file, $test_file);
+    $upload_files_node_creation = [$test_file, $test_file];
     // Try to upload multiple files, but fewer than the maximum.
     $nid = $this->uploadNodeFiles($upload_files_node_creation, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $this->assertEqual(count($node->{$field_name}), count($upload_files_node_creation), 'Node was successfully saved with mulitple files.');
 
     // Try to upload more files than allowed on revision.
-    $upload_files_node_revision = array($test_file, $test_file, $test_file, $test_file);
+    $upload_files_node_revision = [$test_file, $test_file, $test_file, $test_file];
     $this->uploadNodeFiles($upload_files_node_revision, $field_name, $nid, 1);
     $args = [
       '%field' => $field_name,
@@ -264,7 +264,7 @@ function testMultiValuedWidget() {
       '%list' => implode(', ', array_fill(0, 3, $test_file->getFilename())),
     ];
     $this->assertRaw(t('Field %field can only hold @max values but there were @count uploaded. The following files have been omitted as a result: %list.', $args));
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $this->assertEqual(count($node->{$field_name}), $cardinality, 'More files than allowed could not be saved to node.');
 
@@ -274,14 +274,14 @@ function testMultiValuedWidget() {
       'type' => $type_name
     ]);
     $this->uploadNodeFile($test_file, $field_name, $node->id(), 1);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $this->assertEqual(count($node->{$field_name}), $cardinality, 'Node was successfully revised to maximum number of files.');
 
     // Try to upload exactly the allowed number of files, new node.
     $upload_files = array_fill(0, $cardinality, $test_file);
     $nid = $this->uploadNodeFiles($upload_files, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $this->assertEqual(count($node->{$field_name}), $cardinality, 'Node was successfully saved with maximum number of files.');
 
@@ -304,7 +304,7 @@ function testMultiValuedWidget() {
   function testPrivateFileSetting() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     // Grant the admin user required permissions.
-    user_role_grant_permissions($this->adminUser->roles[0]->target_id, array('administer node fields'));
+    user_role_grant_permissions($this->adminUser->roles[0]->target_id, ['administer node fields']);
 
     $type_name = 'article';
     $field_name = strtolower($this->randomMachineName());
@@ -315,10 +315,10 @@ function testPrivateFileSetting() {
     $test_file = $this->getTestFile('text');
 
     // Change the field setting to make its files private, and upload a file.
-    $edit = array('settings[uri_scheme]' => 'private');
+    $edit = ['settings[uri_scheme]' => 'private'];
     $this->drupalPostForm("admin/structure/types/manage/$type_name/fields/$field_id/storage", $edit, t('Save field settings'));
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
     $this->assertFileExists($node_file, 'New file saved to disk on node creation.');
@@ -342,41 +342,41 @@ function testPrivateFileSetting() {
    * Tests that download restrictions on private files work on comments.
    */
   function testPrivateFileComment() {
-    $user = $this->drupalCreateUser(array('access comments'));
+    $user = $this->drupalCreateUser(['access comments']);
 
     // Grant the admin user required comment permissions.
     $roles = $this->adminUser->getRoles();
-    user_role_grant_permissions($roles[1], array('administer comment fields', 'administer comments'));
+    user_role_grant_permissions($roles[1], ['administer comment fields', 'administer comments']);
 
     // Revoke access comments permission from anon user, grant post to
     // authenticated.
-    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, array('access comments'));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array('post comments', 'skip comment approval'));
+    user_role_revoke_permissions(RoleInterface::ANONYMOUS_ID, ['access comments']);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, ['post comments', 'skip comment approval']);
 
     // Create a new field.
     $this->addDefaultCommentField('node', 'article');
 
     $name = strtolower($this->randomMachineName());
     $label = $this->randomMachineName();
-    $storage_edit = array('settings[uri_scheme]' => 'private');
+    $storage_edit = ['settings[uri_scheme]' => 'private'];
     $this->fieldUIAddNewField('admin/structure/comment/manage/comment', $name, $label, 'file', $storage_edit);
 
     // Manually clear cache on the tester side.
     \Drupal::entityManager()->clearCachedFieldDefinitions();
 
     // Create node.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('node/add/article', $edit, t('Save and publish'));
     $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
 
     // Add a comment with a file.
     $text_file = $this->getTestFile('text');
-    $edit = array(
+    $edit = [
       'files[field_' . $name . '_' . 0 . ']' => drupal_realpath($text_file->getFileUri()),
       'comment_body[0][value]' => $comment_body = $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id(), $edit, t('Save'));
 
     // Get the comment ID.
@@ -402,7 +402,7 @@ function testPrivateFileComment() {
 
     // Unpublishes node.
     $this->drupalLogin($this->adminUser);
-    $this->drupalPostForm('node/' . $node->id() . '/edit', array(), t('Save and unpublish'));
+    $this->drupalPostForm('node/' . $node->id() . '/edit', [], t('Save and unpublish'));
 
     // Ensures normal user can no longer download the file.
     $this->drupalLogin($user);
@@ -417,11 +417,11 @@ function testWidgetValidation() {
     $type_name = 'article';
     $field_name = strtolower($this->randomMachineName());
     $this->createFileField($field_name, 'node', $type_name);
-    $this->updateFileField($field_name, $type_name, array('file_extensions' => 'txt'));
+    $this->updateFileField($field_name, $type_name, ['file_extensions' => 'txt']);
 
-    foreach (array('nojs', 'js') as $type) {
+    foreach (['nojs', 'js'] as $type) {
       // Create node and prepare files for upload.
-      $node = $this->drupalCreateNode(array('type' => 'article'));
+      $node = $this->drupalCreateNode(['type' => 'article']);
       $nid = $node->id();
       $this->drupalGet("node/$nid/edit");
       $test_file_text = $this->getTestFile('text');
@@ -436,11 +436,11 @@ function testWidgetValidation() {
           break;
         case 'js':
           $button = $this->xpath('//input[@type="submit" and @value="' . t('Upload') . '"]');
-          $this->drupalPostAjaxForm(NULL, $edit, array((string) $button[0]['name'] => (string) $button[0]['value']));
+          $this->drupalPostAjaxForm(NULL, $edit, [(string) $button[0]['name'] => (string) $button[0]['value']]);
           break;
       }
-      $error_message = t('Only files with the following extensions are allowed: %files-allowed.', array('%files-allowed' => 'txt'));
-      $this->assertRaw($error_message, t('Validation error when file with wrong extension uploaded (JSMode=%type).', array('%type' => $type)));
+      $error_message = t('Only files with the following extensions are allowed: %files-allowed.', ['%files-allowed' => 'txt']);
+      $this->assertRaw($error_message, t('Validation error when file with wrong extension uploaded (JSMode=%type).', ['%type' => $type]));
 
       // Upload file with correct extension, check that error message is removed.
       $edit[$name] = drupal_realpath($test_file_text->getFileUri());
@@ -450,10 +450,10 @@ function testWidgetValidation() {
           break;
         case 'js':
           $button = $this->xpath('//input[@type="submit" and @value="' . t('Upload') . '"]');
-          $this->drupalPostAjaxForm(NULL, $edit, array((string) $button[0]['name'] => (string) $button[0]['value']));
+          $this->drupalPostAjaxForm(NULL, $edit, [(string) $button[0]['name'] => (string) $button[0]['value']]);
           break;
       }
-      $this->assertNoRaw($error_message, t('Validation error removed when file with correct extension uploaded (JSMode=%type).', array('%type' => $type)));
+      $this->assertNoRaw($error_message, t('Validation error removed when file with correct extension uploaded (JSMode=%type).', ['%type' => $type]));
     }
   }
 
@@ -498,11 +498,11 @@ public function testTemporaryFileRemovalExploit() {
     $victim_user = $this->drupalCreateUser();
 
     // Create an attacker user.
-    $attacker_user = $this->drupalCreateUser(array(
+    $attacker_user = $this->drupalCreateUser([
       'access content',
       'create article content',
       'edit any article content',
-    ));
+    ]);
 
     // Log in as the attacker user.
     $this->drupalLogin($attacker_user);
@@ -522,11 +522,11 @@ public function testTemporaryFileRemovalExploitAnonymous() {
     $attacker_user = User::getAnonymousUser();
 
     // Set up permissions for anonymous attacker user.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access content' => TRUE,
       'create article content' => TRUE,
       'edit any article content' => TRUE,
-    ));
+    ]);
 
     // Log out so as to be the anonymous attacker user.
     $this->drupalLogout();
@@ -549,7 +549,7 @@ protected function doTestTemporaryFileRemovalExploit(UserInterface $victim_user,
     $this->createFileField($field_name, 'node', $type_name);
 
     $test_file = $this->getTestFile('text');
-    foreach (array('nojs', 'js') as $type) {
+    foreach (['nojs', 'js'] as $type) {
       // Create a temporary file owned by the victim user. This will be as if
       // they had uploaded the file, but not saved the node they were editing
       // or creating.
@@ -567,7 +567,7 @@ protected function doTestTemporaryFileRemovalExploit(UserInterface $victim_user,
 
       // Attach a file to a node.
       $edit['files[' . $field_name . '_0]'] = $this->container->get('file_system')->realpath($test_file->getFileUri());
-      $this->drupalPostForm(Url::fromRoute('node.add', array('node_type' => $type_name)), $edit, t('Save'));
+      $this->drupalPostForm(Url::fromRoute('node.add', ['node_type' => $type_name]), $edit, t('Save'));
       $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
 
       /** @var \Drupal\file\FileInterface $node_file */
diff --git a/core/modules/file/src/Tests/FileListingTest.php b/core/modules/file/src/Tests/FileListingTest.php
index 708f138..e163529 100644
--- a/core/modules/file/src/Tests/FileListingTest.php
+++ b/core/modules/file/src/Tests/FileListingTest.php
@@ -18,7 +18,7 @@ class FileListingTest extends FileFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'file', 'image', 'entity_test');
+  public static $modules = ['views', 'file', 'image', 'entity_test'];
 
   /**
    * An authenticated user.
@@ -30,9 +30,9 @@ class FileListingTest extends FileFieldTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('access files overview', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['access files overview', 'bypass node access']);
     $this->baseUser = $this->drupalCreateUser();
-    $this->createFileField('file', 'node', 'article', array(), array('file_extensions' => 'txt png'));
+    $this->createFileField('file', 'node', 'article', [], ['file_extensions' => 'txt png']);
   }
 
   /**
@@ -70,7 +70,7 @@ function testFileListingPages() {
     $this->drupalLogin($this->adminUser);
 
     for ($i = 0; $i < 5; $i++) {
-      $nodes[] = $this->drupalCreateNode(array('type' => 'article'));
+      $nodes[] = $this->drupalCreateNode(['type' => 'article']);
     }
 
     $this->drupalGet('admin/content/files');
@@ -84,15 +84,15 @@ function testFileListingPages() {
 
     $this->drupalGet('admin/content/files/usage/' . $file->id());
     $this->assertResponse(200);
-    $this->assertTitle(t('File usage information for @file | Drupal', array('@file' => $file->getFilename())));
+    $this->assertTitle(t('File usage information for @file | Drupal', ['@file' => $file->getFilename()]));
 
     foreach ($nodes as &$node) {
       $this->drupalGet('node/' . $node->id() . '/edit');
       $file = $this->getTestFile('image');
 
-      $edit = array(
+      $edit = [
         'files[file_0]' => drupal_realpath($file->getFileUri()),
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save'));
       $node = Node::load($node->id());
     }
@@ -122,7 +122,7 @@ function testFileListingPages() {
     $usage = $this->sumUsages($file_usage->listUsage($file));
     $this->assertRaw('admin/content/files/usage/' . $file->id() . '">' . $usage);
 
-    $result = $this->xpath("//td[contains(@class, 'views-field-status') and contains(text(), :value)]", array(':value' => t('Temporary')));
+    $result = $this->xpath("//td[contains(@class, 'views-field-status') and contains(text(), :value)]", [':value' => t('Temporary')]);
     $this->assertEqual(1, count($result), 'Unused file marked as temporary.');
 
     // Test file usage page.
@@ -155,7 +155,7 @@ function testFileListingUsageNoLink() {
     // Create a bundle and attach a File field to the bundle.
     $bundle = $this->randomMachineName();
     entity_test_create_bundle($bundle, NULL, 'entity_test_constraints');
-    $this->createFileField('field_test_file', 'entity_test_constraints', $bundle, array(), array('file_extensions' => 'txt png'));
+    $this->createFileField('field_test_file', 'entity_test_constraints', $bundle, [], ['file_extensions' => 'txt png']);
 
     // Create file to attach to entity.
     $file = File::create([
@@ -169,18 +169,18 @@ function testFileListingUsageNoLink() {
 
     // Create entity and attach the created file.
     $entity_name = $this->randomMachineName();
-    $entity = EntityTestConstraints::create(array(
+    $entity = EntityTestConstraints::create([
       'uid' => 1,
       'name' => $entity_name,
       'type' => $bundle,
-      'field_test_file' => array(
+      'field_test_file' => [
         'target_id' => $file->id(),
-      ),
-    ));
+      ],
+    ]);
     $entity->save();
 
     // Create node entity and attach the created file.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'file' => $file));
+    $node = $this->drupalCreateNode(['type' => 'article', 'file' => $file]);
     $node->save();
 
     // Load the file usage page for the created and attached file.
diff --git a/core/modules/file/src/Tests/FileManagedFileElementTest.php b/core/modules/file/src/Tests/FileManagedFileElementTest.php
index 07102a0..994803e 100644
--- a/core/modules/file/src/Tests/FileManagedFileElementTest.php
+++ b/core/modules/file/src/Tests/FileManagedFileElementTest.php
@@ -21,16 +21,16 @@ function testManagedFile() {
     // Perform the tests with all permutations of $form['#tree'],
     // $element['#extended'], and $element['#multiple'].
     $test_file = $this->getTestFile('text');
-    foreach (array(0, 1) as $tree) {
-      foreach (array(0, 1) as $extended) {
-        foreach (array(0, 1) as $multiple) {
+    foreach ([0, 1] as $tree) {
+      foreach ([0, 1] as $extended) {
+        foreach ([0, 1] as $multiple) {
           $path = 'file/test/' . $tree . '/' . $extended . '/' . $multiple;
           $input_base_name = $tree ? 'nested_file' : 'file';
           $file_field_name = $multiple ? 'files[' . $input_base_name . '][]' : 'files[' . $input_base_name . ']';
 
           // Submit without a file.
-          $this->drupalPostForm($path, array(), t('Save'));
-          $this->assertRaw(t('The file ids are %fids.', array('%fids' => implode(',', array()))), 'Submitted without a file.');
+          $this->drupalPostForm($path, [], t('Save'));
+          $this->assertRaw(t('The file ids are %fids.', ['%fids' => implode(',', [])]), 'Submitted without a file.');
 
           // Submit with a file, but with an invalid form token. Ensure the file
           // was not saved.
@@ -46,22 +46,22 @@ function testManagedFile() {
 
           // Submit a new file, without using the Upload button.
           $last_fid_prior = $this->getLastFileId();
-          $edit = array($file_field_name => drupal_realpath($test_file->getFileUri()));
+          $edit = [$file_field_name => drupal_realpath($test_file->getFileUri())];
           $this->drupalPostForm($path, $edit, t('Save'));
           $last_fid = $this->getLastFileId();
           $this->assertTrue($last_fid > $last_fid_prior, 'New file got saved.');
-          $this->assertRaw(t('The file ids are %fids.', array('%fids' => implode(',', array($last_fid)))), 'Submit handler has correct file info.');
+          $this->assertRaw(t('The file ids are %fids.', ['%fids' => implode(',', [$last_fid])]), 'Submit handler has correct file info.');
 
           // Submit no new input, but with a default file.
-          $this->drupalPostForm($path . '/' . $last_fid, array(), t('Save'));
-          $this->assertRaw(t('The file ids are %fids.', array('%fids' => implode(',', array($last_fid)))), 'Empty submission did not change an existing file.');
+          $this->drupalPostForm($path . '/' . $last_fid, [], t('Save'));
+          $this->assertRaw(t('The file ids are %fids.', ['%fids' => implode(',', [$last_fid])]), 'Empty submission did not change an existing file.');
 
           // Now, test the Upload and Remove buttons, with and without Ajax.
-          foreach (array(FALSE, TRUE) as $ajax) {
+          foreach ([FALSE, TRUE] as $ajax) {
             // Upload, then Submit.
             $last_fid_prior = $this->getLastFileId();
             $this->drupalGet($path);
-            $edit = array($file_field_name => drupal_realpath($test_file->getFileUri()));
+            $edit = [$file_field_name => drupal_realpath($test_file->getFileUri())];
             if ($ajax) {
               $this->drupalPostAjaxForm(NULL, $edit, $input_base_name . '_upload_button');
             }
@@ -70,15 +70,15 @@ function testManagedFile() {
             }
             $last_fid = $this->getLastFileId();
             $this->assertTrue($last_fid > $last_fid_prior, 'New file got uploaded.');
-            $this->drupalPostForm(NULL, array(), t('Save'));
-            $this->assertRaw(t('The file ids are %fids.', array('%fids' => implode(',', array($last_fid)))), 'Submit handler has correct file info.');
+            $this->drupalPostForm(NULL, [], t('Save'));
+            $this->assertRaw(t('The file ids are %fids.', ['%fids' => implode(',', [$last_fid])]), 'Submit handler has correct file info.');
 
             // Remove, then Submit.
             $remove_button_title = $multiple ? t('Remove selected') : t('Remove');
-            $remove_edit = array();
+            $remove_edit = [];
             if ($multiple) {
               $selected_checkbox = ($tree ? 'nested[file]' : 'file') . '[file_' . $last_fid . '][selected]';
-              $remove_edit = array($selected_checkbox => '1');
+              $remove_edit = [$selected_checkbox => '1'];
             }
             $this->drupalGet($path . '/' . $last_fid);
             if ($ajax) {
@@ -87,22 +87,22 @@ function testManagedFile() {
             else {
               $this->drupalPostForm(NULL, $remove_edit, $remove_button_title);
             }
-            $this->drupalPostForm(NULL, array(), t('Save'));
-            $this->assertRaw(t('The file ids are %fids.', array('%fids' => '')), 'Submission after file removal was successful.');
+            $this->drupalPostForm(NULL, [], t('Save'));
+            $this->assertRaw(t('The file ids are %fids.', ['%fids' => '']), 'Submission after file removal was successful.');
 
             // Upload, then Remove, then Submit.
             $this->drupalGet($path);
-            $edit = array($file_field_name => drupal_realpath($test_file->getFileUri()));
+            $edit = [$file_field_name => drupal_realpath($test_file->getFileUri())];
             if ($ajax) {
               $this->drupalPostAjaxForm(NULL, $edit, $input_base_name . '_upload_button');
             }
             else {
               $this->drupalPostForm(NULL, $edit, t('Upload'));
             }
-            $remove_edit = array();
+            $remove_edit = [];
             if ($multiple) {
               $selected_checkbox = ($tree ? 'nested[file]' : 'file') . '[file_' . $this->getLastFileId() . '][selected]';
-              $remove_edit = array($selected_checkbox => '1');
+              $remove_edit = [$selected_checkbox => '1'];
             }
             if ($ajax) {
               $this->drupalPostAjaxForm(NULL, $remove_edit, $input_base_name . '_remove_button');
@@ -111,8 +111,8 @@ function testManagedFile() {
               $this->drupalPostForm(NULL, $remove_edit, $remove_button_title);
             }
 
-            $this->drupalPostForm(NULL, array(), t('Save'));
-            $this->assertRaw(t('The file ids are %fids.', array('%fids' => '')), 'Submission after file upload and removal was successful.');
+            $this->drupalPostForm(NULL, [], t('Save'));
+            $this->assertRaw(t('The file ids are %fids.', ['%fids' => '']), 'Submission after file upload and removal was successful.');
           }
         }
       }
@@ -120,8 +120,8 @@ function testManagedFile() {
 
     // The multiple file upload has additional conditions that need checking.
     $path = 'file/test/1/1/1';
-    $edit = array('files[nested_file][]' => drupal_realpath($test_file->getFileUri()));
-    $fid_list = array();
+    $edit = ['files[nested_file][]' => drupal_realpath($test_file->getFileUri())];
+    $fid_list = [];
 
     $this->drupalGet($path);
 
@@ -136,13 +136,13 @@ function testManagedFile() {
     $this->assertFieldByXpath('//input[@name="nested[file][file_' . $fid_list[1] . '][selected]"]', NULL, 'Second file successfully uploaded to multiple file element.');
 
     // Save the entire form.
-    $this->drupalPostForm(NULL, array(), t('Save'));
-    $this->assertRaw(t('The file ids are %fids.', array('%fids' => implode(',', $fid_list))), 'Two files saved into a single multiple file element.');
+    $this->drupalPostForm(NULL, [], t('Save'));
+    $this->assertRaw(t('The file ids are %fids.', ['%fids' => implode(',', $fid_list)]), 'Two files saved into a single multiple file element.');
 
     // Delete only the first file.
-    $edit = array(
+    $edit = [
       'nested[file][file_' . $fid_list[0] . '][selected]' => '1',
-    );
+    ];
     $this->drupalPostForm($path . '/' . implode(',', $fid_list), $edit, t('Remove selected'));
 
     // Check that the first file has been deleted but not the second.
@@ -181,7 +181,7 @@ public function testFileRemovedFromDisk() {
 
     $edit = [$file_field_name => drupal_realpath($test_file->getFileUri())];
     $this->drupalPostForm(NULL, $edit, t('Upload'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $fid = $this->getLastFileId();
     /** @var $file \Drupal\file\FileInterface */
diff --git a/core/modules/file/src/Tests/FileManagedTestBase.php b/core/modules/file/src/Tests/FileManagedTestBase.php
index 711d8a4..8bd85bd 100644
--- a/core/modules/file/src/Tests/FileManagedTestBase.php
+++ b/core/modules/file/src/Tests/FileManagedTestBase.php
@@ -20,7 +20,7 @@
    *
    * @var array
    */
-  public static $modules = array('file_test', 'file');
+  public static $modules = ['file_test', 'file'];
 
   protected function setUp() {
     parent::setUp();
@@ -45,16 +45,16 @@ function assertFileHooksCalled($expected) {
     // Determine if there were any expected that were not called.
     $uncalled = array_diff($expected, $actual);
     if (count($uncalled)) {
-      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', array('%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled))));
+      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', ['%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled)]));
     }
     else {
-      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', array('%expected' => empty($expected) ? '(none)' : implode(', ', $expected))));
+      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', ['%expected' => empty($expected) ? '(none)' : implode(', ', $expected)]));
     }
 
     // Determine if there were any unexpected calls.
     $unexpected = array_diff($actual, $expected);
     if (count($unexpected)) {
-      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', array('%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected))));
+      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', ['%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected)]));
     }
     else {
       $this->assertTrue(TRUE, 'No unexpected hooks were called.');
@@ -76,13 +76,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
 
     if (!isset($message)) {
       if ($actual_count == $expected_count) {
-        $message = format_string('hook_file_@name was called correctly.', array('@name' => $hook));
+        $message = format_string('hook_file_@name was called correctly.', ['@name' => $hook]);
       }
       elseif ($expected_count == 0) {
-        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', array('@name' => $hook, '@count' => $actual_count));
+        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', ['@name' => $hook, '@count' => $actual_count]);
       }
       else {
-        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', array('@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count));
+        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', ['@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count]);
       }
     }
     $this->assertEqual($actual_count, $expected_count, $message);
@@ -97,13 +97,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
    *   File object to compare.
    */
   function assertFileUnchanged(FileInterface $before, FileInterface $after) {
-    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', array('%file1' => $before->id(), '%file2' => $after->id())), 'File unchanged');
-    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', array('%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id())), 'File unchanged');
-    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', array('%file1' => $before->getFilename(), '%file2' => $after->getFilename())), 'File unchanged');
-    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', array('%file1' => $before->getFileUri(), '%file2' => $after->getFileUri())), 'File unchanged');
-    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', array('%file1' => $before->getMimeType(), '%file2' => $after->getMimeType())), 'File unchanged');
-    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', array('%file1' => $before->getSize(), '%file2' => $after->getSize())), 'File unchanged');
-    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', array('%file1' => $before->isPermanent(), '%file2' => $after->isPermanent())), 'File unchanged');
+    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', ['%file1' => $before->id(), '%file2' => $after->id()]), 'File unchanged');
+    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', ['%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id()]), 'File unchanged');
+    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', ['%file1' => $before->getFilename(), '%file2' => $after->getFilename()]), 'File unchanged');
+    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', ['%file1' => $before->getFileUri(), '%file2' => $after->getFileUri()]), 'File unchanged');
+    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', ['%file1' => $before->getMimeType(), '%file2' => $after->getMimeType()]), 'File unchanged');
+    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', ['%file1' => $before->getSize(), '%file2' => $after->getSize()]), 'File unchanged');
+    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', ['%file1' => $before->isPermanent(), '%file2' => $after->isPermanent()]), 'File unchanged');
   }
 
   /**
@@ -115,8 +115,8 @@ function assertFileUnchanged(FileInterface $before, FileInterface $after) {
    *   File object to compare.
    */
   function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', array('%file1' => $file1->id(), '%file2' => $file2->id())), 'Different file');
-    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Different file');
+    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', ['%file1' => $file1->id(), '%file2' => $file2->id()]), 'Different file');
+    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Different file');
   }
 
   /**
@@ -128,8 +128,8 @@ function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
    *   File object to compare.
    */
   function assertSameFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', array('%file1' => $file1->id(), '%file2-fid' => $file2->id())), 'Same file');
-    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Same file');
+    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', ['%file1' => $file1->id(), '%file2-fid' => $file2->id()]), 'Same file');
+    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Same file');
   }
 
   /**
diff --git a/core/modules/file/src/Tests/FileOnTranslatedEntityTest.php b/core/modules/file/src/Tests/FileOnTranslatedEntityTest.php
index 7987bcf..5f1e707 100644
--- a/core/modules/file/src/Tests/FileOnTranslatedEntityTest.php
+++ b/core/modules/file/src/Tests/FileOnTranslatedEntityTest.php
@@ -14,7 +14,7 @@ class FileOnTranslatedEntityTest extends FileFieldTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language', 'content_translation');
+  public static $modules = ['language', 'content_translation'];
 
   /**
    * The name of the file field used in the test.
@@ -39,7 +39,7 @@ protected function setUp() {
     $this->createFileField($this->fieldName, 'node', 'page');
 
     // Create and log in user.
-    $permissions = array(
+    $permissions = [
       'access administration pages',
       'administer content translation',
       'administer content types',
@@ -49,25 +49,25 @@ protected function setUp() {
       'edit any page content',
       'translate any entity',
       'delete any page content',
-    );
+    ];
     $admin_user = $this->drupalCreateUser($permissions);
     $this->drupalLogin($admin_user);
 
     // Add a second and third language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'nl';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable translation for "Basic page" nodes.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => 1,
       'settings[node][page][translatable]' => 1,
       "settings[node][page][fields][$this->fieldName]" => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     \Drupal::entityManager()->clearCachedDefinitions();
   }
@@ -81,20 +81,20 @@ public function testSyncedFiles() {
     $this->assertTrue($definitions[$this->fieldName]->isTranslatable(), 'Node file field is translatable.');
 
     // Create a default language node.
-    $default_language_node = $this->drupalCreateNode(array('type' => 'page', 'title' => 'Lost in translation'));
+    $default_language_node = $this->drupalCreateNode(['type' => 'page', 'title' => 'Lost in translation']);
 
     // Edit the node to upload a file.
-    $edit = array();
+    $edit = [];
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[0]->uri);
     $this->drupalPostForm('node/' . $default_language_node->id() . '/edit', $edit, t('Save'));
     $first_fid = $this->getLastFileId();
 
     // Translate the node into French: remove the existing file.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/fr', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/fr', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'Bill Murray';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[1]->uri);
@@ -117,10 +117,10 @@ public function testSyncedFiles() {
     $this->assertTrue($file->isPermanent());
 
     // Translate the node into dutch: remove the existing file.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/nl', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/nl', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'Scarlett Johansson';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[2]->uri);
@@ -145,10 +145,10 @@ public function testSyncedFiles() {
     $this->assertTrue($file->isPermanent());
 
     // Edit the second translation: remove the existing file.
-    $this->drupalPostForm('fr/node/' . $default_language_node->id() . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('fr/node/' . $default_language_node->id() . '/edit', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'David Bowie';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[3]->uri);
@@ -169,7 +169,7 @@ public function testSyncedFiles() {
     $this->assertTrue($file->isPermanent());
 
     // Delete the third translation.
-    $this->drupalPostForm('nl/node/' . $default_language_node->id() . '/delete', array(), t('Delete Dutch translation'));
+    $this->drupalPostForm('nl/node/' . $default_language_node->id() . '/delete', [], t('Delete Dutch translation'));
 
     \Drupal::entityTypeManager()->getStorage('file')->resetCache();
 
@@ -185,7 +185,7 @@ public function testSyncedFiles() {
     $this->assertTrue($file->isTemporary());
 
     // Delete the all translations.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/delete', array(), t('Delete all translations'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/delete', [], t('Delete all translations'));
 
     \Drupal::entityTypeManager()->getStorage('file')->resetCache();
 
diff --git a/core/modules/file/src/Tests/FilePrivateTest.php b/core/modules/file/src/Tests/FilePrivateTest.php
index 2705ef2..9ed4a9e 100644
--- a/core/modules/file/src/Tests/FilePrivateTest.php
+++ b/core/modules/file/src/Tests/FilePrivateTest.php
@@ -19,7 +19,7 @@ class FilePrivateTest extends FileFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test', 'field_test');
+  public static $modules = ['node_access_test', 'field_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -35,11 +35,11 @@ function testPrivateFile() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $type_name = 'article';
     $field_name = strtolower($this->randomMachineName());
-    $this->createFileField($field_name, 'node', $type_name, array('uri_scheme' => 'private'));
+    $this->createFileField($field_name, 'node', $type_name, ['uri_scheme' => 'private']);
 
     $test_file = $this->getTestFile('text');
-    $nid = $this->uploadNodeFile($test_file, $field_name, $type_name, TRUE, array('private' => TRUE));
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($nid));
+    $nid = $this->uploadNodeFile($test_file, $field_name, $type_name, TRUE, ['private' => TRUE]);
+    \Drupal::entityManager()->getStorage('node')->resetCache([$nid]);
     /* @var \Drupal\node\NodeInterface $node */
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$field_name}->target_id);
@@ -56,11 +56,11 @@ function testPrivateFile() {
     // Create a field with no view access. See
     // field_test_entity_field_access().
     $no_access_field_name = 'field_no_view_access';
-    $this->createFileField($no_access_field_name, 'node', $type_name, array('uri_scheme' => 'private'));
+    $this->createFileField($no_access_field_name, 'node', $type_name, ['uri_scheme' => 'private']);
     // Test with the field that should deny access through field access.
     $this->drupalLogin($this->adminUser);
-    $nid = $this->uploadNodeFile($test_file, $no_access_field_name, $type_name, TRUE, array('private' => TRUE));
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($nid));
+    $nid = $this->uploadNodeFile($test_file, $no_access_field_name, $type_name, TRUE, ['private' => TRUE]);
+    \Drupal::entityManager()->getStorage('node')->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $node_file = File::load($node->{$no_access_field_name}->target_id);
 
@@ -70,7 +70,7 @@ function testPrivateFile() {
     $this->assertResponse(403, 'Confirmed that access is denied for the file without view field access permission.');
 
     // Attempt to reuse the file when editing a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish'));
     $new_node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
@@ -80,17 +80,17 @@ function testPrivateFile() {
     $this->assertUrl('node/' . $new_node->id() . '/edit');
     // Check that we got the expected constraint form error.
     $constraint = new ReferenceAccessConstraint();
-    $this->assertRaw(SafeMarkup::format($constraint->message, array('%type' => 'file', '%id' => $node_file->id())));
+    $this->assertRaw(SafeMarkup::format($constraint->message, ['%type' => 'file', '%id' => $node_file->id()]));
     // Attempt to reuse the existing file when creating a new node, and confirm
     // that access is still denied.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit[$field_name . '[0][fids]'] = $node_file->id();
     $this->drupalPostForm('node/add/' . $type_name, $edit, t('Save and publish'));
     $new_node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
     $this->assertTrue(empty($new_node), 'Node was not created.');
     $this->assertUrl('node/add/' . $type_name);
-    $this->assertRaw(SafeMarkup::format($constraint->message, array('%type' => 'file', '%id' => $node_file->id())));
+    $this->assertRaw(SafeMarkup::format($constraint->message, ['%type' => 'file', '%id' => $node_file->id()]));
 
     // Now make file_test_file_download() return everything.
     \Drupal::state()->set('file_test.allow_all', TRUE);
diff --git a/core/modules/file/src/Tests/FileTokenReplaceTest.php b/core/modules/file/src/Tests/FileTokenReplaceTest.php
index dfb9e51..143ded4 100644
--- a/core/modules/file/src/Tests/FileTokenReplaceTest.php
+++ b/core/modules/file/src/Tests/FileTokenReplaceTest.php
@@ -35,12 +35,12 @@ function testFileTokenReplacement() {
     $nid = $this->uploadNodeFile($test_file, $field_name, $type_name);
 
     // Load the node and the file.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $file = File::load($node->{$field_name}->target_id);
 
     // Generate and test sanitized tokens.
-    $tests = array();
+    $tests = [];
     $tests['[file:fid]'] = $file->id();
     $tests['[file:name]'] = Html::escape($file->getFilename());
     $tests['[file:path]'] = Html::escape($file->getFileUri());
@@ -77,8 +77,8 @@ function testFileTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_service->replace($input, array('file' => $file), array('langcode' => $language_interface->getId()), $bubbleable_metadata);
-      $this->assertEqual($output, $expected, format_string('Sanitized file token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['file' => $file], ['langcode' => $language_interface->getId()], $bubbleable_metadata);
+      $this->assertEqual($output, $expected, format_string('Sanitized file token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
 
@@ -89,8 +89,8 @@ function testFileTokenReplacement() {
     $tests['[file:size]'] = format_size($file->getSize());
 
     foreach ($tests as $input => $expected) {
-      $output = $token_service->replace($input, array('file' => $file), array('langcode' => $language_interface->getId(), 'sanitize' => FALSE));
-      $this->assertEqual($output, $expected, format_string('Unsanitized file token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['file' => $file], ['langcode' => $language_interface->getId(), 'sanitize' => FALSE]);
+      $this->assertEqual($output, $expected, format_string('Unsanitized file token %token replaced.', ['%token' => $input]));
     }
   }
 
diff --git a/core/modules/file/src/Tests/PrivateFileOnTranslatedEntityTest.php b/core/modules/file/src/Tests/PrivateFileOnTranslatedEntityTest.php
index 15039ed..da5abb5 100644
--- a/core/modules/file/src/Tests/PrivateFileOnTranslatedEntityTest.php
+++ b/core/modules/file/src/Tests/PrivateFileOnTranslatedEntityTest.php
@@ -15,7 +15,7 @@ class PrivateFileOnTranslatedEntityTest extends FileFieldTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language', 'content_translation');
+  public static $modules = ['language', 'content_translation'];
 
   /**
    * The name of the file field used in the test.
@@ -31,14 +31,14 @@ protected function setUp() {
     parent::setUp();
 
     // Create the "Basic page" node type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     // Create a file field on the "Basic page" node type.
     $this->fieldName = strtolower($this->randomMachineName());
-    $this->createFileField($this->fieldName, 'node', 'page', array('uri_scheme' => 'private'));
+    $this->createFileField($this->fieldName, 'node', 'page', ['uri_scheme' => 'private']);
 
     // Create and log in user.
-    $permissions = array(
+    $permissions = [
       'access administration pages',
       'administer content translation',
       'administer content types',
@@ -47,21 +47,21 @@ protected function setUp() {
       'create page content',
       'edit any page content',
       'translate any entity',
-    );
+    ];
     $admin_user = $this->drupalCreateUser($permissions);
     $this->drupalLogin($admin_user);
 
     // Add a second language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable translation for "Basic page" nodes.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => 1,
       'settings[node][page][translatable]' => 1,
       "settings[node][page][fields][$this->fieldName]" => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     \Drupal::entityManager()->clearCachedDefinitions();
   }
@@ -75,10 +75,10 @@ public function testPrivateLanguageFile() {
     $this->assertTrue($definitions[$this->fieldName]->isTranslatable(), 'Node file field is translatable.');
 
     // Create a default language node.
-    $default_language_node = $this->drupalCreateNode(array('type' => 'page'));
+    $default_language_node = $this->drupalCreateNode(['type' => 'page']);
 
     // Edit the node to upload a file.
-    $edit = array();
+    $edit = [];
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[0]->uri);
     $this->drupalPostForm('node/' . $default_language_node->id() . '/edit', $edit, t('Save'));
@@ -88,7 +88,7 @@ public function testPrivateLanguageFile() {
     $this->rebuildContainer();
 
     // Ensure the file can be downloaded.
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($default_language_node->id()));
+    \Drupal::entityManager()->getStorage('node')->resetCache([$default_language_node->id()]);
     $node = Node::load($default_language_node->id());
     $node_file = File::load($node->{$this->fieldName}->target_id);
     $this->drupalGet(file_create_url($node_file->getFileUri()));
@@ -99,10 +99,10 @@ public function testPrivateLanguageFile() {
     $this->clickLink(t('Add'));
 
     // Remove the existing file.
-    $this->drupalPostForm(NULL, array(), t('Remove'));
+    $this->drupalPostForm(NULL, [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('text')[1]->uri);
@@ -110,7 +110,7 @@ public function testPrivateLanguageFile() {
     $last_fid = $this->getLastFileId();
 
     // Verify the translation was created.
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($default_language_node->id()));
+    \Drupal::entityManager()->getStorage('node')->resetCache([$default_language_node->id()]);
     $default_language_node = Node::load($default_language_node->id());
     $this->assertTrue($default_language_node->hasTranslation('fr'), 'Node found in database.');
     $this->assertTrue($last_fid > $last_fid_prior, 'New file got saved.');
diff --git a/core/modules/file/src/Tests/RemoteFileSaveUploadTest.php b/core/modules/file/src/Tests/RemoteFileSaveUploadTest.php
index b1ee6a6..d468ed3 100644
--- a/core/modules/file/src/Tests/RemoteFileSaveUploadTest.php
+++ b/core/modules/file/src/Tests/RemoteFileSaveUploadTest.php
@@ -14,7 +14,7 @@ class RemoteFileSaveUploadTest extends SaveUploadTest {
    *
    * @var array
    */
-  public static $modules = array('file_test');
+  public static $modules = ['file_test'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/file/src/Tests/SaveUploadTest.php b/core/modules/file/src/Tests/SaveUploadTest.php
index 3aaa5cf..1407173 100644
--- a/core/modules/file/src/Tests/SaveUploadTest.php
+++ b/core/modules/file/src/Tests/SaveUploadTest.php
@@ -15,7 +15,7 @@ class SaveUploadTest extends FileManagedTestBase {
    *
    * @var array
    */
-  public static $modules = array('dblog');
+  public static $modules = ['dblog'];
 
   /**
    * An image file path for uploading.
@@ -43,7 +43,7 @@ class SaveUploadTest extends FileManagedTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $account = $this->drupalCreateUser(array('access site reports'));
+    $account = $this->drupalCreateUser(['access site reports']);
     $this->drupalLogin($account);
 
     $image_files = $this->drupalGetTestFiles('image');
@@ -58,17 +58,17 @@ protected function setUp() {
     $this->maxFidBefore = db_query('SELECT MAX(fid) AS fid FROM {file_managed}')->fetchField();
 
     // Upload with replace to guarantee there's something there.
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called then clean out the hook
     // counters.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
     file_test_reset();
   }
 
@@ -88,14 +88,14 @@ function testNormal() {
 
     // Upload a second file.
     $image2 = current($this->drupalGetTestFiles('image'));
-    $edit = array('files[file_test_upload]' => drupal_realpath($image2->uri));
+    $edit = ['files[file_test_upload]' => drupal_realpath($image2->uri)];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('You WIN!'));
     $max_fid_after = db_query('SELECT MAX(fid) AS fid FROM {file_managed}')->fetchField();
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
 
     $file2 = File::load($max_fid_after);
     $this->assertTrue($file2, 'Loaded the file');
@@ -103,7 +103,7 @@ function testNormal() {
     $this->assertEqual(substr($file2->getMimeType(), 0, 5), 'image', 'A MIME type was set.');
 
     // Load both files using File::loadMultiple().
-    $files = File::loadMultiple(array($file1->id(), $file2->id()));
+    $files = File::loadMultiple([$file1->id(), $file2->id()]);
     $this->assertTrue(isset($files[$file1->id()]), 'File was loaded successfully');
     $this->assertTrue(isset($files[$file2->id()]), 'File was loaded successfully');
 
@@ -111,10 +111,10 @@ function testNormal() {
     $image3 = current($this->drupalGetTestFiles('image'));
     $image3_realpath = drupal_realpath($image3->uri);
     $dir = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'files[file_test_upload]' => $image3_realpath,
       'file_subdir' => $dir,
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('You WIN!'));
@@ -130,11 +130,11 @@ function testHandleExtension() {
     // implicitly tested at the testNormal() test. Here we tell
     // file_save_upload() to only allow ".foo".
     $extensions = 'foo';
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
       'extensions' => $extensions,
-    );
+    ];
 
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
@@ -143,18 +143,18 @@ function testHandleExtension() {
     $this->assertRaw(t('Epic upload FAIL!'), 'Found the failure message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate'));
+    $this->assertFileHooksCalled(['validate']);
 
     // Reset the hook counters.
     file_test_reset();
 
     $extensions = 'foo ' . $this->imageExtension;
     // Now tell file_save_upload() to allow the extension of our test image.
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
       'extensions' => $extensions,
-    );
+    ];
 
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
@@ -162,24 +162,24 @@ function testHandleExtension() {
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'load', 'update'));
+    $this->assertFileHooksCalled(['validate', 'load', 'update']);
 
     // Reset the hook counters.
     file_test_reset();
 
     // Now tell file_save_upload() to allow any extension.
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
       'allow_all_extensions' => TRUE,
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertNoRaw(t('Only files with the following extensions are allowed:'), 'Can upload any extension.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'load', 'update'));
+    $this->assertFileHooksCalled(['validate', 'load', 'update']);
   }
 
   /**
@@ -189,12 +189,12 @@ function testHandleDangerousFile() {
     $config = $this->config('system.file');
     // Allow the .php extension and make sure it gets renamed to .txt for
     // safety. Also check to make sure its MIME type was changed.
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->phpfile->uri),
       'is_image_file' => FALSE,
       'extensions' => 'php',
-    );
+    ];
 
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
@@ -204,7 +204,7 @@ function testHandleDangerousFile() {
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
 
     // Ensure dangerous files are not renamed when insecure uploads is TRUE.
     // Turn on insecure uploads.
@@ -215,11 +215,11 @@ function testHandleDangerousFile() {
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertNoRaw(t('For security reasons, your upload has been renamed'), 'Found no security message.');
-    $this->assertRaw(t('File name is @filename', array('@filename' => $this->phpfile->filename)), 'Dangerous file was not renamed when insecure uploads is TRUE.');
+    $this->assertRaw(t('File name is @filename', ['@filename' => $this->phpfile->filename]), 'Dangerous file was not renamed when insecure uploads is TRUE.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
 
     // Turn off insecure uploads.
     $config->set('allow_insecure_uploads', 0)->save();
@@ -237,10 +237,10 @@ function testHandleFileMunge() {
     file_test_reset();
 
     $extensions = $this->imageExtension;
-    $edit = array(
+    $edit = [
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
       'extensions' => $extensions,
-    );
+    ];
 
     $munged_filename = $this->image->getFilename();
     $munged_filename = substr($munged_filename, 0, strrpos($munged_filename, '.'));
@@ -249,84 +249,84 @@ function testHandleFileMunge() {
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('For security reasons, your upload has been renamed'), 'Found security message.');
-    $this->assertRaw(t('File name is @filename', array('@filename' => $munged_filename)), 'File was successfully munged.');
+    $this->assertRaw(t('File name is @filename', ['@filename' => $munged_filename]), 'File was successfully munged.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
 
     // Ensure we don't munge files if we're allowing any extension.
     // Reset the hook counters.
     file_test_reset();
 
-    $edit = array(
+    $edit = [
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri()),
       'allow_all_extensions' => TRUE,
-    );
+    ];
 
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertNoRaw(t('For security reasons, your upload has been renamed'), 'Found no security message.');
-    $this->assertRaw(t('File name is @filename', array('@filename' => $this->image->getFilename())), 'File was not munged when allowing any extension.');
+    $this->assertRaw(t('File name is @filename', ['@filename' => $this->image->getFilename()]), 'File was not munged when allowing any extension.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
   }
 
   /**
    * Test renaming when uploading over a file that already exists.
    */
   function testExistingRename() {
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_RENAME,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri())
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'insert'));
+    $this->assertFileHooksCalled(['validate', 'insert']);
   }
 
   /**
    * Test replacement when uploading over a file that already exists.
    */
   function testExistingReplace() {
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_REPLACE,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri())
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('You WIN!'), 'Found the success message.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('validate', 'load', 'update'));
+    $this->assertFileHooksCalled(['validate', 'load', 'update']);
   }
 
   /**
    * Test for failure when uploading over a file that already exists.
    */
   function testExistingError() {
-    $edit = array(
+    $edit = [
       'file_test_replace' => FILE_EXISTS_ERROR,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri())
-    );
+    ];
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
     $this->assertResponse(200, 'Received a 200 response for posted test file.');
     $this->assertRaw(t('Epic upload FAIL!'), 'Found the failure message.');
 
     // Check that the no hooks were called while failing.
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
   }
 
   /**
    * Test for no failures when not uploading a file.
    */
   function testNoUpload() {
-    $this->drupalPostForm('file-test/upload', array(), t('Submit'));
+    $this->drupalPostForm('file-test/upload', [], t('Submit'));
     $this->assertNoRaw(t('Epic upload FAIL!'), 'Failure message not found.');
   }
 
@@ -339,10 +339,10 @@ function testDrupalMovingUploadedFileError() {
     drupal_mkdir('temporary://' . $test_directory, 0000);
     $this->assertTrue(is_dir('temporary://' . $test_directory));
 
-    $edit = array(
+    $edit = [
       'file_subdir' => $test_directory,
       'files[file_test_upload]' => drupal_realpath($this->image->getFileUri())
-    );
+    ];
 
     \Drupal::state()->set('file_test.disable_error_collection', TRUE);
     $this->drupalPostForm('file-test/upload', $edit, t('Submit'));
@@ -353,10 +353,10 @@ function testDrupalMovingUploadedFileError() {
     // Uploading failed. Now check the log.
     $this->drupalGet('admin/reports/dblog');
     $this->assertResponse(200);
-    $this->assertRaw(t('Upload error. Could not move uploaded file @file to destination @destination.', array(
+    $this->assertRaw(t('Upload error. Could not move uploaded file @file to destination @destination.', [
       '@file' => $this->image->getFilename(),
       '@destination' => 'temporary://' . $test_directory . '/' . $this->image->getFilename()
-    )), 'Found upload error log entry.');
+    ]), 'Found upload error log entry.');
   }
 
 }
diff --git a/core/modules/file/src/Tests/Views/RelationshipUserFileDataTest.php b/core/modules/file/src/Tests/Views/RelationshipUserFileDataTest.php
index db49ae1..6a5f53b 100644
--- a/core/modules/file/src/Tests/Views/RelationshipUserFileDataTest.php
+++ b/core/modules/file/src/Tests/Views/RelationshipUserFileDataTest.php
@@ -21,25 +21,25 @@ class RelationshipUserFileDataTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'file_test_views', 'user');
+  public static $modules = ['file', 'file_test_views', 'user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_file_user_file_data');
+  public static $testViews = ['test_file_user_file_data'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create the user profile field and instance.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'user',
       'field_name' => 'user_file',
       'type' => 'file',
       'translatable' => '0',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'label' => 'User File',
       'description' => '',
@@ -49,7 +49,7 @@ protected function setUp() {
       'required' => 0,
     ])->save();
 
-    ViewTestData::createTestViews(get_class($this), array('file_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['file_test_views']);
   }
 
   /**
@@ -84,12 +84,12 @@ public function testViewsHandlerRelationshipUserFileData() {
     ];
     $this->assertIdentical($expected, $view->getDependencies());
     $this->executeView($view);
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'file_managed_user__user_file_fid' => '2',
-      ),
-    );
-    $column_map = array('file_managed_user__user_file_fid' => 'file_managed_user__user_file_fid');
+      ],
+    ];
+    $column_map = ['file_managed_user__user_file_fid' => 'file_managed_user__user_file_fid'];
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
   }
 
diff --git a/core/modules/file/tests/file_module_test/src/Form/FileModuleTestForm.php b/core/modules/file/tests/file_module_test/src/Form/FileModuleTestForm.php
index 760a4f4..9dc9d35 100644
--- a/core/modules/file/tests/file_module_test/src/Form/FileModuleTestForm.php
+++ b/core/modules/file/tests/file_module_test/src/Form/FileModuleTestForm.php
@@ -36,7 +36,7 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, $tree = TRUE, $extended = TRUE, $multiple = FALSE, $default_fids = NULL) {
     $form['#tree'] = (bool) $tree;
 
-    $form['nested']['file'] = array(
+    $form['nested']['file'] = [
       '#type' => 'managed_file',
       '#title' => $this->t('Managed <em>@type</em>', ['@type' => 'file & butter']),
       '#upload_location' => 'public://test',
@@ -44,21 +44,21 @@ public function buildForm(array $form, FormStateInterface $form_state, $tree = T
       '#extended' => (bool) $extended,
       '#size' => 13,
       '#multiple' => (bool) $multiple,
-    );
+    ];
     if ($default_fids) {
       $default_fids = explode(',', $default_fids);
-      $form['nested']['file']['#default_value'] = $extended ? array('fids' => $default_fids) : $default_fids;
+      $form['nested']['file']['#default_value'] = $extended ? ['fids' => $default_fids] : $default_fids;
     }
 
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Type a value and ensure it stays'),
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
-    );
+    ];
 
     return $form;
   }
@@ -68,7 +68,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $tree = T
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form['#tree']) {
-      $uploads = $form_state->getValue(array('nested', 'file'));
+      $uploads = $form_state->getValue(['nested', 'file']);
     }
     else {
       $uploads = $form_state->getValue('file');
@@ -78,12 +78,12 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $uploads = $uploads['fids'];
     }
 
-    $fids = array();
+    $fids = [];
     foreach ($uploads as $fid) {
       $fids[] = $fid;
     }
 
-    drupal_set_message($this->t('The file ids are %fids.', array('%fids' => implode(',', $fids))));
+    drupal_set_message($this->t('The file ids are %fids.', ['%fids' => implode(',', $fids)]));
   }
 
 }
diff --git a/core/modules/file/tests/file_test/file_test.module b/core/modules/file/tests/file_test/file_test.module
index 4a6fbcb..0baa0cb 100644
--- a/core/modules/file/tests/file_test/file_test.module
+++ b/core/modules/file/tests/file_test/file_test.module
@@ -21,23 +21,23 @@
  */
 function file_test_reset() {
   // Keep track of calls to these hooks
-  $results = array(
-    'load' => array(),
-    'validate' => array(),
-    'download' => array(),
-    'insert' => array(),
-    'update' => array(),
-    'copy' => array(),
-    'move' => array(),
-    'delete' => array(),
-  );
+  $results = [
+    'load' => [],
+    'validate' => [],
+    'download' => [],
+    'insert' => [],
+    'update' => [],
+    'copy' => [],
+    'move' => [],
+    'delete' => [],
+  ];
   \Drupal::state()->set('file_test.results', $results);
 
   // These hooks will return these values, see file_test_set_return().
-  $return = array(
-    'validate' => array(),
+  $return = [
+    'validate' => [],
     'download' => NULL,
-  );
+  ];
   \Drupal::state()->set('file_test.return', $return);
 }
 
@@ -56,7 +56,7 @@ function file_test_reset() {
  * @see file_test_reset()
  */
 function file_test_get_calls($op) {
-  $results = \Drupal::state()->get('file_test.results') ?: array();
+  $results = \Drupal::state()->get('file_test.results') ?: [];
   return $results[$op];
 }
 
@@ -69,7 +69,7 @@ function file_test_get_calls($op) {
  *   passed to each call.
  */
 function file_test_get_all_calls() {
-  return \Drupal::state()->get('file_test.results') ?: array();
+  return \Drupal::state()->get('file_test.results') ?: [];
 }
 
 /**
@@ -86,7 +86,7 @@ function file_test_get_all_calls() {
  */
 function _file_test_log_call($op, $args) {
   if (\Drupal::state()->get('file_test.count_hook_invocations', TRUE)) {
-    $results = \Drupal::state()->get('file_test.results') ?: array();
+    $results = \Drupal::state()->get('file_test.results') ?: [];
     $results[$op][] = $args;
     \Drupal::state()->set('file_test.results', $results);
   }
@@ -105,7 +105,7 @@ function _file_test_log_call($op, $args) {
  * @see file_test_reset()
  */
 function _file_test_get_return($op) {
-  $return = \Drupal::state()->get('file_test.return') ?: array($op => NULL);
+  $return = \Drupal::state()->get('file_test.return') ?: [$op => NULL];
   return $return[$op];
 }
 
@@ -121,7 +121,7 @@ function _file_test_get_return($op) {
  * @see file_test_reset()
  */
 function file_test_set_return($op, $value) {
-  $return = \Drupal::state()->get('file_test.return') ?: array();
+  $return = \Drupal::state()->get('file_test.return') ?: [];
   $return[$op] = $value;
   \Drupal::state()->set('file_test.return', $return);
 }
@@ -131,7 +131,7 @@ function file_test_set_return($op, $value) {
  */
 function file_test_file_load($files) {
   foreach ($files as $file) {
-    _file_test_log_call('load', array($file->id()));
+    _file_test_log_call('load', [$file->id()]);
     // Assign a value on the object so that we can test that the $file is passed
     // by reference.
     $file->file_test['loaded'] = TRUE;
@@ -142,7 +142,7 @@ function file_test_file_load($files) {
  * Implements hook_file_validate().
  */
 function file_test_file_validate(File $file) {
-  _file_test_log_call('validate', array($file->id()));
+  _file_test_log_call('validate', [$file->id()]);
   return _file_test_get_return('validate');
 }
 
@@ -151,11 +151,11 @@ function file_test_file_validate(File $file) {
  */
 function file_test_file_download($uri) {
   if (\Drupal::state()->get('file_test.allow_all', FALSE)) {
-    $files = entity_load_multiple_by_properties('file', array('uri' => $uri));
+    $files = entity_load_multiple_by_properties('file', ['uri' => $uri]);
     $file = reset($files);
     return file_get_content_headers($file);
   }
-  _file_test_log_call('download', array($uri));
+  _file_test_log_call('download', [$uri]);
   return _file_test_get_return('download');
 }
 
@@ -163,35 +163,35 @@ function file_test_file_download($uri) {
  * Implements hook_ENTITY_TYPE_insert() for file entities.
  */
 function file_test_file_insert(File $file) {
-  _file_test_log_call('insert', array($file->id()));
+  _file_test_log_call('insert', [$file->id()]);
 }
 
 /**
  * Implements hook_ENTITY_TYPE_update() for file entities.
  */
 function file_test_file_update(File $file) {
-  _file_test_log_call('update', array($file->id()));
+  _file_test_log_call('update', [$file->id()]);
 }
 
 /**
  * Implements hook_file_copy().
  */
 function file_test_file_copy(File $file, $source) {
-  _file_test_log_call('copy', array($file->id(), $source->id()));
+  _file_test_log_call('copy', [$file->id(), $source->id()]);
 }
 
 /**
  * Implements hook_file_move().
  */
 function file_test_file_move(File $file, File $source) {
-  _file_test_log_call('move', array($file->id(), $source->id()));
+  _file_test_log_call('move', [$file->id(), $source->id()]);
 }
 
 /**
  * Implements hook_ENTITY_TYPE_predelete() for file entities.
  */
 function file_test_file_predelete(File $file) {
-  _file_test_log_call('delete', array($file->id()));
+  _file_test_log_call('delete', [$file->id()]);
 }
 
 /**
@@ -206,11 +206,11 @@ function file_test_file_url_alter(&$uri) {
   }
   // Test alteration of file URLs to use a CDN.
   elseif ($alter_mode == 'cdn') {
-    $cdn_extensions = array('css', 'js', 'gif', 'jpg', 'jpeg', 'png');
+    $cdn_extensions = ['css', 'js', 'gif', 'jpg', 'jpeg', 'png'];
 
     // Most CDNs don't support private file transfers without a lot of hassle,
     // so don't support this in the common case.
-    $schemes = array('public');
+    $schemes = ['public'];
 
     $scheme = file_uri_scheme($uri);
 
@@ -323,7 +323,7 @@ function file_test_validator(File $file, $errors) {
  *   If $filepath is NULL, an array of all previous $filepath parameters
  */
 function file_test_file_scan_callback($filepath = NULL) {
-  $files = &drupal_static(__FUNCTION__, array());
+  $files = &drupal_static(__FUNCTION__, []);
   if (isset($filepath)) {
     $files[] = $filepath;
   }
diff --git a/core/modules/file/tests/file_test/src/Form/FileTestForm.php b/core/modules/file/tests/file_test/src/Form/FileTestForm.php
index 628bb55..f43e20a 100644
--- a/core/modules/file/tests/file_test/src/Form/FileTestForm.php
+++ b/core/modules/file/tests/file_test/src/Form/FileTestForm.php
@@ -21,48 +21,48 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['file_test_upload'] = array(
+    $form['file_test_upload'] = [
       '#type' => 'file',
       '#title' => t('Upload a file'),
-    );
-    $form['file_test_replace'] = array(
+    ];
+    $form['file_test_replace'] = [
       '#type' => 'select',
       '#title' => t('Replace existing image'),
-      '#options' => array(
+      '#options' => [
         FILE_EXISTS_RENAME => t('Appends number until name is unique'),
         FILE_EXISTS_REPLACE => t('Replace the existing file'),
         FILE_EXISTS_ERROR => t('Fail with an error'),
-      ),
+      ],
       '#default_value' => FILE_EXISTS_RENAME,
-    );
-    $form['file_subdir'] = array(
+    ];
+    $form['file_subdir'] = [
       '#type' => 'textfield',
       '#title' => t('Subdirectory for test file'),
       '#default_value' => '',
-    );
+    ];
 
-    $form['extensions'] = array(
+    $form['extensions'] = [
       '#type' => 'textfield',
       '#title' => t('Allowed extensions.'),
       '#default_value' => '',
-    );
+    ];
 
-    $form['allow_all_extensions'] = array(
+    $form['allow_all_extensions'] = [
       '#type' => 'checkbox',
       '#title' => t('Allow all extensions?'),
       '#default_value' => FALSE,
-    );
+    ];
 
-    $form['is_image_file'] = array(
+    $form['is_image_file'] = [
       '#type' => 'checkbox',
       '#title' => t('Is this an image file?'),
       '#default_value' => TRUE,
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
     return $form;
   }
 
@@ -86,16 +86,16 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     }
 
     // Setup validators.
-    $validators = array();
+    $validators = [];
     if ($form_state->getValue('is_image_file')) {
-      $validators['file_validate_is_image'] = array();
+      $validators['file_validate_is_image'] = [];
     }
 
     if ($form_state->getValue('allow_all_extensions')) {
-      $validators['file_validate_extensions'] = array();
+      $validators['file_validate_extensions'] = [];
     }
     elseif (!$form_state->isValueEmpty('extensions')) {
-      $validators['file_validate_extensions'] = array($form_state->getValue('extensions'));
+      $validators['file_validate_extensions'] = [$form_state->getValue('extensions')];
     }
 
     // The test for drupal_move_uploaded_file() triggering a warning is
@@ -108,9 +108,9 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $file = file_save_upload('file_test_upload', $validators, $destination, 0, $form_state->getValue('file_test_replace'));
     if ($file) {
       $form_state->setValue('file_test_upload', $file);
-      drupal_set_message(t('File @filepath was uploaded.', array('@filepath' => $file->getFileUri())));
-      drupal_set_message(t('File name is @filename.', array('@filename' => $file->getFilename())));
-      drupal_set_message(t('File MIME type is @mimetype.', array('@mimetype' => $file->getMimeType())));
+      drupal_set_message(t('File @filepath was uploaded.', ['@filepath' => $file->getFileUri()]));
+      drupal_set_message(t('File name is @filename.', ['@filename' => $file->getFilename()]));
+      drupal_set_message(t('File MIME type is @mimetype.', ['@mimetype' => $file->getMimeType()]));
       drupal_set_message(t('You WIN!'));
     }
     elseif ($file === FALSE) {
diff --git a/core/modules/file/tests/src/Functional/FileFieldTestBase.php b/core/modules/file/tests/src/Functional/FileFieldTestBase.php
index 9cc981b..af3747b 100644
--- a/core/modules/file/tests/src/Functional/FileFieldTestBase.php
+++ b/core/modules/file/tests/src/Functional/FileFieldTestBase.php
@@ -18,7 +18,7 @@
   *
   * @var array
   */
-  public static $modules = array('node', 'file', 'file_module_test', 'field_ui');
+  public static $modules = ['node', 'file', 'file_module_test', 'field_ui'];
 
   /**
    * An user with administration permissions.
@@ -29,9 +29,9 @@
 
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'access administration pages', 'administer site configuration', 'administer users', 'administer permissions', 'administer content types', 'administer node fields', 'administer node display', 'administer nodes', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'access administration pages', 'administer site configuration', 'administer users', 'administer permissions', 'administer content types', 'administer node fields', 'administer node display', 'administer nodes', 'bypass node access']);
     $this->drupalLogin($this->adminUser);
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
   }
 
   /**
@@ -73,14 +73,14 @@ function getLastFileId() {
    * @param array $widget_settings
    *   A list of widget settings that will be added to the widget defaults.
    */
-  function createFileField($name, $entity_type, $bundle, $storage_settings = array(), $field_settings = array(), $widget_settings = array()) {
-    $field_storage = FieldStorageConfig::create(array(
+  function createFileField($name, $entity_type, $bundle, $storage_settings = [], $field_settings = [], $widget_settings = []) {
+    $field_storage = FieldStorageConfig::create([
       'entity_type' => $entity_type,
       'field_name' => $name,
       'type' => 'file',
       'settings' => $storage_settings,
       'cardinality' => !empty($storage_settings['cardinality']) ? $storage_settings['cardinality'] : 1,
-    ));
+    ]);
     $field_storage->save();
 
     $this->attachFileField($name, $entity_type, $bundle, $field_settings, $widget_settings);
@@ -101,44 +101,44 @@ function createFileField($name, $entity_type, $bundle, $storage_settings = array
    * @param array $widget_settings
    *   A list of widget settings that will be added to the widget defaults.
    */
-  function attachFileField($name, $entity_type, $bundle, $field_settings = array(), $widget_settings = array()) {
-    $field = array(
+  function attachFileField($name, $entity_type, $bundle, $field_settings = [], $widget_settings = []) {
+    $field = [
       'field_name' => $name,
       'label' => $name,
       'entity_type' => $entity_type,
       'bundle' => $bundle,
       'required' => !empty($field_settings['required']),
       'settings' => $field_settings,
-    );
+    ];
     FieldConfig::create($field)->save();
 
     entity_get_form_display($entity_type, $bundle, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'file_generic',
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
     // Assign display settings.
     entity_get_display($entity_type, $bundle, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'label' => 'hidden',
         'type' => 'file_default',
-      ))
+      ])
       ->save();
   }
 
   /**
    * Updates an existing file field with new settings.
    */
-  function updateFileField($name, $type_name, $field_settings = array(), $widget_settings = array()) {
+  function updateFileField($name, $type_name, $field_settings = [], $widget_settings = []) {
     $field = FieldConfig::loadByName('node', $type_name, $name);
     $field->setSettings(array_merge($field->getSettings(), $field_settings));
     $field->save();
 
     entity_get_form_display('node', $type_name, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
   }
 
@@ -160,7 +160,7 @@ function updateFileField($name, $type_name, $field_settings = array(), $widget_s
    * @return int
    *   The node id.
    */
-  function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = array()) {
+  function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = []) {
     return $this->uploadNodeFiles([$file], $field_name, $nid_or_type, $new_revision, $extras);
   }
 
@@ -182,16 +182,16 @@ function uploadNodeFile(FileInterface $file, $field_name, $nid_or_type, $new_rev
    * @return int
    *   The node id.
    */
-  function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = array()) {
-    $edit = array(
+  function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision = TRUE, array $extras = []) {
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     if (is_numeric($nid_or_type)) {
       $nid = $nid_or_type;
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
     }
     else {
@@ -202,7 +202,7 @@ function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision
       // Save at least one revision to better simulate a real site.
       $node->setNewRevision();
       $node->save();
-      $node_storage->resetCache(array($nid));
+      $node_storage->resetCache([$nid]);
       $node = $node_storage->load($nid);
       $this->assertNotEqual($nid, $node->getRevisionId(), 'Node revision exists.');
     }
@@ -235,11 +235,11 @@ function uploadNodeFiles(array $files, $field_name, $nid_or_type, $new_revision
    * Note that if replacing a file, it must first be removed then added again.
    */
   function removeNodeFile($nid, $new_revision = TRUE) {
-    $edit = array(
+    $edit = [
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
-    $this->drupalPostForm('node/' . $nid . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $nid . '/edit', [], t('Remove'));
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
   }
 
@@ -247,12 +247,12 @@ function removeNodeFile($nid, $new_revision = TRUE) {
    * Replaces a file within a node.
    */
   function replaceNodeFile($file, $field_name, $nid, $new_revision = TRUE) {
-    $edit = array(
+    $edit = [
       'files[' . $field_name . '_0]' => drupal_realpath($file->getFileUri()),
       'revision' => (string) (int) $new_revision,
-    );
+    ];
 
-    $this->drupalPostForm('node/' . $nid . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $nid . '/edit', [], t('Remove'));
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
   }
 
@@ -268,7 +268,7 @@ function replaceNodeFile($file, $field_name, $nid, $new_revision = TRUE) {
    *   (optional) A message to display with the assertion.
    */
   public static function assertFileExists($file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file exists on the disk.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists on the disk.', ['%file' => $file->getFileUri()]);
     $filename = $file instanceof FileInterface ? $file->getFileUri() : $file;
     parent::assertFileExists($filename, $message);
   }
@@ -279,7 +279,7 @@ public static function assertFileExists($file, $message = NULL) {
   function assertFileEntryExists($file, $message = NULL) {
     $this->container->get('entity.manager')->getStorage('file')->resetCache();
     $db_file = File::load($file->id());
-    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', ['%file' => $file->getFileUri()]);
     $this->assertEqual($db_file->getFileUri(), $file->getFileUri(), $message);
   }
 
@@ -295,7 +295,7 @@ function assertFileEntryExists($file, $message = NULL) {
    *   (optional) A message to display with the assertion.
    */
   public static function assertFileNotExists($file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file exists on the disk.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists on the disk.', ['%file' => $file->getFileUri()]);
     $filename = $file instanceof FileInterface ? $file->getFileUri() : $file;
     parent::assertFileNotExists($filename, $message);
   }
@@ -305,7 +305,7 @@ public static function assertFileNotExists($file, $message = NULL) {
    */
   function assertFileEntryNotExists($file, $message) {
     $this->container->get('entity.manager')->getStorage('file')->resetCache();
-    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file exists in database at the correct path.', ['%file' => $file->getFileUri()]);
     $this->assertFalse(File::load($file->id()), $message);
   }
 
@@ -313,7 +313,7 @@ function assertFileEntryNotExists($file, $message) {
    * Asserts that a file's status is set to permanent in the database.
    */
   function assertFileIsPermanent(FileInterface $file, $message = NULL) {
-    $message = isset($message) ? $message : format_string('File %file is permanent.', array('%file' => $file->getFileUri()));
+    $message = isset($message) ? $message : format_string('File %file is permanent.', ['%file' => $file->getFileUri()]);
     $this->assertTrue($file->isPermanent(), $message);
   }
 
diff --git a/core/modules/file/tests/src/Functional/FileManagedAccessTest.php b/core/modules/file/tests/src/Functional/FileManagedAccessTest.php
index 97f77b6..fc6d85c 100644
--- a/core/modules/file/tests/src/Functional/FileManagedAccessTest.php
+++ b/core/modules/file/tests/src/Functional/FileManagedAccessTest.php
@@ -16,20 +16,20 @@ class FileManagedAccessTest extends FileManagedTestBase {
    */
   function testFileAccess() {
     // Create a new file entity.
-    $file = File::create(array(
+    $file = File::create([
       'uid' => 1,
       'filename' => 'drupal.txt',
       'uri' => 'public://drupal.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    ));
+    ]);
     file_put_contents($file->getFileUri(), 'hello world');
 
     // Save it, inserting a new record.
     $file->save();
 
     // Create authenticated user to check file access.
-    $account = $this->createUser(array('access site reports'));
+    $account = $this->createUser(['access site reports']);
 
     $this->assertTrue($file->access('view', $account), 'Public file is viewable to authenticated user');
     $this->assertTrue($file->access('download', $account), 'Public file is downloadable to authenticated user');
@@ -41,20 +41,20 @@ function testFileAccess() {
     $this->assertTrue($file->access('download', $account), 'Public file is downloadable to anonymous user');
 
     // Create a new file entity.
-    $file = File::create(array(
+    $file = File::create([
       'uid' => 1,
       'filename' => 'drupal.txt',
       'uri' => 'private://drupal.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    ));
+    ]);
     file_put_contents($file->getFileUri(), 'hello world');
 
     // Save it, inserting a new record.
     $file->save();
 
     // Create authenticated user to check file access.
-    $account = $this->createUser(array('access site reports'));
+    $account = $this->createUser(['access site reports']);
 
     $this->assertFalse($file->access('view', $account), 'Private file is not viewable to authenticated user');
     $this->assertFalse($file->access('download', $account), 'Private file is not downloadable to authenticated user');
diff --git a/core/modules/file/tests/src/Functional/FileManagedTestBase.php b/core/modules/file/tests/src/Functional/FileManagedTestBase.php
index 6bd57dd..0adbe2c 100644
--- a/core/modules/file/tests/src/Functional/FileManagedTestBase.php
+++ b/core/modules/file/tests/src/Functional/FileManagedTestBase.php
@@ -17,7 +17,7 @@
    *
    * @var array
    */
-  public static $modules = array('file_test', 'file');
+  public static $modules = ['file_test', 'file'];
 
   protected function setUp() {
     parent::setUp();
@@ -42,16 +42,16 @@ function assertFileHooksCalled($expected) {
     // Determine if there were any expected that were not called.
     $uncalled = array_diff($expected, $actual);
     if (count($uncalled)) {
-      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', array('%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled))));
+      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', ['%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled)]));
     }
     else {
-      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', array('%expected' => empty($expected) ? '(none)' : implode(', ', $expected))));
+      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', ['%expected' => empty($expected) ? '(none)' : implode(', ', $expected)]));
     }
 
     // Determine if there were any unexpected calls.
     $unexpected = array_diff($actual, $expected);
     if (count($unexpected)) {
-      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', array('%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected))));
+      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', ['%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected)]));
     }
     else {
       $this->assertTrue(TRUE, 'No unexpected hooks were called.');
@@ -73,13 +73,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
 
     if (!isset($message)) {
       if ($actual_count == $expected_count) {
-        $message = format_string('hook_file_@name was called correctly.', array('@name' => $hook));
+        $message = format_string('hook_file_@name was called correctly.', ['@name' => $hook]);
       }
       elseif ($expected_count == 0) {
-        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', array('@name' => $hook, '@count' => $actual_count));
+        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', ['@name' => $hook, '@count' => $actual_count]);
       }
       else {
-        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', array('@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count));
+        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', ['@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count]);
       }
     }
     $this->assertEqual($actual_count, $expected_count, $message);
@@ -94,13 +94,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
    *   File object to compare.
    */
   function assertFileUnchanged(FileInterface $before, FileInterface $after) {
-    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', array('%file1' => $before->id(), '%file2' => $after->id())), 'File unchanged');
-    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', array('%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id())), 'File unchanged');
-    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', array('%file1' => $before->getFilename(), '%file2' => $after->getFilename())), 'File unchanged');
-    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', array('%file1' => $before->getFileUri(), '%file2' => $after->getFileUri())), 'File unchanged');
-    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', array('%file1' => $before->getMimeType(), '%file2' => $after->getMimeType())), 'File unchanged');
-    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', array('%file1' => $before->getSize(), '%file2' => $after->getSize())), 'File unchanged');
-    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', array('%file1' => $before->isPermanent(), '%file2' => $after->isPermanent())), 'File unchanged');
+    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', ['%file1' => $before->id(), '%file2' => $after->id()]), 'File unchanged');
+    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', ['%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id()]), 'File unchanged');
+    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', ['%file1' => $before->getFilename(), '%file2' => $after->getFilename()]), 'File unchanged');
+    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', ['%file1' => $before->getFileUri(), '%file2' => $after->getFileUri()]), 'File unchanged');
+    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', ['%file1' => $before->getMimeType(), '%file2' => $after->getMimeType()]), 'File unchanged');
+    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', ['%file1' => $before->getSize(), '%file2' => $after->getSize()]), 'File unchanged');
+    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', ['%file1' => $before->isPermanent(), '%file2' => $after->isPermanent()]), 'File unchanged');
   }
 
   /**
@@ -112,8 +112,8 @@ function assertFileUnchanged(FileInterface $before, FileInterface $after) {
    *   File object to compare.
    */
   function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', array('%file1' => $file1->id(), '%file2' => $file2->id())), 'Different file');
-    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Different file');
+    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', ['%file1' => $file1->id(), '%file2' => $file2->id()]), 'Different file');
+    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Different file');
   }
 
   /**
@@ -125,8 +125,8 @@ function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
    *   File object to compare.
    */
   function assertSameFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', array('%file1' => $file1->id(), '%file2-fid' => $file2->id())), 'Same file');
-    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Same file');
+    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', ['%file1' => $file1->id(), '%file2-fid' => $file2->id()]), 'Same file');
+    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Same file');
   }
 
   /**
diff --git a/core/modules/file/tests/src/Kernel/AccessTest.php b/core/modules/file/tests/src/Kernel/AccessTest.php
index c2fa65b..c71d7e8 100644
--- a/core/modules/file/tests/src/Kernel/AccessTest.php
+++ b/core/modules/file/tests/src/Kernel/AccessTest.php
@@ -49,7 +49,7 @@ protected function setUp() {
 
     $this->installEntitySchema('file');
     $this->installEntitySchema('user');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
     $this->installSchema('system', 'sequences');
 
     $this->user1 = User::create([
@@ -64,11 +64,11 @@ protected function setUp() {
     ]);
     $this->user2->save();
 
-    $this->file = File::create(array(
+    $this->file = File::create([
       'uid' => $this->user1->id(),
       'filename' => 'druplicon.txt',
       'filemime' => 'text/plain',
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/file/tests/src/Kernel/CopyTest.php b/core/modules/file/tests/src/Kernel/CopyTest.php
index 8836bd4..4c8d41f 100644
--- a/core/modules/file/tests/src/Kernel/CopyTest.php
+++ b/core/modules/file/tests/src/Kernel/CopyTest.php
@@ -27,7 +27,7 @@ function testNormal() {
     $this->assertEqual($contents, file_get_contents($result->getFileUri()), 'Contents of file were copied correctly.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('copy', 'insert'));
+    $this->assertFileHooksCalled(['copy', 'insert']);
 
     $this->assertDifferentFile($source, $result);
     $this->assertEqual($result->getFileUri(), $desired_uri, 'The copied file entity has the desired filepath.');
@@ -59,7 +59,7 @@ function testExistingRename() {
     $this->assertNotEqual($result->getFileUri(), $source->getFileUri(), 'Returned file path has changed from the original.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('copy', 'insert'));
+    $this->assertFileHooksCalled(['copy', 'insert']);
 
     // Load all the affected files to check the changes that actually made it
     // to the database.
@@ -99,7 +99,7 @@ function testExistingReplace() {
     $this->assertDifferentFile($source, $result);
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('load', 'copy', 'update'));
+    $this->assertFileHooksCalled(['load', 'copy', 'update']);
 
     // Load all the affected files to check the changes that actually made it
     // to the database.
@@ -136,7 +136,7 @@ function testExistingError() {
     $this->assertEqual($contents, file_get_contents($target->getFileUri()), 'Contents of file were not altered.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
 
     $this->assertFileUnchanged($source, File::load($source->id()));
     $this->assertFileUnchanged($target, File::load($target->id()));
diff --git a/core/modules/file/tests/src/Kernel/DeleteTest.php b/core/modules/file/tests/src/Kernel/DeleteTest.php
index b880571..6d992a5 100644
--- a/core/modules/file/tests/src/Kernel/DeleteTest.php
+++ b/core/modules/file/tests/src/Kernel/DeleteTest.php
@@ -19,7 +19,7 @@ function testUnused() {
     // Check that deletion removes the file and database record.
     $this->assertTrue(is_file($file->getFileUri()), 'File exists.');
     $file->delete();
-    $this->assertFileHooksCalled(array('delete'));
+    $this->assertFileHooksCalled(['delete']);
     $this->assertFalse(file_exists($file->getFileUri()), 'Test file has actually been deleted.');
     $this->assertFalse(File::load($file->id()), 'File was removed from the database.');
   }
@@ -35,7 +35,7 @@ function testInUse() {
 
     $file_usage->delete($file, 'testing', 'test', 1);
     $usage = $file_usage->listUsage($file);
-    $this->assertEqual($usage['testing']['test'], array(1 => 1), 'Test file is still in use.');
+    $this->assertEqual($usage['testing']['test'], [1 => 1], 'Test file is still in use.');
     $this->assertTrue(file_exists($file->getFileUri()), 'File still exists on the disk.');
     $this->assertTrue(File::load($file->id()), 'File still exists in the database.');
 
@@ -44,7 +44,7 @@ function testInUse() {
 
     $file_usage->delete($file, 'testing', 'test', 1);
     $usage = $file_usage->listUsage($file);
-    $this->assertFileHooksCalled(array('load', 'update'));
+    $this->assertFileHooksCalled(['load', 'update']);
     $this->assertTrue(empty($usage), 'File usage data was removed.');
     $this->assertTrue(file_exists($file->getFileUri()), 'File still exists on the disk.');
     $file = File::load($file->id());
@@ -56,15 +56,15 @@ function testInUse() {
     // of the file is older than the system.file.temporary_maximum_age
     // configuration value.
     db_update('file_managed')
-      ->fields(array(
+      ->fields([
         'changed' => REQUEST_TIME - ($this->config('system.file')->get('temporary_maximum_age') + 1),
-      ))
+      ])
       ->condition('fid', $file->id())
       ->execute();
     \Drupal::service('cron')->run();
 
     // file_cron() loads
-    $this->assertFileHooksCalled(array('delete'));
+    $this->assertFileHooksCalled(['delete']);
     $this->assertFalse(file_exists($file->getFileUri()), 'File has been deleted after its last usage was removed.');
     $this->assertFalse(File::load($file->id()), 'File was removed from the database.');
   }
diff --git a/core/modules/file/tests/src/Kernel/FileItemTest.php b/core/modules/file/tests/src/Kernel/FileItemTest.php
index 747d5da..8219af1 100644
--- a/core/modules/file/tests/src/Kernel/FileItemTest.php
+++ b/core/modules/file/tests/src/Kernel/FileItemTest.php
@@ -23,7 +23,7 @@ class FileItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('file');
+  public static $modules = ['file'];
 
   /**
    * Created file entity.
@@ -43,20 +43,20 @@ protected function setUp() {
     parent::setUp();
 
     $this->installEntitySchema('file');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'file_test',
       'entity_type' => 'entity_test',
       'type' => 'file',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     $this->directory = $this->getRandomGenerator()->name(8);
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'file_test',
       'bundle' => 'entity_test',
-      'settings' => array('file_directory' => $this->directory),
+      'settings' => ['file_directory' => $this->directory],
     ])->save();
     file_put_contents('public://example.txt', $this->randomMachineName());
     $this->file = File::create([
@@ -131,7 +131,7 @@ public function testFileItem() {
       'weight' => 1,
     ])->save();
     $entity = EntityTest::create();
-    $entity->file_test = array('entity' => $file3);
+    $entity->file_test = ['entity' => $file3];
     $uri = $file3->getFileUri();
     $output = entity_view($entity, 'default');
     \Drupal::service('renderer')->renderRoot($output);
diff --git a/core/modules/file/tests/src/Kernel/FileManagedUnitTestBase.php b/core/modules/file/tests/src/Kernel/FileManagedUnitTestBase.php
index 4db377d..3035b7c 100644
--- a/core/modules/file/tests/src/Kernel/FileManagedUnitTestBase.php
+++ b/core/modules/file/tests/src/Kernel/FileManagedUnitTestBase.php
@@ -18,17 +18,17 @@
    *
    * @var array
    */
-  public static $modules = array('file_test', 'file', 'system', 'field', 'user');
+  public static $modules = ['file_test', 'file', 'system', 'field', 'user'];
 
   protected function setUp() {
     parent::setUp();
     // Clear out any hook calls.
     file_test_reset();
 
-    $this->installConfig(array('system'));
+    $this->installConfig(['system']);
     $this->installEntitySchema('file');
     $this->installEntitySchema('user');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
 
     // Make sure that a user with uid 1 exists, self::createFile() relies on
     // it.
@@ -55,16 +55,16 @@ function assertFileHooksCalled($expected) {
     // Determine if there were any expected that were not called.
     $uncalled = array_diff($expected, $actual);
     if (count($uncalled)) {
-      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', array('%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled))));
+      $this->assertTrue(FALSE, format_string('Expected hooks %expected to be called but %uncalled was not called.', ['%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled)]));
     }
     else {
-      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', array('%expected' => empty($expected) ? '(none)' : implode(', ', $expected))));
+      $this->assertTrue(TRUE, format_string('All the expected hooks were called: %expected', ['%expected' => empty($expected) ? '(none)' : implode(', ', $expected)]));
     }
 
     // Determine if there were any unexpected calls.
     $unexpected = array_diff($actual, $expected);
     if (count($unexpected)) {
-      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', array('%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected))));
+      $this->assertTrue(FALSE, format_string('Unexpected hooks were called: %unexpected.', ['%unexpected' => empty($unexpected) ? '(none)' : implode(', ', $unexpected)]));
     }
     else {
       $this->assertTrue(TRUE, 'No unexpected hooks were called.');
@@ -86,13 +86,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
 
     if (!isset($message)) {
       if ($actual_count == $expected_count) {
-        $message = format_string('hook_file_@name was called correctly.', array('@name' => $hook));
+        $message = format_string('hook_file_@name was called correctly.', ['@name' => $hook]);
       }
       elseif ($expected_count == 0) {
-        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', array('@name' => $hook, '@count' => $actual_count));
+        $message = \Drupal::translation()->formatPlural($actual_count, 'hook_file_@name was not expected to be called but was actually called once.', 'hook_file_@name was not expected to be called but was actually called @count times.', ['@name' => $hook, '@count' => $actual_count]);
       }
       else {
-        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', array('@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count));
+        $message = format_string('hook_file_@name was expected to be called %expected times but was called %actual times.', ['@name' => $hook, '%expected' => $expected_count, '%actual' => $actual_count]);
       }
     }
     $this->assertEqual($actual_count, $expected_count, $message);
@@ -107,13 +107,13 @@ function assertFileHookCalled($hook, $expected_count = 1, $message = NULL) {
    *   File object to compare.
    */
   function assertFileUnchanged(FileInterface $before, FileInterface $after) {
-    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', array('%file1' => $before->id(), '%file2' => $after->id())), 'File unchanged');
-    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', array('%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id())), 'File unchanged');
-    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', array('%file1' => $before->getFilename(), '%file2' => $after->getFilename())), 'File unchanged');
-    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', array('%file1' => $before->getFileUri(), '%file2' => $after->getFileUri())), 'File unchanged');
-    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', array('%file1' => $before->getMimeType(), '%file2' => $after->getMimeType())), 'File unchanged');
-    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', array('%file1' => $before->getSize(), '%file2' => $after->getSize())), 'File unchanged');
-    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', array('%file1' => $before->isPermanent(), '%file2' => $after->isPermanent())), 'File unchanged');
+    $this->assertEqual($before->id(), $after->id(), t('File id is the same: %file1 == %file2.', ['%file1' => $before->id(), '%file2' => $after->id()]), 'File unchanged');
+    $this->assertEqual($before->getOwner()->id(), $after->getOwner()->id(), t('File owner is the same: %file1 == %file2.', ['%file1' => $before->getOwner()->id(), '%file2' => $after->getOwner()->id()]), 'File unchanged');
+    $this->assertEqual($before->getFilename(), $after->getFilename(), t('File name is the same: %file1 == %file2.', ['%file1' => $before->getFilename(), '%file2' => $after->getFilename()]), 'File unchanged');
+    $this->assertEqual($before->getFileUri(), $after->getFileUri(), t('File path is the same: %file1 == %file2.', ['%file1' => $before->getFileUri(), '%file2' => $after->getFileUri()]), 'File unchanged');
+    $this->assertEqual($before->getMimeType(), $after->getMimeType(), t('File MIME type is the same: %file1 == %file2.', ['%file1' => $before->getMimeType(), '%file2' => $after->getMimeType()]), 'File unchanged');
+    $this->assertEqual($before->getSize(), $after->getSize(), t('File size is the same: %file1 == %file2.', ['%file1' => $before->getSize(), '%file2' => $after->getSize()]), 'File unchanged');
+    $this->assertEqual($before->isPermanent(), $after->isPermanent(), t('File status is the same: %file1 == %file2.', ['%file1' => $before->isPermanent(), '%file2' => $after->isPermanent()]), 'File unchanged');
   }
 
   /**
@@ -125,8 +125,8 @@ function assertFileUnchanged(FileInterface $before, FileInterface $after) {
    *   File object to compare.
    */
   function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', array('%file1' => $file1->id(), '%file2' => $file2->id())), 'Different file');
-    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Different file');
+    $this->assertNotEqual($file1->id(), $file2->id(), t('Files have different ids: %file1 != %file2.', ['%file1' => $file1->id(), '%file2' => $file2->id()]), 'Different file');
+    $this->assertNotEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have different paths: %file1 != %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Different file');
   }
 
   /**
@@ -138,8 +138,8 @@ function assertDifferentFile(FileInterface $file1, FileInterface $file2) {
    *   File object to compare.
    */
   function assertSameFile(FileInterface $file1, FileInterface $file2) {
-    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', array('%file1' => $file1->id(), '%file2-fid' => $file2->id())), 'Same file');
-    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', array('%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri())), 'Same file');
+    $this->assertEqual($file1->id(), $file2->id(), t('Files have the same ids: %file1 == %file2.', ['%file1' => $file1->id(), '%file2-fid' => $file2->id()]), 'Same file');
+    $this->assertEqual($file1->getFileUri(), $file2->getFileUri(), t('Files have the same path: %file1 == %file2.', ['%file1' => $file1->getFileUri(), '%file2' => $file2->getFileUri()]), 'Same file');
   }
 
   /**
diff --git a/core/modules/file/tests/src/Kernel/LoadTest.php b/core/modules/file/tests/src/Kernel/LoadTest.php
index c523d43..8cbaccc 100644
--- a/core/modules/file/tests/src/Kernel/LoadTest.php
+++ b/core/modules/file/tests/src/Kernel/LoadTest.php
@@ -15,25 +15,25 @@ class LoadTest extends FileManagedUnitTestBase {
    */
   function testLoadMissingFid() {
     $this->assertFalse(File::load(-1), 'Try to load an invalid fid fails.');
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
   }
 
   /**
    * Try to load a non-existent file by URI.
    */
   function testLoadMissingFilepath() {
-    $files = entity_load_multiple_by_properties('file', array('uri' => 'foobar://misc/druplicon.png'));
+    $files = entity_load_multiple_by_properties('file', ['uri' => 'foobar://misc/druplicon.png']);
     $this->assertFalse(reset($files), "Try to load a file that doesn't exist in the database fails.");
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
   }
 
   /**
    * Try to load a non-existent file by status.
    */
   function testLoadInvalidStatus() {
-    $files = entity_load_multiple_by_properties('file', array('status' => -99));
+    $files = entity_load_multiple_by_properties('file', ['status' => -99]);
     $this->assertFalse(reset($files), 'Trying to load a file with an invalid status fails.');
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
   }
 
   /**
@@ -62,7 +62,7 @@ function testMultiple() {
 
     // Load by path.
     file_test_reset();
-    $by_path_files = entity_load_multiple_by_properties('file', array('uri' => $file->getFileUri()));
+    $by_path_files = entity_load_multiple_by_properties('file', ['uri' => $file->getFileUri()]);
     $this->assertFileHookCalled('load');
     $this->assertEqual(1, count($by_path_files), 'entity_load_multiple_by_properties() returned an array of the correct size.');
     $by_path_file = reset($by_path_files);
@@ -71,8 +71,8 @@ function testMultiple() {
 
     // Load by fid.
     file_test_reset();
-    $by_fid_files = File::loadMultiple(array($file->id()));
-    $this->assertFileHooksCalled(array());
+    $by_fid_files = File::loadMultiple([$file->id()]);
+    $this->assertFileHooksCalled([]);
     $this->assertEqual(1, count($by_fid_files), '\Drupal\file\Entity\File::loadMultiple() returned an array of the correct size.');
     $by_fid_file = reset($by_fid_files);
     $this->assertTrue($by_fid_file->file_test['loaded'], 'file_test_file_load() was able to modify the file during load.');
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateFileTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateFileTest.php
index 7e1cff9..024db21 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateFileTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateFileTest.php
@@ -79,12 +79,12 @@ public function testFiles() {
     // Update the file_directory_path.
     Database::getConnection('default', 'migrate')
       ->update('variable')
-      ->fields(array('value' => serialize('files/test')))
+      ->fields(['value' => serialize('files/test')])
       ->condition('name', 'file_directory_path')
       ->execute();
     Database::getConnection('default', 'migrate')
       ->update('variable')
-      ->fields(array('value' => serialize(file_directory_temp())))
+      ->fields(['value' => serialize(file_directory_temp())])
       ->condition('name', 'file_directory_temp')
       ->execute();
 
@@ -122,10 +122,10 @@ public static function migrateDumpAlter(KernelTestBase $test) {
 
     $db->update('files')
       ->condition('fid', 6)
-      ->fields(array(
+      ->fields([
         'filename' => static::$tempFilename,
         'filepath' => $file_path,
-      ))
+      ])
       ->execute();
 
     $file = (array) $db->select('files')
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityDisplayTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityDisplayTest.php
index a813b93..c3b71ad 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityDisplayTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityDisplayTest.php
@@ -38,7 +38,7 @@ public function testUploadEntityDisplay() {
     $component = $display->getComponent('upload');
     $this->assertTrue(is_null($component));
 
-    $this->assertIdentical(array('node', 'page', 'default', 'upload'), $this->getMigration('d6_upload_entity_display')->getIdMap()->lookupDestinationID(array('page')));
+    $this->assertIdentical(['node', 'page', 'default', 'upload'], $this->getMigration('d6_upload_entity_display')->getIdMap()->lookupDestinationID(['page']));
   }
 
 }
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityFormDisplayTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityFormDisplayTest.php
index de0acbf..e9782aa 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityFormDisplayTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadEntityFormDisplayTest.php
@@ -38,7 +38,7 @@ public function testUploadEntityFormDisplay() {
     $component = $display->getComponent('upload');
     $this->assertTrue(is_null($component));
 
-    $this->assertIdentical(array('node', 'page', 'default', 'upload'), $this->getMigration('d6_upload_entity_form_display')->getIdMap()->lookupDestinationID(array('page')));
+    $this->assertIdentical(['node', 'page', 'default', 'upload'], $this->getMigration('d6_upload_entity_form_display')->getIdMap()->lookupDestinationID(['page']));
   }
 
 }
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadFieldTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadFieldTest.php
index 9d5c711..918d6f3 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadFieldTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadFieldTest.php
@@ -26,7 +26,7 @@ protected function setUp() {
   public function testUpload() {
     $field_storage = FieldStorageConfig::load('node.upload');
     $this->assertIdentical('node.upload', $field_storage->id());
-    $this->assertIdentical(array('node', 'upload'), $this->getMigration('d6_upload_field')->getIdMap()->lookupDestinationID(array('')));
+    $this->assertIdentical(['node', 'upload'], $this->getMigration('d6_upload_field')->getIdMap()->lookupDestinationID(['']));
   }
 
 }
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadInstanceTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadInstanceTest.php
index a835006..18c4a71 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadInstanceTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadInstanceTest.php
@@ -38,7 +38,7 @@ public function testUploadFieldInstance() {
     $field = FieldConfig::load('node.article.upload');
     $this->assertTrue(is_null($field));
 
-    $this->assertIdentical(array('node', 'page', 'upload'), $this->getMigration('d6_upload_field_instance')->getIdMap()->lookupDestinationID(array('page')));
+    $this->assertIdentical(['node', 'page', 'upload'], $this->getMigration('d6_upload_field_instance')->getIdMap()->lookupDestinationID(['page']));
   }
 
 }
diff --git a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadTest.php b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadTest.php
index 463ce02..2ab104d 100644
--- a/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadTest.php
+++ b/core/modules/file/tests/src/Kernel/Migrate/d6/MigrateUploadTest.php
@@ -24,10 +24,10 @@ protected function setUp() {
     $this->installSchema('file', ['file_usage']);
     $this->installSchema('node', ['node_access']);
 
-    $id_mappings = array('d6_file' => array());
+    $id_mappings = ['d6_file' => []];
     // Create new file entities.
     for ($i = 1; $i <= 3; $i++) {
-      $file = File::create(array(
+      $file = File::create([
         'fid' => $i,
         'uid' => 1,
         'filename' => 'druplicon.txt',
@@ -36,13 +36,13 @@ protected function setUp() {
         'created' => 1,
         'changed' => 1,
         'status' => FILE_STATUS_PERMANENT,
-      ));
+      ]);
       $file->enforceIsNew();
       file_put_contents($file->getFileUri(), 'hello world');
 
       // Save it, inserting a new record.
       $file->save();
-      $id_mappings['d6_file'][] = array(array($i), array($i));
+      $id_mappings['d6_file'][] = [[$i], [$i]];
     }
     $this->prepareMigrations($id_mappings);
 
diff --git a/core/modules/file/tests/src/Kernel/MoveTest.php b/core/modules/file/tests/src/Kernel/MoveTest.php
index a56caea..f2f1034 100644
--- a/core/modules/file/tests/src/Kernel/MoveTest.php
+++ b/core/modules/file/tests/src/Kernel/MoveTest.php
@@ -28,10 +28,10 @@ function testNormal() {
     $this->assertEqual($contents, file_get_contents($result->getFileUri()), 'Contents of file correctly written.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('move', 'load', 'update'));
+    $this->assertFileHooksCalled(['move', 'load', 'update']);
 
     // Make sure we got the same file back.
-    $this->assertEqual($source->id(), $result->id(), format_string("Source file id's' %fid is unchanged after move.", array('%fid' => $source->id())));
+    $this->assertEqual($source->id(), $result->id(), format_string("Source file id's' %fid is unchanged after move.", ['%fid' => $source->id()]));
 
     // Reload the file from the database and check that the changes were
     // actually saved.
@@ -60,7 +60,7 @@ function testExistingRename() {
     $this->assertEqual($contents, file_get_contents($result->getFileUri()), 'Contents of file correctly written.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('move', 'load', 'update'));
+    $this->assertFileHooksCalled(['move', 'load', 'update']);
 
     // Compare the returned value to what made it into the database.
     $this->assertFileUnchanged($result, File::load($result->id()));
@@ -95,7 +95,7 @@ function testExistingReplace() {
     $this->assertTrue($result, 'File moved successfully.');
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('move', 'update', 'delete', 'load'));
+    $this->assertFileHooksCalled(['move', 'update', 'delete', 'load']);
 
     // Reload the file from the database and check that the changes were
     // actually saved.
@@ -122,7 +122,7 @@ function testExistingReplaceSelf() {
     $this->assertEqual($contents, file_get_contents($source->getFileUri()), 'Contents of file were not altered.');
 
     // Check that no hooks were called while failing.
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
 
     // Load the file from the database and make sure it is identical to what
     // was returned.
@@ -149,7 +149,7 @@ function testExistingError() {
     $this->assertEqual($contents, file_get_contents($target->getFileUri()), 'Contents of file were not altered.');
 
     // Check that no hooks were called while failing.
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
 
     // Load the file from the database and make sure it is identical to what
     // was returned.
diff --git a/core/modules/file/tests/src/Kernel/SaveDataTest.php b/core/modules/file/tests/src/Kernel/SaveDataTest.php
index c5637d0..f92ef9a 100644
--- a/core/modules/file/tests/src/Kernel/SaveDataTest.php
+++ b/core/modules/file/tests/src/Kernel/SaveDataTest.php
@@ -26,7 +26,7 @@ function testWithoutFilename() {
     $this->assertTrue($result->isPermanent(), "The file's status was set to permanent.");
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('insert'));
+    $this->assertFileHooksCalled(['insert']);
 
     // Verify that what was returned is what's in the database.
     $this->assertFileUnchanged($result, File::load($result->id()));
@@ -51,7 +51,7 @@ function testWithFilename() {
     $this->assertTrue($result->isPermanent(), "The file's status was set to permanent.");
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('insert'));
+    $this->assertFileHooksCalled(['insert']);
 
     // Verify that what was returned is what's in the database.
     $this->assertFileUnchanged($result, File::load($result->id()));
@@ -75,7 +75,7 @@ function testExistingRename() {
     $this->assertTrue($result->isPermanent(), "The file's status was set to permanent.");
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('insert'));
+    $this->assertFileHooksCalled(['insert']);
 
     // Ensure that the existing file wasn't overwritten.
     $this->assertDifferentFile($existing, $result);
@@ -103,7 +103,7 @@ function testExistingReplace() {
     $this->assertTrue($result->isPermanent(), "The file's status was set to permanent.");
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('load', 'update'));
+    $this->assertFileHooksCalled(['load', 'update']);
 
     // Verify that the existing file was re-used.
     $this->assertSameFile($existing, $result);
@@ -125,7 +125,7 @@ function testExistingError() {
     $this->assertEqual($contents, file_get_contents($existing->getFileUri()), 'Contents of existing file were unchanged.');
 
     // Check that no hooks were called while failing.
-    $this->assertFileHooksCalled(array());
+    $this->assertFileHooksCalled([]);
 
     // Ensure that the existing file wasn't overwritten.
     $this->assertFileUnchanged($existing, File::load($existing->id()));
diff --git a/core/modules/file/tests/src/Kernel/SaveTest.php b/core/modules/file/tests/src/Kernel/SaveTest.php
index 69c7f2b..8d91d81 100644
--- a/core/modules/file/tests/src/Kernel/SaveTest.php
+++ b/core/modules/file/tests/src/Kernel/SaveTest.php
@@ -12,20 +12,20 @@
 class SaveTest extends FileManagedUnitTestBase {
   function testFileSave() {
     // Create a new file entity.
-    $file = File::create(array(
+    $file = File::create([
       'uid' => 1,
       'filename' => 'druplicon.txt',
       'uri' => 'public://druplicon.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    ));
+    ]);
     file_put_contents($file->getFileUri(), 'hello world');
 
     // Save it, inserting a new record.
     $file->save();
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('insert'));
+    $this->assertFileHooksCalled(['insert']);
 
     $this->assertTrue($file->id() > 0, 'A new file ID is set when saving a new file to the database.', 'File');
     $loaded_file = File::load($file->id());
@@ -41,7 +41,7 @@ function testFileSave() {
     $file->save();
 
     // Check that the correct hooks were called.
-    $this->assertFileHooksCalled(array('load', 'update'));
+    $this->assertFileHooksCalled(['load', 'update']);
 
     $this->assertEqual($file->id(), $file->id(), 'The file ID of an existing file is not changed when updating the database.', 'File');
     $this->assertTrue($file->getChangedTime() >= $file->getChangedTime(), "Timestamp didn't go backwards.", 'File');
@@ -52,13 +52,13 @@ function testFileSave() {
 
     // Try to insert a second file with the same name apart from case insensitivity
     // to ensure the 'uri' index allows for filenames with different cases.
-    $uppercase_values = array(
+    $uppercase_values = [
       'uid' => 1,
       'filename' => 'DRUPLICON.txt',
       'uri' => 'public://DRUPLICON.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    );
+    ];
     $uppercase_file = File::create($uppercase_values);
     file_put_contents($uppercase_file->getFileUri(), 'hello world');
     $violations = $uppercase_file->validate();
@@ -79,7 +79,7 @@ function testFileSave() {
       ->execute();
 
     $this->assertEqual(1, count($fids));
-    $this->assertEqual(array($uppercase_file->id() => $uppercase_file->id()), $fids);
+    $this->assertEqual([$uppercase_file->id() => $uppercase_file->id()], $fids);
 
   }
 
diff --git a/core/modules/file/tests/src/Kernel/UsageTest.php b/core/modules/file/tests/src/Kernel/UsageTest.php
index 8e26015..6752247 100644
--- a/core/modules/file/tests/src/Kernel/UsageTest.php
+++ b/core/modules/file/tests/src/Kernel/UsageTest.php
@@ -21,22 +21,22 @@ class UsageTest extends FileManagedUnitTestBase {
   function testGetUsage() {
     $file = $this->createFile();
     db_insert('file_usage')
-      ->fields(array(
+      ->fields([
         'fid' => $file->id(),
         'module' => 'testing',
         'type' => 'foo',
         'id' => 1,
         'count' => 1
-      ))
+      ])
       ->execute();
     db_insert('file_usage')
-      ->fields(array(
+      ->fields([
         'fid' => $file->id(),
         'module' => 'testing',
         'type' => 'bar',
         'id' => 2,
         'count' => 2
-      ))
+      ])
       ->execute();
 
     $usage = $this->container->get('file.usage')->listUsage($file);
@@ -81,19 +81,19 @@ function testRemoveUsage() {
     $file = $this->createFile();
     $file_usage = $this->container->get('file.usage');
     db_insert('file_usage')
-      ->fields(array(
+      ->fields([
         'fid' => $file->id(),
         'module' => 'testing',
         'type' => 'bar',
         'id' => 2,
         'count' => 3,
-      ))
+      ])
       ->execute();
 
     // Normal decrement.
     $file_usage->delete($file, 'testing', 'bar', 2);
     $count = db_select('file_usage', 'f')
-      ->fields('f', array('count'))
+      ->fields('f', ['count'])
       ->condition('f.fid', $file->id())
       ->execute()
       ->fetchField();
@@ -102,7 +102,7 @@ function testRemoveUsage() {
     // Multiple decrement and removal.
     $file_usage->delete($file, 'testing', 'bar', 2, 2);
     $count = db_select('file_usage', 'f')
-      ->fields('f', array('count'))
+      ->fields('f', ['count'])
       ->condition('f.fid', $file->id())
       ->execute()
       ->fetchField();
@@ -111,7 +111,7 @@ function testRemoveUsage() {
     // Non-existent decrement.
     $file_usage->delete($file, 'testing', 'bar', 2);
     $count = db_select('file_usage', 'f')
-      ->fields('f', array('count'))
+      ->fields('f', ['count'])
       ->condition('f.fid', $file->id())
       ->execute()
       ->fetchField();
@@ -128,10 +128,10 @@ function createTempFiles() {
     // Temporary file that is old.
     $temp_old = file_save_data('');
     db_update('file_managed')
-      ->fields(array(
+      ->fields([
         'status' => 0,
         'changed' => REQUEST_TIME - $this->config('system.file')->get('temporary_maximum_age') - 1,
-      ))
+      ])
       ->condition('fid', $temp_old->id())
       ->execute();
     $this->assertTrue(file_exists($temp_old->getFileUri()), 'Old temp file was created correctly.');
@@ -139,7 +139,7 @@ function createTempFiles() {
     // Temporary file that is new.
     $temp_new = file_save_data('');
     db_update('file_managed')
-      ->fields(array('status' => 0))
+      ->fields(['status' => 0])
       ->condition('fid', $temp_new->id())
       ->execute();
     $this->assertTrue(file_exists($temp_new->getFileUri()), 'New temp file was created correctly.');
@@ -147,7 +147,7 @@ function createTempFiles() {
     // Permanent file that is old.
     $perm_old = file_save_data('');
     db_update('file_managed')
-      ->fields(array('changed' => REQUEST_TIME - $this->config('system.file')->get('temporary_maximum_age') - 1))
+      ->fields(['changed' => REQUEST_TIME - $this->config('system.file')->get('temporary_maximum_age') - 1])
       ->condition('fid', $temp_old->id())
       ->execute();
     $this->assertTrue(file_exists($perm_old->getFileUri()), 'Old permanent file was created correctly.');
@@ -155,7 +155,7 @@ function createTempFiles() {
     // Permanent file that is new.
     $perm_new = file_save_data('');
     $this->assertTrue(file_exists($perm_new->getFileUri()), 'New permanent file was created correctly.');
-    return array($temp_old, $temp_new, $perm_old, $perm_new);
+    return [$temp_old, $temp_new, $perm_old, $perm_new];
   }
 
   /**
diff --git a/core/modules/file/tests/src/Kernel/ValidateTest.php b/core/modules/file/tests/src/Kernel/ValidateTest.php
index 0bfcfdd..2fc8817 100644
--- a/core/modules/file/tests/src/Kernel/ValidateTest.php
+++ b/core/modules/file/tests/src/Kernel/ValidateTest.php
@@ -16,23 +16,23 @@ function testCallerValidation() {
     $file = $this->createFile();
 
     // Empty validators.
-    $this->assertEqual(file_validate($file, array()), array(), 'Validating an empty array works successfully.');
-    $this->assertFileHooksCalled(array('validate'));
+    $this->assertEqual(file_validate($file, []), [], 'Validating an empty array works successfully.');
+    $this->assertFileHooksCalled(['validate']);
 
     // Use the file_test.module's test validator to ensure that passing tests
     // return correctly.
     file_test_reset();
-    file_test_set_return('validate', array());
-    $passing = array('file_test_validator' => array(array()));
-    $this->assertEqual(file_validate($file, $passing), array(), 'Validating passes.');
-    $this->assertFileHooksCalled(array('validate'));
+    file_test_set_return('validate', []);
+    $passing = ['file_test_validator' => [[]]];
+    $this->assertEqual(file_validate($file, $passing), [], 'Validating passes.');
+    $this->assertFileHooksCalled(['validate']);
 
     // Now test for failures in validators passed in and by hook_validate.
     file_test_reset();
-    file_test_set_return('validate', array('Epic fail'));
-    $failing = array('file_test_validator' => array(array('Failed', 'Badly')));
-    $this->assertEqual(file_validate($file, $failing), array('Failed', 'Badly', 'Epic fail'), 'Validating returns errors.');
-    $this->assertFileHooksCalled(array('validate'));
+    file_test_set_return('validate', ['Epic fail']);
+    $failing = ['file_test_validator' => [['Failed', 'Badly']]];
+    $this->assertEqual(file_validate($file, $failing), ['Failed', 'Badly', 'Epic fail'], 'Validating returns errors.');
+    $this->assertFileHooksCalled(['validate']);
   }
 
 }
diff --git a/core/modules/file/tests/src/Kernel/Views/ExtensionViewsFieldTest.php b/core/modules/file/tests/src/Kernel/Views/ExtensionViewsFieldTest.php
index 221c011..867ab7a 100644
--- a/core/modules/file/tests/src/Kernel/Views/ExtensionViewsFieldTest.php
+++ b/core/modules/file/tests/src/Kernel/Views/ExtensionViewsFieldTest.php
@@ -18,21 +18,21 @@ class ExtensionViewsFieldTest extends ViewsKernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('file', 'file_test_views', 'user');
+  public static $modules = ['file', 'file_test_views', 'user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('file_extension_view');
+  public static $testViews = ['file_extension_view'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
-    ViewTestData::createTestViews(get_class($this), array('file_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['file_test_views']);
 
     $this->installEntitySchema('file');
 
diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/process/d6/CckFileTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/process/d6/CckFileTest.php
index 1ee73a8..1cce989 100644
--- a/core/modules/file/tests/src/Unit/Plugin/migrate/process/d6/CckFileTest.php
+++ b/core/modules/file/tests/src/Unit/Plugin/migrate/process/d6/CckFileTest.php
@@ -25,26 +25,26 @@ public function testTransformAltTitle() {
     $migration_plugin = $this->prophesize(MigrateProcessInterface::class);
     $migration_plugin->transform(1, $executable, $row, 'foo')->willReturn(1);
 
-    $plugin = new CckFile(array(), 'd6_cck_file', array(), $migration, $migration_plugin->reveal());
+    $plugin = new CckFile([], 'd6_cck_file', [], $migration, $migration_plugin->reveal());
 
-    $options = array(
+    $options = [
       'alt' => 'Foobaz',
       'title' => 'Wambooli',
-    );
-    $value = array(
+    ];
+    $value = [
       'fid' => 1,
       'list' => TRUE,
       'data' => serialize($options),
-    );
+    ];
 
     $transformed = $plugin->transform($value, $executable, $row, 'foo');
-    $expected = array(
+    $expected = [
       'target_id' => 1,
       'display' => TRUE,
       'description' => '',
       'alt' => 'Foobaz',
       'title' => 'Wambooli',
-    );
+    ];
     $this->assertSame($expected, $transformed);
   }
 
diff --git a/core/modules/filter/filter.api.php b/core/modules/filter/filter.api.php
index 5bf973f..bf4c52e 100644
--- a/core/modules/filter/filter.api.php
+++ b/core/modules/filter/filter.api.php
@@ -18,9 +18,9 @@
  */
 function hook_filter_info_alter(&$info) {
   // Alter the default settings of the URL filter provided by core.
-  $info['filter_url']['default_settings'] = array(
+  $info['filter_url']['default_settings'] = [
     'filter_url_length' => 100,
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/filter/filter.module b/core/modules/filter/filter.module
index f52614a..e309534 100644
--- a/core/modules/filter/filter.module
+++ b/core/modules/filter/filter.module
@@ -21,11 +21,11 @@ function filter_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.filter':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Filter module allows administrators to configure text formats. Text formats change how HTML tags and other text will be <em>processed and displayed</em> in the site. They are used to transform text, and also help to defend your web site against potentially damaging input from malicious users. Visual text editors can be associated with text formats by using the <a href=":editor_help">Text Editor module</a>. For more information, see the <a href=":filter_do">online documentation for the Filter module</a>.', array(':filter_do' => 'https://www.drupal.org/documentation/modules/filter/', ':editor_help' => (\Drupal::moduleHandler()->moduleExists('editor')) ? \Drupal::url('help.page', array('name' => 'editor')) : '#')) . '</p>';
+      $output .= '<p>' . t('The Filter module allows administrators to configure text formats. Text formats change how HTML tags and other text will be <em>processed and displayed</em> in the site. They are used to transform text, and also help to defend your web site against potentially damaging input from malicious users. Visual text editors can be associated with text formats by using the <a href=":editor_help">Text Editor module</a>. For more information, see the <a href=":filter_do">online documentation for the Filter module</a>.', [':filter_do' => 'https://www.drupal.org/documentation/modules/filter/', ':editor_help' => (\Drupal::moduleHandler()->moduleExists('editor')) ? \Drupal::url('help.page', ['name' => 'editor']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing text formats') . '</dt>';
-      $output .= '<dd>' . t('You can create and edit text formats on the <a href=":formats">Text formats page</a> (if the Text Editor module is enabled, this page is named Text formats and editors). One text format is included by default: Plain text (which removes all HTML tags). Additional text formats may be created during installation. You can create a text format by clicking "<a href=":add_format">Add text format</a>".', array(':formats' => \Drupal::url('filter.admin_overview'), ':add_format' => \Drupal::url('filter.format_add'))) . '</dd>';
+      $output .= '<dd>' . t('You can create and edit text formats on the <a href=":formats">Text formats page</a> (if the Text Editor module is enabled, this page is named Text formats and editors). One text format is included by default: Plain text (which removes all HTML tags). Additional text formats may be created during installation. You can create a text format by clicking "<a href=":add_format">Add text format</a>".', [':formats' => \Drupal::url('filter.admin_overview'), ':add_format' => \Drupal::url('filter.format_add')]) . '</dd>';
       $output .= '<dt>' . t('Assigning roles to text formats') . '</dt>';
       $output .= '<dd>' . t('You can define which users will be able to use each text format by selecting roles. To ensure security, anonymous and untrusted users should only have access to text formats that restrict them to either plain text or a safe set of HTML tags. This is because HTML tags can allow embedding malicious links or scripts in text. More trusted registered users may be granted permission to use less restrictive text formats in order to create rich text. <strong>Improper text format configuration is a security risk.</strong>') . '</dd>';
       $output .= '<dt>' . t('Selecting filters') . '</dt>';
@@ -39,7 +39,7 @@ function filter_help($route_name, RouteMatchInterface $route_match) {
       return $output;
 
     case 'filter.admin_overview':
-      $output = '<p>' . t('Text formats define how text is filtered for output and how HTML tags and other text is displayed, replaced, or removed. <strong>Improper text format configuration is a security risk.</strong> Learn more on the <a href=":filter_help">Filter module help page</a>.', array(':filter_help' => \Drupal::url('help.page', array('name' => 'filter')))) . '</p>';
+      $output = '<p>' . t('Text formats define how text is filtered for output and how HTML tags and other text is displayed, replaced, or removed. <strong>Improper text format configuration is a security risk.</strong> Learn more on the <a href=":filter_help">Filter module help page</a>.', [':filter_help' => \Drupal::url('help.page', ['name' => 'filter'])]) . '</p>';
       $output .= '<p>' . t('Text formats are presented on content editing pages in the order defined on this page. The first format available to a user will be selected by default.') . '</p>';
       return $output;
 
@@ -53,29 +53,29 @@ function filter_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function filter_theme() {
-  return array(
-    'filter_tips' => array(
-      'variables' => array('tips' => NULL, 'long' => FALSE),
-    ),
-    'text_format_wrapper' => array(
-      'variables' => array(
+  return [
+    'filter_tips' => [
+      'variables' => ['tips' => NULL, 'long' => FALSE],
+    ],
+    'text_format_wrapper' => [
+      'variables' => [
         'children' => NULL,
         'description' => NULL,
-        'attributes' => array(),
-      ),
-    ),
-    'filter_guidelines' => array(
-      'variables' => array('format' => NULL),
-    ),
-    'filter_caption' => array(
-      'variables' => array(
+        'attributes' => [],
+      ],
+    ],
+    'filter_guidelines' => [
+      'variables' => ['format' => NULL],
+    ],
+    'filter_caption' => [
+      'variables' => [
         'node' => NULL,
         'tag' => NULL,
         'caption' => NULL,
         'classes' => NULL,
-      ),
-    )
-  );
+      ],
+    ]
+  ];
 }
 
 /**
@@ -93,7 +93,7 @@ function filter_theme() {
  * @see filter_formats_reset()
  */
 function filter_formats(AccountInterface $account = NULL) {
-  $formats = &drupal_static(__FUNCTION__, array());
+  $formats = &drupal_static(__FUNCTION__, []);
 
   // All available formats are cached for performance.
   if (!isset($formats['all'])) {
@@ -102,7 +102,7 @@ function filter_formats(AccountInterface $account = NULL) {
       $formats['all'] = $cache->data;
     }
     else {
-      $formats['all'] = \Drupal::entityManager()->getStorage('filter_format')->loadByProperties(array('status' => TRUE));
+      $formats['all'] = \Drupal::entityManager()->getStorage('filter_format')->loadByProperties(['status' => TRUE]);
       uasort($formats['all'], 'Drupal\Core\Config\Entity\ConfigEntityBase::sort');
       \Drupal::cache()->set("filter_formats:{$language_interface->getId()}", $formats['all'], Cache::PERMANENT, \Drupal::entityManager()->getDefinition('filter_format')->getListCacheTags());
     }
@@ -116,7 +116,7 @@ function filter_formats(AccountInterface $account = NULL) {
   // Build a list of user-specific formats.
   $account_id = $account->id();
   if (!isset($formats['user'][$account_id])) {
-    $formats['user'][$account_id] = array();
+    $formats['user'][$account_id] = [];
     foreach ($formats['all'] as $format) {
       if ($format->access('use', $account)) {
         $formats['user'][$account_id][$format->id()] = $format;
@@ -152,7 +152,7 @@ function filter_get_roles_by_format(FilterFormatInterface $format) {
   }
   // Do not list any roles if the permission does not exist.
   $permission = $format->getPermissionName();
-  return !empty($permission) ? user_role_names(FALSE, $permission) : array();
+  return !empty($permission) ? user_role_names(FALSE, $permission) : [];
 }
 
 /**
@@ -166,7 +166,7 @@ function filter_get_roles_by_format(FilterFormatInterface $format) {
  *   the text format ID and ordered by weight.
  */
 function filter_get_formats_by_role($rid) {
-  $formats = array();
+  $formats = [];
   foreach (filter_formats() as $format) {
     $roles = filter_get_roles_by_format($format);
     if (isset($roles[$rid])) {
@@ -291,14 +291,14 @@ function filter_fallback_format() {
  *
  * @ingroup sanitization
  */
-function check_markup($text, $format_id = NULL, $langcode = '', $filter_types_to_skip = array()) {
-  $build = array(
+function check_markup($text, $format_id = NULL, $langcode = '', $filter_types_to_skip = []) {
+  $build = [
     '#type' => 'processed_text',
     '#text' => $text,
     '#format' => $format_id,
     '#filter_types_to_skip' => $filter_types_to_skip,
     '#langcode' => $langcode,
-  );
+  ];
   return \Drupal::service('renderer')->renderPlain($build);
 }
 
@@ -337,11 +337,11 @@ function filter_form_access_denied($element) {
 function _filter_tips($format_id, $long = FALSE) {
   $formats = filter_formats(\Drupal::currentUser());
 
-  $tips = array();
+  $tips = [];
 
   // If only listing one format, extract it from the $formats array.
   if ($format_id != -1) {
-    $formats = array($formats[$format_id]);
+    $formats = [$formats[$format_id]];
   }
 
   foreach ($formats as $format) {
@@ -349,10 +349,10 @@ function _filter_tips($format_id, $long = FALSE) {
       if ($filter->status) {
         $tip = $filter->tips($long);
         if (isset($tip)) {
-          $tips[$format->label()][$name] = array(
-            'tip' => array('#markup' => $tip),
+          $tips[$format->label()][$name] = [
+            'tip' => ['#markup' => $tip],
             'id' => $name,
-          );
+          ];
         }
       }
     }
@@ -372,10 +372,10 @@ function _filter_tips($format_id, $long = FALSE) {
  */
 function template_preprocess_filter_guidelines(&$variables) {
   $format = $variables['format'];
-  $variables['tips'] = array(
+  $variables['tips'] = [
     '#theme' => 'filter_tips',
     '#tips' => _filter_tips($format->id(), FALSE),
-  );
+  ];
 }
 
 /**
@@ -431,11 +431,11 @@ function template_preprocess_filter_tips(&$variables) {
       $tiplist[$tip_key]['attributes'] = new Attribute();
     }
 
-    $variables['tips'][$name] = array(
+    $variables['tips'][$name] = [
       'attributes' => new Attribute(),
       'name' => $name,
       'list' => $tiplist,
-    );
+    ];
   }
 
   $variables['multiple'] = count($tips) > 1;
@@ -470,7 +470,7 @@ function _filter_url($text, $filter) {
   // callback function to process matches of the regexp. The callback function
   // is to return the replacement for the match. The array is used and
   // matching/replacement done below inside some loops.
-  $tasks = array();
+  $tasks = [];
 
   // Prepare protocols pattern for absolute URLs.
   // \Drupal\Component\Utility\UrlHelper::stripDangerousProtocols() will replace
@@ -643,12 +643,12 @@ function _filter_url_parse_partial_links($match) {
  *   cached $comments are reset.
  */
 function _filter_url_escape_comments($match, $escape = NULL) {
-  static $mode, $comments = array();
+  static $mode, $comments = [];
 
   if (isset($escape)) {
     $mode = $escape;
     if ($escape) {
-      $comments = array();
+      $comments = [];
     }
     return;
   }
diff --git a/core/modules/filter/src/Annotation/Filter.php b/core/modules/filter/src/Annotation/Filter.php
index 9d7d1cc..4d90c58 100644
--- a/core/modules/filter/src/Annotation/Filter.php
+++ b/core/modules/filter/src/Annotation/Filter.php
@@ -73,6 +73,6 @@ class Filter extends Plugin {
    *
    * @var array (optional)
    */
-  public $settings = array();
+  public $settings = [];
 
 }
diff --git a/core/modules/filter/src/Controller/FilterController.php b/core/modules/filter/src/Controller/FilterController.php
index f5ebe79..09652b7 100644
--- a/core/modules/filter/src/Controller/FilterController.php
+++ b/core/modules/filter/src/Controller/FilterController.php
@@ -24,11 +24,11 @@ class FilterController {
   function filterTips(FilterFormatInterface $filter_format = NULL) {
     $tips = $filter_format ? $filter_format->id() : -1;
 
-    $build = array(
+    $build = [
       '#theme' => 'filter_tips',
       '#long' => TRUE,
       '#tips' => _filter_tips($tips, TRUE),
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/filter/src/Element/ProcessedText.php b/core/modules/filter/src/Element/ProcessedText.php
index 0d09870..6e2b3ec 100644
--- a/core/modules/filter/src/Element/ProcessedText.php
+++ b/core/modules/filter/src/Element/ProcessedText.php
@@ -21,15 +21,15 @@ class ProcessedText extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
+    return [
       '#text' => '',
       '#format' => NULL,
-      '#filter_types_to_skip' => array(),
+      '#filter_types_to_skip' => [],
       '#langcode' => '',
-      '#pre_render' => array(
-        array($class, 'preRenderText'),
-      ),
-    );
+      '#pre_render' => [
+        [$class, 'preRenderText'],
+      ],
+    ];
   }
 
   /**
@@ -77,7 +77,7 @@ public static function preRenderText($element) {
     // cannot be filtered.
     if (!$format || !$format->status()) {
       $message = !$format ? 'Missing text format: %format.' : 'Disabled text format: %format.';
-      static::logger('filter')->alert($message, array('%format' => $format_id));
+      static::logger('filter')->alert($message, ['%format' => $format_id]);
       $element['#markup'] = '';
       return $element;
     }
@@ -92,7 +92,7 @@ public static function preRenderText($element) {
 
     // Convert all Windows and Mac newlines to a single newline, so filters only
     // need to deal with one possibility.
-    $text = str_replace(array("\r\n", "\r"), "\n", $text);
+    $text = str_replace(["\r\n", "\r"], "\n", $text);
 
     // Get a complete list of filters, ordered properly.
     /** @var \Drupal\filter\Plugin\FilterInterface[] $filters **/
diff --git a/core/modules/filter/src/Element/TextFormat.php b/core/modules/filter/src/Element/TextFormat.php
index 0a80b31..16b4cf5 100644
--- a/core/modules/filter/src/Element/TextFormat.php
+++ b/core/modules/filter/src/Element/TextFormat.php
@@ -40,13 +40,13 @@ class TextFormat extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#process' => array(
-        array($class, 'processFormat'),
-      ),
+    return [
+      '#process' => [
+        [$class, 'processFormat'],
+      ],
       '#base_type' => 'textarea',
-      '#theme_wrappers' => array('text_format_wrapper'),
-    );
+      '#theme_wrappers' => ['text_format_wrapper'],
+    ];
   }
 
   /**
@@ -84,7 +84,7 @@ public static function processFormat(&$element, FormStateInterface $form_state,
 
     // Ensure that children appear as subkeys of this element.
     $element['#tree'] = TRUE;
-    $blacklist = array(
+    $blacklist = [
       // Make \Drupal::formBuilder()->doBuildForm() regenerate child properties.
       '#parents',
       '#id',
@@ -104,7 +104,7 @@ public static function processFormat(&$element, FormStateInterface $form_state,
       '#attached',
       '#processed',
       '#theme_wrappers',
-    );
+    ];
     // Move this element into sub-element 'value'.
     unset($element['value']);
     foreach (Element::properties($element) as $key) {
@@ -116,16 +116,16 @@ public static function processFormat(&$element, FormStateInterface $form_state,
     $element['value']['#type'] = $element['#base_type'];
     $element['value'] += static::elementInfo()->getInfo($element['#base_type']);
     // Make sure the #default_value key is set, so we can use it below.
-    $element['value'] += array('#default_value' => '');
+    $element['value'] += ['#default_value' => ''];
 
     // Turn original element into a text format wrapper.
     $element['#attached']['library'][] = 'filter/drupal.filter';
 
     // Setup child container for the text format widget.
-    $element['format'] = array(
+    $element['format'] = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('filter-wrapper')),
-    );
+      '#attributes' => ['class' => ['filter-wrapper']],
+    ];
 
     // Get a list of formats that the current user has access to.
     $formats = filter_formats($user);
@@ -162,30 +162,30 @@ public static function processFormat(&$element, FormStateInterface $form_state,
     }
 
     // Prepare text format guidelines.
-    $element['format']['guidelines'] = array(
+    $element['format']['guidelines'] = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('filter-guidelines')),
+      '#attributes' => ['class' => ['filter-guidelines']],
       '#weight' => 20,
-    );
-    $options = array();
+    ];
+    $options = [];
     foreach ($formats as $format) {
       $options[$format->id()] = $format->label();
-      $element['format']['guidelines'][$format->id()] = array(
+      $element['format']['guidelines'][$format->id()] = [
         '#theme' => 'filter_guidelines',
         '#format' => $format,
-      );
+      ];
     }
 
-    $element['format']['format'] = array(
+    $element['format']['format'] = [
       '#type' => 'select',
       '#title' => t('Text format'),
       '#options' => $options,
       '#default_value' => $element['#format'],
       '#access' => count($formats) > 1,
       '#weight' => 10,
-      '#attributes' => array('class' => array('filter-list')),
-      '#parents' => array_merge($element['#parents'], array('format')),
-    );
+      '#attributes' => ['class' => ['filter-list']],
+      '#parents' => array_merge($element['#parents'], ['format']),
+    ];
 
     $element['format']['help'] = [
       '#type' => 'container',
@@ -225,7 +225,7 @@ public static function processFormat(&$element, FormStateInterface $form_state,
 
       // Prepend #pre_render callback to replace field value with user notice
       // prior to rendering.
-      $element['value'] += array('#pre_render' => array());
+      $element['value'] += ['#pre_render' => []];
       array_unshift($element['value']['#pre_render'], 'filter_form_access_denied');
 
       // Cosmetic adjustments.
diff --git a/core/modules/filter/src/Entity/FilterFormat.php b/core/modules/filter/src/Entity/FilterFormat.php
index 8ae4d60..9dbaa62 100644
--- a/core/modules/filter/src/Entity/FilterFormat.php
+++ b/core/modules/filter/src/Entity/FilterFormat.php
@@ -112,7 +112,7 @@ class FilterFormat extends ConfigEntityBase implements FilterFormatInterface, En
    *
    * @var array
    */
-  protected $filters = array();
+  protected $filters = [];
 
   /**
    * Holds the collection of filters that are attached to this format.
@@ -146,7 +146,7 @@ public function filters($instance_id = NULL) {
    * {@inheritdoc}
    */
   public function getPluginCollections() {
-    return array('filters' => $this->filters());
+    return ['filters' => $this->filters()];
   }
 
   /**
@@ -182,7 +182,7 @@ public function disable() {
     parent::disable();
 
     // Allow modules to react on text format deletion.
-    \Drupal::moduleHandler()->invokeAll('filter_format_disable', array($this));
+    \Drupal::moduleHandler()->invokeAll('filter_format_disable', [$this]);
 
     // Clear the filter cache whenever a text format is disabled.
     filter_formats_reset();
@@ -222,7 +222,7 @@ public function postSave(EntityStorageInterface $storage, $update = TRUE) {
       if (($roles = $this->get('roles')) && $permission = $this->getPermissionName()) {
         foreach (user_roles() as $rid => $name) {
           $enabled = in_array($rid, $roles, TRUE);
-          user_role_change_permissions($rid, array($permission => $enabled));
+          user_role_change_permissions($rid, [$permission => $enabled]);
         }
       }
     }
@@ -252,7 +252,7 @@ public function getPermissionName() {
    * {@inheritdoc}
    */
   public function getFilterTypes() {
-    $filter_types = array();
+    $filter_types = [];
 
     $filters = $this->filters();
     foreach ($filters as $filter) {
@@ -386,7 +386,7 @@ public function getHtmlRestrictions() {
       // whitelisting filters were used, then effectively nothing is allowed.
       if (isset($restrictions['allowed'])) {
         if (count($restrictions['allowed']) === 1 && array_key_exists('*', $restrictions['allowed']) && !isset($restrictions['forbidden_tags'])) {
-          $restrictions['allowed'] = array();
+          $restrictions['allowed'] = [];
         }
       }
 
diff --git a/core/modules/filter/src/FilterFormatAccessControlHandler.php b/core/modules/filter/src/FilterFormatAccessControlHandler.php
index 0c411a7..090944a 100644
--- a/core/modules/filter/src/FilterFormatAccessControlHandler.php
+++ b/core/modules/filter/src/FilterFormatAccessControlHandler.php
@@ -41,7 +41,7 @@ protected function checkAccess(EntityInterface $filter_format, $operation, Accou
       return AccessResult::forbidden();
     }
 
-    if (in_array($operation, array('disable', 'update'))) {
+    if (in_array($operation, ['disable', 'update'])) {
       return parent::checkAccess($filter_format, $operation, $account);
     }
 
diff --git a/core/modules/filter/src/FilterFormatAddForm.php b/core/modules/filter/src/FilterFormatAddForm.php
index 1cc855f..cb9b598 100644
--- a/core/modules/filter/src/FilterFormatAddForm.php
+++ b/core/modules/filter/src/FilterFormatAddForm.php
@@ -21,7 +21,7 @@ public function form(array $form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
-    drupal_set_message($this->t('Added text format %format.', array('%format' => $this->entity->label())));
+    drupal_set_message($this->t('Added text format %format.', ['%format' => $this->entity->label()]));
     return $this->entity;
   }
 
diff --git a/core/modules/filter/src/FilterFormatEditForm.php b/core/modules/filter/src/FilterFormatEditForm.php
index ee2f7fb..9ffd8c8 100644
--- a/core/modules/filter/src/FilterFormatEditForm.php
+++ b/core/modules/filter/src/FilterFormatEditForm.php
@@ -29,7 +29,7 @@ public function form(array $form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
-    drupal_set_message($this->t('The text format %format has been updated.', array('%format' => $this->entity->label())));
+    drupal_set_message($this->t('The text format %format has been updated.', ['%format' => $this->entity->label()]));
     return $this->entity;
   }
 
diff --git a/core/modules/filter/src/FilterFormatFormBase.php b/core/modules/filter/src/FilterFormatFormBase.php
index c60171c..cbcb632 100644
--- a/core/modules/filter/src/FilterFormatFormBase.php
+++ b/core/modules/filter/src/FilterFormatFormBase.php
@@ -21,34 +21,34 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['#tree'] = TRUE;
     $form['#attached']['library'][] = 'filter/drupal.filter.admin';
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Name'),
       '#default_value' => $format->label(),
       '#required' => TRUE,
       '#weight' => -30,
-    );
-    $form['format'] = array(
+    ];
+    $form['format'] = [
       '#type' => 'machine_name',
       '#required' => TRUE,
       '#default_value' => $format->id(),
       '#maxlength' => 255,
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
-        'source' => array('name'),
-      ),
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
+        'source' => ['name'],
+      ],
       '#disabled' => !$format->isNew(),
       '#weight' => -20,
-    );
+    ];
 
     // Add user role access selection.
-    $form['roles'] = array(
+    $form['roles'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Roles'),
       '#options' => array_map('\Drupal\Component\Utility\Html::escape', user_role_names()),
       '#disabled' => $is_fallback,
       '#weight' => -10,
-    );
+    ];
     if ($is_fallback) {
       $form['roles']['#description'] = $this->t('All roles for this text format must be enabled and cannot be changed.');
     }
@@ -64,13 +64,13 @@ public function form(array $form, FormStateInterface $form_state) {
       // When a filter is missing, it is replaced by the null filter. Remove it
       // here, so that saving the form will remove the missing filter.
       if ($filter instanceof FilterNull) {
-        drupal_set_message($this->t('The %filter filter is missing, and will be removed once this format is saved.', array('%filter' => $filter_id)), 'warning');
+        drupal_set_message($this->t('The %filter filter is missing, and will be removed once this format is saved.', ['%filter' => $filter_id]), 'warning');
         $filters->removeInstanceID($filter_id);
       }
     }
 
     // Filter status.
-    $form['filters']['status'] = array(
+    $form['filters']['status'] = [
       '#type' => 'item',
       '#title' => $this->t('Enabled filters'),
       '#prefix' => '<div id="filters-status-wrapper">',
@@ -79,72 +79,72 @@ public function form(array $form, FormStateInterface $form_state) {
       // value, since 'filters' should only contain filter definitions.
       // See https://www.drupal.org/node/1829202.
       '#input' => FALSE,
-    );
+    ];
     // Filter order (tabledrag).
-    $form['filters']['order'] = array(
+    $form['filters']['order'] = [
       '#type' => 'table',
       // For filter.admin.js
-      '#attributes' => array('id' => 'filter-order'),
+      '#attributes' => ['id' => 'filter-order'],
       '#title' => $this->t('Filter processing order'),
-      '#tabledrag' => array(
-        array(
+      '#tabledrag' => [
+        [
          'action' => 'order',
          'relationship' => 'sibling',
          'group' => 'filter-order-weight',
-        ),
-      ),
+        ],
+      ],
       '#tree' => FALSE,
       '#input' => FALSE,
-      '#theme_wrappers' => array('form_element'),
-    );
+      '#theme_wrappers' => ['form_element'],
+    ];
     // Filter settings.
-    $form['filter_settings'] = array(
+    $form['filter_settings'] = [
       '#type' => 'vertical_tabs',
       '#title' => $this->t('Filter settings'),
-    );
+    ];
 
     foreach ($filters as $name => $filter) {
-      $form['filters']['status'][$name] = array(
+      $form['filters']['status'][$name] = [
         '#type' => 'checkbox',
         '#title' => $filter->getLabel(),
         '#default_value' => $filter->status,
-        '#parents' => array('filters', $name, 'status'),
+        '#parents' => ['filters', $name, 'status'],
         '#description' => $filter->getDescription(),
         '#weight' => $filter->weight,
-      );
+      ];
 
       $form['filters']['order'][$name]['#attributes']['class'][] = 'draggable';
       $form['filters']['order'][$name]['#weight'] = $filter->weight;
-      $form['filters']['order'][$name]['filter'] = array(
+      $form['filters']['order'][$name]['filter'] = [
         '#markup' => $filter->getLabel(),
-      );
-      $form['filters']['order'][$name]['weight'] = array(
+      ];
+      $form['filters']['order'][$name]['weight'] = [
         '#type' => 'weight',
-        '#title' => $this->t('Weight for @title', array('@title' => $filter->getLabel())),
+        '#title' => $this->t('Weight for @title', ['@title' => $filter->getLabel()]),
         '#title_display' => 'invisible',
         '#delta' => 50,
         '#default_value' => $filter->weight,
-        '#parents' => array('filters', $name, 'weight'),
-        '#attributes' => array('class' => array('filter-order-weight')),
-      );
+        '#parents' => ['filters', $name, 'weight'],
+        '#attributes' => ['class' => ['filter-order-weight']],
+      ];
 
       // Retrieve the settings form of the filter plugin. The plugin should not be
       // aware of the text format. Therefore, it only receives a set of minimal
       // base properties to allow advanced implementations to work.
-      $settings_form = array(
-        '#parents' => array('filters', $name, 'settings'),
+      $settings_form = [
+        '#parents' => ['filters', $name, 'settings'],
         '#tree' => TRUE,
-      );
+      ];
       $settings_form = $filter->settingsForm($settings_form, $form_state);
       if (!empty($settings_form)) {
-        $form['filters']['settings'][$name] = array(
+        $form['filters']['settings'][$name] = [
           '#type' => 'details',
           '#title' => $filter->getLabel(),
           '#open' => TRUE,
           '#weight' => $filter->weight,
-          '#parents' => array('filters', $name, 'settings'),
+          '#parents' => ['filters', $name, 'settings'],
           '#group' => 'filter_settings',
-        );
+        ];
         $form['filters']['settings'][$name] += $settings_form;
       }
     }
@@ -189,7 +189,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       ->condition('name', $format_name)
       ->execute();
     if ($format_exists) {
-      $form_state->setErrorByName('name', $this->t('Text format names must be unique. A format named %name already exists.', array('%name' => $format_name)));
+      $form_state->setErrorByName('name', $this->t('Text format names must be unique. A format named %name already exists.', ['%name' => $format_name]));
     }
   }
 
@@ -216,7 +216,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     // Save user permissions.
     if ($permission = $format->getPermissionName()) {
       foreach ($form_state->getValue('roles') as $rid => $enabled) {
-        user_role_change_permissions($rid, array($permission => $enabled));
+        user_role_change_permissions($rid, [$permission => $enabled]);
       }
     }
 
diff --git a/core/modules/filter/src/FilterPluginCollection.php b/core/modules/filter/src/FilterPluginCollection.php
index fc6ec06..81ebddf 100644
--- a/core/modules/filter/src/FilterPluginCollection.php
+++ b/core/modules/filter/src/FilterPluginCollection.php
@@ -114,7 +114,7 @@ public function getConfiguration() {
     // Because filters are disabled by default, this will never remove the
     // configuration of an enabled filter.
     foreach ($configuration as $instance_id => $instance_config) {
-      $default_config = array();
+      $default_config = [];
       $default_config['id'] = $instance_id;
       $default_config += $this->get($instance_id)->defaultConfiguration();
       if ($default_config === $instance_config) {
diff --git a/core/modules/filter/src/FilterPluginManager.php b/core/modules/filter/src/FilterPluginManager.php
index d369a6f..f41e016 100644
--- a/core/modules/filter/src/FilterPluginManager.php
+++ b/core/modules/filter/src/FilterPluginManager.php
@@ -38,7 +38,7 @@ public function __construct(\Traversable $namespaces, CacheBackendInterface $cac
   /**
    * {@inheritdoc}
    */
-  public function getFallbackPluginId($plugin_id, array $configuration = array()) {
+  public function getFallbackPluginId($plugin_id, array $configuration = []) {
     return 'filter_null';
   }
 
diff --git a/core/modules/filter/src/Form/FilterDisableForm.php b/core/modules/filter/src/Form/FilterDisableForm.php
index a4582fc..c6e8294 100644
--- a/core/modules/filter/src/Form/FilterDisableForm.php
+++ b/core/modules/filter/src/Form/FilterDisableForm.php
@@ -15,7 +15,7 @@ class FilterDisableForm extends EntityConfirmFormBase {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to disable the text format %format?', array('%format' => $this->entity->label()));
+    return $this->t('Are you sure you want to disable the text format %format?', ['%format' => $this->entity->label()]);
   }
 
   /**
@@ -44,7 +44,7 @@ public function getDescription() {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->disable()->save();
-    drupal_set_message($this->t('Disabled text format %format.', array('%format' => $this->entity->label())));
+    drupal_set_message($this->t('Disabled text format %format.', ['%format' => $this->entity->label()]));
 
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
diff --git a/core/modules/filter/src/Plugin/Filter/FilterAlign.php b/core/modules/filter/src/Plugin/Filter/FilterAlign.php
index c0e431a..a3739ab 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterAlign.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterAlign.php
@@ -33,9 +33,9 @@ public function process($text, $langcode) {
         $node->removeAttribute('data-align');
 
         // If one of the allowed alignments, add the corresponding class.
-        if (in_array($align, array('left', 'center', 'right'))) {
+        if (in_array($align, ['left', 'center', 'right'])) {
           $classes = $node->getAttribute('class');
-          $classes = (strlen($classes) > 0) ? explode(' ', $classes) : array();
+          $classes = (strlen($classes) > 0) ? explode(' ', $classes) : [];
           $classes[] = 'align-' . $align;
           $node->setAttribute('class', implode(' ', $classes));
         }
diff --git a/core/modules/filter/src/Plugin/Filter/FilterCaption.php b/core/modules/filter/src/Plugin/Filter/FilterCaption.php
index c23f1f7..62c8395 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterCaption.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterCaption.php
@@ -40,7 +40,7 @@ public function process($text, $langcode) {
         // Sanitize caption: decode HTML encoding, limit allowed HTML tags; only
         // allow inline tags that are allowed by default, plus <br>.
         $caption = Html::decodeEntities($caption);
-        $caption = FilteredMarkup::create(Xss::filter($caption, array('a', 'em', 'strong', 'cite', 'code', 'br')));
+        $caption = FilteredMarkup::create(Xss::filter($caption, ['a', 'em', 'strong', 'cite', 'code', 'br']));
 
         // The caption must be non-empty.
         if (Unicode::strlen($caption) === 0) {
@@ -54,7 +54,7 @@ public function process($text, $langcode) {
         $classes = $node->getAttribute('class');
         $node->removeAttribute('class');
         $node = ($node->parentNode->tagName === 'a') ? $node->parentNode : $node;
-        $filter_caption = array(
+        $filter_caption = [
           '#theme' => 'filter_caption',
           // We pass the unsanitized string because this is a text format
           // filter, and after filtering, we always assume the output is safe.
@@ -63,7 +63,7 @@ public function process($text, $langcode) {
           '#tag' => $tag,
           '#caption' => $caption,
           '#classes' => $classes,
-        );
+        ];
         $altered_html = drupal_render($filter_caption);
 
         // Load the altered HTML into a new DOMDocument and retrieve the element.
@@ -82,11 +82,11 @@ public function process($text, $langcode) {
       }
 
       $result->setProcessedText(Html::serialize($dom))
-        ->addAttachments(array(
-          'library' => array(
+        ->addAttachments([
+          'library' => [
             'filter/caption',
-          ),
-        ));
+          ],
+        ]);
     }
 
     return $result;
diff --git a/core/modules/filter/src/Plugin/Filter/FilterHtml.php b/core/modules/filter/src/Plugin/Filter/FilterHtml.php
index 1dc71fb..882bcc0 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterHtml.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterHtml.php
@@ -40,27 +40,27 @@ class FilterHtml extends FilterBase {
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $form['allowed_html'] = array(
+    $form['allowed_html'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Allowed HTML tags'),
       '#default_value' => $this->settings['allowed_html'],
       '#description' => $this->t('A list of HTML tags that can be used. By default only the <em>lang</em> and <em>dir</em> attributes are allowed for all HTML tags. Each HTML tag may have attributes which are treated as allowed attribute names for that HTML tag. Each attribute may allow all values, or only allow specific values. Attribute names or values may be written as a prefix and wildcard like <em>jump-*</em>. JavaScript event attributes, JavaScript URLs, and CSS are always stripped.'),
-      '#attached' => array(
-        'library' => array(
+      '#attached' => [
+        'library' => [
           'filter/drupal.filter.filter_html.admin',
-        ),
-      ),
-    );
-    $form['filter_html_help'] = array(
+        ],
+      ],
+    ];
+    $form['filter_html_help'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Display basic HTML help in long filter tips'),
       '#default_value' => $this->settings['filter_html_help'],
-    );
-    $form['filter_html_nofollow'] = array(
+    ];
+    $form['filter_html_nofollow'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Add rel="nofollow" to all links'),
       '#default_value' => $this->settings['filter_html_nofollow'],
-    );
+    ];
     return $form;
   }
 
@@ -339,7 +339,7 @@ public function tips($long = FALSE) {
     if (!($allowed_html = $this->settings['allowed_html'])) {
       return;
     }
-    $output = $this->t('Allowed HTML tags: @tags', array('@tags' => $allowed_html));
+    $output = $this->t('Allowed HTML tags: @tags', ['@tags' => $allowed_html]);
     if (!$long) {
       return $output;
     }
@@ -350,117 +350,117 @@ public function tips($long = FALSE) {
     }
 
     $output .= '<p>' . $this->t('This site allows HTML content. While learning all of HTML may feel intimidating, learning how to use a very small number of the most basic HTML "tags" is very easy. This table provides examples for each tag that is enabled on this site.') . '</p>';
-    $output .= '<p>' . $this->t('For more information see W3C\'s <a href=":html-specifications">HTML Specifications</a> or use your favorite search engine to find other sites that explain HTML.', array(':html-specifications' => 'http://www.w3.org/TR/html/')) . '</p>';
-    $tips = array(
-      'a' => array($this->t('Anchors are used to make links to other pages.'), '<a href="' . $base_url . '">' . Html::escape(\Drupal::config('system.site')->get('name')) . '</a>'),
-      'br' => array($this->t('By default line break tags are automatically added, so use this tag to add additional ones. Use of this tag is different because it is not used with an open/close pair like all the others. Use the extra " /" inside the tag to maintain XHTML 1.0 compatibility'), $this->t('Text with <br />line break')),
-      'p' => array($this->t('By default paragraph tags are automatically added, so use this tag to add additional ones.'), '<p>' . $this->t('Paragraph one.') . '</p> <p>' . $this->t('Paragraph two.') . '</p>'),
-      'strong' => array($this->t('Strong', array(), array('context' => 'Font weight')), '<strong>' . $this->t('Strong', array(), array('context' => 'Font weight')) . '</strong>'),
-      'em' => array($this->t('Emphasized'), '<em>' . $this->t('Emphasized') . '</em>'),
-      'cite' => array($this->t('Cited'), '<cite>' . $this->t('Cited') . '</cite>'),
-      'code' => array($this->t('Coded text used to show programming source code'), '<code>' . $this->t('Coded') . '</code>'),
-      'b' => array($this->t('Bolded'), '<b>' . $this->t('Bolded') . '</b>'),
-      'u' => array($this->t('Underlined'), '<u>' . $this->t('Underlined') . '</u>'),
-      'i' => array($this->t('Italicized'), '<i>' . $this->t('Italicized') . '</i>'),
-      'sup' => array($this->t('Superscripted'), $this->t('<sup>Super</sup>scripted')),
-      'sub' => array($this->t('Subscripted'), $this->t('<sub>Sub</sub>scripted')),
-      'pre' => array($this->t('Preformatted'), '<pre>' . $this->t('Preformatted') . '</pre>'),
-      'abbr' => array($this->t('Abbreviation'), $this->t('<abbr title="Abbreviation">Abbrev.</abbr>')),
-      'acronym' => array($this->t('Acronym'), $this->t('<acronym title="Three-Letter Acronym">TLA</acronym>')),
-      'blockquote' => array($this->t('Block quoted'), '<blockquote>' . $this->t('Block quoted') . '</blockquote>'),
-      'q' => array($this->t('Quoted inline'), '<q>' . $this->t('Quoted inline') . '</q>'),
+    $output .= '<p>' . $this->t('For more information see W3C\'s <a href=":html-specifications">HTML Specifications</a> or use your favorite search engine to find other sites that explain HTML.', [':html-specifications' => 'http://www.w3.org/TR/html/']) . '</p>';
+    $tips = [
+      'a' => [$this->t('Anchors are used to make links to other pages.'), '<a href="' . $base_url . '">' . Html::escape(\Drupal::config('system.site')->get('name')) . '</a>'],
+      'br' => [$this->t('By default line break tags are automatically added, so use this tag to add additional ones. Use of this tag is different because it is not used with an open/close pair like all the others. Use the extra " /" inside the tag to maintain XHTML 1.0 compatibility'), $this->t('Text with <br />line break')],
+      'p' => [$this->t('By default paragraph tags are automatically added, so use this tag to add additional ones.'), '<p>' . $this->t('Paragraph one.') . '</p> <p>' . $this->t('Paragraph two.') . '</p>'],
+      'strong' => [$this->t('Strong', [], ['context' => 'Font weight']), '<strong>' . $this->t('Strong', [], ['context' => 'Font weight']) . '</strong>'],
+      'em' => [$this->t('Emphasized'), '<em>' . $this->t('Emphasized') . '</em>'],
+      'cite' => [$this->t('Cited'), '<cite>' . $this->t('Cited') . '</cite>'],
+      'code' => [$this->t('Coded text used to show programming source code'), '<code>' . $this->t('Coded') . '</code>'],
+      'b' => [$this->t('Bolded'), '<b>' . $this->t('Bolded') . '</b>'],
+      'u' => [$this->t('Underlined'), '<u>' . $this->t('Underlined') . '</u>'],
+      'i' => [$this->t('Italicized'), '<i>' . $this->t('Italicized') . '</i>'],
+      'sup' => [$this->t('Superscripted'), $this->t('<sup>Super</sup>scripted')],
+      'sub' => [$this->t('Subscripted'), $this->t('<sub>Sub</sub>scripted')],
+      'pre' => [$this->t('Preformatted'), '<pre>' . $this->t('Preformatted') . '</pre>'],
+      'abbr' => [$this->t('Abbreviation'), $this->t('<abbr title="Abbreviation">Abbrev.</abbr>')],
+      'acronym' => [$this->t('Acronym'), $this->t('<acronym title="Three-Letter Acronym">TLA</acronym>')],
+      'blockquote' => [$this->t('Block quoted'), '<blockquote>' . $this->t('Block quoted') . '</blockquote>'],
+      'q' => [$this->t('Quoted inline'), '<q>' . $this->t('Quoted inline') . '</q>'],
       // Assumes and describes tr, td, th.
-      'table' => array($this->t('Table'), '<table> <tr><th>' . $this->t('Table header') . '</th></tr> <tr><td>' . $this->t('Table cell') . '</td></tr> </table>'),
+      'table' => [$this->t('Table'), '<table> <tr><th>' . $this->t('Table header') . '</th></tr> <tr><td>' . $this->t('Table cell') . '</td></tr> </table>'],
       'tr' => NULL, 'td' => NULL, 'th' => NULL,
-      'del' => array($this->t('Deleted'), '<del>' . $this->t('Deleted') . '</del>'),
-      'ins' => array($this->t('Inserted'), '<ins>' . $this->t('Inserted') . '</ins>'),
+      'del' => [$this->t('Deleted'), '<del>' . $this->t('Deleted') . '</del>'],
+      'ins' => [$this->t('Inserted'), '<ins>' . $this->t('Inserted') . '</ins>'],
        // Assumes and describes li.
-      'ol' => array($this->t('Ordered list - use the &lt;li&gt; to begin each list item'), '<ol> <li>' . $this->t('First item') . '</li> <li>' . $this->t('Second item') . '</li> </ol>'),
-      'ul' => array($this->t('Unordered list - use the &lt;li&gt; to begin each list item'), '<ul> <li>' . $this->t('First item') . '</li> <li>' . $this->t('Second item') . '</li> </ul>'),
+      'ol' => [$this->t('Ordered list - use the &lt;li&gt; to begin each list item'), '<ol> <li>' . $this->t('First item') . '</li> <li>' . $this->t('Second item') . '</li> </ol>'],
+      'ul' => [$this->t('Unordered list - use the &lt;li&gt; to begin each list item'), '<ul> <li>' . $this->t('First item') . '</li> <li>' . $this->t('Second item') . '</li> </ul>'],
       'li' => NULL,
       // Assumes and describes dt and dd.
-      'dl' => array($this->t('Definition lists are similar to other HTML lists. &lt;dl&gt; begins the definition list, &lt;dt&gt; begins the definition term and &lt;dd&gt; begins the definition description.'), '<dl> <dt>' . $this->t('First term') . '</dt> <dd>' . $this->t('First definition') . '</dd> <dt>' . $this->t('Second term') . '</dt> <dd>' . $this->t('Second definition') . '</dd> </dl>'),
+      'dl' => [$this->t('Definition lists are similar to other HTML lists. &lt;dl&gt; begins the definition list, &lt;dt&gt; begins the definition term and &lt;dd&gt; begins the definition description.'), '<dl> <dt>' . $this->t('First term') . '</dt> <dd>' . $this->t('First definition') . '</dd> <dt>' . $this->t('Second term') . '</dt> <dd>' . $this->t('Second definition') . '</dd> </dl>'],
       'dt' => NULL, 'dd' => NULL,
-      'h1' => array($this->t('Heading'), '<h1>' . $this->t('Title') . '</h1>'),
-      'h2' => array($this->t('Heading'), '<h2>' . $this->t('Subtitle') . '</h2>'),
-      'h3' => array($this->t('Heading'), '<h3>' . $this->t('Subtitle three') . '</h3>'),
-      'h4' => array($this->t('Heading'), '<h4>' . $this->t('Subtitle four') . '</h4>'),
-      'h5' => array($this->t('Heading'), '<h5>' . $this->t('Subtitle five') . '</h5>'),
-      'h6' => array($this->t('Heading'), '<h6>' . $this->t('Subtitle six') . '</h6>')
-    );
-    $header = array($this->t('Tag Description'), $this->t('You Type'), $this->t('You Get'));
+      'h1' => [$this->t('Heading'), '<h1>' . $this->t('Title') . '</h1>'],
+      'h2' => [$this->t('Heading'), '<h2>' . $this->t('Subtitle') . '</h2>'],
+      'h3' => [$this->t('Heading'), '<h3>' . $this->t('Subtitle three') . '</h3>'],
+      'h4' => [$this->t('Heading'), '<h4>' . $this->t('Subtitle four') . '</h4>'],
+      'h5' => [$this->t('Heading'), '<h5>' . $this->t('Subtitle five') . '</h5>'],
+      'h6' => [$this->t('Heading'), '<h6>' . $this->t('Subtitle six') . '</h6>']
+    ];
+    $header = [$this->t('Tag Description'), $this->t('You Type'), $this->t('You Get')];
     preg_match_all('/<([a-z0-9]+)[^a-z0-9]/i', $allowed_html, $out);
     foreach ($out[1] as $tag) {
       if (!empty($tips[$tag])) {
-        $rows[] = array(
-          array('data' => $tips[$tag][0], 'class' => array('description')),
+        $rows[] = [
+          ['data' => $tips[$tag][0], 'class' => ['description']],
           // The markup must be escaped because this is the example code for the
           // user.
-          array('data' =>
-            array(
+          ['data' =>
+            [
               '#prefix' => '<code>',
               '#plain_text' => $tips[$tag][1],
               '#suffix' => '</code>'
-            ),
-            'class' => array('type')),
+            ],
+            'class' => ['type']],
           // The markup must not be escaped because this is the example output
           // for the user.
-          array('data' =>
-            array('#markup' => $tips[$tag][1]),
-            'class' => array('get'),
-          ),
-        );
+          ['data' =>
+            ['#markup' => $tips[$tag][1]],
+            'class' => ['get'],
+          ],
+        ];
       }
       else {
-        $rows[] = array(
-          array('data' => $this->t('No help provided for tag %tag.', array('%tag' => $tag)), 'class' => array('description'), 'colspan' => 3),
-        );
+        $rows[] = [
+          ['data' => $this->t('No help provided for tag %tag.', ['%tag' => $tag]), 'class' => ['description'], 'colspan' => 3],
+        ];
       }
     }
-    $table = array(
+    $table = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-    );
+    ];
     $output .= drupal_render($table);
 
     $output .= '<p>' . $this->t('Most unusual characters can be directly entered without any problems.') . '</p>';
-    $output .= '<p>' . $this->t('If you do encounter problems, try using HTML character entities. A common example looks like &amp;amp; for an ampersand &amp; character. For a full list of entities see HTML\'s <a href=":html-entities">entities</a> page. Some of the available characters include:', array(':html-entities' => 'http://www.w3.org/TR/html4/sgml/entities.html')) . '</p>';
+    $output .= '<p>' . $this->t('If you do encounter problems, try using HTML character entities. A common example looks like &amp;amp; for an ampersand &amp; character. For a full list of entities see HTML\'s <a href=":html-entities">entities</a> page. Some of the available characters include:', [':html-entities' => 'http://www.w3.org/TR/html4/sgml/entities.html']) . '</p>';
 
-    $entities = array(
-      array($this->t('Ampersand'), '&amp;'),
-      array($this->t('Greater than'), '&gt;'),
-      array($this->t('Less than'), '&lt;'),
-      array($this->t('Quotation mark'), '&quot;'),
-    );
-    $header = array($this->t('Character Description'), $this->t('You Type'), $this->t('You Get'));
+    $entities = [
+      [$this->t('Ampersand'), '&amp;'],
+      [$this->t('Greater than'), '&gt;'],
+      [$this->t('Less than'), '&lt;'],
+      [$this->t('Quotation mark'), '&quot;'],
+    ];
+    $header = [$this->t('Character Description'), $this->t('You Type'), $this->t('You Get')];
     unset($rows);
     foreach ($entities as $entity) {
-      $rows[] = array(
-        array('data' => $entity[0], 'class' => array('description')),
+      $rows[] = [
+        ['data' => $entity[0], 'class' => ['description']],
         // The markup must be escaped because this is the example code for the
         // user.
-        array(
-          'data' => array(
+        [
+          'data' => [
             '#prefix' => '<code>',
             '#plain_text' => $entity[1],
             '#suffix' => '</code>',
-          ),
-          'class' => array('type'),
-        ),
+          ],
+          'class' => ['type'],
+        ],
         // The markup must not be escaped because this is the example output
         // for the user.
-        array(
-          'data' => array('#markup' => $entity[1]),
-          'class' => array('get'),
-        ),
-      );
+        [
+          'data' => ['#markup' => $entity[1]],
+          'class' => ['get'],
+        ],
+      ];
     }
-    $table = array(
+    $table = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-    );
+    ];
     $output .= drupal_render($table);
     return $output;
   }
diff --git a/core/modules/filter/src/Plugin/Filter/FilterHtmlEscape.php b/core/modules/filter/src/Plugin/Filter/FilterHtmlEscape.php
index 24a3741..a99945f 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterHtmlEscape.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterHtmlEscape.php
@@ -29,7 +29,7 @@ public function process($text, $langcode) {
    */
   public function getHTMLRestrictions() {
     // Nothing is allowed.
-    return array('allowed' => array());
+    return ['allowed' => []];
   }
 
   /**
diff --git a/core/modules/filter/src/Plugin/Filter/FilterNull.php b/core/modules/filter/src/Plugin/Filter/FilterNull.php
index 032a6e0..afac124 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterNull.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterNull.php
@@ -35,7 +35,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
     // Once per filter, log that a filter plugin was missing.
     if (!$this->logged) {
       $this->logged = TRUE;
-      \Drupal::logger('filter')->alert('Missing filter plugin: %filter.', array('%filter' => $plugin_id));
+      \Drupal::logger('filter')->alert('Missing filter plugin: %filter.', ['%filter' => $plugin_id]);
     }
     parent::__construct($configuration, $plugin_id, $plugin_definition);
   }
@@ -52,7 +52,7 @@ public function process($text, $langcode) {
    */
   public function getHTMLRestrictions() {
     // Nothing is allowed.
-    return array('allowed' => array());
+    return ['allowed' => []];
   }
 
   /**
diff --git a/core/modules/filter/src/Plugin/Filter/FilterUrl.php b/core/modules/filter/src/Plugin/Filter/FilterUrl.php
index 97c226a..d3d2c96 100644
--- a/core/modules/filter/src/Plugin/Filter/FilterUrl.php
+++ b/core/modules/filter/src/Plugin/Filter/FilterUrl.php
@@ -24,14 +24,14 @@ class FilterUrl extends FilterBase {
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $form['filter_url_length'] = array(
+    $form['filter_url_length'] = [
       '#type' => 'number',
       '#title' => $this->t('Maximum link text length'),
       '#default_value' => $this->settings['filter_url_length'],
       '#min' => 1,
       '#field_suffix' => $this->t('characters'),
       '#description' => $this->t('URLs longer than this number of characters will be truncated to prevent long strings that break formatting. The link itself will be retained; just the text portion of the link will be truncated.'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/filter/src/Plugin/FilterBase.php b/core/modules/filter/src/Plugin/FilterBase.php
index 6f7f5e3..11e385f 100644
--- a/core/modules/filter/src/Plugin/FilterBase.php
+++ b/core/modules/filter/src/Plugin/FilterBase.php
@@ -41,7 +41,7 @@
    *
    * @var array
    */
-  public $settings = array();
+  public $settings = [];
 
   /**
    * {@inheritdoc}
@@ -74,32 +74,32 @@ public function setConfiguration(array $configuration) {
    * {@inheritdoc}
    */
   public function getConfiguration() {
-    return array(
+    return [
       'id' => $this->getPluginId(),
       'provider' => $this->pluginDefinition['provider'],
       'status' => $this->status,
       'weight' => $this->weight,
       'settings' => $this->settings,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'provider' => $this->pluginDefinition['provider'],
       'status' => FALSE,
       'weight' => $this->pluginDefinition['weight'] ?: 0,
       'settings' => $this->pluginDefinition['settings'],
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function calculateDependencies() {
-    return array();
+    return [];
   }
 
   /**
@@ -130,7 +130,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
     // Implementations should work with and return $form. Returning an empty
     // array here allows the text format administration form to identify whether
     // the filter plugin has any settings form elements.
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/filter/src/Plugin/migrate/process/d6/FilterFormatPermission.php b/core/modules/filter/src/Plugin/migrate/process/d6/FilterFormatPermission.php
index d0e6143..8c7a160 100644
--- a/core/modules/filter/src/Plugin/migrate/process/d6/FilterFormatPermission.php
+++ b/core/modules/filter/src/Plugin/migrate/process/d6/FilterFormatPermission.php
@@ -45,7 +45,7 @@ public static function create(ContainerInterface $container, array $configuratio
       $plugin_id,
       $plugin_definition,
       $migration,
-      $container->get('plugin.manager.migrate.process')->createInstance('migration', array('migration' => 'd6_filter_format'), $migration)
+      $container->get('plugin.manager.migrate.process')->createInstance('migration', ['migration' => 'd6_filter_format'], $migration)
     );
   }
 
diff --git a/core/modules/filter/src/Plugin/migrate/source/d6/FilterFormat.php b/core/modules/filter/src/Plugin/migrate/source/d6/FilterFormat.php
index 0932773..54b33d4 100644
--- a/core/modules/filter/src/Plugin/migrate/source/d6/FilterFormat.php
+++ b/core/modules/filter/src/Plugin/migrate/source/d6/FilterFormat.php
@@ -25,37 +25,37 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'format' => $this->t('Format ID.'),
       'name' => $this->t('The name of the format.'),
       'cache' => $this->t('Whether the format is cacheable.'),
       'roles' => $this->t('The role IDs which can use the format.'),
       'filters' => $this->t('The filters configured for the format.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function prepareRow(Row $row) {
-    $filters = array();
+    $filters = [];
     $roles = $row->getSourceProperty('roles');
     $row->setSourceProperty('roles', array_values(array_filter(explode(',', $roles))));
     $format = $row->getSourceProperty('format');
     // Find filters for this row.
     $results = $this->select('filters', 'f')
-      ->fields('f', array('module', 'delta', 'weight'))
+      ->fields('f', ['module', 'delta', 'weight'])
       ->condition('format', $format)
       ->execute();
     foreach ($results as $raw_filter) {
       $module = $raw_filter['module'];
       $delta = $raw_filter['delta'];
-      $filter = array(
+      $filter = [
         'module' => $module,
         'delta' => $delta,
         'weight' => $raw_filter['weight'],
-        'settings' => array(),
-      );
+        'settings' => [],
+      ];
       // Load the filter settings for the filter module, modules can use
       // hook_migration_d6_filter_formats_prepare_row() to add theirs.
       if ($raw_filter['module'] == 'filter') {
diff --git a/core/modules/filter/src/Plugin/migrate/source/d7/FilterFormat.php b/core/modules/filter/src/Plugin/migrate/source/d7/FilterFormat.php
index c166dcd..55c2811 100644
--- a/core/modules/filter/src/Plugin/migrate/source/d7/FilterFormat.php
+++ b/core/modules/filter/src/Plugin/migrate/source/d7/FilterFormat.php
@@ -25,14 +25,14 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'format' => $this->t('Format ID.'),
       'name' => $this->t('The name of the format.'),
       'cache' => $this->t('Whether the format is cacheable.'),
       'status' => $this->t('The status of the format'),
       'weight' => $this->t('The weight of the format'),
       'filters' => $this->t('The filters configured for the format.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/filter/src/Tests/FilterAdminTest.php b/core/modules/filter/src/Tests/FilterAdminTest.php
index 830cf18..b967101 100644
--- a/core/modules/filter/src/Tests/FilterAdminTest.php
+++ b/core/modules/filter/src/Tests/FilterAdminTest.php
@@ -42,67 +42,67 @@ class FilterAdminTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     // Set up the filter formats used by this test.
-    $basic_html_format = FilterFormat::create(array(
+    $basic_html_format = FilterFormat::create([
       'format' => 'basic_html',
       'name' => 'Basic HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<p> <br> <strong> <a> <em>',
-          ),
-        ),
-      ),
-    ));
+          ],
+        ],
+      ],
+    ]);
     $basic_html_format->save();
-    $restricted_html_format = FilterFormat::create(array(
+    $restricted_html_format = FilterFormat::create([
       'format' => 'restricted_html',
       'name' => 'Restricted HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => TRUE,
           'weight' => -10,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<p> <br> <strong> <a> <em> <h4>',
-          ),
-        ),
-        'filter_autop' => array(
+          ],
+        ],
+        'filter_autop' => [
           'status' => TRUE,
           'weight' => 0,
-        ),
-        'filter_url' => array(
+        ],
+        'filter_url' => [
           'status' => TRUE,
           'weight' => 0,
-        ),
-        'filter_htmlcorrector' => array(
+        ],
+        'filter_htmlcorrector' => [
           'status' => TRUE,
           'weight' => 10,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $restricted_html_format->save();
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
 
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer filters',
       $basic_html_format->getPermissionName(),
       $restricted_html_format->getPermissionName(),
       $full_html_format->getPermissionName(),
       'access site reports',
-    ));
+    ]);
 
-    $this->webUser = $this->drupalCreateUser(array('create page content', 'edit own page content'));
-    user_role_grant_permissions('authenticated', array($basic_html_format->getPermissionName()));
-    user_role_grant_permissions('anonymous', array($restricted_html_format->getPermissionName()));
+    $this->webUser = $this->drupalCreateUser(['create page content', 'edit own page content']);
+    user_role_grant_permissions('authenticated', [$basic_html_format->getPermissionName()]);
+    user_role_grant_permissions('anonymous', [$restricted_html_format->getPermissionName()]);
     $this->drupalLogin($this->adminUser);
     $this->drupalPlaceBlock('local_actions_block');
   }
@@ -116,10 +116,10 @@ function testFormatAdmin() {
     $this->clickLink('Add text format');
     $format_id = Unicode::strtolower($this->randomMachineName());
     $name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'format' => $format_id,
       'name' => $name,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
 
     // Verify default weight of the text format.
@@ -127,9 +127,9 @@ function testFormatAdmin() {
     $this->assertFieldByName("formats[$format_id][weight]", 0, 'Text format weight was saved.');
 
     // Change the weight of the text format.
-    $edit = array(
+    $edit = [
       "formats[$format_id][weight]" => 5,
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats', $edit, t('Save'));
     $this->assertFieldByName("formats[$format_id][weight]", 5, 'Text format weight was saved.');
 
@@ -139,14 +139,14 @@ function testFormatAdmin() {
     // and 'admin/config/content/formats/manage/' . $format_id . '/disable'
     // exists.
     // @todo: See https://www.drupal.org/node/2031223 for the above.
-    $edit_link = $this->xpath('//a[@href=:href]', array(
+    $edit_link = $this->xpath('//a[@href=:href]', [
       ':href' => \Drupal::url('entity.filter_format.edit_form', ['filter_format' => $format_id])
-    ));
+    ]);
     $this->assertTrue($edit_link, format_string('Link href %href found.',
-      array('%href' => 'admin/config/content/formats/manage/' . $format_id)
+      ['%href' => 'admin/config/content/formats/manage/' . $format_id]
     ));
     $this->drupalGet('admin/config/content/formats/manage/' . $format_id);
-    $this->drupalPostForm(NULL, array(), t('Save configuration'));
+    $this->drupalPostForm(NULL, [], t('Save configuration'));
 
     // Verify that the custom weight of the text format has been retained.
     $this->drupalGet('admin/config/content/formats');
@@ -155,7 +155,7 @@ function testFormatAdmin() {
     // Disable text format.
     $this->assertLinkByHref('admin/config/content/formats/manage/' . $format_id . '/disable');
     $this->drupalGet('admin/config/content/formats/manage/' . $format_id . '/disable');
-    $this->drupalPostForm(NULL, array(), t('Disable'));
+    $this->drupalPostForm(NULL, [], t('Disable'));
 
     // Verify that disabled text format no longer exists.
     $this->drupalGet('admin/config/content/formats/manage/' . $format_id);
@@ -163,23 +163,23 @@ function testFormatAdmin() {
 
     // Attempt to create a format of the same machine name as the disabled
     // format but with a different human readable name.
-    $edit = array(
+    $edit = [
       'format' => $format_id,
       'name' => 'New format',
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
     $this->assertText('The machine-readable name is already in use. It must be unique.');
 
     // Attempt to create a format of the same human readable name as the
     // disabled format but with a different machine name.
-    $edit = array(
+    $edit = [
       'format' => 'new_format',
       'name' => $name,
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
-    $this->assertRaw(t('Text format names must be unique. A format named %name already exists.', array(
+    $this->assertRaw(t('Text format names must be unique. A format named %name already exists.', [
       '%name' => $name,
-    )));
+    ]));
   }
 
   /**
@@ -207,21 +207,21 @@ function testFilterAdmin() {
     $this->assertFalse($full_format->access('use', $this->webUser), 'Web user may not use Full HTML.');
 
     // Add an additional tag and extra spaces and returns.
-    $edit = array();
+    $edit = [];
     $edit['filters[filter_html][settings][allowed_html]'] = "<a>   <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>\r\n<quote>";
     $this->drupalPostForm('admin/config/content/formats/manage/' . $restricted, $edit, t('Save configuration'));
     $this->assertUrl('admin/config/content/formats');
     $this->drupalGet('admin/config/content/formats/manage/' . $restricted);
     $this->assertFieldByName('filters[filter_html][settings][allowed_html]', "<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <quote>", 'Allowed HTML tag added.');
 
-    $elements = $this->xpath('//select[@name=:first]/following::select[@name=:second]', array(
+    $elements = $this->xpath('//select[@name=:first]/following::select[@name=:second]', [
       ':first' => 'filters[' . $first_filter . '][weight]',
       ':second' => 'filters[' . $second_filter . '][weight]',
-    ));
+    ]);
     $this->assertTrue(!empty($elements), 'Order confirmed in admin interface.');
 
     // Reorder filters.
-    $edit = array();
+    $edit = [];
     $edit['filters[' . $second_filter . '][weight]'] = 1;
     $edit['filters[' . $first_filter . '][weight]'] = 2;
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
@@ -230,10 +230,10 @@ function testFilterAdmin() {
     $this->assertFieldByName('filters[' . $second_filter . '][weight]', 1, 'Order saved successfully.');
     $this->assertFieldByName('filters[' . $first_filter . '][weight]', 2, 'Order saved successfully.');
 
-    $elements = $this->xpath('//select[@name=:first]/following::select[@name=:second]', array(
+    $elements = $this->xpath('//select[@name=:first]/following::select[@name=:second]', [
       ':first' => 'filters[' . $second_filter . '][weight]',
       ':second' => 'filters[' . $first_filter . '][weight]',
-    ));
+    ]);
     $this->assertTrue(!empty($elements), 'Reorder confirmed in admin interface.');
 
     $filter_format = FilterFormat::load($restricted);
@@ -246,7 +246,7 @@ function testFilterAdmin() {
     $this->assertEqual($filter_format->filters($second_filter)->weight + 1, $filter_format->filters($first_filter)->weight, 'Order confirmed in configuration.');
 
     // Add format.
-    $edit = array();
+    $edit = [];
     $edit['format'] = Unicode::strtolower($this->randomMachineName());
     $edit['name'] = $this->randomMachineName();
     $edit['roles[' . RoleInterface::AUTHENTICATED_ID . ']'] = 1;
@@ -254,7 +254,7 @@ function testFilterAdmin() {
     $edit['filters[' . $first_filter . '][status]'] = TRUE;
     $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
     $this->assertUrl('admin/config/content/formats');
-    $this->assertRaw(t('Added text format %format.', array('%format' => $edit['name'])), 'New filter created.');
+    $this->assertRaw(t('Added text format %format.', ['%format' => $edit['name']]), 'New filter created.');
 
     filter_formats_reset();
     $format = FilterFormat::load($edit['format']);
@@ -265,18 +265,18 @@ function testFilterAdmin() {
     $this->assertFieldByName('filters[' . $first_filter . '][status]', '', 'URL filter found.');
 
     // Disable new filter.
-    $this->drupalPostForm('admin/config/content/formats/manage/' . $format->id() . '/disable', array(), t('Disable'));
+    $this->drupalPostForm('admin/config/content/formats/manage/' . $format->id() . '/disable', [], t('Disable'));
     $this->assertUrl('admin/config/content/formats');
-    $this->assertRaw(t('Disabled text format %format.', array('%format' => $edit['name'])), 'Format successfully disabled.');
+    $this->assertRaw(t('Disabled text format %format.', ['%format' => $edit['name']]), 'Format successfully disabled.');
 
     // Allow authenticated users on full HTML.
     $format = FilterFormat::load($full);
-    $edit = array();
+    $edit = [];
     $edit['roles[' . RoleInterface::ANONYMOUS_ID . ']'] = 0;
     $edit['roles[' . RoleInterface::AUTHENTICATED_ID . ']'] = 1;
     $this->drupalPostForm('admin/config/content/formats/manage/' . $full, $edit, t('Save configuration'));
     $this->assertUrl('admin/config/content/formats');
-    $this->assertRaw(t('The text format %format has been updated.', array('%format' => $format->label())), 'Full HTML format successfully updated.');
+    $this->assertRaw(t('The text format %format has been updated.', ['%format' => $format->label()]), 'Full HTML format successfully updated.');
 
     // Switch user.
     $this->drupalLogin($this->webUser);
@@ -289,15 +289,15 @@ function testFilterAdmin() {
     $extra_text = 'text';
     $text = $body . '<random>' . $extra_text . '</random>';
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['body[0][value]'] = $text;
     $edit['body[0][format]'] = $basic;
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
-    $this->assertText(t('Basic page @title has been created.', array('@title' => $edit['title[0][value]'])), 'Filtered node created.');
+    $this->assertText(t('Basic page @title has been created.', ['@title' => $edit['title[0][value]']]), 'Filtered node created.');
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/']);
     $this->assert(isset($view_link), 'The message area contains a link to a node');
 
     $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
@@ -312,7 +312,7 @@ function testFilterAdmin() {
     $this->config('filter.settings')
       ->set('always_show_fallback_choice', TRUE)
       ->save();
-    $edit = array();
+    $edit = [];
     $edit['body[0][format]'] = $plain;
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     $this->drupalGet('node/' . $node->id());
@@ -326,7 +326,7 @@ function testFilterAdmin() {
 
     // Clean up.
     // Allowed tags.
-    $edit = array();
+    $edit = [];
     $edit['filters[filter_html][settings][allowed_html]'] = '<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>';
     $this->drupalPostForm('admin/config/content/formats/manage/' . $basic, $edit, t('Save configuration'));
     $this->assertUrl('admin/config/content/formats');
@@ -334,16 +334,16 @@ function testFilterAdmin() {
     $this->assertFieldByName('filters[filter_html][settings][allowed_html]', $edit['filters[filter_html][settings][allowed_html]'], 'Changes reverted.');
 
     // Full HTML.
-    $edit = array();
+    $edit = [];
     $edit['roles[' . RoleInterface::AUTHENTICATED_ID . ']'] = FALSE;
     $this->drupalPostForm('admin/config/content/formats/manage/' . $full, $edit, t('Save configuration'));
     $this->assertUrl('admin/config/content/formats');
-    $this->assertRaw(t('The text format %format has been updated.', array('%format' => $format->label())), 'Full HTML format successfully reverted.');
+    $this->assertRaw(t('The text format %format has been updated.', ['%format' => $format->label()]), 'Full HTML format successfully reverted.');
     $this->drupalGet('admin/config/content/formats/manage/' . $full);
     $this->assertFieldByName('roles[' . RoleInterface::AUTHENTICATED_ID . ']', $edit['roles[' . RoleInterface::AUTHENTICATED_ID . ']'], 'Changes reverted.');
 
     // Filter order.
-    $edit = array();
+    $edit = [];
     $edit['filters[' . $second_filter . '][weight]'] = 2;
     $edit['filters[' . $first_filter . '][weight]'] = 1;
     $this->drupalPostForm('admin/config/content/formats/manage/' . $basic, $edit, t('Save configuration'));
@@ -358,11 +358,11 @@ function testFilterAdmin() {
    */
   function testUrlFilterAdmin() {
     // The form does not save with an invalid filter URL length.
-    $edit = array(
+    $edit = [
       'filters[filter_url][settings][filter_url_length]' => $this->randomMachineName(4),
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats/manage/basic_html', $edit, t('Save configuration'));
-    $this->assertNoRaw(t('The text format %format has been updated.', array('%format' => 'Basic HTML')));
+    $this->assertNoRaw(t('The text format %format has been updated.', ['%format' => 'Basic HTML']));
   }
 
   /**
diff --git a/core/modules/filter/src/Tests/FilterFormTest.php b/core/modules/filter/src/Tests/FilterFormTest.php
index 24bbc15..9d0641e 100644
--- a/core/modules/filter/src/Tests/FilterFormTest.php
+++ b/core/modules/filter/src/Tests/FilterFormTest.php
@@ -18,7 +18,7 @@ class FilterFormTest extends WebTestBase {
    *
    * @var array
    */
-  protected static $modules = array('filter', 'filter_test');
+  protected static $modules = ['filter', 'filter_test'];
 
   /**
    * An administrative user account that can administer text formats.
@@ -48,17 +48,17 @@ protected function setUp() {
     $full_html_format = FilterFormat::load('full_html');
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer filters',
       $filtered_html_format->getPermissionName(),
       $full_html_format->getPermissionName(),
       $filter_test_format->getPermissionName(),
-    ));
+    ]);
 
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       $filtered_html_format->getPermissionName(),
       $filter_test_format->getPermissionName(),
-    ));
+    ]);
   }
 
   /**
@@ -83,7 +83,7 @@ protected function doFilterFormTestAsAdmin() {
     $this->drupalGet('filter-test/text-format');
 
     // Test a text format element with all formats.
-    $formats = array('filtered_html', 'full_html', 'filter_test');
+    $formats = ['filtered_html', 'full_html', 'filter_test'];
     $this->assertEnabledTextarea('edit-all-formats-no-default-value');
     // If no default is given, the format with the lowest weight becomes the
     // default.
@@ -98,7 +98,7 @@ protected function doFilterFormTestAsAdmin() {
     $this->assertRequiredSelectAndOptions('edit-all-formats-default-missing-format--2', $formats);
 
     // Test a text format element with a predefined list of formats.
-    $formats = array('full_html', 'filter_test');
+    $formats = ['full_html', 'filter_test'];
     $this->assertEnabledTextarea('edit-restricted-formats-no-default-value');
     $this->assertOptions('edit-restricted-formats-no-default-format--2', $formats, 'full_html');
     $this->assertEnabledTextarea('edit-restricted-formats-default-value');
@@ -109,7 +109,7 @@ protected function doFilterFormTestAsAdmin() {
     $this->assertRequiredSelectAndOptions('edit-restricted-formats-default-disallowed-format--2', $formats);
 
     // Test a text format element with a fixed format.
-    $formats = array('filter_test');
+    $formats = ['filter_test'];
     // When there is only a single option there is no point in choosing.
     $this->assertEnabledTextarea('edit-single-format-no-default-value');
     $this->assertNoSelect('edit-single-format-no-default-format--2');
@@ -132,7 +132,7 @@ protected function doFilterFormTestAsNonAdmin() {
 
     // Test a text format element with all formats. Only formats the user has
     // access to are shown.
-    $formats = array('filtered_html', 'filter_test');
+    $formats = ['filtered_html', 'filter_test'];
     $this->assertEnabledTextarea('edit-all-formats-no-default-value');
     // If no default is given, the format with the lowest weight becomes the
     // default. This happens to be 'filtered_html'.
@@ -178,10 +178,10 @@ protected function doFilterFormTestAsNonAdmin() {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertNoSelect($id) {
-    $select = $this->xpath('//select[@id=:id]', array(':id' => $id));
-    return $this->assertFalse($select, SafeMarkup::format('Field @id does not exist.', array(
+    $select = $this->xpath('//select[@id=:id]', [':id' => $id]);
+    return $this->assertFalse($select, SafeMarkup::format('Field @id does not exist.', [
       '@id' => $id,
-    )));
+    ]));
   }
 
   /**
@@ -198,20 +198,20 @@ protected function assertNoSelect($id) {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertOptions($id, array $expected_options, $selected) {
-    $select = $this->xpath('//select[@id=:id]', array(':id' => $id));
+    $select = $this->xpath('//select[@id=:id]', [':id' => $id]);
     $select = reset($select);
-    $passed = $this->assertTrue($select instanceof \SimpleXMLElement, SafeMarkup::format('Field @id exists.', array(
+    $passed = $this->assertTrue($select instanceof \SimpleXMLElement, SafeMarkup::format('Field @id exists.', [
       '@id' => $id,
-    )));
+    ]));
 
     $found_options = $this->getAllOptions($select);
     foreach ($found_options as $found_key => $found_option) {
       $expected_key = array_search($found_option->attributes()->value, $expected_options);
       if ($expected_key !== FALSE) {
-        $this->pass(SafeMarkup::format('Option @option for field @id exists.', array(
+        $this->pass(SafeMarkup::format('Option @option for field @id exists.', [
           '@option' => $expected_options[$expected_key],
           '@id' => $id,
-        )));
+        ]));
         unset($found_options[$found_key]);
         unset($expected_options[$expected_key]);
       }
@@ -220,17 +220,17 @@ protected function assertOptions($id, array $expected_options, $selected) {
     // Make sure that all expected options were found and that there are no
     // unexpected options.
     foreach ($expected_options as $expected_option) {
-      $this->fail(SafeMarkup::format('Option @option for field @id exists.', array(
+      $this->fail(SafeMarkup::format('Option @option for field @id exists.', [
         '@option' => $expected_option,
         '@id' => $id,
-      )));
+      ]));
       $passed = FALSE;
     }
     foreach ($found_options as $found_option) {
-      $this->fail(SafeMarkup::format('Option @option for field @id does not exist.', array(
+      $this->fail(SafeMarkup::format('Option @option for field @id does not exist.', [
         '@option' => $found_option->attributes()->value,
         '@id' => $id,
-      )));
+      ]));
       $passed = FALSE;
     }
 
@@ -250,13 +250,13 @@ protected function assertOptions($id, array $expected_options, $selected) {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertRequiredSelectAndOptions($id, array $options) {
-    $select = $this->xpath('//select[@id=:id and contains(@required, "required")]', array(
+    $select = $this->xpath('//select[@id=:id and contains(@required, "required")]', [
       ':id' => $id,
-    ));
+    ]);
     $select = reset($select);
-    $passed = $this->assertTrue($select instanceof \SimpleXMLElement, SafeMarkup::format('Required field @id exists.', array(
+    $passed = $this->assertTrue($select instanceof \SimpleXMLElement, SafeMarkup::format('Required field @id exists.', [
       '@id' => $id,
-    )));
+    ]));
     // A required select element has a "- Select -" option whose key is an empty
     // string.
     $options[] = '';
@@ -273,13 +273,13 @@ protected function assertRequiredSelectAndOptions($id, array $options) {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertEnabledTextarea($id) {
-    $textarea = $this->xpath('//textarea[@id=:id and not(contains(@disabled, "disabled"))]', array(
+    $textarea = $this->xpath('//textarea[@id=:id and not(contains(@disabled, "disabled"))]', [
       ':id' => $id,
-    ));
+    ]);
     $textarea = reset($textarea);
-    return $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Enabled field @id exists.', array(
+    return $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Enabled field @id exists.', [
       '@id' => $id,
-    )));
+    ]));
   }
 
   /**
@@ -292,17 +292,17 @@ protected function assertEnabledTextarea($id) {
    *   TRUE if the assertion passed; FALSE otherwise.
    */
   protected function assertDisabledTextarea($id) {
-    $textarea = $this->xpath('//textarea[@id=:id and contains(@disabled, "disabled")]', array(
+    $textarea = $this->xpath('//textarea[@id=:id and contains(@disabled, "disabled")]', [
       ':id' => $id,
-    ));
+    ]);
     $textarea = reset($textarea);
-    $passed = $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Disabled field @id exists.', array(
+    $passed = $this->assertTrue($textarea instanceof \SimpleXMLElement, SafeMarkup::format('Disabled field @id exists.', [
       '@id' => $id,
-    )));
+    ]));
     $expected = 'This field has been disabled because you do not have sufficient permissions to edit it.';
-    $passed = $passed && $this->assertEqual((string) $textarea, $expected, SafeMarkup::format('Disabled textarea @id hides text in an inaccessible text format.', array(
+    $passed = $passed && $this->assertEqual((string) $textarea, $expected, SafeMarkup::format('Disabled textarea @id hides text in an inaccessible text format.', [
       '@id' => $id,
-    )));
+    ]));
     // Make sure the text format select is not shown.
     $select_id = str_replace('value', 'format--2', $id);
     return $passed && $this->assertNoSelect($select_id);
diff --git a/core/modules/filter/src/Tests/FilterFormatAccessTest.php b/core/modules/filter/src/Tests/FilterFormatAccessTest.php
index 5f20404..c306585 100644
--- a/core/modules/filter/src/Tests/FilterFormatAccessTest.php
+++ b/core/modules/filter/src/Tests/FilterFormatAccessTest.php
@@ -69,25 +69,25 @@ protected function setUp() {
 
     $this->drupalPlaceBlock('page_title_block');
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     // Create a user who can administer text formats, but does not have
     // specific permission to use any of them.
-    $this->filterAdminUser = $this->drupalCreateUser(array(
+    $this->filterAdminUser = $this->drupalCreateUser([
       'administer filters',
       'create page content',
       'edit any page content',
-    ));
+    ]);
 
     // Create three text formats. Two text formats are created for all users so
     // that the drop-down list appears for all tests.
     $this->drupalLogin($this->filterAdminUser);
-    $formats = array();
+    $formats = [];
     for ($i = 0; $i < 3; $i++) {
-      $edit = array(
+      $edit = [
         'format' => Unicode::strtolower($this->randomMachineName()),
         'name' => $this->randomMachineName(),
-      );
+      ];
       $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
       $this->resetFilterCaches();
       $formats[] = FilterFormat::load($edit['format']);
@@ -96,22 +96,22 @@ protected function setUp() {
     $this->drupalLogout();
 
     // Create a regular user with access to two of the formats.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'create page content',
       'edit any page content',
       $this->allowedFormat->getPermissionName(),
       $this->secondAllowedFormat->getPermissionName(),
-    ));
+    ]);
 
     // Create an administrative user who has access to use all three formats.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer filters',
       'create page content',
       'edit any page content',
       $this->allowedFormat->getPermissionName(),
       $this->secondAllowedFormat->getPermissionName(),
       $this->disallowedFormat->getPermissionName(),
-    ));
+    ]);
     $this->drupalPlaceBlock('local_tasks_block');
   }
 
@@ -145,11 +145,11 @@ function testFormatPermissions() {
     // the disallowed format does not.
     $this->drupalLogin($this->webUser);
     $this->drupalGet('node/add/page');
-    $elements = $this->xpath('//select[@name=:name]/option', array(
+    $elements = $this->xpath('//select[@name=:name]/option', [
       ':name' => 'body[0][format]',
       ':option' => $this->allowedFormat->id(),
-    ));
-    $options = array();
+    ]);
+    $options = [];
     foreach ($elements as $element) {
       $options[(string) $element['value']] = $element;
     }
@@ -218,7 +218,7 @@ function testFormatWidgetPermissions() {
 
     // Create node to edit.
     $this->drupalLogin($this->adminUser);
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit[$body_value_key] = $this->randomMachineName(16);
     $edit[$body_format_key] = $this->disallowedFormat->id();
@@ -234,7 +234,7 @@ function testFormatWidgetPermissions() {
     $this->assertFieldByXPath("//textarea[@name='$body_value_key' and @disabled='disabled']", t('This field has been disabled because you do not have sufficient permissions to edit it.'), 'Text format access denied message found.');
 
     // Verify that title can be changed, but preview displays original body.
-    $new_edit = array();
+    $new_edit = [];
     $new_edit['title[0][value]'] = $this->randomMachineName(8);
     $this->drupalPostForm(NULL, $new_edit, t('Preview'));
     $this->assertText($edit[$body_value_key], 'Old body found in preview.');
@@ -276,10 +276,10 @@ function testFormatWidgetPermissions() {
     // produces an error message, and does not result in the node being saved.
     $old_title = $new_edit['title[0][value]'];
     $new_title = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $new_title;
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
-    $this->assertText(t('@name field is required.', array('@name' => t('Text format'))), 'Error message is displayed.');
+    $this->assertText(t('@name field is required.', ['@name' => t('Text format')]), 'Error message is displayed.');
     $this->drupalGet('node/' . $node->id());
     $this->assertText($old_title, 'Old title found.');
     $this->assertNoText($new_title, 'New title not found.');
@@ -294,7 +294,7 @@ function testFormatWidgetPermissions() {
     // Switch the text format to a new one, then disable that format and all
     // other formats on the site (leaving only the fallback format).
     $this->drupalLogin($this->adminUser);
-    $edit = array($body_format_key => $this->allowedFormat->id());
+    $edit = [$body_format_key => $this->allowedFormat->id()];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     $this->assertUrl('node/' . $node->id());
     foreach (filter_formats() as $format) {
@@ -311,10 +311,10 @@ function testFormatWidgetPermissions() {
     $this->drupalLogin($this->filterAdminUser);
     $old_title = $new_title;
     $new_title = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $new_title;
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
-    $this->assertText(t('@name field is required.', array('@name' => t('Text format'))), 'Error message is displayed.');
+    $this->assertText(t('@name field is required.', ['@name' => t('Text format')]), 'Error message is displayed.');
     $this->drupalGet('node/' . $node->id());
     $this->assertText($old_title, 'Old title found.');
     $this->assertNoText($new_title, 'New title not found.');
diff --git a/core/modules/filter/src/Tests/FilterHtmlImageSecureTest.php b/core/modules/filter/src/Tests/FilterHtmlImageSecureTest.php
index 5ce4e6d..5cbdbb0 100644
--- a/core/modules/filter/src/Tests/FilterHtmlImageSecureTest.php
+++ b/core/modules/filter/src/Tests/FilterHtmlImageSecureTest.php
@@ -21,7 +21,7 @@ class FilterHtmlImageSecureTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'node', 'comment');
+  public static $modules = ['filter', 'node', 'comment'];
 
   /**
    * An authenticated user.
@@ -34,38 +34,38 @@ protected function setUp() {
     parent::setUp();
 
     // Setup Filtered HTML text format.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<img src testattribute> <a>',
-          ),
-        ),
-        'filter_autop' => array(
+          ],
+        ],
+        'filter_autop' => [
           'status' => 1,
-        ),
-        'filter_html_image_secure' => array(
+        ],
+        'filter_html_image_secure' => [
           'status' => 1,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $filtered_html_format->save();
 
     // Setup users.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'access content',
       'access comments',
       'post comments',
       'skip comment approval',
       $filtered_html_format->getPermissionName(),
-    ));
+    ]);
     $this->drupalLogin($this->webUser);
 
     // Setup a node to comment and test on.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     // Add a comment field.
     $this->addDefaultCommentField('node', 'page');
     $this->node = $this->drupalCreateNode();
@@ -104,7 +104,7 @@ function testImageSource() {
     // expected filter conversions.
     $host = \Drupal::request()->getHost();
     $host_pattern = '|^http\://' . $host . '(\:[0-9]{0,5})|';
-    $images = array(
+    $images = [
       $http_base_url . '/' . $druplicon => base_path() . $druplicon,
       $https_base_url . '/' . $druplicon => base_path() . $druplicon,
       // Test a url that includes a port.
@@ -123,8 +123,8 @@ function testImageSource() {
       'https://example.com/' . $druplicon => $red_x_image,
       'javascript:druplicon.png' => $red_x_image,
       $csrf_path . '/logout' => $red_x_image,
-    );
-    $comment = array();
+    ];
+    $comment = [];
     foreach ($images as $image => $converted) {
       // Output the image source as plain text for debugging.
       $comment[] = $image . ':';
@@ -132,9 +132,9 @@ function testImageSource() {
       // contain characters that confuse XPath.
       $comment[] = '<img src="' . $image . '" testattribute="' . hash('sha256', $image) . '" />';
     }
-    $edit = array(
+    $edit = [
       'comment_body[0][value]' => implode("\n", $comment),
-    );
+    ];
     $this->drupalPostForm('node/' . $this->node->id(), $edit, t('Save'));
     foreach ($images as $image => $converted) {
       $found = FALSE;
@@ -151,7 +151,7 @@ function testImageSource() {
           $this->assertEqual((string) $element['src'], $converted);
         }
       }
-      $this->assertTrue($found, format_string('@image was found.', array('@image' => $image)));
+      $this->assertTrue($found, format_string('@image was found.', ['@image' => $image]));
     }
   }
 
diff --git a/core/modules/filter/tests/filter_test/src/Form/FilterTestFormatForm.php b/core/modules/filter/tests/filter_test/src/Form/FilterTestFormatForm.php
index 7f4ad57..a5049a1 100644
--- a/core/modules/filter/tests/filter_test/src/Form/FilterTestFormatForm.php
+++ b/core/modules/filter/tests/filter_test/src/Form/FilterTestFormatForm.php
@@ -25,80 +25,80 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // form elements.
     $form['#tree'] = TRUE;
 
-    $form['all_formats'] = array(
+    $form['all_formats'] = [
       '#type' => 'details',
       '#title' => 'All text formats',
-    );
-    $form['all_formats']['no_default'] = array(
+    ];
+    $form['all_formats']['no_default'] = [
       '#type' => 'text_format',
       '#title' => 'No default value',
-    );
-    $form['all_formats']['default'] = array(
+    ];
+    $form['all_formats']['default'] = [
       '#type' => 'text_format',
       '#title' => 'Default value',
       '#format' => 'filter_test',
-    );
-    $form['all_formats']['default_missing'] = array(
+    ];
+    $form['all_formats']['default_missing'] = [
       '#type' => 'text_format',
       '#title' => 'Missing default value',
       '#format' => 'missing_format',
-    );
+    ];
 
-    $form['restricted_formats'] = array(
+    $form['restricted_formats'] = [
       '#type' => 'details',
       '#title' => 'Restricted text format list',
-    );
-    $form['restricted_formats']['no_default'] = array(
+    ];
+    $form['restricted_formats']['no_default'] = [
       '#type' => 'text_format',
       '#title' => 'No default value',
-      '#allowed_formats' => array('full_html', 'filter_test'),
-    );
-    $form['restricted_formats']['default'] = array(
+      '#allowed_formats' => ['full_html', 'filter_test'],
+    ];
+    $form['restricted_formats']['default'] = [
       '#type' => 'text_format',
       '#title' => 'Default value',
       '#format' => 'full_html',
-      '#allowed_formats' => array('full_html', 'filter_test'),
-    );
-    $form['restricted_formats']['default_missing'] = array(
+      '#allowed_formats' => ['full_html', 'filter_test'],
+    ];
+    $form['restricted_formats']['default_missing'] = [
       '#type' => 'text_format',
       '#title' => 'Missing default value',
       '#format' => 'missing_format',
-      '#allowed_formats' => array('full_html', 'filter_test'),
-    );
-    $form['restricted_formats']['default_disallowed'] = array(
+      '#allowed_formats' => ['full_html', 'filter_test'],
+    ];
+    $form['restricted_formats']['default_disallowed'] = [
       '#type' => 'text_format',
       '#title' => 'Disallowed default value',
       '#format' => 'filtered_html',
-      '#allowed_formats' => array('full_html', 'filter_test'),
-    );
+      '#allowed_formats' => ['full_html', 'filter_test'],
+    ];
 
-    $form['single_format'] = array(
+    $form['single_format'] = [
       '#type' => 'details',
       '#title' => 'Single text format',
-    );
-    $form['single_format']['no_default'] = array(
+    ];
+    $form['single_format']['no_default'] = [
       '#type' => 'text_format',
       '#title' => 'No default value',
-      '#allowed_formats' => array('filter_test'),
-    );
-    $form['single_format']['default'] = array(
+      '#allowed_formats' => ['filter_test'],
+    ];
+    $form['single_format']['default'] = [
       '#type' => 'text_format',
       '#title' => 'Default value',
       '#format' => 'filter_test',
-      '#allowed_formats' => array('filter_test'),
-    );
-    $form['single_format']['default_missing'] = array(
+      '#allowed_formats' => ['filter_test'],
+    ];
+    $form['single_format']['default_missing'] = [
       '#type' => 'text_format',
       '#title' => 'Missing default value',
       '#format' => 'missing_format',
-      '#allowed_formats' => array('filter_test'),
-    );
-    $form['single_format']['default_disallowed'] = array(
+      '#allowed_formats' => ['filter_test'],
+    ];
+    $form['single_format']['default_disallowed'] = [
       '#type' => 'text_format',
       '#title' => 'Disallowed default value',
       '#format' => 'full_html',
-      '#allowed_formats' => array('filter_test'),
-    );
+      '#allowed_formats' => ['filter_test'],
+    ];
 
     return $form;
   }
diff --git a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestAssets.php b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestAssets.php
index 700dec3..5f63a06 100644
--- a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestAssets.php
+++ b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestAssets.php
@@ -22,11 +22,11 @@ class FilterTestAssets extends FilterBase {
    */
   public function process($text, $langcode) {
     $result = new FilterProcessResult($text);
-    $result->addAttachments(array(
-      'library' => array(
+    $result->addAttachments([
+      'library' => [
         'filter/caption',
-      ),
-    ));
+      ],
+    ]);
     return $result;
   }
 
diff --git a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestCacheTags.php b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestCacheTags.php
index fe1986c..4b30505 100644
--- a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestCacheTags.php
+++ b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestCacheTags.php
@@ -22,8 +22,8 @@ class FilterTestCacheTags extends FilterBase {
    */
   public function process($text, $langcode) {
     $result = new FilterProcessResult($text);
-    $result->addCacheTags(array('foo:bar'));
-    $result->addCacheTags(array('foo:baz'));
+    $result->addCacheTags(['foo:bar']);
+    $result->addCacheTags(['foo:baz']);
     return $result;
   }
 
diff --git a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestPlaceholders.php b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestPlaceholders.php
index 6b5e724..c6d0300 100644
--- a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestPlaceholders.php
+++ b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestPlaceholders.php
@@ -38,7 +38,7 @@ public function process($text, $langcode) {
    */
   public static function renderDynamicThing($thing) {
     return [
-      '#markup' => format_string('This is a dynamic @thing.', array('@thing' => $thing)),
+      '#markup' => format_string('This is a dynamic @thing.', ['@thing' => $thing]),
     ];
   }
 
diff --git a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestReplace.php b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestReplace.php
index 0e6d85d..c697e25 100644
--- a/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestReplace.php
+++ b/core/modules/filter/tests/filter_test/src/Plugin/Filter/FilterTestReplace.php
@@ -21,7 +21,7 @@ class FilterTestReplace extends FilterBase {
    * {@inheritdoc}
    */
   public function process($text, $langcode) {
-    $text = array();
+    $text = [];
     $text[] = 'Filter: ' . $this->getLabel() . ' (' . $this->getPluginId() . ')';
     $text[] = 'Language: ' . $langcode;
     return new FilterProcessResult(implode("<br />\n", $text));
diff --git a/core/modules/filter/tests/src/Functional/FilterDefaultFormatTest.php b/core/modules/filter/tests/src/Functional/FilterDefaultFormatTest.php
index 6014c10..4aee647 100644
--- a/core/modules/filter/tests/src/Functional/FilterDefaultFormatTest.php
+++ b/core/modules/filter/tests/src/Functional/FilterDefaultFormatTest.php
@@ -18,7 +18,7 @@ class FilterDefaultFormatTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter');
+  public static $modules = ['filter'];
 
   /**
    * Tests if the default text format is accessible to users.
@@ -26,26 +26,26 @@ class FilterDefaultFormatTest extends BrowserTestBase {
   function testDefaultTextFormats() {
     // Create two text formats, and two users. The first user has access to
     // both formats, but the second user only has access to the second one.
-    $admin_user = $this->drupalCreateUser(array('administer filters'));
+    $admin_user = $this->drupalCreateUser(['administer filters']);
     $this->drupalLogin($admin_user);
-    $formats = array();
+    $formats = [];
     for ($i = 0; $i < 2; $i++) {
-      $edit = array(
+      $edit = [
         'format' => Unicode::strtolower($this->randomMachineName()),
         'name' => $this->randomMachineName(),
-      );
+      ];
       $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
       $this->resetFilterCaches();
       $formats[] = FilterFormat::load($edit['format']);
     }
     list($first_format, $second_format) = $formats;
     $second_format_permission = $second_format->getPermissionName();
-    $first_user = $this->drupalCreateUser(array($first_format->getPermissionName(), $second_format_permission));
-    $second_user = $this->drupalCreateUser(array($second_format_permission));
+    $first_user = $this->drupalCreateUser([$first_format->getPermissionName(), $second_format_permission]);
+    $second_user = $this->drupalCreateUser([$second_format_permission]);
 
     // Adjust the weights so that the first and second formats (in that order)
     // are the two lowest weighted formats available to any user.
-    $edit = array();
+    $edit = [];
     $edit['formats[' . $first_format->id() . '][weight]'] = -2;
     $edit['formats[' . $second_format->id() . '][weight]'] = -1;
     $this->drupalPostForm('admin/config/content/formats', $edit, t('Save'));
@@ -62,7 +62,7 @@ function testDefaultTextFormats() {
 
     // Reorder the two formats, and check that both users now have the same
     // default.
-    $edit = array();
+    $edit = [];
     $edit['formats[' . $second_format->id() . '][weight]'] = -3;
     $this->drupalPostForm('admin/config/content/formats', $edit, t('Save'));
     $this->resetFilterCaches();
diff --git a/core/modules/filter/tests/src/Functional/FilterHooksTest.php b/core/modules/filter/tests/src/Functional/FilterHooksTest.php
index c499f23..2ff3e43 100644
--- a/core/modules/filter/tests/src/Functional/FilterHooksTest.php
+++ b/core/modules/filter/tests/src/Functional/FilterHooksTest.php
@@ -18,7 +18,7 @@ class FilterHooksTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'filter_test');
+  public static $modules = ['node', 'filter_test'];
 
   /**
    * Tests hooks on format management.
@@ -29,43 +29,43 @@ class FilterHooksTest extends BrowserTestBase {
   function testFilterHooks() {
     // Create content type, with underscores.
     $type_name = 'test_' . strtolower($this->randomMachineName());
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $node_permission = "create $type_name content";
 
-    $admin_user = $this->drupalCreateUser(array('administer filters', 'administer nodes', $node_permission));
+    $admin_user = $this->drupalCreateUser(['administer filters', 'administer nodes', $node_permission]);
     $this->drupalLogin($admin_user);
 
     // Add a text format.
     $name = $this->randomMachineName();
-    $edit = array();
+    $edit = [];
     $edit['format'] = Unicode::strtolower($this->randomMachineName());
     $edit['name'] = $name;
     $edit['roles[' . RoleInterface::ANONYMOUS_ID . ']'] = 1;
     $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
-    $this->assertRaw(t('Added text format %format.', array('%format' => $name)));
+    $this->assertRaw(t('Added text format %format.', ['%format' => $name]));
     $this->assertText('hook_filter_format_insert invoked.');
 
     $format_id = $edit['format'];
 
     // Update text format.
-    $edit = array();
+    $edit = [];
     $edit['roles[' . RoleInterface::AUTHENTICATED_ID . ']'] = 1;
     $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id, $edit, t('Save configuration'));
-    $this->assertRaw(t('The text format %format has been updated.', array('%format' => $name)));
+    $this->assertRaw(t('The text format %format has been updated.', ['%format' => $name]));
     $this->assertText('hook_filter_format_update invoked.');
 
     // Use the format created.
     $title = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $title;
     $edit['body[0][value]'] = $this->randomMachineName(32);
     $edit['body[0][format]'] = $format_id;
     $this->drupalPostForm("node/add/{$type->id()}", $edit, t('Save and publish'));
-    $this->assertText(t('@type @title has been created.', array('@type' => $type_name, '@title' => $title)));
+    $this->assertText(t('@type @title has been created.', ['@type' => $type_name, '@title' => $title]));
 
     // Disable the text format.
-    $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id . '/disable', array(), t('Disable'));
-    $this->assertRaw(t('Disabled text format %format.', array('%format' => $name)));
+    $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id . '/disable', [], t('Disable'));
+    $this->assertRaw(t('Disabled text format %format.', ['%format' => $name]));
     $this->assertText('hook_filter_format_disable invoked.');
   }
 
diff --git a/core/modules/filter/tests/src/Functional/FilterNoFormatTest.php b/core/modules/filter/tests/src/Functional/FilterNoFormatTest.php
index 1139947..22b3ac6 100644
--- a/core/modules/filter/tests/src/Functional/FilterNoFormatTest.php
+++ b/core/modules/filter/tests/src/Functional/FilterNoFormatTest.php
@@ -16,7 +16,7 @@ class FilterNoFormatTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter');
+  public static $modules = ['filter'];
 
   /**
    * Tests text without format.
diff --git a/core/modules/filter/tests/src/Functional/FilterSecurityTest.php b/core/modules/filter/tests/src/Functional/FilterSecurityTest.php
index 4055159..af1240e 100644
--- a/core/modules/filter/tests/src/Functional/FilterSecurityTest.php
+++ b/core/modules/filter/tests/src/Functional/FilterSecurityTest.php
@@ -21,7 +21,7 @@ class FilterSecurityTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'filter_test');
+  public static $modules = ['node', 'filter_test'];
 
   /**
    * A user with administrative permissions.
@@ -34,14 +34,14 @@ protected function setUp() {
     parent::setUp();
 
     // Create Basic page node type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     /** @var \Drupal\filter\Entity\FilterFormat $filtered_html_format */
     $filtered_html_format = FilterFormat::load('filtered_html');
     $filtered_html_permission = $filtered_html_format->getPermissionName();
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array($filtered_html_permission));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [$filtered_html_permission]);
 
-    $this->adminUser = $this->drupalCreateUser(array('administer modules', 'administer filters', 'administer site configuration'));
+    $this->adminUser = $this->drupalCreateUser(['administer modules', 'administer filters', 'administer site configuration']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -53,16 +53,16 @@ protected function setUp() {
    */
   function testDisableFilterModule() {
     // Create a new node.
-    $node = $this->drupalCreateNode(array('promote' => 1));
+    $node = $this->drupalCreateNode(['promote' => 1]);
     $body_raw = $node->body->value;
     $format_id = $node->body->format;
     $this->drupalGet('node/' . $node->id());
     $this->assertText($body_raw, 'Node body found.');
 
     // Enable the filter_test_replace filter.
-    $edit = array(
+    $edit = [
       'filters[filter_test_replace][status]' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id, $edit, t('Save configuration'));
 
     // Verify that filter_test_replace filter replaced the content.
@@ -71,7 +71,7 @@ function testDisableFilterModule() {
     $this->assertText('Filter: Testing filter', 'Testing filter output found.');
 
     // Disable the text format entirely.
-    $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id . '/disable', array(), t('Disable'));
+    $this->drupalPostForm('admin/config/content/formats/manage/' . $format_id . '/disable', [], t('Disable'));
 
     // Verify that the content is empty, because the text format does not exist.
     $this->drupalGet('node/' . $node->id());
@@ -84,8 +84,8 @@ function testDisableFilterModule() {
   function testSkipSecurityFilters() {
     $text = "Text with some disallowed tags: <script />, <p><object>unicorn</object></p>, <i><table></i>.";
     $expected_filtered_text = "Text with some disallowed tags: , <p>unicorn</p>, .";
-    $this->assertEqual(check_markup($text, 'filtered_html', '', array()), $expected_filtered_text, 'Expected filter result.');
-    $this->assertEqual(check_markup($text, 'filtered_html', '', array(FilterInterface::TYPE_HTML_RESTRICTOR)), $expected_filtered_text, 'Expected filter result, even when trying to disable filters of the FilterInterface::TYPE_HTML_RESTRICTOR type.');
+    $this->assertEqual(check_markup($text, 'filtered_html', '', []), $expected_filtered_text, 'Expected filter result.');
+    $this->assertEqual(check_markup($text, 'filtered_html', '', [FilterInterface::TYPE_HTML_RESTRICTOR]), $expected_filtered_text, 'Expected filter result, even when trying to disable filters of the FilterInterface::TYPE_HTML_RESTRICTOR type.');
   }
 
 }
diff --git a/core/modules/filter/tests/src/Kernel/FilterAPITest.php b/core/modules/filter/tests/src/Kernel/FilterAPITest.php
index 50189a6..85ea05e 100644
--- a/core/modules/filter/tests/src/Kernel/FilterAPITest.php
+++ b/core/modules/filter/tests/src/Kernel/FilterAPITest.php
@@ -19,12 +19,12 @@
  */
 class FilterAPITest extends EntityKernelTestBase {
 
-  public static $modules = array('system', 'filter', 'filter_test', 'user');
+  public static $modules = ['system', 'filter', 'filter_test', 'user'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('system', 'filter', 'filter_test'));
+    $this->installConfig(['system', 'filter', 'filter_test']);
   }
 
   /**
@@ -32,24 +32,24 @@ protected function setUp() {
    */
   function testCheckMarkupFilterOrder() {
     // Create crazy HTML format.
-    $crazy_format = FilterFormat::create(array(
+    $crazy_format = FilterFormat::create([
       'format' => 'crazy',
       'name' => 'Crazy',
       'weight' => 1,
-      'filters' => array(
-        'filter_html_escape' => array(
+      'filters' => [
+        'filter_html_escape' => [
           'weight' => 10,
           'status' => 1,
-        ),
-        'filter_html' => array(
+        ],
+        'filter_html' => [
           'weight' => -10,
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<p>',
-          ),
-        ),
-      )
-    ));
+          ],
+        ],
+      ]
+    ]);
     $crazy_format->save();
 
     $text = "<p>Llamas are <not> awesome!</p>";
@@ -66,14 +66,14 @@ function testCheckMarkupFilterSubset() {
     $expected_filtered_text = "Text with evil content and a URL: <a href=\"https://www.drupal.org\">https://www.drupal.org</a>!";
     $expected_filter_text_without_html_generators = "Text with evil content and a URL: https://www.drupal.org!";
 
-    $actual_filtered_text = check_markup($text, 'filtered_html', '', array());
+    $actual_filtered_text = check_markup($text, 'filtered_html', '', []);
     $this->verbose("Actual:<pre>$actual_filtered_text</pre>Expected:<pre>$expected_filtered_text</pre>");
     $this->assertEqual(
       $actual_filtered_text,
       $expected_filtered_text,
       'Expected filter result.'
     );
-    $actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', array(FilterInterface::TYPE_MARKUP_LANGUAGE));
+    $actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', [FilterInterface::TYPE_MARKUP_LANGUAGE]);
     $this->verbose("Actual:<pre>$actual_filtered_text_without_html_generators</pre>Expected:<pre>$expected_filter_text_without_html_generators</pre>");
     $this->assertEqual(
       $actual_filtered_text_without_html_generators,
@@ -84,7 +84,7 @@ function testCheckMarkupFilterSubset() {
     // this check focuses on the ability to filter multiple filter types at once.
     // Drupal core only ships with these two types of filters, so this is the
     // most extensive test possible.
-    $actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', array(FilterInterface::TYPE_HTML_RESTRICTOR, FilterInterface::TYPE_MARKUP_LANGUAGE));
+    $actual_filtered_text_without_html_generators = check_markup($text, 'filtered_html', '', [FilterInterface::TYPE_HTML_RESTRICTOR, FilterInterface::TYPE_MARKUP_LANGUAGE]);
     $this->verbose("Actual:<pre>$actual_filtered_text_without_html_generators</pre>Expected:<pre>$expected_filter_text_without_html_generators</pre>");
     $this->assertEqual(
       $actual_filtered_text_without_html_generators,
@@ -103,20 +103,20 @@ function testFilterFormatAPI() {
     $filtered_html_format = FilterFormat::load('filtered_html');
     $this->assertIdentical(
       $filtered_html_format->getHtmlRestrictions(),
-      array(
-        'allowed' => array(
+      [
+        'allowed' => [
           'p' => FALSE,
           'br' => FALSE,
           'strong' => FALSE,
-          'a' => array('href' => TRUE, 'hreflang' => TRUE),
-          '*' => array('style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => array('ltr' => TRUE, 'rtl' => TRUE)),
-        ),
-      ),
+          'a' => ['href' => TRUE, 'hreflang' => TRUE],
+          '*' => ['style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => ['ltr' => TRUE, 'rtl' => TRUE]],
+        ],
+      ],
       'FilterFormatInterface::getHtmlRestrictions() works as expected for the filtered_html format.'
     );
     $this->assertIdentical(
       $filtered_html_format->getFilterTypes(),
-      array(FilterInterface::TYPE_HTML_RESTRICTOR, FilterInterface::TYPE_MARKUP_LANGUAGE),
+      [FilterInterface::TYPE_HTML_RESTRICTOR, FilterInterface::TYPE_MARKUP_LANGUAGE],
       'FilterFormatInterface::getFilterTypes() works as expected for the filtered_html format.'
     );
 
@@ -129,113 +129,113 @@ function testFilterFormatAPI() {
     );
     $this->assertIdentical(
       $full_html_format->getFilterTypes(),
-      array(),
+      [],
       'FilterFormatInterface::getFilterTypes() works as expected for the full_html format.'
     );
 
     // Test on stupid_filtered_html, where nothing is allowed.
-    $stupid_filtered_html_format = FilterFormat::create(array(
+    $stupid_filtered_html_format = FilterFormat::create([
       'format' => 'stupid_filtered_html',
       'name' => 'Stupid Filtered HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '', // Nothing is allowed.
-          ),
-        ),
-      ),
-    ));
+          ],
+        ],
+      ],
+    ]);
     $stupid_filtered_html_format->save();
     $this->assertIdentical(
       $stupid_filtered_html_format->getHtmlRestrictions(),
-      array('allowed' => array()), // No tag is allowed.
+      ['allowed' => []], // No tag is allowed.
       'FilterFormatInterface::getHtmlRestrictions() works as expected for the stupid_filtered_html format.'
     );
     $this->assertIdentical(
       $stupid_filtered_html_format->getFilterTypes(),
-      array(FilterInterface::TYPE_HTML_RESTRICTOR),
+      [FilterInterface::TYPE_HTML_RESTRICTOR],
       'FilterFormatInterface::getFilterTypes() works as expected for the stupid_filtered_html format.'
     );
 
     // Test on very_restricted_html, where there's two different filters of the
     // FilterInterface::TYPE_HTML_RESTRICTOR type, each restricting in different ways.
-    $very_restricted_html_format = FilterFormat::create(array(
+    $very_restricted_html_format = FilterFormat::create([
       'format' => 'very_restricted_html',
       'name' => 'Very Restricted HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<p> <br> <a href> <strong>',
-          ),
-        ),
-        'filter_test_restrict_tags_and_attributes' => array(
+          ],
+        ],
+        'filter_test_restrict_tags_and_attributes' => [
           'status' => 1,
-          'settings' => array(
-            'restrictions' => array(
-              'allowed' => array(
+          'settings' => [
+            'restrictions' => [
+              'allowed' => [
                 'p' => TRUE,
                 'br' => FALSE,
-                'a' => array('href' => TRUE),
+                'a' => ['href' => TRUE],
                 'em' => TRUE,
-              ),
-            )
-          ),
-        ),
-      )
-    ));
+              ],
+            ]
+          ],
+        ],
+      ]
+    ]);
     $very_restricted_html_format->save();
     $this->assertIdentical(
       $very_restricted_html_format->getHtmlRestrictions(),
-      array(
-        'allowed' => array(
+      [
+        'allowed' => [
           'p' => FALSE,
           'br' => FALSE,
-          'a' => array('href' => TRUE),
-          '*' => array('style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => array('ltr' => TRUE, 'rtl' => TRUE)),
-        ),
-      ),
+          'a' => ['href' => TRUE],
+          '*' => ['style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => ['ltr' => TRUE, 'rtl' => TRUE]],
+        ],
+      ],
       'FilterFormatInterface::getHtmlRestrictions() works as expected for the very_restricted_html format.'
     );
     $this->assertIdentical(
       $very_restricted_html_format->getFilterTypes(),
-      array(FilterInterface::TYPE_HTML_RESTRICTOR),
+      [FilterInterface::TYPE_HTML_RESTRICTOR],
       'FilterFormatInterface::getFilterTypes() works as expected for the very_restricted_html format.'
     );
 
     // Test on nonsensical_restricted_html, where the allowed attribute values
     // contain asterisks, which do not have any meaning, but which we also
     // cannot prevent because configuration can be modified outside of forms.
-    $nonsensical_restricted_html = FilterFormat::create(array(
+    $nonsensical_restricted_html = FilterFormat::create([
       'format' => 'nonsensical_restricted_html',
       'name' => 'Nonsensical Restricted HTML',
-      'filters' => array(
-        'filter_html' => array(
+      'filters' => [
+        'filter_html' => [
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<a> <b class> <c class="*"> <d class="foo bar-* *">',
-          ),
-        ),
-      )
-    ));
+          ],
+        ],
+      ]
+    ]);
     $nonsensical_restricted_html->save();
     $this->assertIdentical(
       $nonsensical_restricted_html->getHtmlRestrictions(),
-      array(
-        'allowed' => array(
+      [
+        'allowed' => [
           'a' => FALSE,
-          'b' => array('class' => TRUE),
-          'c' => array('class' => TRUE),
-          'd' => array('class' => array('foo' => TRUE, 'bar-*' => TRUE)),
-          '*' => array('style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => array('ltr' => TRUE, 'rtl' => TRUE)),
-        ),
-      ),
+          'b' => ['class' => TRUE],
+          'c' => ['class' => TRUE],
+          'd' => ['class' => ['foo' => TRUE, 'bar-*' => TRUE]],
+          '*' => ['style' => FALSE, 'on*' => FALSE, 'lang' => TRUE, 'dir' => ['ltr' => TRUE, 'rtl' => TRUE]],
+        ],
+      ],
       'FilterFormatInterface::getHtmlRestrictions() works as expected for the nonsensical_restricted_html format.'
     );
     $this->assertIdentical(
       $very_restricted_html_format->getFilterTypes(),
-      array(FilterInterface::TYPE_HTML_RESTRICTOR),
+      [FilterInterface::TYPE_HTML_RESTRICTOR],
       'FilterFormatInterface::getFilterTypes() works as expected for the very_restricted_html format.'
     );
   }
@@ -250,57 +250,57 @@ function testFilterFormatAPI() {
    * This test focuses solely on those advanced features.
    */
   function testProcessedTextElement() {
-    FilterFormat::create(array(
+    FilterFormat::create([
       'format' => 'element_test',
       'name' => 'processed_text element test format',
-      'filters' => array(
-        'filter_test_assets' => array(
+      'filters' => [
+        'filter_test_assets' => [
           'weight' => -1,
           'status' => TRUE,
-        ),
-        'filter_test_cache_tags' => array(
+        ],
+        'filter_test_cache_tags' => [
           'weight' => 0,
           'status' => TRUE,
-        ),
-        'filter_test_cache_contexts' => array(
+        ],
+        'filter_test_cache_contexts' => [
           'weight' => 0,
           'status' => TRUE,
-        ),
-        'filter_test_cache_merge' => array(
+        ],
+        'filter_test_cache_merge' => [
           'weight' => 0,
           'status' => TRUE,
-        ),
-        'filter_test_placeholders' => array(
+        ],
+        'filter_test_placeholders' => [
           'weight' => 1,
           'status' => TRUE,
-        ),
+        ],
         // Run the HTML corrector filter last, because it has the potential to
         // break the placeholders added by the filter_test_placeholders filter.
-        'filter_htmlcorrector' => array(
+        'filter_htmlcorrector' => [
           'weight' => 10,
           'status' => TRUE,
-        ),
-      ),
-    ))->save();
+        ],
+      ],
+    ])->save();
 
-    $build = array(
+    $build = [
       '#type' => 'processed_text',
       '#text' => '<p>Hello, world!</p>',
       '#format' => 'element_test',
-    );
+    ];
     drupal_render_root($build);
 
     // Verify the attachments and cacheability metadata.
-    $expected_attachments = array(
+    $expected_attachments = [
       // The assets attached by the filter_test_assets filter.
-      'library' => array(
+      'library' => [
         'filter/caption',
-      ),
+      ],
       // The placeholders attached that still need to be processed.
       'placeholders' => [],
-    );
+    ];
     $this->assertEqual($expected_attachments, $build['#attached'], 'Expected attachments present');
-    $expected_cache_tags = array(
+    $expected_cache_tags = [
       // The cache tag set by the processed_text element itself.
       'config:filter.format.element_test',
       // The cache tags set by the filter_test_cache_tags filter.
@@ -308,7 +308,7 @@ function testProcessedTextElement() {
       'foo:baz',
       // The cache tags set by the filter_test_cache_merge filter.
       'merge:tag',
-    );
+    ];
     $this->assertEqual($expected_cache_tags, $build['#cache']['tags'], 'Expected cache tags present.');
     $expected_cache_contexts = [
       // The cache context set by the filter_test_cache_contexts filter.
@@ -333,20 +333,20 @@ function testTypedDataAPI() {
 
     $this->assertTrue($data instanceof OptionsProviderInterface, 'Typed data object implements \Drupal\Core\TypedData\OptionsProviderInterface');
 
-    $filtered_html_user = $this->createUser(array('uid' => 2), array(
+    $filtered_html_user = $this->createUser(['uid' => 2], [
       FilterFormat::load('filtered_html')->getPermissionName(),
-    ));
+    ]);
 
     // Test with anonymous user.
     $user = new AnonymousUserSession();
     \Drupal::currentUser()->setAccount($user);
 
-    $expected_available_options = array(
+    $expected_available_options = [
       'filtered_html' => 'Filtered HTML',
       'full_html' => 'Full HTML',
       'filter_test' => 'Test format',
       'plain_text' => 'Plain text',
-    );
+    ];
 
     $available_values = $data->getPossibleValues();
     $this->assertEqual($available_values, array_keys($expected_available_options));
@@ -354,9 +354,9 @@ function testTypedDataAPI() {
     $this->assertEqual($available_options, $expected_available_options);
 
     $allowed_values = $data->getSettableValues($user);
-    $this->assertEqual($allowed_values, array('plain_text'));
+    $this->assertEqual($allowed_values, ['plain_text']);
     $allowed_options = $data->getSettableOptions($user);
-    $this->assertEqual($allowed_options, array('plain_text' => 'Plain text'));
+    $this->assertEqual($allowed_options, ['plain_text' => 'Plain text']);
 
     $data->setValue('foo');
     $violations = $data->validate();
@@ -383,12 +383,12 @@ function testTypedDataAPI() {
     $this->assertEqual(count($violations), 0, "No validation violation for accessible format 'filtered_html' found.");
 
     $allowed_values = $data->getSettableValues($filtered_html_user);
-    $this->assertEqual($allowed_values, array('filtered_html', 'plain_text'));
+    $this->assertEqual($allowed_values, ['filtered_html', 'plain_text']);
     $allowed_options = $data->getSettableOptions($filtered_html_user);
-    $expected_allowed_options = array(
+    $expected_allowed_options = [
       'filtered_html' => 'Filtered HTML',
       'plain_text' => 'Plain text',
-    );
+    ];
     $this->assertEqual($allowed_options, $expected_allowed_options);
   }
 
@@ -397,43 +397,43 @@ function testTypedDataAPI() {
    */
   public function testFilterFormatPreSave() {
     /** @var \Drupal\filter\FilterFormatInterface $crazy_format */
-    $crazy_format = FilterFormat::create(array(
+    $crazy_format = FilterFormat::create([
       'format' => 'crazy',
       'name' => 'Crazy',
       'weight' => 1,
-      'filters' => array(
-        'filter_html_escape' => array(
+      'filters' => [
+        'filter_html_escape' => [
           'weight' => 10,
           'status' => 1,
-        ),
-        'filter_html' => array(
+        ],
+        'filter_html' => [
           'weight' => -10,
           'status' => 1,
-          'settings' => array(
+          'settings' => [
             'allowed_html' => '<p>',
-          ),
-        ),
-      )
-    ));
+          ],
+        ],
+      ]
+    ]);
     $crazy_format->save();
     // Use config to directly load the configuration and check that only enabled
     // or customized plugins are saved to configuration.
     $filters = $this->config('filter.format.crazy')->get('filters');
-    $this->assertEqual(array('filter_html_escape', 'filter_html'), array_keys($filters));
+    $this->assertEqual(['filter_html_escape', 'filter_html'], array_keys($filters));
 
     // Disable a plugin to ensure that disabled plugins with custom settings are
     // stored in configuration.
-    $crazy_format->setFilterConfig('filter_html_escape', array('status' => FALSE));
+    $crazy_format->setFilterConfig('filter_html_escape', ['status' => FALSE]);
     $crazy_format->save();
     $filters = $this->config('filter.format.crazy')->get('filters');
-    $this->assertEqual(array('filter_html_escape', 'filter_html'), array_keys($filters));
+    $this->assertEqual(['filter_html_escape', 'filter_html'], array_keys($filters));
 
     // Set the settings as per default to ensure that disable plugins in this
     // state are not stored in configuration.
-    $crazy_format->setFilterConfig('filter_html_escape', array('weight' => -10));
+    $crazy_format->setFilterConfig('filter_html_escape', ['weight' => -10]);
     $crazy_format->save();
     $filters = $this->config('filter.format.crazy')->get('filters');
-    $this->assertEqual(array('filter_html'), array_keys($filters));
+    $this->assertEqual(['filter_html'], array_keys($filters));
   }
 
   /**
@@ -452,7 +452,7 @@ public function assertFilterFormatViolation(ConstraintViolationListInterface $vi
         break;
       }
     }
-    $this->assertTrue($filter_format_violation_found, format_string('Validation violation for invalid value "%invalid_value" found', array('%invalid_value' => $invalid_value)));
+    $this->assertTrue($filter_format_violation_found, format_string('Validation violation for invalid value "%invalid_value" found', ['%invalid_value' => $invalid_value]));
   }
 
   /**
@@ -467,7 +467,7 @@ public function assertFilterFormatViolation(ConstraintViolationListInterface $vi
    * @see filter_system_info_alter()
    */
   public function testDependencyRemoval() {
-    $this->installSchema('user', array('users_data'));
+    $this->installSchema('user', ['users_data']);
     $filter_format = FilterFormat::load('filtered_html');
 
     // Disable the filter_test_restrict_tags_and_attributes filter plugin but
@@ -493,7 +493,7 @@ public function testDependencyRemoval() {
     $this->assertEqual(['module' => ['filter_test']], $filter_format->getDependencies());
 
     // Uninstall the module.
-    \Drupal::service('module_installer')->uninstall(array('filter_test'));
+    \Drupal::service('module_installer')->uninstall(['filter_test']);
 
     // Verify the filter format still exists but the dependency and filter is
     // gone.
diff --git a/core/modules/filter/tests/src/Kernel/FilterCrudTest.php b/core/modules/filter/tests/src/Kernel/FilterCrudTest.php
index 0a9be18..87ea076 100644
--- a/core/modules/filter/tests/src/Kernel/FilterCrudTest.php
+++ b/core/modules/filter/tests/src/Kernel/FilterCrudTest.php
@@ -24,42 +24,42 @@ class FilterCrudTest extends KernelTestBase {
    */
   function testTextFormatCrud() {
     // Add a text format with minimum data only.
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'empty_format',
       'name' => 'Empty format',
-    ));
+    ]);
     $format->save();
     $this->verifyTextFormat($format);
 
     // Add another text format specifying all possible properties.
-    $format = FilterFormat::create(array(
+    $format = FilterFormat::create([
       'format' => 'custom_format',
       'name' => 'Custom format',
-    ));
-    $format->setFilterConfig('filter_url', array(
+    ]);
+    $format->setFilterConfig('filter_url', [
       'status' => 1,
-      'settings' => array(
+      'settings' => [
         'filter_url_length' => 30,
-      ),
-    ));
+      ],
+    ]);
     $format->save();
     $this->verifyTextFormat($format);
 
     // Alter some text format properties and save again.
     $format->set('name', 'Altered format');
-    $format->setFilterConfig('filter_url', array(
+    $format->setFilterConfig('filter_url', [
       'status' => 0,
-    ));
-    $format->setFilterConfig('filter_autop', array(
+    ]);
+    $format->setFilterConfig('filter_autop', [
       'status' => 1,
-    ));
+    ]);
     $format->save();
     $this->verifyTextFormat($format);
 
     // Add a filter_test_replace  filter and save again.
-    $format->setFilterConfig('filter_test_replace', array(
+    $format->setFilterConfig('filter_test_replace', [
       'status' => 1,
-    ));
+    ]);
     $format->save();
     $this->verifyTextFormat($format);
 
@@ -89,7 +89,7 @@ public function testDisableFallbackFormat() {
    * Verifies that a text format is properly stored.
    */
   function verifyTextFormat($format) {
-    $t_args = array('%format' => $format->label());
+    $t_args = ['%format' => $format->label()];
     $default_langcode = \Drupal::languageManager()->getDefaultLanguage()->getId();
 
     // Verify the loaded filter has all properties.
diff --git a/core/modules/filter/tests/src/Kernel/FilterDefaultConfigTest.php b/core/modules/filter/tests/src/Kernel/FilterDefaultConfigTest.php
index b4ce50c..eb8106c 100644
--- a/core/modules/filter/tests/src/Kernel/FilterDefaultConfigTest.php
+++ b/core/modules/filter/tests/src/Kernel/FilterDefaultConfigTest.php
@@ -13,7 +13,7 @@
  */
 class FilterDefaultConfigTest extends KernelTestBase {
 
-  public static $modules = array('system', 'user', 'filter', 'filter_test');
+  public static $modules = ['system', 'user', 'filter', 'filter_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -24,7 +24,7 @@ protected function setUp() {
     $this->installEntitySchema('user');
 
     // Install filter_test module, which ships with custom default format.
-    $this->installConfig(array('user', 'filter_test'));
+    $this->installConfig(['user', 'filter_test']);
   }
 
   /**
@@ -44,27 +44,27 @@ function testInstallation() {
     // Verify that the loaded format does not contain any roles.
     $this->assertEqual($format->get('roles'), NULL);
     // Verify that the defined roles in the default config have been processed.
-    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), array(
+    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), [
       RoleInterface::ANONYMOUS_ID,
       RoleInterface::AUTHENTICATED_ID,
-    ));
+    ]);
 
     // Verify enabled filters.
     $filters = $format->get('filters');
     $this->assertEqual($filters['filter_html_escape']['status'], 1);
     $this->assertEqual($filters['filter_html_escape']['weight'], -10);
     $this->assertEqual($filters['filter_html_escape']['provider'], 'filter');
-    $this->assertEqual($filters['filter_html_escape']['settings'], array());
+    $this->assertEqual($filters['filter_html_escape']['settings'], []);
     $this->assertEqual($filters['filter_autop']['status'], 1);
     $this->assertEqual($filters['filter_autop']['weight'], 0);
     $this->assertEqual($filters['filter_autop']['provider'], 'filter');
-    $this->assertEqual($filters['filter_autop']['settings'], array());
+    $this->assertEqual($filters['filter_autop']['settings'], []);
     $this->assertEqual($filters['filter_url']['status'], 1);
     $this->assertEqual($filters['filter_url']['weight'], 0);
     $this->assertEqual($filters['filter_url']['provider'], 'filter');
-    $this->assertEqual($filters['filter_url']['settings'], array(
+    $this->assertEqual($filters['filter_url']['settings'], [
       'filter_url_length' => 72,
-    ));
+    ]);
   }
 
   /**
@@ -73,23 +73,23 @@ function testInstallation() {
   function testUpdateRoles() {
     // Verify role permissions declared in default config.
     $format = FilterFormat::load('filter_test');
-    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), array(
+    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), [
       RoleInterface::ANONYMOUS_ID,
       RoleInterface::AUTHENTICATED_ID,
-    ));
+    ]);
 
     // Attempt to change roles.
-    $format->set('roles', array(
+    $format->set('roles', [
       RoleInterface::AUTHENTICATED_ID,
-    ));
+    ]);
     $format->save();
 
     // Verify that roles have not been updated.
     $format = FilterFormat::load('filter_test');
-    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), array(
+    $this->assertEqual(array_keys(filter_get_roles_by_format($format)), [
       RoleInterface::ANONYMOUS_ID,
       RoleInterface::AUTHENTICATED_ID,
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/filter/tests/src/Kernel/FilterKernelTest.php b/core/modules/filter/tests/src/Kernel/FilterKernelTest.php
index 06c1e4b..bbac916 100644
--- a/core/modules/filter/tests/src/Kernel/FilterKernelTest.php
+++ b/core/modules/filter/tests/src/Kernel/FilterKernelTest.php
@@ -22,7 +22,7 @@ class FilterKernelTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'filter');
+  public static $modules = ['system', 'filter'];
 
   /**
    * @var \Drupal\filter\Plugin\FilterInterface[]
@@ -31,10 +31,10 @@ class FilterKernelTest extends KernelTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('system'));
+    $this->installConfig(['system']);
 
     $manager = $this->container->get('plugin.manager.filter');
-    $bag = new FilterPluginCollection($manager, array());
+    $bag = new FilterPluginCollection($manager, []);
     $this->filters = $bag->getAll();
   }
 
@@ -107,11 +107,11 @@ function testCaptionFilter() {
       });
     };
 
-    $attached_library = array(
-      'library' => array(
+    $attached_library = [
+      'library' => [
         'filter/caption',
-      ),
-    );
+      ],
+    ];
 
     // No data-caption attribute.
     $input = '<img src="llama.jpg" />';
@@ -190,13 +190,13 @@ function testCaptionFilter() {
     // want to make sure that it works well in tandem with the "Limit allowed
     // HTML tags" filter, which it is typically used with.
     $html_filter = $this->filters['filter_html'];
-    $html_filter->setConfiguration(array(
-      'settings' => array(
+    $html_filter->setConfiguration([
+      'settings' => [
         'allowed_html' => '<img src data-align data-caption>',
         'filter_html_help' => 1,
         'filter_html_nofollow' => 0,
-      )
-    ));
+      ]
+    ]);
     $test_with_html_filter = function ($input) use ($filter, $html_filter, $renderer) {
       return $renderer->executeInRenderContext(new RenderContext(), function () use ($input, $filter, $html_filter) {
         // 1. Apply HTML filter's processing step.
@@ -272,11 +272,11 @@ function testAlignAndCaptionFilters() {
       });
     };
 
-    $attached_library = array(
-      'library' => array(
+    $attached_library = [
+      'library' => [
         'filter/caption',
-      ),
-    );
+      ],
+    ];
 
     // Both data-caption and data-align attributes: all 3 allowed values for the
     // data-align attribute.
@@ -322,60 +322,60 @@ function testLineBreakFilter() {
     // Since the line break filter naturally needs plenty of newlines in test
     // strings and expectations, we're using "\n" instead of regular newlines
     // here.
-    $tests = array(
+    $tests = [
       // Single line breaks should be changed to <br /> tags, while paragraphs
       // separated with double line breaks should be enclosed with <p></p> tags.
-      "aaa\nbbb\n\nccc" => array(
+      "aaa\nbbb\n\nccc" => [
         "<p>aaa<br />\nbbb</p>\n<p>ccc</p>" => TRUE,
-      ),
+      ],
       // Skip contents of certain block tags entirely.
       "<script>aaa\nbbb\n\nccc</script>
 <style>aaa\nbbb\n\nccc</style>
 <pre>aaa\nbbb\n\nccc</pre>
 <object>aaa\nbbb\n\nccc</object>
 <iframe>aaa\nbbb\n\nccc</iframe>
-" => array(
+" => [
         "<script>aaa\nbbb\n\nccc</script>" => TRUE,
         "<style>aaa\nbbb\n\nccc</style>" => TRUE,
         "<pre>aaa\nbbb\n\nccc</pre>" => TRUE,
         "<object>aaa\nbbb\n\nccc</object>" => TRUE,
         "<iframe>aaa\nbbb\n\nccc</iframe>" => TRUE,
-      ),
+      ],
       // Skip comments entirely.
-      "One. <!-- comment --> Two.\n<!--\nThree.\n-->\n" => array(
+      "One. <!-- comment --> Two.\n<!--\nThree.\n-->\n" => [
         '<!-- comment -->' => TRUE,
         "<!--\nThree.\n-->" => TRUE,
-      ),
+      ],
       // Resulting HTML should produce matching paragraph tags.
-      '<p><div>  </div></p>' => array(
+      '<p><div>  </div></p>' => [
         "<p>\n<div>  </div>\n</p>" => TRUE,
-      ),
-      '<div><p>  </p></div>' => array(
+      ],
+      '<div><p>  </p></div>' => [
         "<div>\n</div>" => TRUE,
-      ),
-      '<blockquote><pre>aaa</pre></blockquote>' => array(
+      ],
+      '<blockquote><pre>aaa</pre></blockquote>' => [
         "<blockquote><pre>aaa</pre></blockquote>" => TRUE,
-      ),
-      "<pre>aaa\nbbb\nccc</pre>\nddd\neee" => array(
+      ],
+      "<pre>aaa\nbbb\nccc</pre>\nddd\neee" => [
         "<pre>aaa\nbbb\nccc</pre>" => TRUE,
         "<p>ddd<br />\neee</p>" => TRUE,
-      ),
+      ],
       // Comments remain unchanged and subsequent lines/paragraphs are
       // transformed normally.
-      "aaa<!--comment-->\n\nbbb\n\nccc\n\nddd<!--comment\nwith linebreak-->\n\neee\n\nfff" => array(
+      "aaa<!--comment-->\n\nbbb\n\nccc\n\nddd<!--comment\nwith linebreak-->\n\neee\n\nfff" => [
         "<p>aaa</p>\n<!--comment--><p>\nbbb</p>\n<p>ccc</p>\n<p>ddd</p>" => TRUE,
         "<!--comment\nwith linebreak--><p>\neee</p>\n<p>fff</p>" => TRUE,
-      ),
+      ],
       // Check that a comment in a PRE will result that the text after
       // the comment, but still in PRE, is not transformed.
-      "<pre>aaa\nbbb<!-- comment -->\n\nccc</pre>\nddd" => array(
+      "<pre>aaa\nbbb<!-- comment -->\n\nccc</pre>\nddd" => [
         "<pre>aaa\nbbb<!-- comment -->\n\nccc</pre>" => TRUE,
-      ),
+      ],
       // Bug 810824, paragraphs were appearing around iframe tags.
-      "<iframe>aaa</iframe>\n\n" => array(
+      "<iframe>aaa</iframe>\n\n" => [
         "<p><iframe>aaa</iframe></p>" => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
 
     // Very long string hitting PCRE limits.
@@ -406,13 +406,13 @@ function testLineBreakFilter() {
   function testHtmlFilter() {
     // Get FilterHtml object.
     $filter = $this->filters['filter_html'];
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'allowed_html' => '<a> <p> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <br>',
         'filter_html_help' => 1,
         'filter_html_nofollow' => 0,
-      )
-    ));
+      ]
+    ]);
 
     // HTML filter is not able to secure some tags, these should never be
     // allowed.
@@ -461,25 +461,25 @@ function testHtmlFilter() {
     $this->assertNormalized($f, '<a>link</a>', 'HTML filter should remove attributes that are not explicitly allowed.');
 
     // Now whitelist the "llama" attribute on <a>.
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'allowed_html' => '<a href llama> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <br>',
         'filter_html_help' => 1,
         'filter_html_nofollow' => 0,
-      )
-    ));
+      ]
+    ]);
     $f = (string) $filter->process('<a kitten="cute" llama="awesome">link</a>', Language::LANGCODE_NOT_SPECIFIED);
     $this->assertNormalized($f, '<a llama="awesome">link</a>', 'HTML filter keeps explicitly allowed attributes, and removes attributes that are not explicitly allowed.');
 
     // Restrict the whitelisted "llama" attribute on <a> to only allow the value
     // "majestical", or "epic".
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'allowed_html' => '<a href llama="majestical epic"> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <br>',
         'filter_html_help' => 1,
         'filter_html_nofollow' => 0,
-      )
-    ));
+      ]
+    ]);
     $f = (string) $filter->process('<a kitten="cute" llama="awesome">link</a>', Language::LANGCODE_NOT_SPECIFIED);
     $this->assertIdentical($f, '<a>link</a>', 'HTML filter removes allowed attributes that do not have an explicitly allowed value.');
     $f = (string) $filter->process('<a kitten="cute" llama="majestical">link</a>', Language::LANGCODE_NOT_SPECIFIED);
@@ -496,13 +496,13 @@ function testHtmlFilter() {
   function testNoFollowFilter() {
     // Get FilterHtml object.
     $filter = $this->filters['filter_html'];
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'allowed_html' => '<a href>',
         'filter_html_help' => 1,
         'filter_html_nofollow' => 1,
-      )
-    ));
+      ]
+    ]);
 
     // Test if the rel="nofollow" attribute is added, even if we try to prevent
     // it.
@@ -530,13 +530,13 @@ function testHtmlEscapeFilter() {
     // Get FilterHtmlEscape object.
     $filter = $this->filters['filter_html_escape'];
 
-    $tests = array(
-      "   One. <!-- \"comment\" --> Two'.\n<p>Three.</p>\n    " => array(
+    $tests = [
+      "   One. <!-- \"comment\" --> Two'.\n<p>Three.</p>\n    " => [
         "One. &lt;!-- &quot;comment&quot; --&gt; Two&#039;.\n&lt;p&gt;Three.&lt;/p&gt;" => TRUE,
         '   One.' => FALSE,
         "</p>\n    " => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
   }
 
@@ -546,11 +546,11 @@ function testHtmlEscapeFilter() {
   function testUrlFilter() {
     // Get FilterUrl object.
     $filter = $this->filters['filter_url'];
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'filter_url_length' => 496,
-      )
-    ));
+      ]
+    ]);
 
     // @todo Possible categories:
     // - absolute, mail, partial
@@ -562,24 +562,24 @@ function testUrlFilter() {
     $email_with_plus_sign = 'one+two@example.com';
 
     // Filter selection/pattern matching.
-    $tests = array(
+    $tests = [
       // HTTP URLs.
       '
 http://example.com or www.example.com
-' => array(
+' => [
         '<a href="http://example.com">http://example.com</a>' => TRUE,
         '<a href="http://www.example.com">www.example.com</a>' => TRUE,
-      ),
+      ],
       // MAILTO URLs.
       '
 person@example.com or mailto:person2@example.com or ' . $email_with_plus_sign . ' or ' . $long_email . ' but not ' . $too_long_email . '
-' => array(
+' => [
         '<a href="mailto:person@example.com">person@example.com</a>' => TRUE,
         '<a href="mailto:person2@example.com">mailto:person2@example.com</a>' => TRUE,
         '<a href="mailto:' . $long_email . '">' . $long_email . '</a>' => TRUE,
         '<a href="mailto:' . $too_long_email . '">' . $too_long_email . '</a>' => FALSE,
         '<a href="mailto:' . $email_with_plus_sign . '">' . $email_with_plus_sign . '</a>' => TRUE,
-      ),
+      ],
       // URI parts and special characters.
       '
 http://trailingslash.com/ or www.trailingslash.com/
@@ -589,7 +589,7 @@ function testUrlFilter() {
 ftp://user:pass@ftp.example.com/~home/dir1
 sftp://user@nonstandardport:222/dir
 ssh://192.168.0.100/srv/git/drupal.git
-' => array(
+' => [
         '<a href="http://trailingslash.com/">http://trailingslash.com/</a>' => TRUE,
         '<a href="http://www.trailingslash.com/">www.trailingslash.com/</a>' => TRUE,
         '<a href="http://host.com/some/path?query=foo&amp;bar[baz]=beer#fragment">http://host.com/some/path?query=foo&amp;bar[baz]=beer#fragment</a>' => TRUE,
@@ -599,7 +599,7 @@ function testUrlFilter() {
         '<a href="ftp://user:pass@ftp.example.com/~home/dir1">ftp://user:pass@ftp.example.com/~home/dir1</a>' => TRUE,
         '<a href="sftp://user@nonstandardport:222/dir">sftp://user@nonstandardport:222/dir</a>' => TRUE,
         '<a href="ssh://192.168.0.100/srv/git/drupal.git">ssh://192.168.0.100/srv/git/drupal.git</a>' => TRUE,
-      ),
+      ],
       // International Unicode characters.
       '
 http://пример.испытание/
@@ -609,7 +609,7 @@ function testUrlFilter() {
 http://例え.テスト/
 http://dréißig-bücher.de/
 http://méxico-mañana.es/
-' => array(
+' => [
         '<a href="http://пример.испытание/">http://пример.испытание/</a>' => TRUE,
         '<a href="http://مثال.إختبار/">http://مثال.إختبار/</a>' => TRUE,
         '<a href="http://例子.測試/">http://例子.測試/</a>' => TRUE,
@@ -617,25 +617,25 @@ function testUrlFilter() {
         '<a href="http://例え.テスト/">http://例え.テスト/</a>' => TRUE,
         '<a href="http://dréißig-bücher.de/">http://dréißig-bücher.de/</a>' => TRUE,
         '<a href="http://méxico-mañana.es/">http://méxico-mañana.es/</a>' => TRUE,
-      ),
+      ],
       // Encoding.
       '
 http://ampersand.com/?a=1&b=2
 http://encoded.com/?a=1&amp;b=2
-' => array(
+' => [
         '<a href="http://ampersand.com/?a=1&amp;b=2">http://ampersand.com/?a=1&amp;b=2</a>' => TRUE,
         '<a href="http://encoded.com/?a=1&amp;b=2">http://encoded.com/?a=1&amp;b=2</a>' => TRUE,
-      ),
+      ],
       // Domain name length.
       '
 www.ex.ex or www.example.example or www.toolongdomainexampledomainexampledomainexampledomainexampledomain or
 me@me.tv
-' => array(
+' => [
         '<a href="http://www.ex.ex">www.ex.ex</a>' => TRUE,
         '<a href="http://www.example.example">www.example.example</a>' => TRUE,
         'http://www.toolong' => FALSE,
         '<a href="mailto:me@me.tv">me@me.tv</a>' => TRUE,
-      ),
+      ],
       // Absolute URL protocols.
       // The list to test is found in the beginning of _filter_url() at
       // $protocols = \Drupal::getContainer()->getParameter('filter_protocols').
@@ -650,7 +650,7 @@ function testUrlFilter() {
 webcal://calendar,
 rtsp://127.0.0.1,
 not foo://disallowed.com.
-' => array(
+' => [
         'href="https://example.com"' => TRUE,
         'href="ftp://ftp.example.com"' => TRUE,
         'href="news://example.net"' => TRUE,
@@ -662,12 +662,12 @@ function testUrlFilter() {
         'href="rtsp://127.0.0.1"' => TRUE,
         'href="foo://disallowed.com"' => FALSE,
         'not foo://disallowed.com.' => TRUE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
 
     // Surrounding text/punctuation.
-    $tests = array(
+    $tests = [
       '
 Partial URL with trailing period www.partial.com.
 Email with trailing comma person@example.com,
@@ -680,7 +680,7 @@ function testUrlFilter() {
 Absolute URL with square brackets in the URL as well as surrounded brackets [https://www.drupal.org/?class[]=1]
 Absolute URL with quotes "https://www.drupal.org/sample"
 
-' => array(
+' => [
         'period <a href="http://www.partial.com">www.partial.com</a>.' => TRUE,
         'comma <a href="mailto:person@example.com">person@example.com</a>,' => TRUE,
         'question <a href="http://www.absolute.com">http://www.absolute.com</a>?' => TRUE,
@@ -691,45 +691,45 @@ function testUrlFilter() {
         'brackets (<a href="http://www.foo.com/more_(than)_one_(parens)">www.foo.com/more_(than)_one_(parens)</a>).' => TRUE,
         'brackets [<a href="https://www.drupal.org/?class[]=1">https://www.drupal.org/?class[]=1</a>]' => TRUE,
         'quotes "<a href="https://www.drupal.org/sample">https://www.drupal.org/sample</a>"' => TRUE,
-      ),
+      ],
       '
 (www.parenthesis.com/dir?a=1&b=2#a)
-' => array(
+' => [
         '(<a href="http://www.parenthesis.com/dir?a=1&amp;b=2#a">www.parenthesis.com/dir?a=1&amp;b=2#a</a>)' => TRUE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
 
     // Surrounding markup.
-    $tests = array(
+    $tests = [
       '
 <p xmlns="www.namespace.com" />
 <p xmlns="http://namespace.com">
 An <a href="http://example.com" title="Read more at www.example.info...">anchor</a>.
 </p>
-' => array(
+' => [
         '<p xmlns="www.namespace.com" />' => TRUE,
         '<p xmlns="http://namespace.com">' => TRUE,
         'href="http://www.namespace.com"' => FALSE,
         'href="http://namespace.com"' => FALSE,
         'An <a href="http://example.com" title="Read more at www.example.info...">anchor</a>.' => TRUE,
-      ),
+      ],
       '
 Not <a href="foo">www.relative.com</a> or <a href="http://absolute.com">www.absolute.com</a>
 but <strong>http://www.strong.net</strong> or <em>www.emphasis.info</em>
-' => array(
+' => [
         '<a href="foo">www.relative.com</a>' => TRUE,
         'href="http://www.relative.com"' => FALSE,
         '<a href="http://absolute.com">www.absolute.com</a>' => TRUE,
         '<strong><a href="http://www.strong.net">http://www.strong.net</a></strong>' => TRUE,
         '<em><a href="http://www.emphasis.info">www.emphasis.info</a></em>' => TRUE,
-      ),
+      ],
       '
 Test <code>using www.example.com the code tag</code>.
-' => array(
+' => [
         'href' => FALSE,
         'http' => FALSE,
-      ),
+      ],
       '
 Intro.
 <blockquote>
@@ -737,7 +737,7 @@ function testUrlFilter() {
 </blockquote>
 
 Outro.
-' => array(
+' => [
         'href="http://www.example.com"' => TRUE,
         'href="mailto:person@example.com"' => TRUE,
         'href="http://origin.example.com"' => TRUE,
@@ -745,18 +745,18 @@ function testUrlFilter() {
         'http://www.example.info' => FALSE,
         'Intro.' => TRUE,
         'Outro.' => TRUE,
-      ),
+      ],
       '
 Unknown tag <x>containing x and www.example.com</x>? And a tag <pooh>beginning with p and containing www.example.pooh with p?</pooh>
-' => array(
+' => [
         'href="http://www.example.com"' => TRUE,
         'href="http://www.example.pooh"' => TRUE,
-      ),
+      ],
       '
 <p>Test &lt;br/&gt;: This is a www.example17.com example <strong>with</strong> various http://www.example18.com tags. *<br/>
  It is important www.example19.com to *<br/>test different URLs and http://www.example20.com in the same paragraph. *<br>
 HTML www.example21.com soup by person@example22.com can litererally http://www.example23.com contain *img*<img> anything. Just a www.example24.com with http://www.example25.com thrown in. www.example26.com from person@example27.com with extra http://www.example28.com.
-' => array(
+' => [
         'href="http://www.example17.com"' => TRUE,
         'href="http://www.example18.com"' => TRUE,
         'href="http://www.example19.com"' => TRUE,
@@ -769,7 +769,7 @@ function testUrlFilter() {
         'href="http://www.example26.com"' => TRUE,
         'href="mailto:person@example27.com"' => TRUE,
         'href="http://www.example28.com"' => TRUE,
-      ),
+      ],
       '
 <script>
 <!--
@@ -781,33 +781,33 @@ function testUrlFilter() {
   var exampleurl = "http://example.net";
 //--><!]]>
 </script>
-' => array(
+' => [
         'href="http://www.example.com"' => FALSE,
         'href="http://example.net"' => FALSE,
-      ),
+      ],
       '
 <style>body {
   background: url(http://example.com/pixel.gif);
 }</style>
-' => array(
+' => [
         'href' => FALSE,
-      ),
+      ],
       '
 <!-- Skip any URLs like www.example.com in comments -->
-' => array(
+' => [
         'href' => FALSE,
-      ),
+      ],
       '
 <!-- Skip any URLs like
 www.example.com with a newline in comments -->
-' => array(
+' => [
         'href' => FALSE,
-      ),
+      ],
       '
 <!-- Skip any URLs like www.comment.com in comments. <p>Also ignore http://commented.out/markup.</p> -->
-' => array(
+' => [
         'href' => FALSE,
-      ),
+      ],
       '
 <dl>
 <dt>www.example.com</dt>
@@ -816,39 +816,39 @@ function testUrlFilter() {
 <dt>Check www.example.net</dt>
 <dd>Some text around http://www.example.info by person@example.info?</dd>
 </dl>
-' => array(
+' => [
         'href="http://www.example.com"' => TRUE,
         'href="http://example.com"' => TRUE,
         'href="mailto:person@example.com"' => TRUE,
         'href="http://www.example.net"' => TRUE,
         'href="http://www.example.info"' => TRUE,
         'href="mailto:person@example.info"' => TRUE,
-      ),
+      ],
       '
 <div>www.div.com</div>
 <ul>
 <li>http://listitem.com</li>
 <li class="odd">www.class.listitem.com</li>
 </ul>
-' => array(
+' => [
         '<div><a href="http://www.div.com">www.div.com</a></div>' => TRUE,
         '<li><a href="http://listitem.com">http://listitem.com</a></li>' => TRUE,
         '<li class="odd"><a href="http://www.class.listitem.com">www.class.listitem.com</a></li>' => TRUE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
 
     // URL trimming.
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'filter_url_length' => 20,
-      )
-    ));
-    $tests = array(
-      'www.trimmed.com/d/ff.ext?a=1&b=2#a1' => array(
+      ]
+    ]);
+    $tests = [
+      'www.trimmed.com/d/ff.ext?a=1&b=2#a1' => [
         '<a href="http://www.trimmed.com/d/ff.ext?a=1&amp;b=2#a1">www.trimmed.com/d/f…</a>' => TRUE,
-      ),
-    );
+      ],
+    ];
     $this->assertFilteredString($filter, $tests);
   }
 
@@ -877,18 +877,18 @@ function assertFilteredString($filter, $tests) {
       foreach ($tasks as $value => $is_expected) {
         // Not using assertIdentical, since combination with strpos() is hard to grok.
         if ($is_expected) {
-          $success = $this->assertTrue(strpos($result, $value) !== FALSE, format_string('@source: @value found. Filtered result: @result.', array(
+          $success = $this->assertTrue(strpos($result, $value) !== FALSE, format_string('@source: @value found. Filtered result: @result.', [
             '@source' => var_export($source, TRUE),
             '@value' => var_export($value, TRUE),
             '@result' => var_export($result, TRUE),
-          )));
+          ]));
         }
         else {
-          $success = $this->assertTrue(strpos($result, $value) === FALSE, format_string('@source: @value not found. Filtered result: @result.', array(
+          $success = $this->assertTrue(strpos($result, $value) === FALSE, format_string('@source: @value not found. Filtered result: @result.', [
             '@source' => var_export($source, TRUE),
             '@value' => var_export($value, TRUE),
             '@result' => var_export($result, TRUE),
-          )));
+          ]));
         }
         if (!$success) {
           $this->verbose('Source:<pre>' . Html::escape(var_export($source, TRUE)) . '</pre>'
@@ -921,11 +921,11 @@ function assertFilteredString($filter, $tests) {
   function testUrlFilterContent() {
     // Get FilterUrl object.
     $filter = $this->filters['filter_url'];
-    $filter->setConfiguration(array(
-      'settings' => array(
+    $filter->setConfiguration([
+      'settings' => [
         'filter_url_length' => 496,
-      )
-    ));
+      ]
+    ]);
     $path = __DIR__ . '/../..';
 
     $input = file_get_contents($path . '/filter.url-input.txt');
@@ -1067,7 +1067,7 @@ function testHtmlCorrectorFilter() {
 
 /*--><!]]>*/
 </style></p>',
-      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', array('@pattern_name' => '/*<![CDATA[*/'))
+      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', ['@pattern_name' => '/*<![CDATA[*/'])
     );
 
     $filtered_data = Html::normalize('<p><style>
@@ -1086,7 +1086,7 @@ function testHtmlCorrectorFilter() {
 
 /*--><!]]>*/
 </style></p>',
-      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', array('@pattern_name' => '<!--/*--><![CDATA[/* ><!--*/'))
+      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', ['@pattern_name' => '<!--/*--><![CDATA[/* ><!--*/'])
     );
 
     $filtered_data = Html::normalize('<p><script>
@@ -1103,7 +1103,7 @@ function testHtmlCorrectorFilter() {
 
 //--><!]]>
 </script></p>',
-      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', array('@pattern_name' => '<!--//--><![CDATA[// ><!--'))
+      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', ['@pattern_name' => '<!--//--><![CDATA[// ><!--'])
     );
 
     $filtered_data = Html::normalize('<p><script>
@@ -1120,7 +1120,7 @@ function testHtmlCorrectorFilter() {
 
 //--><!]]>
 </script></p>',
-      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', array('@pattern_name' => '// <![CDATA['))
+      format_string('HTML corrector -- Existing cdata section @pattern_name properly escaped', ['@pattern_name' => '// <![CDATA['])
     );
 
   }
diff --git a/core/modules/filter/tests/src/Kernel/FilterSettingsTest.php b/core/modules/filter/tests/src/Kernel/FilterSettingsTest.php
index dc77eb4..829840c 100644
--- a/core/modules/filter/tests/src/Kernel/FilterSettingsTest.php
+++ b/core/modules/filter/tests/src/Kernel/FilterSettingsTest.php
@@ -17,7 +17,7 @@ class FilterSettingsTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter');
+  public static $modules = ['filter'];
 
   /**
    * Tests explicit and implicit default settings for filters.
@@ -26,21 +26,21 @@ function testFilterDefaults() {
     $filter_info = $this->container->get('plugin.manager.filter')->getDefinitions();
 
     // Create text format using filter default settings.
-    $filter_defaults_format = FilterFormat::create(array(
+    $filter_defaults_format = FilterFormat::create([
       'format' => 'filter_defaults',
       'name' => 'Filter defaults',
-    ));
+    ]);
     $filter_defaults_format->save();
 
     // Verify that default weights defined in hook_filter_info() were applied.
-    $saved_settings = array();
+    $saved_settings = [];
     foreach ($filter_defaults_format->filters() as $name => $filter) {
       $expected_weight = $filter_info[$name]['weight'];
-      $this->assertEqual($filter->weight, $expected_weight, format_string('@name filter weight %saved equals %default', array(
+      $this->assertEqual($filter->weight, $expected_weight, format_string('@name filter weight %saved equals %default', [
         '@name' => $name,
         '%saved' => $filter->weight,
         '%default' => $expected_weight,
-      )));
+      ]));
       $saved_settings[$name]['weight'] = $expected_weight;
     }
 
@@ -51,11 +51,11 @@ function testFilterDefaults() {
 
     // Verify that saved filter settings have not been changed.
     foreach ($filter_defaults_format->filters() as $name => $filter) {
-      $this->assertEqual($filter->weight, $saved_settings[$name]['weight'], format_string('@name filter weight %saved equals %previous', array(
+      $this->assertEqual($filter->weight, $saved_settings[$name]['weight'], format_string('@name filter weight %saved equals %previous', [
         '@name' => $name,
         '%saved' => $filter->weight,
         '%previous' => $saved_settings[$name]['weight'],
-      )));
+      ]));
     }
   }
 
diff --git a/core/modules/filter/tests/src/Kernel/Migrate/d7/MigrateFilterFormatTest.php b/core/modules/filter/tests/src/Kernel/Migrate/d7/MigrateFilterFormatTest.php
index e4053ae..0f54245 100644
--- a/core/modules/filter/tests/src/Kernel/Migrate/d7/MigrateFilterFormatTest.php
+++ b/core/modules/filter/tests/src/Kernel/Migrate/d7/MigrateFilterFormatTest.php
@@ -16,7 +16,7 @@ class MigrateFilterFormatTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('filter');
+  public static $modules = ['filter'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
index f68b935..2dc9ce7 100644
--- a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
+++ b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
@@ -48,7 +48,7 @@ public function providerSource() {
         'name' => 'filter_autop',
         'weight' => 0,
         'status' => 1,
-        'settings' => serialize(array()),
+        'settings' => serialize([]),
       ],
       [
         'format' => 'custom_text_format',
@@ -56,7 +56,7 @@ public function providerSource() {
         'name' => 'filter_html',
         'weight' => 1,
         'status' => 1,
-        'settings' => serialize(array()),
+        'settings' => serialize([]),
       ],
       [
         'format' => 'full_html',
@@ -64,7 +64,7 @@ public function providerSource() {
         'name' => 'filter_url',
         'weight' => 0,
         'status' => 1,
-        'settings' => serialize(array()),
+        'settings' => serialize([]),
       ],
     ];
 
diff --git a/core/modules/forum/forum.install b/core/modules/forum/forum.install
index 36c71e4..4a16a89 100644
--- a/core/modules/forum/forum.install
+++ b/core/modules/forum/forum.install
@@ -21,13 +21,13 @@ function forum_install() {
 
   if (!\Drupal::service('config.installer')->isSyncing()) {
     // Create a default forum so forum posts can be created.
-    $term = Term::create(array(
+    $term = Term::create([
       'name' => t('General discussion'),
       'description' => '',
-      'parent' => array(0),
+      'parent' => [0],
       'vid' => 'forums',
       'forum_container' => 0,
-    ));
+    ]);
     $term->save();
   }
 }
@@ -61,117 +61,117 @@ function forum_uninstall() {
  * Implements hook_schema().
  */
 function forum_schema() {
-  $schema['forum'] = array(
+  $schema['forum'] = [
     'description' => 'Stores the relationship of nodes to forum terms.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {node}.nid of the node.',
-      ),
-      'vid' => array(
+      ],
+      'vid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Primary Key: The {node}.vid of the node.',
-      ),
-      'tid' => array(
+      ],
+      'tid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {taxonomy_term_data}.tid of the forum term assigned to the node.',
-      ),
-    ),
-    'indexes' => array(
-      'forum_topic' => array('nid', 'tid'),
-      'tid' => array('tid'),
-    ),
-    'primary key' => array('vid'),
-    'foreign keys' => array(
-      'forum_node' => array(
+      ],
+    ],
+    'indexes' => [
+      'forum_topic' => ['nid', 'tid'],
+      'tid' => ['tid'],
+    ],
+    'primary key' => ['vid'],
+    'foreign keys' => [
+      'forum_node' => [
         'table' => 'node',
-        'columns' => array(
+        'columns' => [
           'nid' => 'nid',
           'vid' => 'vid',
-        ),
-      ),
-    ),
-  );
+        ],
+      ],
+    ],
+  ];
 
-  $schema['forum_index'] = array(
+  $schema['forum_index'] = [
     'description' => 'Maintains denormalized information about node/term relationships.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'description' => 'The {node}.nid this record tracks.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'title' => array(
+      ],
+      'title' => [
         'description' => 'The node title.',
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'tid' => array(
+      ],
+      'tid' => [
          'description' => 'The term ID.',
          'type' => 'int',
          'unsigned' => TRUE,
          'not null' => TRUE,
          'default' => 0,
-      ),
-      'sticky' => array(
+      ],
+      'sticky' => [
         'description' => 'Boolean indicating whether the node is sticky.',
         'type' => 'int',
         'not null' => FALSE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-      'created' => array(
+      ],
+      'created' => [
         'description' => 'The Unix timestamp when the node was created.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'last_comment_timestamp' => array(
+      ],
+      'last_comment_timestamp' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The Unix timestamp of the last comment that was posted within this node, from {comment}.timestamp.',
-      ),
-      'comment_count' => array(
+      ],
+      'comment_count' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The total number of comments on this node.',
-      ),
-    ),
-    'indexes' => array(
-      'forum_topics' => array('nid', 'tid', 'sticky', 'last_comment_timestamp'),
-      'created' => array('created'),
-      'last_comment_timestamp' => array('last_comment_timestamp'),
-    ),
-    'foreign keys' => array(
-      'tracked_node' => array(
+      ],
+    ],
+    'indexes' => [
+      'forum_topics' => ['nid', 'tid', 'sticky', 'last_comment_timestamp'],
+      'created' => ['created'],
+      'last_comment_timestamp' => ['last_comment_timestamp'],
+    ],
+    'foreign keys' => [
+      'tracked_node' => [
         'table' => 'node',
-        'columns' => array('nid' => 'nid'),
-      ),
-      'term' => array(
+        'columns' => ['nid' => 'nid'],
+      ],
+      'term' => [
         'table' => 'taxonomy_term_data',
-        'columns' => array(
+        'columns' => [
           'tid' => 'tid',
-        ),
-      ),
-    ),
-  );
+        ],
+      ],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/forum/forum.module b/core/modules/forum/forum.module
index 8d4a9f4..c2de3c9 100644
--- a/core/modules/forum/forum.module
+++ b/core/modules/forum/forum.module
@@ -24,7 +24,7 @@ function forum_help($route_name, RouteMatchInterface $route_match) {
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
       $output .= '<p>' . t('The Forum module lets you create threaded discussion forums with functionality similar to other message board systems. In a forum, users post topics and threads in nested hierarchies, allowing discussions to be categorized and grouped.') . '</p>';
-      $output .= '<p>' . t('The Forum module adds and uses a content type called <em>Forum topic</em>. For background information on content types, see the <a href=":node_help">Node module help page</a>.', array(':node_help' => \Drupal::url('help.page', array('name' => 'node')))) . '</p>';
+      $output .= '<p>' . t('The Forum module adds and uses a content type called <em>Forum topic</em>. For background information on content types, see the <a href=":node_help">Node module help page</a>.', [':node_help' => \Drupal::url('help.page', ['name' => 'node'])]) . '</p>';
       $output .= '<p>' . t('A forum is represented by a hierarchical structure, consisting of:');
       $output .= '<ul>';
       $output .= '<li>' . t('<em>Forums</em> (for example, <em>Recipes for cooking vegetables</em>)') . '</li>';
@@ -33,15 +33,15 @@ function forum_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<li>' . t('Optional <em>containers</em>, used to group similar forums. Forums can be placed inside containers, and vice versa.') . '</li>';
       $output .= '</ul>';
       $output .= '</p>';
-      $output .= '<p>' . t('For more information, see the <a href=":forum">online documentation for the Forum module</a>.', array(':forum' => 'https://www.drupal.org/documentation/modules/forum')) . '</p>';
+      $output .= '<p>' . t('For more information, see the <a href=":forum">online documentation for the Forum module</a>.', [':forum' => 'https://www.drupal.org/documentation/modules/forum']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Setting up the forum structure') . '</dt>';
-      $output .= '<dd>' . t('Visit the <a href=":forums">Forums page</a> to set up containers and forums to hold your discussion topics.', array(':forums' => \Drupal::url('forum.overview'))) . '</dd>';
+      $output .= '<dd>' . t('Visit the <a href=":forums">Forums page</a> to set up containers and forums to hold your discussion topics.', [':forums' => \Drupal::url('forum.overview')]) . '</dd>';
       $output .= '<dt>' . t('Starting a discussion') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":create-topic">Forum topic</a> link on the <a href=":content-add">Add content</a> page creates the first post of a new threaded discussion, or thread.', array(':create-topic' => \Drupal::url('node.add', array('node_type' => 'forum')), ':content-add' => \Drupal::url('node.add_page'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":create-topic">Forum topic</a> link on the <a href=":content-add">Add content</a> page creates the first post of a new threaded discussion, or thread.', [':create-topic' => \Drupal::url('node.add', ['node_type' => 'forum']), ':content-add' => \Drupal::url('node.add_page')]) . '</dd>';
       $output .= '<dt>' . t('Navigating in the forum') . '</dt>';
-      $output .= '<dd>' . t('Enabling the Forum module provides a default <em>Forums</em> menu item in the Tools menu that links to the <a href=":forums">Forums page</a>.', array(':forums' => \Drupal::url('forum.index'))) . '</dd>';
+      $output .= '<dd>' . t('Enabling the Forum module provides a default <em>Forums</em> menu item in the Tools menu that links to the <a href=":forums">Forums page</a>.', [':forums' => \Drupal::url('forum.index')]) . '</dd>';
       $output .= '<dt>' . t('Moving forum topics') . '</dt>';
       $output .= '<dd>' . t('A forum topic (and all of its comments) may be moved between forums by selecting a different forum while editing a forum topic. When moving a forum topic between forums, the <em>Leave shadow copy</em> option creates a link in the original forum pointing to the new location.') . '</dd>';
       $output .= '<dt>' . t('Locking and disabling comments') . '</dt>';
@@ -51,21 +51,21 @@ function forum_help($route_name, RouteMatchInterface $route_match) {
 
     case 'forum.overview':
       $output = '<p>' . t('Forums contain forum topics. Use containers to group related forums.') . '</p>';
-      $more_help_link = array(
+      $more_help_link = [
         '#type' => 'link',
         '#url' => Url::fromRoute('help.page', ['name' => 'forum']),
         '#title' => t('More help'),
-        '#attributes' => array(
-          'class' => array('icon-help'),
-        ),
-      );
-      $container = array(
+        '#attributes' => [
+          'class' => ['icon-help'],
+        ],
+      ];
+      $container = [
         '#theme' => 'container',
         '#children' => $more_help_link,
-        '#attributes' => array(
-          'class' => array('more-link'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['more-link'],
+        ],
+      ];
       $output .= \Drupal::service('renderer')->renderPlain($container);
       return $output;
 
@@ -76,7 +76,7 @@ function forum_help($route_name, RouteMatchInterface $route_match) {
       return '<p>' . t('A forum holds related forum topics.') . '</p>';
 
     case 'forum.settings':
-      return '<p>' . t('Adjust the display of your forum topics. Organize the forums on the <a href=":forum-structure">forum structure page</a>.', array(':forum-structure' => \Drupal::url('forum.overview'))) . '</p>';
+      return '<p>' . t('Adjust the display of your forum topics. Organize the forums on the <a href=":forum-structure">forum structure page</a>.', [':forum-structure' => \Drupal::url('forum.overview')]) . '</p>';
   }
 }
 
@@ -84,20 +84,20 @@ function forum_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function forum_theme() {
-  return array(
-    'forums' => array(
-      'variables' => array('forums' => array(), 'topics' => array(), 'topics_pager' => array(), 'parents' => NULL, 'term' => NULL, 'sortby' => NULL, 'forum_per_page' => NULL, 'header' => array()),
-    ),
-    'forum_list' => array(
-      'variables' => array('forums' => NULL, 'parents' => NULL, 'tid' => NULL),
-    ),
-    'forum_icon' => array(
-      'variables' => array('new_posts' => NULL, 'num_posts' => 0, 'comment_mode' => 0, 'sticky' => 0, 'first_new' => FALSE),
-    ),
-    'forum_submitted' => array(
-      'variables' => array('topic' => NULL),
-    ),
-  );
+  return [
+    'forums' => [
+      'variables' => ['forums' => [], 'topics' => [], 'topics_pager' => [], 'parents' => NULL, 'term' => NULL, 'sortby' => NULL, 'forum_per_page' => NULL, 'header' => []],
+    ],
+    'forum_list' => [
+      'variables' => ['forums' => NULL, 'parents' => NULL, 'tid' => NULL],
+    ],
+    'forum_icon' => [
+      'variables' => ['new_posts' => NULL, 'num_posts' => 0, 'comment_mode' => 0, 'sticky' => 0, 'first_new' => FALSE],
+    ],
+    'forum_submitted' => [
+      'variables' => ['topic' => NULL],
+    ],
+  ];
 }
 
 /**
@@ -158,7 +158,7 @@ function forum_node_presave(EntityInterface $node) {
         $old_tid = \Drupal::service('forum.index_storage')->getOriginalTermId($node);
         if ($old_tid && isset($node->forum_tid) && ($node->forum_tid != $old_tid) && !empty($node->shadow)) {
           // A shadow copy needs to be created. Retain new term and add old term.
-          $node->taxonomy_forums[count($node->taxonomy_forums)] = array('target_id' => $old_tid);
+          $node->taxonomy_forums[count($node->taxonomy_forums)] = ['target_id' => $old_tid];
         }
       }
     }
@@ -241,7 +241,7 @@ function forum_node_predelete(EntityInterface $node) {
  * Implements hook_ENTITY_TYPE_storage_load() for node entities.
  */
 function forum_node_storage_load($nodes) {
-  $node_vids = array();
+  $node_vids = [];
   foreach ($nodes as $node) {
     if (\Drupal::service('forum_manager')->checkNodeType($node)) {
       $node_vids[] = $node->getRevisionId();
@@ -289,10 +289,10 @@ function forum_form_taxonomy_vocabulary_form_alter(&$form, FormStateInterface $f
   $vid = \Drupal::config('forum.settings')->get('vocabulary');
   $vocabulary = $form_state->getFormObject()->getEntity();
   if ($vid == $vocabulary->id()) {
-    $form['help_forum_vocab'] = array(
+    $form['help_forum_vocab'] = [
       '#markup' => t('This is the designated forum vocabulary. Some of the normal vocabulary options have been removed.'),
       '#weight' => -1,
-    );
+    ];
     // Forum's vocabulary always has single hierarchy. Forums and containers
     // have only one parent or no parent for root items. By default this value
     // is 0.
@@ -324,13 +324,13 @@ function forum_form_node_form_alter(&$form, FormStateInterface $form_state, $for
     $forum_terms = $node->taxonomy_forums;
     // If editing, give option to leave shadows.
     $shadow = (count($forum_terms) > 1);
-    $form['shadow'] = array(
+    $form['shadow'] = [
       '#type' => 'checkbox',
       '#title' => t('Leave shadow copy'),
       '#default_value' => $shadow,
       '#description' => t('If you move this topic, you can leave a link in the old forum to the new forum.'),
-    );
-    $form['forum_tid'] = array('#type' => 'value', '#value' => $node->forum_tid);
+    ];
+    $form['forum_tid'] = ['#type' => 'value', '#value' => $node->forum_tid];
   }
 
   if (isset($form['taxonomy_forums'])) {
@@ -361,7 +361,7 @@ function forum_preprocess_block(&$variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function forum_theme_suggestions_forums(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
   $tid = $variables['term']->id();
 
   // Provide separate template suggestions based on what's being output. Topic
@@ -408,24 +408,24 @@ function template_preprocess_forums(&$variables) {
   $variables['tid'] = $variables['term']->id();
   if ($variables['forums_defined'] = count($variables['forums']) || count($variables['parents'])) {
     if (!empty($variables['forums'])) {
-      $variables['forums'] = array(
+      $variables['forums'] = [
         '#theme' => 'forum_list',
         '#forums' => $variables['forums'],
         '#parents' => $variables['parents'],
         '#tid' => $variables['tid'],
-      );
+      ];
     }
 
     if ($variables['term'] && empty($variables['term']->forum_container->value) && !empty($variables['topics'])) {
       $forum_topic_list_header = $variables['header'];
 
-      $table = array(
+      $table = [
         '#theme' => 'table__forum_topic_list',
         '#responsive' => FALSE,
-        '#attributes' => array('id' => 'forum-topic-' . $variables['tid']),
-        '#header' => array(),
-        '#rows' => array(),
-      );
+        '#attributes' => ['id' => 'forum-topic-' . $variables['tid']],
+        '#header' => [],
+        '#rows' => [],
+      ];
 
       if (!empty($forum_topic_list_header)) {
         $table['#header'] = $forum_topic_list_header;
@@ -433,14 +433,14 @@ function template_preprocess_forums(&$variables) {
 
       /** @var \Drupal\node\NodeInterface $topic */
       foreach ($variables['topics'] as $id => $topic) {
-        $variables['topics'][$id]->icon = array(
+        $variables['topics'][$id]->icon = [
           '#theme' => 'forum_icon',
           '#new_posts' => $topic->new,
           '#num_posts' => $topic->comment_count,
           '#comment_mode' => $topic->comment_mode,
           '#sticky' => $topic->isSticky(),
           '#first_new' => $topic->first_new,
-        );
+        ];
 
         // We keep the actual tid in forum table, if it's different from the
         // current tid then it means the topic appears in two forums, one of
@@ -455,16 +455,16 @@ function template_preprocess_forums(&$variables) {
           $variables['topics'][$id]->title_link = \Drupal::l($topic->getTitle(), $topic->urlInfo());
           $variables['topics'][$id]->message = '';
         }
-        $forum_submitted = array('#theme' => 'forum_submitted', '#topic' => (object) array(
+        $forum_submitted = ['#theme' => 'forum_submitted', '#topic' => (object) [
           'uid' => $topic->getOwnerId(),
           'name' => $topic->getOwner()->getDisplayName(),
           'created' => $topic->getCreatedTime(),
-        ));
+        ]];
         $variables['topics'][$id]->submitted = drupal_render($forum_submitted);
-        $forum_submitted = array(
+        $forum_submitted = [
           '#theme' => 'forum_submitted',
           '#topic' => isset($topic->last_reply) ? $topic->last_reply : NULL,
-        );
+        ];
         $variables['topics'][$id]->last_reply = drupal_render($forum_submitted);
 
         $variables['topics'][$id]->new_text = '';
@@ -473,28 +473,28 @@ function template_preprocess_forums(&$variables) {
         if ($topic->new_replies) {
           $page_number = \Drupal::entityManager()->getStorage('comment')
             ->getNewCommentPageNumber($topic->comment_count, $topic->new_replies, $topic, 'comment_forum');
-          $query = $page_number ? array('page' => $page_number) : NULL;
-          $variables['topics'][$id]->new_text = \Drupal::translation()->formatPlural($topic->new_replies, '1 new post<span class="visually-hidden"> in topic %title</span>', '@count new posts<span class="visually-hidden"> in topic %title</span>', array('%title' => $variables['topics'][$id]->label()));
+          $query = $page_number ? ['page' => $page_number] : NULL;
+          $variables['topics'][$id]->new_text = \Drupal::translation()->formatPlural($topic->new_replies, '1 new post<span class="visually-hidden"> in topic %title</span>', '@count new posts<span class="visually-hidden"> in topic %title</span>', ['%title' => $variables['topics'][$id]->label()]);
           $variables['topics'][$id]->new_url = \Drupal::url('entity.node.canonical', ['node' => $topic->id()], ['query' => $query, 'fragment' => 'new']);
         }
 
         // Build table rows from topics.
-        $row = array();
-        $row[] = array(
-          'data' => array(
+        $row = [];
+        $row[] = [
+          'data' => [
             $topic->icon,
-            array(
+            [
               '#markup' => '<div class="forum__title"><div>' . $topic->title_link . '</div><div>' . $topic->submitted . '</div></div>',
-            ),
-          ),
-          'class' => array('forum__topic'),
-        );
+            ],
+          ],
+          'class' => ['forum__topic'],
+        ];
 
         if ($topic->moved) {
-          $row[] = array(
+          $row[] = [
             'data' => $topic->message,
             'colspan' => '2',
-          );
+          ];
         }
         else {
           $new_replies = '';
@@ -502,27 +502,27 @@ function template_preprocess_forums(&$variables) {
             $new_replies = '<br /><a href="' . $topic->new_url . '">' . $topic->new_text . '</a>';
           }
 
-          $row[] = array(
+          $row[] = [
             'data' => [
               [
                 '#prefix' => $topic->comment_count,
                 '#markup' => $new_replies,
               ],
             ],
-            'class' => array('forum__replies'),
-          );
-          $row[] = array(
+            'class' => ['forum__replies'],
+          ];
+          $row[] = [
             'data' => $topic->last_reply,
-            'class' => array('forum__last-reply'),
-          );
+            'class' => ['forum__last-reply'],
+          ];
         }
         $table['#rows'][] = $row;
       }
 
       $variables['topics'] = $table;
-      $variables['topics_pager'] = array(
+      $variables['topics_pager'] = [
         '#type' => 'pager',
-      );
+      ];
     }
   }
 }
@@ -545,7 +545,7 @@ function template_preprocess_forum_list(&$variables) {
   $row = 0;
   // Sanitize each forum so that the template can safely print the data.
   foreach ($variables['forums'] as $id => $forum) {
-    $variables['forums'][$id]->description = array('#markup' => $forum->description->value);
+    $variables['forums'][$id]->description = ['#markup' => $forum->description->value];
     $variables['forums'][$id]->link = forum_uri($forum);
     $variables['forums'][$id]->name = $forum->label();
     $variables['forums'][$id]->is_container = !empty($forum->forum_container->value);
@@ -561,20 +561,20 @@ function template_preprocess_forum_list(&$variables) {
     if ($user->isAuthenticated()) {
       $variables['forums'][$id]->new_topics = \Drupal::service('forum_manager')->unreadTopics($forum->id(), $user->id());
       if ($variables['forums'][$id]->new_topics) {
-        $variables['forums'][$id]->new_text = \Drupal::translation()->formatPlural($variables['forums'][$id]->new_topics, '1 new post<span class="visually-hidden"> in forum %title</span>', '@count new posts<span class="visually-hidden"> in forum %title</span>', array('%title' => $variables['forums'][$id]->label()));
+        $variables['forums'][$id]->new_text = \Drupal::translation()->formatPlural($variables['forums'][$id]->new_topics, '1 new post<span class="visually-hidden"> in forum %title</span>', '@count new posts<span class="visually-hidden"> in forum %title</span>', ['%title' => $variables['forums'][$id]->label()]);
         $variables['forums'][$id]->new_url = \Drupal::url('forum.page', ['taxonomy_term' => $forum->id()], ['fragment' => 'new']);
         $variables['forums'][$id]->icon_class = 'new';
         $variables['forums'][$id]->icon_title = t('New posts');
       }
       $variables['forums'][$id]->old_topics = $forum->num_topics - $variables['forums'][$id]->new_topics;
     }
-    $forum_submitted = array('#theme' => 'forum_submitted', '#topic' => $forum->last_post);
+    $forum_submitted = ['#theme' => 'forum_submitted', '#topic' => $forum->last_post];
     $variables['forums'][$id]->last_reply = drupal_render($forum_submitted);
   }
 
-  $variables['pager'] = array(
+  $variables['pager'] = [
    '#type' => 'pager',
-  );
+  ];
 
   // Give meaning to $tid for themers. $tid actually stands for term ID.
   $variables['forum_id'] = $variables['tid'];
@@ -635,7 +635,7 @@ function template_preprocess_forum_icon(&$variables) {
 function template_preprocess_forum_submitted(&$variables) {
   $variables['author'] = '';
   if (isset($variables['topic']->uid)) {
-    $username = array('#theme' => 'username', '#account' => User::load($variables['topic']->uid));
+    $username = ['#theme' => 'username', '#account' => User::load($variables['topic']->uid)];
     $variables['author'] = drupal_render($username);
   }
   $variables['time'] = isset($variables['topic']->created) ? \Drupal::service('date.formatter')->formatTimeDiffSince($variables['topic']->created) : '';
diff --git a/core/modules/forum/forum.views.inc b/core/modules/forum/forum.views.inc
index fa7174f..6f24259 100644
--- a/core/modules/forum/forum.views.inc
+++ b/core/modules/forum/forum.views.inc
@@ -11,147 +11,147 @@
 function forum_views_data() {
 
   $data['forum_index']['table']['group'] = t('Forum');
-  $data['forum_index']['table']['base'] = array(
+  $data['forum_index']['table']['base'] = [
     'field' => 'nid',
     'title' => t('Forum content'),
     'access query tag' => 'node_access',
-  );
+  ];
 
-  $data['forum_index']['nid'] = array(
+  $data['forum_index']['nid'] = [
     'title' => t('Nid'),
     'help' => t('The content ID of the forum index entry.'),
-    'field' => array(
+    'field' => [
       'id' => 'numeric',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-    'relationship' => array(
+    ],
+    'relationship' => [
       'base' => 'node',
       'base field' => 'nid',
       'label' => t('Node'),
-    ),
-  );
+    ],
+  ];
 
-  $data['forum_index']['title'] = array(
+  $data['forum_index']['title'] = [
     'title' => t('Title'),
     'help' => t('The content title.'),
-    'field' => array(
+    'field' => [
       'id' => 'standard',
       'link_to_node default' => TRUE,
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'string',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'string',
-    ),
-  );
+    ],
+  ];
 
-  $data['forum_index']['tid'] = array(
+  $data['forum_index']['tid'] = [
     'title' => t('Has taxonomy term ID'),
     'help' => t('Display content if it has the selected taxonomy terms.'),
-    'argument' => array(
+    'argument' => [
       'id' => 'taxonomy_index_tid',
       'name table' => 'taxonomy_term_data',
       'name field' => 'name',
       'empty field name' => t('Uncategorized'),
       'numeric' => TRUE,
       'skip base' => 'taxonomy_term_data',
-    ),
-    'field' => array(
+    ],
+    'field' => [
       'id' => 'numeric',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'title' => t('Has taxonomy term'),
       'id' => 'taxonomy_index_tid',
       'hierarchy table' => 'taxonomy_term_hierarchy',
       'numeric' => TRUE,
       'skip base' => 'taxonomy_term_data',
       'allow empty' => TRUE,
-    ),
-    'relationship' => array(
+    ],
+    'relationship' => [
       'base' => 'taxonomy_term',
       'base field' => 'tid',
       'label' => t('Term'),
-    ),
-  );
+    ],
+  ];
 
 
-  $data['forum_index']['created'] = array(
+  $data['forum_index']['created'] = [
     'title' => t('Post date'),
     'help' => t('The date the content was posted.'),
-    'field' => array(
+    'field' => [
       'id' => 'date',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'date'
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
-  $data['forum_index']['sticky'] = array(
+  $data['forum_index']['sticky'] = [
     'title' => t('Sticky'),
     'help' => t('Whether or not the content is sticky.'),
-    'field' => array(
+    'field' => [
       'id' => 'boolean',
       'click sortable' => TRUE,
-      'output formats' => array(
-        'sticky' => array(t('Sticky'), t('Not sticky')),
-      ),
-    ),
-    'filter' => array(
+      'output formats' => [
+        'sticky' => [t('Sticky'), t('Not sticky')],
+      ],
+    ],
+    'filter' => [
       'id' => 'boolean',
       'label' => t('Sticky'),
       'type' => 'yes-no',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
       'help' => t('Whether or not the content is sticky. To list sticky content first, set this to descending.'),
-    ),
-  );
+    ],
+  ];
 
-  $data['forum_index']['last_comment_timestamp'] = array(
+  $data['forum_index']['last_comment_timestamp'] = [
     'title' => t('Last comment time'),
     'help' => t('Date and time of when the last comment was posted.'),
-    'field' => array(
+    'field' => [
       'id' => 'comment_last_timestamp',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'date',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
-  $data['forum_index']['comment_count'] = array(
+  $data['forum_index']['comment_count'] = [
     'title' => t('Comment count'),
     'help' => t('The number of comments a node has.'),
-    'field' => array(
+    'field' => [
       'id' => 'numeric',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
diff --git a/core/modules/forum/src/Breadcrumb/ForumNodeBreadcrumbBuilder.php b/core/modules/forum/src/Breadcrumb/ForumNodeBreadcrumbBuilder.php
index 01e6c49..1a35901 100644
--- a/core/modules/forum/src/Breadcrumb/ForumNodeBreadcrumbBuilder.php
+++ b/core/modules/forum/src/Breadcrumb/ForumNodeBreadcrumbBuilder.php
@@ -32,9 +32,9 @@ public function build(RouteMatchInterface $route_match) {
       foreach ($parents as $parent) {
         $breadcrumb->addCacheableDependency($parent);
         $breadcrumb->addLink(Link::createFromRoute($parent->label(), 'forum.page',
-          array(
+          [
             'taxonomy_term' => $parent->id(),
-          )
+          ]
         ));
       }
     }
diff --git a/core/modules/forum/src/Controller/ForumController.php b/core/modules/forum/src/Controller/ForumController.php
index 0e3d995..2348872 100644
--- a/core/modules/forum/src/Controller/ForumController.php
+++ b/core/modules/forum/src/Controller/ForumController.php
@@ -207,9 +207,9 @@ public function forumIndex() {
    * @return array
    *   A render array.
    */
-  protected function build($forums, TermInterface $term, $topics = array(), $parents = array(), $header = array()) {
+  protected function build($forums, TermInterface $term, $topics = [], $parents = [], $header = []) {
     $config = $this->config('forum.settings');
-    $build = array(
+    $build = [
       '#theme' => 'forums',
       '#forums' => $forums,
       '#topics' => $topics,
@@ -218,9 +218,9 @@ protected function build($forums, TermInterface $term, $topics = array(), $paren
       '#term' => $term,
       '#sortby' => $config->get('topics.order'),
       '#forums_per_page' => $config->get('topics.page_limit'),
-    );
+    ];
     if (empty($term->forum_container->value)) {
-      $build['#attached']['feed'][] = array('taxonomy/term/' . $term->id() . '/feed', 'RSS - ' . $term->getName());
+      $build['#attached']['feed'][] = ['taxonomy/term/' . $term->id() . '/feed', 'RSS - ' . $term->getName()];
     }
     $this->renderer->addCacheableDependency($build, $config);
 
@@ -252,10 +252,10 @@ protected function build($forums, TermInterface $term, $topics = array(), $paren
    */
   public function addForum() {
     $vid = $this->config('forum.settings')->get('vocabulary');
-    $taxonomy_term = $this->termStorage->create(array(
+    $taxonomy_term = $this->termStorage->create([
       'vid' => $vid,
       'forum_controller' => 0,
-    ));
+    ]);
     return $this->entityFormBuilder()->getForm($taxonomy_term, 'forum');
   }
 
@@ -267,10 +267,10 @@ public function addForum() {
    */
   public function addContainer() {
     $vid = $this->config('forum.settings')->get('vocabulary');
-    $taxonomy_term = $this->termStorage->create(array(
+    $taxonomy_term = $this->termStorage->create([
       'vid' => $vid,
       'forum_container' => 1,
-    ));
+    ]);
     return $this->entityFormBuilder()->getForm($taxonomy_term, 'container');
   }
 
@@ -325,10 +325,10 @@ protected function buildActionLinks($vid, TermInterface $forum_term = NULL) {
         $links['login'] = [
           '#attributes' => ['class' => ['action-links']],
           '#theme' => 'menu_local_action',
-          '#link' => array(
+          '#link' => [
             'title' => $this->t('Log in to post new content in the forum.'),
             'url' => Url::fromRoute('user.login', [], ['query' => $this->getDestinationArray()]),
-          ),
+          ],
         ];
       }
     }
diff --git a/core/modules/forum/src/Form/DeleteForm.php b/core/modules/forum/src/Form/DeleteForm.php
index 7520173..5b3666a 100644
--- a/core/modules/forum/src/Form/DeleteForm.php
+++ b/core/modules/forum/src/Form/DeleteForm.php
@@ -30,7 +30,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete the forum %label?', array('%label' => $this->taxonomyTerm->label()));
+    return $this->t('Are you sure you want to delete the forum %label?', ['%label' => $this->taxonomyTerm->label()]);
   }
 
   /**
@@ -61,8 +61,8 @@ public function buildForm(array $form, FormStateInterface $form_state, TermInter
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->taxonomyTerm->delete();
-    drupal_set_message($this->t('The forum %label and all sub-forums have been deleted.', array('%label' => $this->taxonomyTerm->label())));
-    $this->logger('forum')->notice('forum: deleted %label and all its sub-forums.', array('%label' => $this->taxonomyTerm->label()));
+    drupal_set_message($this->t('The forum %label and all sub-forums have been deleted.', ['%label' => $this->taxonomyTerm->label()]));
+    $this->logger('forum')->notice('forum: deleted %label and all its sub-forums.', ['%label' => $this->taxonomyTerm->label()]);
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
 
diff --git a/core/modules/forum/src/Form/ForumForm.php b/core/modules/forum/src/Form/ForumForm.php
index 30f0cf1..ed0a768 100644
--- a/core/modules/forum/src/Form/ForumForm.php
+++ b/core/modules/forum/src/Form/ForumForm.php
@@ -50,7 +50,7 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['parent']['#tree'] = TRUE;
     $form['parent'][0] = $this->forumParentSelect($taxonomy_term->id(), $this->t('Parent'));
 
-    $form['#theme_wrappers'] = array('form__forum');
+    $form['#theme_wrappers'] = ['form__forum'];
     $this->forumFormType = $this->t('forum');
     return $form;
   }
@@ -62,7 +62,7 @@ public function buildEntity(array $form, FormStateInterface $form_state) {
     $term = parent::buildEntity($form, $form_state);
 
     // Assign parents from forum parent select field.
-    $term->parent = array($form_state->getValue(array('parent', 0)));
+    $term->parent = [$form_state->getValue(['parent', 0])];
 
     return $term;
   }
@@ -81,14 +81,14 @@ public function save(array $form, FormStateInterface $form_state) {
     $view_link = $term->link($term->getName());
     switch ($status) {
       case SAVED_NEW:
-        drupal_set_message($this->t('Created new @type %term.', array('%term' => $view_link, '@type' => $this->forumFormType)));
-        $this->logger('forum')->notice('Created new @type %term.', array('%term' => $term->getName(), '@type' => $this->forumFormType, 'link' => $link));
+        drupal_set_message($this->t('Created new @type %term.', ['%term' => $view_link, '@type' => $this->forumFormType]));
+        $this->logger('forum')->notice('Created new @type %term.', ['%term' => $term->getName(), '@type' => $this->forumFormType, 'link' => $link]);
         $form_state->setValue('tid', $term->id());
         break;
 
       case SAVED_UPDATED:
-        drupal_set_message($this->t('The @type %term has been updated.', array('%term' => $term->getName(), '@type' => $this->forumFormType)));
-        $this->logger('forum')->notice('Updated @type %term.', array('%term' => $term->getName(), '@type' => $this->forumFormType, 'link' => $link));
+        drupal_set_message($this->t('The @type %term has been updated.', ['%term' => $term->getName(), '@type' => $this->forumFormType]));
+        $this->logger('forum')->notice('Updated @type %term.', ['%term' => $term->getName(), '@type' => $this->forumFormType, 'link' => $link]);
         break;
     }
 
@@ -155,14 +155,14 @@ protected function forumParentSelect($tid, $title) {
 
     $description = $this->t('Forums may be placed at the top (root) level, or inside another container or forum.');
 
-    return array(
+    return [
       '#type' => 'select',
       '#title' => $title,
       '#default_value' => $parent,
       '#options' => $options,
       '#description' => $description,
       '#required' => TRUE,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/forum/src/Form/Overview.php b/core/modules/forum/src/Form/Overview.php
index ba9c033..df6f947 100644
--- a/core/modules/forum/src/Form/Overview.php
+++ b/core/modules/forum/src/Form/Overview.php
@@ -80,10 +80,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     unset($form['actions']['reset_alphabetical']);
 
     // Use the existing taxonomy overview submit handler.
-    $form['terms']['#empty'] = $this->t('No containers or forums available. <a href=":container">Add container</a> or <a href=":forum">Add forum</a>.', array(
+    $form['terms']['#empty'] = $this->t('No containers or forums available. <a href=":container">Add container</a> or <a href=":forum">Add forum</a>.', [
       ':container' => $this->url('forum.add_container'),
       ':forum' => $this->url('forum.add_forum')
-    ));
+    ]);
     return $form;
   }
 
diff --git a/core/modules/forum/src/ForumIndexStorage.php b/core/modules/forum/src/ForumIndexStorage.php
index 35b2274..d644ca9 100644
--- a/core/modules/forum/src/ForumIndexStorage.php
+++ b/core/modules/forum/src/ForumIndexStorage.php
@@ -31,7 +31,7 @@ function __construct(Connection $database) {
    * {@inheritdoc}
    */
   public function getOriginalTermId(NodeInterface $node) {
-    return $this->database->queryRange("SELECT f.tid FROM {forum} f INNER JOIN {node} n ON f.vid = n.vid WHERE n.nid = :nid ORDER BY f.vid DESC", 0, 1, array(':nid' => $node->id()))->fetchField();
+    return $this->database->queryRange("SELECT f.tid FROM {forum} f INNER JOIN {node} n ON f.vid = n.vid WHERE n.nid = :nid ORDER BY f.vid DESC", 0, 1, [':nid' => $node->id()])->fetchField();
   }
 
   /**
@@ -39,11 +39,11 @@ public function getOriginalTermId(NodeInterface $node) {
    */
   public function create(NodeInterface $node) {
     $this->database->insert('forum')
-      ->fields(array(
+      ->fields([
         'tid' => $node->forum_tid,
         'vid' => $node->getRevisionId(),
         'nid' => $node->id(),
-      ))
+      ])
       ->execute();
   }
 
@@ -52,7 +52,7 @@ public function create(NodeInterface $node) {
    */
   public function read(array $vids) {
     return $this->database->select('forum', 'f')
-      ->fields('f', array('nid', 'tid'))
+      ->fields('f', ['nid', 'tid'])
       ->condition('f.vid', $vids, 'IN')
       ->execute();
   }
@@ -81,7 +81,7 @@ public function deleteRevision(NodeInterface $node) {
    */
   public function update(NodeInterface $node) {
     $this->database->update('forum')
-      ->fields(array('tid' => $node->forum_tid))
+      ->fields(['tid' => $node->forum_tid])
       ->condition('vid', $node->getRevisionId())
       ->execute();
   }
@@ -91,22 +91,22 @@ public function update(NodeInterface $node) {
    */
   public function updateIndex(NodeInterface $node) {
     $nid = $node->id();
-    $count = $this->database->query("SELECT COUNT(cid) FROM {comment_field_data} c INNER JOIN {forum_index} i ON c.entity_id = i.nid WHERE c.entity_id = :nid AND c.field_name = 'comment_forum' AND c.entity_type = 'node' AND c.status = :status AND c.default_langcode = 1", array(
+    $count = $this->database->query("SELECT COUNT(cid) FROM {comment_field_data} c INNER JOIN {forum_index} i ON c.entity_id = i.nid WHERE c.entity_id = :nid AND c.field_name = 'comment_forum' AND c.entity_type = 'node' AND c.status = :status AND c.default_langcode = 1", [
       ':nid' => $nid,
       ':status' => CommentInterface::PUBLISHED,
-    ))->fetchField();
+    ])->fetchField();
 
     if ($count > 0) {
       // Comments exist.
-      $last_reply = $this->database->queryRange("SELECT cid, name, created, uid FROM {comment_field_data} WHERE entity_id = :nid AND field_name = 'comment_forum' AND entity_type = 'node' AND status = :status AND default_langcode = 1 ORDER BY cid DESC", 0, 1, array(
+      $last_reply = $this->database->queryRange("SELECT cid, name, created, uid FROM {comment_field_data} WHERE entity_id = :nid AND field_name = 'comment_forum' AND entity_type = 'node' AND status = :status AND default_langcode = 1 ORDER BY cid DESC", 0, 1, [
         ':nid' => $nid,
         ':status' => CommentInterface::PUBLISHED,
-      ))->fetchObject();
+      ])->fetchObject();
       $this->database->update('forum_index')
-        ->fields( array(
+        ->fields( [
           'comment_count' => $count,
           'last_comment_timestamp' => $last_reply->created,
-        ))
+        ])
         ->condition('nid', $nid)
         ->execute();
     }
@@ -114,10 +114,10 @@ public function updateIndex(NodeInterface $node) {
       // Comments do not exist.
       // @todo This should be actually filtering on the desired node language
       $this->database->update('forum_index')
-        ->fields( array(
+        ->fields( [
           'comment_count' => 0,
           'last_comment_timestamp' => $node->getCreatedTime(),
-        ))
+        ])
         ->condition('nid', $nid)
         ->execute();
     }
@@ -128,11 +128,11 @@ public function updateIndex(NodeInterface $node) {
    */
   public function createIndex(NodeInterface $node) {
     $query = $this->database->insert('forum_index')
-      ->fields(array('nid', 'title', 'tid', 'sticky', 'created', 'comment_count', 'last_comment_timestamp'));
+      ->fields(['nid', 'title', 'tid', 'sticky', 'created', 'comment_count', 'last_comment_timestamp']);
     foreach ($node->getTranslationLanguages() as $langcode => $language) {
       $translation = $node->getTranslation($langcode);
       foreach ($translation->taxonomy_forums as $item) {
-        $query->values(array(
+        $query->values([
           'nid' => $node->id(),
           'title' => $translation->label(),
           'tid' => $item->target_id,
@@ -140,7 +140,7 @@ public function createIndex(NodeInterface $node) {
           'created' => $node->getCreatedTime(),
           'comment_count' => 0,
           'last_comment_timestamp' => $node->getCreatedTime(),
-        ));
+        ]);
       }
     }
     $query->execute();
diff --git a/core/modules/forum/src/ForumManager.php b/core/modules/forum/src/ForumManager.php
index 9fe49a8..05cd860 100644
--- a/core/modules/forum/src/ForumManager.php
+++ b/core/modules/forum/src/ForumManager.php
@@ -75,28 +75,28 @@ class ForumManager implements ForumManagerInterface {
    *
    * @var array
    */
-  protected $lastPostData = array();
+  protected $lastPostData = [];
 
   /**
    * Array of forum statistics keyed by forum (term) id.
    *
    * @var array
    */
-  protected $forumStatistics = array();
+  protected $forumStatistics = [];
 
   /**
    * Array of forum children keyed by parent forum (term) id.
    *
    * @var array
    */
-  protected $forumChildren = array();
+  protected $forumChildren = [];
 
   /**
    * Array of history keyed by nid.
    *
    * @var array
    */
-  protected $history = array();
+  protected $history = [];
 
   /**
    * Cached forum index.
@@ -135,11 +135,11 @@ public function getTopics($tid, AccountInterface $account) {
     $forum_per_page = $config->get('topics.page_limit');
     $sortby = $config->get('topics.order');
 
-    $header = array(
-      array('data' => $this->t('Topic'), 'field' => 'f.title'),
-      array('data' => $this->t('Replies'), 'field' => 'f.comment_count'),
-      array('data' => $this->t('Last reply'), 'field' => 'f.last_comment_timestamp'),
-    );
+    $header = [
+      ['data' => $this->t('Topic'), 'field' => 'f.title'],
+      ['data' => $this->t('Replies'), 'field' => 'f.comment_count'],
+      ['data' => $this->t('Last reply'), 'field' => 'f.last_comment_timestamp'],
+    ];
 
     $order = $this->getTopicOrder($sortby);
     for ($i = 0; $i < count($header); $i++) {
@@ -168,7 +168,7 @@ public function getTopics($tid, AccountInterface $account) {
 
     $query->setCountQuery($count_query);
     $result = $query->execute();
-    $nids = array();
+    $nids = [];
     foreach ($result as $record) {
       $nids[] = $record->nid;
     }
@@ -177,15 +177,15 @@ public function getTopics($tid, AccountInterface $account) {
 
       $query = $this->connection->select('node_field_data', 'n')
         ->extend('Drupal\Core\Database\Query\TableSortExtender');
-      $query->fields('n', array('nid'));
+      $query->fields('n', ['nid']);
 
       $query->join('comment_entity_statistics', 'ces', "n.nid = ces.entity_id AND ces.field_name = 'comment_forum' AND ces.entity_type = 'node'");
-      $query->fields('ces', array(
+      $query->fields('ces', [
         'cid',
         'last_comment_uid',
         'last_comment_timestamp',
         'comment_count'
-      ));
+      ]);
 
       $query->join('forum_index', 'f', 'f.nid = n.nid');
       $query->addField('f', 'tid', 'forum_tid');
@@ -205,7 +205,7 @@ public function getTopics($tid, AccountInterface $account) {
         //   and just fall back to the default language.
         ->condition('n.default_langcode', 1);
 
-      $result = array();
+      $result = [];
       foreach ($query->execute() as $row) {
         $topic = $nodes[$row->nid];
         $topic->comment_mode = $topic->comment_forum->status;
@@ -217,10 +217,10 @@ public function getTopics($tid, AccountInterface $account) {
       }
     }
     else {
-      $result = array();
+      $result = [];
     }
 
-    $topics = array();
+    $topics = [];
     $first_new_found = FALSE;
     foreach ($result as $topic) {
       if ($account->isAuthenticated()) {
@@ -258,7 +258,7 @@ public function getTopics($tid, AccountInterface $account) {
       $topics[$topic->id()] = $topic;
     }
 
-    return array('topics' => $topics, 'header' => $header);
+    return ['topics' => $topics, 'header' => $header];
 
   }
 
@@ -280,16 +280,16 @@ public function getTopics($tid, AccountInterface $account) {
   protected function getTopicOrder($sortby) {
     switch ($sortby) {
       case static::NEWEST_FIRST:
-        return array('field' => 'f.last_comment_timestamp', 'sort' => 'desc');
+        return ['field' => 'f.last_comment_timestamp', 'sort' => 'desc'];
 
       case static::OLDEST_FIRST:
-        return array('field' => 'f.last_comment_timestamp', 'sort' => 'asc');
+        return ['field' => 'f.last_comment_timestamp', 'sort' => 'asc'];
 
       case static::MOST_POPULAR_FIRST:
-        return array('field' => 'f.comment_count', 'sort' => 'desc');
+        return ['field' => 'f.comment_count', 'sort' => 'desc'];
 
       case static::LEAST_POPULAR_FIRST:
-        return array('field' => 'f.comment_count', 'sort' => 'asc');
+        return ['field' => 'f.comment_count', 'sort' => 'asc'];
 
     }
   }
@@ -309,7 +309,7 @@ protected function getTopicOrder($sortby) {
   protected function lastVisit($nid, AccountInterface $account) {
     if (empty($this->history[$nid])) {
       $result = $this->connection->select('history', 'h')
-        ->fields('h', array('nid', 'timestamp'))
+        ->fields('h', ['nid', 'timestamp'])
         ->condition('uid', $account->id())
         ->execute();
       foreach ($result as $t) {
@@ -334,13 +334,13 @@ protected function getLastPost($tid) {
     }
     // Query "Last Post" information for this forum.
     $query = $this->connection->select('node_field_data', 'n');
-    $query->join('forum', 'f', 'n.vid = f.vid AND f.tid = :tid', array(':tid' => $tid));
+    $query->join('forum', 'f', 'n.vid = f.vid AND f.tid = :tid', [':tid' => $tid]);
     $query->join('comment_entity_statistics', 'ces', "n.nid = ces.entity_id AND ces.field_name = 'comment_forum' AND ces.entity_type = 'node'");
     $query->join('users_field_data', 'u', 'ces.last_comment_uid = u.uid AND u.default_langcode = 1');
     $query->addExpression('CASE ces.last_comment_uid WHEN 0 THEN ces.last_comment_name ELSE u.name END', 'last_comment_name');
 
     $topic = $query
-      ->fields('ces', array('last_comment_timestamp', 'last_comment_uid'))
+      ->fields('ces', ['last_comment_timestamp', 'last_comment_uid'])
       ->condition('n.status', 1)
       ->orderBy('last_comment_timestamp', 'DESC')
       ->range(0, 1)
@@ -378,7 +378,7 @@ protected function getForumStatistics($tid) {
       $query->addExpression('COUNT(n.nid)', 'topic_count');
       $query->addExpression('SUM(ces.comment_count)', 'comment_count');
       $this->forumStatistics = $query
-        ->fields('f', array('tid'))
+        ->fields('f', ['tid'])
         ->condition('n.status', 1)
         ->condition('n.default_langcode', 1)
         ->groupBy('tid')
@@ -399,7 +399,7 @@ public function getChildren($vid, $tid) {
     if (!empty($this->forumChildren[$tid])) {
       return $this->forumChildren[$tid];
     }
-    $forums = array();
+    $forums = [];
     $_forums = $this->entityManager->getStorage('taxonomy_term')->loadTree($vid, $tid, NULL, TRUE);
     foreach ($_forums as $forum) {
       // Merge in the topic and post counters.
@@ -430,13 +430,13 @@ public function getIndex() {
     }
 
     $vid = $this->configFactory->get('forum.settings')->get('vocabulary');
-    $index = $this->entityManager->getStorage('taxonomy_term')->create(array(
+    $index = $this->entityManager->getStorage('taxonomy_term')->create([
       'tid' => 0,
       'container' => 1,
-      'parents' => array(),
+      'parents' => [],
       'isIndex' => TRUE,
       'vid' => $vid
-    ));
+    ]);
 
     // Load the tree below.
     $index->forums = $this->getChildren($vid, 0);
@@ -451,7 +451,7 @@ public function resetCache() {
     // Reset the index.
     $this->index = NULL;
     // Reset history.
-    $this->history = array();
+    $this->history = [];
   }
 
   /**
@@ -475,8 +475,8 @@ public function checkNodeType(NodeInterface $node) {
    */
   public function unreadTopics($term, $uid) {
     $query = $this->connection->select('node_field_data', 'n');
-    $query->join('forum', 'f', 'n.vid = f.vid AND f.tid = :tid', array(':tid' => $term));
-    $query->leftJoin('history', 'h', 'n.nid = h.nid AND h.uid = :uid', array(':uid' => $uid));
+    $query->join('forum', 'f', 'n.vid = f.vid AND f.tid = :tid', [':tid' => $term]);
+    $query->leftJoin('history', 'h', 'n.nid = h.nid AND h.uid = :uid', [':uid' => $uid]);
     $query->addExpression('COUNT(n.nid)', 'count');
     return $query
       ->condition('status', 1)
@@ -506,10 +506,10 @@ public function __sleep() {
   public function __wakeup() {
     $this->defaultWakeup();
     // Initialize static cache.
-    $this->history = array();
-    $this->lastPostData = array();
-    $this->forumChildren = array();
-    $this->forumStatistics = array();
+    $this->history = [];
+    $this->lastPostData = [];
+    $this->forumChildren = [];
+    $this->forumStatistics = [];
     $this->index = NULL;
   }
 
diff --git a/core/modules/forum/src/ForumSettingsForm.php b/core/modules/forum/src/ForumSettingsForm.php
index ac9b325..12bb551 100644
--- a/core/modules/forum/src/ForumSettingsForm.php
+++ b/core/modules/forum/src/ForumSettingsForm.php
@@ -30,35 +30,35 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('forum.settings');
 
-    $options = array(5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 80, 100, 150, 200, 250, 300, 350, 400, 500);
-    $form['forum_hot_topic'] = array(
+    $options = [5, 10, 15, 20, 25, 30, 35, 40, 50, 60, 80, 100, 150, 200, 250, 300, 350, 400, 500];
+    $form['forum_hot_topic'] = [
       '#type' => 'select',
       '#title' => $this->t('Hot topic threshold'),
       '#default_value' => $config->get('topics.hot_threshold'),
       '#options' => array_combine($options, $options),
       '#description' => $this->t('The number of replies a topic must have to be considered "hot".'),
-    );
-    $options = array(10, 25, 50, 75, 100);
-    $form['forum_per_page'] = array(
+    ];
+    $options = [10, 25, 50, 75, 100];
+    $form['forum_per_page'] = [
       '#type' => 'select',
       '#title' => $this->t('Topics per page'),
       '#default_value' => $config->get('topics.page_limit'),
       '#options' => array_combine($options, $options),
       '#description' => $this->t('Default number of forum topics displayed per page.'),
-    );
-    $forder = array(
+    ];
+    $forder = [
       1 => $this->t('Date - newest first'),
       2 => $this->t('Date - oldest first'),
       3 => $this->t('Posts - most active first'),
       4 => $this->t('Posts - least active first')
-    );
-    $form['forum_order'] = array(
+    ];
+    $form['forum_order'] = [
       '#type' => 'radios',
       '#title' => $this->t('Default order'),
       '#default_value' => $config->get('topics.order'),
       '#options' => $forder,
       '#description' => $this->t('Default display order for topics.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/forum/src/Plugin/Block/ForumBlockBase.php b/core/modules/forum/src/Plugin/Block/ForumBlockBase.php
index e65f1df..8095cef 100644
--- a/core/modules/forum/src/Plugin/Block/ForumBlockBase.php
+++ b/core/modules/forum/src/Plugin/Block/ForumBlockBase.php
@@ -19,14 +19,14 @@
    */
   public function build() {
     $result = $this->buildForumQuery()->execute();
-    $elements = array();
+    $elements = [];
     if ($node_title_list = node_title_list($result)) {
       $elements['forum_list'] = $node_title_list;
-      $elements['forum_more'] = array(
+      $elements['forum_more'] = [
         '#type' => 'more_link',
         '#url' => Url::fromRoute('forum.index'),
-        '#attributes' => array('title' => $this->t('Read the latest forum topics.')),
-      );
+        '#attributes' => ['title' => $this->t('Read the latest forum topics.')],
+      ];
     }
     return $elements;
   }
@@ -43,12 +43,12 @@ public function build() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
-      'properties' => array(
+    return [
+      'properties' => [
         'administrative' => TRUE,
-      ),
+      ],
       'block_count' => 5,
-    );
+    ];
   }
 
   /**
@@ -63,12 +63,12 @@ protected function blockAccess(AccountInterface $account) {
    */
   public function blockForm($form, FormStateInterface $form_state) {
     $range = range(2, 20);
-    $form['block_count'] = array(
+    $form['block_count'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of topics'),
       '#default_value' => $this->configuration['block_count'],
       '#options' => array_combine($range, $range),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php b/core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php
index 761dc0f..95603d8 100644
--- a/core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php
+++ b/core/modules/forum/src/Plugin/Validation/Constraint/ForumLeafConstraintValidator.php
@@ -26,7 +26,7 @@ public function validate($items, Constraint $constraint) {
 
     // The forum_container flag must not be set.
     if (!empty($item->entity->forum_container->value)) {
-      $this->context->addViolation($constraint->noLeafMessage, array('%forum' => $item->entity->getName()));
+      $this->context->addViolation($constraint->noLeafMessage, ['%forum' => $item->entity->getName()]);
     }
   }
 
diff --git a/core/modules/forum/src/Tests/Views/ForumIntegrationTest.php b/core/modules/forum/src/Tests/Views/ForumIntegrationTest.php
index 99ed945..f5677e4 100644
--- a/core/modules/forum/src/Tests/Views/ForumIntegrationTest.php
+++ b/core/modules/forum/src/Tests/Views/ForumIntegrationTest.php
@@ -19,19 +19,19 @@ class ForumIntegrationTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('forum_test_views');
+  public static $modules = ['forum_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_forum_index');
+  public static $testViews = ['test_forum_index'];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('forum_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['forum_test_views']);
   }
 
 
@@ -41,25 +41,25 @@ protected function setUp() {
   public function testForumIntegration() {
     // Create a forum.
     $entity_manager = $this->container->get('entity.manager');
-    $term = $entity_manager->getStorage('taxonomy_term')->create(array('vid' => 'forums', 'name' => $this->randomMachineName()));
+    $term = $entity_manager->getStorage('taxonomy_term')->create(['vid' => 'forums', 'name' => $this->randomMachineName()]);
     $term->save();
 
     $comment_storage = $entity_manager->getStorage('comment');
 
     // Create some nodes which are part of this forum with some comments.
-    $nodes = array();
+    $nodes = [];
     for ($i = 0; $i < 3; $i++) {
       $node = $this->drupalCreateNode(['type' => 'forum', 'taxonomy_forums' => [$term->id()], 'sticky' => $i == 0 ? NodeInterface::STICKY : NodeInterface::NOT_STICKY]);
       $nodes[] = $node;
     }
 
-    $account = $this->drupalCreateUser(array('skip comment approval'));
+    $account = $this->drupalCreateUser(['skip comment approval']);
     $this->drupalLogin($account);
 
-    $comments = array();
+    $comments = [];
     foreach ($nodes as $index => $node) {
       for ($i = 0; $i <= $index; $i++) {
-        $comment = $comment_storage->create(array('entity_type' => 'node', 'entity_id' => $node->id(), 'field_name' => 'comment_forum'));
+        $comment = $comment_storage->create(['entity_type' => 'node', 'entity_id' => $node->id(), 'field_name' => 'comment_forum']);
         $comment->save();
         $comments[$comment->get('entity_id')->target_id][$comment->id()] = $comment;
       }
@@ -68,27 +68,27 @@ public function testForumIntegration() {
     $view = Views::getView('test_forum_index');
     $this->executeView($view);
 
-    $expected_result = array();
-    $expected_result[] = array(
+    $expected_result = [];
+    $expected_result[] = [
       'nid' => $nodes[0]->id(),
       'sticky' => NodeInterface::STICKY,
       'comment_count' => 1.
-    );
-    $expected_result[] = array(
+    ];
+    $expected_result[] = [
       'nid' => $nodes[1]->id(),
       'sticky' => NodeInterface::NOT_STICKY,
       'comment_count' => 2.
-    );
-    $expected_result[] = array(
+    ];
+    $expected_result[] = [
       'nid' => $nodes[2]->id(),
       'sticky' => NodeInterface::NOT_STICKY,
       'comment_count' => 3.
-    );
-    $column_map = array(
+    ];
+    $column_map = [
       'nid' => 'nid',
       'forum_index_sticky' => 'sticky',
       'forum_index_comment_count' => 'comment_count',
-    );
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
   }
 
diff --git a/core/modules/forum/tests/src/Functional/ForumBlockTest.php b/core/modules/forum/tests/src/Functional/ForumBlockTest.php
index 0c42602..6c412b7 100644
--- a/core/modules/forum/tests/src/Functional/ForumBlockTest.php
+++ b/core/modules/forum/tests/src/Functional/ForumBlockTest.php
@@ -18,7 +18,7 @@ class ForumBlockTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('forum', 'block');
+  public static $modules = ['forum', 'block'];
 
   /**
    * A user with various administrative privileges.
@@ -29,14 +29,14 @@ protected function setUp() {
     parent::setUp();
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'access administration pages',
       'administer blocks',
       'administer nodes',
       'create forum content',
       'post comments',
       'skip comment approval',
-    ));
+    ]);
   }
 
   /**
@@ -58,7 +58,7 @@ public function testNewForumTopicsBlock() {
 
     // We expect all 5 forum topics to appear in the "New forum topics" block.
     foreach ($topics as $topic) {
-      $this->assertLink($topic, 0, format_string('Forum topic @topic found in the "New forum topics" block.', array('@topic' => $topic)));
+      $this->assertLink($topic, 0, format_string('Forum topic @topic found in the "New forum topics" block.', ['@topic' => $topic]));
     }
 
     // Configure the new forum topics block to only show 2 topics.
@@ -69,11 +69,11 @@ public function testNewForumTopicsBlock() {
     // We expect only the 2 most recent forum topics to appear in the "New forum
     // topics" block.
     for ($index = 0; $index < 5; $index++) {
-      if (in_array($index, array(3, 4))) {
-        $this->assertLink($topics[$index], 0, format_string('Forum topic @topic found in the "New forum topics" block.', array('@topic' => $topics[$index])));
+      if (in_array($index, [3, 4])) {
+        $this->assertLink($topics[$index], 0, format_string('Forum topic @topic found in the "New forum topics" block.', ['@topic' => $topics[$index]]));
       }
       else {
-        $this->assertNoText($topics[$index], format_string('Forum topic @topic not found in the "New forum topics" block.', array('@topic' => $topics[$index])));
+        $this->assertNoText($topics[$index], format_string('Forum topic @topic not found in the "New forum topics" block.', ['@topic' => $topics[$index]]));
       }
     }
   }
@@ -93,7 +93,7 @@ public function testActiveForumTopicsBlock() {
       // Get the node from the topic title.
       $node = $this->drupalGetNodeByTitle($topics[$index]);
       $date->modify('+1 minute');
-      $comment = Comment::create(array(
+      $comment = Comment::create([
         'entity_id' => $node->id(),
         'field_name' => 'comment_forum',
         'entity_type' => 'node',
@@ -101,7 +101,7 @@ public function testActiveForumTopicsBlock() {
         'subject' => $this->randomString(20),
         'comment_body' => $this->randomString(256),
         'created' => $date->getTimestamp(),
-      ));
+      ]);
       $comment->save();
     }
 
@@ -116,10 +116,10 @@ public function testActiveForumTopicsBlock() {
     $this->drupalGet('<front>');
     for ($index = 0; $index < 10; $index++) {
       if ($index < 5) {
-        $this->assertLink($topics[$index], 0, format_string('Forum topic @topic found in the "Active forum topics" block.', array('@topic' => $topics[$index])));
+        $this->assertLink($topics[$index], 0, format_string('Forum topic @topic found in the "Active forum topics" block.', ['@topic' => $topics[$index]]));
       }
       else {
-        $this->assertNoText($topics[$index], format_string('Forum topic @topic not found in the "Active forum topics" block.', array('@topic' => $topics[$index])));
+        $this->assertNoText($topics[$index], format_string('Forum topic @topic not found in the "Active forum topics" block.', ['@topic' => $topics[$index]]));
       }
     }
 
@@ -132,7 +132,7 @@ public function testActiveForumTopicsBlock() {
     // We expect only the 2 forum topics with most recent comments to appear in
     // the "Active forum topics" block.
     for ($index = 0; $index < 10; $index++) {
-      if (in_array($index, array(3, 4))) {
+      if (in_array($index, [3, 4])) {
         $this->assertLink($topics[$index], 0, 'Forum topic found in the "Active forum topics" block.');
       }
       else {
@@ -148,7 +148,7 @@ public function testActiveForumTopicsBlock() {
    *   The title of the newly generated topic.
    */
   protected function createForumTopics($count = 5) {
-    $topics = array();
+    $topics = [];
     $date = new DrupalDateTime();
     $date->modify('-24 hours');
 
@@ -160,17 +160,17 @@ protected function createForumTopics($count = 5) {
       // changing the date.
       $date->modify('+1 minute');
 
-      $edit = array(
+      $edit = [
         'title[0][value]' => $title,
         'body[0][value]' => $body,
         // Forum posts are ordered by timestamp, so force a unique timestamp by
         // adding the index.
         'created[0][value][date]' => $date->format('Y-m-d'),
         'created[0][value][time]' => $date->format('H:i:s'),
-      );
+      ];
 
       // Create the forum topic, preselecting the forum ID via a URL parameter.
-      $this->drupalPostForm('node/add/forum', $edit, t('Save and publish'), array('query' => array('forum_id' => 1)));
+      $this->drupalPostForm('node/add/forum', $edit, t('Save and publish'), ['query' => ['forum_id' => 1]]);
       $topics[] = $title;
     }
 
diff --git a/core/modules/forum/tests/src/Functional/ForumIndexTest.php b/core/modules/forum/tests/src/Functional/ForumIndexTest.php
index 8bcb482..3fd74b6 100644
--- a/core/modules/forum/tests/src/Functional/ForumIndexTest.php
+++ b/core/modules/forum/tests/src/Functional/ForumIndexTest.php
@@ -16,7 +16,7 @@ class ForumIndexTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'comment', 'forum');
+  public static $modules = ['taxonomy', 'comment', 'forum'];
 
   protected function setUp() {
     parent::setUp();
@@ -35,15 +35,15 @@ function testForumIndexStatus() {
 
     // Create a test node.
     $title = $this->randomMachineName(20);
-    $edit = array(
+    $edit = [
       'title[0][value]' => $title,
       'body[0][value]' => $this->randomMachineName(200),
-    );
+    ];
 
     // Create the forum topic, preselecting the forum ID via a URL parameter.
     $this->drupalGet("forum/$tid");
-    $this->clickLink(t('Add new @node_type', array('@node_type' => 'Forum topic')));
-    $this->assertUrl('node/add/forum', array('query' => array('forum_id' => $tid)));
+    $this->clickLink(t('Add new @node_type', ['@node_type' => 'Forum topic']));
+    $this->assertUrl('node/add/forum', ['query' => ['forum_id' => $tid]]);
     $this->drupalPostForm(NULL, $edit, t('Save and publish'));
 
     // Check that the node exists in the database.
@@ -51,11 +51,11 @@ function testForumIndexStatus() {
     $this->assertTrue(!empty($node), 'New forum node found in database.');
 
     // Create a child forum.
-    $edit = array(
+    $edit = [
       'name[0][value]' => $this->randomMachineName(20),
       'description[0][value]' => $this->randomMachineName(200),
       'parent[0]' => $tid,
-    );
+    ];
     $this->drupalPostForm('admin/structure/forum/add/forum', $edit, t('Save'));
     $tid_child = $tid + 1;
 
@@ -71,7 +71,7 @@ function testForumIndexStatus() {
 
 
     // Unpublish the node.
-    $this->drupalPostForm('node/' . $node->id() . '/edit', array(), t('Save and unpublish'));
+    $this->drupalPostForm('node/' . $node->id() . '/edit', [], t('Save and unpublish'));
     $this->drupalGet('node/' . $node->id());
     $this->assertText(t('Access denied'), 'Unpublished node is no longer accessible.');
 
diff --git a/core/modules/forum/tests/src/Functional/ForumNodeAccessTest.php b/core/modules/forum/tests/src/Functional/ForumNodeAccessTest.php
index 59a1192..83523e6 100644
--- a/core/modules/forum/tests/src/Functional/ForumNodeAccessTest.php
+++ b/core/modules/forum/tests/src/Functional/ForumNodeAccessTest.php
@@ -17,7 +17,7 @@ class ForumNodeAccessTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment', 'forum', 'taxonomy', 'tracker', 'node_access_test', 'block');
+  public static $modules = ['node', 'comment', 'forum', 'taxonomy', 'tracker', 'node_access_test', 'block'];
 
   protected function setUp() {
     parent::setUp();
@@ -34,30 +34,30 @@ protected function setUp() {
    */
   function testForumNodeAccess() {
     // Create some users.
-    $access_user = $this->drupalCreateUser(array('node test view'));
+    $access_user = $this->drupalCreateUser(['node test view']);
     $no_access_user = $this->drupalCreateUser();
-    $admin_user = $this->drupalCreateUser(array('access administration pages', 'administer modules', 'administer blocks', 'create forum content'));
+    $admin_user = $this->drupalCreateUser(['access administration pages', 'administer modules', 'administer blocks', 'create forum content']);
 
     $this->drupalLogin($admin_user);
 
     // Create a private node.
     $private_node_title = $this->randomMachineName(20);
-    $edit = array(
+    $edit = [
       'title[0][value]' => $private_node_title,
       'body[0][value]' => $this->randomMachineName(200),
       'private[0][value]' => TRUE,
-    );
-    $this->drupalPostForm('node/add/forum', $edit, t('Save'), array('query' => array('forum_id' => 1)));
+    ];
+    $this->drupalPostForm('node/add/forum', $edit, t('Save'), ['query' => ['forum_id' => 1]]);
     $private_node = $this->drupalGetNodeByTitle($private_node_title);
     $this->assertTrue(!empty($private_node), 'New private forum node found in database.');
 
     // Create a public node.
     $public_node_title = $this->randomMachineName(20);
-    $edit = array(
+    $edit = [
       'title[0][value]' => $public_node_title,
       'body[0][value]' => $this->randomMachineName(200),
-    );
-    $this->drupalPostForm('node/add/forum', $edit, t('Save'), array('query' => array('forum_id' => 1)));
+    ];
+    $this->drupalPostForm('node/add/forum', $edit, t('Save'), ['query' => ['forum_id' => 1]]);
     $public_node = $this->drupalGetNodeByTitle($public_node_title);
     $this->assertTrue(!empty($public_node), 'New public forum node found in database.');
 
diff --git a/core/modules/forum/tests/src/Functional/ForumTest.php b/core/modules/forum/tests/src/Functional/ForumTest.php
index 067e2bc..25ecc9d 100644
--- a/core/modules/forum/tests/src/Functional/ForumTest.php
+++ b/core/modules/forum/tests/src/Functional/ForumTest.php
@@ -25,7 +25,7 @@ class ForumTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'comment', 'forum', 'node', 'block', 'menu_ui', 'help');
+  public static $modules = ['taxonomy', 'comment', 'forum', 'node', 'block', 'menu_ui', 'help'];
 
   /**
    * A user with various administrative privileges.
@@ -81,7 +81,7 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'access administration pages',
       'administer modules',
       'administer blocks',
@@ -90,27 +90,27 @@ protected function setUp() {
       'administer taxonomy',
       'create forum content',
       'access comments',
-    ));
-    $this->editAnyTopicsUser = $this->drupalCreateUser(array(
+    ]);
+    $this->editAnyTopicsUser = $this->drupalCreateUser([
       'access administration pages',
       'create forum content',
       'edit any forum content',
       'delete any forum content',
-    ));
-    $this->editOwnTopicsUser = $this->drupalCreateUser(array(
+    ]);
+    $this->editOwnTopicsUser = $this->drupalCreateUser([
       'create forum content',
       'edit own forum content',
       'delete own forum content',
-    ));
+    ]);
     $this->webUser = $this->drupalCreateUser();
-    $this->postCommentUser = $this->drupalCreateUser(array(
+    $this->postCommentUser = $this->drupalCreateUser([
       'administer content types',
       'create forum content',
       'post comments',
       'skip comment approval',
       'access comments',
-    ));
-    $this->drupalPlaceBlock('help_block', array('region' => 'help'));
+    ]);
+    $this->drupalPlaceBlock('help_block', ['region' => 'help']);
     $this->drupalPlaceBlock('local_actions_block');
   }
 
@@ -188,7 +188,7 @@ function testForum() {
     $this->drupalGet('forum');
 
     // Verify row for testing forum.
-    $forum_arg = array(':forum' => 'forum-list-' . $this->forum['tid']);
+    $forum_arg = [':forum' => 'forum-list-' . $this->forum['tid']];
 
     // Topics cell contains number of topics and number of unread topics.
     $xpath = $this->buildXPathQuery('//tr[@id=:forum]//td[@class="forum__topics"]', $forum_arg);
@@ -210,15 +210,15 @@ function testForum() {
     $this->assertEquals('6', $elements[0]->getText(), 'Number of posts found.');
 
     // Test loading multiple forum nodes on the front page.
-    $this->drupalLogin($this->drupalCreateUser(array('administer content types', 'create forum content', 'post comments')));
-    $this->drupalPostForm('admin/structure/types/manage/forum', array('options[promote]' => 'promote'), t('Save content type'));
+    $this->drupalLogin($this->drupalCreateUser(['administer content types', 'create forum content', 'post comments']));
+    $this->drupalPostForm('admin/structure/types/manage/forum', ['options[promote]' => 'promote'], t('Save content type'));
     $this->createForumTopic($this->forum, FALSE);
     $this->createForumTopic($this->forum, FALSE);
     $this->drupalGet('node');
 
     // Test adding a comment to a forum topic.
     $node = $this->createForumTopic($this->forum, FALSE);
-    $edit = array();
+    $edit = [];
     $edit['comment_body[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm('node/' . $node->id(), $edit, t('Save'));
     $this->assertResponse(200);
@@ -226,7 +226,7 @@ function testForum() {
     // Test editing a forum topic that has a comment.
     $this->drupalLogin($this->editAnyTopicsUser);
     $this->drupalGet('forum/' . $this->forum['tid']);
-    $this->drupalPostForm('node/' . $node->id() . '/edit', array(), t('Save'));
+    $this->drupalPostForm('node/' . $node->id() . '/edit', [], t('Save'));
     $this->assertResponse(200);
 
     // Test the root forum page title change.
@@ -260,7 +260,7 @@ function testAddOrphanTopic() {
     entity_delete_multiple('taxonomy_term', $tids);
 
     // Create an orphan forum item.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(10);
     $edit['body[0][value]'] = $this->randomMachineName(120);
     $this->drupalLogin($this->adminUser);
@@ -270,7 +270,7 @@ function testAddOrphanTopic() {
     $this->assertEqual(0, $nid_count, 'A forum node was not created when missing a forum vocabulary.');
 
     // Reset the defaults for future tests.
-    \Drupal::service('module_installer')->install(array('forum'));
+    \Drupal::service('module_installer')->install(['forum']);
   }
 
   /**
@@ -284,7 +284,7 @@ private function doAdminTests($user) {
     $this->drupalLogin($user);
 
     // Add forum to the Tools menu.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/structure/menu/manage/tools', $edit, t('Save'));
     $this->assertResponse(200);
 
@@ -313,7 +313,7 @@ private function doAdminTests($user) {
     // Create second forum in container, destined to be deleted below.
     $delete_forum = $this->createForum('forum', $this->forumContainer['tid']);
     // Save forum overview.
-    $this->drupalPostForm('admin/structure/forum/', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/forum/', [], t('Save'));
     $this->assertRaw(t('The configuration options have been saved.'));
     // Delete this second forum.
     $this->deleteForum($delete_forum['tid']);
@@ -362,15 +362,15 @@ function editForumVocabulary() {
     $original_vocabulary = Vocabulary::load($vid);
 
     // Generate a random name and description.
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(10),
       'description' => $this->randomMachineName(100),
-    );
+    ];
 
     // Edit the vocabulary.
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $original_vocabulary->id(), $edit, t('Save'));
     $this->assertResponse(200);
-    $this->assertRaw(t('Updated vocabulary %name.', array('%name' => $edit['name'])), 'Vocabulary was edited');
+    $this->assertRaw(t('Updated vocabulary %name.', ['%name' => $edit['name']]), 'Vocabulary was edited');
 
     // Grab the newly edited vocabulary.
     $current_vocabulary = Vocabulary::load($vid);
@@ -404,12 +404,12 @@ function createForum($type, $parent = 0) {
     $name = $this->randomMachineName(10);
     $description = $this->randomMachineName(100);
 
-    $edit = array(
+    $edit = [
       'name[0][value]' => $name,
       'description[0][value]' => $description,
       'parent[0]' => $parent,
       'weight' => '0',
-    );
+    ];
 
     // Create forum.
     $this->drupalPostForm('admin/structure/forum/add/' . $type, $edit, t('Save'));
@@ -418,22 +418,22 @@ function createForum($type, $parent = 0) {
     $this->assertText(
       t(
         'Created new @type @term.',
-        array('@term' => $name, '@type' => t($type))
+        ['@term' => $name, '@type' => t($type)]
       ),
-      format_string('@type was created', array('@type' => ucfirst($type)))
+      format_string('@type was created', ['@type' => ucfirst($type)])
     );
 
     // Verify that the creation message contains a link to a term.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'term/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'term/']);
     $this->assert(isset($view_link), 'The message area contains a link to a term');
 
     // Verify forum.
-    $term = db_query("SELECT * FROM {taxonomy_term_field_data} t WHERE t.vid = :vid AND t.name = :name AND t.description__value = :desc AND t.default_langcode = 1", array(':vid' => $this->config('forum.settings')->get('vocabulary'), ':name' => $name, ':desc' => $description))->fetchAssoc();
+    $term = db_query("SELECT * FROM {taxonomy_term_field_data} t WHERE t.vid = :vid AND t.name = :name AND t.description__value = :desc AND t.default_langcode = 1", [':vid' => $this->config('forum.settings')->get('vocabulary'), ':name' => $name, ':desc' => $description])->fetchAssoc();
     $this->assertTrue(!empty($term), 'The ' . $type . ' exists in the database');
 
     // Verify forum hierarchy.
     $tid = $term['tid'];
-    $parent_tid = db_query("SELECT t.parent FROM {taxonomy_term_hierarchy} t WHERE t.tid = :tid", array(':tid' => $tid))->fetchField();
+    $parent_tid = db_query("SELECT t.parent FROM {taxonomy_term_hierarchy} t WHERE t.tid = :tid", [':tid' => $tid])->fetchField();
     $this->assertTrue($parent == $parent_tid, 'The ' . $type . ' is linked to its container');
 
     $forum = $this->container->get('entity.manager')->getStorage('taxonomy_term')->load($tid);
@@ -454,7 +454,7 @@ function deleteForum($tid) {
     $this->assertText('Are you sure you want to delete the forum');
     $this->assertNoText('Add forum');
     $this->assertNoText('Add forum container');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
 
     // Assert that the forum no longer exists.
     $this->drupalGet('forum/' . $tid);
@@ -496,7 +496,7 @@ function testForumWithNewPost() {
     // Log in as a second user.
     $this->drupalLogin($this->postCommentUser);
     // Post a reply to the topic.
-    $edit = array();
+    $edit = [];
     $edit['subject[0][value]'] = $this->randomMachineName();
     $edit['comment_body[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm('node/' . $node->id(), $edit, t('Save'));
@@ -533,33 +533,33 @@ function createForumTopic($forum, $container = FALSE) {
     $title = $this->randomMachineName(20);
     $body = $this->randomMachineName(200);
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => $title,
       'body[0][value]' => $body,
-    );
+    ];
     $tid = $forum['tid'];
 
     // Create the forum topic, preselecting the forum ID via a URL parameter.
-    $this->drupalPostForm('node/add/forum', $edit, t('Save'), array('query' => array('forum_id' => $tid)));
+    $this->drupalPostForm('node/add/forum', $edit, t('Save'), ['query' => ['forum_id' => $tid]]);
 
     $type = t('Forum topic');
     if ($container) {
-      $this->assertNoText(t('@type @title has been created.', array('@type' => $type, '@title' => $title)), 'Forum topic was not created');
-      $this->assertRaw(t('The item %title is a forum container, not a forum.', array('%title' => $forum['name'])), 'Error message was shown');
+      $this->assertNoText(t('@type @title has been created.', ['@type' => $type, '@title' => $title]), 'Forum topic was not created');
+      $this->assertRaw(t('The item %title is a forum container, not a forum.', ['%title' => $forum['name']]), 'Error message was shown');
       return;
     }
     else {
-      $this->assertText(t('@type @title has been created.', array('@type' => $type, '@title' => $title)), 'Forum topic was created');
-      $this->assertNoRaw(t('The item %title is a forum container, not a forum.', array('%title' => $forum['name'])), 'No error message was shown');
+      $this->assertText(t('@type @title has been created.', ['@type' => $type, '@title' => $title]), 'Forum topic was created');
+      $this->assertNoRaw(t('The item %title is a forum container, not a forum.', ['%title' => $forum['name']]), 'No error message was shown');
 
       // Verify that the creation message contains a link to a term.
-      $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'term/'));
+      $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'term/']);
       $this->assert(isset($view_link), 'The message area contains a link to a term');
     }
 
     // Retrieve node object, ensure that the topic was created and in the proper forum.
     $node = $this->drupalGetNodeByTitle($title);
-    $this->assertTrue($node != NULL, format_string('Node @title was loaded', array('@title' => $title)));
+    $this->assertTrue($node != NULL, format_string('Node @title was loaded', ['@title' => $title]));
     $this->assertEqual($node->taxonomy_forums->target_id, $tid, 'Saved forum topic was in the expected forum');
 
     // View forum topic.
@@ -602,16 +602,16 @@ private function verifyForums(EntityInterface $node, $admin, $response = 200) {
     $this->drupalGet('node/' . $node->id());
     $this->assertResponse(200);
     $this->assertTitle($node->label() . ' | Drupal', 'Forum node was displayed');
-    $breadcrumb_build = array(
+    $breadcrumb_build = [
       Link::createFromRoute(t('Home'), '<front>'),
       Link::createFromRoute(t('Forums'), 'forum.index'),
-      Link::createFromRoute($this->forumContainer['name'], 'forum.page', array('taxonomy_term' => $this->forumContainer['tid'])),
-      Link::createFromRoute($this->forum['name'], 'forum.page', array('taxonomy_term' => $this->forum['tid'])),
-    );
-    $breadcrumb = array(
+      Link::createFromRoute($this->forumContainer['name'], 'forum.page', ['taxonomy_term' => $this->forumContainer['tid']]),
+      Link::createFromRoute($this->forum['name'], 'forum.page', ['taxonomy_term' => $this->forum['tid']]),
+    ];
+    $breadcrumb = [
       '#theme' => 'breadcrumb',
       '#links' => $breadcrumb_build,
-    );
+    ];
     $this->assertRaw(\Drupal::service('renderer')->renderRoot($breadcrumb), 'Breadcrumbs were displayed');
 
     // View forum edit node.
@@ -623,26 +623,26 @@ private function verifyForums(EntityInterface $node, $admin, $response = 200) {
 
     if ($response == 200) {
       // Edit forum node (including moving it to another forum).
-      $edit = array();
+      $edit = [];
       $edit['title[0][value]'] = 'node/' . $node->id();
       $edit['body[0][value]'] = $this->randomMachineName(256);
       // Assume the topic is initially associated with $forum.
       $edit['taxonomy_forums'] = $this->rootForum['tid'];
       $edit['shadow'] = TRUE;
       $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
-      $this->assertText(t('Forum topic @title has been updated.', array('@title' => $edit['title[0][value]'])), 'Forum node was edited');
+      $this->assertText(t('Forum topic @title has been updated.', ['@title' => $edit['title[0][value]']]), 'Forum node was edited');
 
       // Verify topic was moved to a different forum.
-      $forum_tid = db_query("SELECT tid FROM {forum} WHERE nid = :nid AND vid = :vid", array(
+      $forum_tid = db_query("SELECT tid FROM {forum} WHERE nid = :nid AND vid = :vid", [
         ':nid' => $node->id(),
         ':vid' => $node->getRevisionId(),
-      ))->fetchField();
+      ])->fetchField();
       $this->assertTrue($forum_tid == $this->rootForum['tid'], 'The forum topic is linked to a different forum');
 
       // Delete forum node.
-      $this->drupalPostForm('node/' . $node->id() . '/delete', array(), t('Delete'));
+      $this->drupalPostForm('node/' . $node->id() . '/delete', [], t('Delete'));
       $this->assertResponse($response);
-      $this->assertRaw(t('Forum topic %title has been deleted.', array('%title' => $edit['title[0][value]'])), 'Forum node was deleted');
+      $this->assertRaw(t('Forum topic %title has been deleted.', ['%title' => $edit['title[0][value]']]), 'Forum node was deleted');
     }
   }
 
@@ -660,18 +660,18 @@ private function verifyForumView($forum, $parent = NULL) {
     $this->assertResponse(200);
     $this->assertTitle($forum['name'] . ' | Drupal');
 
-    $breadcrumb_build = array(
+    $breadcrumb_build = [
       Link::createFromRoute(t('Home'), '<front>'),
       Link::createFromRoute(t('Forums'), 'forum.index'),
-    );
+    ];
     if (isset($parent)) {
-      $breadcrumb_build[] = Link::createFromRoute($parent['name'], 'forum.page', array('taxonomy_term' => $parent['tid']));
+      $breadcrumb_build[] = Link::createFromRoute($parent['name'], 'forum.page', ['taxonomy_term' => $parent['tid']]);
     }
 
-    $breadcrumb = array(
+    $breadcrumb = [
       '#theme' => 'breadcrumb',
       '#links' => $breadcrumb_build,
-    );
+    ];
     $this->assertRaw(\Drupal::service('renderer')->renderRoot($breadcrumb), 'Breadcrumbs were displayed');
   }
 
@@ -679,7 +679,7 @@ private function verifyForumView($forum, $parent = NULL) {
    * Generates forum topics.
    */
   private function generateForumTopics() {
-    $this->nids = array();
+    $this->nids = [];
     for ($i = 0; $i < 5; $i++) {
       $node = $this->createForumTopic($this->forum, FALSE);
       $this->nids[] = $node->id();
diff --git a/core/modules/forum/tests/src/Functional/ForumUninstallTest.php b/core/modules/forum/tests/src/Functional/ForumUninstallTest.php
index 65038e9..c2d3848 100644
--- a/core/modules/forum/tests/src/Functional/ForumUninstallTest.php
+++ b/core/modules/forum/tests/src/Functional/ForumUninstallTest.php
@@ -21,7 +21,7 @@ class ForumUninstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('forum');
+  public static $modules = ['forum'];
 
   /**
    * Tests if forum module uninstallation properly deletes the field.
@@ -37,21 +37,21 @@ public function testForumUninstallWithField() {
       'name' => t('A term'),
       'langcode' => \Drupal::languageManager()->getDefaultLanguage()->getId(),
       'description' => '',
-      'parent' => array(0),
+      'parent' => [0],
       'vid' => 'forums',
       'forum_container' => 0,
     ]);
     $term->save();
 
     // Create a forum node.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'title' => 'A forum post',
       'type' => 'forum',
-      'taxonomy_forums' => array(array('target_id' => $term->id())),
-    ));
+      'taxonomy_forums' => [['target_id' => $term->id()]],
+    ]);
 
     // Create at least one comment against the forum node.
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'entity_id' => $node->nid->value,
       'entity_type' => 'node',
       'field_name' => 'comment_forum',
@@ -60,7 +60,7 @@ public function testForumUninstallWithField() {
       'status' => CommentInterface::PUBLISHED,
       'subject' => $this->randomMachineName(),
       'hostname' => '127.0.0.1',
-    ));
+    ]);
     $comment->save();
 
     // Attempt to uninstall forum.
@@ -70,7 +70,7 @@ public function testForumUninstallWithField() {
     $this->assertText('To uninstall Forum, first delete all Forum content');
 
     // Delete the node.
-    $this->drupalPostForm('node/' . $node->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('node/' . $node->id() . '/delete', [], t('Delete'));
 
     // Attempt to uninstall forum.
     $this->drupalGet('admin/modules/uninstall');
@@ -93,9 +93,9 @@ public function testForumUninstallWithField() {
     $this->drupalGet('admin/modules/uninstall');
     // Assert forum is no longer required.
     $this->assertFieldByName('uninstall[forum]');
-    $this->drupalPostForm('admin/modules/uninstall', array(
+    $this->drupalPostForm('admin/modules/uninstall', [
       'uninstall[forum]' => 1,
-    ), t('Uninstall'));
+    ], t('Uninstall'));
     $this->drupalPostForm(NULL, [], t('Uninstall'));
 
     // Check that the field is now deleted.
@@ -104,16 +104,16 @@ public function testForumUninstallWithField() {
 
     // Check that a node type with a machine name of forum can be created after
     // uninstalling the forum module and the node type is not locked.
-    $edit = array(
+    $edit = [
       'name' => 'Forum',
       'title_label' => 'title for forum',
       'type' => 'forum',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, t('Save content type'));
     $this->assertTrue((bool) NodeType::load('forum'), 'Node type with machine forum created.');
     $this->drupalGet('admin/structure/types/manage/forum');
     $this->clickLink(t('Delete'));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->assertResponse(200);
     $this->assertFalse((bool) NodeType::load('forum'), 'Node type with machine forum deleted.');
 
@@ -137,14 +137,14 @@ public function testForumUninstallWithoutFieldStorage() {
 
     // Delete all terms in the Forums vocabulary. Uninstalling the forum module
     // will fail unless this is done.
-    $terms = entity_load_multiple_by_properties('taxonomy_term', array('vid' => 'forums'));
+    $terms = entity_load_multiple_by_properties('taxonomy_term', ['vid' => 'forums']);
     foreach ($terms as $term) {
       $term->delete();
     }
 
     // Ensure that uninstallation succeeds even if the field has already been
     // deleted manually beforehand.
-    $this->container->get('module_installer')->uninstall(array('forum'));
+    $this->container->get('module_installer')->uninstall(['forum']);
   }
 
 }
diff --git a/core/modules/forum/tests/src/Kernel/Migrate/d6/MigrateForumConfigsTest.php b/core/modules/forum/tests/src/Kernel/Migrate/d6/MigrateForumConfigsTest.php
index b0964a7..bc0a9ff 100644
--- a/core/modules/forum/tests/src/Kernel/Migrate/d6/MigrateForumConfigsTest.php
+++ b/core/modules/forum/tests/src/Kernel/Migrate/d6/MigrateForumConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateForumConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('comment', 'forum', 'taxonomy');
+  public static $modules = ['comment', 'forum', 'taxonomy'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
index 8001e57..abc1122 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumBreadcrumbBuilderBaseTest.php
@@ -37,9 +37,9 @@ public function testConstructor() {
     // Make some test doubles.
     $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
     $config_factory = $this->getConfigFactoryStub(
-      array(
-        'forum.settings' => array('IAmATestKey' => 'IAmATestValue'),
-      )
+      [
+        'forum.settings' => ['IAmATestKey' => 'IAmATestValue'],
+      ]
     );
     $forum_manager = $this->getMock('Drupal\forum\ForumManagerInterface');
     $translation_manager = $this->getMock('Drupal\Core\StringTranslation\TranslationInterface');
@@ -48,20 +48,20 @@ public function testConstructor() {
     $builder = $this->getMockForAbstractClass(
       'Drupal\forum\Breadcrumb\ForumBreadcrumbBuilderBase',
       // Constructor array.
-      array(
+      [
         $entity_manager,
         $config_factory,
         $forum_manager,
         $translation_manager,
-      )
+      ]
     );
 
     // Reflect upon our properties, except for config which is a special case.
-    $property_names = array(
+    $property_names = [
       'entityManager' => $entity_manager,
       'forumManager' => $forum_manager,
       'stringTranslation' => $translation_manager,
-    );
+    ];
     foreach ($property_names as $property_name => $property_value) {
       $this->assertAttributeEquals(
         $property_value, $property_name, $builder
@@ -103,37 +103,37 @@ public function testBuild() {
     $vocab_storage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
     $vocab_storage->expects($this->any())
       ->method('load')
-      ->will($this->returnValueMap(array(
-        array('forums', $prophecy->reveal()),
-      )));
+      ->will($this->returnValueMap([
+        ['forums', $prophecy->reveal()],
+      ]));
 
     $entity_manager = $this->getMockBuilder('Drupal\Core\Entity\EntityManagerInterface')
       ->disableOriginalConstructor()
       ->getMock();
     $entity_manager->expects($this->any())
       ->method('getStorage')
-      ->will($this->returnValueMap(array(
-        array('taxonomy_vocabulary', $vocab_storage),
-      )));
+      ->will($this->returnValueMap([
+        ['taxonomy_vocabulary', $vocab_storage],
+      ]));
 
     $config_factory = $this->getConfigFactoryStub(
-      array(
-        'forum.settings' => array(
+      [
+        'forum.settings' => [
           'vocabulary' => 'forums',
-        ),
-      )
+        ],
+      ]
     );
 
     // Build a breadcrumb builder to test.
     $breadcrumb_builder = $this->getMockForAbstractClass(
       'Drupal\forum\Breadcrumb\ForumBreadcrumbBuilderBase',
       // Constructor array.
-      array(
+      [
         $entity_manager,
         $config_factory,
         $forum_manager,
         $translation_manager,
-      )
+      ]
     );
 
     // Add a translation manager for t().
@@ -144,10 +144,10 @@ public function testBuild() {
     $route_match = $this->getMock('Drupal\Core\Routing\RouteMatchInterface');
 
     // Expected result set.
-    $expected = array(
+    $expected = [
       Link::createFromRoute('Home', '<front>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
-    );
+    ];
 
     // And finally, the test.
     $breadcrumb = $breadcrumb_builder->build($route_match);
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
index 4e5a6c4..45566f2 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumListingBreadcrumbBuilderTest.php
@@ -41,21 +41,21 @@ protected function setUp() {
    * @dataProvider providerTestApplies
    * @covers ::applies
    */
-  public function testApplies($expected, $route_name = NULL, $parameter_map = array()) {
+  public function testApplies($expected, $route_name = NULL, $parameter_map = []) {
     // Make some test doubles.
     $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
-    $config_factory = $this->getConfigFactoryStub(array());
+    $config_factory = $this->getConfigFactoryStub([]);
     $forum_manager = $this->getMock('Drupal\forum\ForumManagerInterface');
     $translation_manager = $this->getMock('Drupal\Core\StringTranslation\TranslationInterface');
 
     // Make an object to test.
     $builder = $this->getMockBuilder('Drupal\forum\Breadcrumb\ForumListingBreadcrumbBuilder')
-      ->setConstructorArgs(array(
+      ->setConstructorArgs([
         $entity_manager,
         $config_factory,
         $forum_manager,
         $translation_manager,
-      ))
+      ])
       ->setMethods(NULL)
       ->getMock();
 
@@ -84,29 +84,29 @@ public function providerTestApplies() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    return array(
-      array(
+    return [
+      [
         FALSE,
-      ),
-      array(
+      ],
+      [
         FALSE,
         'NOT.forum.page',
-      ),
-      array(
+      ],
+      [
         FALSE,
         'forum.page',
-      ),
-      array(
+      ],
+      [
         TRUE,
         'forum.page',
-        array(array('taxonomy_term', 'anything')),
-      ),
-      array(
+        [['taxonomy_term', 'anything']],
+      ],
+      [
         TRUE,
         'forum.page',
-        array(array('taxonomy_term', $mock_term)),
-      ),
-    );
+        [['taxonomy_term', $mock_term]],
+      ],
+    ];
   }
 
   /**
@@ -141,10 +141,10 @@ public function testBuild() {
     $forum_manager = $this->getMock('Drupal\forum\ForumManagerInterface');
     $forum_manager->expects($this->at(0))
       ->method('getParents')
-      ->will($this->returnValue(array($term1)));
+      ->will($this->returnValue([$term1]));
     $forum_manager->expects($this->at(1))
       ->method('getParents')
-      ->will($this->returnValue(array($term1, $term2)));
+      ->will($this->returnValue([$term1, $term2]));
 
     // The root forum.
     $prophecy = $this->prophesize('Drupal\taxonomy\VocabularyInterface');
@@ -156,35 +156,35 @@ public function testBuild() {
     $vocab_storage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
     $vocab_storage->expects($this->any())
       ->method('load')
-      ->will($this->returnValueMap(array(
-        array('forums', $prophecy->reveal()),
-      )));
+      ->will($this->returnValueMap([
+        ['forums', $prophecy->reveal()],
+      ]));
 
     $entity_manager = $this->getMockBuilder('Drupal\Core\Entity\EntityManagerInterface')
       ->disableOriginalConstructor()
       ->getMock();
     $entity_manager->expects($this->any())
       ->method('getStorage')
-      ->will($this->returnValueMap(array(
-        array('taxonomy_vocabulary', $vocab_storage),
-      )));
+      ->will($this->returnValueMap([
+        ['taxonomy_vocabulary', $vocab_storage],
+      ]));
 
     $config_factory = $this->getConfigFactoryStub(
-      array(
-        'forum.settings' => array(
+      [
+        'forum.settings' => [
           'vocabulary' => 'forums',
-        ),
-      )
+        ],
+      ]
     );
 
     // Build a breadcrumb builder to test.
     $breadcrumb_builder = $this->getMock(
-      'Drupal\forum\Breadcrumb\ForumListingBreadcrumbBuilder', NULL, array(
+      'Drupal\forum\Breadcrumb\ForumListingBreadcrumbBuilder', NULL, [
         $entity_manager,
         $config_factory,
         $forum_manager,
         $translation_manager,
-      )
+      ]
     );
 
     // Add a translation manager for t().
@@ -208,11 +208,11 @@ public function testBuild() {
       ->will($this->returnValue($forum_listing));
 
     // First test.
-    $expected1 = array(
+    $expected1 = [
       Link::createFromRoute('Home', '<front>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
-      Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
-    );
+      Link::createFromRoute('Something', 'forum.page', ['taxonomy_term' => 1]),
+    ];
     $breadcrumb = $breadcrumb_builder->build($route_match);
     $this->assertEquals($expected1, $breadcrumb->getLinks());
     $this->assertEquals(['route'], $breadcrumb->getCacheContexts());
@@ -220,12 +220,12 @@ public function testBuild() {
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
 
     // Second test.
-    $expected2 = array(
+    $expected2 = [
       Link::createFromRoute('Home', '<front>'),
       Link::createFromRoute('Fora_is_the_plural_of_forum', 'forum.index'),
-      Link::createFromRoute('Something else', 'forum.page', array('taxonomy_term' => 2)),
-      Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
-    );
+      Link::createFromRoute('Something else', 'forum.page', ['taxonomy_term' => 2]),
+      Link::createFromRoute('Something', 'forum.page', ['taxonomy_term' => 1]),
+    ];
     $breadcrumb = $breadcrumb_builder->build($route_match);
     $this->assertEquals($expected2, $breadcrumb->getLinks());
     $this->assertEquals(['route'], $breadcrumb->getCacheContexts());
diff --git a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
index 1998ffa..f4d3797 100644
--- a/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
+++ b/core/modules/forum/tests/src/Unit/Breadcrumb/ForumNodeBreadcrumbBuilderTest.php
@@ -41,10 +41,10 @@ protected function setUp() {
    * @dataProvider providerTestApplies
    * @covers ::applies
    */
-  public function testApplies($expected, $route_name = NULL, $parameter_map = array()) {
+  public function testApplies($expected, $route_name = NULL, $parameter_map = []) {
     // Make some test doubles.
     $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
-    $config_factory = $this->getConfigFactoryStub(array());
+    $config_factory = $this->getConfigFactoryStub([]);
 
     $forum_manager = $this->getMock('Drupal\forum\ForumManagerInterface');
     $forum_manager->expects($this->any())
@@ -56,12 +56,12 @@ public function testApplies($expected, $route_name = NULL, $parameter_map = arra
     // Make an object to test.
     $builder = $this->getMockBuilder('Drupal\forum\Breadcrumb\ForumNodeBreadcrumbBuilder')
       ->setConstructorArgs(
-        array(
+        [
           $entity_manager,
           $config_factory,
           $forum_manager,
           $translation_manager,
-        )
+        ]
       )
       ->setMethods(NULL)
       ->getMock();
@@ -93,29 +93,29 @@ public function providerTestApplies() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    return array(
-      array(
+    return [
+      [
         FALSE,
-      ),
-      array(
+      ],
+      [
         FALSE,
         'NOT.entity.node.canonical',
-      ),
-      array(
+      ],
+      [
         FALSE,
         'entity.node.canonical',
-      ),
-      array(
+      ],
+      [
         FALSE,
         'entity.node.canonical',
-        array(array('node', NULL)),
-      ),
-      array(
+        [['node', NULL]],
+      ],
+      [
         TRUE,
         'entity.node.canonical',
-        array(array('node', $mock_node)),
-      ),
-    );
+        [['node', $mock_node]],
+      ],
+    ];
   }
 
   /**
@@ -151,10 +151,10 @@ public function testBuild() {
       ->getMock();
     $forum_manager->expects($this->at(0))
       ->method('getParents')
-      ->will($this->returnValue(array($term1)));
+      ->will($this->returnValue([$term1]));
     $forum_manager->expects($this->at(1))
       ->method('getParents')
-      ->will($this->returnValue(array($term1, $term2)));
+      ->will($this->returnValue([$term1, $term2]));
 
     $prophecy = $this->prophesize('Drupal\taxonomy\VocabularyInterface');
     $prophecy->label()->willReturn('Forums');
@@ -165,35 +165,35 @@ public function testBuild() {
     $vocab_storage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
     $vocab_storage->expects($this->any())
       ->method('load')
-      ->will($this->returnValueMap(array(
-        array('forums', $prophecy->reveal()),
-      )));
+      ->will($this->returnValueMap([
+        ['forums', $prophecy->reveal()],
+      ]));
 
     $entity_manager = $this->getMockBuilder('Drupal\Core\Entity\EntityManagerInterface')
       ->disableOriginalConstructor()
       ->getMock();
     $entity_manager->expects($this->any())
       ->method('getStorage')
-      ->will($this->returnValueMap(array(
-        array('taxonomy_vocabulary', $vocab_storage),
-      )));
+      ->will($this->returnValueMap([
+        ['taxonomy_vocabulary', $vocab_storage],
+      ]));
 
     $config_factory = $this->getConfigFactoryStub(
-      array(
-        'forum.settings' => array(
+      [
+        'forum.settings' => [
           'vocabulary' => 'forums',
-        ),
-      )
+        ],
+      ]
     );
 
     // Build a breadcrumb builder to test.
     $breadcrumb_builder = $this->getMock(
-      'Drupal\forum\Breadcrumb\ForumNodeBreadcrumbBuilder', NULL, array(
+      'Drupal\forum\Breadcrumb\ForumNodeBreadcrumbBuilder', NULL, [
         $entity_manager,
         $config_factory,
         $forum_manager,
         $translation_manager,
-      )
+      ]
     );
 
     // Add a translation manager for t().
@@ -215,11 +215,11 @@ public function testBuild() {
       ->will($this->returnValue($forum_node));
 
     // First test.
-    $expected1 = array(
+    $expected1 = [
       Link::createFromRoute('Home', '<front>'),
       Link::createFromRoute('Forums', 'forum.index'),
-      Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
-    );
+      Link::createFromRoute('Something', 'forum.page', ['taxonomy_term' => 1]),
+    ];
     $breadcrumb = $breadcrumb_builder->build($route_match);
     $this->assertEquals($expected1, $breadcrumb->getLinks());
     $this->assertEquals(['route'], $breadcrumb->getCacheContexts());
@@ -227,12 +227,12 @@ public function testBuild() {
     $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
 
     // Second test.
-    $expected2 = array(
+    $expected2 = [
       Link::createFromRoute('Home', '<front>'),
       Link::createFromRoute('Forums', 'forum.index'),
-      Link::createFromRoute('Something else', 'forum.page', array('taxonomy_term' => 2)),
-      Link::createFromRoute('Something', 'forum.page', array('taxonomy_term' => 1)),
-    );
+      Link::createFromRoute('Something else', 'forum.page', ['taxonomy_term' => 2]),
+      Link::createFromRoute('Something', 'forum.page', ['taxonomy_term' => 1]),
+    ];
     $breadcrumb = $breadcrumb_builder->build($route_match);
     $this->assertEquals($expected2, $breadcrumb->getLinks());
     $this->assertEquals(['route'], $breadcrumb->getCacheContexts());
diff --git a/core/modules/forum/tests/src/Unit/ForumManagerTest.php b/core/modules/forum/tests/src/Unit/ForumManagerTest.php
index 5873556..ad59092 100644
--- a/core/modules/forum/tests/src/Unit/ForumManagerTest.php
+++ b/core/modules/forum/tests/src/Unit/ForumManagerTest.php
@@ -57,17 +57,17 @@ public function testGetIndex() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    $manager = $this->getMock('\Drupal\forum\ForumManager', array('getChildren'), array(
+    $manager = $this->getMock('\Drupal\forum\ForumManager', ['getChildren'], [
       $config_factory,
       $entity_manager,
       $connection,
       $translation_manager,
       $comment_manager,
-    ));
+    ]);
 
     $manager->expects($this->once())
       ->method('getChildren')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     // Get the index once.
     $index1 = $manager->getIndex();
diff --git a/core/modules/hal/hal.api.php b/core/modules/hal/hal.api.php
index c1e3480..197785c 100644
--- a/core/modules/hal/hal.api.php
+++ b/core/modules/hal/hal.api.php
@@ -26,7 +26,7 @@
  * @see \Symfony\Component\Serializer\NormalizerInterface::normalize()
  * @see \Symfony\Component\Serializer\DenormalizerInterface::denormalize()
  */
-function hook_hal_type_uri_alter(&$uri, $context = array()) {
+function hook_hal_type_uri_alter(&$uri, $context = []) {
   if ($context['mymodule'] == TRUE) {
     $base = \Drupal::config('hal.settings')->get('link_domain');
     $uri = str_replace($base, 'http://mymodule.domain', $uri);
@@ -50,7 +50,7 @@ function hook_hal_type_uri_alter(&$uri, $context = array()) {
  * @see \Symfony\Component\Serializer\NormalizerInterface::normalize()
  * @see \Symfony\Component\Serializer\DenormalizerInterface::denormalize()
  */
-function hook_hal_relation_uri_alter(&$uri, $context = array()) {
+function hook_hal_relation_uri_alter(&$uri, $context = []) {
   if ($context['mymodule'] == TRUE) {
     $base = \Drupal::config('hal.settings')->get('link_domain');
     $uri = str_replace($base, 'http://mymodule.domain', $uri);
diff --git a/core/modules/hal/hal.module b/core/modules/hal/hal.module
index eaf06c1..0833e47 100644
--- a/core/modules/hal/hal.module
+++ b/core/modules/hal/hal.module
@@ -15,9 +15,9 @@ function hal_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.hal':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('<a href=":hal_spec">Hypertext Application Language (HAL)</a> is a format that supports the linking required for hypermedia APIs.', array(':hal_spec' => 'http://stateless.co/hal_specification.html')) . '</p>';
+      $output .= '<p>' . t('<a href=":hal_spec">Hypertext Application Language (HAL)</a> is a format that supports the linking required for hypermedia APIs.', [':hal_spec' => 'http://stateless.co/hal_specification.html']) . '</p>';
       $output .= '<p>' . t('Hypermedia APIs are a style of Web API that uses URIs to identify resources and the <a href="http://wikipedia.org/wiki/Link_relation">link relations</a> between them, enabling API consumers to follow links to discover API functionality.') . '</p>';
-      $output .= '<p>' . t('This module adds support for serializing entities (such as content items, taxonomy terms, etc.) to the JSON version of HAL. For more information, see the <a href=":hal_do">online documentation for the HAL module</a>.', array(':hal_do' => 'https://www.drupal.org/documentation/modules/hal')) . '</p>';
+      $output .= '<p>' . t('This module adds support for serializing entities (such as content items, taxonomy terms, etc.) to the JSON version of HAL. For more information, see the <a href=":hal_do">online documentation for the HAL module</a>.', [':hal_do' => 'https://www.drupal.org/documentation/modules/hal']) . '</p>';
       return $output;
   }
 }
diff --git a/core/modules/hal/src/LinkManager/LinkManager.php b/core/modules/hal/src/LinkManager/LinkManager.php
index b78b7cf..66e68d0 100644
--- a/core/modules/hal/src/LinkManager/LinkManager.php
+++ b/core/modules/hal/src/LinkManager/LinkManager.php
@@ -34,21 +34,21 @@ public function __construct(TypeLinkManagerInterface $type_link_manager, Relatio
   /**
    * {@inheritdoc}
    */
-  public function getTypeUri($entity_type, $bundle, $context = array()) {
+  public function getTypeUri($entity_type, $bundle, $context = []) {
     return $this->typeLinkManager->getTypeUri($entity_type, $bundle, $context);
   }
 
   /**
    * {@inheritdoc}
    */
-  public function getTypeInternalIds($type_uri, $context = array()) {
+  public function getTypeInternalIds($type_uri, $context = []) {
     return $this->typeLinkManager->getTypeInternalIds($type_uri, $context);
   }
 
   /**
    * {@inheritdoc}
    */
-  public function getRelationUri($entity_type, $bundle, $field_name, $context = array()) {
+  public function getRelationUri($entity_type, $bundle, $field_name, $context = []) {
     return $this->relationLinkManager->getRelationUri($entity_type, $bundle, $field_name, $context);
   }
 
diff --git a/core/modules/hal/src/LinkManager/RelationLinkManager.php b/core/modules/hal/src/LinkManager/RelationLinkManager.php
index 55eb743..dc6486f 100644
--- a/core/modules/hal/src/LinkManager/RelationLinkManager.php
+++ b/core/modules/hal/src/LinkManager/RelationLinkManager.php
@@ -56,7 +56,7 @@ public function __construct(CacheBackendInterface $cache, EntityManagerInterface
   /**
    * {@inheritdoc}
    */
-  public function getRelationUri($entity_type, $bundle, $field_name, $context = array()) {
+  public function getRelationUri($entity_type, $bundle, $field_name, $context = []) {
     // Per the interface documentation of this method, the returned URI may
     // optionally also serve as the URL of a documentation page about this
     // field. However, Drupal does not currently implement such a documentation
@@ -79,7 +79,7 @@ public function getRelationUri($entity_type, $bundle, $field_name, $context = ar
   /**
    * {@inheritdoc}
    */
-  public function getRelationInternalIds($relation_uri, $context = array()) {
+  public function getRelationInternalIds($relation_uri, $context = []) {
     $relations = $this->getRelations($context);
     if (isset($relations[$relation_uri])) {
       return $relations[$relation_uri];
@@ -103,7 +103,7 @@ public function getRelationInternalIds($relation_uri, $context = array()) {
    *   An array of typed data ids (entity_type, bundle, and field name) keyed
    *   by corresponding relation URI.
    */
-  protected function getRelations($context = array()) {
+  protected function getRelations($context = []) {
     $cid = 'hal:links:relations';
     $cache = $this->cache->get($cid);
     if (!$cache) {
@@ -119,26 +119,26 @@ protected function getRelations($context = array()) {
    * @param array $context
    *   Context from the normalizer/serializer operation.
    */
-  protected function writeCache($context = array()) {
-    $data = array();
+  protected function writeCache($context = []) {
+    $data = [];
 
     foreach ($this->entityManager->getDefinitions() as $entity_type) {
       if ($entity_type instanceof ContentEntityTypeInterface) {
         foreach ($this->entityManager->getBundleInfo($entity_type->id()) as $bundle => $bundle_info) {
           foreach ($this->entityManager->getFieldDefinitions($entity_type->id(), $bundle) as $field_definition) {
             $relation_uri = $this->getRelationUri($entity_type->id(), $bundle, $field_definition->getName(), $context);
-            $data[$relation_uri] = array(
+            $data[$relation_uri] = [
               'entity_type' => $entity_type,
               'bundle' => $bundle,
               'field_name' => $field_definition->getName(),
-            );
+            ];
           }
         }
       }
     }
     // These URIs only change when field info changes, so cache it permanently
     // and only clear it when the fields cache is cleared.
-    $this->cache->set('hal:links:relations', $data, Cache::PERMANENT, array('entity_field_info'));
+    $this->cache->set('hal:links:relations', $data, Cache::PERMANENT, ['entity_field_info']);
   }
 
 }
diff --git a/core/modules/hal/src/LinkManager/RelationLinkManagerInterface.php b/core/modules/hal/src/LinkManager/RelationLinkManagerInterface.php
index 73ef535..9a9c839 100644
--- a/core/modules/hal/src/LinkManager/RelationLinkManagerInterface.php
+++ b/core/modules/hal/src/LinkManager/RelationLinkManagerInterface.php
@@ -23,7 +23,7 @@
    * @return string
    *   The corresponding URI for the field.
    */
-  public function getRelationUri($entity_type, $bundle, $field_name, $context = array());
+  public function getRelationUri($entity_type, $bundle, $field_name, $context = []);
 
   /**
    * Translates a REST URI into internal IDs.
diff --git a/core/modules/hal/src/LinkManager/TypeLinkManager.php b/core/modules/hal/src/LinkManager/TypeLinkManager.php
index cc56652..c3a948f 100644
--- a/core/modules/hal/src/LinkManager/TypeLinkManager.php
+++ b/core/modules/hal/src/LinkManager/TypeLinkManager.php
@@ -57,7 +57,7 @@ public function __construct(CacheBackendInterface $cache, ModuleHandlerInterface
   /**
    * {@inheritdoc}
    */
-  public function getTypeUri($entity_type, $bundle, $context = array()) {
+  public function getTypeUri($entity_type, $bundle, $context = []) {
     // Per the interface documentation of this method, the returned URI may
     // optionally also serve as the URL of a documentation page about this
     // bundle. However, Drupal does not currently implement such a documentation
@@ -80,7 +80,7 @@ public function getTypeUri($entity_type, $bundle, $context = array()) {
   /**
    * {@inheritdoc}
    */
-  public function getTypeInternalIds($type_uri, $context = array()) {
+  public function getTypeInternalIds($type_uri, $context = []) {
     $types = $this->getTypes($context);
     if (isset($types[$type_uri])) {
       return $types[$type_uri];
@@ -98,7 +98,7 @@ public function getTypeInternalIds($type_uri, $context = array()) {
    *   An array of typed data ids (entity_type and bundle) keyed by
    *   corresponding type URI.
    */
-  protected function getTypes($context = array()) {
+  protected function getTypes($context = []) {
     $cid = 'hal:links:types';
     $cache = $this->cache->get($cid);
     if (!$cache) {
@@ -120,8 +120,8 @@ protected function getTypes($context = array()) {
    *   An array of typed data ids (entity_type and bundle) keyed by
    *   corresponding type URI.
    */
-  protected function writeCache($context = array()) {
-    $data = array();
+  protected function writeCache($context = []) {
+    $data = [];
 
     // Type URIs correspond to bundles. Iterate through the bundles to get the
     // URI and data for them.
@@ -135,15 +135,15 @@ protected function writeCache($context = array()) {
       foreach ($bundles as $bundle => $bundle_info) {
         // Get a type URI for the bundle.
         $bundle_uri = $this->getTypeUri($entity_type_id, $bundle, $context);
-        $data[$bundle_uri] = array(
+        $data[$bundle_uri] = [
           'entity_type' => $entity_type_id,
           'bundle' => $bundle,
-        );
+        ];
       }
     }
     // These URIs only change when entity info changes, so cache it permanently
     // and only clear it when entity_info is cleared.
-    $this->cache->set('hal:links:types', $data, Cache::PERMANENT, array('entity_types'));
+    $this->cache->set('hal:links:types', $data, Cache::PERMANENT, ['entity_types']);
     return $data;
   }
 
diff --git a/core/modules/hal/src/LinkManager/TypeLinkManagerInterface.php b/core/modules/hal/src/LinkManager/TypeLinkManagerInterface.php
index 9d4e654..c3dabe4 100644
--- a/core/modules/hal/src/LinkManager/TypeLinkManagerInterface.php
+++ b/core/modules/hal/src/LinkManager/TypeLinkManagerInterface.php
@@ -21,7 +21,7 @@
    * @return string
    *   The corresponding URI for the bundle.
    */
-  public function getTypeUri($entity_type, $bundle, $context = array());
+  public function getTypeUri($entity_type, $bundle, $context = []);
 
   /**
    * Get a bundle's Typed Data IDs based on a URI.
@@ -35,6 +35,6 @@ public function getTypeUri($entity_type, $bundle, $context = array());
    *   If the URI matches a bundle, returns an array containing entity_type and
    *   bundle. Otherwise, returns false.
    */
-  public function getTypeInternalIds($type_uri, $context = array());
+  public function getTypeInternalIds($type_uri, $context = []);
 
 }
diff --git a/core/modules/hal/src/Normalizer/ContentEntityNormalizer.php b/core/modules/hal/src/Normalizer/ContentEntityNormalizer.php
index ff9d5e6..1fc118d 100644
--- a/core/modules/hal/src/Normalizer/ContentEntityNormalizer.php
+++ b/core/modules/hal/src/Normalizer/ContentEntityNormalizer.php
@@ -53,28 +53,28 @@ public function __construct(LinkManagerInterface $link_manager, EntityManagerInt
   /**
    * {@inheritdoc}
    */
-  public function normalize($entity, $format = NULL, array $context = array()) {
-    $context += array(
+  public function normalize($entity, $format = NULL, array $context = []) {
+    $context += [
       'account' => NULL,
       'included_fields' => NULL,
-    );
+    ];
 
     // Create the array of normalized fields, starting with the URI.
     /** @var $entity \Drupal\Core\Entity\ContentEntityInterface */
-    $normalized = array(
-      '_links' => array(
-        'self' => array(
+    $normalized = [
+      '_links' => [
+        'self' => [
           'href' => $this->getEntityUri($entity),
-        ),
-        'type' => array(
+        ],
+        'type' => [
           'href' => $this->linkManager->getTypeUri($entity->getEntityTypeId(), $entity->bundle(), $context),
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // If the fields to use were specified, only output those field values.
     if (isset($context['included_fields'])) {
-      $fields = array();
+      $fields = [];
       foreach ($context['included_fields'] as $field_name) {
         $fields[] = $entity->get($field_name);
       }
@@ -115,7 +115,7 @@ public function normalize($entity, $format = NULL, array $context = array()) {
    *
    * @throws \Symfony\Component\Serializer\Exception\UnexpectedValueException
    */
-  public function denormalize($data, $class, $format = NULL, array $context = array()) {
+  public function denormalize($data, $class, $format = NULL, array $context = []) {
     // Get type, necessary for determining which bundle to create.
     if (!isset($data['_links']['type'])) {
       throw new UnexpectedValueException('The type link relation must be specified.');
@@ -126,7 +126,7 @@ public function denormalize($data, $class, $format = NULL, array $context = arra
     $entity_type = $this->getEntityTypeDefinition($typed_data_ids['entity_type']);
     $default_langcode_key = $entity_type->getKey('default_langcode');
     $langcode_key = $entity_type->getKey('langcode');
-    $values = array();
+    $values = [];
 
     // Figure out the language to use.
     if (isset($data[$default_langcode_key])) {
@@ -154,7 +154,7 @@ public function denormalize($data, $class, $format = NULL, array $context = arra
     // Remove links from data array.
     unset($data['_links']);
     // Get embedded resources and remove from data array.
-    $embedded = array();
+    $embedded = [];
     if (isset($data['_embedded'])) {
       $embedded = $data['_embedded'];
       unset($data['_embedded']);
@@ -207,12 +207,12 @@ protected function getEntityUri(EntityInterface $entity) {
    * @return array
    *   The typed data IDs.
    */
-  protected function getTypedDataIds($types, $context = array()) {
+  protected function getTypedDataIds($types, $context = []) {
     // The 'type' can potentially contain an array of type objects. By default,
     // Drupal only uses a single type in serializing, but allows for multiple
     // types when deserializing.
     if (isset($types['href'])) {
-      $types = array($types);
+      $types = [$types];
     }
 
     if (empty($types)) {
diff --git a/core/modules/hal/src/Normalizer/EntityReferenceItemNormalizer.php b/core/modules/hal/src/Normalizer/EntityReferenceItemNormalizer.php
index 224915b..fbcae8c 100644
--- a/core/modules/hal/src/Normalizer/EntityReferenceItemNormalizer.php
+++ b/core/modules/hal/src/Normalizer/EntityReferenceItemNormalizer.php
@@ -49,7 +49,7 @@ public function __construct(LinkManagerInterface $link_manager, EntityResolverIn
   /**
    * {@inheritdoc}
    */
-  public function normalize($field_item, $format = NULL, array $context = array()) {
+  public function normalize($field_item, $format = NULL, array $context = []) {
     /** @var $field_item \Drupal\Core\Field\FieldItemInterface */
     $target_entity = $field_item->get('entity')->getValue();
 
@@ -64,7 +64,7 @@ public function normalize($field_item, $format = NULL, array $context = array())
     // will include the langcode.
     $langcode = isset($context['langcode']) ? $context['langcode'] : NULL;
     unset($context['langcode']);
-    $context['included_fields'] = array('uuid');
+    $context['included_fields'] = ['uuid'];
 
     // Normalize the target entity.
     $embedded = $this->serializer->normalize($target_entity, $format, $context);
@@ -81,14 +81,14 @@ public function normalize($field_item, $format = NULL, array $context = array())
     $field_name = $field_item->getParent()->getName();
     $entity = $field_item->getEntity();
     $field_uri = $this->linkManager->getRelationUri($entity->getEntityTypeId(), $entity->bundle(), $field_name, $context);
-    return array(
-      '_links' => array(
-        $field_uri => array($link),
-      ),
-      '_embedded' => array(
-        $field_uri => array($embedded),
-      ),
-    );
+    return [
+      '_links' => [
+        $field_uri => [$link],
+      ],
+      '_embedded' => [
+        $field_uri => [$embedded],
+      ],
+    ];
   }
 
   /**
@@ -100,7 +100,7 @@ protected function constructValue($data, $context) {
     $target_type = $field_definition->getSetting('target_type');
     $id = $this->entityResolver->resolve($this, $data, $target_type);
     if (isset($id)) {
-      return array('target_id' => $id);
+      return ['target_id' => $id];
     }
     return NULL;
   }
diff --git a/core/modules/hal/src/Normalizer/FieldItemNormalizer.php b/core/modules/hal/src/Normalizer/FieldItemNormalizer.php
index 238557a..dc5aec9 100644
--- a/core/modules/hal/src/Normalizer/FieldItemNormalizer.php
+++ b/core/modules/hal/src/Normalizer/FieldItemNormalizer.php
@@ -20,7 +20,7 @@ class FieldItemNormalizer extends NormalizerBase {
   /**
    * {@inheritdoc}
    */
-  public function normalize($field_item, $format = NULL, array $context = array()) {
+  public function normalize($field_item, $format = NULL, array $context = []) {
     $values = [];
     // We normalize each individual property, so each can do their own casting,
     // if needed.
@@ -38,15 +38,15 @@ public function normalize($field_item, $format = NULL, array $context = array())
     // FieldNormalizer. This is necessary for the EntityReferenceItemNormalizer
     // to be able to place values in the '_links' array.
     $field = $field_item->getParent();
-    return array(
-      $field->getName() => array($values),
-    );
+    return [
+      $field->getName() => [$values],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function denormalize($data, $class, $format = NULL, array $context = array()) {
+  public function denormalize($data, $class, $format = NULL, array $context = []) {
     if (!isset($context['target_instance'])) {
       throw new InvalidArgumentException('$context[\'target_instance\'] must be set to denormalize with the FieldItemNormalizer');
     }
diff --git a/core/modules/hal/src/Normalizer/FieldNormalizer.php b/core/modules/hal/src/Normalizer/FieldNormalizer.php
index 0313221..a4e1753 100644
--- a/core/modules/hal/src/Normalizer/FieldNormalizer.php
+++ b/core/modules/hal/src/Normalizer/FieldNormalizer.php
@@ -20,8 +20,8 @@ class FieldNormalizer extends SerializationFieldNormalizer {
   /**
    * {@inheritdoc}
    */
-  public function normalize($field, $format = NULL, array $context = array()) {
-    $normalized_field_items = array();
+  public function normalize($field, $format = NULL, array $context = []) {
+    $normalized_field_items = [];
 
     // Get the field definition.
     $entity = $field->getEntity();
@@ -65,7 +65,7 @@ public function normalize($field, $format = NULL, array $context = array()) {
    *   The array of normalized field items.
    */
   protected function normalizeFieldItems($field, $format, $context) {
-    $normalized_field_items = array();
+    $normalized_field_items = [];
     if (!$field->isEmpty()) {
       foreach ($field as $field_item) {
         $normalized_field_items[] = $this->serializer->normalize($field_item, $format, $context);
diff --git a/core/modules/hal/src/Normalizer/FileEntityNormalizer.php b/core/modules/hal/src/Normalizer/FileEntityNormalizer.php
index 2c94eb9..ec870e9 100644
--- a/core/modules/hal/src/Normalizer/FileEntityNormalizer.php
+++ b/core/modules/hal/src/Normalizer/FileEntityNormalizer.php
@@ -47,7 +47,7 @@ public function __construct(EntityManagerInterface $entity_manager, ClientInterf
   /**
    * {@inheritdoc}
    */
-  public function normalize($entity, $format = NULL, array $context = array()) {
+  public function normalize($entity, $format = NULL, array $context = []) {
     $data = parent::normalize($entity, $format, $context);
     // Replace the file url with a full url for the file.
     $data['uri'][0]['value'] = $this->getEntityUri($entity);
@@ -58,7 +58,7 @@ public function normalize($entity, $format = NULL, array $context = array()) {
   /**
    * {@inheritdoc}
    */
-  public function denormalize($data, $class, $format = NULL, array $context = array()) {
+  public function denormalize($data, $class, $format = NULL, array $context = []) {
     $file_data = (string) $this->httpClient->get($data['uri'][0]['value'])->getBody();
 
     $path = 'temporary://' . drupal_basename($data['uri'][0]['value']);
diff --git a/core/modules/hal/src/Normalizer/NormalizerBase.php b/core/modules/hal/src/Normalizer/NormalizerBase.php
index a4b9af2..43a5a07 100644
--- a/core/modules/hal/src/Normalizer/NormalizerBase.php
+++ b/core/modules/hal/src/Normalizer/NormalizerBase.php
@@ -15,7 +15,7 @@
    *
    * @var array
    */
-  protected $formats = array('hal_json');
+  protected $formats = ['hal_json'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/hal/tests/modules/hal_test/hal_test.module b/core/modules/hal/tests/modules/hal_test/hal_test.module
index 5937984..8788eaf 100644
--- a/core/modules/hal/tests/modules/hal_test/hal_test.module
+++ b/core/modules/hal/tests/modules/hal_test/hal_test.module
@@ -8,7 +8,7 @@
 /**
  * Implements hook_hal_type_uri_alter().
  */
-function hal_test_hal_type_uri_alter(&$uri, $context = array()) {
+function hal_test_hal_type_uri_alter(&$uri, $context = []) {
   if (!empty($context['hal_test'])) {
     $uri = 'hal_test_type';
   }
@@ -17,7 +17,7 @@ function hal_test_hal_type_uri_alter(&$uri, $context = array()) {
 /**
  * Implements hook_hal_relation_uri_alter().
  */
-function hal_test_hal_relation_uri_alter(&$uri, $context = array()) {
+function hal_test_hal_relation_uri_alter(&$uri, $context = []) {
   if (!empty($context['hal_test'])) {
     $uri = 'hal_test_relation';
   }
@@ -28,7 +28,7 @@ function hal_test_hal_relation_uri_alter(&$uri, $context = array()) {
  *
  * @deprecated Kept only for BC test coverage, see \Drupal\Tests\hal\Kernel\HalLinkManagerTest::testGetTypeUri().
  */
-function hal_test_rest_type_uri_alter(&$uri, $context = array()) {
+function hal_test_rest_type_uri_alter(&$uri, $context = []) {
   if (!empty($context['rest_test'])) {
     $uri = 'rest_test_type';
   }
@@ -39,7 +39,7 @@ function hal_test_rest_type_uri_alter(&$uri, $context = array()) {
  *
  * @deprecated Kept only for BC test coverage, see \Drupal\Tests\hal\Kernel\HalLinkManagerTest::testGetRelationUri().
  */
-function hal_test_rest_relation_uri_alter(&$uri, $context = array()) {
+function hal_test_rest_relation_uri_alter(&$uri, $context = []) {
   if (!empty($context['rest_test'])) {
     $uri = 'rest_test_relation';
   }
diff --git a/core/modules/hal/tests/src/Functional/FileDenormalizeTest.php b/core/modules/hal/tests/src/Functional/FileDenormalizeTest.php
index 36f8762..05ee234 100644
--- a/core/modules/hal/tests/src/Functional/FileDenormalizeTest.php
+++ b/core/modules/hal/tests/src/Functional/FileDenormalizeTest.php
@@ -18,18 +18,18 @@ class FileDenormalizeTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('hal', 'file', 'node');
+  public static $modules = ['hal', 'file', 'node'];
 
   /**
    * Tests file entity denormalization.
    */
   public function testFileDenormalize() {
-    $file_params = array(
+    $file_params = [
       'filename' => 'test_1.txt',
       'uri' => 'public://test_1.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    );
+    ];
     // Create a new file entity.
     $file = File::create($file_params);
     file_put_contents($file->getFileUri(), 'hello world');
@@ -56,11 +56,11 @@ public function testFileDenormalize() {
     file_put_contents($file_path, 'hello world');
     $file_uri = file_create_url($file_path);
 
-    $data = array(
-      'uri' => array(
-        array('value' => $file_uri),
-      ),
-    );
+    $data = [
+      'uri' => [
+        ['value' => $file_uri],
+      ],
+    ];
 
     $denormalized = $serializer->denormalize($data, 'Drupal\file\Entity\File', 'hal_json');
 
diff --git a/core/modules/hal/tests/src/Kernel/DenormalizeTest.php b/core/modules/hal/tests/src/Kernel/DenormalizeTest.php
index 3f9388b..d3662cb 100644
--- a/core/modules/hal/tests/src/Kernel/DenormalizeTest.php
+++ b/core/modules/hal/tests/src/Kernel/DenormalizeTest.php
@@ -18,40 +18,40 @@ class DenormalizeTest extends NormalizerTestBase {
    */
   public function testTypeHandling() {
     // Valid type.
-    $data_with_valid_type = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', array('absolute' => TRUE))->toString(),
-        ),
-      ),
-    );
+    $data_with_valid_type = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', ['absolute' => TRUE])->toString(),
+        ],
+      ],
+    ];
     $denormalized = $this->serializer->denormalize($data_with_valid_type, $this->entityClass, $this->format);
     $this->assertEqual(get_class($denormalized), $this->entityClass, 'Request with valid type results in creation of correct bundle.');
 
     // Multiple types.
-    $data_with_multiple_types = array(
-      '_links' => array(
-        'type' => array(
-          array(
-            'href' => Url::fromUri('base:rest/types/foo', array('absolute' => TRUE))->toString(),
-          ),
-          array(
-            'href' => Url::fromUri('base:rest/type/entity_test/entity_test', array('absolute' => TRUE))->toString(),
-          ),
-        ),
-      ),
-    );
+    $data_with_multiple_types = [
+      '_links' => [
+        'type' => [
+          [
+            'href' => Url::fromUri('base:rest/types/foo', ['absolute' => TRUE])->toString(),
+          ],
+          [
+            'href' => Url::fromUri('base:rest/type/entity_test/entity_test', ['absolute' => TRUE])->toString(),
+          ],
+        ],
+      ],
+    ];
     $denormalized = $this->serializer->denormalize($data_with_multiple_types, $this->entityClass, $this->format);
     $this->assertEqual(get_class($denormalized), $this->entityClass, 'Request with multiple types results in creation of correct bundle.');
 
     // Invalid type.
-    $data_with_invalid_type = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/types/foo', array('absolute' => TRUE))->toString(),
-        ),
-      ),
-    );
+    $data_with_invalid_type = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/types/foo', ['absolute' => TRUE])->toString(),
+        ],
+      ],
+    ];
     try {
       $this->serializer->denormalize($data_with_invalid_type, $this->entityClass, $this->format);
       $this->fail('Exception should be thrown when type is invalid.');
@@ -61,10 +61,10 @@ public function testTypeHandling() {
     }
 
     // No type.
-    $data_with_no_type = array(
-      '_links' => array(
-      ),
-    );
+    $data_with_no_type = [
+      '_links' => [
+      ],
+    ];
     try {
       $this->serializer->denormalize($data_with_no_type, $this->entityClass, $this->format);
       $this->fail('Exception should be thrown when no type is provided.');
@@ -78,13 +78,13 @@ public function testTypeHandling() {
    * Tests link relation handling with an invalid type.
    */
   public function testTypeHandlingWithInvalidType() {
-    $data_with_invalid_type = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/type/entity_test/entity_test_invalid', array('absolute' => TRUE))->toString(),
-        ),
-      ),
-    );
+    $data_with_invalid_type = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/type/entity_test/entity_test_invalid', ['absolute' => TRUE])->toString(),
+        ],
+      ],
+    ];
 
     $this->setExpectedException(UnexpectedValueException::class);
     $this->serializer->denormalize($data_with_invalid_type, $this->entityClass, $this->format);
@@ -94,11 +94,11 @@ public function testTypeHandlingWithInvalidType() {
    * Tests link relation handling with no types.
    */
   public function testTypeHandlingWithNoTypes() {
-    $data_with_no_types = array(
-      '_links' => array(
-        'type' => array(),
-      ),
-    );
+    $data_with_no_types = [
+      '_links' => [
+        'type' => [],
+      ],
+    ];
 
     $this->setExpectedException(UnexpectedValueException::class);
     $this->serializer->denormalize($data_with_no_types, $this->entityClass, $this->format);
@@ -110,32 +110,32 @@ public function testTypeHandlingWithNoTypes() {
   public function testMarkFieldForDeletion() {
     // Add a default value for a field.
     $field = FieldConfig::loadByName('entity_test', 'entity_test', 'field_test_text');
-    $field->setDefaultValue(array(array('value' => 'Llama')));
+    $field->setDefaultValue([['value' => 'Llama']]);
     $field->save();
 
     // Denormalize data that contains no entry for the field, and check that
     // the default value is present in the resulting entity.
-    $data = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', array('absolute' => TRUE))->toString(),
-        ),
-      ),
-    );
+    $data = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', ['absolute' => TRUE])->toString(),
+        ],
+      ],
+    ];
     $entity = $this->serializer->denormalize($data, $this->entityClass, $this->format);
     $this->assertEqual($entity->field_test_text->count(), 1);
     $this->assertEqual($entity->field_test_text->value, 'Llama');
 
     // Denormalize data that contains an empty entry for the field, and check
     // that the field is empty in the resulting entity.
-    $data = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', array('absolute' => TRUE))->toString(),
-        ),
-      ),
-      'field_test_text' => array(),
-    );
+    $data = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/type/entity_test/entity_test', ['absolute' => TRUE])->toString(),
+        ],
+      ],
+      'field_test_text' => [],
+    ];
     $entity = $this->serializer->denormalize($data, get_class($entity), $this->format, [ 'target_instance' => $entity ]);
     $this->assertEqual($entity->field_test_text->count(), 0);
   }
diff --git a/core/modules/hal/tests/src/Kernel/EntityTranslationNormalizeTest.php b/core/modules/hal/tests/src/Kernel/EntityTranslationNormalizeTest.php
index 74f5104..5b752f7 100644
--- a/core/modules/hal/tests/src/Kernel/EntityTranslationNormalizeTest.php
+++ b/core/modules/hal/tests/src/Kernel/EntityTranslationNormalizeTest.php
@@ -19,14 +19,14 @@ class EntityTranslationNormalizeTest extends NormalizerTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'content_translation');
+  public static $modules = ['node', 'content_translation'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installSchema('system', array('sequences'));
+    $this->installSchema('system', ['sequences']);
     $this->installConfig(['node', 'content_translation']);
   }
 
diff --git a/core/modules/hal/tests/src/Kernel/FileNormalizeTest.php b/core/modules/hal/tests/src/Kernel/FileNormalizeTest.php
index d6978e6..8f535c5 100644
--- a/core/modules/hal/tests/src/Kernel/FileNormalizeTest.php
+++ b/core/modules/hal/tests/src/Kernel/FileNormalizeTest.php
@@ -16,7 +16,7 @@ class FileNormalizeTest extends NormalizerTestBase {
    *
    * @var array
    */
-  public static $modules = array('file');
+  public static $modules = ['file'];
 
   /**
    * {@inheritdoc}
@@ -31,23 +31,23 @@ protected function setUp() {
    * Tests the normalize function.
    */
   public function testNormalize() {
-    $file_params = array(
+    $file_params = [
       'filename' => 'test_1.txt',
       'uri' => 'public://test_1.txt',
       'filemime' => 'text/plain',
       'status' => FILE_STATUS_PERMANENT,
-    );
+    ];
     // Create a new file entity.
     $file = File::create($file_params);
     file_put_contents($file->getFileUri(), 'hello world');
     $file->save();
 
-    $expected_array = array(
-      'uri' => array(
-        array(
-          'value' => file_create_url($file->getFileUri())),
-      ),
-    );
+    $expected_array = [
+      'uri' => [
+        [
+          'value' => file_create_url($file->getFileUri())],
+      ],
+    ];
 
     $normalized = $this->serializer->normalize($file, $this->format);
     $this->assertEqual($normalized['uri'], $expected_array['uri'], 'URI is normalized.');
diff --git a/core/modules/hal/tests/src/Kernel/NormalizeTest.php b/core/modules/hal/tests/src/Kernel/NormalizeTest.php
index cfffb4a..d837b79 100644
--- a/core/modules/hal/tests/src/Kernel/NormalizeTest.php
+++ b/core/modules/hal/tests/src/Kernel/NormalizeTest.php
@@ -26,135 +26,135 @@ protected function setUp() {
    * Tests the normalize function.
    */
   public function testNormalize() {
-    $target_entity_de = EntityTest::create((array('langcode' => 'de', 'field_test_entity_reference' => NULL)));
+    $target_entity_de = EntityTest::create((['langcode' => 'de', 'field_test_entity_reference' => NULL]));
     $target_entity_de->save();
-    $target_entity_en = EntityTest::create((array('langcode' => 'en', 'field_test_entity_reference' => NULL)));
+    $target_entity_en = EntityTest::create((['langcode' => 'en', 'field_test_entity_reference' => NULL]));
     $target_entity_en->save();
 
     // Create a German entity.
-    $values = array(
+    $values = [
       'langcode' => 'de',
       'name' => $this->randomMachineName(),
-      'field_test_text' => array(
+      'field_test_text' => [
         'value' => $this->randomMachineName(),
         'format' => 'full_html',
-      ),
-      'field_test_entity_reference' => array(
+      ],
+      'field_test_entity_reference' => [
         'target_id' => $target_entity_de->id(),
-      ),
-    );
+      ],
+    ];
     // Array of translated values.
-    $translation_values = array(
+    $translation_values = [
       'name' => $this->randomMachineName(),
-      'field_test_entity_reference' => array(
+      'field_test_entity_reference' => [
         'target_id' => $target_entity_en->id(),
-      )
-    );
+      ]
+    ];
 
     $entity = EntityTest::create($values);
     $entity->save();
     // Add an English value for name and entity reference properties.
-    $entity->addTranslation('en')->set('name', array(0 => array('value' => $translation_values['name'])));
-    $entity->getTranslation('en')->set('field_test_entity_reference', array(0 => $translation_values['field_test_entity_reference']));
+    $entity->addTranslation('en')->set('name', [0 => ['value' => $translation_values['name']]]);
+    $entity->getTranslation('en')->set('field_test_entity_reference', [0 => $translation_values['field_test_entity_reference']]);
     $entity->save();
 
-    $type_uri = Url::fromUri('base:rest/type/entity_test/entity_test', array('absolute' => TRUE))->toString();
-    $relation_uri = Url::fromUri('base:rest/relation/entity_test/entity_test/field_test_entity_reference', array('absolute' => TRUE))->toString();
+    $type_uri = Url::fromUri('base:rest/type/entity_test/entity_test', ['absolute' => TRUE])->toString();
+    $relation_uri = Url::fromUri('base:rest/relation/entity_test/entity_test/field_test_entity_reference', ['absolute' => TRUE])->toString();
 
-    $expected_array = array(
-      '_links' => array(
-        'curies' => array(
-          array(
+    $expected_array = [
+      '_links' => [
+        'curies' => [
+          [
             'href' => '/relations',
             'name' => 'site',
             'templated' => TRUE,
-          ),
-        ),
-        'self' => array(
+          ],
+        ],
+        'self' => [
           'href' => $this->getEntityUri($entity),
-        ),
-        'type' => array(
+        ],
+        'type' => [
           'href' => $type_uri,
-        ),
-        $relation_uri => array(
-          array(
+        ],
+        $relation_uri => [
+          [
             'href' => $this->getEntityUri($target_entity_de),
             'lang' => 'de',
-          ),
-          array(
+          ],
+          [
             'href' => $this->getEntityUri($target_entity_en),
             'lang' => 'en',
-          ),
-        ),
-      ),
-      '_embedded' => array(
-        $relation_uri => array(
-          array(
-            '_links' => array(
-              'self' => array(
+          ],
+        ],
+      ],
+      '_embedded' => [
+        $relation_uri => [
+          [
+            '_links' => [
+              'self' => [
                 'href' => $this->getEntityUri($target_entity_de),
-              ),
-              'type' => array(
+              ],
+              'type' => [
                 'href' => $type_uri,
-              ),
-            ),
-            'uuid' => array(
-              array(
+              ],
+            ],
+            'uuid' => [
+              [
                 'value' => $target_entity_de->uuid(),
-              ),
-            ),
+              ],
+            ],
             'lang' => 'de',
-          ),
-          array(
-            '_links' => array(
-              'self' => array(
+          ],
+          [
+            '_links' => [
+              'self' => [
                 'href' => $this->getEntityUri($target_entity_en),
-              ),
-              'type' => array(
+              ],
+              'type' => [
                 'href' => $type_uri,
-              ),
-            ),
-            'uuid' => array(
-              array(
+              ],
+            ],
+            'uuid' => [
+              [
                 'value' => $target_entity_en->uuid(),
-              ),
-            ),
+              ],
+            ],
             'lang' => 'en',
-          ),
-        ),
-      ),
-      'id' => array(
-        array(
+          ],
+        ],
+      ],
+      'id' => [
+        [
           'value' => $entity->id(),
-        ),
-      ),
-      'uuid' => array(
-        array(
+        ],
+      ],
+      'uuid' => [
+        [
           'value' => $entity->uuid(),
-        ),
-      ),
-      'langcode' => array(
-        array(
+        ],
+      ],
+      'langcode' => [
+        [
           'value' => 'de',
-        ),
-      ),
-      'name' => array(
-        array(
+        ],
+      ],
+      'name' => [
+        [
           'value' => $values['name'],
           'lang' => 'de',
-        ),
-        array(
+        ],
+        [
           'value' => $translation_values['name'],
           'lang' => 'en',
-        ),
-      ),
-      'field_test_text' => array(
-        array(
+        ],
+      ],
+      'field_test_text' => [
+        [
           'value' => $values['field_test_text']['value'],
           'format' => $values['field_test_text']['format'],
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     $normalized = $this->serializer->normalize($entity, $this->format);
     $this->assertEqual($normalized['_links']['self'], $expected_array['_links']['self'], 'self link placed correctly.');
diff --git a/core/modules/hal/tests/src/Kernel/NormalizerTestBase.php b/core/modules/hal/tests/src/Kernel/NormalizerTestBase.php
index 9dac94c..ef51a07 100644
--- a/core/modules/hal/tests/src/Kernel/NormalizerTestBase.php
+++ b/core/modules/hal/tests/src/Kernel/NormalizerTestBase.php
@@ -58,29 +58,29 @@ protected function setUp() {
         // Only check the modules, if the $modules property was not inherited.
         $rp = new \ReflectionProperty($class, 'modules');
         if ($rp->class == $class) {
-          foreach (array_intersect(array('node', 'comment'), $class::$modules) as $module) {
+          foreach (array_intersect(['node', 'comment'], $class::$modules) as $module) {
             $this->installEntitySchema($module);
           }
         }
       }
       $class = get_parent_class($class);
     }
-    $this->installConfig(array('field', 'language'));
+    $this->installConfig(['field', 'language']);
     \Drupal::service('router.builder')->rebuild();
 
     // Add German as a language.
-    ConfigurableLanguage::create(array(
+    ConfigurableLanguage::create([
       'id' => 'de',
       'label' => 'Deutsch',
       'weight' => -1,
-    ))->save();
+    ])->save();
 
     // Create the test text field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test_text',
       'entity_type' => 'entity_test',
       'type' => 'text',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_test_text',
@@ -89,11 +89,11 @@ protected function setUp() {
     ])->save();
 
     // Create the test translatable field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test_translatable_text',
       'entity_type' => 'entity_test',
       'type' => 'text',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_test_translatable_text',
@@ -102,14 +102,14 @@ protected function setUp() {
     ])->save();
 
     // Create the test entity reference field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test_entity_reference',
       'entity_type' => 'entity_test',
       'type' => 'entity_reference',
-      'settings' => array(
+      'settings' => [
         'target_type' => 'entity_test',
-      ),
-    ))->save();
+      ],
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_test_entity_reference',
diff --git a/core/modules/hal/tests/src/Unit/FieldItemNormalizerDenormalizeExceptionsUnitTest.php b/core/modules/hal/tests/src/Unit/FieldItemNormalizerDenormalizeExceptionsUnitTest.php
index 550c185..6d876e6 100644
--- a/core/modules/hal/tests/src/Unit/FieldItemNormalizerDenormalizeExceptionsUnitTest.php
+++ b/core/modules/hal/tests/src/Unit/FieldItemNormalizerDenormalizeExceptionsUnitTest.php
@@ -21,8 +21,8 @@ class FieldItemNormalizerDenormalizeExceptionsUnitTest extends NormalizerDenorma
    */
   public function testFieldItemNormalizerDenormalizeExceptions($context) {
     $field_item_normalizer = new FieldItemNormalizer();
-    $data = array();
-    $class = array();
+    $data = [];
+    $class = [];
     $field_item_normalizer->denormalize($data, $class, NULL, $context);
   }
 
diff --git a/core/modules/hal/tests/src/Unit/FieldNormalizerDenormalizeExceptionsUnitTest.php b/core/modules/hal/tests/src/Unit/FieldNormalizerDenormalizeExceptionsUnitTest.php
index a257209..7cc55bb 100644
--- a/core/modules/hal/tests/src/Unit/FieldNormalizerDenormalizeExceptionsUnitTest.php
+++ b/core/modules/hal/tests/src/Unit/FieldNormalizerDenormalizeExceptionsUnitTest.php
@@ -21,8 +21,8 @@ class FieldNormalizerDenormalizeExceptionsUnitTest extends NormalizerDenormalize
    */
   public function testFieldNormalizerDenormalizeExceptions($context) {
     $field_item_normalizer = new FieldNormalizer();
-    $data = array();
-    $class = array();
+    $data = [];
+    $class = [];
     $field_item_normalizer->denormalize($data, $class, NULL, $context);
   }
 
diff --git a/core/modules/hal/tests/src/Unit/NormalizerDenormalizeExceptionsUnitTestBase.php b/core/modules/hal/tests/src/Unit/NormalizerDenormalizeExceptionsUnitTestBase.php
index 52ba805..d1a3b9b 100644
--- a/core/modules/hal/tests/src/Unit/NormalizerDenormalizeExceptionsUnitTestBase.php
+++ b/core/modules/hal/tests/src/Unit/NormalizerDenormalizeExceptionsUnitTestBase.php
@@ -18,14 +18,14 @@
    * @return array Test data.
    */
   public function providerNormalizerDenormalizeExceptions() {
-    $mock = $this->getMock('\Drupal\Core\Field\Plugin\DataType\FieldItem', array('getParent'));
+    $mock = $this->getMock('\Drupal\Core\Field\Plugin\DataType\FieldItem', ['getParent']);
     $mock->expects($this->any())
       ->method('getParent')
       ->will($this->returnValue(NULL));
-    return array(
-      array(array()),
-      array(array('target_instance' => $mock)),
-    );
+    return [
+      [[]],
+      [['target_instance' => $mock]],
+    ];
   }
 
 }
diff --git a/core/modules/help/help.api.php b/core/modules/help/help.api.php
index aff491c..8b4b1cc 100644
--- a/core/modules/help/help.api.php
+++ b/core/modules/help/help.api.php
@@ -48,7 +48,7 @@ function hook_help($route_name, \Drupal\Core\Routing\RouteMatchInterface $route_
   switch ($route_name) {
     // Main module help for the block module.
     case 'help.page.block':
-      return '<p>' . t('Blocks are boxes of content rendered into an area, or region, of a web page. The default theme Bartik, for example, implements the regions "Sidebar first", "Sidebar second", "Featured", "Content", "Header", "Footer", etc., and a block may appear in any one of these areas. The <a href=":blocks">blocks administration page</a> provides a drag-and-drop interface for assigning a block to a region, and for controlling the order of blocks within regions.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</p>';
+      return '<p>' . t('Blocks are boxes of content rendered into an area, or region, of a web page. The default theme Bartik, for example, implements the regions "Sidebar first", "Sidebar second", "Featured", "Content", "Header", "Footer", etc., and a block may appear in any one of these areas. The <a href=":blocks">blocks administration page</a> provides a drag-and-drop interface for assigning a block to a region, and for controlling the order of blocks within regions.', [':blocks' => \Drupal::url('block.admin_display')]) . '</p>';
 
     // Help for another path in the block module.
     case 'block.admin_display':
diff --git a/core/modules/help/help.module b/core/modules/help/help.module
index c41cd98..ca49bee 100644
--- a/core/modules/help/help.module
+++ b/core/modules/help/help.module
@@ -17,27 +17,27 @@ function help_help($route_name, RouteMatchInterface $route_match) {
       $output = '<h2>' . t('Getting Started') . '</h2>';
       $output .= '<p>' . t('Follow these steps to set up and start using your website:') . '</p>';
       $output .= '<ol>';
-      $output .= '<li>' . t('<strong>Configure your website</strong> Once logged in, visit the <a href=":admin">Administration page</a>, where you may <a href=":config">customize and configure</a> all aspects of your website.', array(':admin' => \Drupal::url('system.admin'), ':config' => \Drupal::url('system.admin_config'))) . '</li>';
-      $output .= '<li>' . t('<strong>Enable additional functionality</strong> Next, visit the <a href=":modules">Extend page</a> and enable modules that suit your specific needs. You can find additional modules at the <a href=":download_modules">Drupal.org modules page</a>.', array(':modules' => \Drupal::url('system.modules_list'), ':download_modules' => 'https://www.drupal.org/project/modules')) . '</li>';
-      $output .= '<li>' . t('<strong>Customize your website design</strong> To change the "look and feel" of your website, visit the <a href=":themes">Appearance page</a>. You may choose from one of the included themes or download additional themes from the <a href=":download_themes">Drupal.org themes page</a>.', array(':themes' => \Drupal::url('system.themes_page'), ':download_themes' => 'https://www.drupal.org/project/themes')) . '</li>';
+      $output .= '<li>' . t('<strong>Configure your website</strong> Once logged in, visit the <a href=":admin">Administration page</a>, where you may <a href=":config">customize and configure</a> all aspects of your website.', [':admin' => \Drupal::url('system.admin'), ':config' => \Drupal::url('system.admin_config')]) . '</li>';
+      $output .= '<li>' . t('<strong>Enable additional functionality</strong> Next, visit the <a href=":modules">Extend page</a> and enable modules that suit your specific needs. You can find additional modules at the <a href=":download_modules">Drupal.org modules page</a>.', [':modules' => \Drupal::url('system.modules_list'), ':download_modules' => 'https://www.drupal.org/project/modules']) . '</li>';
+      $output .= '<li>' . t('<strong>Customize your website design</strong> To change the "look and feel" of your website, visit the <a href=":themes">Appearance page</a>. You may choose from one of the included themes or download additional themes from the <a href=":download_themes">Drupal.org themes page</a>.', [':themes' => \Drupal::url('system.themes_page'), ':download_themes' => 'https://www.drupal.org/project/themes']) . '</li>';
       // Display a link to the create content page if Node module is enabled.
       if (\Drupal::moduleHandler()->moduleExists('node')) {
-        $output .= '<li>' . t('<strong>Start posting content</strong> Finally, you may <a href=":content">add new content</a> to your website.', array(':content' => \Drupal::url('node.add_page'))) . '</li>';
+        $output .= '<li>' . t('<strong>Start posting content</strong> Finally, you may <a href=":content">add new content</a> to your website.', [':content' => \Drupal::url('node.add_page')]) . '</li>';
       }
       $output .= '</ol>';
-      $output .= '<p>' . t('For more information, refer to the help listed on this page or to the <a href=":docs">online documentation</a> and <a href=":support">support</a> pages at <a href=":drupal">drupal.org</a>.', array(':docs' => 'https://www.drupal.org/documentation', ':support' => 'https://www.drupal.org/support', ':drupal' => 'https://www.drupal.org')) . '</p>';
+      $output .= '<p>' . t('For more information, refer to the help listed on this page or to the <a href=":docs">online documentation</a> and <a href=":support">support</a> pages at <a href=":drupal">drupal.org</a>.', [':docs' => 'https://www.drupal.org/documentation', ':support' => 'https://www.drupal.org/support', ':drupal' => 'https://www.drupal.org']) . '</p>';
       return ['#markup' => $output];
 
     case 'help.page.help':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Help module generates <a href=":help-page">Help reference pages</a> to guide you through the use and configuration of modules, and provides a Help block with page-level help. The reference pages are a starting point for <a href=":handbook">Drupal.org online documentation</a> pages that contain more extensive and up-to-date information, are annotated with user-contributed comments, and serve as the definitive reference point for all Drupal documentation. For more information, see the <a href=":help">online documentation for the Help module</a>.', array(':help' => 'https://www.drupal.org/documentation/modules/help/', ':handbook' => 'https://www.drupal.org/documentation', ':help-page' => \Drupal::url('help.main'))) . '</p>';
+      $output .= '<p>' . t('The Help module generates <a href=":help-page">Help reference pages</a> to guide you through the use and configuration of modules, and provides a Help block with page-level help. The reference pages are a starting point for <a href=":handbook">Drupal.org online documentation</a> pages that contain more extensive and up-to-date information, are annotated with user-contributed comments, and serve as the definitive reference point for all Drupal documentation. For more information, see the <a href=":help">online documentation for the Help module</a>.', [':help' => 'https://www.drupal.org/documentation/modules/help/', ':handbook' => 'https://www.drupal.org/documentation', ':help-page' => \Drupal::url('help.main')]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Providing a help reference') . '</dt>';
-      $output .= '<dd>' . t('The Help module displays explanations for using each module listed on the main <a href=":help">Help reference page</a>.', array(':help' => \Drupal::url('help.main'))) . '</dd>';
+      $output .= '<dd>' . t('The Help module displays explanations for using each module listed on the main <a href=":help">Help reference page</a>.', [':help' => \Drupal::url('help.main')]) . '</dd>';
       $output .= '<dt>' . t('Providing page-specific help') . '</dt>';
-      $output .= '<dd>' . t('Page-specific help text provided by modules is displayed in the Help block. This block can be placed and configured on the <a href=":blocks">Block layout page</a>.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+      $output .= '<dd>' . t('Page-specific help text provided by modules is displayed in the Help block. This block can be placed and configured on the <a href=":blocks">Block layout page</a>.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       $output .= '</dl>';
       return ['#markup' => $output];
   }
diff --git a/core/modules/help/src/Controller/HelpController.php b/core/modules/help/src/Controller/HelpController.php
index 6c3f061..74d46ec 100644
--- a/core/modules/help/src/Controller/HelpController.php
+++ b/core/modules/help/src/Controller/HelpController.php
@@ -112,7 +112,7 @@ public function helpMain() {
    * @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
    */
   public function helpPage($name) {
-    $build = array();
+    $build = [];
     if ($this->moduleHandler()->implementsHook($name, 'help')) {
       $module_name = $this->moduleHandler()->getName($name);
       $build['#title'] = $module_name;
@@ -122,9 +122,9 @@ public function helpPage($name) {
         drupal_set_message($this->t('This module is experimental. <a href=":url">Experimental modules</a> are provided for testing purposes only. Use at your own risk.', [':url' => 'https://www.drupal.org/core/experimental']), 'warning');
       }
 
-      $temp = $this->moduleHandler()->invoke($name, 'help', array("help.page.$name", $this->routeMatch));
+      $temp = $this->moduleHandler()->invoke($name, 'help', ["help.page.$name", $this->routeMatch]);
       if (empty($temp)) {
-        $build['top'] = ['#markup' => $this->t('No help is available for module %module.', array('%module' => $module_name))];
+        $build['top'] = ['#markup' => $this->t('No help is available for module %module.', ['%module' => $module_name])];
       }
       else {
         if (!is_array($temp)) {
@@ -137,20 +137,20 @@ public function helpPage($name) {
       // any such pages associated with it.
       $admin_tasks = system_get_module_admin_tasks($name, system_get_info('module', $name));
       if (!empty($admin_tasks)) {
-        $links = array();
+        $links = [];
         foreach ($admin_tasks as $task) {
           $link['url'] = $task['url'];
           $link['title'] = $task['title'];
           $links[] = $link;
         }
-        $build['links'] = array(
+        $build['links'] = [
           '#theme' => 'links__help',
-          '#heading' => array(
+          '#heading' => [
             'level' => 'h3',
-            'text' => $this->t('@module administration pages', array('@module' => $module_name)),
-          ),
+            'text' => $this->t('@module administration pages', ['@module' => $module_name]),
+          ],
           '#links' => $links,
-        );
+        ];
       }
       return $build;
     }
diff --git a/core/modules/help/tests/modules/help_test/src/SupernovaGenerator.php b/core/modules/help/tests/modules/help_test/src/SupernovaGenerator.php
index a2d5e27..9cdaa41 100644
--- a/core/modules/help/tests/modules/help_test/src/SupernovaGenerator.php
+++ b/core/modules/help/tests/modules/help_test/src/SupernovaGenerator.php
@@ -27,21 +27,21 @@ public function getContext() {
   /**
    * {@inheritdoc}
    */
-  public function generate($name, $parameters = array(), $referenceType = self::ABSOLUTE_PATH) {
+  public function generate($name, $parameters = [], $referenceType = self::ABSOLUTE_PATH) {
     throw new \Exception();
   }
 
   /**
    * {@inheritdoc}
    */
-  public function getPathFromRoute($name, $parameters = array()) {
+  public function getPathFromRoute($name, $parameters = []) {
     throw new \Exception();
   }
 
   /**
    * {@inheritdoc}
    */
-  public function generateFromRoute($name, $parameters = array(), $options = array(), $collect_bubbleable_metadata = FALSE) {
+  public function generateFromRoute($name, $parameters = [], $options = [], $collect_bubbleable_metadata = FALSE) {
     throw new \Exception();
   }
 
@@ -55,7 +55,7 @@ public function supports($name) {
   /**
    * {@inheritdoc}
    */
-  public function getRouteDebugMessage($name, array $parameters = array()) {
+  public function getRouteDebugMessage($name, array $parameters = []) {
     throw new \Exception();
   }
 
diff --git a/core/modules/help/tests/src/Functional/ExperimentalHelpTest.php b/core/modules/help/tests/src/Functional/ExperimentalHelpTest.php
index 9d1a74e..0eabbda 100644
--- a/core/modules/help/tests/src/Functional/ExperimentalHelpTest.php
+++ b/core/modules/help/tests/src/Functional/ExperimentalHelpTest.php
@@ -19,7 +19,7 @@ class ExperimentalHelpTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('help', 'experimental_module_test', 'help_page_test');
+  public static $modules = ['help', 'experimental_module_test', 'help_page_test'];
 
   /**
    * The admin user.
diff --git a/core/modules/help/tests/src/Functional/HelpTest.php b/core/modules/help/tests/src/Functional/HelpTest.php
index 2e82499..e70eeb7 100644
--- a/core/modules/help/tests/src/Functional/HelpTest.php
+++ b/core/modules/help/tests/src/Functional/HelpTest.php
@@ -20,7 +20,7 @@ class HelpTest extends BrowserTestBase {
    *
    * @var array.
    */
-  public static $modules = array('help_test', 'help_page_test');
+  public static $modules = ['help_test', 'help_page_test'];
 
   /**
    * Use the Standard profile to test help implementations of many core modules.
@@ -41,8 +41,8 @@ protected function setUp() {
     parent::setUp();
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'view the administration theme', 'administer permissions'));
-    $this->anyUser = $this->drupalCreateUser(array());
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'view the administration theme', 'administer permissions']);
+    $this->anyUser = $this->drupalCreateUser([]);
   }
 
   /**
@@ -61,7 +61,7 @@ public function testHelp() {
     // Verify that introductory help text exists, goes for 100% module coverage.
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('admin/help');
-    $this->assertRaw(t('For more information, refer to the help listed on this page or to the <a href=":docs">online documentation</a> and <a href=":support">support</a> pages at <a href=":drupal">drupal.org</a>.', array(':docs' => 'https://www.drupal.org/documentation', ':support' => 'https://www.drupal.org/support', ':drupal' => 'https://www.drupal.org')));
+    $this->assertRaw(t('For more information, refer to the help listed on this page or to the <a href=":docs">online documentation</a> and <a href=":support">support</a> pages at <a href=":drupal">drupal.org</a>.', [':docs' => 'https://www.drupal.org/documentation', ':support' => 'https://www.drupal.org/support', ':drupal' => 'https://www.drupal.org']));
 
     // Verify that hook_help() section title and description appear.
     $this->assertRaw('<h2>' . t('Module overviews') . '</h2>');
@@ -74,13 +74,13 @@ public function testHelp() {
 
     // Make sure links are properly added for modules implementing hook_help().
     foreach ($this->getModuleList() as $module => $name) {
-      $this->assertLink($name, 0, format_string('Link properly added to @name (admin/help/@module)', array('@module' => $module, '@name' => $name)));
+      $this->assertLink($name, 0, format_string('Link properly added to @name (admin/help/@module)', ['@module' => $module, '@name' => $name]));
     }
 
     // Ensure that module which does not provide an module overview page is
     // handled correctly.
     $this->clickLink(\Drupal::moduleHandler()->getName('help_test'));
-    $this->assertRaw(t('No help is available for module %module.', array('%module' => \Drupal::moduleHandler()->getName('help_test'))));
+    $this->assertRaw(t('No help is available for module %module.', ['%module' => \Drupal::moduleHandler()->getName('help_test')]));
 
     // Verify that the order of topics is alphabetical by displayed module
     // name, by checking the order of some modules, including some that would
@@ -119,11 +119,11 @@ protected function verifyHelp($response = 200) {
       $this->drupalGet('admin/help/' . $module);
       $this->assertResponse($response);
       if ($response == 200) {
-        $this->assertTitle($name . ' | Drupal', format_string('%module title was displayed', array('%module' => $module)));
+        $this->assertTitle($name . ' | Drupal', format_string('%module title was displayed', ['%module' => $module]));
         $this->assertEquals($name, $this->cssSelect('h1.page-title')[0]->getText(), "$module heading was displayed");
         $admin_tasks = system_get_module_admin_tasks($module, system_get_info('module', $module));
         if (!empty($admin_tasks)) {
-          $this->assertText(t('@module administration pages', array('@module' => $name)));
+          $this->assertText(t('@module administration pages', ['@module' => $name]));
         }
         foreach ($admin_tasks as $task) {
           $this->assertLink($task['title']);
@@ -149,7 +149,7 @@ protected function verifyHelp($response = 200) {
    *   A list of enabled modules.
    */
   protected function getModuleList() {
-    $modules = array();
+    $modules = [];
     $module_data = system_rebuild_module_data();
     foreach (\Drupal::moduleHandler()->getImplementations('help') as $module) {
       $modules[$module] = $module_data[$module]->info['name'];
diff --git a/core/modules/help/tests/src/Functional/NoHelpTest.php b/core/modules/help/tests/src/Functional/NoHelpTest.php
index 49c768d..acb2563 100644
--- a/core/modules/help/tests/src/Functional/NoHelpTest.php
+++ b/core/modules/help/tests/src/Functional/NoHelpTest.php
@@ -18,7 +18,7 @@ class NoHelpTest extends BrowserTestBase {
    *
    * @var array.
    */
-  public static $modules = array('help', 'menu_test');
+  public static $modules = ['help', 'menu_test'];
 
   /**
    * The user who will be created.
@@ -27,7 +27,7 @@ class NoHelpTest extends BrowserTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages']);
   }
 
   /**
diff --git a/core/modules/history/history.install b/core/modules/history/history.install
index ede5255..8af53fe 100644
--- a/core/modules/history/history.install
+++ b/core/modules/history/history.install
@@ -11,34 +11,34 @@
  * Implements hook_schema().
  */
 function history_schema() {
-  $schema['history'] = array(
+  $schema['history'] = [
     'description' => 'A record of which {users} have read which {node}s.',
-    'fields' => array(
-      'uid' => array(
+    'fields' => [
+      'uid' => [
         'description' => 'The {users}.uid that read the {node} nid.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'nid' => array(
+      ],
+      'nid' => [
         'description' => 'The {node}.nid that was read.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'description' => 'The Unix timestamp at which the read occurred.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('uid', 'nid'),
-    'indexes' => array(
-      'nid' => array('nid'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['uid', 'nid'],
+    'indexes' => [
+      'nid' => ['nid'],
+    ],
+  ];
 
   return $schema;
 }
@@ -56,43 +56,43 @@ function history_update_8101() {
   $schema = Database::getConnection()->schema();
   $schema->dropPrimaryKey('history');
   $schema->dropIndex('history', 'nid');
-  $schema->changeField('history', 'nid', 'nid', array(
+  $schema->changeField('history', 'nid', 'nid', [
     'description' => 'The {node}.nid that was read.',
     'type' => 'int',
     'unsigned' => TRUE,
     'not null' => TRUE,
     'default' => 0,
-  ));
-  $schema->addPrimaryKey('history', array('uid', 'nid'));
-  $spec = array(
+  ]);
+  $schema->addPrimaryKey('history', ['uid', 'nid']);
+  $spec = [
     'description' => 'A record of which {users} have read which {node}s.',
-    'fields' => array(
-      'uid' => array(
+    'fields' => [
+      'uid' => [
         'description' => 'The {users}.uid that read the {node} nid.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'nid' => array(
+      ],
+      'nid' => [
         'description' => 'The {node}.nid that was read.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'description' => 'The Unix timestamp at which the read occurred.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('uid', 'nid'),
-    'indexes' => array(
-      'nid' => array('nid'),
-    ),
-  );
-  $schema->addIndex('history', 'nid', array('nid'), $spec);
+      ],
+    ],
+    'primary key' => ['uid', 'nid'],
+    'indexes' => [
+      'nid' => ['nid'],
+    ],
+  ];
+  $schema->addIndex('history', 'nid', ['nid'], $spec);
 }
 
 /**
diff --git a/core/modules/history/history.module b/core/modules/history/history.module
index a31dd5b..58f40de 100644
--- a/core/modules/history/history.module
+++ b/core/modules/history/history.module
@@ -28,7 +28,7 @@ function history_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.history':
       $output  = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The History module keeps track of which content a user has read. It marks content as <em>new</em> or <em>updated</em> depending on the last time the user viewed it. History records that are older than one month are removed during cron, which means that content older than one month is always considered <em>read</em>. The History module does not have a user interface but it provides a filter to <a href=":views-help">Views</a> to show new or updated content. For more information, see the <a href=":url">online documentation for the History module</a>.', array(':views-help' => (\Drupal::moduleHandler()->moduleExists('views')) ? \Drupal::url('help.page', array ('name' => 'views')) : '#', ':url' => 'https://www.drupal.org/documentation/modules/history')) . '</p>';
+      $output .= '<p>' . t('The History module keeps track of which content a user has read. It marks content as <em>new</em> or <em>updated</em> depending on the last time the user viewed it. History records that are older than one month are removed during cron, which means that content older than one month is always considered <em>read</em>. The History module does not have a user interface but it provides a filter to <a href=":views-help">Views</a> to show new or updated content. For more information, see the <a href=":url">online documentation for the History module</a>.', [':views-help' => (\Drupal::moduleHandler()->moduleExists('views')) ? \Drupal::url('help.page',  ['name' => 'views']) : '#', ':url' => 'https://www.drupal.org/documentation/modules/history']) . '</p>';
       return $output;
   }
 }
@@ -44,7 +44,7 @@ function history_help($route_name, RouteMatchInterface $route_match) {
  *   of when the last view occurred; otherwise, zero.
  */
 function history_read($nid) {
-  $history = history_read_multiple(array($nid));
+  $history = history_read_multiple([$nid]);
   return $history[$nid];
 }
 
@@ -60,11 +60,11 @@ function history_read($nid) {
  *   otherwise, zero.
  */
 function history_read_multiple($nids) {
-  $history = &drupal_static(__FUNCTION__, array());
+  $history = &drupal_static(__FUNCTION__, []);
 
-  $return = array();
+  $return = [];
 
-  $nodes_to_read = array();
+  $nodes_to_read = [];
   foreach ($nids as $nid) {
     if (isset($history[$nid])) {
       $return[$nid] = $history[$nid];
@@ -79,10 +79,10 @@ function history_read_multiple($nids) {
     return $return;
   }
 
-  $result = db_query('SELECT nid, timestamp FROM {history} WHERE uid = :uid AND nid IN ( :nids[] )', array(
+  $result = db_query('SELECT nid, timestamp FROM {history} WHERE uid = :uid AND nid IN ( :nids[] )', [
     ':uid' => \Drupal::currentUser()->id(),
     ':nids[]' => array_keys($nodes_to_read),
-  ));
+  ]);
   foreach ($result as $row) {
     $nodes_to_read[$row->nid] = (int) $row->timestamp;
   }
@@ -108,14 +108,14 @@ function history_write($nid, $account = NULL) {
 
   if ($account->isAuthenticated()) {
     db_merge('history')
-      ->keys(array(
+      ->keys([
         'uid' => $account->id(),
         'nid' => $nid,
-      ))
-      ->fields(array('timestamp' => REQUEST_TIME))
+      ])
+      ->fields(['timestamp' => REQUEST_TIME])
       ->execute();
     // Update static cache.
-    $history = &drupal_static('history_read_multiple', array());
+    $history = &drupal_static('history_read_multiple', []);
     $history[$nid] = REQUEST_TIME;
   }
 }
diff --git a/core/modules/history/history.views.inc b/core/modules/history/history.views.inc
index 4b98136..a4dcd99 100644
--- a/core/modules/history/history.views.inc
+++ b/core/modules/history/history.views.inc
@@ -17,29 +17,29 @@ function history_views_data() {
   $data['history']['table']['group']  = t('Content');
 
   // Explain how this table joins to others.
-  $data['history']['table']['join'] = array(
+  $data['history']['table']['join'] = [
      // Directly links to node table.
-    'node_field_data' => array(
+    'node_field_data' => [
       'table' => 'history',
       'left_field' => 'nid',
       'field' => 'nid',
-      'extra' => array(
-        array('field' => 'uid', 'value' => '***CURRENT_USER***', 'numeric' => TRUE),
-      ),
-    ),
-  );
+      'extra' => [
+        ['field' => 'uid', 'value' => '***CURRENT_USER***', 'numeric' => TRUE],
+      ],
+    ],
+  ];
 
-  $data['history']['timestamp'] = array(
+  $data['history']['timestamp'] = [
     'title' => t('Has new content'),
-    'field' => array(
+    'field' => [
       'id' => 'history_user_timestamp',
       'help' => t('Show a marker if the content is new or updated.'),
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'help' => t('Show only content that is new or updated.'),
       'id' => 'history_user_timestamp',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
diff --git a/core/modules/history/src/Plugin/views/field/HistoryUserTimestamp.php b/core/modules/history/src/Plugin/views/field/HistoryUserTimestamp.php
index e6b0548..f33dab2 100644
--- a/core/modules/history/src/Plugin/views/field/HistoryUserTimestamp.php
+++ b/core/modules/history/src/Plugin/views/field/HistoryUserTimestamp.php
@@ -34,10 +34,10 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
     parent::init($view, $display, $options);
 
     if (\Drupal::currentUser()->isAuthenticated()) {
-      $this->additional_fields['created'] = array('table' => 'node_field_data', 'field' => 'created');
-      $this->additional_fields['changed'] = array('table' => 'node_field_data', 'field' => 'changed');
+      $this->additional_fields['created'] = ['table' => 'node_field_data', 'field' => 'created'];
+      $this->additional_fields['changed'] = ['table' => 'node_field_data', 'field' => 'changed'];
       if (\Drupal::moduleHandler()->moduleExists('comment') && !empty($this->options['comments'])) {
-        $this->additional_fields['last_comment'] = array('table' => 'comment_entity_statistics', 'field' => 'last_comment_timestamp');
+        $this->additional_fields['last_comment'] = ['table' => 'comment_entity_statistics', 'field' => 'last_comment_timestamp'];
       }
     }
   }
@@ -45,7 +45,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['comments'] = array('default' => FALSE);
+    $options['comments'] = ['default' => FALSE];
 
     return $options;
   }
@@ -53,11 +53,11 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     if (\Drupal::moduleHandler()->moduleExists('comment')) {
-      $form['comments'] = array(
+      $form['comments'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Check for new comments as well'),
         '#default_value' => !empty($this->options['comments']),
-      );
+      ];
     }
   }
 
@@ -92,10 +92,10 @@ public function render(ResultRow $values) {
       elseif ($last_comment > $last_read && $last_comment > HISTORY_READ_LIMIT) {
         $mark = MARK_UPDATED;
       }
-      $build = array(
+      $build = [
         '#theme' => 'mark',
         '#status' => $mark,
-      );
+      ];
       return $this->renderLink(drupal_render($build), $values);
     }
   }
diff --git a/core/modules/history/src/Plugin/views/filter/HistoryUserTimestamp.php b/core/modules/history/src/Plugin/views/filter/HistoryUserTimestamp.php
index 80d78bd..92a5799 100644
--- a/core/modules/history/src/Plugin/views/filter/HistoryUserTimestamp.php
+++ b/core/modules/history/src/Plugin/views/filter/HistoryUserTimestamp.php
@@ -49,11 +49,11 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
       else {
         $label = $this->t('Has new content');
       }
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => 'checkbox',
         '#title' => $label,
         '#default_value' => $this->value,
-      );
+      ];
     }
   }
 
diff --git a/core/modules/history/src/Tests/HistoryTest.php b/core/modules/history/src/Tests/HistoryTest.php
index 17bba34..d08d211 100644
--- a/core/modules/history/src/Tests/HistoryTest.php
+++ b/core/modules/history/src/Tests/HistoryTest.php
@@ -17,7 +17,7 @@ class HistoryTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'history');
+  public static $modules = ['node', 'history'];
 
   /**
    * The main user for testing.
@@ -36,11 +36,11 @@ class HistoryTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $this->user = $this->drupalCreateUser(array('create page content', 'access content'));
+    $this->user = $this->drupalCreateUser(['create page content', 'access content']);
     $this->drupalLogin($this->user);
-    $this->testNode = $this->drupalCreateNode(array('type' => 'page', 'uid' => $this->user->id()));
+    $this->testNode = $this->drupalCreateNode(['type' => 'page', 'uid' => $this->user->id()]);
   }
 
   /**
@@ -54,7 +54,7 @@ protected function setUp() {
    */
   protected function getNodeReadTimestamps(array $node_ids) {
     // Build POST values.
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($node_ids); $i++) {
       $post['node_ids[' . $i . ']'] = $node_ids[$i];
     }
@@ -69,15 +69,15 @@ protected function getNodeReadTimestamps(array $node_ids) {
     $post = implode('&', $post);
 
     // Perform HTTP request.
-    return $this->curlExec(array(
-      CURLOPT_URL => \Drupal::url('history.get_last_node_view', array(), array('absolute' => TRUE)),
+    return $this->curlExec([
+      CURLOPT_URL => \Drupal::url('history.get_last_node_view', [], ['absolute' => TRUE]),
       CURLOPT_POST => TRUE,
       CURLOPT_POSTFIELDS => $post,
-      CURLOPT_HTTPHEADER => array(
+      CURLOPT_HTTPHEADER => [
         'Accept: application/json',
         'Content-Type: application/x-www-form-urlencoded',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
@@ -90,12 +90,12 @@ protected function getNodeReadTimestamps(array $node_ids) {
    *   The response body.
    */
   protected function markNodeAsRead($node_id) {
-    return $this->curlExec(array(
-      CURLOPT_URL => \Drupal::url('history.read_node', array('node' => $node_id), array('absolute' => TRUE)),
-      CURLOPT_HTTPHEADER => array(
+    return $this->curlExec([
+      CURLOPT_URL => \Drupal::url('history.read_node', ['node' => $node_id], ['absolute' => TRUE]),
+      CURLOPT_HTTPHEADER => [
         'Accept: application/json',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
@@ -105,10 +105,10 @@ function testHistory() {
     $nid = $this->testNode->id();
 
     // Retrieve "last read" timestamp for test node, for the current user.
-    $response = $this->getNodeReadTimestamps(array($nid));
+    $response = $this->getNodeReadTimestamps([$nid]);
     $this->assertResponse(200);
     $json = Json::decode($response);
-    $this->assertIdentical(array(1 => 0), $json, 'The node has not yet been read.');
+    $this->assertIdentical([1 => 0], $json, 'The node has not yet been read.');
 
     // View the node.
     $this->drupalGet('node/' . $nid);
@@ -126,20 +126,20 @@ function testHistory() {
     $this->assertTrue(is_numeric($timestamp), 'Node has been marked as read. Timestamp received.');
 
     // Retrieve "last read" timestamp for test node, for the current user.
-    $response = $this->getNodeReadTimestamps(array($nid));
+    $response = $this->getNodeReadTimestamps([$nid]);
     $this->assertResponse(200);
     $json = Json::decode($response);
-    $this->assertIdentical(array(1 => $timestamp), $json, 'The node has been read.');
+    $this->assertIdentical([1 => $timestamp], $json, 'The node has been read.');
 
     // Failing to specify node IDs for the first endpoint should return a 404.
-    $this->getNodeReadTimestamps(array());
+    $this->getNodeReadTimestamps([]);
     $this->assertResponse(404);
 
     // Accessing either endpoint as the anonymous user should return a 403.
     $this->drupalLogout();
-    $this->getNodeReadTimestamps(array($nid));
+    $this->getNodeReadTimestamps([$nid]);
     $this->assertResponse(403);
-    $this->getNodeReadTimestamps(array());
+    $this->getNodeReadTimestamps([]);
     $this->assertResponse(403);
     $this->markNodeAsRead($nid);
     $this->assertResponse(403);
diff --git a/core/modules/history/src/Tests/Views/HistoryTimestampTest.php b/core/modules/history/src/Tests/Views/HistoryTimestampTest.php
index 0f48401..4766538 100644
--- a/core/modules/history/src/Tests/Views/HistoryTimestampTest.php
+++ b/core/modules/history/src/Tests/Views/HistoryTimestampTest.php
@@ -19,20 +19,20 @@ class HistoryTimestampTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('history', 'node');
+  public static $modules = ['history', 'node'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_history');
+  public static $testViews = ['test_history'];
 
   /**
    * Tests the handlers.
    */
   public function testHandlers() {
-    $nodes = array();
+    $nodes = [];
     $nodes[] = $this->drupalCreateNode();
     $nodes[] = $this->drupalCreateNode();
 
@@ -41,23 +41,23 @@ public function testHandlers() {
     \Drupal::currentUser()->setAccount($account);
 
     db_insert('history')
-      ->fields(array(
+      ->fields([
         'uid' => $account->id(),
         'nid' => $nodes[0]->id(),
         'timestamp' => REQUEST_TIME - 100,
-      ))->execute();
+      ])->execute();
 
     db_insert('history')
-      ->fields(array(
+      ->fields([
         'uid' => $account->id(),
         'nid' => $nodes[1]->id(),
         'timestamp' => REQUEST_TIME + 100,
-      ))->execute();
+      ])->execute();
 
 
-    $column_map = array(
+    $column_map = [
       'nid' => 'nid',
-    );
+    ];
 
     // Test the history field.
     $view = Views::getView('test_history');
@@ -66,7 +66,7 @@ public function testHandlers() {
     $this->assertEqual(count($view->result), 2);
     $output = $view->preview();
     $this->setRawContent(\Drupal::service('renderer')->renderRoot($output));
-    $result = $this->xpath('//span[@class=:class]', array(':class' => 'marker'));
+    $result = $this->xpath('//span[@class=:class]', [':class' => 'marker']);
     $this->assertEqual(count($result), 1, 'Just one node is marked as new');
 
     // Test the history filter.
@@ -74,7 +74,7 @@ public function testHandlers() {
     $view->setDisplay('page_2');
     $this->executeView($view);
     $this->assertEqual(count($view->result), 1);
-    $this->assertIdenticalResultset($view, array(array('nid' => $nodes[0]->id())), $column_map);
+    $this->assertIdenticalResultset($view, [['nid' => $nodes[0]->id()]], $column_map);
 
     // Install Comment module and make sure that content types without comment
     // field will not break the view.
diff --git a/core/modules/image/image.admin.inc b/core/modules/image/image.admin.inc
index 777e438..e43bd48 100644
--- a/core/modules/image/image.admin.inc
+++ b/core/modules/image/image.admin.inc
@@ -33,11 +33,11 @@ function template_preprocess_image_style_preview(&$variables) {
   // Set up original file information.
   $original_path = \Drupal::config('image.settings')->get('preview_image');
   $original_image = $image_factory->get($original_path);
-  $variables['original'] = array(
+  $variables['original'] = [
     'url' => file_url_transform_relative(file_create_url($original_path)),
     'width' => $original_image->getWidth(),
     'height' => $original_image->getHeight(),
-  );
+  ];
   if ($variables['original']['width'] > $variables['original']['height']) {
     $variables['preview']['original']['width'] = min($variables['original']['width'], $sample_width);
     $variables['preview']['original']['height'] = round($variables['preview']['original']['width'] / $variables['original']['width'] * $variables['original']['height']);
@@ -54,11 +54,11 @@ function template_preprocess_image_style_preview(&$variables) {
     $style->createDerivative($original_path, $preview_file);
   }
   $preview_image = $image_factory->get($preview_file);
-  $variables['derivative'] = array(
+  $variables['derivative'] = [
     'url' => file_url_transform_relative(file_create_url($preview_file)),
     'width' => $preview_image->getWidth(),
     'height' => $preview_image->getHeight(),
-  );
+  ];
   if ($variables['derivative']['width'] > $variables['derivative']['height']) {
     $variables['preview']['derivative']['width'] = min($variables['derivative']['width'], $sample_width);
     $variables['preview']['derivative']['height'] = round($variables['preview']['derivative']['width'] / $variables['derivative']['width'] * $variables['derivative']['height']);
@@ -69,31 +69,31 @@ function template_preprocess_image_style_preview(&$variables) {
   }
 
   // Build the preview of the original image.
-  $variables['original']['rendered'] = array(
+  $variables['original']['rendered'] = [
     '#theme' => 'image',
     '#uri' => $original_path,
     '#alt' => t('Sample original image'),
     '#title' => '',
-    '#attributes' => array(
+    '#attributes' => [
       'width' => $variables['original']['width'],
       'height' => $variables['original']['height'],
       'style' => 'width: ' . $variables['preview']['original']['width'] . 'px; height: ' . $variables['preview']['original']['height'] . 'px;',
-    ),
-  );
+    ],
+  ];
 
   // Build the preview of the image style derivative. Timestamps are added
   // to prevent caching of images on the client side.
-  $variables['derivative']['rendered'] = array(
+  $variables['derivative']['rendered'] = [
     '#theme' => 'image',
     '#uri' => $variables['derivative']['url'] . '?cache_bypass=' . $variables['cache_bypass'],
     '#alt' => t('Sample modified image'),
     '#title' => '',
-    '#attributes' => array(
+    '#attributes' => [
       'width' => $variables['derivative']['width'],
       'height' => $variables['derivative']['height'],
       'style' => 'width: ' . $variables['preview']['derivative']['width'] . 'px; height: ' . $variables['preview']['derivative']['height'] . 'px;',
-    ),
-  );
+    ],
+  ];
 
 }
 
@@ -109,26 +109,26 @@ function template_preprocess_image_style_preview(&$variables) {
 function template_preprocess_image_anchor(&$variables) {
   $element = $variables['element'];
 
-  $rows = array();
-  $row = array();
+  $rows = [];
+  $row = [];
   foreach (Element::children($element) as $n => $key) {
     $element[$key]['#attributes']['title'] = $element[$key]['#title'];
     unset($element[$key]['#title']);
-    $row[] = array(
+    $row[] = [
       'data' => $element[$key],
-    );
+    ];
     if ($n % 3 == 3 - 1) {
       $rows[] = $row;
-      $row = array();
+      $row = [];
     }
   }
 
-  $variables['table'] = array(
+  $variables['table'] = [
     '#type' => 'table',
-    '#header' => array(),
+    '#header' => [],
     '#rows' => $rows,
-    '#attributes' => array(
-      'class' => array('image-anchor'),
-    ),
-  );
+    '#attributes' => [
+      'class' => ['image-anchor'],
+    ],
+  ];
 }
diff --git a/core/modules/image/image.field.inc b/core/modules/image/image.field.inc
index 1bf4369..9fcdf69 100644
--- a/core/modules/image/image.field.inc
+++ b/core/modules/image/image.field.inc
@@ -20,14 +20,14 @@
 function template_preprocess_image_widget(&$variables) {
   $element = $variables['element'];
 
-  $variables['attributes'] = array('class' => array('image-widget', 'js-form-managed-file', 'form-managed-file', 'clearfix'));
+  $variables['attributes'] = ['class' => ['image-widget', 'js-form-managed-file', 'form-managed-file', 'clearfix']];
 
   if (!empty($element['fids']['#value'])) {
     $file = reset($element['#files']);
     $element['file_' . $file->id()]['filename']['#suffix'] = ' <span class="file-size">(' . format_size($file->getSize()) . ')</span> ';
   }
 
-  $variables['data'] = array();
+  $variables['data'] = [];
   foreach (Element::children($element) as $child) {
     $variables['data'][$child] = $element[$child];
   }
@@ -49,15 +49,15 @@ function template_preprocess_image_widget(&$variables) {
  */
 function template_preprocess_image_formatter(&$variables) {
   if ($variables['image_style']) {
-    $variables['image'] = array(
+    $variables['image'] = [
       '#theme' => 'image_style',
       '#style_name' => $variables['image_style'],
-    );
+    ];
   }
   else {
-    $variables['image'] = array(
+    $variables['image'] = [
       '#theme' => 'image',
-    );
+    ];
   }
   $variables['image']['#attributes'] = $variables['item_attributes'];
 
@@ -75,7 +75,7 @@ function template_preprocess_image_formatter(&$variables) {
     $variables['image']['#uri'] = $item->uri;
   }
 
-  foreach (array('width', 'height', 'alt') as $key) {
+  foreach (['width', 'height', 'alt'] as $key) {
     $variables['image']["#$key"] = $item->$key;
   }
 }
diff --git a/core/modules/image/image.install b/core/modules/image/image.install
index c044912..d7a2ce7 100644
--- a/core/modules/image/image.install
+++ b/core/modules/image/image.install
@@ -29,19 +29,19 @@ function image_uninstall() {
  */
 function image_requirements($phase) {
   if ($phase != 'runtime') {
-    return array();
+    return [];
   }
 
   $toolkit = \Drupal::service('image.toolkit.manager')->getDefaultToolkit();
   if ($toolkit) {
     $plugin_definition = $toolkit->getPluginDefinition();
-    $requirements = array(
-      'image.toolkit' => array(
+    $requirements = [
+      'image.toolkit' => [
         'title' => t('Image toolkit'),
         'value' => $toolkit->getPluginId(),
         'description' => $plugin_definition['title'],
-      ),
-    );
+      ],
+    ];
 
     foreach ($toolkit->getRequirements() as $key => $requirement) {
       $namespaced_key = 'image.toolkit.' . $toolkit->getPluginId() . '.' . $key;
@@ -49,14 +49,14 @@ function image_requirements($phase) {
     }
   }
   else {
-    $requirements = array(
-      'image.toolkit' => array(
+    $requirements = [
+      'image.toolkit' => [
         'title' => t('Image toolkit'),
         'value' => t('None'),
         'description' => t("No image toolkit is configured on the site. Check PHP installed extensions or add a contributed toolkit that doesn't require a PHP extension. Make sure that at least one valid image toolkit is enabled."),
         'severity' => REQUIREMENT_ERROR,
-      ),
-    );
+      ],
+    ];
   }
 
   return $requirements;
diff --git a/core/modules/image/image.module b/core/modules/image/image.module
index 33ecf2e..6107ecd 100644
--- a/core/modules/image/image.module
+++ b/core/modules/image/image.module
@@ -58,20 +58,20 @@
 function image_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.image':
-      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#';
+      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#';
 
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Image module allows you to create fields that contain image files and to configure <a href=":image_styles">Image styles</a> that can be used to manipulate the display of images. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for terminology and general information on entities, fields, and how to create and manage fields. For more information, see the <a href=":image_documentation">online documentation for the Image module</a>.', array(':image_styles' => \Drupal::url('entity.image_style.collection'), ':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => $field_ui_url, ':image_documentation' => 'https://www.drupal.org/documentation/modules/image')) . '</p>';
+      $output .= '<p>' . t('The Image module allows you to create fields that contain image files and to configure <a href=":image_styles">Image styles</a> that can be used to manipulate the display of images. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for terminology and general information on entities, fields, and how to create and manage fields. For more information, see the <a href=":image_documentation">online documentation for the Image module</a>.', [':image_styles' => \Drupal::url('entity.image_style.collection'), ':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => $field_ui_url, ':image_documentation' => 'https://www.drupal.org/documentation/modules/image']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dt>' . t('Defining image styles') . '</dt>';
-      $output .= '<dd>' . t('The concept of image styles is that you can upload a single image but display it in several ways; each display variation, or <em>image style</em>, is the result of applying one or more <em>effects</em> to the original image. As an example, you might upload a high-resolution image with a 4:3 aspect ratio, and display it scaled down, square cropped, or black-and-white (or any combination of these effects). The Image module provides a way to do this efficiently: you configure an image style with the desired effects on the <a href=":image">Image styles page</a>, and the first time a particular image is requested in that style, the effects are applied. The resulting image is saved, and the next time that same style is requested, the saved image is retrieved without the need to recalculate the effects. Drupal core provides several effects that you can use to define styles; others may be provided by contributed modules.', array(':image' => \Drupal::url('entity.image_style.collection')));
+      $output .= '<dd>' . t('The concept of image styles is that you can upload a single image but display it in several ways; each display variation, or <em>image style</em>, is the result of applying one or more <em>effects</em> to the original image. As an example, you might upload a high-resolution image with a 4:3 aspect ratio, and display it scaled down, square cropped, or black-and-white (or any combination of these effects). The Image module provides a way to do this efficiently: you configure an image style with the desired effects on the <a href=":image">Image styles page</a>, and the first time a particular image is requested in that style, the effects are applied. The resulting image is saved, and the next time that same style is requested, the saved image is retrieved without the need to recalculate the effects. Drupal core provides several effects that you can use to define styles; others may be provided by contributed modules.', [':image' => \Drupal::url('entity.image_style.collection')]);
       $output .= '<dt>' . t('Naming image styles') . '</dt>';
       $output .= '<dd>' . t('When you define an image style, you will need to choose a displayed name and a machine name. The displayed name is shown in administrative pages, and the machine name is used to generate the URL for accessing an image processed in that style. There are two common approaches to naming image styles: either based on the effects being applied (for example, <em>Square 85x85</em>), or based on where you plan to use it (for example, <em>Profile picture</em>).') . '</dd>';
       $output .= '<dt>' . t('Configuring image fields') . '</dt>';
       $output .= '<dd>' . t('A few of the settings for image fields are defined once when you create the field and cannot be changed later; these include the choice of public or private file storage and the number of images that can be stored in the field. The rest of the settings can be edited later; these settings include the field label, help text, allowed file extensions, image resolution restrictions, and the subdirectory in the public or private file storage where the images will be stored. The editable settings can also have different values for different entity sub-types; for instance, if your image field is used on both Page and Article content types, you can store the files in a different subdirectory for the two content types.') . '</dd>';
       $output .= '<dd>' . t('For accessibility and search engine optimization, all images that convey meaning on web sites should have alternate text. Drupal also allows entry of title text for images, but it can lead to confusion for screen reader users and its use is not recommended. Image fields can be configured so that alternate and title text fields are enabled or disabled; if enabled, the fields can be set to be required. The recommended setting is to enable and require alternate text and disable title text.') . '</dd>';
-      $output .= '<dd>' . t('When you create an image field, you will need to choose whether the uploaded images will be stored in the public or private file directory defined in your settings.php file and shown on the <a href=":file-system">File system page</a>. This choice cannot be changed later. You can also configure your field to store files in a subdirectory of the public or private directory; this setting can be changed later and can be different for each entity sub-type using the field. For more information on file storage, see the <a href=":system-help">System module help page</a>.', array(':file-system' => \Drupal::url('system.file_system_settings'), ':system-help' => \Drupal::url('help.page', array('name' => 'system')))) . '</dd>';
+      $output .= '<dd>' . t('When you create an image field, you will need to choose whether the uploaded images will be stored in the public or private file directory defined in your settings.php file and shown on the <a href=":file-system">File system page</a>. This choice cannot be changed later. You can also configure your field to store files in a subdirectory of the public or private directory; this setting can be changed later and can be different for each entity sub-type using the field. For more information on file storage, see the <a href=":system-help">System module help page</a>.', [':file-system' => \Drupal::url('system.file_system_settings'), ':system-help' => \Drupal::url('help.page', ['name' => 'system'])]) . '</dd>';
       $output .= '<dd>' . t('The maximum file size that can be uploaded is limited by PHP settings of the server, but you can restrict it further by configuring a <em>Maximum upload size</em> in the field settings (this setting can be changed later). The maximum file size, either from PHP server settings or field configuration, is automatically displayed to users in the help text of the image field.') . '</dd>';
       $output .= '<dd>' . t('You can also configure a minimum and/or maximum resolution for uploaded images. Images that are too small will be rejected. Images that are to large will be resized. During the resizing the <a href="http://wikipedia.org/wiki/Exchangeable_image_file_format">EXIF data</a> in the image will be lost.') . '</dd>';
       $output .= '<dd>' . t('You can also configure a default image that will be used if no image is uploaded in an image field. This default can be defined for all instances of the field in the field storage settings when you create a field, and the setting can be overridden for each entity sub-type that uses the field.') . '</dd>';
@@ -98,9 +98,9 @@ function image_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function image_theme() {
-  return array(
+  return [
     // Theme functions in image.module.
-    'image_style' => array(
+    'image_style' => [
       // HTML 4 and XHTML 1.0 always require an alt attribute. The HTML 5 draft
       // allows the alt attribute to be omitted in some cases. Therefore,
       // default the alt attribute to an empty string, but allow code using
@@ -113,49 +113,49 @@ function image_theme() {
       // - http://dev.w3.org/html5/spec/Overview.html#alt
       // The title attribute is optional in all cases, so it is omitted by
       // default.
-      'variables' => array(
+      'variables' => [
         'style_name' => NULL,
         'uri' => NULL,
         'width' => NULL,
         'height' => NULL,
         'alt' => '',
         'title' => NULL,
-        'attributes' => array(),
-      ),
-    ),
+        'attributes' => [],
+      ],
+    ],
 
     // Theme functions in image.admin.inc.
-    'image_style_preview' => array(
-      'variables' => array('style' => NULL),
+    'image_style_preview' => [
+      'variables' => ['style' => NULL],
       'file' => 'image.admin.inc',
-    ),
-    'image_anchor' => array(
+    ],
+    'image_anchor' => [
       'render element' => 'element',
       'file' => 'image.admin.inc',
-    ),
-    'image_resize_summary' => array(
-      'variables' => array('data' => NULL, 'effect' => array()),
-    ),
-    'image_scale_summary' => array(
-      'variables' => array('data' => NULL, 'effect' => array()),
-    ),
-    'image_crop_summary' => array(
-      'variables' => array('data' => NULL, 'effect' => array()),
-    ),
-    'image_rotate_summary' => array(
-      'variables' => array('data' => NULL, 'effect' => array()),
-    ),
+    ],
+    'image_resize_summary' => [
+      'variables' => ['data' => NULL, 'effect' => []],
+    ],
+    'image_scale_summary' => [
+      'variables' => ['data' => NULL, 'effect' => []],
+    ],
+    'image_crop_summary' => [
+      'variables' => ['data' => NULL, 'effect' => []],
+    ],
+    'image_rotate_summary' => [
+      'variables' => ['data' => NULL, 'effect' => []],
+    ],
 
     // Theme functions in image.field.inc.
-    'image_widget' => array(
+    'image_widget' => [
       'render element' => 'element',
       'file' => 'image.field.inc',
-    ),
-    'image_formatter' => array(
-      'variables' => array('item' => NULL, 'item_attributes' => NULL, 'url' => NULL, 'image_style' => NULL),
+    ],
+    'image_formatter' => [
+      'variables' => ['item' => NULL, 'item_attributes' => NULL, 'url' => NULL, 'image_style' => NULL],
       'file' => 'image.field.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -180,17 +180,17 @@ function image_file_download($uri) {
     $image = \Drupal::service('image.factory')->get($uri);
     if ($image->isValid()) {
       // Check the permissions of the original to grant access to this image.
-      $headers = \Drupal::moduleHandler()->invokeAll('file_download', array($original_uri));
+      $headers = \Drupal::moduleHandler()->invokeAll('file_download', [$original_uri]);
       // Confirm there's at least one module granting access and none denying access.
       if (!empty($headers) && !in_array(-1, $headers)) {
-        return array(
+        return [
           // Send headers describing the image's size, and MIME-type.
           'Content-Type' => $image->getMimeType(),
           'Content-Length' => $image->getFileSize(),
           // By not explicitly setting them here, this uses normal Drupal
           // Expires, Cache-Control and ETag headers to prevent proxy or
           // browser caching of private images.
-        );
+        ];
       }
     }
     return -1;
@@ -236,7 +236,7 @@ function image_path_flush($path) {
  */
 function image_style_options($include_empty = TRUE) {
   $styles = ImageStyle::loadMultiple();
-  $options = array();
+  $options = [];
   if ($include_empty && !empty($styles)) {
     $options[''] = t('- None -');
   }
@@ -280,21 +280,21 @@ function template_preprocess_image_style(&$variables) {
   $style = ImageStyle::load($variables['style_name']);
 
   // Determine the dimensions of the styled image.
-  $dimensions = array(
+  $dimensions = [
     'width' => $variables['width'],
     'height' => $variables['height'],
-  );
+  ];
 
   $style->transformDimensions($dimensions, $variables['uri']);
 
-  $variables['image'] = array(
+  $variables['image'] = [
     '#theme' => 'image',
     '#width' => $dimensions['width'],
     '#height' => $dimensions['height'],
     '#attributes' => $variables['attributes'],
     '#uri' => $style->buildUrl($variables['uri']),
     '#style_name' => $variables['style_name'],
-  );
+  ];
 
   if (isset($variables['alt']) || array_key_exists('alt', $variables)) {
     $variables['image']['#alt'] = $variables['alt'];
diff --git a/core/modules/image/image.views.inc b/core/modules/image/image.views.inc
index 29e6b6a..cca0e3d 100644
--- a/core/modules/image/image.views.inc
+++ b/core/modules/image/image.views.inc
@@ -19,13 +19,13 @@ function image_field_views_data(FieldStorageConfigInterface $field_storage) {
   $data = views_field_default_views_data($field_storage);
   foreach ($data as $table_name => $table_data) {
     // Add the relationship only on the target_id field.
-    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = array(
+    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = [
       'id' => 'standard',
       'base' => 'file_managed',
       'entity type' => 'file',
       'base field' => 'fid',
-      'label' => t('image from @field_name', array('@field_name' => $field_storage->getName())),
-    );
+      'label' => t('image from @field_name', ['@field_name' => $field_storage->getName()]),
+    ];
   }
 
   return $data;
@@ -47,10 +47,10 @@ function image_field_views_data_views_data_alter(array &$data, FieldStorageConfi
 
   list($label) = views_entity_field_label($entity_type_id, $field_name);
 
-  $data['file_managed'][$pseudo_field_name]['relationship'] = array(
-    'title' => t('@entity using @field', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
-    'label' => t('@field_name', array('@field_name' => $field_name)),
-    'help' => t('Relate each @entity with a @field set to the image.', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
+  $data['file_managed'][$pseudo_field_name]['relationship'] = [
+    'title' => t('@entity using @field', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
+    'label' => t('@field_name', ['@field_name' => $field_name]),
+    'help' => t('Relate each @entity with a @field set to the image.', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
     'group' => $entity_type->getLabel(),
     'id' => 'entity_reverse',
     'base' => $entity_type->getDataTable() ?: $entity_type->getBaseTable(),
@@ -59,12 +59,12 @@ function image_field_views_data_views_data_alter(array &$data, FieldStorageConfi
     'field_name' => $field_name,
     'field table' => $table_mapping->getDedicatedDataTableName($field_storage),
     'field field' => $field_name . '_target_id',
-    'join_extra' => array(
-      0 => array(
+    'join_extra' => [
+      0 => [
         'field' => 'deleted',
         'value' => 0,
         'numeric' => TRUE,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
diff --git a/core/modules/image/src/Controller/ImageStyleDownloadController.php b/core/modules/image/src/Controller/ImageStyleDownloadController.php
index 8859bdd..afc1edf 100644
--- a/core/modules/image/src/Controller/ImageStyleDownloadController.php
+++ b/core/modules/image/src/Controller/ImageStyleDownloadController.php
@@ -108,12 +108,12 @@ public function deliver(Request $request, $scheme, ImageStyleInterface $image_st
     }
 
     $derivative_uri = $image_style->buildUri($image_uri);
-    $headers = array();
+    $headers = [];
 
     // If using the private scheme, let other modules provide headers and
     // control access to the file.
     if ($scheme == 'private') {
-      $headers = $this->moduleHandler()->invokeAll('file_download', array($image_uri));
+      $headers = $this->moduleHandler()->invokeAll('file_download', [$image_uri]);
       if (in_array(-1, $headers) || empty($headers)) {
         throw new AccessDeniedHttpException();
       }
@@ -128,7 +128,7 @@ public function deliver(Request $request, $scheme, ImageStyleInterface $image_st
       $path_info = pathinfo($image_uri);
       $converted_image_uri = $path_info['dirname'] . DIRECTORY_SEPARATOR . $path_info['filename'];
       if (!file_exists($converted_image_uri)) {
-        $this->logger->notice('Source image at %source_image_path not found while trying to generate derivative image at %derivative_path.', array('%source_image_path' => $image_uri, '%derivative_path' => $derivative_uri));
+        $this->logger->notice('Source image at %source_image_path not found while trying to generate derivative image at %derivative_path.', ['%source_image_path' => $image_uri, '%derivative_path' => $derivative_uri]);
         return new Response($this->t('Error generating image, missing source file.'), 404);
       }
       else {
@@ -160,10 +160,10 @@ public function deliver(Request $request, $scheme, ImageStyleInterface $image_st
     if ($success) {
       $image = $this->imageFactory->get($derivative_uri);
       $uri = $image->getSource();
-      $headers += array(
+      $headers += [
         'Content-Type' => $image->getMimeType(),
         'Content-Length' => $image->getFileSize(),
-      );
+      ];
       // \Drupal\Core\EventSubscriber\FinishResponseSubscriber::onRespond()
       // sets response as not cacheable if the Cache-Control header is not
       // already modified. We pass in FALSE for non-private schemes for the
@@ -171,7 +171,7 @@ public function deliver(Request $request, $scheme, ImageStyleInterface $image_st
       return new BinaryFileResponse($uri, 200, $headers, $scheme !== 'private');
     }
     else {
-      $this->logger->notice('Unable to generate the derived image located at %path.', array('%path' => $derivative_uri));
+      $this->logger->notice('Unable to generate the derived image located at %path.', ['%path' => $derivative_uri]);
       return new Response($this->t('Error generating image.'), 500);
     }
   }
diff --git a/core/modules/image/src/Entity/ImageStyle.php b/core/modules/image/src/Entity/ImageStyle.php
index e72258d..fb096a7 100644
--- a/core/modules/image/src/Entity/ImageStyle.php
+++ b/core/modules/image/src/Entity/ImageStyle.php
@@ -73,7 +73,7 @@ class ImageStyle extends ConfigEntityBase implements ImageStyleInterface, Entity
    *
    * @var array
    */
-  protected $effects = array();
+  protected $effects = [];
 
   /**
    * Holds the collection of image effects that are used by this image style.
@@ -200,11 +200,11 @@ public function buildUrl($path, $clean_urls = NULL) {
     // that (if both are set, the security token will neither be emitted in the
     // image derivative URL nor checked for in
     // \Drupal\image\ImageStyleInterface::deliver()).
-    $token_query = array();
+    $token_query = [];
     if (!\Drupal::config('image.settings')->get('suppress_itok_output')) {
       // The passed $path variable can be either a relative path or a full URI.
       $original_uri = file_uri_scheme($path) ? file_stream_wrapper_uri_normalize($path) : file_build_uri($path);
-      $token_query = array(IMAGE_DERIVATIVE_TOKEN => $this->getPathToken($original_uri));
+      $token_query = [IMAGE_DERIVATIVE_TOKEN => $this->getPathToken($original_uri)];
     }
 
     if ($clean_urls === NULL) {
@@ -225,7 +225,7 @@ public function buildUrl($path, $clean_urls = NULL) {
     // built.
     if ($clean_urls === FALSE && file_uri_scheme($uri) == 'public' && !file_exists($uri)) {
       $directory_path = $this->getStreamWrapperManager()->getViaUri($uri)->getDirectoryPath();
-      return Url::fromUri('base:' . $directory_path . '/' . file_uri_target($uri), array('absolute' => TRUE, 'query' => $token_query))->toString();
+      return Url::fromUri('base:' . $directory_path . '/' . file_uri_target($uri), ['absolute' => TRUE, 'query' => $token_query])->toString();
     }
 
     $file_url = file_create_url($uri);
@@ -260,7 +260,7 @@ public function flush($path = NULL) {
 
     // Let other modules update as necessary on flush.
     $module_handler = \Drupal::moduleHandler();
-    $module_handler->invokeAll('image_style_flush', array($this));
+    $module_handler->invokeAll('image_style_flush', [$this]);
 
     // Clear caches so that formatters may be added for this style.
     drupal_theme_rebuild();
@@ -286,7 +286,7 @@ public function createDerivative($original_uri, $derivative_uri) {
 
     // Build the destination folder tree if it doesn't already exist.
     if (!file_prepare_directory($directory, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS)) {
-      \Drupal::logger('image')->error('Failed to create style directory: %directory', array('%directory' => $directory));
+      \Drupal::logger('image')->error('Failed to create style directory: %directory', ['%directory' => $directory]);
       return FALSE;
     }
 
@@ -296,7 +296,7 @@ public function createDerivative($original_uri, $derivative_uri) {
 
     if (!$image->save($derivative_uri)) {
       if (file_exists($derivative_uri)) {
-        \Drupal::logger('image')->error('Cached image file %destination already exists. There may be an issue with your rewrite configuration.', array('%destination' => $derivative_uri));
+        \Drupal::logger('image')->error('Cached image file %destination already exists. There may be an issue with your rewrite configuration.', ['%destination' => $derivative_uri]);
       }
       return FALSE;
     }
@@ -362,7 +362,7 @@ public function getEffects() {
    * {@inheritdoc}
    */
   public function getPluginCollections() {
-    return array('effects' => $this->getEffects());
+    return ['effects' => $this->getEffects()];
   }
 
   /**
diff --git a/core/modules/image/src/Form/ImageEffectAddForm.php b/core/modules/image/src/Form/ImageEffectAddForm.php
index 5bf04b4..ce30451 100644
--- a/core/modules/image/src/Form/ImageEffectAddForm.php
+++ b/core/modules/image/src/Form/ImageEffectAddForm.php
@@ -44,7 +44,7 @@ public static function create(ContainerInterface $container) {
   public function buildForm(array $form, FormStateInterface $form_state, ImageStyleInterface $image_style = NULL, $image_effect = NULL) {
     $form = parent::buildForm($form, $form_state, $image_style, $image_effect);
 
-    $form['#title'] = $this->t('Add %label effect', array('%label' => $this->imageEffect->label()));
+    $form['#title'] = $this->t('Add %label effect', ['%label' => $this->imageEffect->label()]);
     $form['actions']['submit']['#value'] = $this->t('Add effect');
 
     return $form;
diff --git a/core/modules/image/src/Form/ImageEffectDeleteForm.php b/core/modules/image/src/Form/ImageEffectDeleteForm.php
index e8c5162..52cde33 100644
--- a/core/modules/image/src/Form/ImageEffectDeleteForm.php
+++ b/core/modules/image/src/Form/ImageEffectDeleteForm.php
@@ -29,7 +29,7 @@ class ImageEffectDeleteForm extends ConfirmFormBase {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete the @effect effect from the %style style?', array('%style' => $this->imageStyle->label(), '@effect' => $this->imageEffect->label()));
+    return $this->t('Are you sure you want to delete the @effect effect from the %style style?', ['%style' => $this->imageStyle->label(), '@effect' => $this->imageEffect->label()]);
   }
 
   /**
@@ -68,7 +68,7 @@ public function buildForm(array $form, FormStateInterface $form_state, ImageStyl
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->imageStyle->deleteImageEffect($this->imageEffect);
-    drupal_set_message($this->t('The image effect %name has been deleted.', array('%name' => $this->imageEffect->label())));
+    drupal_set_message($this->t('The image effect %name has been deleted.', ['%name' => $this->imageEffect->label()]));
     $form_state->setRedirectUrl($this->imageStyle->urlInfo('edit-form'));
   }
 
diff --git a/core/modules/image/src/Form/ImageEffectEditForm.php b/core/modules/image/src/Form/ImageEffectEditForm.php
index 7b54c52..390e4dc 100644
--- a/core/modules/image/src/Form/ImageEffectEditForm.php
+++ b/core/modules/image/src/Form/ImageEffectEditForm.php
@@ -16,7 +16,7 @@ class ImageEffectEditForm extends ImageEffectFormBase {
   public function buildForm(array $form, FormStateInterface $form_state, ImageStyleInterface $image_style = NULL, $image_effect = NULL) {
     $form = parent::buildForm($form, $form_state, $image_style, $image_effect);
 
-    $form['#title'] = $this->t('Edit %label effect', array('%label' => $this->imageEffect->label()));
+    $form['#title'] = $this->t('Edit %label effect', ['%label' => $this->imageEffect->label()]);
     $form['actions']['submit']['#value'] = $this->t('Update effect');
 
     return $form;
diff --git a/core/modules/image/src/Form/ImageEffectFormBase.php b/core/modules/image/src/Form/ImageEffectFormBase.php
index 9a69e05..74368d6 100644
--- a/core/modules/image/src/Form/ImageEffectFormBase.php
+++ b/core/modules/image/src/Form/ImageEffectFormBase.php
@@ -64,14 +64,14 @@ public function buildForm(array $form, FormStateInterface $form_state, ImageStyl
     }
 
     $form['#attached']['library'][] = 'image/admin';
-    $form['uuid'] = array(
+    $form['uuid'] = [
       '#type' => 'value',
       '#value' => $this->imageEffect->getUuid(),
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'value',
       '#value' => $this->imageEffect->getPluginId(),
-    );
+    ];
 
     $form['data'] = [];
     $subform_state = SubformState::createForSubform($form['data'], $form, $form_state);
@@ -79,22 +79,22 @@ public function buildForm(array $form, FormStateInterface $form_state, ImageStyl
     $form['data']['#tree'] = TRUE;
 
     // Check the URL for a weight, then the image effect, otherwise use default.
-    $form['weight'] = array(
+    $form['weight'] = [
       '#type' => 'hidden',
       '#value' => $request->query->has('weight') ? (int) $request->query->get('weight') : $this->imageEffect->getWeight(),
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#button_type' => 'primary',
-    );
-    $form['actions']['cancel'] = array(
+    ];
+    $form['actions']['cancel'] = [
       '#type' => 'link',
       '#title' => $this->t('Cancel'),
       '#url' => $this->imageStyle->urlInfo('edit-form'),
       '#attributes' => ['class' => ['button']],
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Form/ImageStyleAddForm.php b/core/modules/image/src/Form/ImageStyleAddForm.php
index eb6be7d..41261ca 100644
--- a/core/modules/image/src/Form/ImageStyleAddForm.php
+++ b/core/modules/image/src/Form/ImageStyleAddForm.php
@@ -14,7 +14,7 @@ class ImageStyleAddForm extends ImageStyleFormBase {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
-    drupal_set_message($this->t('Style %name was created.', array('%name' => $this->entity->label())));
+    drupal_set_message($this->t('Style %name was created.', ['%name' => $this->entity->label()]));
   }
 
   /**
diff --git a/core/modules/image/src/Form/ImageStyleDeleteForm.php b/core/modules/image/src/Form/ImageStyleDeleteForm.php
index 2d6801b..c02c803 100644
--- a/core/modules/image/src/Form/ImageStyleDeleteForm.php
+++ b/core/modules/image/src/Form/ImageStyleDeleteForm.php
@@ -21,7 +21,7 @@ class ImageStyleDeleteForm extends EntityDeleteForm {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Optionally select a style before deleting %style', array('%style' => $this->entity->label()));
+    return $this->t('Optionally select a style before deleting %style', ['%style' => $this->entity->label()]);
   }
   /**
    * {@inheritdoc}
diff --git a/core/modules/image/src/Form/ImageStyleEditForm.php b/core/modules/image/src/Form/ImageStyleEditForm.php
index ecfcf6f..574d914 100644
--- a/core/modules/image/src/Form/ImageStyleEditForm.php
+++ b/core/modules/image/src/Form/ImageStyleEditForm.php
@@ -49,54 +49,54 @@ public static function create(ContainerInterface $container) {
    */
   public function form(array $form, FormStateInterface $form_state) {
     $user_input = $form_state->getUserInput();
-    $form['#title'] = $this->t('Edit style %name', array('%name' => $this->entity->label()));
+    $form['#title'] = $this->t('Edit style %name', ['%name' => $this->entity->label()]);
     $form['#tree'] = TRUE;
     $form['#attached']['library'][] = 'image/admin';
 
     // Show the thumbnail preview.
-    $preview_arguments = array('#theme' => 'image_style_preview', '#style' => $this->entity);
-    $form['preview'] = array(
+    $preview_arguments = ['#theme' => 'image_style_preview', '#style' => $this->entity];
+    $form['preview'] = [
       '#type' => 'item',
       '#title' => $this->t('Preview'),
       '#markup' => drupal_render($preview_arguments),
       // Render preview above parent elements.
       '#weight' => -5,
-    );
+    ];
 
     // Build the list of existing image effects for this image style.
-    $form['effects'] = array(
+    $form['effects'] = [
       '#type' => 'table',
-      '#header' => array(
+      '#header' => [
         $this->t('Effect'),
         $this->t('Weight'),
         $this->t('Operations'),
-      ),
-      '#tabledrag' => array(
-        array(
+      ],
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'image-effect-order-weight',
-        ),
-      ),
-      '#attributes' => array(
+        ],
+      ],
+      '#attributes' => [
         'id' => 'image-style-effects',
-      ),
+      ],
       '#empty' => t('There are currently no effects in this style. Add one by selecting an option below.'),
       // Render effects below parent elements.
       '#weight' => 5,
-    );
+    ];
     foreach ($this->entity->getEffects() as $effect) {
       $key = $effect->getUuid();
       $form['effects'][$key]['#attributes']['class'][] = 'draggable';
       $form['effects'][$key]['#weight'] = isset($user_input['effects']) ? $user_input['effects'][$key]['weight'] : NULL;
-      $form['effects'][$key]['effect'] = array(
+      $form['effects'][$key]['effect'] = [
         '#tree' => FALSE,
-        'data' => array(
-          'label' => array(
+        'data' => [
+          'label' => [
             '#plain_text' => $effect->label(),
-          ),
-        ),
-      );
+          ],
+        ],
+      ];
 
       $summary = $effect->getSummary();
 
@@ -105,42 +105,42 @@ public function form(array $form, FormStateInterface $form_state) {
         $form['effects'][$key]['effect']['data']['summary'] = $summary;
       }
 
-      $form['effects'][$key]['weight'] = array(
+      $form['effects'][$key]['weight'] = [
         '#type' => 'weight',
-        '#title' => $this->t('Weight for @title', array('@title' => $effect->label())),
+        '#title' => $this->t('Weight for @title', ['@title' => $effect->label()]),
         '#title_display' => 'invisible',
         '#default_value' => $effect->getWeight(),
-        '#attributes' => array(
-          'class' => array('image-effect-order-weight'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['image-effect-order-weight'],
+        ],
+      ];
 
-      $links = array();
+      $links = [];
       $is_configurable = $effect instanceof ConfigurableImageEffectInterface;
       if ($is_configurable) {
-        $links['edit'] = array(
+        $links['edit'] = [
           'title' => $this->t('Edit'),
           'url' => Url::fromRoute('image.effect_edit_form', [
             'image_style' => $this->entity->id(),
             'image_effect' => $key,
           ]),
-        );
+        ];
       }
-      $links['delete'] = array(
+      $links['delete'] = [
         'title' => $this->t('Delete'),
         'url' => Url::fromRoute('image.effect_delete', [
           'image_style' => $this->entity->id(),
           'image_effect' => $key,
         ]),
-      );
-      $form['effects'][$key]['operations'] = array(
+      ];
+      $form['effects'][$key]['operations'] = [
         '#type' => 'operations',
         '#links' => $links,
-      );
+      ];
     }
 
     // Build the new image effect addition form and add it to the effect list.
-    $new_effect_options = array();
+    $new_effect_options = [];
     $effects = $this->imageEffectManager->getDefinitions();
     uasort($effects, function ($a, $b) {
       return strcasecmp($a['id'], $b['id']);
@@ -148,43 +148,43 @@ public function form(array $form, FormStateInterface $form_state) {
     foreach ($effects as $effect => $definition) {
       $new_effect_options[$effect] = $definition['label'];
     }
-    $form['effects']['new'] = array(
+    $form['effects']['new'] = [
       '#tree' => FALSE,
       '#weight' => isset($user_input['weight']) ? $user_input['weight'] : NULL,
-      '#attributes' => array('class' => array('draggable')),
-    );
-    $form['effects']['new']['effect'] = array(
-      'data' => array(
-        'new' => array(
+      '#attributes' => ['class' => ['draggable']],
+    ];
+    $form['effects']['new']['effect'] = [
+      'data' => [
+        'new' => [
           '#type' => 'select',
           '#title' => $this->t('Effect'),
           '#title_display' => 'invisible',
           '#options' => $new_effect_options,
           '#empty_option' => $this->t('Select a new effect'),
-        ),
-        array(
-          'add' => array(
+        ],
+        [
+          'add' => [
             '#type' => 'submit',
             '#value' => $this->t('Add'),
-            '#validate' => array('::effectValidate'),
-            '#submit' => array('::submitForm', '::effectSave'),
-          ),
-        ),
-      ),
+            '#validate' => ['::effectValidate'],
+            '#submit' => ['::submitForm', '::effectSave'],
+          ],
+        ],
+      ],
       '#prefix' => '<div class="image-style-new">',
       '#suffix' => '</div>',
-    );
+    ];
 
-    $form['effects']['new']['weight'] = array(
+    $form['effects']['new']['weight'] = [
       '#type' => 'weight',
       '#title' => $this->t('Weight for new effect'),
       '#title_display' => 'invisible',
       '#default_value' => count($this->entity->getEffects()) + 1,
-      '#attributes' => array('class' => array('image-effect-order-weight')),
-    );
-    $form['effects']['new']['operations'] = array(
-      'data' => array(),
-    );
+      '#attributes' => ['class' => ['image-effect-order-weight']],
+    ];
+    $form['effects']['new']['operations'] = [
+      'data' => [],
+    ];
 
     return parent::form($form, $form_state);
   }
@@ -211,20 +211,20 @@ public function effectSave($form, FormStateInterface $form_state) {
     if (is_subclass_of($effect['class'], '\Drupal\image\ConfigurableImageEffectInterface')) {
       $form_state->setRedirect(
         'image.effect_add_form',
-        array(
+        [
           'image_style' => $this->entity->id(),
           'image_effect' => $form_state->getValue('new'),
-        ),
-        array('query' => array('weight' => $form_state->getValue('weight')))
+        ],
+        ['query' => ['weight' => $form_state->getValue('weight')]]
       );
     }
     // If there's no form, immediately add the image effect.
     else {
-      $effect = array(
+      $effect = [
         'id' => $effect['id'],
-        'data' => array(),
+        'data' => [],
         'weight' => $form_state->getValue('weight'),
-      );
+      ];
       $effect_id = $this->entity->addImageEffect($effect);
       $this->entity->save();
       if (!empty($effect_id)) {
diff --git a/core/modules/image/src/Form/ImageStyleFlushForm.php b/core/modules/image/src/Form/ImageStyleFlushForm.php
index 5d4b2dc..1326f88 100644
--- a/core/modules/image/src/Form/ImageStyleFlushForm.php
+++ b/core/modules/image/src/Form/ImageStyleFlushForm.php
@@ -14,7 +14,7 @@ class ImageStyleFlushForm extends EntityConfirmFormBase {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to apply the updated %name image effect to all images?', array('%name' => $this->entity->label()));
+    return $this->t('Are you sure you want to apply the updated %name image effect to all images?', ['%name' => $this->entity->label()]);
   }
 
   /**
@@ -43,7 +43,7 @@ public function getCancelUrl() {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->entity->flush();
-    drupal_set_message($this->t('The image style %name has been flushed.', array('%name' => $this->entity->label())));
+    drupal_set_message($this->t('The image style %name has been flushed.', ['%name' => $this->entity->label()]));
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
 
diff --git a/core/modules/image/src/Form/ImageStyleFormBase.php b/core/modules/image/src/Form/ImageStyleFormBase.php
index dfdcca4..bf3210a 100644
--- a/core/modules/image/src/Form/ImageStyleFormBase.php
+++ b/core/modules/image/src/Form/ImageStyleFormBase.php
@@ -50,20 +50,20 @@ public static function create(ContainerInterface $container) {
    */
   public function form(array $form, FormStateInterface $form_state) {
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Image style name'),
       '#default_value' => $this->entity->label(),
       '#required' => TRUE,
-    );
-    $form['name'] = array(
+    ];
+    $form['name'] = [
       '#type' => 'machine_name',
-      '#machine_name' => array(
-        'exists' => array($this->imageStyleStorage, 'load'),
-      ),
+      '#machine_name' => [
+        'exists' => [$this->imageStyleStorage, 'load'],
+      ],
       '#default_value' => $this->entity->id(),
       '#required' => TRUE,
-    );
+    ];
 
     return parent::form($form, $form_state);
   }
diff --git a/core/modules/image/src/ImageEffectBase.php b/core/modules/image/src/ImageEffectBase.php
index 8e0d9c2..58be370 100644
--- a/core/modules/image/src/ImageEffectBase.php
+++ b/core/modules/image/src/ImageEffectBase.php
@@ -85,14 +85,14 @@ public function getDerivativeExtension($extension) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    return array(
+    return [
       '#markup' => '',
-      '#effect' => array(
+      '#effect' => [
         'id' => $this->pluginDefinition['id'],
         'label' => $this->label(),
         'description' => $this->pluginDefinition['description'],
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -128,23 +128,23 @@ public function getWeight() {
    * {@inheritdoc}
    */
   public function getConfiguration() {
-    return array(
+    return [
       'uuid' => $this->getUuid(),
       'id' => $this->getPluginId(),
       'weight' => $this->getWeight(),
       'data' => $this->configuration,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function setConfiguration(array $configuration) {
-    $configuration += array(
-      'data' => array(),
+    $configuration += [
+      'data' => [],
       'uuid' => '',
       'weight' => '',
-    );
+    ];
     $this->configuration = $configuration['data'] + $this->defaultConfiguration();
     $this->uuid = $configuration['uuid'];
     $this->weight = $configuration['weight'];
@@ -155,14 +155,14 @@ public function setConfiguration(array $configuration) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   public function calculateDependencies() {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/image/src/ImageStyleListBuilder.php b/core/modules/image/src/ImageStyleListBuilder.php
index 140ed46..62651cd 100644
--- a/core/modules/image/src/ImageStyleListBuilder.php
+++ b/core/modules/image/src/ImageStyleListBuilder.php
@@ -33,15 +33,15 @@ public function buildRow(EntityInterface $entity) {
    * {@inheritdoc}
    */
   public function getDefaultOperations(EntityInterface $entity) {
-    $flush = array(
+    $flush = [
       'title' => t('Flush'),
       'weight' => 200,
       'url' => $entity->urlInfo('flush-form'),
-    );
+    ];
 
-    return parent::getDefaultOperations($entity) + array(
+    return parent::getDefaultOperations($entity) + [
       'flush' => $flush,
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatter.php b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatter.php
index b24c697..a00d9e2 100644
--- a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatter.php
+++ b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatter.php
@@ -93,10 +93,10 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'image_style' => '',
       'image_link' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -118,17 +118,17 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
         '#access' => $this->currentUser->hasPermission('administer image styles')
       ],
     ];
-    $link_types = array(
+    $link_types = [
       'content' => t('Content'),
       'file' => t('File'),
-    );
-    $element['image_link'] = array(
+    ];
+    $element['image_link'] = [
       '#title' => t('Link image to'),
       '#type' => 'select',
       '#default_value' => $this->getSetting('image_link'),
       '#empty_option' => t('Nothing'),
       '#options' => $link_types,
-    );
+    ];
 
     return $element;
   }
@@ -137,7 +137,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
     $image_styles = image_style_options(FALSE);
     // Unset possible 'No defined styles' option.
@@ -146,16 +146,16 @@ public function settingsSummary() {
     // their styles in code.
     $image_style_setting = $this->getSetting('image_style');
     if (isset($image_styles[$image_style_setting])) {
-      $summary[] = t('Image style: @style', array('@style' => $image_styles[$image_style_setting]));
+      $summary[] = t('Image style: @style', ['@style' => $image_styles[$image_style_setting]]);
     }
     else {
       $summary[] = t('Original image');
     }
 
-    $link_types = array(
+    $link_types = [
       'content' => t('Linked to content'),
       'file' => t('Linked to file'),
-    );
+    ];
     // Display this setting only if image is linked.
     $image_link_setting = $this->getSetting('image_link');
     if (isset($link_types[$image_link_setting])) {
@@ -169,7 +169,7 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
     $files = $this->getEntitiesToView($items, $langcode);
 
     // Early opt-out if the field is empty.
@@ -219,17 +219,17 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
       $item_attributes = $item->_attributes;
       unset($item->_attributes);
 
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#theme' => 'image_formatter',
         '#item' => $item,
         '#item_attributes' => $item_attributes,
         '#image_style' => $image_style_setting,
         '#url' => $url,
-        '#cache' => array(
+        '#cache' => [
           'tags' => $cache_tags,
           'contexts' => $cache_contexts,
-        ),
-      );
+        ],
+      ];
     }
 
     return $elements;
diff --git a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php
index 19b89b1..335868a 100644
--- a/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php
+++ b/core/modules/image/src/Plugin/Field/FieldFormatter/ImageFormatterBase.php
@@ -28,7 +28,7 @@ protected function getEntitiesToView(EntityReferenceFieldItemListInterface $item
         // so that the fallback image can be rendered without affecting the
         // field values in the entity being rendered.
         $items = clone $items;
-        $items->setValue(array(
+        $items->setValue([
           'target_id' => $file->id(),
           'alt' => $default_image['alt'],
           'title' => $default_image['title'],
@@ -37,7 +37,7 @@ protected function getEntitiesToView(EntityReferenceFieldItemListInterface $item
           'entity' => $file,
           '_loaded' => TRUE,
           '_is_default' => TRUE,
-        ));
+        ]);
         $file->_referringItem = $items[0];
       }
     }
diff --git a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
index d9011a8..7b8b275 100644
--- a/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
+++ b/core/modules/image/src/Plugin/Field/FieldType/ImageItem.php
@@ -55,22 +55,22 @@ class ImageItem extends FileItem {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
-      'default_image' => array(
+    return [
+      'default_image' => [
         'uuid' => NULL,
         'alt' => '',
         'title' => '',
         'width' => NULL,
         'height' => NULL,
-      ),
-    ) + parent::defaultStorageSettings();
+      ],
+    ] + parent::defaultStorageSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    $settings = array(
+    $settings = [
       'file_extensions' => 'png gif jpg jpeg',
       'alt_field' => 1,
       'alt_field_required' => 1,
@@ -78,14 +78,14 @@ public static function defaultFieldSettings() {
       'title_field_required' => 0,
       'max_resolution' => '',
       'min_resolution' => '',
-      'default_image' => array(
+      'default_image' => [
         'uuid' => NULL,
         'alt' => '',
         'title' => '',
         'width' => NULL,
         'height' => NULL,
-      ),
-    ) + parent::defaultFieldSettings();
+      ],
+    ] + parent::defaultFieldSettings();
 
     unset($settings['description_field']);
     return $settings;
@@ -95,44 +95,44 @@ public static function defaultFieldSettings() {
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'target_id' => array(
+    return [
+      'columns' => [
+        'target_id' => [
           'description' => 'The ID of the file entity.',
           'type' => 'int',
           'unsigned' => TRUE,
-        ),
-        'alt' => array(
+        ],
+        'alt' => [
           'description' => "Alternative image text, for the image's 'alt' attribute.",
           'type' => 'varchar',
           'length' => 512,
-        ),
-        'title' => array(
+        ],
+        'title' => [
           'description' => "Image title text, for the image's 'title' attribute.",
           'type' => 'varchar',
           'length' => 1024,
-        ),
-        'width' => array(
+        ],
+        'width' => [
           'description' => 'The width of the image in pixels.',
           'type' => 'int',
           'unsigned' => TRUE,
-        ),
-        'height' => array(
+        ],
+        'height' => [
           'description' => 'The height of the image in pixels.',
           'type' => 'int',
           'unsigned' => TRUE,
-        ),
-      ),
-      'indexes' => array(
-        'target_id' => array('target_id'),
-      ),
-      'foreign keys' => array(
-        'target_id' => array(
+        ],
+      ],
+      'indexes' => [
+        'target_id' => ['target_id'],
+      ],
+      'foreign keys' => [
+        'target_id' => [
           'table' => 'file_managed',
-          'columns' => array('target_id' => 'fid'),
-        ),
-      ),
-    );
+          'columns' => ['target_id' => 'fid'],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -167,7 +167,7 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $element = array();
+    $element = [];
 
     // We need the field-level 'default_image' setting, and $this->getSettings()
     // will only provide the instance-level one, so we need to explicitly fetch
@@ -175,13 +175,13 @@ public function storageSettingsForm(array &$form, FormStateInterface $form_state
     $settings = $this->getFieldDefinition()->getFieldStorageDefinition()->getSettings();
 
     $scheme_options = \Drupal::service('stream_wrapper_manager')->getNames(StreamWrapperInterface::WRITE_VISIBLE);
-    $element['uri_scheme'] = array(
+    $element['uri_scheme'] = [
       '#type' => 'radios',
       '#title' => t('Upload destination'),
       '#options' => $scheme_options,
       '#default_value' => $settings['uri_scheme'],
       '#description' => t('Select where the final files should be stored. Private file storage has significantly more overhead than public files, but allows restricted access to files within this field.'),
-    );
+    ];
 
     // Add default_image element.
     static::defaultImageForm($element, $settings);
@@ -200,101 +200,101 @@ public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
     $settings = $this->getSettings();
 
     // Add maximum and minimum resolution settings.
-    $max_resolution = explode('x', $settings['max_resolution']) + array('', '');
-    $element['max_resolution'] = array(
+    $max_resolution = explode('x', $settings['max_resolution']) + ['', ''];
+    $element['max_resolution'] = [
       '#type' => 'item',
       '#title' => t('Maximum image resolution'),
-      '#element_validate' => array(array(get_class($this), 'validateResolution')),
+      '#element_validate' => [[get_class($this), 'validateResolution']],
       '#weight' => 4.1,
       '#field_prefix' => '<div class="container-inline">',
       '#field_suffix' => '</div>',
       '#description' => t('The maximum allowed image size expressed as WIDTH×HEIGHT (e.g. 640×480). Leave blank for no restriction. If a larger image is uploaded, it will be resized to reflect the given width and height. Resizing images on upload will cause the loss of <a href="http://wikipedia.org/wiki/Exchangeable_image_file_format">EXIF data</a> in the image.'),
-    );
-    $element['max_resolution']['x'] = array(
+    ];
+    $element['max_resolution']['x'] = [
       '#type' => 'number',
       '#title' => t('Maximum width'),
       '#title_display' => 'invisible',
       '#default_value' => $max_resolution[0],
       '#min' => 1,
       '#field_suffix' => ' × ',
-    );
-    $element['max_resolution']['y'] = array(
+    ];
+    $element['max_resolution']['y'] = [
       '#type' => 'number',
       '#title' => t('Maximum height'),
       '#title_display' => 'invisible',
       '#default_value' => $max_resolution[1],
       '#min' => 1,
       '#field_suffix' => ' ' . t('pixels'),
-    );
+    ];
 
-    $min_resolution = explode('x', $settings['min_resolution']) + array('', '');
-    $element['min_resolution'] = array(
+    $min_resolution = explode('x', $settings['min_resolution']) + ['', ''];
+    $element['min_resolution'] = [
       '#type' => 'item',
       '#title' => t('Minimum image resolution'),
-      '#element_validate' => array(array(get_class($this), 'validateResolution')),
+      '#element_validate' => [[get_class($this), 'validateResolution']],
       '#weight' => 4.2,
       '#field_prefix' => '<div class="container-inline">',
       '#field_suffix' => '</div>',
       '#description' => t('The minimum allowed image size expressed as WIDTH×HEIGHT (e.g. 640×480). Leave blank for no restriction. If a smaller image is uploaded, it will be rejected.'),
-    );
-    $element['min_resolution']['x'] = array(
+    ];
+    $element['min_resolution']['x'] = [
       '#type' => 'number',
       '#title' => t('Minimum width'),
       '#title_display' => 'invisible',
       '#default_value' => $min_resolution[0],
       '#min' => 1,
       '#field_suffix' => ' × ',
-    );
-    $element['min_resolution']['y'] = array(
+    ];
+    $element['min_resolution']['y'] = [
       '#type' => 'number',
       '#title' => t('Minimum height'),
       '#title_display' => 'invisible',
       '#default_value' => $min_resolution[1],
       '#min' => 1,
       '#field_suffix' => ' ' . t('pixels'),
-    );
+    ];
 
     // Remove the description option.
     unset($element['description_field']);
 
     // Add title and alt configuration options.
-    $element['alt_field'] = array(
+    $element['alt_field'] = [
       '#type' => 'checkbox',
       '#title' => t('Enable <em>Alt</em> field'),
       '#default_value' => $settings['alt_field'],
       '#description' => t('The alt attribute may be used by search engines, screen readers, and when the image cannot be loaded. Enabling this field is recommended.'),
       '#weight' => 9,
-    );
-    $element['alt_field_required'] = array(
+    ];
+    $element['alt_field_required'] = [
       '#type' => 'checkbox',
       '#title' => t('<em>Alt</em> field required'),
       '#default_value' => $settings['alt_field_required'],
       '#description' => t('Making this field required is recommended.'),
       '#weight' => 10,
-      '#states' => array(
-        'visible' => array(
-          ':input[name="settings[alt_field]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
-    $element['title_field'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="settings[alt_field]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
+    $element['title_field'] = [
       '#type' => 'checkbox',
       '#title' => t('Enable <em>Title</em> field'),
       '#default_value' => $settings['title_field'],
       '#description' => t('The title attribute is used as a tooltip when the mouse hovers over the image. Enabling this field is not recommended as it can cause problems with screen readers.'),
       '#weight' => 11,
-    );
-    $element['title_field_required'] = array(
+    ];
+    $element['title_field_required'] = [
       '#type' => 'checkbox',
       '#title' => t('<em>Title</em> field required'),
       '#default_value' => $settings['title_field_required'],
       '#weight' => 12,
-      '#states' => array(
-        'visible' => array(
-          ':input[name="settings[title_field]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="settings[title_field]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
     // Add default_image element.
     static::defaultImageForm($element, $settings);
@@ -328,11 +328,11 @@ public function preSave() {
   public static function generateSampleValue(FieldDefinitionInterface $field_definition) {
     $random = new Random();
     $settings = $field_definition->getSettings();
-    static $images = array();
+    static $images = [];
 
     $min_resolution = empty($settings['min_resolution']) ? '100x100' : $settings['min_resolution'];
     $max_resolution = empty($settings['max_resolution']) ? '600x600' : $settings['max_resolution'];
-    $extensions = array_intersect(explode(' ', $settings['file_extensions']), array('png', 'gif', 'jpg', 'jpeg'));
+    $extensions = array_intersect(explode(' ', $settings['file_extensions']), ['png', 'gif', 'jpg', 'jpeg']);
     $extension = array_rand(array_combine($extensions, $extensions));
     // Generate a max of 5 different images.
     if (!isset($images[$extension][$min_resolution][$max_resolution]) || count($images[$extension][$min_resolution][$max_resolution]) <= 5) {
@@ -352,7 +352,7 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
         $images[$extension][$min_resolution][$max_resolution][$file->id()] = $file;
       }
       else {
-        return array();
+        return [];
       }
     }
     else {
@@ -362,13 +362,13 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
     }
 
     list($width, $height) = getimagesize($file->getFileUri());
-    $values = array(
+    $values = [
       'target_id' => $file->id(),
       'alt' => $random->sentences(4),
       'title' => $random->sentences(4),
       'width' => $width,
       'height' => $height,
-    );
+    ];
     return $values;
   }
 
@@ -377,11 +377,11 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
    */
   public static function validateResolution($element, FormStateInterface $form_state) {
     if (!empty($element['x']['#value']) || !empty($element['y']['#value'])) {
-      foreach (array('x', 'y') as $dimension) {
+      foreach (['x', 'y'] as $dimension) {
         if (!$element[$dimension]['#value']) {
           // We expect the field name placeholder value to be wrapped in t()
           // here, so it won't be escaped again as it's already marked safe.
-          $form_state->setError($element[$dimension], t('Both a height and width value must be specified in the @name field.', array('@name' => $element['#title'])));
+          $form_state->setError($element[$dimension], t('Both a height and width value must be specified in the @name field.', ['@name' => $element['#title']]));
           return;
         }
       }
@@ -401,51 +401,51 @@ public static function validateResolution($element, FormStateInterface $form_sta
    *   The field settings array.
    */
   protected function defaultImageForm(array &$element, array $settings) {
-    $element['default_image'] = array(
+    $element['default_image'] = [
       '#type' => 'details',
       '#title' => t('Default image'),
       '#open' => TRUE,
-    );
+    ];
     // Convert the stored UUID to a FID.
     $fids = [];
     $uuid = $settings['default_image']['uuid'];
     if ($uuid && ($file = $this->getEntityManager()->loadEntityByUuid('file', $uuid))) {
       $fids[0] = $file->id();
     }
-    $element['default_image']['uuid'] = array(
+    $element['default_image']['uuid'] = [
       '#type' => 'managed_file',
       '#title' => t('Image'),
       '#description' => t('Image to be shown if no image is uploaded.'),
       '#default_value' => $fids,
       '#upload_location' => $settings['uri_scheme'] . '://default_images/',
-      '#element_validate' => array(
+      '#element_validate' => [
         '\Drupal\file\Element\ManagedFile::validateManagedFile',
-        array(get_class($this), 'validateDefaultImageForm'),
-      ),
+        [get_class($this), 'validateDefaultImageForm'],
+      ],
       '#upload_validators' => $this->getUploadValidators(),
-    );
-    $element['default_image']['alt'] = array(
+    ];
+    $element['default_image']['alt'] = [
       '#type' => 'textfield',
       '#title' => t('Alternative text'),
       '#description' => t('This text will be used by screen readers, search engines, and when the image cannot be loaded.'),
       '#default_value' => $settings['default_image']['alt'],
       '#maxlength' => 512,
-    );
-    $element['default_image']['title'] = array(
+    ];
+    $element['default_image']['title'] = [
       '#type' => 'textfield',
       '#title' => t('Title'),
       '#description' => t('The title attribute is used as a tooltip when the mouse hovers over the image.'),
       '#default_value' => $settings['default_image']['title'],
       '#maxlength' => 1024,
-    );
-    $element['default_image']['width'] = array(
+    ];
+    $element['default_image']['width'] = [
       '#type' => 'value',
       '#value' => $settings['default_image']['width'],
-    );
-    $element['default_image']['height'] = array(
+    ];
+    $element['default_image']['height'] = [
       '#type' => 'value',
       '#value' => $settings['default_image']['height'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php b/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
index f881419..735cfce 100644
--- a/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
+++ b/core/modules/image/src/Plugin/Field/FieldWidget/ImageWidget.php
@@ -26,10 +26,10 @@ class ImageWidget extends FileWidget {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'progress_indicator' => 'throbber',
       'preview_image_style' => 'thumbnail',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -38,7 +38,7 @@ public static function defaultSettings() {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $element = parent::settingsForm($form, $form_state);
 
-    $element['preview_image_style'] = array(
+    $element['preview_image_style'] = [
       '#title' => t('Preview image style'),
       '#type' => 'select',
       '#options' => image_style_options(FALSE),
@@ -46,7 +46,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
       '#default_value' => $this->getSetting('preview_image_style'),
       '#description' => t('The preview image will be shown while editing the content.'),
       '#weight' => 15,
-    );
+    ];
 
     return $element;
   }
@@ -64,7 +64,7 @@ public function settingsSummary() {
     // their styles in code.
     $image_style_setting = $this->getSetting('preview_image_style');
     if (isset($image_styles[$image_style_setting])) {
-      $preview_image_style = t('Preview image style: @style', array('@style' => $image_styles[$image_style_setting]));
+      $preview_image_style = t('Preview image style: @style', ['@style' => $image_styles[$image_style_setting]]);
     }
     else {
       $preview_image_style = t('No preview');
@@ -84,12 +84,12 @@ protected function formMultipleElements(FieldItemListInterface $items, array &$f
     $elements = parent::formMultipleElements($items, $form, $form_state);
 
     $cardinality = $this->fieldDefinition->getFieldStorageDefinition()->getCardinality();
-    $file_upload_help = array(
+    $file_upload_help = [
       '#theme' => 'file_upload_help',
       '#description' => '',
       '#upload_validators' => $elements[0]['#upload_validators'],
       '#cardinality' => $cardinality,
-    );
+    ];
     if ($cardinality == 1) {
       // If there's only one field, return it as delta 0.
       if (empty($elements[0]['#default_value']['fids'])) {
@@ -114,11 +114,11 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
 
     // Add upload resolution validation.
     if ($field_settings['max_resolution'] || $field_settings['min_resolution']) {
-      $element['#upload_validators']['file_validate_image_resolution'] = array($field_settings['max_resolution'], $field_settings['min_resolution']);
+      $element['#upload_validators']['file_validate_image_resolution'] = [$field_settings['max_resolution'], $field_settings['min_resolution']];
     }
 
     // If not using custom extension validation, ensure this is an image.
-    $supported_extensions = array('png', 'gif', 'jpg', 'jpeg');
+    $supported_extensions = ['png', 'gif', 'jpg', 'jpeg'];
     $extensions = isset($element['#upload_validators']['file_validate_extensions'][0]) ? $element['#upload_validators']['file_validate_extensions'][0] : implode(' ', $supported_extensions);
     $extensions = array_intersect(explode(' ', $extensions), $supported_extensions);
     $element['#upload_validators']['file_validate_extensions'][0] = implode(' ', $extensions);
@@ -142,7 +142,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     if (!empty($default_image['uuid']) && $entity = \Drupal::entityManager()->loadEntityByUuid('file', $default_image['uuid'])) {
       $default_image['fid'] = $entity->id();
     }
-    $element['#default_image'] = !empty($default_image['fid']) ? $default_image : array();
+    $element['#default_image'] = !empty($default_image['fid']) ? $default_image : [];
 
     return $element;
   }
@@ -163,10 +163,10 @@ public static function process($element, FormStateInterface $form_state, $form)
     // Add the image preview.
     if (!empty($element['#files']) && $element['#preview_image_style']) {
       $file = reset($element['#files']);
-      $variables = array(
+      $variables = [
         'style_name' => $element['#preview_image_style'],
         'uri' => $file->getFileUri(),
-      );
+      ];
 
       // Determine image dimensions.
       if (isset($element['#value']['width']) && isset($element['#value']['height'])) {
@@ -184,43 +184,43 @@ public static function process($element, FormStateInterface $form_state, $form)
         }
       }
 
-      $element['preview'] = array(
+      $element['preview'] = [
         '#weight' => -10,
         '#theme' => 'image_style',
         '#width' => $variables['width'],
         '#height' => $variables['height'],
         '#style_name' => $variables['style_name'],
         '#uri' => $variables['uri'],
-      );
+      ];
 
       // Store the dimensions in the form so the file doesn't have to be
       // accessed again. This is important for remote files.
-      $element['width'] = array(
+      $element['width'] = [
         '#type' => 'hidden',
         '#value' => $variables['width'],
-      );
-      $element['height'] = array(
+      ];
+      $element['height'] = [
         '#type' => 'hidden',
         '#value' => $variables['height'],
-      );
+      ];
     }
     elseif (!empty($element['#default_image'])) {
       $default_image = $element['#default_image'];
       $file = File::load($default_image['fid']);
       if (!empty($file)) {
-        $element['preview'] = array(
+        $element['preview'] = [
           '#weight' => -10,
           '#theme' => 'image_style',
           '#width' => $default_image['width'],
           '#height' => $default_image['height'],
           '#style_name' => $element['#preview_image_style'],
           '#uri' => $file->getFileUri(),
-        );
+        ];
       }
     }
 
     // Add the additional alt and title fields.
-    $element['alt'] = array(
+    $element['alt'] = [
       '#title' => t('Alternative text'),
       '#type' => 'textfield',
       '#default_value' => isset($item['alt']) ? $item['alt'] : '',
@@ -230,9 +230,9 @@ public static function process($element, FormStateInterface $form_state, $form)
       '#weight' => -12,
       '#access' => (bool) $item['fids'] && $element['#alt_field'],
       '#required' => $element['#alt_field_required'],
-      '#element_validate' => $element['#alt_field_required'] == 1 ? array(array(get_called_class(), 'validateRequiredFields')) : array(),
-    );
-    $element['title'] = array(
+      '#element_validate' => $element['#alt_field_required'] == 1 ? [[get_called_class(), 'validateRequiredFields']] : [],
+    ];
+    $element['title'] = [
       '#type' => 'textfield',
       '#title' => t('Title'),
       '#default_value' => isset($item['title']) ? $item['title'] : '',
@@ -241,8 +241,8 @@ public static function process($element, FormStateInterface $form_state, $form)
       '#weight' => -11,
       '#access' => (bool) $item['fids'] && $element['#title_field'],
       '#required' => $element['#title_field_required'],
-      '#element_validate' => $element['#title_field_required'] == 1 ? array(array(get_called_class(), 'validateRequiredFields')) : array(),
-    );
+      '#element_validate' => $element['#title_field_required'] == 1 ? [[get_called_class(), 'validateRequiredFields']] : [],
+    ];
 
     return parent::process($element, $form_state, $form);
   }
diff --git a/core/modules/image/src/Plugin/ImageEffect/ConvertImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/ConvertImageEffect.php
index a462b67..28d5179 100644
--- a/core/modules/image/src/Plugin/ImageEffect/ConvertImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/ConvertImageEffect.php
@@ -23,7 +23,7 @@ class ConvertImageEffect extends ConfigurableImageEffectBase {
    */
   public function applyEffect(ImageInterface $image) {
     if (!$image->convert($this->configuration['extension'])) {
-      $this->logger->error('Image convert failed using the %toolkit toolkit on %path (%mimetype)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType()));
+      $this->logger->error('Image convert failed using the %toolkit toolkit on %path (%mimetype)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType()]);
       return FALSE;
     }
     return TRUE;
@@ -40,9 +40,9 @@ public function getDerivativeExtension($extension) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    $summary = array(
+    $summary = [
       '#markup' => Unicode::strtoupper($this->configuration['extension']),
-    );
+    ];
     $summary += parent::getSummary();
 
     return $summary;
@@ -52,9 +52,9 @@ public function getSummary() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'extension' => NULL,
-    );
+    ];
   }
 
   /**
@@ -64,15 +64,15 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $extensions = \Drupal::service('image.toolkit.manager')->getDefaultToolkit()->getSupportedExtensions();
     $options = array_combine(
       $extensions,
-      array_map(array('\Drupal\Component\Utility\Unicode', 'strtoupper'), $extensions)
+      array_map(['\Drupal\Component\Utility\Unicode', 'strtoupper'], $extensions)
     );
-    $form['extension'] = array(
+    $form['extension'] = [
       '#type' => 'select',
       '#title' => t('Extension'),
       '#default_value' => $this->configuration['extension'],
       '#required' => TRUE,
       '#options' => $options,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Plugin/ImageEffect/CropImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/CropImageEffect.php
index 3f15a0e..87536e6 100644
--- a/core/modules/image/src/Plugin/ImageEffect/CropImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/CropImageEffect.php
@@ -24,7 +24,7 @@ public function applyEffect(ImageInterface $image) {
     $x = image_filter_keyword($x, $image->getWidth(), $this->configuration['width']);
     $y = image_filter_keyword($y, $image->getHeight(), $this->configuration['height']);
     if (!$image->crop($x, $y, $this->configuration['width'], $this->configuration['height'])) {
-      $this->logger->error('Image crop failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image crop failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
@@ -34,10 +34,10 @@ public function applyEffect(ImageInterface $image) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    $summary = array(
+    $summary = [
       '#theme' => 'image_crop_summary',
       '#data' => $this->configuration,
-    );
+    ];
     $summary += parent::getSummary();
 
     return $summary;
@@ -47,9 +47,9 @@ public function getSummary() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return parent::defaultConfiguration() + array(
+    return parent::defaultConfiguration() + [
       'anchor' => 'center-center',
-    );
+    ];
   }
 
   /**
@@ -57,10 +57,10 @@ public function defaultConfiguration() {
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     $form = parent::buildConfigurationForm($form, $form_state);
-    $form['anchor'] = array(
+    $form['anchor'] = [
       '#type' => 'radios',
       '#title' => t('Anchor'),
-      '#options' => array(
+      '#options' => [
         'left-top' => t('Top left'),
         'center-top' => t('Top center'),
         'right-top' => t('Top right'),
@@ -70,11 +70,11 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
         'left-bottom' => t('Bottom left'),
         'center-bottom' => t('Bottom center'),
         'right-bottom' => t('Bottom right'),
-      ),
+      ],
       '#theme' => 'image_anchor',
       '#default_value' => $this->configuration['anchor'],
       '#description' => t('The part of the image that will be retained during the crop.'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Plugin/ImageEffect/DesaturateImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/DesaturateImageEffect.php
index 26afce3..d34161e 100644
--- a/core/modules/image/src/Plugin/ImageEffect/DesaturateImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/DesaturateImageEffect.php
@@ -21,7 +21,7 @@ class DesaturateImageEffect extends ImageEffectBase {
    */
   public function applyEffect(ImageInterface $image) {
     if (!$image->desaturate()) {
-      $this->logger->error('Image desaturate failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image desaturate failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
diff --git a/core/modules/image/src/Plugin/ImageEffect/ResizeImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/ResizeImageEffect.php
index 04a59d6..dba3429 100644
--- a/core/modules/image/src/Plugin/ImageEffect/ResizeImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/ResizeImageEffect.php
@@ -22,7 +22,7 @@ class ResizeImageEffect extends ConfigurableImageEffectBase {
    */
   public function applyEffect(ImageInterface $image) {
     if (!$image->resize($this->configuration['width'], $this->configuration['height'])) {
-      $this->logger->error('Image resize failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image resize failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
@@ -41,10 +41,10 @@ public function transformDimensions(array &$dimensions, $uri) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    $summary = array(
+    $summary = [
       '#theme' => 'image_resize_summary',
       '#data' => $this->configuration,
-    );
+    ];
     $summary += parent::getSummary();
 
     return $summary;
@@ -54,32 +54,32 @@ public function getSummary() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'width' => NULL,
       'height' => NULL,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['width'] = array(
+    $form['width'] = [
       '#type' => 'number',
       '#title' => t('Width'),
       '#default_value' => $this->configuration['width'],
       '#field_suffix' => ' ' . t('pixels'),
       '#required' => TRUE,
       '#min' => 1,
-    );
-    $form['height'] = array(
+    ];
+    $form['height'] = [
       '#type' => 'number',
       '#title' => t('Height'),
       '#default_value' => $this->configuration['height'],
       '#field_suffix' => ' ' . t('pixels'),
       '#required' => TRUE,
       '#min' => 1,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Plugin/ImageEffect/RotateImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/RotateImageEffect.php
index df2da77..7e394a3 100644
--- a/core/modules/image/src/Plugin/ImageEffect/RotateImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/RotateImageEffect.php
@@ -29,7 +29,7 @@ public function applyEffect(ImageInterface $image) {
     }
 
     if (!$image->rotate($this->configuration['degrees'], $this->configuration['bgcolor'])) {
-      $this->logger->error('Image rotate failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image rotate failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
@@ -56,10 +56,10 @@ public function transformDimensions(array &$dimensions, $uri) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    $summary = array(
+    $summary = [
       '#theme' => 'image_rotate_summary',
       '#data' => $this->configuration,
-    );
+    ];
     $summary += parent::getSummary();
 
     return $summary;
@@ -69,39 +69,39 @@ public function getSummary() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'degrees' => 0,
       'bgcolor' => NULL,
       'random' => FALSE,
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['degrees'] = array(
+    $form['degrees'] = [
       '#type' => 'number',
       '#default_value' => $this->configuration['degrees'],
       '#title' => t('Rotation angle'),
       '#description' => t('The number of degrees the image should be rotated. Positive numbers are clockwise, negative are counter-clockwise.'),
       '#field_suffix' => '°',
       '#required' => TRUE,
-    );
-    $form['bgcolor'] = array(
+    ];
+    $form['bgcolor'] = [
       '#type' => 'textfield',
       '#default_value' => $this->configuration['bgcolor'],
       '#title' => t('Background color'),
       '#description' => t('The background color to use for exposed areas of the image. Use web-style hex colors (#FFFFFF for white, #000000 for black). Leave blank for transparency on image types that support it.'),
       '#size' => 7,
       '#maxlength' => 7,
-    );
-    $form['random'] = array(
+    ];
+    $form['random'] = [
       '#type' => 'checkbox',
       '#default_value' => $this->configuration['random'],
       '#title' => t('Randomize'),
       '#description' => t('Randomize the rotation angle for each image. The angle specified above is used as a maximum.'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Plugin/ImageEffect/ScaleAndCropImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/ScaleAndCropImageEffect.php
index f2ab323..57ea0b2 100644
--- a/core/modules/image/src/Plugin/ImageEffect/ScaleAndCropImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/ScaleAndCropImageEffect.php
@@ -20,7 +20,7 @@ class ScaleAndCropImageEffect extends ResizeImageEffect {
    */
   public function applyEffect(ImageInterface $image) {
     if (!$image->scaleAndCrop($this->configuration['width'], $this->configuration['height'])) {
-      $this->logger->error('Image scale and crop failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image scale and crop failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
diff --git a/core/modules/image/src/Plugin/ImageEffect/ScaleImageEffect.php b/core/modules/image/src/Plugin/ImageEffect/ScaleImageEffect.php
index a035df6..bfb6d94 100644
--- a/core/modules/image/src/Plugin/ImageEffect/ScaleImageEffect.php
+++ b/core/modules/image/src/Plugin/ImageEffect/ScaleImageEffect.php
@@ -22,7 +22,7 @@ class ScaleImageEffect extends ResizeImageEffect {
    */
   public function applyEffect(ImageInterface $image) {
     if (!$image->scale($this->configuration['width'], $this->configuration['height'], $this->configuration['upscale'])) {
-      $this->logger->error('Image scale failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', array('%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()));
+      $this->logger->error('Image scale failed using the %toolkit toolkit on %path (%mimetype, %dimensions)', ['%toolkit' => $image->getToolkitId(), '%path' => $image->getSource(), '%mimetype' => $image->getMimeType(), '%dimensions' => $image->getWidth() . 'x' . $image->getHeight()]);
       return FALSE;
     }
     return TRUE;
@@ -41,10 +41,10 @@ public function transformDimensions(array &$dimensions, $uri) {
    * {@inheritdoc}
    */
   public function getSummary() {
-    $summary = array(
+    $summary = [
       '#theme' => 'image_scale_summary',
       '#data' => $this->configuration,
-    );
+    ];
     $summary += parent::getSummary();
 
     return $summary;
@@ -54,9 +54,9 @@ public function getSummary() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return parent::defaultConfiguration() + array(
+    return parent::defaultConfiguration() + [
       'upscale' => FALSE,
-    );
+    ];
   }
 
   /**
@@ -66,12 +66,12 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $form = parent::buildConfigurationForm($form, $form_state);
     $form['width']['#required'] = FALSE;
     $form['height']['#required'] = FALSE;
-    $form['upscale'] = array(
+    $form['upscale'] = [
       '#type' => 'checkbox',
       '#default_value' => $this->configuration['upscale'],
       '#title' => t('Allow Upscaling'),
       '#description' => t('Let scale make images larger than their original size.'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/image/src/Plugin/migrate/destination/EntityImageStyle.php b/core/modules/image/src/Plugin/migrate/destination/EntityImageStyle.php
index 20dabe7..3fc1e7f 100644
--- a/core/modules/image/src/Plugin/migrate/destination/EntityImageStyle.php
+++ b/core/modules/image/src/Plugin/migrate/destination/EntityImageStyle.php
@@ -46,7 +46,7 @@ public function import(Row $row, array $old_destination_id_values = []) {
 
     $style->save();
 
-    return array($style->id());
+    return [$style->id()];
   }
 
 }
diff --git a/core/modules/image/src/Plugin/migrate/source/d6/ImageCachePreset.php b/core/modules/image/src/Plugin/migrate/source/d6/ImageCachePreset.php
index 4266ff1..aade9ab 100644
--- a/core/modules/image/src/Plugin/migrate/source/d6/ImageCachePreset.php
+++ b/core/modules/image/src/Plugin/migrate/source/d6/ImageCachePreset.php
@@ -47,7 +47,7 @@ public function getIds() {
    * {@inheritdoc}
    */
   public function prepareRow(Row $row) {
-    $actions = array();
+    $actions = [];
 
     $results = $this->select('imagecache_action', 'ica')
       ->fields('ica')
diff --git a/core/modules/image/src/Plugin/migrate/source/d7/ImageStyles.php b/core/modules/image/src/Plugin/migrate/source/d7/ImageStyles.php
index d680c78..dab62f3 100644
--- a/core/modules/image/src/Plugin/migrate/source/d7/ImageStyles.php
+++ b/core/modules/image/src/Plugin/migrate/source/d7/ImageStyles.php
@@ -47,7 +47,7 @@ public function getIds() {
    * {@inheritdoc}
    */
   public function prepareRow(Row $row) {
-    $effects = array();
+    $effects = [];
 
     $results = $this->select('image_effects', 'ie')
       ->fields('ie')
diff --git a/core/modules/image/src/Routing/ImageStyleRoutes.php b/core/modules/image/src/Routing/ImageStyleRoutes.php
index 66f6bfa..71960fe 100644
--- a/core/modules/image/src/Routing/ImageStyleRoutes.php
+++ b/core/modules/image/src/Routing/ImageStyleRoutes.php
@@ -45,7 +45,7 @@ public static function create(ContainerInterface $container) {
    *   An array of route objects.
    */
   public function routes() {
-    $routes = array();
+    $routes = [];
     // Generate image derivatives of publicly available files. If clean URLs are
     // disabled image derivatives will always be served through the menu system.
     // If clean URLs are enabled and the image derivative already exists, PHP
@@ -54,12 +54,12 @@ public function routes() {
 
     $routes['image.style_public'] = new Route(
       '/' . $directory_path . '/styles/{image_style}/{scheme}',
-      array(
+      [
         '_controller' => 'Drupal\image\Controller\ImageStyleDownloadController::deliver',
-      ),
-      array(
+      ],
+      [
         '_access' => 'TRUE',
-      )
+      ]
     );
     return $routes;
   }
diff --git a/core/modules/image/src/Tests/FileMoveTest.php b/core/modules/image/src/Tests/FileMoveTest.php
index 1957994..ce28a0b 100644
--- a/core/modules/image/src/Tests/FileMoveTest.php
+++ b/core/modules/image/src/Tests/FileMoveTest.php
@@ -18,7 +18,7 @@ class FileMoveTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('image');
+  public static $modules = ['image'];
 
   /**
    * Tests moving a randomly generated image.
diff --git a/core/modules/image/src/Tests/ImageAdminStylesTest.php b/core/modules/image/src/Tests/ImageAdminStylesTest.php
index 4b7ff43..c8e92d3 100644
--- a/core/modules/image/src/Tests/ImageAdminStylesTest.php
+++ b/core/modules/image/src/Tests/ImageAdminStylesTest.php
@@ -47,14 +47,14 @@ function getImageCount(ImageStyleInterface $style) {
   function testNumericStyleName() {
     $style_name = rand();
     $style_label = $this->randomString();
-    $edit = array(
+    $edit = [
       'name' => $style_name,
       'label' => $style_label,
-    );
+    ];
     $this->drupalPostForm('admin/config/media/image-styles/add', $edit, t('Create new style'));
-    $this->assertRaw(t('Style %name was created.', array('%name' => $style_label)));
+    $this->assertRaw(t('Style %name was created.', ['%name' => $style_label]));
     $options = image_style_options();
-    $this->assertTrue(array_key_exists($style_name, $options), format_string('Array key %key exists.', array('%key' => $style_name)));
+    $this->assertTrue(array_key_exists($style_name, $options), format_string('Array key %key exists.', ['%key' => $style_name]));
   }
 
   /**
@@ -67,43 +67,43 @@ function testStyle() {
     $style_name = strtolower($this->randomMachineName(10));
     $style_label = $this->randomString();
     $style_path = $admin_path . '/manage/' . $style_name;
-    $effect_edits = array(
-      'image_resize' => array(
+    $effect_edits = [
+      'image_resize' => [
         'width' => 100,
         'height' => 101,
-      ),
-      'image_scale' => array(
+      ],
+      'image_scale' => [
         'width' => 110,
         'height' => 111,
         'upscale' => 1,
-      ),
-      'image_scale_and_crop' => array(
+      ],
+      'image_scale_and_crop' => [
         'width' => 120,
         'height' => 121,
-      ),
-      'image_crop' => array(
+      ],
+      'image_crop' => [
         'width' => 130,
         'height' => 131,
         'anchor' => 'left-top',
-      ),
-      'image_desaturate' => array(
+      ],
+      'image_desaturate' => [
         // No options for desaturate.
-      ),
-      'image_rotate' => array(
+      ],
+      'image_rotate' => [
         'degrees' => 5,
         'random' => 1,
         'bgcolor' => '#FFFF00',
-      ),
-    );
+      ],
+    ];
 
     // Add style form.
 
-    $edit = array(
+    $edit = [
       'name' => $style_name,
       'label' => $style_label,
-    );
+    ];
     $this->drupalPostForm($admin_path . '/add', $edit, t('Create new style'));
-    $this->assertRaw(t('Style %name was created.', array('%name' => $style_label)));
+    $this->assertRaw(t('Style %name was created.', ['%name' => $style_label]));
 
     // Ensure that the expected entity operations are there.
     $this->drupalGet($admin_path);
@@ -115,12 +115,12 @@ function testStyle() {
 
     // Add each sample effect to the style.
     foreach ($effect_edits as $effect => $edit) {
-      $edit_data = array();
+      $edit_data = [];
       foreach ($edit as $field => $value) {
         $edit_data['data[' . $field . ']'] = $value;
       }
       // Add the effect.
-      $this->drupalPostForm($style_path, array('new' => $effect), t('Add'));
+      $this->drupalPostForm($style_path, ['new' => $effect], t('Add'));
       if (!empty($edit)) {
         $this->drupalPostForm(NULL, $edit_data, t('Add effect'));
       }
@@ -140,13 +140,13 @@ function testStyle() {
 
     // Confirm that all effects on the image style have settings that match
     // what was saved.
-    $uuids = array();
+    $uuids = [];
     foreach ($style->getEffects() as $uuid => $effect) {
       // Store the uuid for later use.
       $uuids[$effect->getPluginId()] = $uuid;
       $effect_configuration = $effect->getConfiguration();
       foreach ($effect_edits[$effect->getPluginId()] as $field => $value) {
-        $this->assertEqual($value, $effect_configuration['data'][$field], SafeMarkup::format('The %field field in the %effect effect has the correct value of %value.', array('%field' => $field, '%effect' => $effect->getPluginId(), '%value' => $value)));
+        $this->assertEqual($value, $effect_configuration['data'][$field], SafeMarkup::format('The %field field in the %effect effect has the correct value of %value.', ['%field' => $field, '%effect' => $effect->getPluginId(), '%value' => $value]));
       }
     }
 
@@ -154,10 +154,10 @@ function testStyle() {
     foreach (array_keys($effect_edits) as $effect_name) {
       $this->assertTrue(isset($uuids[$effect_name]), format_string(
         'A %effect_name effect was saved with ID %uuid',
-        array(
+        [
           '%effect_name' => $effect_name,
           '%uuid' => $uuids[$effect_name],
-        )));
+        ]));
     }
 
     // Image style overview form (ordering and renaming).
@@ -180,10 +180,10 @@ function testStyle() {
     $style_name = strtolower($this->randomMachineName(10));
     $style_label = $this->randomMachineName();
     $weight = count($effect_edits);
-    $edit = array(
+    $edit = [
       'name' => $style_name,
       'label' => $style_label,
-    );
+    ];
     foreach ($style->getEffects() as $uuid => $effect) {
       $edit['effects[' . $uuid . '][weight]'] = $weight;
       $weight--;
@@ -191,7 +191,7 @@ function testStyle() {
 
     // Create an image to make sure it gets flushed after saving.
     $image_path = $this->createSampleImage($style);
-    $this->assertEqual($this->getImageCount($style), 1, format_string('Image style %style image %file successfully generated.', array('%style' => $style->label(), '%file' => $image_path)));
+    $this->assertEqual($this->getImageCount($style), 1, format_string('Image style %style image %file successfully generated.', ['%style' => $style->label(), '%file' => $image_path]));
 
     $this->drupalPostForm($style_path, $edit, t('Update style'));
 
@@ -200,13 +200,13 @@ function testStyle() {
 
     // Check that the URL was updated.
     $this->drupalGet($style_path);
-    $this->assertTitle(t('Edit style @name | Drupal', array('@name' => $style_label)));
-    $this->assertResponse(200, format_string('Image style %original renamed to %new', array('%original' => $style->id(), '%new' => $style_name)));
+    $this->assertTitle(t('Edit style @name | Drupal', ['@name' => $style_label]));
+    $this->assertResponse(200, format_string('Image style %original renamed to %new', ['%original' => $style->id(), '%new' => $style_name]));
 
     // Check that the image was flushed after updating the style.
     // This is especially important when renaming the style. Make sure that
     // the old image directory has been deleted.
-    $this->assertEqual($this->getImageCount($style), 0, format_string('Image style %style was flushed after renaming the style and updating the order of effects.', array('%style' => $style->label())));
+    $this->assertEqual($this->getImageCount($style), 0, format_string('Image style %style was flushed after renaming the style and updating the order of effects.', ['%style' => $style->label()]));
 
     // Load the style by the new name with the new weights.
     $style = ImageStyle::load($style_name);
@@ -227,14 +227,14 @@ function testStyle() {
 
     // Create an image to make sure it gets flushed after deleting an effect.
     $image_path = $this->createSampleImage($style);
-    $this->assertEqual($this->getImageCount($style), 1, format_string('Image style %style image %file successfully generated.', array('%style' => $style->label(), '%file' => $image_path)));
+    $this->assertEqual($this->getImageCount($style), 1, format_string('Image style %style image %file successfully generated.', ['%style' => $style->label(), '%file' => $image_path]));
 
     // Delete the 'image_crop' effect from the style.
-    $this->drupalPostForm($style_path . '/effects/' . $uuids['image_crop'] . '/delete', array(), t('Delete'));
+    $this->drupalPostForm($style_path . '/effects/' . $uuids['image_crop'] . '/delete', [], t('Delete'));
     // Confirm that the form submission was successful.
     $this->assertResponse(200);
     $image_crop_effect = $style->getEffect($uuids['image_crop']);
-    $this->assertRaw(t('The image effect %name has been deleted.', array('%name' => $image_crop_effect->label())));
+    $this->assertRaw(t('The image effect %name has been deleted.', ['%name' => $image_crop_effect->label()]));
     // Confirm that there is no longer a link to the effect.
     $this->assertNoLinkByHref($style_path . '/effects/' . $uuids['image_crop'] . '/delete');
     // Refresh the image style information and verify that the effect was
@@ -243,18 +243,18 @@ function testStyle() {
     $style = $entity_type_manager->getStorage('image_style')->loadUnchanged($style->id());
     $this->assertFalse($style->getEffects()->has($uuids['image_crop']), format_string(
       'Effect with ID %uuid no longer found on image style %style',
-      array(
+      [
         '%uuid' => $uuids['image_crop'],
         '%style' => $style->label(),
-      )));
+      ]));
 
     // Additional test on Rotate effect, for transparent background.
-    $edit = array(
+    $edit = [
       'data[degrees]' => 5,
       'data[random]' => 0,
       'data[bgcolor]' => '',
-    );
-    $this->drupalPostForm($style_path, array('new' => 'image_rotate'), t('Add'));
+    ];
+    $this->drupalPostForm($style_path, ['new' => 'image_rotate'], t('Add'));
     $this->drupalPostForm(NULL, $edit, t('Add effect'));
     $entity_type_manager = $this->container->get('entity_type.manager');
     $style = $entity_type_manager->getStorage('image_style')->loadUnchanged($style_name);
@@ -263,13 +263,13 @@ function testStyle() {
     // Style deletion form.
 
     // Delete the style.
-    $this->drupalPostForm($style_path . '/delete', array(), t('Delete'));
+    $this->drupalPostForm($style_path . '/delete', [], t('Delete'));
 
     // Confirm the style directory has been removed.
     $directory = file_default_scheme() . '://styles/' . $style_name;
-    $this->assertFalse(is_dir($directory), format_string('Image style %style directory removed on style deletion.', array('%style' => $style->label())));
+    $this->assertFalse(is_dir($directory), format_string('Image style %style directory removed on style deletion.', ['%style' => $style->label()]));
 
-    $this->assertFalse(ImageStyle::load($style_name), format_string('Image style %style successfully deleted.', array('%style' => $style->label())));
+    $this->assertFalse(ImageStyle::load($style_name), format_string('Image style %style successfully deleted.', ['%style' => $style->label()]));
 
     // Test empty text when there are no image styles.
 
@@ -334,7 +334,7 @@ function testStyleReplacement() {
     // Create a new style.
     $style_name = strtolower($this->randomMachineName(10));
     $style_label = $this->randomString();
-    $style = ImageStyle::create(array('name' => $style_name, 'label' => $style_label));
+    $style = ImageStyle::create(['name' => $style_name, 'label' => $style_label]);
     $style->save();
     $style_path = 'admin/config/media/image-styles/manage/';
 
@@ -342,10 +342,10 @@ function testStyleReplacement() {
     $field_name = strtolower($this->randomMachineName(10));
     $this->createImageField($field_name, 'article');
     entity_get_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'image',
-        'settings' => array('image_style' => $style_name),
-      ))
+        'settings' => ['image_style' => $style_name],
+      ])
       ->save();
 
     // Create a new node with an image attached.
@@ -359,17 +359,17 @@ function testStyleReplacement() {
 
     // Test that image is displayed using newly created style.
     $this->drupalGet('node/' . $nid);
-    $this->assertRaw(file_url_transform_relative($style->buildUrl($original_uri)), format_string('Image displayed using style @style.', array('@style' => $style_name)));
+    $this->assertRaw(file_url_transform_relative($style->buildUrl($original_uri)), format_string('Image displayed using style @style.', ['@style' => $style_name]));
 
     // Rename the style and make sure the image field is updated.
     $new_style_name = strtolower($this->randomMachineName(10));
     $new_style_label = $this->randomString();
-    $edit = array(
+    $edit = [
       'name' => $new_style_name,
       'label' => $new_style_label,
-    );
+    ];
     $this->drupalPostForm($style_path . $style_name, $edit, t('Update style'));
-    $this->assertText(t('Changes to the style have been saved.'), format_string('Style %name was renamed to %new_name.', array('%name' => $style_name, '%new_name' => $new_style_name)));
+    $this->assertText(t('Changes to the style have been saved.'), format_string('Style %name was renamed to %new_name.', ['%name' => $style_name, '%new_name' => $new_style_name]));
     $this->drupalGet('node/' . $nid);
 
     // Reload the image style using the new name.
@@ -377,11 +377,11 @@ function testStyleReplacement() {
     $this->assertRaw(file_url_transform_relative($style->buildUrl($original_uri)), 'Image displayed using style replacement style.');
 
     // Delete the style and choose a replacement style.
-    $edit = array(
+    $edit = [
       'replacement' => 'thumbnail',
-    );
+    ];
     $this->drupalPostForm($style_path . $new_style_name . '/delete', $edit, t('Delete'));
-    $message = t('The image style %name has been deleted.', array('%name' => $new_style_label));
+    $message = t('The image style %name has been deleted.', ['%name' => $new_style_label]);
     $this->assertRaw($message);
 
     $replacement_style = ImageStyle::load('thumbnail');
@@ -396,14 +396,14 @@ function testEditEffect() {
     // Add a scale effect.
     $style_name = 'test_style_effect_edit';
     $this->drupalGet('admin/config/media/image-styles/add');
-    $this->drupalPostForm(NULL, array('label' => 'Test style effect edit', 'name' => $style_name), t('Create new style'));
-    $this->drupalPostForm(NULL, array('new' => 'image_scale_and_crop'), t('Add'));
-    $this->drupalPostForm(NULL, array('data[width]' => '300', 'data[height]' => '200'), t('Add effect'));
+    $this->drupalPostForm(NULL, ['label' => 'Test style effect edit', 'name' => $style_name], t('Create new style'));
+    $this->drupalPostForm(NULL, ['new' => 'image_scale_and_crop'], t('Add'));
+    $this->drupalPostForm(NULL, ['data[width]' => '300', 'data[height]' => '200'], t('Add effect'));
     $this->assertText(t('Scale and crop 300×200'));
 
     // There should normally be only one edit link on this page initially.
     $this->clickLink(t('Edit'));
-    $this->drupalPostForm(NULL, array('data[width]' => '360', 'data[height]' => '240'), t('Update effect'));
+    $this->drupalPostForm(NULL, ['data[width]' => '360', 'data[height]' => '240'], t('Update effect'));
     $this->assertText(t('Scale and crop 360×240'));
 
     // Check that the previous effect is replaced.
@@ -411,17 +411,17 @@ function testEditEffect() {
 
     // Add another scale effect.
     $this->drupalGet('admin/config/media/image-styles/add');
-    $this->drupalPostForm(NULL, array('label' => 'Test style scale edit scale', 'name' => 'test_style_scale_edit_scale'), t('Create new style'));
-    $this->drupalPostForm(NULL, array('new' => 'image_scale'), t('Add'));
-    $this->drupalPostForm(NULL, array('data[width]' => '12', 'data[height]' => '19'), t('Add effect'));
+    $this->drupalPostForm(NULL, ['label' => 'Test style scale edit scale', 'name' => 'test_style_scale_edit_scale'], t('Create new style'));
+    $this->drupalPostForm(NULL, ['new' => 'image_scale'], t('Add'));
+    $this->drupalPostForm(NULL, ['data[width]' => '12', 'data[height]' => '19'], t('Add effect'));
 
     // Edit the scale effect that was just added.
     $this->clickLink(t('Edit'));
-    $this->drupalPostForm(NULL, array('data[width]' => '24', 'data[height]' => '19'), t('Update effect'));
-    $this->drupalPostForm(NULL, array('new' => 'image_scale'), t('Add'));
+    $this->drupalPostForm(NULL, ['data[width]' => '24', 'data[height]' => '19'], t('Update effect'));
+    $this->drupalPostForm(NULL, ['new' => 'image_scale'], t('Add'));
 
     // Add another scale effect and make sure both exist.
-    $this->drupalPostForm(NULL, array('data[width]' => '12', 'data[height]' => '19'), t('Add effect'));
+    $this->drupalPostForm(NULL, ['data[width]' => '12', 'data[height]' => '19'], t('Add effect'));
     $this->assertText(t('Scale 24×19'));
     $this->assertText(t('Scale 12×19'));
 
@@ -439,7 +439,7 @@ public function testFlushUserInterface() {
 
     // Create a new style.
     $style_name = strtolower($this->randomMachineName(10));
-    $style = ImageStyle::create(array('name' => $style_name, 'label' => $this->randomString()));
+    $style = ImageStyle::create(['name' => $style_name, 'label' => $this->randomString()]);
     $style->save();
 
     // Create an image to make sure it gets flushed.
@@ -456,7 +456,7 @@ public function testFlushUserInterface() {
     $this->assertLinkByHref($flush_path);
 
     // Flush the image style derivatives using the user interface.
-    $this->drupalPostForm($flush_path, array(), t('Flush'));
+    $this->drupalPostForm($flush_path, [], t('Flush'));
 
     // The derivative image file should have been deleted.
     $this->assertEqual($this->getImageCount($style), 0);
@@ -469,17 +469,17 @@ function testConfigImport() {
     // Create a new style.
     $style_name = strtolower($this->randomMachineName(10));
     $style_label = $this->randomString();
-    $style = ImageStyle::create(array('name' => $style_name, 'label' => $style_label));
+    $style = ImageStyle::create(['name' => $style_name, 'label' => $style_label]);
     $style->save();
 
     // Create an image field that uses the new style.
     $field_name = strtolower($this->randomMachineName(10));
     $this->createImageField($field_name, 'article');
     entity_get_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'image',
-        'settings' => array('image_style' => $style_name),
-      ))
+        'settings' => ['image_style' => $style_name],
+      ])
       ->save();
 
     // Create a new node with an image attached.
@@ -493,7 +493,7 @@ function testConfigImport() {
 
     // Test that image is displayed using newly created style.
     $this->drupalGet('node/' . $nid);
-    $this->assertRaw(file_url_transform_relative($style->buildUrl($original_uri)), format_string('Image displayed using style @style.', array('@style' => $style_name)));
+    $this->assertRaw(file_url_transform_relative($style->buildUrl($original_uri)), format_string('Image displayed using style @style.', ['@style' => $style_name]));
 
     // Copy config to sync, and delete the image style.
     $sync = $this->container->get('config.storage.sync');
@@ -515,7 +515,7 @@ function testConfigImport() {
    * Tests access for the image style listing.
    */
   public function testImageStyleAccess() {
-    $style = ImageStyle::create(array('name' => 'style_foo', 'label' => $this->randomString()));
+    $style = ImageStyle::create(['name' => 'style_foo', 'label' => $this->randomString()]);
     $style->save();
 
     $this->drupalGet('admin/config/media/image-styles');
diff --git a/core/modules/image/src/Tests/ImageDimensionsTest.php b/core/modules/image/src/Tests/ImageDimensionsTest.php
index 6f73042..365a6aa 100644
--- a/core/modules/image/src/Tests/ImageDimensionsTest.php
+++ b/core/modules/image/src/Tests/ImageDimensionsTest.php
@@ -17,7 +17,7 @@ class ImageDimensionsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'image_module_test');
+  public static $modules = ['image', 'image_module_test'];
 
   protected $profile = 'testing';
 
@@ -33,33 +33,33 @@ function testImageDimensions() {
 
     // Create a style.
     /** @var $style \Drupal\image\ImageStyleInterface */
-    $style = ImageStyle::create(array('name' => 'test', 'label' => 'Test'));
+    $style = ImageStyle::create(['name' => 'test', 'label' => 'Test']);
     $style->save();
     $generated_uri = 'public://styles/test/public/' . \Drupal::service('file_system')->basename($original_uri);
     $url = file_url_transform_relative($style->buildUrl($original_uri));
 
-    $variables = array(
+    $variables = [
       '#theme' => 'image_style',
       '#style_name' => 'test',
       '#uri' => $original_uri,
       '#width' => 40,
       '#height' => 20,
-    );
+    ];
     // Verify that the original image matches the hard-coded values.
     $image_file = $image_factory->get($original_uri);
     $this->assertEqual($image_file->getWidth(), $variables['#width']);
     $this->assertEqual($image_file->getHeight(), $variables['#height']);
 
     // Scale an image that is wider than it is high.
-    $effect = array(
+    $effect = [
       'id' => 'image_scale',
-      'data' => array(
+      'data' => [
         'width' => 120,
         'height' => 90,
         'upscale' => TRUE,
-      ),
+      ],
       'weight' => 0,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -73,14 +73,14 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 60);
 
     // Rotate 90 degrees anticlockwise.
-    $effect = array(
+    $effect = [
       'id' => 'image_rotate',
-      'data' => array(
+      'data' => [
         'degrees' => -90,
         'random' => FALSE,
-      ),
+      ],
       'weight' => 1,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -94,15 +94,15 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 120);
 
     // Scale an image that is higher than it is wide (rotated by previous effect).
-    $effect = array(
+    $effect = [
       'id' => 'image_scale',
-      'data' => array(
+      'data' => [
         'width' => 120,
         'height' => 90,
         'upscale' => TRUE,
-      ),
+      ],
       'weight' => 2,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -116,15 +116,15 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 90);
 
     // Test upscale disabled.
-    $effect = array(
+    $effect = [
       'id' => 'image_scale',
-      'data' => array(
+      'data' => [
         'width' => 400,
         'height' => 200,
         'upscale' => FALSE,
-      ),
+      ],
       'weight' => 3,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -138,11 +138,11 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 90);
 
     // Add a desaturate effect.
-    $effect = array(
+    $effect = [
       'id' => 'image_desaturate',
-      'data' => array(),
+      'data' => [],
       'weight' => 4,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -156,14 +156,14 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 90);
 
     // Add a random rotate effect.
-    $effect = array(
+    $effect = [
       'id' => 'image_rotate',
-      'data' => array(
+      'data' => [
         'degrees' => 180,
         'random' => TRUE,
-      ),
+      ],
       'weight' => 5,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -175,15 +175,15 @@ function testImageDimensions() {
 
 
     // Add a crop effect.
-    $effect = array(
+    $effect = [
       'id' => 'image_crop',
-      'data' => array(
+      'data' => [
         'width' => 30,
         'height' => 30,
         'anchor' => 'center-center',
-      ),
+      ],
       'weight' => 6,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
@@ -197,14 +197,14 @@ function testImageDimensions() {
     $this->assertEqual($image_file->getHeight(), 30);
 
     // Rotate to a non-multiple of 90 degrees.
-    $effect = array(
+    $effect = [
       'id' => 'image_rotate',
-      'data' => array(
+      'data' => [
         'degrees' => 57,
         'random' => FALSE,
-      ),
+      ],
       'weight' => 7,
-    );
+    ];
 
     $effect_id = $style->addImageEffect($effect);
     $style->save();
@@ -221,11 +221,11 @@ function testImageDimensions() {
     $style->deleteImageEffect($effect_plugin);
 
     // Ensure that an effect can unset dimensions.
-    $effect = array(
+    $effect = [
       'id' => 'image_module_test_null',
-      'data' => array(),
+      'data' => [],
       'weight' => 8,
-    );
+    ];
 
     $style->addImageEffect($effect);
     $style->save();
diff --git a/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php b/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php
index a0f0274..d04a1c4 100644
--- a/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php
+++ b/core/modules/image/src/Tests/ImageFieldDefaultImagesTest.php
@@ -19,7 +19,7 @@ class ImageFieldDefaultImagesTest extends ImageFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_ui');
+  public static $modules = ['field_ui'];
 
   /**
    * Tests CRUD for fields and fields fields with default images.
@@ -36,8 +36,8 @@ public function testDefaultImages() {
       $file = File::create(['uri' => $desired_filepath, 'filename' => $filename, 'name' => $filename]);
       $file->save();
     }
-    $default_images = array();
-    foreach (array('field', 'field', 'field2', 'field_new', 'field_new') as $image_target) {
+    $default_images = [];
+    foreach (['field', 'field', 'field2', 'field_new', 'field_new'] as $image_target) {
       $file = File::create((array) array_pop($files));
       $file->save();
       $default_images[$image_target] = $file;
@@ -45,23 +45,23 @@ public function testDefaultImages() {
 
     // Create an image field and add an field to the article content type.
     $field_name = strtolower($this->randomMachineName());
-    $storage_settings['default_image'] = array(
+    $storage_settings['default_image'] = [
       'uuid' => $default_images['field']->uuid(),
       'alt' => '',
       'title' => '',
       'width' => 0,
       'height' => 0,
-    );
-    $field_settings['default_image'] = array(
+    ];
+    $field_settings['default_image'] = [
       'uuid' => $default_images['field']->uuid(),
       'alt' => '',
       'title' => '',
       'width' => 0,
       'height' => 0,
-    );
-    $widget_settings = array(
+    ];
+    $widget_settings = [
       'preview_image_style' => 'medium',
-    );
+    ];
     $field = $this->createImageField($field_name, 'article', $storage_settings, $field_settings, $widget_settings);
 
     // The field default image id should be 2.
@@ -84,15 +84,15 @@ public function testDefaultImages() {
       'bundle' => 'page',
       'label' => $field->label(),
       'required' => $field->isRequired(),
-      'settings' => array(
-        'default_image' => array(
+      'settings' => [
+        'default_image' => [
           'uuid' => $default_images['field2']->uuid(),
           'alt' => '',
           'title' => '',
           'width' => 0,
           'height' => 0,
-        ),
-      ),
+        ],
+      ],
     ]);
     $field2->save();
 
@@ -112,7 +112,7 @@ public function testDefaultImages() {
       $default_images['field']->id(),
       format_string(
         'Article image field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field']->id())
+        ['@fid' => $default_images['field']->id()]
       )
     );
     // Confirm the defaults are present on the article field edit form.
@@ -122,7 +122,7 @@ public function testDefaultImages() {
       $default_images['field']->id(),
       format_string(
         'Article image field field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field']->id())
+        ['@fid' => $default_images['field']->id()]
       )
     );
 
@@ -133,7 +133,7 @@ public function testDefaultImages() {
       $default_images['field']->id(),
       format_string(
         'Page image field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field']->id())
+        ['@fid' => $default_images['field']->id()]
       )
     );
     // Confirm the defaults are present on the page field edit form.
@@ -144,38 +144,38 @@ public function testDefaultImages() {
       $default_images['field2']->id(),
       format_string(
         'Page image field field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field2']->id())
+        ['@fid' => $default_images['field2']->id()]
       )
     );
 
     // Confirm that the image default is shown for a new article node.
-    $article = $this->drupalCreateNode(array('type' => 'article'));
+    $article = $this->drupalCreateNode(['type' => 'article']);
     $article_built = $this->drupalBuildEntityView($article);
     $this->assertEqual(
       $article_built[$field_name][0]['#item']->target_id,
       $default_images['field']->id(),
       format_string(
         'A new article node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field']->id())
+        ['@fid' => $default_images['field']->id()]
       )
     );
 
     // Also check that the field renders without warnings when the label is
     // hidden.
     EntityViewDisplay::load('node.article.default')
-      ->setComponent($field_name, array('label' => 'hidden', 'type' => 'image'))
+      ->setComponent($field_name, ['label' => 'hidden', 'type' => 'image'])
       ->save();
     $this->drupalGet('node/' . $article->id());
 
     // Confirm that the image default is shown for a new page node.
-    $page = $this->drupalCreateNode(array('type' => 'page'));
+    $page = $this->drupalCreateNode(['type' => 'page']);
     $page_built = $this->drupalBuildEntityView($page);
     $this->assertEqual(
       $page_built[$field_name][0]['#item']->target_id,
       $default_images['field2']->id(),
       format_string(
         'A new page node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field2']->id())
+        ['@fid' => $default_images['field2']->id()]
       )
     );
 
@@ -192,12 +192,12 @@ public function testDefaultImages() {
       $default_images['field_new']->id(),
       format_string(
         'Updated image field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field_new']->id())
+        ['@fid' => $default_images['field_new']->id()]
       )
     );
 
     // Reload the nodes and confirm the field field defaults are used.
-    $node_storage->resetCache(array($article->id(), $page->id()));
+    $node_storage->resetCache([$article->id(), $page->id()]);
     $article_built = $this->drupalBuildEntityView($article = $node_storage->load($article->id()));
     $page_built = $this->drupalBuildEntityView($page = $node_storage->load($page->id()));
     $this->assertEqual(
@@ -205,7 +205,7 @@ public function testDefaultImages() {
       $default_images['field']->id(),
       format_string(
         'An existing article node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field']->id())
+        ['@fid' => $default_images['field']->id()]
       )
     );
     $this->assertEqual(
@@ -213,7 +213,7 @@ public function testDefaultImages() {
       $default_images['field2']->id(),
       format_string(
         'An existing page node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field2']->id())
+        ['@fid' => $default_images['field2']->id()]
       )
     );
 
@@ -231,12 +231,12 @@ public function testDefaultImages() {
       $default_images['field_new']->id(),
       format_string(
         'Updated article image field field default equals expected file ID of @fid.',
-        array('@fid' => $default_images['field_new']->id())
+        ['@fid' => $default_images['field_new']->id()]
       )
     );
 
     // Reload the nodes.
-    $node_storage->resetCache(array($article->id(), $page->id()));
+    $node_storage->resetCache([$article->id(), $page->id()]);
     $article_built = $this->drupalBuildEntityView($article = $node_storage->load($article->id()));
     $page_built = $this->drupalBuildEntityView($page = $node_storage->load($page->id()));
 
@@ -246,7 +246,7 @@ public function testDefaultImages() {
       $default_images['field_new']->id(),
       format_string(
         'An existing article node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field_new']->id())
+        ['@fid' => $default_images['field_new']->id()]
       )
     );
     // Confirm the page remains unchanged.
@@ -255,7 +255,7 @@ public function testDefaultImages() {
       $default_images['field2']->id(),
       format_string(
         'An existing page node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field2']->id())
+        ['@fid' => $default_images['field2']->id()]
       )
     );
 
@@ -279,7 +279,7 @@ public function testDefaultImages() {
     );
 
     // Reload the nodes.
-    $node_storage->resetCache(array($article->id(), $page->id()));
+    $node_storage->resetCache([$article->id(), $page->id()]);
     $article_built = $this->drupalBuildEntityView($article = $node_storage->load($article->id()));
     $page_built = $this->drupalBuildEntityView($page = $node_storage->load($page->id()));
     // Confirm the article uses the new field (not field) default.
@@ -288,7 +288,7 @@ public function testDefaultImages() {
       $default_images['field_new']->id(),
       format_string(
         'An existing article node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field_new']->id())
+        ['@fid' => $default_images['field_new']->id()]
       )
     );
     // Confirm the page remains unchanged.
@@ -297,12 +297,12 @@ public function testDefaultImages() {
       $default_images['field2']->id(),
       format_string(
         'An existing page node without an image has the expected default image file ID of @fid.',
-        array('@fid' => $default_images['field2']->id())
+        ['@fid' => $default_images['field2']->id()]
       )
     );
 
     $non_image = $this->drupalGetTestFiles('text');
-    $this->drupalPostForm(NULL, array('files[settings_default_image_uuid]' => drupal_realpath($non_image[0]->uri)), t("Upload"));
+    $this->drupalPostForm(NULL, ['files[settings_default_image_uuid]' => drupal_realpath($non_image[0]->uri)], t("Upload"));
     $this->assertText('The specified file text-0.txt could not be uploaded.');
     $this->assertText('Only files with the following extensions are allowed: png gif jpg jpeg.');
 
@@ -316,16 +316,16 @@ public function testDefaultImages() {
    * Tests image field and field having an invalid default image.
    */
   public function testInvalidDefaultImage() {
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => Unicode::strtolower($this->randomMachineName()),
       'entity_type' => 'node',
       'type' => 'image',
-      'settings' => array(
-        'default_image' => array(
+      'settings' => [
+        'default_image' => [
           'uuid' => 100000,
-        )
-      ),
-    ));
+        ]
+      ],
+    ]);
     $field_storage->save();
     $settings = $field_storage->getSettings();
     // The non-existent default image should not be saved.
@@ -335,11 +335,11 @@ public function testInvalidDefaultImage() {
       'field_storage' => $field_storage,
       'bundle' => 'page',
       'label' => $this->randomMachineName(),
-      'settings' => array(
-        'default_image' => array(
+      'settings' => [
+        'default_image' => [
           'uuid' => 100000,
-        )
-      ),
+        ]
+      ],
     ]);
     $field->save();
     $settings = $field->getSettings();
diff --git a/core/modules/image/src/Tests/ImageFieldDisplayTest.php b/core/modules/image/src/Tests/ImageFieldDisplayTest.php
index f3ce858..d2b4ffe 100644
--- a/core/modules/image/src/Tests/ImageFieldDisplayTest.php
+++ b/core/modules/image/src/Tests/ImageFieldDisplayTest.php
@@ -21,7 +21,7 @@ class ImageFieldDisplayTest extends ImageFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_ui');
+  public static $modules = ['field_ui'];
 
   /**
    * Test image formatters on node display for public files.
@@ -35,7 +35,7 @@ function testImageFieldFormattersPublic() {
    */
   function testImageFieldFormattersPrivate() {
     // Remove access content permission from anonymous users.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array('access content' => FALSE));
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, ['access content' => FALSE]);
     $this->_testImageFieldFormatters('private');
   }
 
@@ -47,29 +47,29 @@ function _testImageFieldFormatters($scheme) {
     $renderer = $this->container->get('renderer');
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $field_name = strtolower($this->randomMachineName());
-    $field_settings = array('alt_field_required' => 0);
-    $instance = $this->createImageField($field_name, 'article', array('uri_scheme' => $scheme), $field_settings);
+    $field_settings = ['alt_field_required' => 0];
+    $instance = $this->createImageField($field_name, 'article', ['uri_scheme' => $scheme], $field_settings);
 
     // Go to manage display page.
     $this->drupalGet("admin/structure/types/manage/article/display");
 
     // Test for existence of link to image styles configuration.
-    $this->drupalPostAjaxForm(NULL, array(), "{$field_name}_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "{$field_name}_settings_edit");
     $this->assertLinkByHref(\Drupal::url('entity.image_style.collection'), 0, 'Link to image styles configuration is found');
 
     // Remove 'administer image styles' permission from testing admin user.
     $admin_user_roles = $this->adminUser->getRoles(TRUE);
-    user_role_change_permissions(reset($admin_user_roles), array('administer image styles' => FALSE));
+    user_role_change_permissions(reset($admin_user_roles), ['administer image styles' => FALSE]);
 
     // Go to manage display page again.
     $this->drupalGet("admin/structure/types/manage/article/display");
 
     // Test for absence of link to image styles configuration.
-    $this->drupalPostAjaxForm(NULL, array(), "{$field_name}_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "{$field_name}_settings_edit");
     $this->assertNoLinkByHref(\Drupal::url('entity.image_style.collection'), 'Link to image styles configuration is absent when permissions are insufficient');
 
     // Restore 'administer image styles' permission to testing admin user
-    user_role_change_permissions(reset($admin_user_roles), array('administer image styles' => TRUE));
+    user_role_change_permissions(reset($admin_user_roles), ['administer image styles' => TRUE]);
 
     // Create a new node with an image attached.
     $test_image = current($this->drupalGetTestFiles('image'));
@@ -87,38 +87,38 @@ function _testImageFieldFormatters($scheme) {
 
     // Save node.
     $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $alt);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
 
     // Test that the default formatter is being used.
     $file = $node->{$field_name}->entity;
     $image_uri = $file->getFileUri();
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $image_uri,
       '#width' => 40,
       '#height' => 20,
       '#alt' => $alt,
-    );
+    ];
     $default_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->assertRaw($default_output, 'Default formatter displaying correctly on full node view.');
 
     // Test the image linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'image',
-      'settings' => array('image_link' => 'file'),
-    );
+      'settings' => ['image_link' => 'file'],
+    ];
     $display = entity_get_display('node', $node->getType(), 'default');
     $display->setComponent($field_name, $display_options)
       ->save();
 
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $image_uri,
       '#width' => 40,
       '#height' => 20,
       '#alt' => $alt,
-    );
+    ];
     $default_output = '<a href="' . file_create_url($image_uri) . '">' . $renderer->renderRoot($image) . '</a>';
     $this->drupalGet('node/' . $nid);
     $this->assertCacheTag($file->getCacheTags()[0]);
@@ -148,25 +148,25 @@ function _testImageFieldFormatters($scheme) {
     $display_options['settings']['image_link'] = 'content';
     $display->setComponent($field_name, $display_options)
       ->save();
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $image_uri,
       '#width' => 40,
       '#height' => 20,
-    );
+    ];
     $this->drupalGet('node/' . $nid);
     $this->assertCacheTag($file->getCacheTags()[0]);
     $cache_tags_header = $this->drupalGetHeader('X-Drupal-Cache-Tags');
     $this->assertTrue(!preg_match('/ image_style\:/', $cache_tags_header), 'No image style cache tag found.');
     $elements = $this->xpath(
       '//a[@href=:path]/img[@src=:url and @alt=:alt and @width=:width and @height=:height]',
-      array(
+      [
         ':path' => $node->url(),
         ':url' => file_url_transform_relative(file_create_url($image['#uri'])),
         ':width' => $image['#width'],
         ':height' => $image['#height'],
         ':alt' => $alt,
-      )
+      ]
     );
     $this->assertEqual(count($elements), 1, 'Image linked to content formatter displaying correctly on full node view.');
 
@@ -179,14 +179,14 @@ function _testImageFieldFormatters($scheme) {
     // Ensure the derivative image is generated so we do not have to deal with
     // image style callback paths.
     $this->drupalGet(ImageStyle::load('thumbnail')->buildUrl($image_uri));
-    $image_style = array(
+    $image_style = [
       '#theme' => 'image_style',
       '#uri' => $image_uri,
       '#width' => 40,
       '#height' => 20,
       '#style_name' => 'thumbnail',
       '#alt' => $alt,
-    );
+    ];
     $default_output = $renderer->renderRoot($image_style);
     $this->drupalGet('node/' . $nid);
     $image_style = ImageStyle::load('thumbnail');
@@ -224,18 +224,18 @@ function testImageFieldSettings() {
     $test_image = current($this->drupalGetTestFiles('image'));
     list(, $test_image_extension) = explode('.', $test_image->filename);
     $field_name = strtolower($this->randomMachineName());
-    $field_settings = array(
+    $field_settings = [
       'alt_field' => 1,
       'file_extensions' => $test_image_extension,
       'max_filesize' => '50 KB',
       'max_resolution' => '100x100',
       'min_resolution' => '10x10',
       'title_field' => 1,
-    );
-    $widget_settings = array(
+    ];
+    $widget_settings = [
       'preview_image_style' => 'medium',
-    );
-    $field = $this->createImageField($field_name, 'article', array(), $field_settings, $widget_settings);
+    ];
+    $field = $this->createImageField($field_name, 'article', [], $field_settings, $widget_settings);
 
     // Verify that the min/max resolution set on the field are properly
     // extracted, and displayed, on the image field's configuration form.
@@ -247,7 +247,7 @@ function testImageFieldSettings() {
 
     $this->drupalGet('node/add/article');
     $this->assertText(t('50 KB limit.'), 'Image widget max file size is displayed on article form.');
-    $this->assertText(t('Allowed types: @extensions.', array('@extensions' => $test_image_extension)), 'Image widget allowed file types displayed on article form.');
+    $this->assertText(t('Allowed types: @extensions.', ['@extensions' => $test_image_extension]), 'Image widget allowed file types displayed on article form.');
     $this->assertText(t('Images must be larger than 10x10 pixels. Images larger than 100x100 pixels will be resized.'), 'Image widget allowed resolution displayed on article form.');
 
     // We have to create the article first and then edit it because the alt
@@ -262,7 +262,7 @@ function testImageFieldSettings() {
     $this->assertFieldByName($field_name . '[0][title]', '', 'Title field displayed on article form.');
     // Verify that the attached image is being previewed using the 'medium'
     // style.
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $file = $node->{$field_name}->entity;
 
@@ -270,38 +270,38 @@ function testImageFieldSettings() {
     $this->assertTrue($this->cssSelect('img[width=40][height=20][class=image-style-medium][src="' . $url . '"]'));
 
     // Add alt/title fields to the image and verify that they are displayed.
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $file->getFileUri(),
       '#alt' => $alt,
       '#title' => $this->randomMachineName(),
       '#width' => 40,
       '#height' => 20,
-    );
-    $edit = array(
+    ];
+    $edit = [
       $field_name . '[0][alt]' => $image['#alt'],
       $field_name . '[0][title]' => $image['#title'],
-    );
+    ];
     $this->drupalPostForm('node/' . $nid . '/edit', $edit, t('Save and keep published'));
     $default_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->assertRaw($default_output, 'Image displayed using user supplied alt and title attributes.');
 
     // Verify that alt/title longer than allowed results in a validation error.
     $test_size = 2000;
-    $edit = array(
+    $edit = [
       $field_name . '[0][alt]' => $this->randomMachineName($test_size),
       $field_name . '[0][title]' => $this->randomMachineName($test_size),
-    );
+    ];
     $this->drupalPostForm('node/' . $nid . '/edit', $edit, t('Save and keep published'));
     $schema = $field->getFieldStorageDefinition()->getSchema();
-    $this->assertRaw(t('Alternative text cannot be longer than %max characters but is currently %length characters long.', array(
+    $this->assertRaw(t('Alternative text cannot be longer than %max characters but is currently %length characters long.', [
       '%max' => $schema['columns']['alt']['length'],
       '%length' => $test_size,
-    )));
-    $this->assertRaw(t('Title cannot be longer than %max characters but is currently %length characters long.', array(
+    ]));
+    $this->assertRaw(t('Title cannot be longer than %max characters but is currently %length characters long.', [
       '%max' => $schema['columns']['title']['length'],
       '%length' => $test_size,
-    )));
+    ]));
 
     // Set cardinality to unlimited and add upload a second image.
     // The image widget is extending on the file widget, but the image field
@@ -310,20 +310,20 @@ function testImageFieldSettings() {
     // 1, so we need to make sure the file widget prevents these notices by
     // providing all settings, even if they are not used.
     // @see FileWidget::formMultipleElements().
-    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $field_name . '/storage', array('cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED), t('Save field settings'));
-    $edit = array(
+    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $field_name . '/storage', ['cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED], t('Save field settings'));
+    $edit = [
       'files[' . $field_name . '_1][]' => drupal_realpath($test_image->uri),
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
     // Add the required alt text.
     $this->drupalPostForm(NULL, [$field_name . '[1][alt]' => $alt], t('Save and keep published'));
-    $this->assertText(format_string('Article @title has been updated.', array('@title' => $node->getTitle())));
+    $this->assertText(format_string('Article @title has been updated.', ['@title' => $node->getTitle()]));
 
     // Assert ImageWidget::process() calls FieldWidget::process().
     $this->drupalGet('node/' . $node->id() . '/edit');
-    $edit = array(
+    $edit = [
       'files[' . $field_name . '_2][]' => drupal_realpath($test_image->uri),
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, $field_name . '_2_upload_button');
     $this->assertNoRaw('<input multiple type="file" id="edit-' . strtr($field_name, '_', '-') . '-2-upload" name="files[' . $field_name . '_2][]" size="22" class="js-form-file form-file">');
     $this->assertRaw('<input multiple type="file" id="edit-' . strtr($field_name, '_', '-') . '-3-upload" name="files[' . $field_name . '_3][]" size="22" class="js-form-file form-file">');
@@ -343,7 +343,7 @@ function testImageFieldDefaultImage() {
 
     // Create a new node, with no images and verify that no images are
     // displayed.
-    $node = $this->drupalCreateNode(array('type' => 'article'));
+    $node = $this->drupalCreateNode(['type' => 'article']);
     $this->drupalGet('node/' . $node->id());
     // Verify that no image is displayed on the page by checking for the class
     // that would be used on the image field.
@@ -355,12 +355,12 @@ function testImageFieldDefaultImage() {
     $images = $this->drupalGetTestFiles('image');
     $alt = $this->randomString(512);
     $title = $this->randomString(1024);
-    $edit = array(
+    $edit = [
       // Get the path of the 'image-test.png' file.
       'files[settings_default_image_uuid]' => drupal_realpath($images[0]->uri),
       'settings[default_image][alt]' => $alt,
       'settings[default_image][title]' => $title,
-    );
+    ];
     $this->drupalPostForm("admin/structure/types/manage/article/fields/node.article.$field_name/storage", $edit, t('Save field settings'));
     // Clear field definition cache so the new default image is detected.
     \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -368,14 +368,14 @@ function testImageFieldDefaultImage() {
     $default_image = $field_storage->getSetting('default_image');
     $file = \Drupal::entityManager()->loadEntityByUuid('file', $default_image['uuid']);
     $this->assertTrue($file->isPermanent(), 'The default image status is permanent.');
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $file->getFileUri(),
       '#alt' => $alt,
       '#title' => $title,
       '#width' => 40,
       '#height' => 20,
-    );
+    ];
     $default_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->drupalGet('node/' . $node->id());
     $this->assertCacheTag($file->getCacheTags()[0]);
@@ -391,16 +391,16 @@ function testImageFieldDefaultImage() {
 
     // Upload the 'image-test.gif' file.
     $nid = $this->uploadNodeImage($images[2], $field_name, 'article', $alt);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
     $file = $node->{$field_name}->entity;
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $file->getFileUri(),
       '#width' => 40,
       '#height' => 20,
       '#alt' => $alt,
-    );
+    ];
     $image_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->drupalGet('node/' . $nid);
     $this->assertCacheTag($file->getCacheTags()[0]);
@@ -410,9 +410,9 @@ function testImageFieldDefaultImage() {
     $this->assertRaw($image_output, 'User supplied image is displayed.');
 
     // Remove default image from the field and make sure it is no longer used.
-    $edit = array(
+    $edit = [
       'settings[default_image][uuid][fids]' => 0,
-    );
+    ];
     $this->drupalPostForm("admin/structure/types/manage/article/fields/node.article.$field_name/storage", $edit, t('Save field settings'));
     // Clear field definition cache so the new default image is detected.
     \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -422,14 +422,14 @@ function testImageFieldDefaultImage() {
     // Create an image field that uses the private:// scheme and test that the
     // default image works as expected.
     $private_field_name = strtolower($this->randomMachineName());
-    $this->createImageField($private_field_name, 'article', array('uri_scheme' => 'private'));
+    $this->createImageField($private_field_name, 'article', ['uri_scheme' => 'private']);
     // Add a default image to the new field.
-    $edit = array(
+    $edit = [
       // Get the path of the 'image-test.gif' file.
       'files[settings_default_image_uuid]' => drupal_realpath($images[2]->uri),
       'settings[default_image][alt]' => $alt,
       'settings[default_image][title]' => $title,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $private_field_name . '/storage', $edit, t('Save field settings'));
     // Clear field definition cache so the new default image is detected.
     \Drupal::entityManager()->clearCachedFieldDefinitions();
@@ -441,15 +441,15 @@ function testImageFieldDefaultImage() {
     $this->assertTrue($file->isPermanent(), 'The default image status is permanent.');
     // Create a new node with no image attached and ensure that default private
     // image is displayed.
-    $node = $this->drupalCreateNode(array('type' => 'article'));
-    $image = array(
+    $node = $this->drupalCreateNode(['type' => 'article']);
+    $image = [
       '#theme' => 'image',
       '#uri' => $file->getFileUri(),
       '#alt' => $alt,
       '#title' => $title,
       '#width' => 40,
       '#height' => 20,
-    );
+    ];
     $default_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->drupalGet('node/' . $node->id());
     $this->assertCacheTag($file->getCacheTags()[0]);
diff --git a/core/modules/image/src/Tests/ImageFieldTestBase.php b/core/modules/image/src/Tests/ImageFieldTestBase.php
index c17f53a..ed45278 100644
--- a/core/modules/image/src/Tests/ImageFieldTestBase.php
+++ b/core/modules/image/src/Tests/ImageFieldTestBase.php
@@ -33,7 +33,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'image', 'field_ui', 'image_module_test');
+  public static $modules = ['node', 'image', 'field_ui', 'image_module_test'];
 
   /**
    * An user with permissions to administer content types and image styles.
@@ -47,11 +47,11 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
 
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer node fields', 'administer nodes', 'create article content', 'edit any article content', 'delete any article content', 'administer image styles', 'administer node display'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer node fields', 'administer nodes', 'create article content', 'edit any article content', 'delete any article content', 'administer image styles', 'administer node display']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -66,9 +66,9 @@ protected function setUp() {
    *   The type of node to create.
    */
   function previewNodeImage($image, $field_name, $type) {
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $edit['files[' . $field_name . '_0]'] = drupal_realpath($image->uri);
     $this->drupalPostForm('node/add/' . $type, $edit, t('Preview'));
   }
@@ -86,9 +86,9 @@ function previewNodeImage($image, $field_name, $type) {
    *   The alt text for the image. Use if the field settings require alt text.
    */
   function uploadNodeImage($image, $field_name, $type, $alt = '') {
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $edit['files[' . $field_name . '_0]'] = drupal_realpath($image->uri);
     $this->drupalPostForm('node/add/' . $type, $edit, t('Save and publish'));
     if ($alt) {
@@ -97,7 +97,7 @@ function uploadNodeImage($image, $field_name, $type, $alt = '') {
     }
 
     // Retrieve ID of the newly created node from the current URL.
-    $matches = array();
+    $matches = [];
     preg_match('/node\/([0-9]+)/', $this->getUrl(), $matches);
     return isset($matches[1]) ? $matches[1] : FALSE;
   }
diff --git a/core/modules/image/src/Tests/ImageFieldValidateTest.php b/core/modules/image/src/Tests/ImageFieldValidateTest.php
index 5f0bf21..4e8e0c1 100644
--- a/core/modules/image/src/Tests/ImageFieldValidateTest.php
+++ b/core/modules/image/src/Tests/ImageFieldValidateTest.php
@@ -87,14 +87,14 @@ function testResolution() {
    */
   function testRequiredAttributes() {
     $field_name = strtolower($this->randomMachineName());
-    $field_settings = array(
+    $field_settings = [
       'alt_field' => 1,
       'alt_field_required' => 1,
       'title_field' => 1,
       'title_field_required' => 1,
       'required' => 1,
-    );
-    $instance = $this->createImageField($field_name, 'article', array(), $field_settings);
+    ];
+    $instance = $this->createImageField($field_name, 'article', [], $field_settings);
     $images = $this->drupalGetTestFiles('image');
     // Let's just use the first image.
     $image = $images[0];
@@ -116,9 +116,9 @@ function testRequiredAttributes() {
     $instance->setSetting('title_field_required', 0);
     $instance->save();
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('node/add/article', $edit, t('Save and publish'));
 
     $this->assertNoText(t('Alternative text field is required.'));
@@ -129,9 +129,9 @@ function testRequiredAttributes() {
     $instance->setSetting('title_field_required', 1);
     $instance->save();
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('node/add/article', $edit, t('Save and publish'));
 
     $this->assertNoText(t('Alternative text field is required.'));
diff --git a/core/modules/image/src/Tests/ImageOnTranslatedEntityTest.php b/core/modules/image/src/Tests/ImageOnTranslatedEntityTest.php
index a8985ce..e1f70d7 100644
--- a/core/modules/image/src/Tests/ImageOnTranslatedEntityTest.php
+++ b/core/modules/image/src/Tests/ImageOnTranslatedEntityTest.php
@@ -14,7 +14,7 @@ class ImageOnTranslatedEntityTest extends ImageFieldTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language', 'content_translation', 'field_ui');
+  public static $modules = ['language', 'content_translation', 'field_ui'];
 
   /**
    * The name of the image field used in the test.
@@ -39,7 +39,7 @@ protected function setUp() {
     $this->createImageField($this->fieldName, 'basicpage', [], ['title_field' => 1]);
 
     // Create and log in user.
-    $permissions = array(
+    $permissions = [
       'access administration pages',
       'administer content translation',
       'administer content types',
@@ -50,16 +50,16 @@ protected function setUp() {
       'edit any basicpage content',
       'translate any entity',
       'delete any basicpage content',
-    );
+    ];
     $admin_user = $this->drupalCreateUser($permissions);
     $this->drupalLogin($admin_user);
 
     // Add a second and third language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'nl';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
   }
@@ -69,7 +69,7 @@ protected function setUp() {
    */
   public function testSyncedImages() {
     // Enable translation for "Basic page" nodes.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => 1,
       'settings[node][basicpage][translatable]' => 1,
       "settings[node][basicpage][fields][$this->fieldName]" => 1,
@@ -78,7 +78,7 @@ public function testSyncedImages() {
       // checkboxes on the form.
       "settings[node][basicpage][columns][$this->fieldName][alt]" => FALSE,
       "settings[node][basicpage][columns][$this->fieldName][title]" => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, 'Save configuration');
 
     // Verify that the image field on the "Basic basic" node type is
@@ -87,10 +87,10 @@ public function testSyncedImages() {
     $this->assertTrue($definitions[$this->fieldName]->isTranslatable(), 'Node image field is translatable.');
 
     // Create a default language node.
-    $default_language_node = $this->drupalCreateNode(array('type' => 'basicpage', 'title' => 'Lost in translation'));
+    $default_language_node = $this->drupalCreateNode(['type' => 'basicpage', 'title' => 'Lost in translation']);
 
     // Edit the node to upload a file.
-    $edit = array();
+    $edit = [];
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('image')[0]->uri);
     $this->drupalPostForm('node/' . $default_language_node->id() . '/edit', $edit, t('Save'));
@@ -99,10 +99,10 @@ public function testSyncedImages() {
     $first_fid = $this->getLastFileId();
 
     // Translate the node into French: remove the existing file.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/fr', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/fr', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'Scarlett Johansson';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('image')[1]->uri);
@@ -131,10 +131,10 @@ public function testSyncedImages() {
     $this->assertTrue($file->isPermanent());
 
     // Translate the node into dutch: remove the existing file.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/nl', array(), t('Remove'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/translations/add/en/nl', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'Akiko Takeshita';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('image')[2]->uri);
@@ -166,10 +166,10 @@ public function testSyncedImages() {
     $this->assertTrue($file->isPermanent());
 
     // Edit the second translation: remove the existing file.
-    $this->drupalPostForm('fr/node/' . $default_language_node->id() . '/edit', array(), t('Remove'));
+    $this->drupalPostForm('fr/node/' . $default_language_node->id() . '/edit', [], t('Remove'));
 
     // Upload a different file.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = 'Giovanni Ribisi';
     $name = 'files[' . $this->fieldName . '_0]';
     $edit[$name] = drupal_realpath($this->drupalGetTestFiles('image')[3]->uri);
@@ -194,7 +194,7 @@ public function testSyncedImages() {
     $this->assertTrue($file->isPermanent());
 
     // Delete the third translation.
-    $this->drupalPostForm('nl/node/' . $default_language_node->id() . '/delete', array(), t('Delete Dutch translation'));
+    $this->drupalPostForm('nl/node/' . $default_language_node->id() . '/delete', [], t('Delete Dutch translation'));
 
     \Drupal::entityTypeManager()->getStorage('file')->resetCache();
 
@@ -210,7 +210,7 @@ public function testSyncedImages() {
     $this->assertTrue($file->isTemporary());
 
     // Delete the all translations.
-    $this->drupalPostForm('node/' . $default_language_node->id() . '/delete', array(), t('Delete all translations'));
+    $this->drupalPostForm('node/' . $default_language_node->id() . '/delete', [], t('Delete all translations'));
 
     \Drupal::entityTypeManager()->getStorage('file')->resetCache();
 
diff --git a/core/modules/image/src/Tests/ImageStyleFlushTest.php b/core/modules/image/src/Tests/ImageStyleFlushTest.php
index 63c0d80..ad837e8 100644
--- a/core/modules/image/src/Tests/ImageStyleFlushTest.php
+++ b/core/modules/image/src/Tests/ImageStyleFlushTest.php
@@ -47,29 +47,29 @@ function testFlush() {
     $style_name = strtolower($this->randomMachineName(10));
     $style_label = $this->randomString();
     $style_path = 'admin/config/media/image-styles/manage/' . $style_name;
-    $effect_edits = array(
-      'image_resize' => array(
+    $effect_edits = [
+      'image_resize' => [
         'data[width]' => 100,
         'data[height]' => 101,
-      ),
-      'image_scale' => array(
+      ],
+      'image_scale' => [
         'data[width]' => 110,
         'data[height]' => 111,
         'data[upscale]' => 1,
-      ),
-    );
+      ],
+    ];
 
     // Add style form.
-    $edit = array(
+    $edit = [
       'name' => $style_name,
       'label' => $style_label,
-    );
+    ];
     $this->drupalPostForm('admin/config/media/image-styles/add', $edit, t('Create new style'));
 
     // Add each sample effect to the style.
     foreach ($effect_edits as $effect => $edit) {
       // Add the effect.
-      $this->drupalPostForm($style_path, array('new' => $effect), t('Add'));
+      $this->drupalPostForm($style_path, ['new' => $effect], t('Add'));
       if (!empty($edit)) {
         $this->drupalPostForm(NULL, $edit, t('Add effect'));
       }
@@ -82,29 +82,29 @@ function testFlush() {
     $image_path = $this->createSampleImage($style, 'public');
     // Expecting to find 2 images, one is the sample.png image shown in
     // image style preview.
-    $this->assertEqual($this->getImageCount($style, 'public'), 2, format_string('Image style %style image %file successfully generated.', array('%style' => $style->label(), '%file' => $image_path)));
+    $this->assertEqual($this->getImageCount($style, 'public'), 2, format_string('Image style %style image %file successfully generated.', ['%style' => $style->label(), '%file' => $image_path]));
 
     // Create an image for the 'private' wrapper.
     $image_path = $this->createSampleImage($style, 'private');
-    $this->assertEqual($this->getImageCount($style, 'private'), 1, format_string('Image style %style image %file successfully generated.', array('%style' => $style->label(), '%file' => $image_path)));
+    $this->assertEqual($this->getImageCount($style, 'private'), 1, format_string('Image style %style image %file successfully generated.', ['%style' => $style->label(), '%file' => $image_path]));
 
     // Remove the 'image_scale' effect and updates the style, which in turn
     // forces an image style flush.
     $style_path = 'admin/config/media/image-styles/manage/' . $style->id();
-    $uuids = array();
+    $uuids = [];
     foreach ($style->getEffects() as $uuid => $effect) {
       $uuids[$effect->getPluginId()] = $uuid;
     }
-    $this->drupalPostForm($style_path . '/effects/' . $uuids['image_scale'] . '/delete', array(), t('Delete'));
+    $this->drupalPostForm($style_path . '/effects/' . $uuids['image_scale'] . '/delete', [], t('Delete'));
     $this->assertResponse(200);
-    $this->drupalPostForm($style_path, array(), t('Update style'));
+    $this->drupalPostForm($style_path, [], t('Update style'));
     $this->assertResponse(200);
 
     // Post flush, expected 1 image in the 'public' wrapper (sample.png).
-    $this->assertEqual($this->getImageCount($style, 'public'), 1, format_string('Image style %style flushed correctly for %wrapper wrapper.', array('%style' => $style->label(), '%wrapper' => 'public')));
+    $this->assertEqual($this->getImageCount($style, 'public'), 1, format_string('Image style %style flushed correctly for %wrapper wrapper.', ['%style' => $style->label(), '%wrapper' => 'public']));
 
     // Post flush, expected no image in the 'private' wrapper.
-    $this->assertEqual($this->getImageCount($style, 'private'), 0, format_string('Image style %style flushed correctly for %wrapper wrapper.', array('%style' => $style->label(), '%wrapper' => 'private')));
+    $this->assertEqual($this->getImageCount($style, 'private'), 0, format_string('Image style %style flushed correctly for %wrapper wrapper.', ['%style' => $style->label(), '%wrapper' => 'private']));
   }
 
 }
diff --git a/core/modules/image/src/Tests/ImageStylesPathAndUrlTest.php b/core/modules/image/src/Tests/ImageStylesPathAndUrlTest.php
index d03bc3b..28a78cd 100644
--- a/core/modules/image/src/Tests/ImageStylesPathAndUrlTest.php
+++ b/core/modules/image/src/Tests/ImageStylesPathAndUrlTest.php
@@ -17,7 +17,7 @@ class ImageStylesPathAndUrlTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'image_module_test');
+  public static $modules = ['image', 'image_module_test'];
 
   /**
    * @var \Drupal\image\ImageStyleInterface
@@ -27,7 +27,7 @@ class ImageStylesPathAndUrlTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->style = ImageStyle::create(array('name' => 'style_foo', 'label' => $this->randomString()));
+    $this->style = ImageStyle::create(['name' => 'style_foo', 'label' => $this->randomString()]);
     $this->style->save();
   }
 
diff --git a/core/modules/image/src/Tests/ImageThemeFunctionTest.php b/core/modules/image/src/Tests/ImageThemeFunctionTest.php
index 52cf6c6..b5b42ff 100644
--- a/core/modules/image/src/Tests/ImageThemeFunctionTest.php
+++ b/core/modules/image/src/Tests/ImageThemeFunctionTest.php
@@ -23,7 +23,7 @@ class ImageThemeFunctionTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'entity_test');
+  public static $modules = ['image', 'entity_test'];
 
   /**
    * Created file entity.
@@ -40,12 +40,12 @@ class ImageThemeFunctionTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'image_test',
       'type' => 'image',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'image_test',
@@ -72,7 +72,7 @@ function testImageFormatterTheme() {
     $original_uri = file_unmanaged_copy($file->uri, 'public://', FILE_EXISTS_RENAME);
 
     // Create a style.
-    $style = ImageStyle::create(array('name' => 'test', 'label' => 'Test'));
+    $style = ImageStyle::create(['name' => 'test', 'label' => 'Test']);
     $style->save();
     $url = file_url_transform_relative($style->buildUrl($original_uri));
 
@@ -86,17 +86,17 @@ function testImageFormatterTheme() {
 
     // Create the base element that we'll use in the tests below.
     $path = $this->randomMachineName();
-    $base_element = array(
+    $base_element = [
       '#theme' => 'image_formatter',
       '#image_style' => 'test',
       '#item' => $entity->image_test,
       '#url' => Url::fromUri('base:' . $path),
-    );
+    ];
 
     // Test using theme_image_formatter() with a NULL value for the alt option.
     $element = $base_element;
     $this->setRawContent($renderer->renderRoot($element));
-    $elements = $this->xpath('//a[@href=:path]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height]', array(':path' => base_path() . $path, ':url' => $url, ':width' => $image->getWidth(), ':height' => $image->getHeight()));
+    $elements = $this->xpath('//a[@href=:path]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height]', [':path' => base_path() . $path, ':url' => $url, ':width' => $image->getWidth(), ':height' => $image->getHeight()]);
     $this->assertEqual(count($elements), 1, 'theme_image_formatter() correctly renders with a NULL value for the alt option.');
 
     // Test using theme_image_formatter() without an image title, alt text, or
@@ -104,7 +104,7 @@ function testImageFormatterTheme() {
     $element = $base_element;
     $element['#item']->alt = '';
     $this->setRawContent($renderer->renderRoot($element));
-    $elements = $this->xpath('//a[@href=:path]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height and @alt=""]', array(':path' => base_path() . $path, ':url' => $url, ':width' => $image->getWidth(), ':height' => $image->getHeight()));
+    $elements = $this->xpath('//a[@href=:path]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height and @alt=""]', [':path' => base_path() . $path, ':url' => $url, ':width' => $image->getWidth(), ':height' => $image->getHeight()]);
     $this->assertEqual(count($elements), 1, 'theme_image_formatter() correctly renders without title, alt, or path options.');
 
     // Link the image to a fragment on the page, and not a full URL.
@@ -112,12 +112,12 @@ function testImageFormatterTheme() {
     $element = $base_element;
     $element['#url'] = Url::fromRoute('<none>', [], ['fragment' => $fragment]);
     $this->setRawContent($renderer->renderRoot($element));
-    $elements = $this->xpath('//a[@href=:fragment]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height and @alt=""]', array(
+    $elements = $this->xpath('//a[@href=:fragment]/img[@class="image-style-test" and @src=:url and @width=:width and @height=:height and @alt=""]', [
       ':fragment' => '#' . $fragment,
       ':url' => $url,
       ':width' => $image->getWidth(),
       ':height' => $image->getHeight()
-    ));
+    ]);
     $this->assertEqual(count($elements), 1, 'theme_image_formatter() correctly renders a link fragment.');
   }
 
@@ -134,27 +134,27 @@ function testImageStyleTheme() {
     $original_uri = file_unmanaged_copy($file->uri, 'public://', FILE_EXISTS_RENAME);
 
     // Create a style.
-    $style = ImageStyle::create(array('name' => 'image_test', 'label' => 'Test'));
+    $style = ImageStyle::create(['name' => 'image_test', 'label' => 'Test']);
     $style->save();
     $url = file_url_transform_relative($style->buildUrl($original_uri));
 
     // Create the base element that we'll use in the tests below.
-    $base_element = array(
+    $base_element = [
       '#theme' => 'image_style',
       '#style_name' => 'image_test',
       '#uri' => $original_uri,
-    );
+    ];
 
     $element = $base_element;
     $this->setRawContent($renderer->renderRoot($element));
-    $elements = $this->xpath('//img[@class="image-style-image-test" and @src=:url and @alt=""]', array(':url' => $url));
+    $elements = $this->xpath('//img[@class="image-style-image-test" and @src=:url and @alt=""]', [':url' => $url]);
     $this->assertEqual(count($elements), 1, 'theme_image_style() renders an image correctly.');
 
     // Test using theme_image_style() with a NULL value for the alt option.
     $element = $base_element;
     $element['#alt'] = NULL;
     $this->setRawContent($renderer->renderRoot($element));
-    $elements = $this->xpath('//img[@class="image-style-image-test" and @src=:url]', array(':url' => $url));
+    $elements = $this->xpath('//img[@class="image-style-image-test" and @src=:url]', [':url' => $url]);
     $this->assertEqual(count($elements), 1, 'theme_image_style() renders an image correctly with a NULL value for the alt option.');
   }
 
@@ -166,55 +166,55 @@ function testImageAltFunctionality() {
     $renderer = $this->container->get('renderer');
 
     // Test using alt directly with alt attribute.
-    $image_with_alt_property = array(
+    $image_with_alt_property = [
       '#theme' => 'image',
       '#uri' => '/core/themes/bartik/logo.svg',
       '#alt' => 'Regular alt',
       '#title' => 'Test title',
       '#width' => '50%',
       '#height' => '50%',
-      '#attributes' => array('class' => 'image-with-regular-alt', 'id' => 'my-img'),
-    );
+      '#attributes' => ['class' => 'image-with-regular-alt', 'id' => 'my-img'],
+    ];
 
     $this->setRawContent($renderer->renderRoot($image_with_alt_property));
-    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', array(":class" => "image-with-regular-alt", ":alt" => "Regular alt"));
+    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', [":class" => "image-with-regular-alt", ":alt" => "Regular alt"]);
     $this->assertEqual(count($elements), 1, 'Regular alt displays correctly');
 
     // Test using alt attribute inside attributes.
-    $image_with_alt_attribute_alt_attribute = array(
+    $image_with_alt_attribute_alt_attribute = [
       '#theme' => 'image',
       '#uri' => '/core/themes/bartik/logo.svg',
       '#width' => '50%',
       '#height' => '50%',
-      '#attributes' => array(
+      '#attributes' => [
         'class' => 'image-with-attribute-alt',
         'id' => 'my-img',
         'title' => 'New test title',
         'alt' => 'Attribute alt',
-      ),
-    );
+      ],
+    ];
 
     $this->setRawContent($renderer->renderRoot($image_with_alt_attribute_alt_attribute));
-    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', array(":class" => "image-with-attribute-alt", ":alt" => "Attribute alt"));
+    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', [":class" => "image-with-attribute-alt", ":alt" => "Attribute alt"]);
     $this->assertEqual(count($elements), 1, 'Attribute alt displays correctly');
 
     // Test using alt attribute as property and inside attributes.
-    $image_with_alt_attribute_both = array(
+    $image_with_alt_attribute_both = [
       '#theme' => 'image',
       '#uri' => '/core/themes/bartik/logo.svg',
       '#width' => '50%',
       '#height' => '50%',
       '#alt' => 'Kitten sustainable',
-      '#attributes' => array(
+      '#attributes' => [
         'class' => 'image-with-attribute-alt',
         'id' => 'my-img',
         'title' => 'New test title',
         'alt' => 'Attribute alt',
-      ),
-    );
+      ],
+    ];
 
     $this->setRawContent($renderer->renderRoot($image_with_alt_attribute_both));
-    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', array(":class" => "image-with-attribute-alt", ":alt" => "Attribute alt"));
+    $elements = $this->xpath('//img[contains(@class, class) and contains(@alt, :alt)]', [":class" => "image-with-attribute-alt", ":alt" => "Attribute alt"]);
     $this->assertEqual(count($elements), 1, 'Attribute alt overrides alt property if both set.');
   }
 
diff --git a/core/modules/image/src/Tests/Views/RelationshipUserImageDataTest.php b/core/modules/image/src/Tests/Views/RelationshipUserImageDataTest.php
index f9381d4..55cecc0 100644
--- a/core/modules/image/src/Tests/Views/RelationshipUserImageDataTest.php
+++ b/core/modules/image/src/Tests/Views/RelationshipUserImageDataTest.php
@@ -21,25 +21,25 @@ class RelationshipUserImageDataTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'image_test_views', 'user');
+  public static $modules = ['image', 'image_test_views', 'user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_image_user_image_data');
+  public static $testViews = ['test_image_user_image_data'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create the user profile field and instance.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'user',
       'field_name' => 'user_picture',
       'type' => 'image',
       'translatable' => '0',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'label' => 'User Picture',
       'description' => '',
@@ -49,7 +49,7 @@ protected function setUp() {
       'required' => 0,
     ])->save();
 
-    ViewTestData::createTestViews(get_class($this), array('image_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['image_test_views']);
   }
 
   /**
@@ -84,12 +84,12 @@ public function testViewsHandlerRelationshipUserImageData() {
     ];
     $this->assertIdentical($expected, $view->getDependencies());
     $this->executeView($view);
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'file_managed_user__user_picture_fid' => '2',
-      ),
-    );
-    $column_map = array('file_managed_user__user_picture_fid' => 'file_managed_user__user_picture_fid');
+      ],
+    ];
+    $column_map = ['file_managed_user__user_picture_fid' => 'file_managed_user__user_picture_fid'];
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
   }
 
diff --git a/core/modules/image/tests/modules/image_module_test/image_module_test.module b/core/modules/image/tests/modules/image_module_test/image_module_test.module
index df71375..20c515e 100644
--- a/core/modules/image/tests/modules/image_module_test/image_module_test.module
+++ b/core/modules/image/tests/modules/image_module_test/image_module_test.module
@@ -10,7 +10,7 @@
 function image_module_test_file_download($uri) {
   $default_uri = \Drupal::state()->get('image.test_file_download') ?: FALSE;
   if ($default_uri == $uri) {
-    return array('X-Image-Owned-By' => 'image_module_test');
+    return ['X-Image-Owned-By' => 'image_module_test'];
   }
 }
 
diff --git a/core/modules/image/tests/src/Functional/ImageEffectsTest.php b/core/modules/image/tests/src/Functional/ImageEffectsTest.php
index 17c343b..6e719d8 100644
--- a/core/modules/image/tests/src/Functional/ImageEffectsTest.php
+++ b/core/modules/image/tests/src/Functional/ImageEffectsTest.php
@@ -17,7 +17,7 @@ class ImageEffectsTest extends ToolkitTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'image_test', 'image_module_test');
+  public static $modules = ['image', 'image_test', 'image_module_test'];
 
   /**
    * The image effect manager.
@@ -35,11 +35,11 @@ protected function setUp() {
    * Test the image_resize_effect() function.
    */
   function testResizeEffect() {
-    $this->assertImageEffect('image_resize', array(
+    $this->assertImageEffect('image_resize', [
       'width' => 1,
       'height' => 2,
-    ));
-    $this->assertToolkitOperationsCalled(array('resize'));
+    ]);
+    $this->assertToolkitOperationsCalled(['resize']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -52,11 +52,11 @@ function testResizeEffect() {
    */
   function testScaleEffect() {
     // @todo: need to test upscaling.
-    $this->assertImageEffect('image_scale', array(
+    $this->assertImageEffect('image_scale', [
       'width' => 10,
       'height' => 10,
-    ));
-    $this->assertToolkitOperationsCalled(array('scale'));
+    ]);
+    $this->assertToolkitOperationsCalled(['scale']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -69,12 +69,12 @@ function testScaleEffect() {
    */
   function testCropEffect() {
     // @todo should test the keyword offsets.
-    $this->assertImageEffect('image_crop', array(
+    $this->assertImageEffect('image_crop', [
       'anchor' => 'top-1',
       'width' => 3,
       'height' => 4,
-    ));
-    $this->assertToolkitOperationsCalled(array('crop'));
+    ]);
+    $this->assertToolkitOperationsCalled(['crop']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -89,10 +89,10 @@ function testCropEffect() {
    */
   function testConvertEffect() {
     // Test jpeg.
-    $this->assertImageEffect('image_convert', array(
+    $this->assertImageEffect('image_convert', [
       'extension' => 'jpeg',
-    ));
-    $this->assertToolkitOperationsCalled(array('convert'));
+    ]);
+    $this->assertToolkitOperationsCalled(['convert']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -103,11 +103,11 @@ function testConvertEffect() {
    * Test the image_scale_and_crop_effect() function.
    */
   function testScaleAndCropEffect() {
-    $this->assertImageEffect('image_scale_and_crop', array(
+    $this->assertImageEffect('image_scale_and_crop', [
       'width' => 5,
       'height' => 10,
-    ));
-    $this->assertToolkitOperationsCalled(array('scale_and_crop'));
+    ]);
+    $this->assertToolkitOperationsCalled(['scale_and_crop']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -119,8 +119,8 @@ function testScaleAndCropEffect() {
    * Test the image_desaturate_effect() function.
    */
   function testDesaturateEffect() {
-    $this->assertImageEffect('image_desaturate', array());
-    $this->assertToolkitOperationsCalled(array('desaturate'));
+    $this->assertImageEffect('image_desaturate', []);
+    $this->assertToolkitOperationsCalled(['desaturate']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -132,11 +132,11 @@ function testDesaturateEffect() {
    */
   function testRotateEffect() {
     // @todo: need to test with 'random' => TRUE
-    $this->assertImageEffect('image_rotate', array(
+    $this->assertImageEffect('image_rotate', [
       'degrees' => 90,
       'bgcolor' => '#fff',
-    ));
-    $this->assertToolkitOperationsCalled(array('rotate'));
+    ]);
+    $this->assertToolkitOperationsCalled(['rotate']);
 
     // Check the parameters.
     $calls = $this->imageTestGetAllCalls();
@@ -195,7 +195,7 @@ public function testEffectFormValidationErrors() {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertImageEffect($effect_name, array $data) {
-    $effect = $this->manager->createInstance($effect_name, array('data' => $data));
+    $effect = $this->manager->createInstance($effect_name, ['data' => $data]);
     return $this->assertTrue($effect->applyEffect($this->image), 'Function returned the expected value.');
   }
 
diff --git a/core/modules/image/tests/src/Functional/ImageFieldTestBase.php b/core/modules/image/tests/src/Functional/ImageFieldTestBase.php
index dfbc76e..0764954 100644
--- a/core/modules/image/tests/src/Functional/ImageFieldTestBase.php
+++ b/core/modules/image/tests/src/Functional/ImageFieldTestBase.php
@@ -30,7 +30,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'image', 'field_ui', 'image_module_test');
+  public static $modules = ['node', 'image', 'field_ui', 'image_module_test'];
 
   /**
    * An user with permissions to administer content types and image styles.
@@ -44,11 +44,11 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
 
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer node fields', 'administer nodes', 'create article content', 'edit any article content', 'delete any article content', 'administer image styles', 'administer node display'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer node fields', 'administer nodes', 'create article content', 'edit any article content', 'delete any article content', 'administer image styles', 'administer node display']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -63,9 +63,9 @@ protected function setUp() {
    *   The type of node to create.
    */
   function previewNodeImage($image, $field_name, $type) {
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $edit['files[' . $field_name . '_0]'] = drupal_realpath($image->uri);
     $this->drupalPostForm('node/add/' . $type, $edit, t('Preview'));
   }
@@ -83,9 +83,9 @@ function previewNodeImage($image, $field_name, $type) {
    *   The alt text for the image. Use if the field settings require alt text.
    */
   function uploadNodeImage($image, $field_name, $type, $alt = '') {
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
-    );
+    ];
     $edit['files[' . $field_name . '_0]'] = drupal_realpath($image->uri);
     $this->drupalPostForm('node/add/' . $type, $edit, t('Save and publish'));
     if ($alt) {
@@ -94,7 +94,7 @@ function uploadNodeImage($image, $field_name, $type, $alt = '') {
     }
 
     // Retrieve ID of the newly created node from the current URL.
-    $matches = array();
+    $matches = [];
     preg_match('/node\/([0-9]+)/', $this->getUrl(), $matches);
     return isset($matches[1]) ? $matches[1] : FALSE;
   }
diff --git a/core/modules/image/tests/src/Functional/ImageFieldWidgetTest.php b/core/modules/image/tests/src/Functional/ImageFieldWidgetTest.php
index 74743db..7c3b94d 100644
--- a/core/modules/image/tests/src/Functional/ImageFieldWidgetTest.php
+++ b/core/modules/image/tests/src/Functional/ImageFieldWidgetTest.php
@@ -17,12 +17,12 @@ public function testWidgetElement() {
     $field_name = strtolower($this->randomMachineName());
     $min_resolution = 50;
     $max_resolution = 100;
-    $field_settings = array(
+    $field_settings = [
       'max_resolution' => $max_resolution . 'x' . $max_resolution,
       'min_resolution' => $min_resolution . 'x' . $min_resolution,
       'alt_field' => 0,
-    );
-    $this->createImageField($field_name, 'article', array(), $field_settings, array(), array(), 'Image test on [site:name]');
+    ];
+    $this->createImageField($field_name, 'article', [], $field_settings, [], [], 'Image test on [site:name]');
     $this->drupalGet('node/add/article');
     $this->assertNotEqual(0, count($this->xpath('//div[contains(@class, "field--widget-image-image")]')), 'Image field widget found on add/node page', 'Browser');
     $this->assertNotEqual(0, count($this->xpath('//input[contains(@accept, "image/*")]')), 'Image field widget limits accepted files.', 'Browser');
diff --git a/core/modules/image/tests/src/Kernel/ImageFieldCreationTrait.php b/core/modules/image/tests/src/Kernel/ImageFieldCreationTrait.php
index a8fe589..851b424 100644
--- a/core/modules/image/tests/src/Kernel/ImageFieldCreationTrait.php
+++ b/core/modules/image/tests/src/Kernel/ImageFieldCreationTrait.php
@@ -30,14 +30,14 @@
    * @param string $description
    *   (optional) A description for the field. Defaults to ''.
    */
-  protected function createImageField($name, $type_name, $storage_settings = array(), $field_settings = array(), $widget_settings = array(), $formatter_settings = array(), $description = '') {
-    FieldStorageConfig::create(array(
+  protected function createImageField($name, $type_name, $storage_settings = [], $field_settings = [], $widget_settings = [], $formatter_settings = [], $description = '') {
+    FieldStorageConfig::create([
       'field_name' => $name,
       'entity_type' => 'node',
       'type' => 'image',
       'settings' => $storage_settings,
       'cardinality' => !empty($storage_settings['cardinality']) ? $storage_settings['cardinality'] : 1,
-    ))->save();
+    ])->save();
 
     $field_config = FieldConfig::create([
       'field_name' => $name,
@@ -51,17 +51,17 @@ protected function createImageField($name, $type_name, $storage_settings = array
     $field_config->save();
 
     entity_get_form_display('node', $type_name, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'image_image',
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
 
     entity_get_display('node', $type_name, 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'image',
         'settings' => $formatter_settings,
-      ))
+      ])
       ->save();
 
     return $field_config;
diff --git a/core/modules/image/tests/src/Kernel/ImageFormatterTest.php b/core/modules/image/tests/src/Kernel/ImageFormatterTest.php
index d1b132e..cd8a45b 100644
--- a/core/modules/image/tests/src/Kernel/ImageFormatterTest.php
+++ b/core/modules/image/tests/src/Kernel/ImageFormatterTest.php
@@ -21,7 +21,7 @@ class ImageFormatterTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'image');
+  public static $modules = ['file', 'image'];
 
   /**
    * @var string
@@ -52,18 +52,18 @@ protected function setUp() {
     $this->installConfig(['field']);
     $this->installEntitySchema('entity_test');
     $this->installEntitySchema('file');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
 
     $this->entityType = 'entity_test';
     $this->bundle = $this->entityType;
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => $this->entityType,
       'field_name' => $this->fieldName,
       'type' => 'image',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => $this->entityType,
       'field_name' => $this->fieldName,
diff --git a/core/modules/image/tests/src/Kernel/ImageItemTest.php b/core/modules/image/tests/src/Kernel/ImageItemTest.php
index dea4534..f7a1305 100644
--- a/core/modules/image/tests/src/Kernel/ImageItemTest.php
+++ b/core/modules/image/tests/src/Kernel/ImageItemTest.php
@@ -23,7 +23,7 @@ class ImageItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'image');
+  public static $modules = ['file', 'image'];
 
   /**
    * Created file entity.
@@ -41,14 +41,14 @@ protected function setUp() {
     parent::setUp();
 
     $this->installEntitySchema('file');
-    $this->installSchema('file', array('file_usage'));
+    $this->installSchema('file', ['file_usage']);
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'image_test',
       'type' => 'image',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'image_test',
@@ -114,11 +114,11 @@ public function testImageItem() {
 
     // Delete the image and try to save the entity again.
     $this->image->delete();
-    $entity = EntityTest::create(array('mame' => $this->randomMachineName()));
+    $entity = EntityTest::create(['mame' => $this->randomMachineName()]);
     $entity->save();
 
     // Test image item properties.
-    $expected = array('target_id', 'entity', 'alt', 'title', 'width', 'height');
+    $expected = ['target_id', 'entity', 'alt', 'title', 'width', 'height'];
     $properties = $entity->getFieldDefinition('image_test')->getFieldStorageDefinition()->getPropertyDefinitions();
     $this->assertEqual(array_keys($properties), $expected);
 
diff --git a/core/modules/image/tests/src/Kernel/Migrate/d6/MigrateImageCacheTest.php b/core/modules/image/tests/src/Kernel/Migrate/d6/MigrateImageCacheTest.php
index 10cc68d..d938140 100644
--- a/core/modules/image/tests/src/Kernel/Migrate/d6/MigrateImageCacheTest.php
+++ b/core/modules/image/tests/src/Kernel/Migrate/d6/MigrateImageCacheTest.php
@@ -28,9 +28,9 @@ protected function setUp() {
    */
   public function testMissingTable() {
     $this->sourceDatabase->update('system')
-      ->fields(array(
+      ->fields([
         'status' => 0,
-      ))
+      ])
       ->condition('name', 'imagecache')
       ->condition('type', 'module')
       ->execute();
diff --git a/core/modules/image/tests/src/Kernel/Migrate/d7/MigrateImageStylesTest.php b/core/modules/image/tests/src/Kernel/Migrate/d7/MigrateImageStylesTest.php
index 0903218..534a412 100644
--- a/core/modules/image/tests/src/Kernel/Migrate/d7/MigrateImageStylesTest.php
+++ b/core/modules/image/tests/src/Kernel/Migrate/d7/MigrateImageStylesTest.php
@@ -17,7 +17,7 @@ class MigrateImageStylesTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('image');
+  public static $modules = ['image'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
index bb91de8..55251d1 100644
--- a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
+++ b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
@@ -38,7 +38,7 @@ public function providerSource() {
         'isid' => 1,
         'weight' => 1,
         'name' => 'image_desaturate',
-        'data' => serialize(array()),
+        'data' => serialize([]),
       ],
     ];
 
diff --git a/core/modules/image/tests/src/Kernel/Views/ImageViewsDataTest.php b/core/modules/image/tests/src/Kernel/Views/ImageViewsDataTest.php
index c2f8fd8..a324d5e 100644
--- a/core/modules/image/tests/src/Kernel/Views/ImageViewsDataTest.php
+++ b/core/modules/image/tests/src/Kernel/Views/ImageViewsDataTest.php
@@ -19,7 +19,7 @@ class ImageViewsDataTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('image', 'file', 'views', 'entity_test', 'user', 'field');
+  public static $modules = ['image', 'file', 'views', 'entity_test', 'user', 'field'];
 
   /**
    * Tests views data generated for image field relationship.
@@ -29,16 +29,16 @@ class ImageViewsDataTest extends ViewsKernelTestBase {
    */
   public function testRelationshipViewsData() {
     // Create image field to entity_test.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_base_image',
       'type' => 'image',
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_base_image',
       'bundle' => 'entity_test',
-    ))->save();
+    ])->save();
     // Check the generated views data.
     $views_data = Views::viewsData()->get('entity_test__field_base_image');
     $relationship = $views_data['field_base_image_target_id']['relationship'];
@@ -59,16 +59,16 @@ public function testRelationshipViewsData() {
     $this->assertEqual($relationship['join_extra'][0], ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE]);
 
     // Create image field to entity_test_mul.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test_mul',
       'field_name' => 'field_data_image',
       'type' => 'image',
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test_mul',
       'field_name' => 'field_data_image',
       'bundle' => 'entity_test_mul',
-    ))->save();
+    ])->save();
     // Check the generated views data.
     $views_data = Views::viewsData()->get('entity_test_mul__field_data_image');
     $relationship = $views_data['field_data_image_target_id']['relationship'];
diff --git a/core/modules/image/tests/src/Unit/ImageStyleTest.php b/core/modules/image/tests/src/Unit/ImageStyleTest.php
index 26dd225..bc954b3 100644
--- a/core/modules/image/tests/src/Unit/ImageStyleTest.php
+++ b/core/modules/image/tests/src/Unit/ImageStyleTest.php
@@ -44,7 +44,7 @@ class ImageStyleTest extends UnitTestCase {
    * @return \Drupal\image\ImageStyleInterface
    *   The mocked image style.
    */
-  protected function getImageStyleMock($image_effect_id, $image_effect, $stubs = array()) {
+  protected function getImageStyleMock($image_effect_id, $image_effect, $stubs = []) {
     $effectManager = $this->getMockBuilder('\Drupal\image\ImageEffectManager')
       ->disableOriginalConstructor()
       ->getMock();
@@ -52,17 +52,17 @@ protected function getImageStyleMock($image_effect_id, $image_effect, $stubs = a
       ->method('createInstance')
       ->with($image_effect_id)
       ->will($this->returnValue($image_effect));
-    $default_stubs = array(
+    $default_stubs = [
       'getImageEffectPluginManager',
       'fileUriScheme',
       'fileUriTarget',
       'fileDefaultScheme',
-    );
+    ];
     $image_style = $this->getMockBuilder('\Drupal\image\Entity\ImageStyle')
-      ->setConstructorArgs(array(
-        array('effects' => array($image_effect_id => array('id' => $image_effect_id))),
+      ->setConstructorArgs([
+        ['effects' => [$image_effect_id => ['id' => $image_effect_id]]],
         $this->entityTypeId,
-      ))
+      ])
       ->setMethods(array_merge($default_stubs, $stubs))
       ->getMock();
 
@@ -71,13 +71,13 @@ protected function getImageStyleMock($image_effect_id, $image_effect, $stubs = a
       ->will($this->returnValue($effectManager));
     $image_style->expects($this->any())
       ->method('fileUriScheme')
-      ->will($this->returnCallback(array($this, 'fileUriScheme')));
+      ->will($this->returnCallback([$this, 'fileUriScheme']));
     $image_style->expects($this->any())
       ->method('fileUriTarget')
-      ->will($this->returnCallback(array($this, 'fileUriTarget')));
+      ->will($this->returnCallback([$this, 'fileUriTarget']));
     $image_style->expects($this->any())
       ->method('fileDefaultScheme')
-      ->will($this->returnCallback(array($this, 'fileDefaultScheme')));
+      ->will($this->returnCallback([$this, 'fileDefaultScheme']));
 
     return $image_style;
   }
@@ -106,7 +106,7 @@ public function testGetDerivativeExtension() {
     $image_effect_id = $this->randomMachineName();
     $logger = $this->getMockBuilder('\Psr\Log\LoggerInterface')->getMock();
     $image_effect = $this->getMockBuilder('\Drupal\image\ImageEffectBase')
-      ->setConstructorArgs(array(array(), $image_effect_id, array(), $logger))
+      ->setConstructorArgs([[], $image_effect_id, [], $logger])
       ->getMock();
     $image_effect->expects($this->any())
       ->method('getDerivativeExtension')
@@ -114,7 +114,7 @@ public function testGetDerivativeExtension() {
 
     $image_style = $this->getImageStyleMock($image_effect_id, $image_effect);
 
-    $extensions = array('jpeg', 'gif', 'png');
+    $extensions = ['jpeg', 'gif', 'png'];
     foreach ($extensions as $extension) {
       $extensionReturned = $image_style->getDerivativeExtension($extension);
       $this->assertEquals($extensionReturned, 'png');
@@ -129,7 +129,7 @@ public function testBuildUri() {
     $image_effect_id = $this->randomMachineName();
     $logger = $this->getMockBuilder('\Psr\Log\LoggerInterface')->getMock();
     $image_effect = $this->getMockBuilder('\Drupal\image\ImageEffectBase')
-      ->setConstructorArgs(array(array(), $image_effect_id, array(), $logger))
+      ->setConstructorArgs([[], $image_effect_id, [], $logger])
       ->getMock();
     $image_effect->expects($this->any())
       ->method('getDerivativeExtension')
@@ -141,7 +141,7 @@ public function testBuildUri() {
     // Image style that doesn't change the extension.
     $image_effect_id = $this->randomMachineName();
     $image_effect = $this->getMockBuilder('\Drupal\image\ImageEffectBase')
-      ->setConstructorArgs(array(array(), $image_effect_id, array(), $logger))
+      ->setConstructorArgs([[], $image_effect_id, [], $logger])
       ->getMock();
     $image_effect->expects($this->any())
       ->method('getDerivativeExtension')
@@ -162,13 +162,13 @@ public function testGetPathToken() {
     // Image style that changes the extension.
     $image_effect_id = $this->randomMachineName();
     $image_effect = $this->getMockBuilder('\Drupal\image\ImageEffectBase')
-      ->setConstructorArgs(array(array(), $image_effect_id, array(), $logger))
+      ->setConstructorArgs([[], $image_effect_id, [], $logger])
       ->getMock();
     $image_effect->expects($this->any())
       ->method('getDerivativeExtension')
       ->will($this->returnValue('png'));
 
-    $image_style = $this->getImageStyleMock($image_effect_id, $image_effect, array('getPrivateKey', 'getHashSalt'));
+    $image_style = $this->getImageStyleMock($image_effect_id, $image_effect, ['getPrivateKey', 'getHashSalt']);
     $image_style->expects($this->any())
       ->method('getPrivateKey')
       ->will($this->returnValue($private_key));
@@ -184,13 +184,13 @@ public function testGetPathToken() {
     // Image style that doesn't change the extension.
     $image_effect_id = $this->randomMachineName();
     $image_effect = $this->getMockBuilder('\Drupal\image\ImageEffectBase')
-      ->setConstructorArgs(array(array(), $image_effect_id, array(), $logger))
+      ->setConstructorArgs([[], $image_effect_id, [], $logger])
       ->getMock();
     $image_effect->expects($this->any())
       ->method('getDerivativeExtension')
       ->will($this->returnArgument(0));
 
-    $image_style = $this->getImageStyleMock($image_effect_id, $image_effect, array('getPrivateKey', 'getHashSalt'));
+    $image_style = $this->getImageStyleMock($image_effect_id, $image_effect, ['getPrivateKey', 'getHashSalt']);
     $image_style->expects($this->any())
       ->method('getPrivateKey')
       ->will($this->returnValue($private_key));
diff --git a/core/modules/language/language.admin.inc b/core/modules/language/language.admin.inc
index b5a8ec6..a55e65a 100644
--- a/core/modules/language/language.admin.inc
+++ b/core/modules/language/language.admin.inc
@@ -19,33 +19,33 @@
  */
 function template_preprocess_language_negotiation_configure_form(&$variables) {
   $form =& $variables['form'];
-  $variables['language_types'] = array();
+  $variables['language_types'] = [];
 
   foreach ($form['#language_types'] as $type) {
-    $header = array(
+    $header = [
       t('Detection method'),
       t('Description'),
       t('Enabled'),
       t('Weight'),
-    );
+    ];
 
     // If there is at least one operation enabled show the operation column.
     if ($form[$type]['#show_operations']) {
       $header[] = t('Operations');
     }
 
-    $table = array(
+    $table = [
       '#type' => 'table',
       '#header' => $header,
-      '#attributes' => array('id' => 'language-negotiation-methods-' . $type),
-      '#tabledrag' => array(
-        array(
+      '#attributes' => ['id' => 'language-negotiation-methods-' . $type],
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'language-method-weight-' . $type,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     foreach ($form[$type]['title'] as $id => $element) {
       // Do not take form control structures.
@@ -53,11 +53,11 @@ function template_preprocess_language_negotiation_configure_form(&$variables) {
         $table[$id]['#attributes']['class'][] = 'draggable';
         $table[$id]['#weight'] = $element['#weight'];
 
-        $table[$id]['title'] = array(
+        $table[$id]['title'] = [
           '#prefix' => '<strong>',
           $form[$type]['title'][$id],
           '#suffix' => '</strong>',
-        );
+        ];
         $table[$id]['description'] = $form[$type]['description'][$id];
         $table[$id]['enabled'] = $form[$type]['enabled'][$id];
         $table[$id]['weight'] = $form[$type]['weight'][$id];
@@ -77,7 +77,7 @@ function template_preprocess_language_negotiation_configure_form(&$variables) {
     $configurable = isset($form[$type]['configurable']) ? $form[$type]['configurable'] : NULL;
     unset($form[$type]['configurable']);
 
-    $variables['language_types'][] = array(
+    $variables['language_types'][] = [
       'type' => $type,
       'title' => $form[$type]['#title'],
       'description' => $form[$type]['#description'],
@@ -85,7 +85,7 @@ function template_preprocess_language_negotiation_configure_form(&$variables) {
       'table' => $table,
       'children' => $form[$type],
       'attributes' => new Attribute(),
-    );
+    ];
     // Prevent the type from rendering with the remaining form child elements.
     unset($form[$type]);
   }
@@ -107,42 +107,42 @@ function template_preprocess_language_content_settings_table(&$variables) {
   // Add a render element representing the bundle language settings table.
   $element = $variables['element'];
 
-  $header = array(
-    array(
+  $header = [
+    [
       'data' => $element['#bundle_label'],
-      'class' => array('bundle'),
-    ),
-    array(
+      'class' => ['bundle'],
+    ],
+    [
       'data' => t('Configuration'),
-      'class' => array('operations'),
-    ),
-  );
+      'class' => ['operations'],
+    ],
+  ];
 
-  $rows = array();
+  $rows = [];
   foreach (Element::children($element) as $bundle) {
-    $rows[$bundle] = array(
-      'data' => array(
-        array(
-          'data' => array(
+    $rows[$bundle] = [
+      'data' => [
+        [
+          'data' => [
             '#prefix' => '<label>',
             '#suffix' => '</label>',
             '#plain_text' => $element[$bundle]['settings']['#label'],
-          ),
-          'class' => array('bundle'),
-        ),
-        array(
+          ],
+          'class' => ['bundle'],
+        ],
+        [
           'data' => $element[$bundle]['settings'],
-          'class' => array('operations'),
-        ),
-      ),
-      'class' => array('bundle-settings'),
-    );
+          'class' => ['operations'],
+        ],
+      ],
+      'class' => ['bundle-settings'],
+    ];
   }
 
   $variables['title'] = $element['#title'];
-  $variables['build'] = array(
+  $variables['build'] = [
     '#header' => $header,
     '#rows' => $rows,
     '#type' => 'table',
-  );
+  ];
 }
diff --git a/core/modules/language/language.api.php b/core/modules/language/language.api.php
index aaaa5a3..ff04a8e 100644
--- a/core/modules/language/language.api.php
+++ b/core/modules/language/language.api.php
@@ -35,17 +35,17 @@
  * @ingroup language_negotiation
  */
 function hook_language_types_info() {
-  return array(
-    'custom_language_type' => array(
+  return [
+    'custom_language_type' => [
       'name' => t('Custom language'),
       'description' => t('A custom language type.'),
       'locked' => FALSE,
-    ),
-    'fixed_custom_language_type' => array(
+    ],
+    'fixed_custom_language_type' => [
       'locked' => TRUE,
-      'fixed' => array('custom_language_negotiation_method'),
-    ),
-  );
+      'fixed' => ['custom_language_negotiation_method'],
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/language/language.module b/core/modules/language/language.module
index 516f54f..8066aa9 100644
--- a/core/modules/language/language.module
+++ b/core/modules/language/language.module
@@ -29,42 +29,42 @@ function language_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.language':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Language module allows you to configure the languages used on your site, and provides information for the <a href=":content">Content Translation</a>, <a href=":interface">Interface Translation</a>, and <a href=":configuration">Configuration Translation</a> modules, if they are enabled. For more information, see the <a href=":doc_url">online documentation for the Language module</a>.', array(':doc_url' => 'https://www.drupal.org/documentation/modules/language', ':content' => (\Drupal::moduleHandler()->moduleExists('content_translation')) ? \Drupal::url('help.page', array('name' => 'content_translation')) : '#', ':interface' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', array('name' => 'locale')) : '#', ':configuration' => (\Drupal::moduleHandler()->moduleExists('config_translation')) ? \Drupal::url('help.page', array('name' => 'config_translation')) : '#')) . '</p>';
+      $output .= '<p>' . t('The Language module allows you to configure the languages used on your site, and provides information for the <a href=":content">Content Translation</a>, <a href=":interface">Interface Translation</a>, and <a href=":configuration">Configuration Translation</a> modules, if they are enabled. For more information, see the <a href=":doc_url">online documentation for the Language module</a>.', [':doc_url' => 'https://www.drupal.org/documentation/modules/language', ':content' => (\Drupal::moduleHandler()->moduleExists('content_translation')) ? \Drupal::url('help.page', ['name' => 'content_translation']) : '#', ':interface' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', ['name' => 'locale']) : '#', ':configuration' => (\Drupal::moduleHandler()->moduleExists('config_translation')) ? \Drupal::url('help.page', ['name' => 'config_translation']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Adding languages') . '</dt>';
-      $output .= '<dd>' . t('You can add languages on the <a href=":language_list">Languages</a> page by selecting <em>Add language</em> and choosing a language from the drop-down menu. This language is then displayed in the languages list, where it can be configured further. If the <a href=":interface">Interface translation module</a> is enabled, and the <em>translation server</em> is set as a translation source, then the interface translation for this language is automatically downloaded as well.', array(':language_list' => \Drupal::url('entity.configurable_language.collection'), ':interface' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', array('name' => 'locale')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('You can add languages on the <a href=":language_list">Languages</a> page by selecting <em>Add language</em> and choosing a language from the drop-down menu. This language is then displayed in the languages list, where it can be configured further. If the <a href=":interface">Interface translation module</a> is enabled, and the <em>translation server</em> is set as a translation source, then the interface translation for this language is automatically downloaded as well.', [':language_list' => \Drupal::url('entity.configurable_language.collection'), ':interface' => (\Drupal::moduleHandler()->moduleExists('locale')) ? \Drupal::url('help.page', ['name' => 'locale']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Adding custom languages') . '</dt>';
       $output .= '<dd>' . t('You can add a language that is not provided in the drop-down list by choosing <em>Custom language</em> at the end of the list. You then have to configure its language code, name, and direction in the form provided.') . '</dd>';
       $output .= '<dt>' . t('Configuring content languages') . '</dt>';
-      $output .= '<dd>' . t('By default, content is created in the site\'s default language and no language selector is displayed on content creation pages. On the <a href=":content_language">Content language</a> page you can customize the language configuration for any supported content entity on your site (for example for content types or menu links). After choosing an entity, you are provided with a drop-down menu to set the default language and a check-box to display language selectors.', array(':content_language' => \Drupal::url('language.content_settings_page'))) . '</dd>';
+      $output .= '<dd>' . t('By default, content is created in the site\'s default language and no language selector is displayed on content creation pages. On the <a href=":content_language">Content language</a> page you can customize the language configuration for any supported content entity on your site (for example for content types or menu links). After choosing an entity, you are provided with a drop-down menu to set the default language and a check-box to display language selectors.', [':content_language' => \Drupal::url('language.content_settings_page')]) . '</dd>';
       $output .= '<dt>' . t('Adding a language switcher block') . '</dt>';
-      $output .= '<dd>' . t('If the Block module is enabled, then you can add a language switcher block on the <a href=":blocks">Block layout</a> page to allow users to switch between languages.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+      $output .= '<dd>' . t('If the Block module is enabled, then you can add a language switcher block on the <a href=":blocks">Block layout</a> page to allow users to switch between languages.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       $output .= '<dt>' . t('Making a block visible per language') . '</dt>';
-      $output .= '<dd>' . t('If the Block module is enabled, then the Language module allows you to set the visibility of a block based on selected languages on the <a href=":blocks">Block layout</a> page.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+      $output .= '<dd>' . t('If the Block module is enabled, then the Language module allows you to set the visibility of a block based on selected languages on the <a href=":blocks">Block layout</a> page.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       $output .= '<dt>' . t('Choosing user languages') . '</dt>';
       $output .= '<dd>' . t('Users can choose a <em>Site language</em> on their profile page. This language is used for email messages, and can be used by modules to determine a user\'s language. It can also be used for interface text, if the <em>User</em> method is enabled as a <em>Detection and selection</em> method (see below). Administrative users can choose a separate <em>Administration pages language</em> for the interface text on administration pages. This configuration is only available on the user\'s profile page if the <em>Account administration pages</em> method is enabled (see below).') . '</dd>';
       $output .= '<dt>' . t('Language detection and selection') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":detection">Detection and selection</a> page provides several methods for deciding which language is used for displaying interface text. When a method detects and selects an interface language, then the following methods in the list are not applied. You can order them by importance, with your preferred method at the top of the list, followed by one or several fall-back methods.', array(':detection' => \Drupal::url('language.negotiation')));
+      $output .= '<dd>' . t('The <a href=":detection">Detection and selection</a> page provides several methods for deciding which language is used for displaying interface text. When a method detects and selects an interface language, then the following methods in the list are not applied. You can order them by importance, with your preferred method at the top of the list, followed by one or several fall-back methods.', [':detection' => \Drupal::url('language.negotiation')]);
       $output .= '<ul><li>' . t('<em>URL</em> sets the interface language based on a path prefix or domain (for example specifying <em>de</em> for German would result in URLs like <em>example.com/de/contact</em>). The default language does not require a path prefix, but can have one assigned as well. If the language detection is done by domain name, a domain needs to be specified for each language.') . '</li>';
       $output .= '<li>' . t('<em>Session</em> determines the interface language from a request or session parameter (for example <em>example.com?language=de</em> would set the interface language to German based on the use of <em>de</em> as the <em>language</em> parameter).') . '</li>';
       $output .= '<li>' . t('<em>User</em> follows the language configuration set on the user\'s profile page.') . '</li>';
-      $output .= '<li>' . t('<em>Browser</em> sets the interface language based on the browser\'s language settings. Since browsers use different language codes to refer to the same languages, you can add and edit languages codes to map the browser language codes to the <a href=":language_list">language codes</a> used on your site.', array(':language_list' => \Drupal::url('entity.configurable_language.collection'))) . '</li>';
+      $output .= '<li>' . t('<em>Browser</em> sets the interface language based on the browser\'s language settings. Since browsers use different language codes to refer to the same languages, you can add and edit languages codes to map the browser language codes to the <a href=":language_list">language codes</a> used on your site.', [':language_list' => \Drupal::url('entity.configurable_language.collection')]) . '</li>';
       $output .= '<li>' . t('<em>Account administration pages</em> follows the configuration set as <em>Administration pages language</em> on the profile page of an administrative user. This method is similar to the <em>User</em> method, but only sets the interface text language on administration pages, independent of the interface text language on other pages.') . '</li>';
       $output .= '<li>' . t('<em>Selected language</em> allows you to specify the site\'s default language or a specific language as the fall-back language. This method should be listed last.') . '</li></ul></dd>';
       $output .= '</dl>';
       return $output;
 
     case 'entity.configurable_language.collection':
-      $output = '<p>' . t('Reorder the configured languages to set their order in the language switcher block and, when editing content, in the list of selectable languages. This ordering does not impact <a href=":detection">detection and selection</a>.', array(':detection' => \Drupal::url('language.negotiation'))) . '</p>';
-      $output .= '<p>' . t('The site default language can also be set. It is not recommended to change the default language on a working site. <a href=":language-detection">Configure the Selected language</a> setting on the detection and selection page to change the fallback language for language selection.', array(':language-detection' => \Drupal::url('language.negotiation'))) . '</p>';
+      $output = '<p>' . t('Reorder the configured languages to set their order in the language switcher block and, when editing content, in the list of selectable languages. This ordering does not impact <a href=":detection">detection and selection</a>.', [':detection' => \Drupal::url('language.negotiation')]) . '</p>';
+      $output .= '<p>' . t('The site default language can also be set. It is not recommended to change the default language on a working site. <a href=":language-detection">Configure the Selected language</a> setting on the detection and selection page to change the fallback language for language selection.', [':language-detection' => \Drupal::url('language.negotiation')]) . '</p>';
       return $output;
 
     case 'language.add':
       return '<p>' . t('Add a language to be supported by your site. If your desired language is not available, pick <em>Custom language...</em> at the end and provide a language code and other details manually.') . '</p>';
 
     case 'language.negotiation':
-      $output = '<p>' . t('Define how to decide which language is used to display page elements (primarily text provided by modules, such as field labels and help text). This decision is made by evaluating a series of detection methods for languages; the first detection method that gets a result will determine which language is used for that type of text. Be aware that some language detection methods are unreliable under certain conditions, such as browser detection when page-caching is enabled and a user is not currently logged in. Define the order of evaluation of language detection methods on this page. The default language can be changed in the <a href=":admin-change-language">list of languages</a>.', array(':admin-change-language' => \Drupal::url('entity.configurable_language.collection'))) . '</p>';
+      $output = '<p>' . t('Define how to decide which language is used to display page elements (primarily text provided by modules, such as field labels and help text). This decision is made by evaluating a series of detection methods for languages; the first detection method that gets a result will determine which language is used for that type of text. Be aware that some language detection methods are unreliable under certain conditions, such as browser detection when page-caching is enabled and a user is not currently logged in. Define the order of evaluation of language detection methods on this page. The default language can be changed in the <a href=":admin-change-language">list of languages</a>.', [':admin-change-language' => \Drupal::url('entity.configurable_language.collection')]) . '</p>';
       return $output;
 
     case 'language.negotiation_session':
@@ -72,11 +72,11 @@ function language_help($route_name, RouteMatchInterface $route_match) {
       return $output;
 
     case 'language.negotiation_browser':
-      $output = '<p>' . t('Browsers use different language codes to refer to the same languages. Internally, a best effort is made to determine the correct language based on the code that the browser sends. You can add and edit additional mappings from browser language codes to <a href=":configure-languages">site languages</a>.', array(':configure-languages' => \Drupal::url('entity.configurable_language.collection'))) . '</p>';
+      $output = '<p>' . t('Browsers use different language codes to refer to the same languages. Internally, a best effort is made to determine the correct language based on the code that the browser sends. You can add and edit additional mappings from browser language codes to <a href=":configure-languages">site languages</a>.', [':configure-languages' => \Drupal::url('entity.configurable_language.collection')]) . '</p>';
       return $output;
 
     case 'language.negotiation_selected':
-      $output = '<p>' . t('Changing the selected language here (and leaving this option as the last among the detection and selection options) is the easiest way to change the fallback language for the website, if you need to change how your site works by default (e.g., when using an empty path prefix or using the default domain). <a href=":admin-change-language">Changing the site\'s default language</a> itself might have other undesired side effects.', array(':admin-change-language' => \Drupal::url('entity.configurable_language.collection'))) . '</p>';
+      $output = '<p>' . t('Changing the selected language here (and leaving this option as the last among the detection and selection options) is the easiest way to change the fallback language for the website, if you need to change how your site works by default (e.g., when using an empty path prefix or using the default domain). <a href=":admin-change-language">Changing the site\'s default language</a> itself might have other undesired side effects.', [':admin-change-language' => \Drupal::url('entity.configurable_language.collection')]) . '</p>';
       return $output;
 
     case 'entity.block.edit_form':
@@ -100,16 +100,16 @@ function language_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function language_theme() {
-  return array(
-    'language_negotiation_configure_form' => array(
+  return [
+    'language_negotiation_configure_form' => [
       'render element' => 'form',
       'file' => 'language.admin.inc',
-    ),
-    'language_content_settings_table' => array(
+    ],
+    'language_content_settings_table' => [
       'render element' => 'element',
       'file' => 'language.admin.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -123,18 +123,18 @@ function language_element_info_alter(&$type) {
   // field.
   if (isset($type['language_select'])) {
     if (!isset($type['language_select']['#process'])) {
-      $type['language_select']['#process'] = array();
+      $type['language_select']['#process'] = [];
     }
     if (!isset($type['language_select']['#theme_wrappers'])) {
-      $type['language_select']['#theme_wrappers'] = array();
+      $type['language_select']['#theme_wrappers'] = [];
     }
-    $type['language_select']['#process'] = array_merge($type['language_select']['#process'], array(
+    $type['language_select']['#process'] = array_merge($type['language_select']['#process'], [
       'language_process_language_select',
-      array('Drupal\Core\Render\Element\Select', 'processSelect'),
-      array('Drupal\Core\Render\Element\RenderElement', 'processAjaxForm'),
-    ));
+      ['Drupal\Core\Render\Element\Select', 'processSelect'],
+      ['Drupal\Core\Render\Element\RenderElement', 'processAjaxForm'],
+    ]);
     $type['language_select']['#theme'] = 'select';
-    $type['language_select']['#theme_wrappers'] = array_merge($type['language_select']['#theme_wrappers'], array('form_element'));
+    $type['language_select']['#theme_wrappers'] = array_merge($type['language_select']['#theme_wrappers'], ['form_element']);
     $type['language_select']['#languages'] = LanguageInterface::STATE_CONFIGURABLE;
     $type['language_select']['#multiple'] = FALSE;
   }
@@ -153,9 +153,9 @@ function language_process_language_select($element) {
   // Don't set the options if another module (translation for example) already
   // set the options.
   if (!isset($element['#options'])) {
-    $element['#options'] = array();
+    $element['#options'] = [];
     foreach (\Drupal::languageManager()->getLanguages($element['#languages']) as $langcode => $language) {
-      $element['#options'][$langcode] = $language->isLocked() ? t('- @name -', array('@name' => $language->getName())) : $language->getName();
+      $element['#options'][$langcode] = $language->isLocked() ? t('- @name -', ['@name' => $language->getName()]) : $language->getName();
     }
   }
   return $element;
@@ -168,7 +168,7 @@ function language_entity_base_field_info_alter(&$fields) {
   foreach ($fields as $definition) {
     // Set configurable form display for language fields with display options.
     if ($definition->getType() == 'language') {
-      foreach (array('form', 'view') as $type) {
+      foreach (['form', 'view'] as $type) {
         if ($definition->getDisplayOptions($type)) {
           // The related configurations will be purged manually on Language
           // module uninstallation. @see language_modules_uninstalled().
@@ -201,8 +201,8 @@ function language_configuration_element_submit(&$form, FormStateInterface $form_
         }
       }
       $config = ContentLanguageSettings::loadByEntityTypeBundle($entity_type_id, $bundle);
-      $config->setDefaultLangcode($form_state->getValue(array($element_name, 'langcode')));
-      $config->setLanguageAlterable($form_state->getValue(array($element_name, 'language_alterable')));
+      $config->setDefaultLangcode($form_state->getValue([$element_name, 'langcode']));
+      $config->setLanguageAlterable($form_state->getValue([$element_name, 'language_alterable']));
       $config->save();
 
       // Set the form_state languaged with the updated bundle.
@@ -325,7 +325,7 @@ function language_modules_installed($modules) {
     // display definitions to make language fields display configurable. Since
     // this is not a hard dependency, and thus is not detected by the config
     // system, we have to clean up the related values manually.
-    foreach (array('entity_view_display', 'entity_form_display') as $key) {
+    foreach (['entity_view_display', 'entity_form_display'] as $key) {
       $displays = \Drupal::entityManager()->getStorage($key)->loadMultiple();
       /** @var \Drupal\Core\Entity\Display\EntityDisplayInterface $display */
       foreach ($displays as $display) {
@@ -393,7 +393,7 @@ function language_preprocess_block(&$variables) {
 function language_get_browser_drupal_langcode_mappings() {
   $config = \Drupal::config('language.mappings');
   if ($config->isNew()) {
-    return array();
+    return [];
   }
   return $config->get('map');
 }
@@ -462,7 +462,7 @@ function language_tour_tips_alter(array &$tour_tips, EntityInterface $entity) {
     }
     elseif ($tour_tip->get('id') == 'language-continue') {
       $additional_continue = '';
-      $additional_modules = array();
+      $additional_modules = [];
       if (!Drupal::service('module_handler')->moduleExists('locale')) {
         $additional_modules[] = Drupal::service('module_handler')->getName('locale');
       }
diff --git a/core/modules/language/src/Config/LanguageConfigFactoryOverride.php b/core/modules/language/src/Config/LanguageConfigFactoryOverride.php
index d1dd753..4c60a72 100644
--- a/core/modules/language/src/Config/LanguageConfigFactoryOverride.php
+++ b/core/modules/language/src/Config/LanguageConfigFactoryOverride.php
@@ -88,7 +88,7 @@ public function loadOverrides($names) {
       $storage = $this->getStorage($this->language->getId());
       return $storage->readMultiple($names);
     }
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/language/src/Config/LanguageConfigOverride.php b/core/modules/language/src/Config/LanguageConfigOverride.php
index 15e4fa6..6effe23 100644
--- a/core/modules/language/src/Config/LanguageConfigOverride.php
+++ b/core/modules/language/src/Config/LanguageConfigOverride.php
@@ -71,7 +71,7 @@ public function save($has_trusted_data = FALSE) {
    * {@inheritdoc}
    */
   public function delete() {
-    $this->data = array();
+    $this->data = [];
     $this->storage->delete($this->name);
     Cache::invalidateTags($this->getCacheTags());
     $this->isNew = TRUE;
diff --git a/core/modules/language/src/ConfigurableLanguageManager.php b/core/modules/language/src/ConfigurableLanguageManager.php
index 614cf77..de64c44 100644
--- a/core/modules/language/src/ConfigurableLanguageManager.php
+++ b/core/modules/language/src/ConfigurableLanguageManager.php
@@ -168,7 +168,7 @@ public function getDefinedLanguageTypes() {
    */
   protected function loadLanguageTypesConfiguration() {
     if (!$this->languageTypes) {
-      $this->languageTypes = $this->configFactory->get('language.types')->get() ?: array('configurable' => array(), 'all' => parent::getLanguageTypes());
+      $this->languageTypes = $this->configFactory->get('language.types')->get() ?: ['configurable' => [], 'all' => parent::getLanguageTypes()];
     }
     return $this->languageTypes;
   }
@@ -227,7 +227,7 @@ public function getCurrentLanguage($type = LanguageInterface::TYPE_INTERFACE) {
         // afterwards. This can happen for instance while parsing negotiation
         // method definitions.
         elseif ($type == LanguageInterface::TYPE_INTERFACE) {
-          return new Language(array('id' => LanguageInterface::LANGCODE_SYSTEM));
+          return new Language(['id' => LanguageInterface::LANGCODE_SYSTEM]);
         }
       }
     }
@@ -241,11 +241,11 @@ public function getCurrentLanguage($type = LanguageInterface::TYPE_INTERFACE) {
   public function reset($type = NULL) {
     if (!isset($type)) {
       $this->initialized = FALSE;
-      $this->negotiatedLanguages = array();
-      $this->negotiatedMethods = array();
+      $this->negotiatedLanguages = [];
+      $this->negotiatedMethods = [];
       $this->languageTypes = NULL;
       $this->languageTypesInfo = NULL;
-      $this->languages = array();
+      $this->languages = [];
       if ($this->negotiator) {
         $this->negotiator->reset();
       }
@@ -270,7 +270,7 @@ public function getNegotiator() {
   public function setNegotiator(LanguageNegotiatorInterface $negotiator) {
     $this->negotiator = $negotiator;
     $this->initialized = FALSE;
-    $this->negotiatedLanguages = array();
+    $this->negotiatedLanguages = [];
   }
 
   /**
@@ -292,7 +292,7 @@ public function getLanguages($flags = LanguageInterface::STATE_CONFIGURABLE) {
       // and the configuration entities for languages are not yet fully
       // imported.
       $default = $this->getDefaultLanguage();
-      $languages = array($default->getId() => $default);
+      $languages = [$default->getId() => $default];
       $languages += $this->getDefaultLockedLanguages($default->getWeight());
 
       // Load configurable languages on top of the defaults. Ideally this could
@@ -325,7 +325,7 @@ public function getLanguages($flags = LanguageInterface::STATE_CONFIGURABLE) {
    */
   public function getNativeLanguages() {
     $languages = $this->getLanguages(LanguageInterface::STATE_CONFIGURABLE);
-    $natives = array();
+    $natives = [];
 
     $original_language = $this->getConfigOverrideLanguage();
 
@@ -363,9 +363,9 @@ public function updateLockedLanguageWeights() {
   /**
    * {@inheritdoc}
    */
-  public function getFallbackCandidates(array $context = array()) {
+  public function getFallbackCandidates(array $context = []) {
     if ($this->isMultilingual()) {
-      $candidates = array();
+      $candidates = [];
       if (empty($context['operation']) || $context['operation'] != 'locale_lookup') {
         // If the fallback context is not locale_lookup, initialize the
         // candidates with languages ordered by weight and add
@@ -379,13 +379,13 @@ public function getFallbackCandidates(array $context = array()) {
         // The first candidate should always be the desired language if
         // specified.
         if (!empty($context['langcode'])) {
-          $candidates = array($context['langcode'] => $context['langcode']) + $candidates;
+          $candidates = [$context['langcode'] => $context['langcode']] + $candidates;
         }
       }
 
       // Let other modules hook in and add/change candidates.
       $type = 'language_fallback_candidates';
-      $types = array();
+      $types = [];
       if (!empty($context['operation'])) {
         $types[] = $type . '_' . $context['operation'];
       }
@@ -415,7 +415,7 @@ public function getLanguageSwitchLinks($type, Url $url) {
           if (!empty($result)) {
             // Allow modules to provide translations for specific links.
             $this->moduleHandler->alter('language_switch_links', $result, $type, $url);
-            $links = (object) array('links' => $result, 'method_id' => $method_id);
+            $links = (object) ['links' => $result, 'method_id' => $method_id];
             break;
           }
         }
diff --git a/core/modules/language/src/DefaultLanguageItem.php b/core/modules/language/src/DefaultLanguageItem.php
index 0e38890..83deee0 100644
--- a/core/modules/language/src/DefaultLanguageItem.php
+++ b/core/modules/language/src/DefaultLanguageItem.php
@@ -29,7 +29,7 @@ public function applyDefaultValue($notify = TRUE) {
       $langcode = $this->getDefaultLangcode($entity);
     }
     // Always notify otherwise default langcode will not be set correctly.
-    $this->setValue(array('value' => $langcode), TRUE);
+    $this->setValue(['value' => $langcode], TRUE);
     return $this;
   }
 
diff --git a/core/modules/language/src/Element/LanguageConfiguration.php b/core/modules/language/src/Element/LanguageConfiguration.php
index 0779693..63505bb 100644
--- a/core/modules/language/src/Element/LanguageConfiguration.php
+++ b/core/modules/language/src/Element/LanguageConfiguration.php
@@ -18,50 +18,50 @@ class LanguageConfiguration extends FormElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
+    return [
       '#input' => TRUE,
       '#tree' => TRUE,
-      '#process' => array(
-        array($class, 'processLanguageConfiguration'),
-      ),
-    );
+      '#process' => [
+        [$class, 'processLanguageConfiguration'],
+      ],
+    ];
   }
 
   /**
    * Process handler for the language_configuration form element.
    */
   public static function processLanguageConfiguration(&$element, FormStateInterface $form_state, &$form) {
-    $options = isset($element['#options']) ? $element['#options'] : array();
+    $options = isset($element['#options']) ? $element['#options'] : [];
     // Avoid validation failure since we are moving the '#options' key in the
     // nested 'language' select element.
     unset($element['#options']);
     /** @var \Drupal\language\Entity\ContentLanguageSettings $default_config */
     $default_config = $element['#default_value'];
-    $element['langcode'] = array(
+    $element['langcode'] = [
       '#type' => 'select',
       '#title' => t('Default language'),
       '#options' => $options + static::getDefaultOptions(),
-      '#description' => t('Explanation of the language options is found on the <a href=":languages_list_page">languages list page</a>.', array(':languages_list_page' => \Drupal::url('entity.configurable_language.collection'))),
+      '#description' => t('Explanation of the language options is found on the <a href=":languages_list_page">languages list page</a>.', [':languages_list_page' => \Drupal::url('entity.configurable_language.collection')]),
       '#default_value' => ($default_config != NULL) ? $default_config->getDefaultLangcode() : LanguageInterface::LANGCODE_SITE_DEFAULT,
-    );
+    ];
 
-    $element['language_alterable'] = array(
+    $element['language_alterable'] = [
       '#type' => 'checkbox',
       '#title' => t('Show language selector on create and edit pages'),
       '#default_value' => ($default_config != NULL) ? $default_config->isLanguageAlterable() : FALSE,
-    );
+    ];
 
     // Add the entity type and bundle information to the form if they are set.
     // They will be used, in the submit handler, to generate the names of the
     // configuration entities that will store the settings and are a way to uniquely
     // identify the entity.
     $language = $form_state->get('language') ?: [];
-    $language += array(
-      $element['#name'] => array(
+    $language += [
+      $element['#name'] => [
         'entity_type' => $element['#entity_information']['entity_type'],
         'bundle' => $element['#entity_information']['bundle'],
-      ),
-    );
+      ],
+    ];
     $form_state->set('language', $language);
 
     // Do not add the submit callback for the language content settings page,
@@ -89,15 +89,15 @@ public static function processLanguageConfiguration(&$element, FormStateInterfac
    *   An array containing the default options.
    */
   protected static function getDefaultOptions() {
-    $language_options = array(
-      LanguageInterface::LANGCODE_SITE_DEFAULT => t("Site's default language (@language)", array('@language' => static::languageManager()->getDefaultLanguage()->getName())),
+    $language_options = [
+      LanguageInterface::LANGCODE_SITE_DEFAULT => t("Site's default language (@language)", ['@language' => static::languageManager()->getDefaultLanguage()->getName()]),
       'current_interface' => t('Interface text language selected for page'),
       'authors_default' => t("Author's preferred language"),
-    );
+    ];
 
     $languages = static::languageManager()->getLanguages(LanguageInterface::STATE_ALL);
     foreach ($languages as $langcode => $language) {
-      $language_options[$langcode] = $language->isLocked() ? t('- @name -', array('@name' => $language->getName())) : $language->getName();
+      $language_options[$langcode] = $language->isLocked() ? t('- @name -', ['@name' => $language->getName()]) : $language->getName();
     }
 
     return $language_options;
diff --git a/core/modules/language/src/Entity/ConfigurableLanguage.php b/core/modules/language/src/Entity/ConfigurableLanguage.php
index b19c328..c277a85 100644
--- a/core/modules/language/src/Entity/ConfigurableLanguage.php
+++ b/core/modules/language/src/Entity/ConfigurableLanguage.php
@@ -246,18 +246,18 @@ public static function createFromLangcode($langcode) {
     if (!isset($standard_languages[$langcode])) {
       // Drupal does not know about this language, so we set its values with the
       // best guess. The user will be able to edit afterwards.
-      return static::create(array(
+      return static::create([
         'id' => $langcode,
         'label' => $langcode,
-      ));
+      ]);
     }
     else {
       // A known predefined language, details will be filled in properly.
-      return static::create(array(
+      return static::create([
         'id' => $langcode,
         'label' => $standard_languages[$langcode][0],
         'direction' => isset($standard_languages[$langcode][2]) ? $standard_languages[$langcode][2] : static::DIRECTION_LTR,
-      ));
+      ]);
     }
   }
 
diff --git a/core/modules/language/src/EventSubscriber/ConfigSubscriber.php b/core/modules/language/src/EventSubscriber/ConfigSubscriber.php
index 4159c37..103f912 100644
--- a/core/modules/language/src/EventSubscriber/ConfigSubscriber.php
+++ b/core/modules/language/src/EventSubscriber/ConfigSubscriber.php
@@ -141,7 +141,7 @@ public function setPathProcessorLanguage(PathProcessorLanguage $path_processor_l
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[ConfigEvents::SAVE][] = array('onConfigSave', 0);
+    $events[ConfigEvents::SAVE][] = ['onConfigSave', 0];
     return $events;
   }
 
diff --git a/core/modules/language/src/EventSubscriber/LanguageRequestSubscriber.php b/core/modules/language/src/EventSubscriber/LanguageRequestSubscriber.php
index 0656bdc..fd925dd 100644
--- a/core/modules/language/src/EventSubscriber/LanguageRequestSubscriber.php
+++ b/core/modules/language/src/EventSubscriber/LanguageRequestSubscriber.php
@@ -90,7 +90,7 @@ public function onKernelRequestLanguage(GetResponseEvent $event) {
    *   An array of event listener definitions.
    */
   static function getSubscribedEvents() {
-    $events[KernelEvents::REQUEST][] = array('onKernelRequestLanguage', 255);
+    $events[KernelEvents::REQUEST][] = ['onKernelRequestLanguage', 255];
 
     return $events;
   }
diff --git a/core/modules/language/src/Form/ContentLanguageSettingsForm.php b/core/modules/language/src/Form/ContentLanguageSettingsForm.php
index b86f7bc..a115529 100644
--- a/core/modules/language/src/Form/ContentLanguageSettingsForm.php
+++ b/core/modules/language/src/Form/ContentLanguageSettingsForm.php
@@ -52,11 +52,11 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $entity_types = $this->entityManager->getDefinitions();
-    $labels = array();
-    $default = array();
+    $labels = [];
+    $default = [];
 
     $bundles = $this->entityManager->getAllBundleInfo();
-    $language_configuration = array();
+    $language_configuration = [];
     foreach ($entity_types as $entity_type_id => $entity_type) {
       if (!$entity_type instanceof ContentEntityTypeInterface || !$entity_type->hasKey('langcode') || !isset($bundles[$entity_type_id])) {
         continue;
@@ -76,65 +76,65 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     asort($labels);
 
-    $form = array(
+    $form = [
       '#labels' => $labels,
-      '#attached' => array(
-        'library' => array(
+      '#attached' => [
+        'library' => [
           'language/drupal.language.admin',
-        ),
-      ),
-      '#attributes' => array(
+        ],
+      ],
+      '#attributes' => [
         'class' => 'language-content-settings-form',
-      ),
-    );
+      ],
+    ];
 
-    $form['entity_types'] = array(
+    $form['entity_types'] = [
       '#title' => $this->t('Custom language settings'),
       '#type' => 'checkboxes',
       '#options' => $labels,
       '#default_value' => $default,
-    );
+    ];
 
-    $form['settings'] = array('#tree' => TRUE);
+    $form['settings'] = ['#tree' => TRUE];
 
     foreach ($labels as $entity_type_id => $label) {
       $entity_type = $entity_types[$entity_type_id];
 
-      $form['settings'][$entity_type_id] = array(
+      $form['settings'][$entity_type_id] = [
         '#title' => $label,
         '#type' => 'container',
         '#entity_type' => $entity_type_id,
         '#theme' => 'language_content_settings_table',
         '#bundle_label' => $entity_type->getBundleLabel() ?: $label,
-        '#states' => array(
-          'visible' => array(
-            ':input[name="entity_types[' . $entity_type_id . ']"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="entity_types[' . $entity_type_id . ']"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
       foreach ($bundles[$entity_type_id] as $bundle => $bundle_info) {
-        $form['settings'][$entity_type_id][$bundle]['settings'] = array(
+        $form['settings'][$entity_type_id][$bundle]['settings'] = [
           '#type' => 'item',
           '#label' => $bundle_info['label'],
-          'language' => array(
+          'language' => [
             '#type' => 'language_configuration',
-            '#entity_information' => array(
+            '#entity_information' => [
               'entity_type' => $entity_type_id,
               'bundle' => $bundle,
-            ),
+            ],
             '#default_value' => $language_configuration[$entity_type_id][$bundle],
-          ),
-        );
+          ],
+        ];
       }
     }
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save configuration'),
       '#button_type' => 'primary',
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/language/src/Form/LanguageAddForm.php b/core/modules/language/src/Form/LanguageAddForm.php
index ad5ed61..5b9f15c 100644
--- a/core/modules/language/src/Form/LanguageAddForm.php
+++ b/core/modules/language/src/Form/LanguageAddForm.php
@@ -30,50 +30,50 @@ public function form(array $form, FormStateInterface $form_state) {
 
     $predefined_languages['custom'] = $this->t('Custom language...');
     $predefined_default = $form_state->getValue('predefined_langcode', key($predefined_languages));
-    $form['predefined_langcode'] = array(
+    $form['predefined_langcode'] = [
       '#type' => 'select',
       '#title' => $this->t('Language name'),
       '#default_value' => $predefined_default,
       '#options' => $predefined_languages,
-    );
-    $form['predefined_submit'] = array(
+    ];
+    $form['predefined_submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Add language'),
       '#name' => 'add_language',
-      '#limit_validation_errors' => array(array('predefined_langcode'), array('predefined_submit')),
-      '#states' => array(
-        'invisible' => array(
-          'select#edit-predefined-langcode' => array('value' => 'custom'),
-        ),
-      ),
-      '#validate' => array('::validatePredefined'),
-      '#submit' => array('::submitForm', '::save'),
+      '#limit_validation_errors' => [['predefined_langcode'], ['predefined_submit']],
+      '#states' => [
+        'invisible' => [
+          'select#edit-predefined-langcode' => ['value' => 'custom'],
+        ],
+      ],
+      '#validate' => ['::validatePredefined'],
+      '#submit' => ['::submitForm', '::save'],
       '#button_type' => 'primary',
-    );
+    ];
 
-    $custom_language_states_conditions = array(
-      'select#edit-predefined-langcode' => array('value' => 'custom'),
-    );
-    $form['custom_language'] = array(
+    $custom_language_states_conditions = [
+      'select#edit-predefined-langcode' => ['value' => 'custom'],
+    ];
+    $form['custom_language'] = [
       '#type' => 'container',
-      '#states' => array(
+      '#states' => [
         'visible' => $custom_language_states_conditions,
-      ),
-    );
+      ],
+    ];
     $this->commonForm($form['custom_language']);
-    $form['custom_language']['langcode']['#states'] = array(
+    $form['custom_language']['langcode']['#states'] = [
       'required' => $custom_language_states_conditions,
-    );
-    $form['custom_language']['label']['#states'] = array(
+    ];
+    $form['custom_language']['label']['#states'] = [
       'required' => $custom_language_states_conditions,
-    );
-    $form['custom_language']['submit'] = array(
+    ];
+    $form['custom_language']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Add custom language'),
       '#name' => 'add_custom_language',
-      '#validate' => array('::validateCustom'),
-      '#submit' => array('::submitForm', '::save'),
-    );
+      '#validate' => ['::validateCustom'],
+      '#submit' => ['::submitForm', '::save'],
+    ];
 
     return $form;
   }
@@ -84,14 +84,14 @@ public function form(array $form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     parent::save($form, $form_state);
 
-    $t_args = array('%language' => $this->entity->label(), '%langcode' => $this->entity->id());
+    $t_args = ['%language' => $this->entity->label(), '%langcode' => $this->entity->id()];
     $this->logger('language')->notice('The %language (%langcode) language has been created.', $t_args);
     drupal_set_message($this->t('The language %language has been created and can now be used.', $t_args));
 
     if ($this->moduleHandler->moduleExists('block')) {
       // Tell the user they have the option to add a language switcher block
       // to their theme so they can switch between the languages.
-      drupal_set_message($this->t('Use one of the language switcher blocks to allow site visitors to switch between languages. You can enable these blocks on the <a href=":block-admin">block administration page</a>.', array(':block-admin' => $this->url('block.admin_display'))));
+      drupal_set_message($this->t('Use one of the language switcher blocks to allow site visitors to switch between languages. You can enable these blocks on the <a href=":block-admin">block administration page</a>.', [':block-admin' => $this->url('block.admin_display')]));
     }
     $form_state->setRedirectUrl($this->entity->urlInfo('collection'));
   }
@@ -101,7 +101,7 @@ public function save(array $form, FormStateInterface $form_state) {
    */
   public function actions(array $form, FormStateInterface $form_state) {
     // No actions needed.
-    return array();
+    return [];
   }
 
   /**
@@ -114,7 +114,7 @@ public function validateCustom(array $form, FormStateInterface $form_state) {
       $this->validateCommon($form['custom_language'], $form_state);
 
       if ($language = $this->languageManager->getLanguage($langcode)) {
-        $form_state->setErrorByName('langcode', $this->t('The language %language (%langcode) already exists.', array('%language' => $language->getName(), '%langcode' => $langcode)));
+        $form_state->setErrorByName('langcode', $this->t('The language %language (%langcode) already exists.', ['%language' => $language->getName(), '%langcode' => $langcode]));
       }
     }
     else {
@@ -132,7 +132,7 @@ public function validatePredefined($form, FormStateInterface $form_state) {
     }
     else {
       if ($language = $this->languageManager->getLanguage($langcode)) {
-        $form_state->setErrorByName('predefined_langcode', $this->t('The language %language (%langcode) already exists.', array('%language' => $language->getName(), '%langcode' => $langcode)));
+        $form_state->setErrorByName('predefined_langcode', $this->t('The language %language (%langcode) already exists.', ['%language' => $language->getName(), '%langcode' => $langcode]));
       }
     }
   }
diff --git a/core/modules/language/src/Form/LanguageDeleteForm.php b/core/modules/language/src/Form/LanguageDeleteForm.php
index d2226e8..6113c1f 100644
--- a/core/modules/language/src/Form/LanguageDeleteForm.php
+++ b/core/modules/language/src/Form/LanguageDeleteForm.php
@@ -27,14 +27,14 @@ public function getFormId() {
    * {@inheritdoc}
    */
   protected function getDeletionMessage() {
-    return $this->t('The %language (%langcode) language has been removed.', array('%language' => $this->entity->label(), '%langcode' => $this->entity->id()));
+    return $this->t('The %language (%langcode) language has been removed.', ['%language' => $this->entity->label(), '%langcode' => $this->entity->id()]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function logDeletionMessage() {
-    $this->logger('language')->notice('The %language (%langcode) language has been removed.', array('%language' => $this->entity->label(), '%langcode' => $this->entity->id()));
+    $this->logger('language')->notice('The %language (%langcode) language has been removed.', ['%language' => $this->entity->label(), '%langcode' => $this->entity->id()]);
   }
 
 }
diff --git a/core/modules/language/src/Form/LanguageEditForm.php b/core/modules/language/src/Form/LanguageEditForm.php
index bb0b7d7..234994d 100644
--- a/core/modules/language/src/Form/LanguageEditForm.php
+++ b/core/modules/language/src/Form/LanguageEditForm.php
@@ -29,12 +29,12 @@ public function form(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function actions(array $form, FormStateInterface $form_state) {
-    $actions['submit'] = array(
+    $actions['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save language'),
-      '#validate' => array('::validateCommon'),
-      '#submit' => array('::submitForm', '::save'),
-    );
+      '#validate' => ['::validateCommon'],
+      '#submit' => ['::submitForm', '::save'],
+    ];
     return $actions;
   }
 
@@ -44,7 +44,7 @@ public function actions(array $form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     parent::save($form, $form_state);
     $form_state->setRedirectUrl($this->entity->urlInfo('collection'));
-    $this->logger('language')->notice('The %language (%langcode) language has been updated.', array('%language' => $this->entity->label(), '%langcode' => $this->entity->id()));
+    $this->logger('language')->notice('The %language (%langcode) language has been updated.', ['%language' => $this->entity->label(), '%langcode' => $this->entity->id()]);
   }
 
 }
diff --git a/core/modules/language/src/Form/LanguageFormBase.php b/core/modules/language/src/Form/LanguageFormBase.php
index 0077162..8c8f5fa 100644
--- a/core/modules/language/src/Form/LanguageFormBase.php
+++ b/core/modules/language/src/Form/LanguageFormBase.php
@@ -47,45 +47,45 @@ public function commonForm(array &$form) {
     /* @var $language \Drupal\language\ConfigurableLanguageInterface */
     $language = $this->entity;
     if ($language->getId()) {
-      $form['langcode_view'] = array(
+      $form['langcode_view'] = [
         '#type' => 'item',
         '#title' => $this->t('Language code'),
         '#markup' => $language->id()
-      );
-      $form['langcode'] = array(
+      ];
+      $form['langcode'] = [
         '#type' => 'value',
         '#value' => $language->id()
-      );
+      ];
     }
     else {
-      $form['langcode'] = array(
+      $form['langcode'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Language code'),
         '#maxlength' => 12,
         '#required' => TRUE,
         '#default_value' => '',
         '#disabled' => FALSE,
-        '#description' => $this->t('Use language codes as <a href=":w3ctags">defined by the W3C</a> for interoperability. <em>Examples: "en", "en-gb" and "zh-hant".</em>', array(':w3ctags' => 'http://www.w3.org/International/articles/language-tags/')),
-      );
+        '#description' => $this->t('Use language codes as <a href=":w3ctags">defined by the W3C</a> for interoperability. <em>Examples: "en", "en-gb" and "zh-hant".</em>', [':w3ctags' => 'http://www.w3.org/International/articles/language-tags/']),
+      ];
     }
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Language name'),
       '#maxlength' => 64,
       '#default_value' => $language->label(),
       '#required' => TRUE,
-    );
-    $form['direction'] = array(
+    ];
+    $form['direction'] = [
       '#type' => 'radios',
       '#title' => $this->t('Direction'),
       '#required' => TRUE,
       '#description' => $this->t('Direction that text in this language is presented.'),
       '#default_value' => $language->getDirection(),
-      '#options' => array(
+      '#options' => [
         LanguageInterface::DIRECTION_LTR => $this->t('Left to right'),
         LanguageInterface::DIRECTION_RTL => $this->t('Right to left'),
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
@@ -96,13 +96,13 @@ public function commonForm(array &$form) {
   public function validateCommon(array $form, FormStateInterface $form_state) {
     // Ensure sane field values for langcode and name.
     if (!isset($form['langcode_view']) && !preg_match('@^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$@', $form_state->getValue('langcode'))) {
-      $form_state->setErrorByName('langcode', $this->t('%field must be a valid language tag as <a href=":url">defined by the W3C</a>.', array(
+      $form_state->setErrorByName('langcode', $this->t('%field must be a valid language tag as <a href=":url">defined by the W3C</a>.', [
         '%field' => $form['langcode']['#title'],
         ':url' => 'http://www.w3.org/International/articles/language-tags/',
-      )));
+      ]));
     }
     if ($form_state->getValue('label') != Html::escape($form_state->getValue('label'))) {
-      $form_state->setErrorByName('label', $this->t('%field cannot contain any markup.', array('%field' => $form['label']['#title'])));
+      $form_state->setErrorByName('label', $this->t('%field cannot contain any markup.', ['%field' => $form['label']['#title']]));
     }
   }
 
diff --git a/core/modules/language/src/Form/NegotiationBrowserDeleteForm.php b/core/modules/language/src/Form/NegotiationBrowserDeleteForm.php
index df5052c..1a40946 100644
--- a/core/modules/language/src/Form/NegotiationBrowserDeleteForm.php
+++ b/core/modules/language/src/Form/NegotiationBrowserDeleteForm.php
@@ -32,7 +32,7 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete %browser_langcode?', array('%browser_langcode' => $this->browserLangcode));
+    return $this->t('Are you sure you want to delete %browser_langcode?', ['%browser_langcode' => $this->browserLangcode]);
   }
 
   /**
@@ -68,9 +68,9 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       ->clear('map.' . $this->browserLangcode)
       ->save();
 
-    $args = array(
+    $args = [
       '%browser' => $this->browserLangcode,
-    );
+    ];
 
     $this->logger('language')->notice('The browser language detection mapping for the %browser browser language code has been deleted.', $args);
 
diff --git a/core/modules/language/src/Form/NegotiationBrowserForm.php b/core/modules/language/src/Form/NegotiationBrowserForm.php
index dfbdabb..5535fe0 100644
--- a/core/modules/language/src/Form/NegotiationBrowserForm.php
+++ b/core/modules/language/src/Form/NegotiationBrowserForm.php
@@ -60,12 +60,12 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form = array();
+    $form = [];
 
     // Initialize a language list to the ones available, including English.
     $languages = $this->languageManager->getLanguages();
 
-    $existing_languages = array();
+    $existing_languages = [];
     foreach ($languages as $langcode => $language) {
       $existing_languages[$langcode] = $language->getName();
     }
@@ -77,10 +77,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $language_options = $this->languageManager->getStandardLanguageListWithoutConfigured();
     }
     else {
-      $language_options = array(
+      $language_options = [
         (string) $this->t('Existing languages') => $existing_languages,
         (string) $this->t('Languages not yet added') => $this->languageManager->getStandardLanguageListWithoutConfigured(),
-      );
+      ];
     }
 
     $form['mappings'] = [
@@ -96,24 +96,24 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $mappings = $this->language_get_browser_drupal_langcode_mappings();
     foreach ($mappings as $browser_langcode => $drupal_langcode) {
-      $form['mappings'][$browser_langcode] = array(
-        'browser_langcode' => array(
+      $form['mappings'][$browser_langcode] = [
+        'browser_langcode' => [
           '#title' => $this->t('Browser language code'),
           '#title_display' => 'invisible',
           '#type' => 'textfield',
           '#default_value' => $browser_langcode,
           '#size' => 20,
           '#required' => TRUE,
-        ),
-        'drupal_langcode' => array(
+        ],
+        'drupal_langcode' => [
           '#title' => $this->t('Site language'),
           '#title_display' => 'invisible',
           '#type' => 'select',
           '#options' => $language_options,
           '#default_value' => $drupal_langcode,
           '#required' => TRUE,
-        ),
-      );
+        ],
+      ];
       // Operations column.
       $form['mappings'][$browser_langcode]['operations'] = [
         '#type' => 'operations',
@@ -126,22 +126,22 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Add empty row.
-    $form['new_mapping'] = array(
+    $form['new_mapping'] = [
       '#type' => 'details',
       '#title' => $this->t('Add a new mapping'),
       '#tree' => TRUE,
-    );
-    $form['new_mapping']['browser_langcode'] = array(
+    ];
+    $form['new_mapping']['browser_langcode'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Browser language code'),
-      '#description' => $this->t('Use language codes as <a href=":w3ctags">defined by the W3C</a> for interoperability. <em>Examples: "en", "en-gb" and "zh-hant".</em>', array(':w3ctags' => 'http://www.w3.org/International/articles/language-tags/')),
+      '#description' => $this->t('Use language codes as <a href=":w3ctags">defined by the W3C</a> for interoperability. <em>Examples: "en", "en-gb" and "zh-hant".</em>', [':w3ctags' => 'http://www.w3.org/International/articles/language-tags/']),
       '#size' => 20,
-    );
-    $form['new_mapping']['drupal_langcode'] = array(
+    ];
+    $form['new_mapping']['drupal_langcode'] = [
       '#type' => 'select',
       '#title' => $this->t('Site language'),
       '#options' => $language_options,
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
@@ -151,7 +151,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    */
   public function validateForm(array &$form, FormStateInterface $form_state) {
     // Array to check if all browser language codes are unique.
-    $unique_values = array();
+    $unique_values = [];
 
     // Check all mappings.
     if ($form_state->hasValue('mappings')) {
@@ -207,7 +207,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
   protected function language_get_browser_drupal_langcode_mappings() {
     $config = $this->config('language.mappings');
     if ($config->isNew()) {
-      return array();
+      return [];
     }
     return $config->get('map');
   }
diff --git a/core/modules/language/src/Form/NegotiationConfigureForm.php b/core/modules/language/src/Form/NegotiationConfigureForm.php
index 41f57a3..c1333e6 100644
--- a/core/modules/language/src/Form/NegotiationConfigureForm.php
+++ b/core/modules/language/src/Form/NegotiationConfigureForm.php
@@ -124,12 +124,12 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $configurable = $this->languageTypes->get('configurable');
 
-    $form = array(
+    $form = [
       '#theme' => 'language_negotiation_configure_form',
       '#language_types_info' => $this->languageManager->getDefinedLanguageTypesInfo(),
       '#language_negotiation_info' => $this->negotiator->getNegotiationMethods(),
-    );
-    $form['#language_types'] = array();
+    ];
+    $form['#language_types'] = [];
 
     foreach ($form['#language_types_info'] as $type => $info) {
       // Show locked language types only if they are configurable.
@@ -142,12 +142,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $this->configureFormTable($form, $type);
     }
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#button_type' => 'primary',
       '#value' => $this->t('Save settings'),
-    );
+    ];
 
     return $form;
   }
@@ -159,17 +159,17 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $configurable_types = $form['#language_types'];
 
     $stored_values = $this->languageTypes->get('configurable');
-    $customized = array();
-    $method_weights_type = array();
+    $customized = [];
+    $method_weights_type = [];
 
     foreach ($configurable_types as $type) {
       $customized[$type] = in_array($type, $stored_values);
-      $method_weights = array();
-      $enabled_methods = $form_state->getValue(array($type, 'enabled'));
+      $method_weights = [];
+      $enabled_methods = $form_state->getValue([$type, 'enabled']);
       $enabled_methods[LanguageNegotiationSelected::METHOD_ID] = TRUE;
-      $method_weights_input = $form_state->getValue(array($type, 'weight'));
-      if ($form_state->hasValue(array($type, 'configurable'))) {
-        $customized[$type] = !$form_state->isValueEmpty(array($type, 'configurable'));
+      $method_weights_input = $form_state->getValue([$type, 'weight']);
+      if ($form_state->hasValue([$type, 'configurable'])) {
+        $customized[$type] = !$form_state->isValueEmpty([$type, 'configurable']);
       }
 
       foreach ($method_weights_input as $method_id => $weight) {
@@ -216,33 +216,33 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
   protected function configureFormTable(array &$form, $type)  {
     $info = $form['#language_types_info'][$type];
 
-    $table_form = array(
-      '#title' => $this->t('@type language detection', array('@type' => $info['name'])),
+    $table_form = [
+      '#title' => $this->t('@type language detection', ['@type' => $info['name']]),
       '#tree' => TRUE,
       '#description' => $info['description'],
-      '#language_negotiation_info' => array(),
+      '#language_negotiation_info' => [],
       '#show_operations' => FALSE,
-      'weight' => array('#tree' => TRUE),
-    );
+      'weight' => ['#tree' => TRUE],
+    ];
     // Only show configurability checkbox for the unlocked language types.
     if (empty($info['locked'])) {
       $configurable = $this->languageTypes->get('configurable');
-      $table_form['configurable'] = array(
+      $table_form['configurable'] = [
         '#type' => 'checkbox',
-        '#title' => $this->t('Customize %language_name language detection to differ from Interface text language detection settings', array('%language_name' => $info['name'])),
+        '#title' => $this->t('Customize %language_name language detection to differ from Interface text language detection settings', ['%language_name' => $info['name']]),
         '#default_value' => in_array($type, $configurable),
-        '#attributes' => array('class' => array('language-customization-checkbox')),
-        '#attached' => array(
-          'library' => array(
+        '#attributes' => ['class' => ['language-customization-checkbox']],
+        '#attached' => [
+          'library' => [
             'language/drupal.language.admin'
-          ),
-        ),
-      );
+          ],
+        ],
+      ];
     }
 
     $negotiation_info = $form['#language_negotiation_info'];
-    $enabled_methods = $this->languageTypes->get('negotiation.' . $type . '.enabled') ?: array();
-    $methods_weight = $this->languageTypes->get('negotiation.' . $type . '.method_weights') ?: array();
+    $enabled_methods = $this->languageTypes->get('negotiation.' . $type . '.enabled') ?: [];
+    $methods_weight = $this->languageTypes->get('negotiation.' . $type . '.method_weights') ?: [];
 
     // Add missing data to the methods lists.
     foreach ($negotiation_info as $method_id => $method) {
@@ -272,44 +272,44 @@ protected function configureFormTable(array &$form, $type)  {
         $table_form['#language_negotiation_info'][$method_id] = $method;
         $method_name = $method['name'];
 
-        $table_form['weight'][$method_id] = array(
+        $table_form['weight'][$method_id] = [
           '#type' => 'weight',
-          '#title' => $this->t('Weight for @title language detection method', array('@title' => Unicode::strtolower($method_name))),
+          '#title' => $this->t('Weight for @title language detection method', ['@title' => Unicode::strtolower($method_name)]),
           '#title_display' => 'invisible',
           '#default_value' => $weight,
-          '#attributes' => array('class' => array("language-method-weight-$type")),
+          '#attributes' => ['class' => ["language-method-weight-$type"]],
           '#delta' => 20,
-        );
+        ];
 
-        $table_form['title'][$method_id] = array('#plain_text' => $method_name);
+        $table_form['title'][$method_id] = ['#plain_text' => $method_name];
 
-        $table_form['enabled'][$method_id] = array(
+        $table_form['enabled'][$method_id] = [
           '#type' => 'checkbox',
-          '#title' => $this->t('Enable @title language detection method', array('@title' => Unicode::strtolower($method_name))),
+          '#title' => $this->t('Enable @title language detection method', ['@title' => Unicode::strtolower($method_name)]),
           '#title_display' => 'invisible',
           '#default_value' => $enabled,
-        );
+        ];
         if ($method_id === LanguageNegotiationSelected::METHOD_ID) {
           $table_form['enabled'][$method_id]['#default_value'] = TRUE;
-          $table_form['enabled'][$method_id]['#attributes'] = array('disabled' => 'disabled');
+          $table_form['enabled'][$method_id]['#attributes'] = ['disabled' => 'disabled'];
         }
 
-        $table_form['description'][$method_id] = array('#markup' => $method['description']);
+        $table_form['description'][$method_id] = ['#markup' => $method['description']];
 
-        $config_op = array();
+        $config_op = [];
         if (isset($method['config_route_name'])) {
-          $config_op['configure'] = array(
+          $config_op['configure'] = [
             'title' => $this->t('Configure'),
             'url' => Url::fromRoute($method['config_route_name']),
-          );
+          ];
           // If there is at least one operation enabled show the operation
           // column.
           $table_form['#show_operations'] = TRUE;
         }
-        $table_form['operation'][$method_id] = array(
+        $table_form['operation'][$method_id] = [
          '#type' => 'operations',
          '#links' => $config_op,
-        );
+        ];
       }
     }
     $form[$type] = $table_form;
@@ -324,7 +324,7 @@ protected function configureFormTable(array &$form, $type)  {
    */
   protected function disableLanguageSwitcher(array $language_types) {
     $theme = $this->themeHandler->getDefault();
-    $blocks = $this->blockStorage->loadByProperties(array('theme' => $theme));
+    $blocks = $this->blockStorage->loadByProperties(['theme' => $theme]);
     foreach ($language_types as $language_type) {
       foreach ($blocks as $block) {
         if ($block->getPluginId() == 'language_block:' . $language_type) {
diff --git a/core/modules/language/src/Form/NegotiationSelectedForm.php b/core/modules/language/src/Form/NegotiationSelectedForm.php
index bba40ee..d4f1191 100644
--- a/core/modules/language/src/Form/NegotiationSelectedForm.php
+++ b/core/modules/language/src/Form/NegotiationSelectedForm.php
@@ -30,12 +30,12 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('language.negotiation');
-    $form['selected_langcode'] = array(
+    $form['selected_langcode'] = [
       '#type' => 'language_select',
       '#title' => $this->t('Language'),
       '#languages' => LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_SITE_DEFAULT,
       '#default_value' => $config->get('selected_langcode'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/language/src/Form/NegotiationSessionForm.php b/core/modules/language/src/Form/NegotiationSessionForm.php
index 2e94472..b7ec450 100644
--- a/core/modules/language/src/Form/NegotiationSessionForm.php
+++ b/core/modules/language/src/Form/NegotiationSessionForm.php
@@ -29,12 +29,12 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('language.negotiation');
-    $form['language_negotiation_session_param'] = array(
+    $form['language_negotiation_session_param'] = [
       '#title' => $this->t('Request/session parameter'),
       '#type' => 'textfield',
       '#default_value' => $config->get('session.parameter'),
       '#description' => $this->t('Name of the request/session parameter used to determine the desired language.'),
-    );
+    ];
 
     $form_state->setRedirect('language.negotiation');
 
diff --git a/core/modules/language/src/Form/NegotiationUrlForm.php b/core/modules/language/src/Form/NegotiationUrlForm.php
index d5ad863..6f44f60 100644
--- a/core/modules/language/src/Form/NegotiationUrlForm.php
+++ b/core/modules/language/src/Form/NegotiationUrlForm.php
@@ -66,63 +66,63 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     global $base_url;
     $config = $this->config('language.negotiation');
 
-    $form['language_negotiation_url_part'] = array(
+    $form['language_negotiation_url_part'] = [
       '#title' => $this->t('Part of the URL that determines language'),
       '#type' => 'radios',
-      '#options' => array(
+      '#options' => [
         LanguageNegotiationUrl::CONFIG_PATH_PREFIX => $this->t('Path prefix'),
         LanguageNegotiationUrl::CONFIG_DOMAIN => $this->t('Domain'),
-      ),
+      ],
       '#default_value' => $config->get('url.source'),
-    );
+    ];
 
-    $form['prefix'] = array(
+    $form['prefix'] = [
       '#type' => 'details',
       '#tree' => TRUE,
       '#title' => $this->t('Path prefix configuration'),
       '#open' => TRUE,
       '#description' => $this->t('Language codes or other custom text to use as a path prefix for URL language detection. For the selected fallback language, this value may be left blank. <strong>Modifying this value may break existing URLs. Use with caution in a production environment.</strong> Example: Specifying "deutsch" as the path prefix code for German results in URLs like "example.com/deutsch/contact".'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="language_negotiation_url_part"]' => array(
+      '#states' => [
+        'visible' => [
+          ':input[name="language_negotiation_url_part"]' => [
             'value' => (string) LanguageNegotiationUrl::CONFIG_PATH_PREFIX,
-          ),
-        ),
-      ),
-    );
-    $form['domain'] = array(
+          ],
+        ],
+      ],
+    ];
+    $form['domain'] = [
       '#type' => 'details',
       '#tree' => TRUE,
       '#title' => $this->t('Domain configuration'),
       '#open' => TRUE,
       '#description' => $this->t('The domain names to use for these languages. <strong>Modifying this value may break existing URLs. Use with caution in a production environment.</strong> Example: Specifying "de.example.com" as language domain for German will result in a URL like "http://de.example.com/contact".'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="language_negotiation_url_part"]' => array(
+      '#states' => [
+        'visible' => [
+          ':input[name="language_negotiation_url_part"]' => [
             'value' => (string) LanguageNegotiationUrl::CONFIG_DOMAIN,
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
 
     $languages = $this->languageManager->getLanguages();
     $prefixes = $config->get('url.prefixes');
     $domains = $config->get('url.domains');
     foreach ($languages as $langcode => $language) {
-      $t_args = array('%language' => $language->getName(), '%langcode' => $language->getId());
-      $form['prefix'][$langcode] = array(
+      $t_args = ['%language' => $language->getName(), '%langcode' => $language->getId()];
+      $form['prefix'][$langcode] = [
         '#type' => 'textfield',
         '#title' => $language->isDefault() ? $this->t('%language (%langcode) path prefix (Default language)', $t_args) : $this->t('%language (%langcode) path prefix', $t_args),
         '#maxlength' => 64,
         '#default_value' => isset($prefixes[$langcode]) ? $prefixes[$langcode] : '',
         '#field_prefix' => $base_url . '/',
-      );
-      $form['domain'][$langcode] = array(
+      ];
+      $form['domain'][$langcode] = [
         '#type' => 'textfield',
-        '#title' => $this->t('%language (%langcode) domain', array('%language' => $language->getName(), '%langcode' => $language->getId())),
+        '#title' => $this->t('%language (%langcode) domain', ['%language' => $language->getName(), '%langcode' => $language->getId()]),
         '#maxlength' => 128,
         '#default_value' => isset($domains[$langcode]) ? $domains[$langcode] : '',
-      );
+      ];
     }
 
     $form_state->setRedirect('language.negotiation');
@@ -143,7 +143,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       $default_langcode = $this->languageManager->getDefaultLanguage()->getId();
     }
     foreach ($languages as $langcode => $language) {
-      $value = $form_state->getValue(array('prefix', $langcode));
+      $value = $form_state->getValue(['prefix', $langcode]);
       if ($value === '') {
         if (!($default_langcode == $langcode) && $form_state->getValue('language_negotiation_url_part') == LanguageNegotiationUrl::CONFIG_PATH_PREFIX) {
           // Throw a form error if the prefix is blank for a non-default language,
@@ -161,35 +161,35 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       elseif (isset($count[$value]) && $count[$value] > 1) {
         // Throw a form error if there are two languages with the same
         // domain/prefix.
-        $form_state->setErrorByName("prefix][$langcode", $this->t('The prefix for %language, %value, is not unique.', array('%language' => $language->getName(), '%value' => $value)));
+        $form_state->setErrorByName("prefix][$langcode", $this->t('The prefix for %language, %value, is not unique.', ['%language' => $language->getName(), '%value' => $value]));
       }
     }
 
     // Count repeated values for uniqueness check.
     $count = array_count_values($form_state->getValue('domain'));
     foreach ($languages as $langcode => $language) {
-      $value = $form_state->getValue(array('domain', $langcode));
+      $value = $form_state->getValue(['domain', $langcode]);
 
       if ($value === '') {
         if ($form_state->getValue('language_negotiation_url_part') == LanguageNegotiationUrl::CONFIG_DOMAIN) {
           // Throw a form error if the domain is blank for a non-default language,
           // although it is required for selected negotiation type.
-          $form_state->setErrorByName("domain][$langcode", $this->t('The domain may not be left blank for %language.', array('%language' => $language->getName())));
+          $form_state->setErrorByName("domain][$langcode", $this->t('The domain may not be left blank for %language.', ['%language' => $language->getName()]));
         }
       }
       elseif (isset($count[$value]) && $count[$value] > 1) {
         // Throw a form error if there are two languages with the same
         // domain/domain.
-        $form_state->setErrorByName("domain][$langcode", $this->t('The domain for %language, %value, is not unique.', array('%language' => $language->getName(), '%value' => $value)));
+        $form_state->setErrorByName("domain][$langcode", $this->t('The domain for %language, %value, is not unique.', ['%language' => $language->getName(), '%value' => $value]));
       }
     }
 
     // Domain names should not contain protocol and/or ports.
     foreach ($languages as $langcode => $language) {
-      $value = $form_state->getValue(array('domain', $langcode));
+      $value = $form_state->getValue(['domain', $langcode]);
       if (!empty($value)) {
         // Ensure we have exactly one protocol when checking the hostname.
-        $host = 'http://' . str_replace(array('http://', 'https://'), '', $value);
+        $host = 'http://' . str_replace(['http://', 'https://'], '', $value);
         if (parse_url($host, PHP_URL_HOST) != $value) {
           $form_state->setErrorByName("domain][$langcode", $this->t('The domain for %language may only contain the domain name, not a trailing slash, protocol and/or port.', ['%language' => $language->getName()]));
         }
diff --git a/core/modules/language/src/HttpKernel/PathProcessorLanguage.php b/core/modules/language/src/HttpKernel/PathProcessorLanguage.php
index 2e91305..c4af20c 100644
--- a/core/modules/language/src/HttpKernel/PathProcessorLanguage.php
+++ b/core/modules/language/src/HttpKernel/PathProcessorLanguage.php
@@ -102,7 +102,7 @@ public function processInbound($path, Request $request) {
   /**
    * {@inheritdoc}
    */
-  public function processOutbound($path, &$options = array(), Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
+  public function processOutbound($path, &$options = [], Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
     if (!isset($this->multilingual)) {
       $this->multilingual = $this->languageManager->isMultilingual();
     }
@@ -131,7 +131,7 @@ public function processOutbound($path, &$options = array(), Request $request = N
    */
   protected function initProcessors($scope) {
     $interface = '\Drupal\Core\PathProcessor\\' . Unicode::ucfirst($scope) . 'PathProcessorInterface';
-    $this->processors[$scope] = array();
+    $this->processors[$scope] = [];
     $weights = [];
     foreach ($this->languageManager->getLanguageTypes() as $type) {
       foreach ($this->negotiator->getNegotiationMethods($type) as $method_id => $method) {
@@ -174,7 +174,7 @@ public function initConfigSubscriber() {
    * Resets the collected processors instances.
    */
   public function reset() {
-    $this->processors = array();
+    $this->processors = [];
   }
 
 }
diff --git a/core/modules/language/src/LanguageListBuilder.php b/core/modules/language/src/LanguageListBuilder.php
index 5d69f1f..8d15152 100644
--- a/core/modules/language/src/LanguageListBuilder.php
+++ b/core/modules/language/src/LanguageListBuilder.php
@@ -71,11 +71,11 @@ public function __construct(EntityTypeInterface $entity_type, EntityStorageInter
    * {@inheritdoc}
    */
   public function load() {
-    $entities = $this->storage->loadByProperties(array('locked' => FALSE));
+    $entities = $this->storage->loadByProperties(['locked' => FALSE]);
 
     // Sort the entities using the entity class's sort() method.
     // See \Drupal\Core\Config\Entity\ConfigEntityBase::sort().
-    uasort($entities, array($this->entityType->getClass(), 'sort'));
+    uasort($entities, [$this->entityType->getClass(), 'sort']);
     return $entities;
   }
 
@@ -90,10 +90,10 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildHeader() {
-    $header = array(
+    $header = [
         'label' => t('Name'),
         'default' => t('Default'),
-      ) + parent::buildHeader();
+      ] + parent::buildHeader();
     return $header;
   }
 
@@ -102,14 +102,14 @@ public function buildHeader() {
    */
   public function buildRow(EntityInterface $entity) {
     $row['label'] = $entity->label();
-    $row['default'] = array(
+    $row['default'] = [
       '#type' => 'radio',
-      '#parents' => array('site_default_language'),
-      '#title' => t('Set @title as default', array('@title' => $entity->label())),
+      '#parents' => ['site_default_language'],
+      '#title' => t('Set @title as default', ['@title' => $entity->label()]),
       '#title_display' => 'invisible',
       '#return_value' => $entity->id(),
       '#id' => 'edit-site-default-language-' . $entity->id(),
-    );
+    ];
     // Mark the right language as default in the form.
     if ($entity->id() == $this->languageManager->getDefaultLanguage()->getId()) {
       $row['default']['#default_value'] = $entity->id();
@@ -157,7 +157,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     drupal_set_message(t('Configuration saved.'));
     // Force the redirection to the page with the language we have just
     // selected as default.
-    $form_state->setRedirectUrl($this->entities[$new_id]->urlInfo('collection', array('language' => $this->entities[$new_id])));
+    $form_state->setRedirectUrl($this->entities[$new_id]->urlInfo('collection', ['language' => $this->entities[$new_id]]));
   }
 
 }
diff --git a/core/modules/language/src/LanguageNegotiator.php b/core/modules/language/src/LanguageNegotiator.php
index 2ae9032..d9d4c5d 100644
--- a/core/modules/language/src/LanguageNegotiator.php
+++ b/core/modules/language/src/LanguageNegotiator.php
@@ -68,7 +68,7 @@ class LanguageNegotiator implements LanguageNegotiatorInterface {
    *
    * @var \Drupal\Core\Language\LanguageInterface[]
    */
-  protected $negotiatedLanguages = array();
+  protected $negotiatedLanguages = [];
 
   /**
    * Constructs a new LanguageNegotiator object.
@@ -105,8 +105,8 @@ public function initLanguageManager() {
    * {@inheritdoc}
    */
   public function reset() {
-    $this->negotiatedLanguages = array();
-    $this->methods = array();
+    $this->negotiatedLanguages = [];
+    $this->methods = [];
   }
 
   /**
@@ -150,7 +150,7 @@ public function initializeType($type) {
       $method_id = static::METHOD_ID;
     }
 
-    return array($method_id => $language);
+    return [$method_id => $language];
   }
 
   /**
@@ -163,7 +163,7 @@ public function initializeType($type) {
    *   An array of enabled detection methods for the provided language type.
    */
   protected function getEnabledNegotiators($type) {
-    return $this->configFactory->get('language.types')->get('negotiation.' . $type . '.enabled') ?: array();
+    return $this->configFactory->get('language.types')->get('negotiation.' . $type . '.enabled') ?: [];
   }
 
   /**
@@ -207,7 +207,7 @@ public function getNegotiationMethods($type = NULL) {
    */
   public function getNegotiationMethodInstance($method_id) {
     if (!isset($this->methods[$method_id])) {
-      $instance = $this->negotiatorManager->createInstance($method_id, array());
+      $instance = $this->negotiatorManager->createInstance($method_id, []);
       $instance->setLanguageManager($this->languageManager);
       $instance->setConfig($this->configFactory);
       $instance->setCurrentUser($this->currentUser);
@@ -229,7 +229,7 @@ public function getPrimaryNegotiationMethod($type) {
    */
   public function isNegotiationMethodEnabled($method_id, $type = NULL) {
     $enabled = FALSE;
-    $language_types = !empty($type) ? array($type) : $this->languageManager->getLanguageTypes();
+    $language_types = !empty($type) ? [$type] : $this->languageManager->getLanguageTypes();
 
     foreach ($language_types as $type) {
       $enabled_methods = $this->getEnabledNegotiators($type);
@@ -297,7 +297,7 @@ function updateConfiguration(array $types) {
     $this->negotiatorManager->clearCachedDefinitions();
     $this->languageManager->reset();
 
-    $language_types = array();
+    $language_types = [];
     $language_types_info = $this->languageManager->getDefinedLanguageTypesInfo();
     $method_definitions = $this->getNegotiationMethods();
 
@@ -316,7 +316,7 @@ function updateConfiguration(array $types) {
           // default language negotiation settings, we use the values
           // negotiated for the interface language which, should always be
           // available.
-          $method_weights = array(LanguageNegotiationUI::METHOD_ID);
+          $method_weights = [LanguageNegotiationUI::METHOD_ID];
           $method_weights = array_flip($method_weights);
           $this->saveConfiguration($type, $method_weights);
         }
@@ -330,7 +330,7 @@ function updateConfiguration(array $types) {
         // If the language type is locked we can just store its default language
         // negotiation settings if it has some, since it is not configurable.
         if ($has_default_settings) {
-          $method_weights = array();
+          $method_weights = [];
           // Default settings are in $info['fixed'].
 
           foreach ($info['fixed'] as $weight => $method_id) {
@@ -351,10 +351,10 @@ function updateConfiguration(array $types) {
     }
 
     // Store the language type configuration.
-    $config = array(
+    $config = [
       'configurable' => array_keys(array_filter($language_types)),
       'all' => array_keys($language_types),
-    );
+    ];
     $this->languageManager->saveLanguageTypesConfiguration($config);
   }
 
diff --git a/core/modules/language/src/LanguageServiceProvider.php b/core/modules/language/src/LanguageServiceProvider.php
index 2d2004f..4060f75 100644
--- a/core/modules/language/src/LanguageServiceProvider.php
+++ b/core/modules/language/src/LanguageServiceProvider.php
@@ -29,8 +29,8 @@ public function register(ContainerBuilder $container) {
         ->addArgument(new Reference('current_user'));
 
       $container->register('path_processor_language', 'Drupal\language\HttpKernel\PathProcessorLanguage')
-        ->addTag('path_processor_inbound', array('priority' => 300))
-        ->addTag('path_processor_outbound', array('priority' => 100))
+        ->addTag('path_processor_inbound', ['priority' => 300])
+        ->addTag('path_processor_outbound', ['priority' => 100])
         ->addArgument(new Reference('config.factory'))
         ->addArgument(new Reference('language_manager'))
         ->addArgument(new Reference('language_negotiator'))
diff --git a/core/modules/language/src/Plugin/Block/LanguageBlock.php b/core/modules/language/src/Plugin/Block/LanguageBlock.php
index 5c58ac0..8e7ee91 100644
--- a/core/modules/language/src/Plugin/Block/LanguageBlock.php
+++ b/core/modules/language/src/Plugin/Block/LanguageBlock.php
@@ -84,22 +84,22 @@ protected function blockAccess(AccountInterface $account) {
    * {@inheritdoc}
    */
   public function build() {
-    $build = array();
+    $build = [];
     $route_name = $this->pathMatcher->isFrontPage() ? '<front>' : '<current>';
     $type = $this->getDerivativeId();
     $links = $this->languageManager->getLanguageSwitchLinks($type, Url::fromRoute($route_name));
 
     if (isset($links->links)) {
-      $build = array(
+      $build = [
         '#theme' => 'links__language_block',
         '#links' => $links->links,
-        '#attributes' => array(
-          'class' => array(
+        '#attributes' => [
+          'class' => [
             "language-switcher-{$links->method_id}",
-          ),
-        ),
+          ],
+        ],
         '#set_active_class' => TRUE,
-      );
+      ];
     }
     return $build;
   }
diff --git a/core/modules/language/src/Plugin/Condition/Language.php b/core/modules/language/src/Plugin/Condition/Language.php
index d1f3c95..a5b3d41 100644
--- a/core/modules/language/src/Plugin/Condition/Language.php
+++ b/core/modules/language/src/Plugin/Condition/Language.php
@@ -68,23 +68,23 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     if ($this->languageManager->isMultilingual()) {
       // Fetch languages.
       $languages = $this->languageManager->getLanguages();
-      $langcodes_options = array();
+      $langcodes_options = [];
       foreach ($languages as $language) {
         $langcodes_options[$language->getId()] = $language->getName();
       }
-      $form['langcodes'] = array(
+      $form['langcodes'] = [
         '#type' => 'checkboxes',
         '#title' => $this->t('Language selection'),
         '#default_value' => $this->configuration['langcodes'],
         '#options' => $langcodes_options,
         '#description' => $this->t('Select languages to enforce. If none are selected, all languages will be allowed.'),
-      );
+      ];
     }
     else {
-      $form['langcodes'] = array(
+      $form['langcodes'] = [
         '#type' => 'value',
         '#default_value' => $this->configuration['langcodes'],
-      );
+      ];
     }
     return parent::buildConfigurationForm($form, $form_state);
   }
@@ -111,7 +111,7 @@ public function summary() {
         $result[$item->getId()] = $item->getName();
       }
       return $result;
-    }, array());
+    }, []);
 
     // If we have more than one language selected, separate them by commas.
     if (count($this->configuration['langcodes']) > 1) {
@@ -122,9 +122,9 @@ public function summary() {
       $languages = array_pop($language_names);
     }
     if (!empty($this->configuration['negate'])) {
-      return t('The language is not @languages.', array('@languages' => $languages));
+      return t('The language is not @languages.', ['@languages' => $languages]);
     }
-    return t('The language is @languages.', array('@languages' => $languages));
+    return t('The language is @languages.', ['@languages' => $languages]);
   }
 
   /**
@@ -144,7 +144,7 @@ public function evaluate() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array('langcodes' => array()) + parent::defaultConfiguration();
+    return ['langcodes' => []] + parent::defaultConfiguration();
   }
 
 }
diff --git a/core/modules/language/src/Plugin/Derivative/LanguageBlock.php b/core/modules/language/src/Plugin/Derivative/LanguageBlock.php
index 3c10869..93cc5b1 100644
--- a/core/modules/language/src/Plugin/Derivative/LanguageBlock.php
+++ b/core/modules/language/src/Plugin/Derivative/LanguageBlock.php
@@ -21,7 +21,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       $configurable_types = $language_manager->getLanguageTypes();
       foreach ($configurable_types as $type) {
         $this->derivatives[$type] = $base_plugin_definition;
-        $this->derivatives[$type]['admin_label'] = t('Language switcher (@type)', array('@type' => $info[$type]['name']));
+        $this->derivatives[$type]['admin_label'] = t('Language switcher (@type)', ['@type' => $info[$type]['name']]);
       }
       // If there is just one configurable type then change the title of the
       // block.
diff --git a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationSession.php b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationSession.php
index 6c83e41..971e907 100644
--- a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationSession.php
+++ b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationSession.php
@@ -81,7 +81,7 @@ public function persist(LanguageInterface $language) {
   /**
    * {@inheritdoc}
    */
-  public function processOutbound($path, &$options = array(), Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
+  public function processOutbound($path, &$options = [], Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
     if ($request) {
       // The following values are not supposed to change during a single page
       // request processing.
@@ -124,24 +124,24 @@ public function processOutbound($path, &$options = array(), Request $request = N
    * {@inheritdoc}
    */
   public function getLanguageSwitchLinks(Request $request, $type, Url $url) {
-    $links = array();
+    $links = [];
     $config = $this->config->get('language.negotiation')->get('session');
     $param = $config['parameter'];
     $language_query = isset($_SESSION[$param]) ? $_SESSION[$param] : $this->languageManager->getCurrentLanguage($type)->getId();
-    $query = array();
+    $query = [];
     parse_str($request->getQueryString(), $query);
 
     foreach ($this->languageManager->getNativeLanguages() as $language) {
       $langcode = $language->getId();
-      $links[$langcode] = array(
+      $links[$langcode] = [
         // We need to clone the $url object to avoid using the same one for all
         // links. When the links are rendered, options are set on the $url
         // object, so if we use the same one, they would be set for all links.
         'url' => clone $url,
         'title' => $language->getName(),
-        'attributes' => array('class' => array('language-link')),
+        'attributes' => ['class' => ['language-link']],
         'query' => $query,
-      );
+      ];
       if ($language_query != $langcode) {
         $links[$langcode]['query'][$param] = $langcode;
       }
diff --git a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationUrl.php b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationUrl.php
index 25b5484..437273b 100644
--- a/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationUrl.php
+++ b/core/modules/language/src/Plugin/LanguageNegotiation/LanguageNegotiationUrl.php
@@ -80,7 +80,7 @@ public function getLangcode(Request $request = NULL) {
             if (!empty($config['domains'][$language->getId()])) {
               // Ensure that there is exactly one protocol in the URL when
               // checking the hostname.
-              $host = 'http://' . str_replace(array('http://', 'https://'), '', $config['domains'][$language->getId()]);
+              $host = 'http://' . str_replace(['http://', 'https://'], '', $config['domains'][$language->getId()]);
               $host = parse_url($host, PHP_URL_HOST);
               if ($http_host == $host) {
                 $langcode = $language->getId();
@@ -118,7 +118,7 @@ public function processInbound($path, Request $request) {
   /**
    * {@inheritdoc}
    */
-  public function processOutbound($path, &$options = array(), Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
+  public function processOutbound($path, &$options = [], Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
     $url_scheme = 'http';
     $port = 80;
     if ($request) {
@@ -151,7 +151,7 @@ public function processOutbound($path, &$options = array(), Request $request = N
         // retain it below.
         if (!empty($options['base_url'])) {
           // The colon in the URL scheme messes up the port checking below.
-          $normalized_base_url = str_replace(array('https://', 'http://'), '', $options['base_url']);
+          $normalized_base_url = str_replace(['https://', 'http://'], '', $options['base_url']);
         }
 
         // Ask for an absolute URL with our modified base URL.
@@ -191,20 +191,20 @@ public function processOutbound($path, &$options = array(), Request $request = N
    * {@inheritdoc}
    */
   public function getLanguageSwitchLinks(Request $request, $type, Url $url) {
-    $links = array();
+    $links = [];
     $query = $request->query->all();
 
     foreach ($this->languageManager->getNativeLanguages() as $language) {
-      $links[$language->getId()] = array(
+      $links[$language->getId()] = [
         // We need to clone the $url object to avoid using the same one for all
         // links. When the links are rendered, options are set on the $url
         // object, so if we use the same one, they would be set for all links.
         'url' => clone $url,
         'title' => $language->getName(),
         'language' => $language,
-        'attributes' => array('class' => array('language-link')),
+        'attributes' => ['class' => ['language-link']],
         'query' => $query,
-      );
+      ];
     }
 
     return $links;
diff --git a/core/modules/language/src/Plugin/migrate/destination/DefaultLangcode.php b/core/modules/language/src/Plugin/migrate/destination/DefaultLangcode.php
index a5a50a9..4d13e9a 100644
--- a/core/modules/language/src/Plugin/migrate/destination/DefaultLangcode.php
+++ b/core/modules/language/src/Plugin/migrate/destination/DefaultLangcode.php
@@ -19,7 +19,7 @@ class DefaultLangcode extends Config {
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $destination = $row->getDestination();
     $langcode = $destination['default_langcode'];
 
diff --git a/core/modules/language/src/Plugin/migrate/source/Language.php b/core/modules/language/src/Plugin/migrate/source/Language.php
index dc2e0ce..fa6a199 100644
--- a/core/modules/language/src/Plugin/migrate/source/Language.php
+++ b/core/modules/language/src/Plugin/migrate/source/Language.php
@@ -17,7 +17,7 @@ class Language extends DrupalSqlBase {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'language' => $this->t('The language code.'),
       'name' => $this->t('The English name of the language.'),
       'native' => $this->t('The native name of the language.'),
@@ -29,18 +29,18 @@ public function fields() {
       'prefix' => $this->t('Path prefix used for this language.'),
       'weight' => $this->t('The language weight when listed.'),
       'javascript' => $this->t('Location of the JavaScript translation file.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'language' => array(
+    return [
+      'language' => [
         'type' => 'string',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/language/src/Plugin/migrate/source/d6/LanguageContentSettings.php b/core/modules/language/src/Plugin/migrate/source/d6/LanguageContentSettings.php
index c41b635..ab9ba83 100644
--- a/core/modules/language/src/Plugin/migrate/source/d6/LanguageContentSettings.php
+++ b/core/modules/language/src/Plugin/migrate/source/d6/LanguageContentSettings.php
@@ -19,20 +19,20 @@ class LanguageContentSettings extends DrupalSqlBase {
    */
   public function query() {
     return $this->select('node_type', 't')
-      ->fields('t', array(
+      ->fields('t', [
         'type',
-      ));
+      ]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'type' => $this->t('Type'),
       'language_content_type' => $this->t('Multilingual support.'),
       'i18n_lock_node' => $this->t('Lock language.'),
-    );
+    ];
     return $fields;
   }
 
diff --git a/core/modules/language/src/Plugin/migrate/source/d7/LanguageContentSettings.php b/core/modules/language/src/Plugin/migrate/source/d7/LanguageContentSettings.php
index 91ed020..cb748ae 100644
--- a/core/modules/language/src/Plugin/migrate/source/d7/LanguageContentSettings.php
+++ b/core/modules/language/src/Plugin/migrate/source/d7/LanguageContentSettings.php
@@ -19,20 +19,20 @@ class LanguageContentSettings extends DrupalSqlBase {
    */
   public function query() {
     return $this->select('node_type', 't')
-      ->fields('t', array(
+      ->fields('t', [
         'type',
-      ));
+      ]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'type' => $this->t('Type'),
       'language_content_type' => $this->t('Multilingual support.'),
       'i18n_lock_node' => $this->t('Lock language.'),
-    );
+    ];
     return $fields;
   }
 
diff --git a/core/modules/language/src/Tests/EntityTypeWithoutLanguageFormTest.php b/core/modules/language/src/Tests/EntityTypeWithoutLanguageFormTest.php
index 20a3532..97ccf2f 100644
--- a/core/modules/language/src/Tests/EntityTypeWithoutLanguageFormTest.php
+++ b/core/modules/language/src/Tests/EntityTypeWithoutLanguageFormTest.php
@@ -19,10 +19,10 @@ class EntityTypeWithoutLanguageFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'language_test',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -31,9 +31,9 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in administrative user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer languages',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
diff --git a/core/modules/language/src/Tests/LanguageConfigurationElementTest.php b/core/modules/language/src/Tests/LanguageConfigurationElementTest.php
index 93b821d..dc3eb26 100644
--- a/core/modules/language/src/Tests/LanguageConfigurationElementTest.php
+++ b/core/modules/language/src/Tests/LanguageConfigurationElementTest.php
@@ -20,11 +20,11 @@ class LanguageConfigurationElementTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'node', 'language', 'language_elements_test', 'field_ui');
+  public static $modules = ['taxonomy', 'node', 'language', 'language_elements_test', 'field_ui'];
 
   protected function setUp() {
     parent::setUp();
-    $user = $this->drupalCreateUser(array('access administration pages', 'administer languages', 'administer content types'));
+    $user = $this->drupalCreateUser(['access administration pages', 'administer languages', 'administer content types']);
     $this->drupalLogin($user);
   }
 
@@ -60,12 +60,12 @@ public function testLanguageConfigurationElement() {
     $this->assertFieldChecked('edit-lang-configuration-language-alterable');
 
     // Test if content type settings have been saved.
-    $edit = array(
+    $edit = [
       'name' => 'Page',
       'type' => 'page',
       'language_configuration[langcode]' => 'authors_default',
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, 'Save and manage fields');
 
     // Make sure the settings are saved when creating the content type.
@@ -80,11 +80,11 @@ public function testLanguageConfigurationElement() {
    */
   public function testDefaultLangcode() {
     // Add some custom languages.
-    foreach (array('aa', 'bb', 'cc') as $language_code) {
-      ConfigurableLanguage::create(array(
+    foreach (['aa', 'bb', 'cc'] as $language_code) {
+      ConfigurableLanguage::create([
         'id' => $language_code,
         'label' => $this->randomMachineName(),
-      ))->save();
+      ])->save();
     }
 
     // Fixed language.
@@ -154,14 +154,14 @@ public function testNodeTypeUpdate() {
     // Create the article content type first if the profile used is not the
     // standard one.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
-    $admin_user = $this->drupalCreateUser(array('administer content types'));
+    $admin_user = $this->drupalCreateUser(['administer content types']);
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'language_configuration[langcode]' => 'current_interface',
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
     // Check the language default configuration for the articles.
     $configuration = ContentLanguageSettings::loadByEntityTypeBundle('node', 'article');
@@ -169,9 +169,9 @@ public function testNodeTypeUpdate() {
     $this->assertEqual($configuration->getDefaultLangcode(), 'current_interface', 'The default language configuration has been saved on the Article content type.');
     $this->assertTrue($configuration->isLanguageAlterable(), 'The alterable language configuration has been saved on the Article content type.');
     // Update the article content type by changing the title label.
-    $edit = array(
+    $edit = [
       'title_label' => 'Name'
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
     // Check that we still have the settings for the updated node type.
     $configuration = ContentLanguageSettings::loadByEntityTypeBundle('node', 'article');
@@ -187,19 +187,19 @@ public function testNodeTypeDelete() {
     // Create the article content type first if the profile used is not the
     // standard one.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array(
+      $this->drupalCreateContentType([
         'type' => 'article',
         'name' => 'Article'
-      ));
+      ]);
     }
-    $admin_user = $this->drupalCreateUser(array('administer content types'));
+    $admin_user = $this->drupalCreateUser(['administer content types']);
     $this->drupalLogin($admin_user);
 
     // Create language configuration for the articles.
-    $edit = array(
+    $edit = [
       'language_configuration[langcode]' => 'authors_default',
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
 
     // Check the language default configuration for articles is present.
@@ -207,7 +207,7 @@ public function testNodeTypeDelete() {
     $this->assertTrue($configuration, 'The language configuration is present.');
 
     // Delete 'article' bundle.
-    $this->drupalPostForm('admin/structure/types/manage/article/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/types/manage/article/delete', [], t('Delete'));
 
     // Check that the language configuration has been deleted.
     \Drupal::entityManager()->getStorage('language_content_settings')->resetCache();
@@ -225,12 +225,12 @@ public function testTaxonomyVocabularyUpdate() {
     ]);
     $vocabulary->save();
 
-    $admin_user = $this->drupalCreateUser(array('administer taxonomy'));
+    $admin_user = $this->drupalCreateUser(['administer taxonomy']);
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'default_language[langcode]' => 'current_interface',
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/country', $edit, t('Save'));
 
     // Check the language default configuration.
@@ -239,9 +239,9 @@ public function testTaxonomyVocabularyUpdate() {
     $this->assertEqual($configuration->getDefaultLangcode(), 'current_interface', 'The default language configuration has been saved on the Country vocabulary.');
     $this->assertTrue($configuration->isLanguageAlterable(), 'The alterable language configuration has been saved on the Country vocabulary.');
     // Update the vocabulary.
-    $edit = array(
+    $edit = [
       'name' => 'Nation'
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/country', $edit, t('Save'));
     // Check that we still have the settings for the updated vocabulary.
     $configuration = ContentLanguageSettings::loadByEntityTypeBundle('taxonomy_term', 'country');
diff --git a/core/modules/language/src/Tests/LanguageConfigurationTest.php b/core/modules/language/src/Tests/LanguageConfigurationTest.php
index cf049f1..611b479 100644
--- a/core/modules/language/src/Tests/LanguageConfigurationTest.php
+++ b/core/modules/language/src/Tests/LanguageConfigurationTest.php
@@ -18,7 +18,7 @@ class LanguageConfigurationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Functional tests for adding, editing and deleting languages.
@@ -29,7 +29,7 @@ function testLanguageConfiguration() {
     $this->assertEqual(ConfigurableLanguage::load('en')->getWeight(), 0, 'The English language has a weight of 0.');
 
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
     // Check if the Default English language has no path prefix.
@@ -41,9 +41,9 @@ function testLanguageConfiguration() {
     $this->assertFieldByXPath('//input[contains(@class, "button--primary")]', 'Add language', 'Add language is a primary button');
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Add language');
     $this->assertText('French');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
@@ -63,9 +63,9 @@ function testLanguageConfiguration() {
     $this->assertFieldChecked('edit-site-default-language-en', 'English is the default language.');
 
     // Change the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => 'fr',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->rebuildContainer();
     $this->assertFieldChecked('edit-site-default-language-fr', 'Default language updated.');
@@ -80,16 +80,16 @@ function testLanguageConfiguration() {
     $this->assertFieldByXPath('//input[@name="prefix[fr]"]', 'fr', 'French still has a path prefix.');
 
     // Check that prefix can be changed.
-    $edit = array(
+    $edit = [
       'prefix[fr]' => 'french',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->assertFieldByXPath('//input[@name="prefix[fr]"]', 'french', 'French path prefix has changed.');
 
     // Check that the prefix can be removed.
-    $edit = array(
+    $edit = [
       'prefix[fr]' => '',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->assertNoText(t('The prefix may only be left blank for the selected detection fallback language.'), 'The path prefix can be removed for the default language');
 
@@ -97,24 +97,24 @@ function testLanguageConfiguration() {
     $this->config('language.negotiation')->set('selected_langcode', 'fr')->save();
     // Check that the prefix of a language that is not the negotiation one
     // cannot be changed to empty string.
-    $edit = array(
+    $edit = [
       'prefix[en]' => '',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->assertText(t('The prefix may only be left blank for the selected detection fallback language.'));
 
     //  Check that prefix cannot be changed to contain a slash.
-    $edit = array(
+    $edit = [
       'prefix[en]' => 'foo/bar',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->assertText(t('The prefix may not contain a slash.'), 'English prefix cannot be changed to contain a slash.');
 
     // Remove English language and add a new Language to check if langcode of
     // Language entity is 'en'.
-    $this->drupalPostForm('admin/config/regional/language/delete/en', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/en', [], t('Delete'));
     $this->rebuildContainer();
-    $this->assertRaw(t('The %language (%langcode) language has been removed.', array('%language' => 'English', '%langcode' => 'en')));
+    $this->assertRaw(t('The %language (%langcode) language has been removed.', ['%language' => 'English', '%langcode' => 'en']));
 
     // Ensure that French language has a weight of 1 after being created through
     // the UI.
@@ -132,9 +132,9 @@ function testLanguageConfiguration() {
     $arabic->setWeight(4)->save();
     $this->assertEqual($arabic->getWeight(), 4, 'The Arabic language has a weight of 0.');
 
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'de',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, 'Add language');
     $language = $this->config('language.entity.de')->get();
     $this->assertEqual($language['langcode'], 'fr');
@@ -150,28 +150,28 @@ function testLanguageConfiguration() {
    */
   function testLanguageConfigurationWeight() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
     $this->checkConfigurableLanguageWeight();
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, 'Add language');
     $this->checkConfigurableLanguageWeight('after adding new language');
 
     // Re-ordering languages.
-    $edit = array(
+    $edit = [
       'languages[en][weight]' => $this->getHighestConfigurableLanguageWeight() + 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, 'Save configuration');
     $this->checkConfigurableLanguageWeight('after re-ordering');
 
     // Remove predefined language.
-    $edit = array(
+    $edit = [
       'confirm' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/delete/fr', $edit, 'Delete');
     $this->checkConfigurableLanguageWeight('after deleting a language');
   }
@@ -188,7 +188,7 @@ protected function checkConfigurableLanguageWeight($state = 'by default') {
     // Reset language list.
     \Drupal::languageManager()->reset();
     $max_configurable_language_weight = $this->getHighestConfigurableLanguageWeight();
-    $replacements = array('@event' => $state);
+    $replacements = ['@event' => $state];
     foreach (\Drupal::languageManager()->getLanguages(LanguageInterface::STATE_LOCKED) as $locked_language) {
       $replacements['%language'] = $locked_language->getName();
       $this->assertTrue($locked_language->getWeight() > $max_configurable_language_weight, format_string('System language %language has higher weight than configurable languages @event', $replacements));
diff --git a/core/modules/language/src/Tests/LanguageCustomLanguageConfigurationTest.php b/core/modules/language/src/Tests/LanguageCustomLanguageConfigurationTest.php
index dbd35cd..2eb02df 100644
--- a/core/modules/language/src/Tests/LanguageCustomLanguageConfigurationTest.php
+++ b/core/modules/language/src/Tests/LanguageCustomLanguageConfigurationTest.php
@@ -18,7 +18,7 @@ class LanguageCustomLanguageConfigurationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Functional tests for adding, editing and deleting languages.
@@ -26,76 +26,76 @@ class LanguageCustomLanguageConfigurationTest extends WebTestBase {
   public function testLanguageConfiguration() {
 
     // Create user with permissions to add and remove languages.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
     // Add custom language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     // Test validation on missing values.
-    $this->assertText(t('@name field is required.', array('@name' => t('Language code'))));
-    $this->assertText(t('@name field is required.', array('@name' => t('Language name'))));
+    $this->assertText(t('@name field is required.', ['@name' => t('Language code')]));
+    $this->assertText(t('@name field is required.', ['@name' => t('Language name')]));
     $empty_language = new Language();
     $this->assertFieldChecked('edit-direction-' . $empty_language->getDirection(), 'Consistent usage of language direction.');
-    $this->assertUrl(\Drupal::url('language.add', array(), array('absolute' => TRUE)), [], 'Correct page redirection.');
+    $this->assertUrl(\Drupal::url('language.add', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
 
     // Test validation of invalid values.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => 'white space',
       'label' => '<strong>evil markup</strong>',
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
-    $this->assertRaw(t('%field must be a valid language tag as <a href=":url">defined by the W3C</a>.', array(
+    $this->assertRaw(t('%field must be a valid language tag as <a href=":url">defined by the W3C</a>.', [
       '%field' => t('Language code'),
       ':url' => 'http://www.w3.org/International/articles/language-tags/',
-    )));
+    ]));
 
-    $this->assertRaw(t('%field cannot contain any markup.', array('%field' => t('Language name'))));
-    $this->assertUrl(\Drupal::url('language.add', array(), array('absolute' => TRUE)), [], 'Correct page redirection.');
+    $this->assertRaw(t('%field cannot contain any markup.', ['%field' => t('Language name')]));
+    $this->assertUrl(\Drupal::url('language.add', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
 
     // Test adding a custom language with a numeric region code.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => 'es-419',
       'label' => 'Latin American Spanish',
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
 
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->assertRaw(t(
       'The language %language has been created and can now be used.',
-      array('%language' => $edit['label'])
+      ['%language' => $edit['label']]
     ));
-    $this->assertUrl(\Drupal::url('entity.configurable_language.collection', array(), array('absolute' => TRUE)), [], 'Correct page redirection.');
+    $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
 
     // Test validation of existing language values.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => 'de',
       'label' => 'German',
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
 
     // Add the language the first time.
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->assertRaw(t(
       'The language %language has been created and can now be used.',
-      array('%language' => $edit['label'])
+      ['%language' => $edit['label']]
     ));
-    $this->assertUrl(\Drupal::url('entity.configurable_language.collection', array(), array('absolute' => TRUE)), [], 'Correct page redirection.');
+    $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
 
     // Add the language a second time and confirm that this is not allowed.
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->assertRaw(t(
       'The language %language (%langcode) already exists.',
-      array('%language' => $edit['label'], '%langcode' => $edit['langcode'])
+      ['%language' => $edit['label'], '%langcode' => $edit['langcode']]
     ));
-    $this->assertUrl(\Drupal::url('language.add', array(), array('absolute' => TRUE)), [], 'Correct page redirection.');
+    $this->assertUrl(\Drupal::url('language.add', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
   }
 
 }
diff --git a/core/modules/language/src/Tests/LanguageListTest.php b/core/modules/language/src/Tests/LanguageListTest.php
index d407530..2ed4962 100644
--- a/core/modules/language/src/Tests/LanguageListTest.php
+++ b/core/modules/language/src/Tests/LanguageListTest.php
@@ -19,7 +19,7 @@ class LanguageListTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Functional tests for adding, editing and deleting languages.
@@ -27,7 +27,7 @@ class LanguageListTest extends WebTestBase {
   function testLanguageList() {
 
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
     // Get the weight of the last language.
@@ -35,9 +35,9 @@ function testLanguageList() {
     $last_language_weight = end($languages)->getWeight();
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     $this->assertText('French', 'Language added successfully.');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]));
@@ -53,12 +53,12 @@ function testLanguageList() {
     // Add custom language.
     $langcode = 'xx';
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => Language::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]));
     $this->assertRaw('"edit-languages-' . $langcode . '-weight"', 'Language code found.');
@@ -72,9 +72,9 @@ function testLanguageList() {
     $this->drupalGet($path);
     $this->assertFieldChecked('edit-site-default-language-en', 'English is the default language.');
     // Change the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => $langcode,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->rebuildContainer();
     $this->assertNoFieldChecked('edit-site-default-language-en', 'Default language updated.');
@@ -90,17 +90,17 @@ function testLanguageList() {
     $this->assertTitle(t('Edit language | Drupal'), 'Page title is "Edit language".');
     // Edit a language.
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'label' => $name,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/edit/' . $langcode, $edit, t('Save language'));
     $this->assertRaw($name, 'The language has been updated.');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE, 'language' => $language]));
 
     // Change back the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => 'en',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save configuration'));
     $this->rebuildContainer();
     // Ensure 'delete' link works.
@@ -115,9 +115,9 @@ function testLanguageList() {
     $this->assertRaw($name, 'The language was not deleted.');
     // Delete the language for real. This a confirm form, we do not need any
     // fields changed.
-    $this->drupalPostForm('admin/config/regional/language/delete/' . $langcode, array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/' . $langcode, [], t('Delete'));
     // We need raw here because %language and %langcode will add HTML.
-    $t_args = array('%language' => $name, '%langcode' => $langcode);
+    $t_args = ['%language' => $name, '%langcode' => $langcode];
     $this->assertRaw(t('The %language (%langcode) language has been removed.', $t_args), 'The test language has been removed.');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE, 'language' => $english]));
     // Verify that language is no longer found.
@@ -125,11 +125,11 @@ function testLanguageList() {
     $this->assertResponse(404, 'Language no longer found.');
 
     // Delete French.
-    $this->drupalPostForm('admin/config/regional/language/delete/fr', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/fr', [], t('Delete'));
     // Make sure the "language_count" state has been updated correctly.
     $this->rebuildContainer();
     // We need raw here because %language and %langcode will add HTML.
-    $t_args = array('%language' => 'French', '%langcode' => 'fr');
+    $t_args = ['%language' => 'French', '%langcode' => 'fr'];
     $this->assertRaw(t('The %language (%langcode) language has been removed.', $t_args), 'The French language has been removed.');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]));
     // Verify that language is no longer found.
@@ -142,12 +142,12 @@ function testLanguageList() {
     // deleting English.
     $langcode = 'xx';
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => Language::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]));
     $this->assertText($name, 'Name found.');
@@ -157,17 +157,17 @@ function testLanguageList() {
     $this->drupalGet($path);
     $this->assertFieldChecked('edit-site-default-language-en', 'English is the default language.');
     // Change the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => $langcode,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
     $this->rebuildContainer();
     $this->assertNoFieldChecked('edit-site-default-language-en', 'Default language updated.');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE, 'language' => $language]));
 
-    $this->drupalPostForm('admin/config/regional/language/delete/en', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/en', [], t('Delete'));
     // We need raw here because %language and %langcode will add HTML.
-    $t_args = array('%language' => 'English', '%langcode' => 'en');
+    $t_args = ['%language' => 'English', '%langcode' => 'en'];
     $this->assertRaw(t('The %language (%langcode) language has been removed.', $t_args), 'The English language has been removed.');
     $this->rebuildContainer();
 
@@ -178,7 +178,7 @@ function testLanguageList() {
     // Ensure that NL cannot be set default when it's not available.
     $this->drupalGet('admin/config/regional/language');
     $extra_values = '&site_default_language=nl';
-    $this->drupalPostForm(NULL, array(), t('Save configuration'), array(), array(), NULL, $extra_values);
+    $this->drupalPostForm(NULL, [], t('Save configuration'), [], [], NULL, $extra_values);
     $this->assertText(t('Selected default language no longer exists.'));
     $this->assertNoFieldChecked('edit-site-default-language-xx', 'The previous default language got deselected.');
   }
@@ -188,22 +188,22 @@ function testLanguageList() {
    */
   function testLanguageStates() {
     // Add some languages, and also lock some of them.
-    ConfigurableLanguage::create(array('label' => $this->randomMachineName(), 'id' => 'l1'))->save();
-    ConfigurableLanguage::create(array('label' => $this->randomMachineName(), 'id' => 'l2', 'locked' => TRUE))->save();
-    ConfigurableLanguage::create(array('label' => $this->randomMachineName(), 'id' => 'l3'))->save();
-    ConfigurableLanguage::create(array('label' => $this->randomMachineName(), 'id' => 'l4', 'locked' => TRUE))->save();
-    $expected_locked_languages = array('l4' => 'l4', 'l2' => 'l2', 'und' => 'und', 'zxx' => 'zxx');
-    $expected_all_languages = array('l4' => 'l4', 'l3' => 'l3', 'l2' => 'l2', 'l1' => 'l1', 'en' => 'en', 'und' => 'und', 'zxx' => 'zxx');
-    $expected_conf_languages = array('l3' => 'l3', 'l1' => 'l1', 'en' => 'en');
+    ConfigurableLanguage::create(['label' => $this->randomMachineName(), 'id' => 'l1'])->save();
+    ConfigurableLanguage::create(['label' => $this->randomMachineName(), 'id' => 'l2', 'locked' => TRUE])->save();
+    ConfigurableLanguage::create(['label' => $this->randomMachineName(), 'id' => 'l3'])->save();
+    ConfigurableLanguage::create(['label' => $this->randomMachineName(), 'id' => 'l4', 'locked' => TRUE])->save();
+    $expected_locked_languages = ['l4' => 'l4', 'l2' => 'l2', 'und' => 'und', 'zxx' => 'zxx'];
+    $expected_all_languages = ['l4' => 'l4', 'l3' => 'l3', 'l2' => 'l2', 'l1' => 'l1', 'en' => 'en', 'und' => 'und', 'zxx' => 'zxx'];
+    $expected_conf_languages = ['l3' => 'l3', 'l1' => 'l1', 'en' => 'en'];
 
     $locked_languages = $this->container->get('language_manager')->getLanguages(LanguageInterface::STATE_LOCKED);
-    $this->assertEqual(array_diff_key($expected_locked_languages, $locked_languages), array(), 'Locked languages loaded correctly.');
+    $this->assertEqual(array_diff_key($expected_locked_languages, $locked_languages), [], 'Locked languages loaded correctly.');
 
     $all_languages = $this->container->get('language_manager')->getLanguages(LanguageInterface::STATE_ALL);
-    $this->assertEqual(array_diff_key($expected_all_languages, $all_languages), array(), 'All languages loaded correctly.');
+    $this->assertEqual(array_diff_key($expected_all_languages, $all_languages), [], 'All languages loaded correctly.');
 
     $conf_languages = $this->container->get('language_manager')->getLanguages();
-    $this->assertEqual(array_diff_key($expected_conf_languages, $conf_languages), array(), 'Configurable languages loaded correctly.');
+    $this->assertEqual(array_diff_key($expected_conf_languages, $conf_languages), [], 'Configurable languages loaded correctly.');
   }
 
 }
diff --git a/core/modules/language/src/Tests/LanguageLocaleListTest.php b/core/modules/language/src/Tests/LanguageLocaleListTest.php
index dd3e02a..022a072 100644
--- a/core/modules/language/src/Tests/LanguageLocaleListTest.php
+++ b/core/modules/language/src/Tests/LanguageLocaleListTest.php
@@ -16,7 +16,7 @@ class LanguageLocaleListTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'locale');
+  public static $modules = ['language', 'locale'];
 
   /**
    * {@inheritdoc}
@@ -32,28 +32,28 @@ protected function setUp() {
    */
   function testLanguageLocaleList() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
     // Add predefined language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     $this->assertText('The language French has been created and can now be used');
     $this->assertUrl(\Drupal::url('entity.configurable_language.collection', [], ['absolute' => TRUE]));
     $this->rebuildContainer();
 
     // Translate Spanish language to French (Espagnol).
-    $source = $this->storage->createString(array(
+    $source = $this->storage->createString([
       'source' => 'Spanish',
       'context' => '',
-    ))->save();
-    $this->storage->createTranslation(array(
+    ])->save();
+    $this->storage->createTranslation([
       'lid' => $source->lid,
       'language' => 'fr',
       'translation' => 'Espagnol',
-    ))->save();
+    ])->save();
 
     // Get language list displayed in select list.
     $this->drupalGet('fr/admin/config/regional/language/add');
diff --git a/core/modules/language/src/Tests/LanguageSelectorTranslatableTest.php b/core/modules/language/src/Tests/LanguageSelectorTranslatableTest.php
index 84d6779..d13626c 100644
--- a/core/modules/language/src/Tests/LanguageSelectorTranslatableTest.php
+++ b/core/modules/language/src/Tests/LanguageSelectorTranslatableTest.php
@@ -16,7 +16,7 @@ class LanguageSelectorTranslatableTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'node',
@@ -24,7 +24,7 @@ class LanguageSelectorTranslatableTest extends WebTestBase {
     'field_ui',
     'entity_test',
     'locale',
-  );
+  ];
 
   /**
    * The user with administrator privileges.
@@ -49,13 +49,13 @@ protected function setUp() {
    */
   protected function getAdministratorPermissions() {
     return array_filter(
-      array('translate interface',
+      ['translate interface',
         'administer content translation',
         'create content translations',
         'update content translations',
         'delete content translations',
         'administer languages',
-      )
+      ]
     );
   }
 
@@ -64,7 +64,7 @@ protected function getAdministratorPermissions() {
    */
   public function testLanguageStringSelector() {
     // Add another language.
-    $edit = array('predefined_langcode' => 'es');
+    $edit = ['predefined_langcode' => 'es'];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Translate the string English in Spanish (Inglés). Override config entity.
@@ -79,7 +79,7 @@ public function testLanguageStringSelector() {
     $this->drupalGet($path);
 
     // Get en language from selector.
-    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', array(':id' => 'edit-settings-user-user-settings-language-langcode', ':option' => 'en'));
+    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', [':id' => 'edit-settings-user-user-settings-language-langcode', ':option' => 'en']);
 
     // Check that the language text is translated.
     $this->assertEqual((string) $elements[0], $name_translation, 'Checking the option string English is translated to Spanish.');
diff --git a/core/modules/language/src/Tests/LanguageSwitchingTest.php b/core/modules/language/src/Tests/LanguageSwitchingTest.php
index 5d4469d..3d04a64 100644
--- a/core/modules/language/src/Tests/LanguageSwitchingTest.php
+++ b/core/modules/language/src/Tests/LanguageSwitchingTest.php
@@ -20,13 +20,13 @@ class LanguageSwitchingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'locale_test', 'language', 'block', 'language_test', 'menu_ui');
+  public static $modules = ['locale', 'locale_test', 'language', 'block', 'language_test', 'menu_ui'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer blocks', 'administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
   }
 
@@ -35,24 +35,24 @@ protected function setUp() {
    */
   function testLanguageBlock() {
     // Add language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Set the native language name.
     $this->saveNativeLanguageName('fr', 'français');
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => '1');
+    $edit = ['language_interface[enabled][language-url]' => '1'];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Enable the language switching block.
-    $block = $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, array(
+    $block = $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, [
       'id' => 'test_language_block',
       // Ensure a 2-byte UTF-8 sequence is in the tested output.
       'label' => $this->randomMachineName(8) . '×',
-    ));
+    ]);
 
     $this->doTestLanguageBlockAuthenticated($block->label());
     $this->doTestLanguageBlockAnonymous($block->label());
@@ -73,38 +73,38 @@ protected function doTestLanguageBlockAuthenticated($block_label) {
 
     // Assert that each list item and anchor element has the appropriate data-
     // attributes.
-    list($language_switcher) = $this->xpath('//div[@id=:id]', array(':id' => 'block-test-language-block'));
-    $list_items = array();
-    $anchors = array();
-    $labels = array();
+    list($language_switcher) = $this->xpath('//div[@id=:id]', [':id' => 'block-test-language-block']);
+    $list_items = [];
+    $anchors = [];
+    $labels = [];
     foreach ($language_switcher->ul->li as $list_item) {
       $classes = explode(" ", (string) $list_item['class']);
-      list($langcode) = array_intersect($classes, array('en', 'fr'));
-      $list_items[] = array(
+      list($langcode) = array_intersect($classes, ['en', 'fr']);
+      $list_items[] = [
         'langcode_class' => $langcode,
         'data-drupal-link-system-path' => (string) $list_item['data-drupal-link-system-path'],
-      );
-      $anchors[] = array(
+      ];
+      $anchors[] = [
         'hreflang' => (string) $list_item->a['hreflang'],
         'data-drupal-link-system-path' => (string) $list_item->a['data-drupal-link-system-path'],
-      );
+      ];
       $labels[] = (string) $list_item->a;
     }
-    $expected_list_items = array(
-      0 => array('langcode_class' => 'en', 'data-drupal-link-system-path' => 'user/2'),
-      1 => array('langcode_class' => 'fr', 'data-drupal-link-system-path' => 'user/2'),
-    );
+    $expected_list_items = [
+      0 => ['langcode_class' => 'en', 'data-drupal-link-system-path' => 'user/2'],
+      1 => ['langcode_class' => 'fr', 'data-drupal-link-system-path' => 'user/2'],
+    ];
     $this->assertIdentical($list_items, $expected_list_items, 'The list items have the correct attributes that will allow the drupal.active-link library to mark them as active.');
-    $expected_anchors = array(
-      0 => array('hreflang' => 'en', 'data-drupal-link-system-path' => 'user/2'),
-      1 => array('hreflang' => 'fr', 'data-drupal-link-system-path' => 'user/2'),
-    );
+    $expected_anchors = [
+      0 => ['hreflang' => 'en', 'data-drupal-link-system-path' => 'user/2'],
+      1 => ['hreflang' => 'fr', 'data-drupal-link-system-path' => 'user/2'],
+    ];
     $this->assertIdentical($anchors, $expected_anchors, 'The anchors have the correct attributes that will allow the drupal.active-link library to mark them as active.');
     $settings = $this->getDrupalSettings();
     $this->assertIdentical($settings['path']['currentPath'], 'user/2', 'drupalSettings.path.currentPath is set correctly to allow drupal.active-link to mark the correct links as active.');
     $this->assertIdentical($settings['path']['isFront'], FALSE, 'drupalSettings.path.isFront is set correctly to allow drupal.active-link to mark the correct links as active.');
     $this->assertIdentical($settings['path']['currentLanguage'], 'en', 'drupalSettings.path.currentLanguage is set correctly to allow drupal.active-link to mark the correct links as active.');
-    $this->assertIdentical($labels, array('English', 'français'), 'The language links labels are in their own language on the language switcher block.');
+    $this->assertIdentical($labels, ['English', 'français'], 'The language links labels are in their own language on the language switcher block.');
   }
 
   /**
@@ -124,19 +124,19 @@ protected function doTestLanguageBlockAnonymous($block_label) {
     $this->assertText($block_label, 'Language switcher block found.');
 
     // Assert that only the current language is marked as active.
-    list($language_switcher) = $this->xpath('//div[@id=:id]', array(':id' => 'block-test-language-block'));
-    $links = array(
-      'active' => array(),
-      'inactive' => array(),
-    );
-    $anchors = array(
-      'active' => array(),
-      'inactive' => array(),
-    );
-    $labels = array();
+    list($language_switcher) = $this->xpath('//div[@id=:id]', [':id' => 'block-test-language-block']);
+    $links = [
+      'active' => [],
+      'inactive' => [],
+    ];
+    $anchors = [
+      'active' => [],
+      'inactive' => [],
+    ];
+    $labels = [];
     foreach ($language_switcher->ul->li as $link) {
       $classes = explode(" ", (string) $link['class']);
-      list($langcode) = array_intersect($classes, array('en', 'fr'));
+      list($langcode) = array_intersect($classes, ['en', 'fr']);
       if (in_array('is-active', $classes)) {
         $links['active'][] = $langcode;
       }
@@ -152,9 +152,9 @@ protected function doTestLanguageBlockAnonymous($block_label) {
       }
       $labels[] = (string) $link->a;
     }
-    $this->assertIdentical($links, array('active' => array('en'), 'inactive' => array('fr')), 'Only the current language list item is marked as active on the language switcher block.');
-    $this->assertIdentical($anchors, array('active' => array('en'), 'inactive' => array('fr')), 'Only the current language anchor is marked as active on the language switcher block.');
-    $this->assertIdentical($labels, array('English', 'français'), 'The language links labels are in their own language on the language switcher block.');
+    $this->assertIdentical($links, ['active' => ['en'], 'inactive' => ['fr']], 'Only the current language list item is marked as active on the language switcher block.');
+    $this->assertIdentical($anchors, ['active' => ['en'], 'inactive' => ['fr']], 'Only the current language anchor is marked as active on the language switcher block.');
+    $this->assertIdentical($labels, ['English', 'français'], 'The language links labels are in their own language on the language switcher block.');
   }
 
   /**
@@ -171,31 +171,31 @@ function testLanguageBlockWithDomain() {
     $languages = $this->container->get('language_manager')->getLanguages();
 
     // Enable browser and URL language detection.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-url]' => TRUE,
       'language_interface[weight][language-url]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Do not allow blank domain.
-    $edit = array(
+    $edit = [
       'language_negotiation_url_part' => LanguageNegotiationUrl::CONFIG_DOMAIN,
       'domain[en]' => '',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
     $this->assertText(t('The domain may not be left blank for English'), 'The form does not allow blank domains.');
 
     // Change the domain for the Italian language.
-    $edit = array(
+    $edit = [
       'language_negotiation_url_part' => LanguageNegotiationUrl::CONFIG_DOMAIN,
       'domain[en]' => \Drupal::request()->getHost(),
       'domain[it]' => 'it.example.com',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved'), 'Domain configuration is saved.');
 
     // Enable the language switcher block.
-    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, array('id' => 'test_language_block'));
+    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, ['id' => 'test_language_block']);
 
     $this->drupalGet('');
 
@@ -203,19 +203,19 @@ function testLanguageBlockWithDomain() {
     $generator = $this->container->get('url_generator');
 
     // Verify the English URL is correct
-    list($english_link) = $this->xpath('//div[@id=:id]/ul/li/a[@hreflang=:hreflang]', array(
+    list($english_link) = $this->xpath('//div[@id=:id]/ul/li/a[@hreflang=:hreflang]', [
       ':id' => 'block-test-language-block',
       ':hreflang' => 'en',
-    ));
-    $english_url = $generator->generateFromRoute('entity.user.canonical', array('user' => 2), array('language' => $languages['en']));
+    ]);
+    $english_url = $generator->generateFromRoute('entity.user.canonical', ['user' => 2], ['language' => $languages['en']]);
     $this->assertEqual($english_url, (string) $english_link['href']);
 
     // Verify the Italian URL is correct
-    list($italian_link) = $this->xpath('//div[@id=:id]/ul/li/a[@hreflang=:hreflang]', array(
+    list($italian_link) = $this->xpath('//div[@id=:id]/ul/li/a[@hreflang=:hreflang]', [
       ':id' => 'block-test-language-block',
       ':hreflang' => 'it',
-    ));
-    $italian_url = $generator->generateFromRoute('entity.user.canonical', array('user' => 2), array('language' => $languages['it']));
+    ]);
+    $italian_url = $generator->generateFromRoute('entity.user.canonical', ['user' => 2], ['language' => $languages['it']]);
     $this->assertEqual($italian_url, (string) $italian_link['href']);
   }
 
@@ -224,13 +224,13 @@ function testLanguageBlockWithDomain() {
    */
   function testLanguageLinkActiveClass() {
     // Add language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => '1');
+    $edit = ['language_interface[enabled][language-url]' => '1'];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     $this->doTestLanguageLinkActiveClassAuthenticated();
@@ -244,23 +244,23 @@ function testLanguageBodyClass() {
     $searched_class = 'path-admin';
 
     // Add language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => '1');
+    $edit = ['language_interface[enabled][language-url]' => '1'];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Check if the default (English) admin/config page has the right class.
     $this->drupalGet('admin/config');
-    $class = $this->xpath('//body[contains(@class, :class)]', array(':class' => $searched_class));
+    $class = $this->xpath('//body[contains(@class, :class)]', [':class' => $searched_class]);
     $this->assertTrue(isset($class[0]), t('The path-admin class appears on default language.'));
 
     // Check if the French admin/config page has the right class.
     $this->drupalGet('fr/admin/config');
-    $class = $this->xpath('//body[contains(@class, :class)]', array(':class' => $searched_class));
+    $class = $this->xpath('//body[contains(@class, :class)]', [':class' => $searched_class]);
     $this->assertTrue(isset($class[0]), t('The path-admin class same as on default language.'));
 
     // The testing profile sets the user/login page as the frontpage. That
@@ -270,12 +270,12 @@ function testLanguageBodyClass() {
 
     // Check if the default (English) frontpage has the right class.
     $this->drupalGet('<front>');
-    $class = $this->xpath('//body[contains(@class, :class)]', array(':class' => 'path-frontpage'));
+    $class = $this->xpath('//body[contains(@class, :class)]', [':class' => 'path-frontpage']);
     $this->assertTrue(isset($class[0]), 'path-frontpage class found on the body tag');
 
     // Check if the French frontpage has the right class.
     $this->drupalGet('fr');
-    $class = $this->xpath('//body[contains(@class, :class)]', array(':class' => 'path-frontpage'));
+    $class = $this->xpath('//body[contains(@class, :class)]', [':class' => 'path-frontpage']);
     $this->assertTrue(isset($class[0]), 'path-frontpage class found on the body tag with french as the active language');
 
   }
@@ -295,18 +295,18 @@ protected function doTestLanguageLinkActiveClassAuthenticated() {
 
     // Language code 'none' link should be active.
     $langcode = 'none';
-    $links = $this->xpath('//a[@id = :id and @data-drupal-link-system-path = :path]', array(':id' => 'no_lang_link', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @data-drupal-link-system-path = :path]', [':id' => 'no_lang_link', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'en' link should be active.
     $langcode = 'en';
-    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', array(':id' => 'en_link', ':lang' => 'en', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', [':id' => 'en_link', ':lang' => 'en', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'fr' link should not be active.
     $langcode = 'fr';
-    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', array(':id' => 'fr_link', ':lang' => 'fr', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to NOT mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', [':id' => 'fr_link', ':lang' => 'fr', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to NOT mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Verify that drupalSettings contains the correct values.
     $settings = $this->getDrupalSettings();
@@ -320,18 +320,18 @@ protected function doTestLanguageLinkActiveClassAuthenticated() {
 
     // Language code 'none' link should be active.
     $langcode = 'none';
-    $links = $this->xpath('//a[@id = :id and @data-drupal-link-system-path = :path]', array(':id' => 'no_lang_link', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @data-drupal-link-system-path = :path]', [':id' => 'no_lang_link', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'en' link should not be active.
     $langcode = 'en';
-    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', array(':id' => 'en_link', ':lang' => 'en', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to NOT mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', [':id' => 'en_link', ':lang' => 'en', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to NOT mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'fr' link should be active.
     $langcode = 'fr';
-    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', array(':id' => 'fr_link', ':lang' => 'fr', ':path' => $path));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and @hreflang = :lang and @data-drupal-link-system-path = :path]', [':id' => 'fr_link', ':lang' => 'fr', ':path' => $path]);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode has the correct attributes that will allow the drupal.active-link library to mark it as active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Verify that drupalSettings contains the correct values.
     $settings = $this->getDrupalSettings();
@@ -356,18 +356,18 @@ protected function doTestLanguageLinkActiveClassAnonymous() {
 
     // Language code 'none' link should be active.
     $langcode = 'none';
-    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', array(':id' => 'no_lang_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', [':id' => 'no_lang_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'en' link should be active.
     $langcode = 'en';
-    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', array(':id' => 'en_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', [':id' => 'en_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'fr' link should not be active.
     $langcode = 'fr';
-    $links = $this->xpath('//a[@id = :id and not(contains(@class, :class))]', array(':id' => 'fr_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is NOT marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and not(contains(@class, :class))]', [':id' => 'fr_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is NOT marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Test links generated by the link generator on a French page.
     $current_language = 'French';
@@ -375,18 +375,18 @@ protected function doTestLanguageLinkActiveClassAnonymous() {
 
     // Language code 'none' link should be active.
     $langcode = 'none';
-    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', array(':id' => 'no_lang_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', [':id' => 'no_lang_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'en' link should not be active.
     $langcode = 'en';
-    $links = $this->xpath('//a[@id = :id and not(contains(@class, :class))]', array(':id' => 'en_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is NOT marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and not(contains(@class, :class))]', [':id' => 'en_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is NOT marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
 
     // Language code 'fr' link should be active.
     $langcode = 'fr';
-    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', array(':id' => 'fr_link', ':class' => 'is-active'));
-    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', array(':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode)));
+    $links = $this->xpath('//a[@id = :id and contains(@class, :class)]', [':id' => 'fr_link', ':class' => 'is-active']);
+    $this->assertTrue(isset($links[0]), t('A link generated by :function to the current :language page with langcode :langcode is marked active.', [':function' => $function_name, ':language' => $current_language, ':langcode' => $langcode]));
   }
 
   /**
@@ -394,27 +394,27 @@ protected function doTestLanguageLinkActiveClassAnonymous() {
    */
   public function testLanguageSessionSwitchLinks() {
     // Add language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable session language detection and selection.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-url]' => FALSE,
       'language_interface[enabled][language-session]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Enable the language switching block.
-    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, array(
+    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, [
       'id' => 'test_language_block',
-    ));
+    ]);
 
     // Enable the main menu block.
-    $this->drupalPlaceBlock('system_menu_block:main', array(
+    $this->drupalPlaceBlock('system_menu_block:main', [
       'id' => 'test_menu',
-    ));
+    ]);
 
     // Add a link to the homepage.
     $link = MenuLinkContent::create([
diff --git a/core/modules/language/src/Tests/LanguageTourTest.php b/core/modules/language/src/Tests/LanguageTourTest.php
index 7778367..b11006e 100644
--- a/core/modules/language/src/Tests/LanguageTourTest.php
+++ b/core/modules/language/src/Tests/LanguageTourTest.php
@@ -30,7 +30,7 @@ class LanguageTourTest extends TourTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('administer languages', 'access tour'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages', 'access tour']);
     $this->drupalLogin($this->adminUser);
     $this->drupalPlaceBlock('local_actions_block');
   }
diff --git a/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php b/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
index 03dd8cb..0008186 100644
--- a/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
+++ b/core/modules/language/src/Tests/LanguageUILanguageNegotiationTest.php
@@ -48,12 +48,12 @@ class LanguageUILanguageNegotiationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'language_test', 'block', 'user', 'content_translation');
+  public static $modules = ['locale', 'language_test', 'block', 'user', 'content_translation'];
 
   protected function setUp() {
     parent::setUp();
 
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'translate interface', 'access administration pages', 'administer blocks'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'translate interface', 'access administration pages', 'administer blocks']);
     $this->drupalLogin($admin_user);
   }
 
@@ -69,9 +69,9 @@ function testUILanguageNegotiation() {
     // For testing path prefix.
     $langcode = 'zh-hans';
     // For setting browser language preference to 'vi'.
-    $http_header_browser_fallback = array("Accept-Language: $langcode_browser_fallback;q=1");
+    $http_header_browser_fallback = ["Accept-Language: $langcode_browser_fallback;q=1"];
     // For setting browser language preference to some unknown.
-    $http_header_blah = array("Accept-Language: blah;q=1");
+    $http_header_blah = ["Accept-Language: blah;q=1"];
 
     // Setup the site languages by installing two languages.
     // Set the default language in order for the translated string to be registered
@@ -101,114 +101,114 @@ function testUILanguageNegotiation() {
     $language_browser_fallback_string = "In $langcode_browser_fallback In $langcode_browser_fallback In $langcode_browser_fallback";
     $language_string = "In $langcode In $langcode In $langcode";
     // Do a translate search of our target string.
-    $search = array(
+    $search = [
       'string' => $default_string,
       'langcode' => $langcode_browser_fallback,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $language_browser_fallback_string,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
-    $search = array(
+    $search = [
       'string' => $default_string,
       'langcode' => $langcode,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $language_string,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Configure selected language negotiation to use zh-hans.
-    $edit = array('selected_langcode' => $langcode);
+    $edit = ['selected_langcode' => $langcode];
     $this->drupalPostForm('admin/config/regional/language/detection/selected', $edit, t('Save configuration'));
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $language_string,
       'expected_method_id' => LanguageNegotiationSelected::METHOD_ID,
       'http_header' => $http_header_browser_fallback,
       'message' => 'SELECTED: UI language is switched based on selected language.',
-    );
+    ];
     $this->doRunTest($test);
 
     // An invalid language is selected.
     $this->config('language.negotiation')->set('selected_langcode', NULL)->save();
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
       'http_header' => $http_header_browser_fallback,
       'message' => 'SELECTED > DEFAULT: UI language is switched based on selected language.',
-    );
+    ];
     $this->doRunTest($test);
 
     // No selected language is available.
     $this->config('language.negotiation')->set('selected_langcode', $langcode_unknown)->save();
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
       'http_header' => $http_header_browser_fallback,
       'message' => 'SELECTED > DEFAULT: UI language is switched based on selected language.',
-    );
+    ];
     $this->doRunTest($test);
 
-    $tests = array(
+    $tests = [
       // Default, browser preference should have no influence.
-      array(
-        'language_negotiation' => array(LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+      [
+        'language_negotiation' => [LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
         'path' => 'admin/config',
         'expect' => $default_string,
         'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'URL (PATH) > DEFAULT: no language prefix, UI language is default and the browser language preference setting is not used.',
-      ),
+      ],
       // Language prefix.
-      array(
-        'language_negotiation' => array(LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+      [
+        'language_negotiation' => [LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
         'path' => "$langcode/admin/config",
         'expect' => $language_string,
         'expected_method_id' => LanguageNegotiationUrl::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'URL (PATH) > DEFAULT: with language prefix, UI language is switched based on path prefix',
-      ),
+      ],
       // Default, go by browser preference.
-      array(
-        'language_negotiation' => array(LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID),
+      [
+        'language_negotiation' => [LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID],
         'path' => 'admin/config',
         'expect' => $language_browser_fallback_string,
         'expected_method_id' => LanguageNegotiationBrowser::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'URL (PATH) > BROWSER: no language prefix, UI language is determined by browser language preference',
-      ),
+      ],
       // Prefix, switch to the language.
-      array(
-        'language_negotiation' => array(LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID),
+      [
+        'language_negotiation' => [LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID],
         'path' => "$langcode/admin/config",
         'expect' => $language_string,
         'expected_method_id' => LanguageNegotiationUrl::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'URL (PATH) > BROWSER: with language prefix, UI language is based on path prefix',
-      ),
+      ],
       // Default, browser language preference is not one of site's lang.
-      array(
-        'language_negotiation' => array(LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+      [
+        'language_negotiation' => [LanguageNegotiationUrl::METHOD_ID, LanguageNegotiationBrowser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
         'path' => 'admin/config',
         'expect' => $default_string,
         'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
         'http_header' => $http_header_blah,
         'message' => 'URL (PATH) > BROWSER > DEFAULT: no language prefix and browser language preference set to unknown language should use default language',
-      ),
-    );
+      ],
+    ];
 
     foreach ($tests as $test) {
       $this->doRunTest($test);
@@ -224,7 +224,7 @@ function testUILanguageNegotiation() {
     $this->config('language.types')
       ->set('negotiation.' . LanguageInterface::TYPE_INTERFACE . '.enabled', array_flip(array_keys($language_interface_method_definitions)))
       ->save();
-    $this->drupalGet("$langcode_unknown/admin/config", array(), $http_header_browser_fallback);
+    $this->drupalGet("$langcode_unknown/admin/config", [], $http_header_browser_fallback);
     $this->assertResponse(404, "Unknown language path prefix should return 404");
 
     // Set preferred langcode for user to NULL.
@@ -232,14 +232,14 @@ function testUILanguageNegotiation() {
     $account->preferred_langcode = NULL;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER > DEFAULT: no preferred user language setting, the UI language is default',
-    );
+    ];
     $this->doRunTest($test);
 
     // Set preferred langcode for user to unknown language.
@@ -247,102 +247,102 @@ function testUILanguageNegotiation() {
     $account->preferred_langcode = $langcode_unknown;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER > DEFAULT: invalid preferred user language setting, the UI language is default',
-    );
+    ];
     $this->doRunTest($test);
 
     // Set preferred langcode for user to non default.
     $account->preferred_langcode = $langcode;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUser::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $language_string,
       'expected_method_id' => LanguageNegotiationUser::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER > DEFAULT: defined preferred user language setting, the UI language is based on user setting',
-    );
+    ];
     $this->doRunTest($test);
 
     // Set preferred admin langcode for user to NULL.
     $account->preferred_admin_langcode = NULL;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER ADMIN > DEFAULT: no preferred user admin language setting, the UI language is default',
-    );
+    ];
     $this->doRunTest($test);
 
     // Set preferred admin langcode for user to unknown language.
     $account->preferred_admin_langcode = $langcode_unknown;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $default_string,
       'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER ADMIN > DEFAULT: invalid preferred user admin language setting, the UI language is default',
-    );
+    ];
     $this->doRunTest($test);
 
     // Set preferred admin langcode for user to non default.
     $account->preferred_admin_langcode = $langcode;
     $account->save();
 
-    $test = array(
-      'language_negotiation' => array(LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID),
+    $test = [
+      'language_negotiation' => [LanguageNegotiationUserAdmin::METHOD_ID, LanguageNegotiationSelected::METHOD_ID],
       'path' => 'admin/config',
       'expect' => $language_string,
       'expected_method_id' => LanguageNegotiationUserAdmin::METHOD_ID,
-      'http_header' => array(),
+      'http_header' => [],
       'message' => 'USER ADMIN > DEFAULT: defined preferred user admin language setting, the UI language is based on user setting',
-    );
+    ];
     $this->doRunTest($test);
 
     // Go by session preference.
     $language_negotiation_session_param = $this->randomMachineName();
-    $edit = array('language_negotiation_session_param' => $language_negotiation_session_param);
+    $edit = ['language_negotiation_session_param' => $language_negotiation_session_param];
     $this->drupalPostForm('admin/config/regional/language/detection/session', $edit, t('Save configuration'));
-    $tests = array(
-      array(
-        'language_negotiation' => array(LanguageNegotiationSession::METHOD_ID),
+    $tests = [
+      [
+        'language_negotiation' => [LanguageNegotiationSession::METHOD_ID],
         'path' => "admin/config",
         'expect' => $default_string,
         'expected_method_id' => LanguageNegotiatorInterface::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'SESSION > DEFAULT: no language given, the UI language is default',
-      ),
-      array(
-        'language_negotiation' => array(LanguageNegotiationSession::METHOD_ID),
+      ],
+      [
+        'language_negotiation' => [LanguageNegotiationSession::METHOD_ID],
         'path' => 'admin/config',
         'path_options' => ['query' => [$language_negotiation_session_param => $langcode]],
         'expect' => $language_string,
         'expected_method_id' => LanguageNegotiationSession::METHOD_ID,
         'http_header' => $http_header_browser_fallback,
         'message' => 'SESSION > DEFAULT: language given, UI language is determined by session language preference',
-      ),
-    );
+      ],
+    ];
     foreach ($tests as $test) {
       $this->doRunTest($test);
     }
   }
 
   protected function doRunTest($test) {
-    $test += array('path_options' => []);
+    $test += ['path_options' => []];
     if (!empty($test['language_negotiation'])) {
       $method_weights = array_flip($test['language_negotiation']);
       $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_INTERFACE, $method_weights);
@@ -358,7 +358,7 @@ protected function doRunTest($test) {
     $this->container->get('language_manager')->reset();
     $this->drupalGet($test['path'], $test['path_options'], $test['http_header']);
     $this->assertText($test['expect'], $test['message']);
-    $this->assertText(t('Language negotiation method: @name', array('@name' => $test['expected_method_id'])));
+    $this->assertText(t('Language negotiation method: @name', ['@name' => $test['expected_method_id']]));
   }
 
   /**
@@ -372,21 +372,21 @@ function testUrlLanguageFallback() {
 
     // Enable the path prefix for the default language: this way any unprefixed
     // URL must have a valid fallback value.
-    $edit = array('prefix[en]' => 'en');
+    $edit = ['prefix[en]' => 'en'];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
 
     // Enable browser and URL language detection.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-browser]' => TRUE,
       'language_interface[enabled][language-url]' => TRUE,
       'language_interface[weight][language-browser]' => -8,
       'language_interface[weight][language-url]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
     $this->drupalGet('admin/config/regional/language/detection');
 
     // Enable the language switcher block.
-    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, array('id' => 'test_language_block'));
+    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, ['id' => 'test_language_block']);
 
     // Log out, because for anonymous users, the "active" class is set by PHP
     // (which means we can easily test it here), whereas for authenticated users
@@ -398,13 +398,13 @@ function testUrlLanguageFallback() {
 
     // Access the front page without specifying any valid URL language prefix
     // and having as browser language preference a non-default language.
-    $http_header = array("Accept-Language: $langcode_browser_fallback;q=1");
-    $language = new Language(array('id' => ''));
-    $this->drupalGet('', array('language' => $language), $http_header);
+    $http_header = ["Accept-Language: $langcode_browser_fallback;q=1"];
+    $language = new Language(['id' => '']);
+    $this->drupalGet('', ['language' => $language], $http_header);
 
     // Check that the language switcher active link matches the given browser
     // language.
-    $args = array(':id' => 'block-test-language-block', ':url' => \Drupal::url('<front>') . $langcode_browser_fallback);
+    $args = [':id' => 'block-test-language-block', ':url' => \Drupal::url('<front>') . $langcode_browser_fallback];
     $fields = $this->xpath('//div[@id=:id]//a[@class="language-link is-active" and starts-with(@href, :url)]', $args);
     $this->assertTrue($fields[0] == $languages[$langcode_browser_fallback]->getName(), 'The browser language is the URL active language');
 
@@ -428,27 +428,27 @@ function testLanguageDomain() {
     $languages = $this->container->get('language_manager')->getLanguages();
 
     // Enable browser and URL language detection.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-url]' => TRUE,
       'language_interface[weight][language-url]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Do not allow blank domain.
-    $edit = array(
+    $edit = [
       'language_negotiation_url_part' => LanguageNegotiationUrl::CONFIG_DOMAIN,
       'domain[en]' => '',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
     $this->assertText('The domain may not be left blank for English', 'The form does not allow blank domains.');
     $this->rebuildContainer();
 
     // Change the domain for the Italian language.
-    $edit = array(
+    $edit = [
       'language_negotiation_url_part' => LanguageNegotiationUrl::CONFIG_DOMAIN,
       'domain[en]' => $base_url_host,
       'domain[it]' => 'it.example.com',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
     $this->assertText('The configuration options have been saved', 'Domain configuration is saved.');
     $this->rebuildContainer();
@@ -471,19 +471,19 @@ function testLanguageDomain() {
     $italian_url = Url::fromRoute('system.admin', [], ['language' => $languages['it']])->toString();
     $url_scheme = \Drupal::request()->isSecure() ? 'https://' : 'http://';
     $correct_link = $url_scheme . $link;
-    $this->assertEqual($italian_url, $correct_link, format_string('The right URL (@url) in accordance with the chosen language', array('@url' => $italian_url)));
+    $this->assertEqual($italian_url, $correct_link, format_string('The right URL (@url) in accordance with the chosen language', ['@url' => $italian_url]));
 
     // Test HTTPS via options.
     $italian_url = Url::fromRoute('system.admin', [], ['https' => TRUE, 'language' => $languages['it']])->toString();
     $correct_link = 'https://' . $link;
-    $this->assertTrue($italian_url == $correct_link, format_string('The right HTTPS URL (via options) (@url) in accordance with the chosen language', array('@url' => $italian_url)));
+    $this->assertTrue($italian_url == $correct_link, format_string('The right HTTPS URL (via options) (@url) in accordance with the chosen language', ['@url' => $italian_url]));
 
     // Test HTTPS via current URL scheme.
-    $request = Request::create('', 'GET', array(), array(), array(), array('HTTPS' => 'on'));
+    $request = Request::create('', 'GET', [], [], [], ['HTTPS' => 'on']);
     $this->container->get('request_stack')->push($request);
     $italian_url = Url::fromRoute('system.admin', [], ['language' => $languages['it']])->toString();
     $correct_link = 'https://' . $link;
-    $this->assertTrue($italian_url == $correct_link, format_string('The right URL (via current URL scheme) (@url) in accordance with the chosen language', array('@url' => $italian_url)));
+    $this->assertTrue($italian_url == $correct_link, format_string('The right URL (via current URL scheme) (@url) in accordance with the chosen language', ['@url' => $italian_url]));
   }
 
   /**
@@ -491,11 +491,11 @@ function testLanguageDomain() {
    */
   public function testContentCustomization() {
     // Customize content language settings from their defaults.
-    $edit = array(
+    $edit = [
       'language_content[configurable]' => TRUE,
       'language_content[enabled][language-url]' => FALSE,
       'language_content[enabled][language-session]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Check if configurability persisted.
@@ -515,16 +515,16 @@ public function testDisableLanguageSwitcher() {
     $block_id = 'test_language_block';
 
     // Enable the language switcher block.
-    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_CONTENT, array('id' => $block_id));
+    $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_CONTENT, ['id' => $block_id]);
 
     // Check if the language switcher block has been created.
     $block = Block::load($block_id);
     $this->assertTrue($block, 'Language switcher block was created.');
 
     // Make sure language_content is not configurable.
-    $edit = array(
+    $edit = [
       'language_content[configurable]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
     $this->assertResponse(200);
 
diff --git a/core/modules/language/src/Tests/LanguageUrlRewritingTest.php b/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
index 5cd80dc..de1b1a3 100644
--- a/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
+++ b/core/modules/language/src/Tests/LanguageUrlRewritingTest.php
@@ -21,7 +21,7 @@ class LanguageUrlRewritingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'language_test');
+  public static $modules = ['language', 'language_test'];
 
   /**
    * An user with permissions to administer languages.
@@ -34,16 +34,16 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $this->webUser = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $this->webUser = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($this->webUser);
 
     // Install French language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => 1);
+    $edit = ['language_interface[enabled][language-url]' => 1];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Check that drupalSettings contains path prefix.
@@ -56,7 +56,7 @@ protected function setUp() {
    */
   function testUrlRewritingEdgeCases() {
     // Check URL rewriting with a non-installed language.
-    $non_existing = new Language(array('id' => $this->randomMachineName()));
+    $non_existing = new Language(['id' => $this->randomMachineName()]);
     $this->checkUrl($non_existing, 'Path language is ignored if language is not installed.', 'URL language negotiation does not work with non-installed languages');
 
     // Check that URL rewriting is not applied to subrequests.
@@ -79,9 +79,9 @@ function testUrlRewritingEdgeCases() {
    *   The message to display confirming prefixed URL is not working.
    */
   private function checkUrl(LanguageInterface $language, $message1, $message2) {
-    $options = array('language' => $language, 'script' => '');
+    $options = ['language' => $language, 'script' => ''];
     $base_path = trim(base_path(), '/');
-    $rewritten_path = trim(str_replace($base_path, '', \Drupal::url('<front>', array(), $options)), '/');
+    $rewritten_path = trim(str_replace($base_path, '', \Drupal::url('<front>', [], $options)), '/');
     $segments = explode('/', $rewritten_path, 2);
     $prefix = $segments[0];
     $path = isset($segments[1]) ? $segments[1] : $prefix;
@@ -106,11 +106,11 @@ function testDomainNameNegotiationPort() {
     $language_domain = 'example.fr';
     // Get the current host URI we're running on.
     $base_url_host = parse_url($base_url, PHP_URL_HOST);
-    $edit = array(
+    $edit = [
       'language_negotiation_url_part' => LanguageNegotiationUrl::CONFIG_DOMAIN,
       'domain[en]' => $base_url_host,
       'domain[fr]' => $language_domain
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
     // Rebuild the container so that the new language gets picked up by services
     // that hold the list of languages.
@@ -126,11 +126,11 @@ function testDomainNameNegotiationPort() {
 
     // In case index.php is part of the URLs, we need to adapt the asserted
     // URLs as well.
-    $index_php = strpos(\Drupal::url('<front>', array(), array('absolute' => TRUE)), 'index.php') !== FALSE;
+    $index_php = strpos(\Drupal::url('<front>', [], ['absolute' => TRUE]), 'index.php') !== FALSE;
 
     $request = Request::createFromGlobals();
     $server = $request->server->all();
-    $request = $this->prepareRequestForGenerator(TRUE, array('HTTP_HOST' => $server['HTTP_HOST'] . ':88'));
+    $request = $this->prepareRequestForGenerator(TRUE, ['HTTP_HOST' => $server['HTTP_HOST'] . ':88']);
 
     // Create an absolute French link.
     $language = \Drupal::languageManager()->getLanguage('fr');
diff --git a/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElement.php b/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElement.php
index 99b2fff..4021667 100644
--- a/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElement.php
+++ b/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElement.php
@@ -24,19 +24,19 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $conf = ContentLanguageSettings::loadByEntityTypeBundle('entity_test', 'some_bundle');
 
-    $form['lang_configuration'] = array(
+    $form['lang_configuration'] = [
       '#type' => 'language_configuration',
-      '#entity_information' => array(
+      '#entity_information' => [
         'entity_type' => 'entity_test',
         'bundle' => 'some_bundle',
-      ),
+      ],
       '#default_value' => $conf,
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
     $form['#submit'][] = 'language_configuration_element_submit';
     return $form;
   }
diff --git a/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElementTest.php b/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElementTest.php
index 0aa6c49..f0fe8c5 100644
--- a/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElementTest.php
+++ b/core/modules/language/tests/language_elements_test/src/Form/LanguageConfigurationElementTest.php
@@ -21,11 +21,11 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#title' => t('Language select'),
       '#type' => 'language_select',
       '#default_value' => language_get_default_langcode('entity_test', 'some_bundle'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/language/tests/language_test/language_test.module b/core/modules/language/tests/language_test/language_test.module
index 4803202..5ea9c36 100644
--- a/core/modules/language/tests/language_test/language_test.module
+++ b/core/modules/language/tests/language_test/language_test.module
@@ -15,7 +15,7 @@
 function language_test_page_top() {
   if (\Drupal::moduleHandler()->moduleExists('language')) {
     language_test_store_language_negotiation();
-    drupal_set_message(t('Language negotiation method: @name', array('@name' => \Drupal::languageManager()->getNegotiatedLanguageMethod())));
+    drupal_set_message(t('Language negotiation method: @name', ['@name' => \Drupal::languageManager()->getNegotiatedLanguageMethod()]));
   }
 }
 
@@ -24,16 +24,16 @@ function language_test_page_top() {
  */
 function language_test_language_types_info() {
   if (\Drupal::state()->get('language_test.language_types')) {
-    return array(
-      'test_language_type' => array(
+    return [
+      'test_language_type' => [
         'name' => t('Test'),
         'description' => t('A test language type.'),
-      ),
-      'fixed_test_language_type' => array(
-        'fixed' => array('test_language_negotiation_method'),
+      ],
+      'fixed_test_language_type' => [
+        'fixed' => ['test_language_negotiation_method'],
         'locked' => TRUE,
-      ),
-    );
+      ],
+    ];
   }
 }
 
@@ -68,7 +68,7 @@ function language_test_language_negotiation_info_alter(array &$negotiation_info)
  * Store the last negotiated languages.
  */
 function language_test_store_language_negotiation() {
-  $last = array();
+  $last = [];
   foreach (\Drupal::languageManager()->getDefinedLanguageTypes() as $type) {
     $last[$type] = \Drupal::languageManager()->getCurrentLanguage($type)->getId();
   }
diff --git a/core/modules/language/tests/language_test/src/Controller/LanguageTestController.php b/core/modules/language/tests/language_test/src/Controller/LanguageTestController.php
index 136d8eb..441b2eb 100644
--- a/core/modules/language/tests/language_test/src/Controller/LanguageTestController.php
+++ b/core/modules/language/tests/language_test/src/Controller/LanguageTestController.php
@@ -60,7 +60,7 @@ public static function create(ContainerInterface $container) {
    *   Testing feedback based on (translated) entity title.
    */
   public function testEntity(ConfigurableLanguageInterface $configurable_language) {
-    return array('#markup' => $this->t('Loaded %label.', array('%label' => $configurable_language->label())));
+    return ['#markup' => $this->t('Loaded %label.', ['%label' => $configurable_language->label()])];
   }
 
   /**
@@ -72,43 +72,43 @@ public function testEntity(ConfigurableLanguageInterface $configurable_language)
   public function typeLinkActiveClass() {
     // We assume that 'en' and 'fr' have been configured.
     $languages = $this->languageManager->getLanguages();
-    return array(
-      'no_language' => array(
+    return [
+      'no_language' => [
         '#type' => 'link',
         '#title' => t('Link to the current path with no langcode provided.'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
-          'attributes' => array(
+        '#options' => [
+          'attributes' => [
             'id' => 'no_lang_link',
-          ),
+          ],
           'set_active_class' => TRUE,
-        ),
-      ),
-      'fr' => array(
+        ],
+      ],
+      'fr' => [
         '#type' => 'link',
         '#title' => t('Link to a French version of the current path.'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
+        '#options' => [
           'language' => $languages['fr'],
-          'attributes' => array(
+          'attributes' => [
             'id' => 'fr_link',
-          ),
+          ],
           'set_active_class' => TRUE,
-        ),
-      ),
-      'en' => array(
+        ],
+      ],
+      'en' => [
         '#type' => 'link',
         '#title' => t('Link to an English version of the current path.'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
+        '#options' => [
           'language' => $languages['en'],
-          'attributes' => array(
+          'attributes' => [
             'id' => 'en_link',
-          ),
+          ],
           'set_active_class' => TRUE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -130,7 +130,7 @@ public function testSubRequest() {
     else {
       $base_path = $request->getBasePath();
     }
-    $sub_request = Request::create($base_path . '/user', 'GET', $request->query->all(), $request->cookies->all(), array(), $server);
+    $sub_request = Request::create($base_path . '/user', 'GET', $request->query->all(), $request->cookies->all(), [], $server);
     return $this->httpKernel->handle($sub_request, HttpKernelInterface::SUB_REQUEST);
   }
 
diff --git a/core/modules/language/tests/src/Functional/AdminPathEntityConverterLanguageTest.php b/core/modules/language/tests/src/Functional/AdminPathEntityConverterLanguageTest.php
index bd46a40..f689a92 100644
--- a/core/modules/language/tests/src/Functional/AdminPathEntityConverterLanguageTest.php
+++ b/core/modules/language/tests/src/Functional/AdminPathEntityConverterLanguageTest.php
@@ -12,14 +12,14 @@
  */
 class AdminPathEntityConverterLanguageTest extends BrowserTestBase {
 
-  public static $modules = array('language', 'language_test');
+  public static $modules = ['language', 'language_test'];
 
   protected function setUp() {
     parent::setUp();
-    $permissions = array(
+    $permissions = [
       'access administration pages',
       'administer site configuration',
-    );
+    ];
     $this->drupalLogin($this->drupalCreateUser($permissions));
     ConfigurableLanguage::createFromLangcode('es')->save();
   }
@@ -34,12 +34,12 @@ public function testConfigUsingCurrentLanguage() {
       ->save();
 
     $this->drupalGet('es/admin/language_test/entity_using_current_language/es');
-    $this->assertNoRaw(t('Loaded %label.', array('%label' => 'Spanish')));
-    $this->assertRaw(t('Loaded %label.', array('%label' => 'Español')));
+    $this->assertNoRaw(t('Loaded %label.', ['%label' => 'Spanish']));
+    $this->assertRaw(t('Loaded %label.', ['%label' => 'Español']));
 
     $this->drupalGet('es/admin/language_test/entity_using_original_language/es');
-    $this->assertRaw(t('Loaded %label.', array('%label' => 'Spanish')));
-    $this->assertNoRaw(t('Loaded %label.', array('%label' => 'Español')));
+    $this->assertRaw(t('Loaded %label.', ['%label' => 'Spanish']));
+    $this->assertNoRaw(t('Loaded %label.', ['%label' => 'Español']));
   }
 
 }
diff --git a/core/modules/language/tests/src/Functional/LanguageBlockSettingsVisibilityTest.php b/core/modules/language/tests/src/Functional/LanguageBlockSettingsVisibilityTest.php
index 3090d5b..003c5a6 100644
--- a/core/modules/language/tests/src/Functional/LanguageBlockSettingsVisibilityTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageBlockSettingsVisibilityTest.php
@@ -11,12 +11,12 @@
  */
 class LanguageBlockSettingsVisibilityTest extends BrowserTestBase {
 
-  public static $modules = array('block', 'language');
+  public static $modules = ['block', 'language'];
 
   public function testUnnecessaryLanguageSettingsVisibility() {
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'administer blocks'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'administer blocks']);
     $this->drupalLogin($admin_user);
-    $this->drupalPostForm('admin/config/regional/language/add', array('predefined_langcode' => 'hu'), t('Add language'));
+    $this->drupalPostForm('admin/config/regional/language/add', ['predefined_langcode' => 'hu'], t('Add language'));
     $this->drupalGet('admin/structure/block/add/system_menu_block:admin/stark');
     $this->assertNoFieldByXPath('//input[@id="edit-visibility-language-langcodes-und"]', NULL, '\'Not specified\' option does not appear at block config, language settings section.');
     $this->assertNoFieldByXpath('//input[@id="edit-visibility-language-langcodes-zxx"]', NULL, '\'Not applicable\' option does not appear at block config, language settings section.');
diff --git a/core/modules/language/tests/src/Functional/LanguageBrowserDetectionTest.php b/core/modules/language/tests/src/Functional/LanguageBrowserDetectionTest.php
index 1b1382a..b32909b 100644
--- a/core/modules/language/tests/src/Functional/LanguageBrowserDetectionTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageBrowserDetectionTest.php
@@ -11,7 +11,7 @@
  */
 class LanguageBrowserDetectionTest extends BrowserTestBase {
 
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Tests for adding, editing and deleting mappings between browser language
@@ -19,7 +19,7 @@ class LanguageBrowserDetectionTest extends BrowserTestBase {
    */
   function testUIBrowserLanguageMappings() {
     // User to manage languages.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
     // Check that the configure link exists.
@@ -34,19 +34,19 @@ function testUIBrowserLanguageMappings() {
     // Delete zh-cn language code.
     $browser_langcode = 'zh-cn';
     $this->drupalGet('admin/config/regional/language/detection/browser/delete/' . $browser_langcode);
-    $message = t('Are you sure you want to delete @browser_langcode?', array(
+    $message = t('Are you sure you want to delete @browser_langcode?', [
       '@browser_langcode' => $browser_langcode,
-    ));
+    ]);
     $this->assertRaw($message);
 
     // Confirm the delete.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/config/regional/language/detection/browser/delete/' . $browser_langcode, $edit, t('Confirm'));
 
     // We need raw here because %browser will add HTML.
-    $t_args = array(
+    $t_args = [
       '%browser' => $browser_langcode,
-    );
+    ];
     $this->assertRaw(t('The mapping for the %browser browser language code has been deleted.', $t_args), 'The test browser language code has been deleted.');
 
     // Check we went back to the browser negotiation mapping overview.
@@ -55,10 +55,10 @@ function testUIBrowserLanguageMappings() {
     $this->assertNoField('edit-mappings-zh-cn-browser-langcode', 'Chinese browser language code no longer exists.');
 
     // Add a new custom mapping.
-    $edit = array(
+    $edit = [
       'new_mapping[browser_langcode]' => 'xx',
       'new_mapping[drupal_langcode]' => 'en',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/browser', $edit, t('Save configuration'));
     $this->assertUrl(\Drupal::url('language.negotiation_browser', [], ['absolute' => TRUE]));
     $this->assertField('edit-mappings-xx-browser-langcode', 'xx', 'Browser language code found.');
@@ -69,18 +69,18 @@ function testUIBrowserLanguageMappings() {
     $this->assertText('Browser language codes must be unique.');
 
     // Change browser language code of our custom mapping to zh-sg.
-    $edit = array(
+    $edit = [
       'mappings[xx][browser_langcode]' => 'zh-sg',
       'mappings[xx][drupal_langcode]' => 'en',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/browser', $edit, t('Save configuration'));
     $this->assertText(t('Browser language codes must be unique.'));
 
     // Change Drupal language code of our custom mapping to zh-hans.
-    $edit = array(
+    $edit = [
       'mappings[xx][browser_langcode]' => 'xx',
       'mappings[xx][drupal_langcode]' => 'zh-hans',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection/browser', $edit, t('Save configuration'));
     $this->assertUrl(\Drupal::url('language.negotiation_browser', [], ['absolute' => TRUE]));
     $this->assertField('edit-mappings-xx-browser-langcode', 'xx', 'Browser language code found.');
diff --git a/core/modules/language/tests/src/Functional/LanguageConfigOverrideImportTest.php b/core/modules/language/tests/src/Functional/LanguageConfigOverrideImportTest.php
index 76d97fb..2ddd496 100644
--- a/core/modules/language/tests/src/Functional/LanguageConfigOverrideImportTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageConfigOverrideImportTest.php
@@ -17,7 +17,7 @@ class LanguageConfigOverrideImportTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'config', 'locale', 'config_translation');
+  public static $modules = ['language', 'config', 'locale', 'config_translation'];
 
   /**
    * Tests that language can be enabled and overrides are created during a sync.
@@ -31,7 +31,7 @@ public function testConfigOverrideImport() {
     // Uninstall the language module and its dependencies so we can test
     // enabling the language module and creating overrides at the same time
     // during a configuration synchronization.
-    \Drupal::service('module_installer')->uninstall(array('language'));
+    \Drupal::service('module_installer')->uninstall(['language']);
     // Ensure that the current site has no overrides registered to the
     // ConfigFactory.
     $this->rebuildContainer();
@@ -39,8 +39,8 @@ public function testConfigOverrideImport() {
     /* @var \Drupal\Core\Config\StorageInterface $override_sync */
     $override_sync = $sync->createCollection('language.fr');
     // Create some overrides in sync.
-    $override_sync->write('system.site', array('name' => 'FR default site name'));
-    $override_sync->write('system.maintenance', array('message' => 'FR message: @site is currently under maintenance. We should be back shortly. Thank you for your patience'));
+    $override_sync->write('system.site', ['name' => 'FR default site name']);
+    $override_sync->write('system.maintenance', ['message' => 'FR message: @site is currently under maintenance. We should be back shortly. Thank you for your patience']);
 
     $this->configImporter()->import();
     $this->rebuildContainer();
@@ -61,7 +61,7 @@ public function testConfigOverrideImport() {
    */
   public function testConfigOverrideImportEvents() {
     // Enable the config_events_test module so we can record events occurring.
-    \Drupal::service('module_installer')->install(array('config_events_test'));
+    \Drupal::service('module_installer')->install(['config_events_test']);
     $this->rebuildContainer();
 
     ConfigurableLanguage::createFromLangcode('fr')->save();
@@ -73,7 +73,7 @@ public function testConfigOverrideImportEvents() {
     /* @var \Drupal\Core\Config\StorageInterface $override_sync */
     $override_sync = $sync->createCollection('language.fr');
     // Create some overrides in sync.
-    $override_sync->write('system.site', array('name' => 'FR default site name'));
+    $override_sync->write('system.site', ['name' => 'FR default site name']);
     \Drupal::state()->set('config_events_test.event', FALSE);
 
     $this->configImporter()->import();
diff --git a/core/modules/language/tests/src/Functional/LanguageConfigSchemaTest.php b/core/modules/language/tests/src/Functional/LanguageConfigSchemaTest.php
index 12a6843..200131a 100644
--- a/core/modules/language/tests/src/Functional/LanguageConfigSchemaTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageConfigSchemaTest.php
@@ -19,7 +19,7 @@ class LanguageConfigSchemaTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'menu_link_content');
+  public static $modules = ['language', 'menu_link_content'];
 
   /**
    * A user with administrative permissions.
@@ -35,7 +35,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $this->adminUser = $this->drupalCreateUser(array('administer languages'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages']);
     $this->drupalLogin($this->adminUser);
   }
 
diff --git a/core/modules/language/tests/src/Functional/LanguageListModuleInstallTest.php b/core/modules/language/tests/src/Functional/LanguageListModuleInstallTest.php
index fccc200..bcd664d 100644
--- a/core/modules/language/tests/src/Functional/LanguageListModuleInstallTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageListModuleInstallTest.php
@@ -17,7 +17,7 @@ class LanguageListModuleInstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language_test');
+  public static $modules = ['language_test'];
 
   /**
    * Tests enabling Language.
@@ -25,9 +25,9 @@ class LanguageListModuleInstallTest extends BrowserTestBase {
   function testModuleInstallLanguageList() {
     // Since LanguageManager::getLanguages() uses static caches we need to do
     // this by enabling the module using the UI.
-    $admin_user = $this->drupalCreateUser(array('access administration pages', 'administer modules'));
+    $admin_user = $this->drupalCreateUser(['access administration pages', 'administer modules']);
     $this->drupalLogin($admin_user);
-    $edit = array();
+    $edit = [];
     $edit['modules[language][enable]'] = 'language';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
diff --git a/core/modules/language/tests/src/Functional/LanguageNegotiationContentEntityTest.php b/core/modules/language/tests/src/Functional/LanguageNegotiationContentEntityTest.php
index 8991437..27785c0 100644
--- a/core/modules/language/tests/src/Functional/LanguageNegotiationContentEntityTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageNegotiationContentEntityTest.php
@@ -25,7 +25,7 @@ class LanguageNegotiationContentEntityTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'language_test', 'entity_test', 'system');
+  public static $modules = ['language', 'language_test', 'entity_test', 'system'];
 
   /**
    * The entity being used for testing.
@@ -49,7 +49,7 @@ protected function setUp() {
 
     $this->createTranslatableEntity();
 
-    $user = $this->drupalCreateUser(array('view test entity'));
+    $user = $this->drupalCreateUser(['view test entity']);
     $this->drupalLogin($user);
   }
 
diff --git a/core/modules/language/tests/src/Functional/LanguageNegotiationInfoTest.php b/core/modules/language/tests/src/Functional/LanguageNegotiationInfoTest.php
index 3dd0374..ebcd580 100644
--- a/core/modules/language/tests/src/Functional/LanguageNegotiationInfoTest.php
+++ b/core/modules/language/tests/src/Functional/LanguageNegotiationInfoTest.php
@@ -27,7 +27,7 @@ protected function setUp() {
     parent::setUp();
     $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'view the administration theme', 'administer modules']);
     $this->drupalLogin($admin_user);
-    $this->drupalPostForm('admin/config/regional/language/add', array('predefined_langcode' => 'it'), t('Add language'));
+    $this->drupalPostForm('admin/config/regional/language/add', ['predefined_langcode' => 'it'], t('Add language'));
   }
 
   /**
@@ -62,15 +62,15 @@ protected function stateSet(array $values) {
    * Tests alterations to language types/negotiation info.
    */
   function testInfoAlterations() {
-    $this->stateSet(array(
+    $this->stateSet([
       // Enable language_test type info.
       'language_test.language_types' => TRUE,
       // Enable language_test negotiation info (not altered yet).
       'language_test.language_negotiation_info' => TRUE,
       // Alter LanguageInterface::TYPE_CONTENT to be configurable.
       'language_test.content_language_type' => TRUE,
-    ));
-    $this->container->get('module_installer')->install(array('language_test'));
+    ]);
+    $this->container->get('module_installer')->install(['language_test']);
     $this->resetAll();
 
     // Check that fixed language types are properly configured without the need
@@ -87,19 +87,19 @@ function testInfoAlterations() {
     $interface_method_id = LanguageNegotiationUI::METHOD_ID;
     $test_method_id = 'test_language_negotiation_method';
     $form_field = $type . '[enabled][' . $interface_method_id . ']';
-    $edit = array(
+    $edit = [
       $form_field => TRUE,
       $type . '[enabled][' . $test_method_id . ']' => TRUE,
       $test_type . '[enabled][' . $test_method_id . ']' => TRUE,
       $test_type . '[configurable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Alter language negotiation info to remove interface language negotiation
     // method.
-    $this->stateSet(array(
+    $this->stateSet([
       'language_test.language_negotiation_info_alter' => TRUE,
-    ));
+    ]);
 
     $negotiation = $this->config('language.types')->get('negotiation.' . $type . '.enabled');
     $this->assertFalse(isset($negotiation[$interface_method_id]), 'Interface language negotiation method removed from the stored settings.');
@@ -112,10 +112,10 @@ function testInfoAlterations() {
     foreach ($this->languageManager()->getLanguageTypes() as $type) {
       $form_field = $type . '[enabled][test_language_negotiation_method_ts]';
       if ($type == $test_type) {
-        $this->assertFieldByName($form_field, NULL, format_string('Type-specific test language negotiation method available for %type.', array('%type' => $type)));
+        $this->assertFieldByName($form_field, NULL, format_string('Type-specific test language negotiation method available for %type.', ['%type' => $type]));
       }
       else {
-        $this->assertNoFieldByName($form_field, NULL, format_string('Type-specific test language negotiation method unavailable for %type.', array('%type' => $type)));
+        $this->assertNoFieldByName($form_field, NULL, format_string('Type-specific test language negotiation method unavailable for %type.', ['%type' => $type]));
       }
     }
 
@@ -125,17 +125,17 @@ function testInfoAlterations() {
     foreach ($this->languageManager()->getDefinedLanguageTypes() as $type) {
       $langcode = $last[$type];
       $value = $type == LanguageInterface::TYPE_CONTENT || strpos($type, 'test') !== FALSE ? 'it' : 'en';
-      $this->assertEqual($langcode, $value, format_string('The negotiated language for %type is %language', array('%type' => $type, '%language' => $value)));
+      $this->assertEqual($langcode, $value, format_string('The negotiated language for %type is %language', ['%type' => $type, '%language' => $value]));
     }
 
     // Uninstall language_test and check that everything is set back to the
     // original status.
-    $this->container->get('module_installer')->uninstall(array('language_test'));
+    $this->container->get('module_installer')->uninstall(['language_test']);
     $this->rebuildContainer();
 
     // Check that only the core language types are available.
     foreach ($this->languageManager()->getDefinedLanguageTypes() as $type) {
-      $this->assertTrue(strpos($type, 'test') === FALSE, format_string('The %type language is still available', array('%type' => $type)));
+      $this->assertTrue(strpos($type, 'test') === FALSE, format_string('The %type language is still available', ['%type' => $type]));
     }
 
     // Check that fixed language types are properly configured, even those
@@ -165,7 +165,7 @@ protected function checkFixedLanguageTypes() {
           list(, $info_id) = each($info['fixed']);
           $equal = $info_id == $id;
         }
-        $this->assertTrue($equal, format_string('language negotiation for %type is properly set up', array('%type' => $type)));
+        $this->assertTrue($equal, format_string('language negotiation for %type is properly set up', ['%type' => $type]));
       }
     }
   }
diff --git a/core/modules/language/tests/src/Functional/LanguagePathMonolingualTest.php b/core/modules/language/tests/src/Functional/LanguagePathMonolingualTest.php
index 681b378..952f748 100644
--- a/core/modules/language/tests/src/Functional/LanguagePathMonolingualTest.php
+++ b/core/modules/language/tests/src/Functional/LanguagePathMonolingualTest.php
@@ -22,22 +22,22 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $web_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'administer site configuration'));
+    $web_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'administer site configuration']);
     $this->drupalLogin($web_user);
 
     // Enable French language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Make French the default language.
-    $edit = array(
+    $edit = [
       'site_default_language' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
 
     // Delete English.
-    $this->drupalPostForm('admin/config/regional/language/delete/en', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/en', [], t('Delete'));
 
     // Changing the default language causes a container rebuild. Therefore need
     // to rebuild the container in the test environment.
@@ -49,7 +49,7 @@ protected function setUp() {
     $this->assertEqual(\Drupal::languageManager()->getDefaultLanguage()->getId(), 'fr', 'French is the default language');
 
     // Set language detection to URL.
-    $edit = array('language_interface[enabled][language-url]' => TRUE);
+    $edit = ['language_interface[enabled][language-url]' => TRUE];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
     $this->drupalPlaceBlock('local_actions_block');
   }
diff --git a/core/modules/language/tests/src/Kernel/Condition/LanguageConditionTest.php b/core/modules/language/tests/src/Kernel/Condition/LanguageConditionTest.php
index 92b2a04..af7eed4 100644
--- a/core/modules/language/tests/src/Kernel/Condition/LanguageConditionTest.php
+++ b/core/modules/language/tests/src/Kernel/Condition/LanguageConditionTest.php
@@ -32,12 +32,12 @@ class LanguageConditionTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'language');
+  public static $modules = ['system', 'language'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('language'));
+    $this->installConfig(['language']);
     // Setup Italian.
     ConfigurableLanguage::createFromLangcode('it')->save();
 
@@ -52,14 +52,14 @@ public function testConditions() {
     // language.
     $language = \Drupal::languageManager()->getLanguage('en');
     $condition = $this->manager->createInstance('language')
-      ->setConfig('langcodes', array('en' => 'en', 'it' => 'it'))
+      ->setConfig('langcodes', ['en' => 'en', 'it' => 'it'])
       ->setContextValue('language', $language);
     $this->assertTrue($condition->execute(), 'Language condition passes as expected.');
     // Check for the proper summary.
     $this->assertEqual($condition->summary(), 'The language is English, Italian.');
 
     // Change to Italian only.
-    $condition->setConfig('langcodes', array('it' => 'it'));
+    $condition->setConfig('langcodes', ['it' => 'it']);
     $this->assertFalse($condition->execute(), 'Language condition fails as expected.');
     // Check for the proper summary.
     $this->assertEqual($condition->summary(), 'The language is Italian.');
@@ -74,7 +74,7 @@ public function testConditions() {
     $language = \Drupal::languageManager()->getLanguage('it');
 
     $condition = $this->manager->createInstance('language')
-      ->setConfig('langcodes', array('en' => 'en', 'it' => 'it'))
+      ->setConfig('langcodes', ['en' => 'en', 'it' => 'it'])
       ->setContextValue('language', $language);
 
     $this->assertTrue($condition->execute(), 'Language condition passes as expected.');
@@ -82,7 +82,7 @@ public function testConditions() {
     $this->assertEqual($condition->summary(), 'The language is English, Italian.');
 
     // Change to Italian only.
-    $condition->setConfig('langcodes', array('it' => 'it'));
+    $condition->setConfig('langcodes', ['it' => 'it']);
     $this->assertTrue($condition->execute(), 'Language condition passes as expected.');
     // Check for the proper summary.
     $this->assertEqual($condition->summary(), 'The language is Italian.');
diff --git a/core/modules/language/tests/src/Kernel/ConfigurableLanguageManagerTest.php b/core/modules/language/tests/src/Kernel/ConfigurableLanguageManagerTest.php
index dae3a58..92ab889 100644
--- a/core/modules/language/tests/src/Kernel/ConfigurableLanguageManagerTest.php
+++ b/core/modules/language/tests/src/Kernel/ConfigurableLanguageManagerTest.php
@@ -16,7 +16,7 @@ class ConfigurableLanguageManagerTest extends LanguageTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * The language negotiator.
diff --git a/core/modules/language/tests/src/Kernel/ConfigurableLanguageTest.php b/core/modules/language/tests/src/Kernel/ConfigurableLanguageTest.php
index a87a6e3..00af14c 100644
--- a/core/modules/language/tests/src/Kernel/ConfigurableLanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/ConfigurableLanguageTest.php
@@ -18,7 +18,7 @@ class ConfigurableLanguageTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Tests configurable language name methods.
@@ -26,7 +26,7 @@ class ConfigurableLanguageTest extends KernelTestBase {
   public function testName() {
     $name = $this->randomMachineName();
     $language_code = $this->randomMachineName(2);
-    $configurableLanguage = new ConfigurableLanguage(array('label' => $name, 'id' => $language_code), 'configurable_language');
+    $configurableLanguage = new ConfigurableLanguage(['label' => $name, 'id' => $language_code], 'configurable_language');
     $this->assertEqual($configurableLanguage->getName(), $name);
     $this->assertEqual($configurableLanguage->setName('Test language')->getName(), 'Test language');
   }
diff --git a/core/modules/language/tests/src/Kernel/EntityDefaultLanguageTest.php b/core/modules/language/tests/src/Kernel/EntityDefaultLanguageTest.php
index 84368b7..88abdd9 100644
--- a/core/modules/language/tests/src/Kernel/EntityDefaultLanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/EntityDefaultLanguageTest.php
@@ -18,7 +18,7 @@ class EntityDefaultLanguageTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'node', 'field', 'text', 'user', 'system');
+  public static $modules = ['language', 'node', 'field', 'text', 'user', 'system'];
 
   /**
    * {@inheritdoc}
@@ -29,9 +29,9 @@ protected function setUp() {
     $this->installEntitySchema('user');
 
     // Activate Spanish language, so there are two languages activated.
-    $language = $this->container->get('entity.manager')->getStorage('configurable_language')->create(array(
+    $language = $this->container->get('entity.manager')->getStorage('configurable_language')->create([
       'id' => 'es',
-    ));
+    ]);
     $language->save();
 
     // Create a new content type which has Undefined language by default.
@@ -67,7 +67,7 @@ public function testEntityTranslationDefaultLanguageViaCode() {
     $this->assertEqual($node->langcode->value, 'en');
 
     // Disable language module.
-    $this->disableModules(array('language'));
+    $this->disableModules(['language']);
 
     // With language module disabled, and a content type that is configured to
     // have no language specified by default, a new node of this content type
@@ -101,12 +101,12 @@ public function testEntityTranslationDefaultLanguageViaCode() {
    *   Default language code of the nodes of this type.
    */
   protected function createContentType($name, $langcode) {
-    $content_type = $this->container->get('entity.manager')->getStorage('node_type')->create(array(
+    $content_type = $this->container->get('entity.manager')->getStorage('node_type')->create([
       'name' => 'Test ' . $name,
       'title_label' => 'Title',
       'type' => $name,
       'create_body' => FALSE,
-    ));
+    ]);
     $content_type->save();
     ContentLanguageSettings::loadByEntityTypeBundle('node', $name)
       ->setLanguageAlterable(FALSE)
@@ -127,10 +127,10 @@ protected function createContentType($name, $langcode) {
    *   The node created.
    */
   protected function createNode($type, $langcode = NULL) {
-    $values = array(
+    $values = [
       'type' => $type,
       'title' => $this->randomString(),
-    );
+    ];
     if (!empty($langcode)) {
       $values['langcode'] = $langcode;
     }
diff --git a/core/modules/language/tests/src/Kernel/LanguageConfigFactoryOverrideTest.php b/core/modules/language/tests/src/Kernel/LanguageConfigFactoryOverrideTest.php
index b8b31a9..3082697 100644
--- a/core/modules/language/tests/src/Kernel/LanguageConfigFactoryOverrideTest.php
+++ b/core/modules/language/tests/src/Kernel/LanguageConfigFactoryOverrideTest.php
@@ -17,7 +17,7 @@ class LanguageConfigFactoryOverrideTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'language');
+  public static $modules = ['system', 'language'];
 
   /**
    * Tests language.config_factory_override service has the default language.
diff --git a/core/modules/language/tests/src/Kernel/LanguageConfigOverrideInstallTest.php b/core/modules/language/tests/src/Kernel/LanguageConfigOverrideInstallTest.php
index c01187c..7d505ba 100644
--- a/core/modules/language/tests/src/Kernel/LanguageConfigOverrideInstallTest.php
+++ b/core/modules/language/tests/src/Kernel/LanguageConfigOverrideInstallTest.php
@@ -17,7 +17,7 @@ class LanguageConfigOverrideInstallTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'config_events_test');
+  public static $modules = ['language', 'config_events_test'];
 
   /**
    * Tests the configuration events are not fired during install of overrides.
@@ -26,9 +26,9 @@ public function testLanguageConfigOverrideInstall() {
     ConfigurableLanguage::createFromLangcode('de')->save();
     // Need to enable test module after creating the language otherwise saving
     // the language will install the configuration.
-    $this->enableModules(array('language_config_override_test'));
+    $this->enableModules(['language_config_override_test']);
     \Drupal::state()->set('config_events_test.event', FALSE);
-    $this->installConfig(array('language_config_override_test'));
+    $this->installConfig(['language_config_override_test']);
     $event_recorder = \Drupal::state()->get('config_events_test.event', FALSE);
     $this->assertFalse($event_recorder);
     $config = \Drupal::service('language.config_factory_override')->getOverride('de', 'language_config_override_test.settings');
diff --git a/core/modules/language/tests/src/Kernel/LanguageDependencyInjectionTest.php b/core/modules/language/tests/src/Kernel/LanguageDependencyInjectionTest.php
index 74b167f..d41d19e 100644
--- a/core/modules/language/tests/src/Kernel/LanguageDependencyInjectionTest.php
+++ b/core/modules/language/tests/src/Kernel/LanguageDependencyInjectionTest.php
@@ -22,7 +22,7 @@ function testDependencyInjectedNewLanguage() {
     $expected = $this->languageManager->getDefaultLanguage();
     $result = $this->languageManager->getCurrentLanguage();
     foreach ($expected as $property => $value) {
-      $this->assertEqual($expected->$property, $result->$property, format_string('The dependency injected language object %prop property equals the new Language object %prop property.', array('%prop' => $property)));
+      $this->assertEqual($expected->$property, $result->$property, format_string('The dependency injected language object %prop property equals the new Language object %prop property.', ['%prop' => $property]));
     }
   }
 
@@ -45,7 +45,7 @@ function testDependencyInjectedNewDefaultLanguage() {
 
     // Delete the language to check that we fallback to the default.
     try {
-      entity_delete_multiple('configurable_language', array('fr'));
+      entity_delete_multiple('configurable_language', ['fr']);
       $this->fail('Expected DeleteDefaultLanguageException thrown.');
     }
     catch (DeleteDefaultLanguageException $e) {
@@ -55,7 +55,7 @@ function testDependencyInjectedNewDefaultLanguage() {
     // Re-save the previous default language and the delete should work.
     $this->config('system.site')->set('default_langcode', $default_language->getId())->save();
 
-    entity_delete_multiple('configurable_language', array('fr'));
+    entity_delete_multiple('configurable_language', ['fr']);
     $result = \Drupal::languageManager()->getCurrentLanguage();
     $this->assertIdentical($result->getId(), $default_language->getId());
   }
diff --git a/core/modules/language/tests/src/Kernel/LanguageFallbackTest.php b/core/modules/language/tests/src/Kernel/LanguageFallbackTest.php
index ab293bd..17f4ca3 100644
--- a/core/modules/language/tests/src/Kernel/LanguageFallbackTest.php
+++ b/core/modules/language/tests/src/Kernel/LanguageFallbackTest.php
@@ -19,7 +19,7 @@ protected function setUp() {
     parent::setUp();
 
     $i = 0;
-    foreach (array('af', 'am', 'ar') as $langcode) {
+    foreach (['af', 'am', 'ar'] as $langcode) {
       $language = ConfigurableLanguage::createFromLangcode($langcode);
       $language->set('weight', $i--);
       $language->save();
@@ -31,7 +31,7 @@ protected function setUp() {
    */
   public function testCandidates() {
     $language_list = $this->languageManager->getLanguages();
-    $expected = array_keys($language_list + array(LanguageInterface::LANGCODE_NOT_SPECIFIED => NULL));
+    $expected = array_keys($language_list + [LanguageInterface::LANGCODE_NOT_SPECIFIED => NULL]);
 
     // Check that language fallback candidates by default are all the available
     // languages sorted by weight.
@@ -49,11 +49,11 @@ public function testCandidates() {
     $this->state->set('language_test.fallback_operation_alter.candidates', TRUE);
     $expected[] = LanguageInterface::LANGCODE_NOT_SPECIFIED;
     $expected[] = LanguageInterface::LANGCODE_NOT_APPLICABLE;
-    $candidates = $this->languageManager->getFallbackCandidates(array('operation' => 'test'));
+    $candidates = $this->languageManager->getFallbackCandidates(['operation' => 'test']);
     $this->assertEqual(array_values($candidates), $expected, 'Language fallback candidates are alterable for specific operations.');
 
     // Check that when the site is monolingual no language fallback is applied.
-    $langcodes_to_delete = array();
+    $langcodes_to_delete = [];
     foreach ($language_list as $langcode => $language) {
       if (!$language->isDefault()) {
         $langcodes_to_delete[] = $langcode;
@@ -61,7 +61,7 @@ public function testCandidates() {
     }
     entity_delete_multiple('configurable_language', $langcodes_to_delete);
     $candidates = $this->languageManager->getFallbackCandidates();
-    $this->assertEqual(array_values($candidates), array(LanguageInterface::LANGCODE_DEFAULT), 'Language fallback is not applied when the Language module is not enabled.');
+    $this->assertEqual(array_values($candidates), [LanguageInterface::LANGCODE_DEFAULT], 'Language fallback is not applied when the Language module is not enabled.');
   }
 
 }
diff --git a/core/modules/language/tests/src/Kernel/LanguageTestBase.php b/core/modules/language/tests/src/Kernel/LanguageTestBase.php
index eb4f0ef..f4dcbd2 100644
--- a/core/modules/language/tests/src/Kernel/LanguageTestBase.php
+++ b/core/modules/language/tests/src/Kernel/LanguageTestBase.php
@@ -9,7 +9,7 @@
  */
 abstract class LanguageTestBase extends KernelTestBase {
 
-  public static $modules = array('system', 'language', 'language_test');
+  public static $modules = ['system', 'language', 'language_test'];
   /**
    * The language manager.
    *
@@ -30,7 +30,7 @@
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('language'));
+    $this->installConfig(['language']);
 
     $this->state = $this->container->get('state');
 
diff --git a/core/modules/language/tests/src/Kernel/Migrate/MigrateDefaultLanguageTrait.php b/core/modules/language/tests/src/Kernel/Migrate/MigrateDefaultLanguageTrait.php
index 94bb02d..dd2e67e 100644
--- a/core/modules/language/tests/src/Kernel/Migrate/MigrateDefaultLanguageTrait.php
+++ b/core/modules/language/tests/src/Kernel/Migrate/MigrateDefaultLanguageTrait.php
@@ -24,9 +24,9 @@ protected function doTestMigration($langcode, $existing = TRUE) {
     // default language is migrated.
     $value = 'O:8:"stdClass":11:{s:8:"language";s:2:"' . $langcode . '";s:4:"name";s:6:"French";s:6:"native";s:6:"French";s:9:"direction";s:1:"0";s:7:"enabled";i:1;s:7:"plurals";s:1:"0";s:7:"formula";s:0:"";s:6:"domain";s:0:"";s:6:"prefix";s:0:"";s:6:"weight";s:1:"0";s:10:"javascript";s:0:"";}';
     $this->sourceDatabase->update('variable')
-      ->fields(array(
+      ->fields([
         'value' => $value
-      ))
+      ])
       ->condition('name', 'language_default' )
       ->execute();
 
diff --git a/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageNegotiationSettingsTest.php b/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageNegotiationSettingsTest.php
index 0e74f49..4a88427 100644
--- a/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageNegotiationSettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageNegotiationSettingsTest.php
@@ -56,7 +56,7 @@ public function testLanguageNegotiationWithDefaultPathPrefix() {
    */
   public function testLanguageNegotiationWithNoNegotiation() {
     $this->sourceDatabase->update('variable')
-      ->fields(array('value' => serialize(0)))
+      ->fields(['value' => serialize(0)])
       ->condition('name', 'language_negotiation')
       ->execute();
 
@@ -88,7 +88,7 @@ public function testLanguageNegotiationWithNoNegotiation() {
    */
   public function testLanguageNegotiationWithPathPrefix() {
     $this->sourceDatabase->update('variable')
-      ->fields(array('value' => serialize(2)))
+      ->fields(['value' => serialize(2)])
       ->condition('name', 'language_negotiation')
       ->execute();
 
@@ -129,7 +129,7 @@ public function testLanguageNegotiationWithPathPrefix() {
    */
   public function testLanguageNegotiationWithDomain() {
     $this->sourceDatabase->update('variable')
-      ->fields(array('value' => serialize(3)))
+      ->fields(['value' => serialize(3)])
       ->condition('name', 'language_negotiation')
       ->execute();
 
diff --git a/core/modules/language/tests/src/Kernel/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php b/core/modules/language/tests/src/Kernel/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php
index 269bac6..09681de 100644
--- a/core/modules/language/tests/src/Kernel/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php
@@ -75,7 +75,7 @@ public function testLanguageNegotiationWithPrefix() {
    */
   public function testLanguageNegotiationWithDomain() {
     $this->sourceDatabase->update('variable')
-      ->fields(array('value' => serialize(1)))
+      ->fields(['value' => serialize(1)])
       ->condition('name', 'locale_language_negotiation_url_part')
       ->execute();
 
diff --git a/core/modules/language/tests/src/Kernel/Views/ArgumentLanguageTest.php b/core/modules/language/tests/src/Kernel/Views/ArgumentLanguageTest.php
index 3a4e9cf..27c7410 100644
--- a/core/modules/language/tests/src/Kernel/Views/ArgumentLanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/Views/ArgumentLanguageTest.php
@@ -17,28 +17,28 @@ class ArgumentLanguageTest extends LanguageTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the language argument.
    */
   public function testArgument() {
     $view = Views::getView('test_view');
-    foreach (array('en' => 'John', 'xx-lolspeak' => 'George') as $langcode => $name) {
+    foreach (['en' => 'John', 'xx-lolspeak' => 'George'] as $langcode => $name) {
       $view->setDisplay();
-      $view->displayHandlers->get('default')->overrideOption('arguments', array(
-        'langcode' => array(
+      $view->displayHandlers->get('default')->overrideOption('arguments', [
+        'langcode' => [
           'id' => 'langcode',
           'table' => 'views_test_data',
           'field' => 'langcode',
-        ),
-      ));
-      $this->executeView($view, array($langcode));
+        ],
+      ]);
+      $this->executeView($view, [$langcode]);
 
-      $expected = array(array(
+      $expected = [[
         'name' => $name,
-      ));
-      $this->assertIdenticalResultset($view, $expected, array('views_test_data_name' => 'name'));
+      ]];
+      $this->assertIdenticalResultset($view, $expected, ['views_test_data_name' => 'name']);
       $view->destroy();
     }
   }
diff --git a/core/modules/language/tests/src/Kernel/Views/FieldLanguageTest.php b/core/modules/language/tests/src/Kernel/Views/FieldLanguageTest.php
index 3dbbfe4..5dc7124 100644
--- a/core/modules/language/tests/src/Kernel/Views/FieldLanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/Views/FieldLanguageTest.php
@@ -17,7 +17,7 @@ class FieldLanguageTest extends LanguageTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the language field.
@@ -25,13 +25,13 @@ class FieldLanguageTest extends LanguageTestBase {
   public function testField() {
     $view = Views::getView('test_view');
     $view->setDisplay();
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'langcode' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'langcode' => [
         'id' => 'langcode',
         'table' => 'views_test_data',
         'field' => 'langcode',
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
     $this->assertEqual($view->field['langcode']->advancedRender($view->result[0]), 'English');
diff --git a/core/modules/language/tests/src/Kernel/Views/FilterLanguageTest.php b/core/modules/language/tests/src/Kernel/Views/FilterLanguageTest.php
index 0c6241a..c9dc98c 100644
--- a/core/modules/language/tests/src/Kernel/Views/FilterLanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/Views/FilterLanguageTest.php
@@ -17,29 +17,29 @@ class FilterLanguageTest extends LanguageTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the language filter.
    */
   public function testFilter() {
     $view = Views::getView('test_view');
-    foreach (array('en' => 'John', 'xx-lolspeak' => 'George') as $langcode => $name) {
+    foreach (['en' => 'John', 'xx-lolspeak' => 'George'] as $langcode => $name) {
       $view->setDisplay();
-      $view->displayHandlers->get('default')->overrideOption('filters', array(
-        'langcode' => array(
+      $view->displayHandlers->get('default')->overrideOption('filters', [
+        'langcode' => [
           'id' => 'langcode',
           'table' => 'views_test_data',
           'field' => 'langcode',
-          'value' => array($langcode),
-        ),
-      ));
+          'value' => [$langcode],
+        ],
+      ]);
       $this->executeView($view);
 
-      $expected = array(array(
+      $expected = [[
         'name' => $name,
-      ));
-      $this->assertIdenticalResultset($view, $expected, array('views_test_data_name' => 'name'));
+      ]];
+      $this->assertIdenticalResultset($view, $expected, ['views_test_data_name' => 'name']);
 
       $expected = [
         '***LANGUAGE_site_default***',
diff --git a/core/modules/language/tests/src/Kernel/Views/LanguageTestBase.php b/core/modules/language/tests/src/Kernel/Views/LanguageTestBase.php
index cb5d473..cab6fc8 100644
--- a/core/modules/language/tests/src/Kernel/Views/LanguageTestBase.php
+++ b/core/modules/language/tests/src/Kernel/Views/LanguageTestBase.php
@@ -15,14 +15,14 @@
    *
    * @var array
    */
-  public static $modules = array('system', 'language');
+  public static $modules = ['system', 'language'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
-    $this->installConfig(array('language'));
+    $this->installConfig(['language']);
 
     // Create another language beside English.
-    ConfigurableLanguage::create(array('id' => 'xx-lolspeak', 'label' => 'Lolspeak'))->save();
+    ConfigurableLanguage::create(['id' => 'xx-lolspeak', 'label' => 'Lolspeak'])->save();
   }
 
   /**
@@ -30,12 +30,12 @@ protected function setUp($import_test_views = TRUE) {
    */
   protected function schemaDefinition() {
     $schema = parent::schemaDefinition();
-    $schema['views_test_data']['fields']['langcode'] = array(
+    $schema['views_test_data']['fields']['langcode'] = [
       'description' => 'The {language}.langcode of this beatle.',
       'type' => 'varchar',
       'length' => 12,
       'default' => '',
-    );
+    ];
 
     return $schema;
   }
@@ -45,19 +45,19 @@ protected function schemaDefinition() {
    */
   protected function viewsData() {
     $data = parent::viewsData();
-    $data['views_test_data']['langcode'] = array(
+    $data['views_test_data']['langcode'] = [
       'title' => t('Langcode'),
       'help' => t('Langcode'),
-      'field' => array(
+      'field' => [
         'id' => 'language',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'language',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'language',
-      ),
-    );
+      ],
+    ];
 
     return $data;
   }
diff --git a/core/modules/language/tests/src/Unit/ConfigurableLanguageUnitTest.php b/core/modules/language/tests/src/Unit/ConfigurableLanguageUnitTest.php
index d5de7a6..58670f0 100644
--- a/core/modules/language/tests/src/Unit/ConfigurableLanguageUnitTest.php
+++ b/core/modules/language/tests/src/Unit/ConfigurableLanguageUnitTest.php
@@ -21,11 +21,11 @@ public function testDirection() {
     // Direction of language writing, an integer. Usually either
     // ConfigurableLanguage::DIRECTION_LTR or
     // ConfigurableLanguage::DIRECTION_RTL.
-    $configurableLanguage = new ConfigurableLanguage(array('direction' => ConfigurableLanguage::DIRECTION_LTR), 'configurable_language');
+    $configurableLanguage = new ConfigurableLanguage(['direction' => ConfigurableLanguage::DIRECTION_LTR], 'configurable_language');
     $this->assertEquals(ConfigurableLanguage::DIRECTION_LTR, $configurableLanguage->getDirection());
 
     // Test direction again, setting direction to RTL.
-    $configurableLanguage = new ConfigurableLanguage(array('direction' => ConfigurableLanguage::DIRECTION_RTL), 'configurable_language');
+    $configurableLanguage = new ConfigurableLanguage(['direction' => ConfigurableLanguage::DIRECTION_RTL], 'configurable_language');
     $this->assertEquals(ConfigurableLanguage::DIRECTION_RTL, $configurableLanguage->getDirection());
   }
 
@@ -36,7 +36,7 @@ public function testDirection() {
   public function testWeight() {
     // The weight, an integer. Used to order languages with larger positive
     // weights sinking items toward the bottom of lists.
-    $configurableLanguage = new ConfigurableLanguage(array('weight' => -5), 'configurable_language');
+    $configurableLanguage = new ConfigurableLanguage(['weight' => -5], 'configurable_language');
     $this->assertEquals($configurableLanguage->getWeight(), -5);
     $this->assertEquals($configurableLanguage->setWeight(13)->getWeight(), 13);
   }
diff --git a/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php b/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
index b1a1487..06820d0 100644
--- a/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
+++ b/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
@@ -86,17 +86,17 @@ public function testCalculateDependencies() {
     $target_entity_type = $this->getMock('\Drupal\Core\Entity\EntityTypeInterface');
     $target_entity_type->expects($this->any())
       ->method('getBundleConfigDependency')
-      ->will($this->returnValue(array('type' => 'config', 'name' => 'test.test_entity_type.id')));
+      ->will($this->returnValue(['type' => 'config', 'name' => 'test.test_entity_type.id']));
 
     $this->entityManager->expects($this->any())
       ->method('getDefinition')
       ->with('test_entity_type')
       ->will($this->returnValue($target_entity_type));
 
-    $config = new ContentLanguageSettings(array(
+    $config = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $dependencies = $config->calculateDependencies()->getDependencies();
     $this->assertContains('test.test_entity_type.id', $dependencies['config']);
   }
@@ -105,10 +105,10 @@ public function testCalculateDependencies() {
    * @covers ::id
    */
   public function testId() {
-    $config = new ContentLanguageSettings(array(
+    $config = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $this->assertSame('test_entity_type.test_bundle', $config->id());
   }
 
@@ -116,10 +116,10 @@ public function testId() {
    * @covers ::getTargetEntityTypeId
    */
   public function testTargetEntityTypeId() {
-    $config = new ContentLanguageSettings(array(
+    $config = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $this->assertSame('test_entity_type', $config->getTargetEntityTypeId());
   }
 
@@ -127,10 +127,10 @@ public function testTargetEntityTypeId() {
    * @covers ::getTargetBundle
    */
   public function testTargetBundle() {
-    $config = new ContentLanguageSettings(array(
+    $config = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $this->assertSame('test_bundle', $config->getTargetBundle());
   }
 
@@ -146,16 +146,16 @@ public function testDefaultLangcode(ContentLanguageSettings $config, $expected)
 
   public function providerDefaultLangcode() {
     $langcode = $this->randomMachineName();
-    $config = new ContentLanguageSettings(array(
+    $config = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $config->setDefaultLangcode($langcode);
 
-    $defaultConfig = new ContentLanguageSettings(array(
+    $defaultConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_default_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
 
     return [
       [$config, $langcode],
@@ -174,22 +174,22 @@ public function testLanguageAlterable(ContentLanguageSettings $config, $expected
   }
 
   public function providerLanguageAlterable() {
-    $alterableConfig = new ContentLanguageSettings(array(
+    $alterableConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $alterableConfig->setLanguageAlterable(TRUE);
 
-    $nonAlterableConfig = new ContentLanguageSettings(array(
+    $nonAlterableConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_fixed_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $nonAlterableConfig->setLanguageAlterable(FALSE);
 
-    $defaultConfig = new ContentLanguageSettings(array(
+    $defaultConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_default_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
 
     return [
       [$alterableConfig, TRUE],
@@ -208,22 +208,22 @@ public function testIsDefaultConfiguration(ContentLanguageSettings $config, $exp
   }
 
   public function providerIsDefaultConfiguration() {
-    $alteredLanguage = new ContentLanguageSettings(array(
+    $alteredLanguage = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $alteredLanguage->setLanguageAlterable(TRUE);
 
-    $alteredDefaultLangcode = new ContentLanguageSettings(array(
+    $alteredDefaultLangcode = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_fixed_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $alteredDefaultLangcode->setDefaultLangcode($this->randomMachineName());
 
-    $defaultConfig = new ContentLanguageSettings(array(
+    $defaultConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_default_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
 
     return [
       [$alteredLanguage, FALSE],
@@ -240,10 +240,10 @@ public function providerIsDefaultConfiguration() {
   public function testLoadByEntityTypeBundle($config_id, ContentLanguageSettings $existing_config = NULL, $expected_langcode, $expected_language_alterable) {
     list($type, $bundle) = explode('.', $config_id);
 
-    $nullConfig = new ContentLanguageSettings(array(
+    $nullConfig = new ContentLanguageSettings([
       'target_entity_type_id' => $type,
       'target_bundle' => $bundle,
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $this->configEntityStorageInterface
       ->expects($this->any())
       ->method('load')
@@ -271,23 +271,23 @@ public function testLoadByEntityTypeBundle($config_id, ContentLanguageSettings $
   }
 
   public function providerLoadByEntityTypeBundle() {
-    $alteredLanguage = new ContentLanguageSettings(array(
+    $alteredLanguage = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $alteredLanguage->setLanguageAlterable(TRUE);
 
     $langcode = $this->randomMachineName();
-    $alteredDefaultLangcode = new ContentLanguageSettings(array(
+    $alteredDefaultLangcode = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_fixed_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
     $alteredDefaultLangcode->setDefaultLangcode($langcode);
 
-    $defaultConfig = new ContentLanguageSettings(array(
+    $defaultConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_default_language_bundle',
-    ), 'language_content_settings');
+    ], 'language_content_settings');
 
     return [
       ['test_entity_type.test_bundle', $alteredLanguage, LanguageInterface::LANGCODE_SITE_DEFAULT, TRUE],
diff --git a/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php b/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
index 735abd6..825ca7d 100644
--- a/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
+++ b/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
@@ -33,10 +33,10 @@ protected function setUp() {
     $language_en->expects($this->any())
       ->method('getId')
       ->will($this->returnValue('en'));
-    $languages = array(
+    $languages = [
       'de' => $language_de,
       'en' => $language_en,
-    );
+    ];
     $this->languages = $languages;
 
     // Create a language manager stub.
@@ -126,7 +126,7 @@ public function providerTestPathPrefix() {
     // No configuration.
     $path_prefix_configuration[] = [
       'prefix' => 'de',
-      'prefixes' => array(),
+      'prefixes' => [],
       'expected_langcode' => FALSE,
     ];
     // Non-matching prefix.
@@ -168,7 +168,7 @@ public function testDomain($http_host, $domains, $expected_langcode) {
       ],
     ]);
 
-    $request = Request::create('', 'GET', array(), array(), array(), array('HTTP_HOST' => $http_host));
+    $request = Request::create('', 'GET', [], [], [], ['HTTP_HOST' => $http_host]);
     $method = new LanguageNegotiationUrl();
     $method->setLanguageManager($this->languageManager);
     $method->setConfig($config);
@@ -193,60 +193,60 @@ public function testDomain($http_host, $domains, $expected_langcode) {
    */
   public function providerTestDomain() {
 
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.de',
-      'domains' => array(
+      'domains' => [
         'de' => 'http://example.de',
-      ),
+      ],
       'expected_langcode' => 'de',
-    );
+    ];
     // No configuration.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.de',
-      'domains' => array(),
+      'domains' => [],
       'expected_langcode' => FALSE,
-    );
+    ];
     // HTTP host with a port.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.de:8080',
-      'domains' => array(
+      'domains' => [
         'de' => 'http://example.de',
-      ),
+      ],
       'expected_langcode' => 'de',
-    );
+    ];
     // Domain configuration with https://.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.de',
-      'domains' => array(
+      'domains' => [
         'de' => 'https://example.de',
-      ),
+      ],
       'expected_langcode' => 'de',
-    );
+    ];
     // Non-matching HTTP host.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.com',
-      'domains' => array(
+      'domains' => [
         'de' => 'http://example.com',
-      ),
+      ],
       'expected_langcode' => 'de',
-    );
+    ];
     // Testing a non-existing language.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.com',
-      'domains' => array(
+      'domains' => [
         'it' => 'http://example.it',
-      ),
+      ],
       'expected_langcode' => FALSE,
-    );
+    ];
     // Multiple domain configurations.
-    $domain_configuration[] = array(
+    $domain_configuration[] = [
       'http_host' => 'example.com',
-      'domains' => array(
+      'domains' => [
         'de' => 'http://example.de',
         'en' => 'http://example.com',
-      ),
+      ],
       'expected_langcode' => 'en',
-    );
+    ];
     return $domain_configuration;
   }
 
diff --git a/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php b/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
index 1f711ae..a231e19 100644
--- a/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
+++ b/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
@@ -12,9 +12,9 @@
 class LanguageLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'language' => 'core/modules/language',
-    );
+    ];
     parent::setUp();
   }
 
@@ -31,19 +31,19 @@ public function testLanguageAdminLocalTasks($route, $expected) {
    * Provides a list of routes to test.
    */
   public function getLanguageAdminOverviewRoutes() {
-    return array(
-      array('entity.configurable_language.collection', array(array('entity.configurable_language.collection', 'language.negotiation'))),
-      array('language.negotiation', array(array('entity.configurable_language.collection', 'language.negotiation'))),
-    );
+    return [
+      ['entity.configurable_language.collection', [['entity.configurable_language.collection', 'language.negotiation']]],
+      ['language.negotiation', [['entity.configurable_language.collection', 'language.negotiation']]],
+    ];
   }
 
   /**
    * Tests language edit local tasks existence.
    */
   public function testLanguageEditLocalTasks() {
-    $this->assertLocalTasks('entity.configurable_language.edit_form', array(
-      0 => array('entity.configurable_language.edit_form'),
-    ));
+    $this->assertLocalTasks('entity.configurable_language.edit_form', [
+      0 => ['entity.configurable_language.edit_form'],
+    ]);
   }
 
 }
diff --git a/core/modules/link/link.module b/core/modules/link/link.module
index 46aeeba..5a3527f 100644
--- a/core/modules/link/link.module
+++ b/core/modules/link/link.module
@@ -15,11 +15,11 @@ function link_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.link':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Link module allows you to create fields that contain internal or external URLs and optional link text. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":link_documentation">online documentation for the Link module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':link_documentation' => 'https://www.drupal.org/documentation/modules/link')) . '</p>';
+      $output .= '<p>' . t('The Link module allows you to create fields that contain internal or external URLs and optional link text. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":link_documentation">online documentation for the Link module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':link_documentation' => 'https://www.drupal.org/documentation/modules/link']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying link fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the link field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the link field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Setting the allowed link type') . '</dt>';
       $output .= '<dd>' . t('In the field settings you can define the allowed link type to be <em>internal links only</em>, <em>external links only</em>, or <em>both internal and external links</em>. <em>Internal links only</em> and <em>both internal and external links</em> options enable an autocomplete widget for internal links, so a user does not have to copy or remember a URL.') . '</dd>';
       $output .= '<dt>' . t('Adding link text') . '</dt>';
@@ -39,11 +39,11 @@ function link_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function link_theme() {
-  return array(
-    'link_formatter_link_separate' => array(
-      'variables' => array('title' => NULL, 'url_title' => NULL, 'url' => NULL),
-    ),
-  );
+  return [
+    'link_formatter_link_separate' => [
+      'variables' => ['title' => NULL, 'url_title' => NULL, 'url' => NULL],
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkFormatter.php b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkFormatter.php
index 7d2d0ee..30fcd8e 100644
--- a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkFormatter.php
+++ b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkFormatter.php
@@ -78,13 +78,13 @@ public function __construct($plugin_id, $plugin_definition, FieldDefinitionInter
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'trim_length' => '80',
       'url_only' => '',
       'url_plain' => '',
       'rel' => '',
       'target' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -93,43 +93,43 @@ public static function defaultSettings() {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $elements = parent::settingsForm($form, $form_state);
 
-    $elements['trim_length'] = array(
+    $elements['trim_length'] = [
       '#type' => 'number',
       '#title' => t('Trim link text length'),
       '#field_suffix' => t('characters'),
       '#default_value' => $this->getSetting('trim_length'),
       '#min' => 1,
       '#description' => t('Leave blank to allow unlimited link text lengths.'),
-    );
-    $elements['url_only'] = array(
+    ];
+    $elements['url_only'] = [
       '#type' => 'checkbox',
       '#title' => t('URL only'),
       '#default_value' => $this->getSetting('url_only'),
       '#access' => $this->getPluginId() == 'link',
-    );
-    $elements['url_plain'] = array(
+    ];
+    $elements['url_plain'] = [
       '#type' => 'checkbox',
       '#title' => t('Show URL as plain text'),
       '#default_value' => $this->getSetting('url_plain'),
       '#access' => $this->getPluginId() == 'link',
-      '#states' => array(
-        'visible' => array(
-          ':input[name*="url_only"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
-    $elements['rel'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name*="url_only"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
+    $elements['rel'] = [
       '#type' => 'checkbox',
       '#title' => t('Add rel="nofollow" to links'),
       '#return_value' => 'nofollow',
       '#default_value' => $this->getSetting('rel'),
-    );
-    $elements['target'] = array(
+    ];
+    $elements['target'] = [
       '#type' => 'checkbox',
       '#title' => t('Open link in new window'),
       '#return_value' => '_blank',
       '#default_value' => $this->getSetting('target'),
-    );
+    ];
 
     return $elements;
   }
@@ -138,12 +138,12 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
     $settings = $this->getSettings();
 
     if (!empty($settings['trim_length'])) {
-      $summary[] = t('Link text trimmed to @limit characters', array('@limit' => $settings['trim_length']));
+      $summary[] = t('Link text trimmed to @limit characters', ['@limit' => $settings['trim_length']]);
     }
     else {
       $summary[] = t('Link text not trimmed');
@@ -157,7 +157,7 @@ public function settingsSummary() {
       }
     }
     if (!empty($settings['rel'])) {
-      $summary[] = t('Add rel="@rel"', array('@rel' => $settings['rel']));
+      $summary[] = t('Add rel="@rel"', ['@rel' => $settings['rel']]);
     }
     if (!empty($settings['target'])) {
       $summary[] = t('Open link in new window');
@@ -170,7 +170,7 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $element = array();
+    $element = [];
     $entity = $items->getEntity();
     $settings = $this->getSettings();
 
@@ -193,9 +193,9 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
       }
 
       if (!empty($settings['url_only']) && !empty($settings['url_plain'])) {
-        $element[$delta] = array(
+        $element[$delta] = [
           '#plain_text' => $link_title,
-        );
+        ];
 
         if (!empty($item->_attributes)) {
           // Piggyback on the metadata attributes, which will be placed in the
@@ -204,19 +204,19 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
           // @todo Does RDF need a URL rather than an internal URI here?
           // @see \Drupal\Tests\rdf\Kernel\Field\LinkFieldRdfaTest.
           $content = str_replace('internal:/', '', $item->uri);
-          $item->_attributes += array('content' => $content);
+          $item->_attributes += ['content' => $content];
         }
       }
       else {
-        $element[$delta] = array(
+        $element[$delta] = [
           '#type' => 'link',
           '#title' => $link_title,
           '#options' => $url->getOptions(),
-        );
+        ];
         $element[$delta]['#url'] = $url;
 
         if (!empty($item->_attributes)) {
-          $element[$delta]['#options'] += array ('attributes' => array());
+          $element[$delta]['#options'] +=  ['attributes' => []];
           $element[$delta]['#options']['attributes'] += $item->_attributes;
           // Unset field item attributes since they have been included in the
           // formatter output and should not be rendered in the field template.
diff --git a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
index f737037..2598b55 100644
--- a/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
+++ b/core/modules/link/src/Plugin/Field/FieldFormatter/LinkSeparateFormatter.php
@@ -26,18 +26,18 @@ class LinkSeparateFormatter extends LinkFormatter {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'trim_length' => 80,
       'rel' => '',
       'target' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $element = array();
+    $element = [];
     $entity = $items->getEntity();
     $settings = $this->getSettings();
 
@@ -67,12 +67,12 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
         $url_title = Unicode::truncate($url_title, $settings['trim_length'], FALSE, TRUE);
       }
 
-      $element[$delta] = array(
+      $element[$delta] = [
         '#theme' => 'link_formatter_link_separate',
         '#title' => $link_title,
         '#url_title' => $url_title,
         '#url' => $url,
-      );
+      ];
 
       if (!empty($item->_attributes)) {
         // Set our RDFa attributes on the <a> element that is being built.
diff --git a/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php b/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php
index 6e98ae2..e354f00 100644
--- a/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php
+++ b/core/modules/link/src/Plugin/Field/FieldType/LinkItem.php
@@ -30,10 +30,10 @@ class LinkItem extends FieldItemBase implements LinkItemInterface {
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    return array(
+    return [
       'title' => DRUPAL_OPTIONAL,
       'link_type' => LinkItemInterface::LINK_GENERIC
-    ) + parent::defaultFieldSettings();
+    ] + parent::defaultFieldSettings();
   }
 
   /**
@@ -56,58 +56,58 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'uri' => array(
+    return [
+      'columns' => [
+        'uri' => [
           'description' => 'The URI of the link.',
           'type' => 'varchar',
           'length' => 2048,
-        ),
-        'title' => array(
+        ],
+        'title' => [
           'description' => 'The link text.',
           'type' => 'varchar',
           'length' => 255,
-        ),
-        'options' => array(
+        ],
+        'options' => [
           'description' => 'Serialized array of options for the link.',
           'type' => 'blob',
           'size' => 'big',
           'serialize' => TRUE,
-        ),
-      ),
-      'indexes' => array(
-        'uri' => array(array('uri', 30)),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'uri' => [['uri', 30]],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
-    $element = array();
+    $element = [];
 
-    $element['link_type'] = array(
+    $element['link_type'] = [
       '#type' => 'radios',
       '#title' => t('Allowed link type'),
       '#default_value' => $this->getSetting('link_type'),
-      '#options' => array(
+      '#options' => [
         static::LINK_INTERNAL => t('Internal links only'),
         static::LINK_EXTERNAL => t('External links only'),
         static::LINK_GENERIC => t('Both internal and external links'),
-      ),
-    );
+      ],
+    ];
 
-    $element['title'] = array(
+    $element['title'] = [
       '#type' => 'radios',
       '#title' => t('Allow link text'),
       '#default_value' => $this->getSetting('title'),
-      '#options' => array(
+      '#options' => [
         DRUPAL_DISABLED => t('Disabled'),
         DRUPAL_OPTIONAL => t('Optional'),
         DRUPAL_REQUIRED => t('Required'),
-      ),
-    );
+      ],
+    ];
 
     return $element;
   }
@@ -119,7 +119,7 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
     $random = new Random();
     if ($field_definition->getItemDefinition()->getSetting('link_type') & LinkItemInterface::LINK_EXTERNAL) {
       // Set of possible top-level domains.
-      $tlds = array('com', 'net', 'gov', 'org', 'edu', 'biz', 'info');
+      $tlds = ['com', 'net', 'gov', 'org', 'edu', 'biz', 'info'];
       // Set random length for the domain name.
       $domain_length = mt_rand(7, 15);
 
diff --git a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
index 9af176c..e1b1c2a 100644
--- a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
+++ b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php
@@ -27,10 +27,10 @@ class LinkWidget extends WidgetBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'placeholder_url' => '',
       'placeholder_title' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -74,7 +74,7 @@ protected static function getUriAsDisplayableString($uri) {
       // Show the 'entity:' URI as the entity autocomplete would.
       $entity_manager = \Drupal::entityManager();
       if ($entity_manager->getDefinition($entity_type, FALSE) && $entity = \Drupal::entityManager()->getStorage($entity_type)->load($entity_id)) {
-        $displayable_string = EntityAutocomplete::getEntityLabels(array($entity));
+        $displayable_string = EntityAutocomplete::getEntityLabels([$entity]);
       }
     }
 
@@ -153,7 +153,7 @@ public static function validateTitleElement(&$element, FormStateInterface $form_
       $element['title']['#required'] = TRUE;
       // We expect the field name placeholder value to be wrapped in t() here,
       // so it won't be escaped again as it's already marked safe.
-      $form_state->setError($element['title'], t('@name field is required.', array('@name' => $element['title']['#title'])));
+      $form_state->setError($element['title'], t('@name field is required.', ['@name' => $element['title']['#title']]));
     }
   }
 
@@ -164,7 +164,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     /** @var \Drupal\link\LinkItemInterface $item */
     $item = $items[$delta];
 
-    $element['uri'] = array(
+    $element['uri'] = [
       '#type' => 'url',
       '#title' => $this->t('URL'),
       '#placeholder' => $this->getSetting('placeholder_url'),
@@ -172,10 +172,10 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       // However, if it is inaccessible to the current user, do not display it
       // to them.
       '#default_value' => (!$item->isEmpty() && (\Drupal::currentUser()->hasPermission('link to any page') || $item->getUrl()->access())) ? static::getUriAsDisplayableString($item->uri) : NULL,
-      '#element_validate' => array(array(get_called_class(), 'validateUriElement')),
+      '#element_validate' => [[get_called_class(), 'validateUriElement']],
       '#maxlength' => 2048,
       '#required' => $element['#required'],
-    );
+    ];
 
     // If the field is configured to support internal links, it cannot use the
     // 'url' form element and we have to do the validation ourselves.
@@ -195,43 +195,43 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
     // If the field is configured to allow only internal links, add a useful
     // element prefix and description.
     if (!$this->supportsExternalLinks()) {
-      $element['uri']['#field_prefix'] = rtrim(\Drupal::url('<front>', array(), array('absolute' => TRUE)), '/');
-      $element['uri']['#description'] = $this->t('This must be an internal path such as %add-node. You can also start typing the title of a piece of content to select it. Enter %front to link to the front page.', array('%add-node' => '/node/add', '%front' => '<front>'));
+      $element['uri']['#field_prefix'] = rtrim(\Drupal::url('<front>', [], ['absolute' => TRUE]), '/');
+      $element['uri']['#description'] = $this->t('This must be an internal path such as %add-node. You can also start typing the title of a piece of content to select it. Enter %front to link to the front page.', ['%add-node' => '/node/add', '%front' => '<front>']);
     }
     // If the field is configured to allow both internal and external links,
     // show a useful description.
     elseif ($this->supportsExternalLinks() && $this->supportsInternalLinks()) {
-      $element['uri']['#description'] = $this->t('Start typing the title of a piece of content to select it. You can also enter an internal path such as %add-node or an external URL such as %url. Enter %front to link to the front page.', array('%front' => '<front>', '%add-node' => '/node/add', '%url' => 'http://example.com'));
+      $element['uri']['#description'] = $this->t('Start typing the title of a piece of content to select it. You can also enter an internal path such as %add-node or an external URL such as %url. Enter %front to link to the front page.', ['%front' => '<front>', '%add-node' => '/node/add', '%url' => 'http://example.com']);
     }
     // If the field is configured to allow only external links, show a useful
     // description.
     elseif ($this->supportsExternalLinks() && !$this->supportsInternalLinks()) {
-      $element['uri']['#description'] = $this->t('This must be an external URL such as %url.', array('%url' => 'http://example.com'));
+      $element['uri']['#description'] = $this->t('This must be an external URL such as %url.', ['%url' => 'http://example.com']);
     }
 
-    $element['title'] = array(
+    $element['title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Link text'),
       '#placeholder' => $this->getSetting('placeholder_title'),
       '#default_value' => isset($items[$delta]->title) ? $items[$delta]->title : NULL,
       '#maxlength' => 255,
       '#access' => $this->getFieldSetting('title') != DRUPAL_DISABLED,
-    );
+    ];
     // Post-process the title field to make it conditionally required if URL is
     // non-empty. Omit the validation on the field edit form, since the field
     // settings cannot be saved otherwise.
     if (!$this->isDefaultValueWidget($form_state) && $this->getFieldSetting('title') == DRUPAL_REQUIRED) {
-      $element['#element_validate'][] = array(get_called_class(), 'validateTitleElement');
+      $element['#element_validate'][] = [get_called_class(), 'validateTitleElement'];
     }
 
     // Exposing the attributes array in the widget is left for alternate and more
     // advanced field widgets.
-    $element['attributes'] = array(
+    $element['attributes'] = [
       '#type' => 'value',
       '#tree' => TRUE,
-      '#value' => !empty($items[$delta]->options['attributes']) ? $items[$delta]->options['attributes'] : array(),
-      '#attributes' => array('class' => array('link-field-widget-attributes')),
-    );
+      '#value' => !empty($items[$delta]->options['attributes']) ? $items[$delta]->options['attributes'] : [],
+      '#attributes' => ['class' => ['link-field-widget-attributes']],
+    ];
 
     // If cardinality is 1, ensure a proper label is output for the field.
     if ($this->fieldDefinition->getFieldStorageDefinition()->getCardinality() == 1) {
@@ -242,9 +242,9 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
       }
       // Otherwise wrap everything in a details element.
       else {
-        $element += array(
+        $element += [
           '#type' => 'fieldset',
-        );
+        ];
       }
     }
 
@@ -281,23 +281,23 @@ protected function supportsExternalLinks() {
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $elements = parent::settingsForm($form, $form_state);
 
-    $elements['placeholder_url'] = array(
+    $elements['placeholder_url'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Placeholder for URL'),
       '#default_value' => $this->getSetting('placeholder_url'),
       '#description' => $this->t('Text that will be shown inside the field until a value is entered. This hint is usually a sample value or a brief description of the expected format.'),
-    );
-    $elements['placeholder_title'] = array(
+    ];
+    $elements['placeholder_title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Placeholder for link text'),
       '#default_value' => $this->getSetting('placeholder_title'),
       '#description' => $this->t('Text that will be shown inside the field until a value is entered. This hint is usually a sample value or a brief description of the expected format.'),
-      '#states' => array(
-        'invisible' => array(
-          ':input[name="instance[settings][title]"]' => array('value' => DRUPAL_DISABLED),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          ':input[name="instance[settings][title]"]' => ['value' => DRUPAL_DISABLED],
+        ],
+      ],
+    ];
 
     return $elements;
   }
@@ -306,7 +306,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
     $placeholder_title = $this->getSetting('placeholder_title');
     $placeholder_url = $this->getSetting('placeholder_url');
@@ -315,10 +315,10 @@ public function settingsSummary() {
     }
     else {
       if (!empty($placeholder_title)) {
-        $summary[] = $this->t('Title placeholder: @placeholder_title', array('@placeholder_title' => $placeholder_title));
+        $summary[] = $this->t('Title placeholder: @placeholder_title', ['@placeholder_title' => $placeholder_title]);
       }
       if (!empty($placeholder_url)) {
-        $summary[] = $this->t('URL placeholder: @placeholder_url', array('@placeholder_url' => $placeholder_url));
+        $summary[] = $this->t('URL placeholder: @placeholder_url', ['@placeholder_url' => $placeholder_url]);
       }
     }
 
diff --git a/core/modules/link/src/Plugin/Validation/Constraint/LinkAccessConstraintValidator.php b/core/modules/link/src/Plugin/Validation/Constraint/LinkAccessConstraintValidator.php
index 7d0e4fb..16ccae0 100644
--- a/core/modules/link/src/Plugin/Validation/Constraint/LinkAccessConstraintValidator.php
+++ b/core/modules/link/src/Plugin/Validation/Constraint/LinkAccessConstraintValidator.php
@@ -55,7 +55,7 @@ public function validate($value, Constraint $constraint) {
       // permission nor can access this URI.
       $allowed = $this->current_user->hasPermission('link to any page') || $url->access();
       if (!$allowed) {
-        $this->context->addViolation($constraint->message, array('@uri' => $value->uri));
+        $this->context->addViolation($constraint->message, ['@uri' => $value->uri]);
       }
     }
   }
diff --git a/core/modules/link/src/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidator.php b/core/modules/link/src/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidator.php
index 0bc178a..9484173 100644
--- a/core/modules/link/src/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidator.php
+++ b/core/modules/link/src/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidator.php
@@ -26,7 +26,7 @@ public function validate($value, Constraint $constraint) {
       }
       // Disallow external URLs using untrusted protocols.
       if ($url->isExternal() && !in_array(parse_url($url->getUri(), PHP_URL_SCHEME), UrlHelper::getAllowedProtocols())) {
-        $this->context->addViolation($constraint->message, array('@uri' => $value->uri));
+        $this->context->addViolation($constraint->message, ['@uri' => $value->uri]);
       }
     }
   }
diff --git a/core/modules/link/src/Plugin/Validation/Constraint/LinkNotExistingInternalConstraintValidator.php b/core/modules/link/src/Plugin/Validation/Constraint/LinkNotExistingInternalConstraintValidator.php
index 4621813..6e2f0cf 100644
--- a/core/modules/link/src/Plugin/Validation/Constraint/LinkNotExistingInternalConstraintValidator.php
+++ b/core/modules/link/src/Plugin/Validation/Constraint/LinkNotExistingInternalConstraintValidator.php
@@ -44,7 +44,7 @@ public function validate($value, Constraint $constraint) {
           $allowed = FALSE;
         }
         if (!$allowed) {
-          $this->context->addViolation($constraint->message, array('@uri' => $value->uri));
+          $this->context->addViolation($constraint->message, ['@uri' => $value->uri]);
         }
       }
     }
diff --git a/core/modules/link/src/Plugin/Validation/Constraint/LinkTypeConstraintValidator.php b/core/modules/link/src/Plugin/Validation/Constraint/LinkTypeConstraintValidator.php
index a67eb4d..817e934 100644
--- a/core/modules/link/src/Plugin/Validation/Constraint/LinkTypeConstraintValidator.php
+++ b/core/modules/link/src/Plugin/Validation/Constraint/LinkTypeConstraintValidator.php
@@ -43,7 +43,7 @@ public function validate($value, Constraint $constraint) {
       }
 
       if (!$uri_is_valid) {
-        $this->context->addViolation($constraint->message, array('@uri' => $link_item->uri));
+        $this->context->addViolation($constraint->message, ['@uri' => $link_item->uri]);
       }
     }
   }
diff --git a/core/modules/link/src/Tests/LinkFieldTest.php b/core/modules/link/src/Tests/LinkFieldTest.php
index e85ad53..f25066f 100644
--- a/core/modules/link/src/Tests/LinkFieldTest.php
+++ b/core/modules/link/src/Tests/LinkFieldTest.php
@@ -55,33 +55,33 @@ protected function setUp() {
   function testURLValidation() {
     $field_name = Unicode::strtolower($this->randomMachineName());
     // Create a field with settings to validate.
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'link',
-    ));
+    ]);
     $this->fieldStorage->save();
     $this->field = FieldConfig::create([
       'field_storage' => $this->fieldStorage,
       'bundle' => 'entity_test',
-      'settings' => array(
+      'settings' => [
         'title' => DRUPAL_DISABLED,
         'link_type' => LinkItemInterface::LINK_GENERIC,
-      ),
+      ],
     ]);
     $this->field->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link_default',
-        'settings' => array(
+        'settings' => [
           'placeholder_url' => 'http://example.com',
-        ),
-      ))
+        ],
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link',
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -103,14 +103,14 @@ function testURLValidation() {
 
     // Define some valid URLs (keys are the entered values, values are the
     // strings displayed to the user).
-    $valid_external_entries = array(
+    $valid_external_entries = [
       'http://www.example.com/' => 'http://www.example.com/',
       // Strings within parenthesis without leading space char.
       'http://www.example.com/strings_(string_within_parenthesis)' => 'http://www.example.com/strings_(string_within_parenthesis)',
       // Numbers within parenthesis without leading space char.
       'http://www.example.com/numbers_(9999)' => 'http://www.example.com/numbers_(9999)',
-    );
-    $valid_internal_entries = array(
+    ];
+    $valid_internal_entries = [
       '/entity_test/add' => '/entity_test/add',
       '/a/path/alias' => '/a/path/alias',
 
@@ -137,24 +137,24 @@ function testURLValidation() {
       'entity:entity_test/' . $entity_test_no_label_access->id() => '- Restricted access - (' . $entity_test_no_label_access->id() . ')',
       // URI for an entity that doesn't exist, but with a valid ID.
       'entity:user/999999' => 'entity:user/999999',
-    );
+    ];
 
     // Define some invalid URLs.
     $validation_error_1 = "The path '@link_path' is invalid.";
     $validation_error_2 = 'Manually entered paths should start with /, ? or #.';
     $validation_error_3 = "The path '@link_path' is inaccessible.";
-    $invalid_external_entries = array(
+    $invalid_external_entries = [
       // Invalid protocol
       'invalid://not-a-valid-protocol' => $validation_error_1,
       // Missing host name
       'http://' => $validation_error_1,
-    );
-    $invalid_internal_entries = array(
+    ];
+    $invalid_internal_entries = [
       'no-leading-slash' => $validation_error_2,
       'entity:non_existing_entity_type/yar' => $validation_error_1,
       // URI for an entity that doesn't exist, with an invalid ID.
       'entity:user/invalid-parameter' => $validation_error_1,
-    );
+    ];
 
     // Test external and internal URLs for 'link_type' = LinkItemInterface::LINK_GENERIC.
     $this->assertValidEntries($field_name, $valid_external_entries + $valid_internal_entries);
@@ -191,13 +191,13 @@ function testURLValidation() {
    */
   protected function assertValidEntries($field_name, array $valid_entries) {
     foreach ($valid_entries as $uri => $string) {
-      $edit = array(
+      $edit = [
         "{$field_name}[0][uri]" => $uri,
-      );
+      ];
       $this->drupalPostForm('entity_test/add', $edit, t('Save'));
       preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
       $id = $match[1];
-      $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+      $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
       $this->assertRaw($string);
     }
   }
@@ -212,11 +212,11 @@ protected function assertValidEntries($field_name, array $valid_entries) {
    */
   protected function assertInvalidEntries($field_name, array $invalid_entries) {
     foreach ($invalid_entries as $invalid_value => $error_message) {
-      $edit = array(
+      $edit = [
         "{$field_name}[0][uri]" => $invalid_value,
-      );
+      ];
       $this->drupalPostForm('entity_test/add', $edit, t('Save'));
-      $this->assertText(t($error_message, array('@link_path' => $invalid_value)));
+      $this->assertText(t($error_message, ['@link_path' => $invalid_value]));
     }
   }
 
@@ -226,40 +226,40 @@ protected function assertInvalidEntries($field_name, array $invalid_entries) {
   function testLinkTitle() {
     $field_name = Unicode::strtolower($this->randomMachineName());
     // Create a field with settings to validate.
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'link',
-    ));
+    ]);
     $this->fieldStorage->save();
     $this->field = FieldConfig::create([
       'field_storage' => $this->fieldStorage,
       'bundle' => 'entity_test',
       'label' => 'Read more about this entity',
-      'settings' => array(
+      'settings' => [
         'title' => DRUPAL_OPTIONAL,
         'link_type' => LinkItemInterface::LINK_GENERIC,
-      ),
+      ],
     ]);
     $this->field->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link_default',
-        'settings' => array(
+        'settings' => [
           'placeholder_url' => 'http://example.com',
           'placeholder_title' => 'Enter the text for this link',
-        ),
-      ))
+        ],
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link',
         'label' => 'hidden',
-      ))
+      ])
       ->save();
 
     // Verify that the link text field works according to the field setting.
-    foreach (array(DRUPAL_DISABLED, DRUPAL_REQUIRED, DRUPAL_OPTIONAL) as $title_setting) {
+    foreach ([DRUPAL_DISABLED, DRUPAL_REQUIRED, DRUPAL_OPTIONAL] as $title_setting) {
       // Update the link title field setting.
       $this->field->setSetting('title', $title_setting);
       $this->field->save();
@@ -281,41 +281,41 @@ function testLinkTitle() {
         $this->assertFieldByName("{$field_name}[0][title]", '', 'Link text field found.');
         if ($title_setting === DRUPAL_REQUIRED) {
           // Verify that the link text is required, if the URL is non-empty.
-          $edit = array(
+          $edit = [
             "{$field_name}[0][uri]" => 'http://www.example.com',
-          );
+          ];
           $this->drupalPostForm(NULL, $edit, t('Save'));
-          $this->assertText(t('@name field is required.', array('@name' => t('Link text'))));
+          $this->assertText(t('@name field is required.', ['@name' => t('Link text')]));
 
           // Verify that the link text is not required, if the URL is empty.
-          $edit = array(
+          $edit = [
             "{$field_name}[0][uri]" => '',
-          );
+          ];
           $this->drupalPostForm(NULL, $edit, t('Save'));
-          $this->assertNoText(t('@name field is required.', array('@name' => t('Link text'))));
+          $this->assertNoText(t('@name field is required.', ['@name' => t('Link text')]));
 
           // Verify that a URL and link text meets requirements.
           $this->drupalGet('entity_test/add');
-          $edit = array(
+          $edit = [
             "{$field_name}[0][uri]" => 'http://www.example.com',
             "{$field_name}[0][title]" => 'Example',
-          );
+          ];
           $this->drupalPostForm(NULL, $edit, t('Save'));
-          $this->assertNoText(t('@name field is required.', array('@name' => t('Link text'))));
+          $this->assertNoText(t('@name field is required.', ['@name' => t('Link text')]));
         }
       }
     }
 
     // Verify that a link without link text is rendered using the URL as text.
     $value = 'http://www.example.com/';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][uri]" => $value,
       "{$field_name}[0][title]" => '',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     $this->renderTestEntity($id);
     $expected_link = \Drupal::l($value, Url::fromUri($value));
@@ -323,11 +323,11 @@ function testLinkTitle() {
 
     // Verify that a link with text is rendered using the link text.
     $title = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       "{$field_name}[0][title]" => $title,
-    );
+    ];
     $this->drupalPostForm("entity_test/manage/$id/edit", $edit, t('Save'));
-    $this->assertText(t('entity_test @id has been updated.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been updated.', ['@id' => $id]));
 
     $this->renderTestEntity($id);
     $expected_link = \Drupal::l($title, Url::fromUri($value));
@@ -340,31 +340,31 @@ function testLinkTitle() {
   function testLinkFormatter() {
     $field_name = Unicode::strtolower($this->randomMachineName());
     // Create a field with settings to validate.
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'link',
       'cardinality' => 3,
-    ));
+    ]);
     $this->fieldStorage->save();
     FieldConfig::create([
       'field_storage' => $this->fieldStorage,
       'label' => 'Read more about this entity',
       'bundle' => 'entity_test',
-      'settings' => array(
+      'settings' => [
         'title' => DRUPAL_OPTIONAL,
         'link_type' => LinkItemInterface::LINK_GENERIC,
-      ),
+      ],
     ])->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link_default',
-      ))
+      ])
       ->save();
-    $display_options = array(
+    $display_options = [
       'type' => 'link',
       'label' => 'hidden',
-    );
+    ];
     entity_get_display('entity_test', 'entity_test', 'full')
       ->setComponent($field_name, $display_options)
       ->save();
@@ -383,7 +383,7 @@ function testLinkFormatter() {
     // Intentionally contains an ampersand that needs sanitization on output.
     $title2 = 'A very long & strange example title that could break the nice layout of the site';
     $title3 = 'Fragment only';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][uri]" => $url1,
       // Note that $title1 is not submitted.
       "{$field_name}[0][title]" => '',
@@ -391,35 +391,35 @@ function testLinkFormatter() {
       "{$field_name}[1][title]" => $title2,
       "{$field_name}[2][uri]" => $url3,
       "{$field_name}[2][title]" => $title3,
-    );
+    ];
     // Assert label is shown.
     $this->assertText('Read more about this entity');
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     // Verify that the link is output according to the formatter settings.
     // Not using generatePermutations(), since that leads to 32 cases, which
     // would not test actual link field formatter functionality but rather
     // the link generator and options/attributes. Only 'url_plain' has a
     // dependency on 'url_only', so we have a total of ~10 cases.
-    $options = array(
-      'trim_length' => array(NULL, 6),
-      'rel' => array(NULL, 'nofollow'),
-      'target' => array(NULL, '_blank'),
-      'url_only' => array(
-        array('url_only' => FALSE),
-        array('url_only' => FALSE, 'url_plain' => TRUE),
-        array('url_only' => TRUE),
-        array('url_only' => TRUE, 'url_plain' => TRUE),
-      ),
-    );
+    $options = [
+      'trim_length' => [NULL, 6],
+      'rel' => [NULL, 'nofollow'],
+      'target' => [NULL, '_blank'],
+      'url_only' => [
+        ['url_only' => FALSE],
+        ['url_only' => FALSE, 'url_plain' => TRUE],
+        ['url_only' => TRUE],
+        ['url_only' => TRUE, 'url_plain' => TRUE],
+      ],
+    ];
     foreach ($options as $setting => $values) {
       foreach ($values as $new_value) {
         // Update the field formatter settings.
         if (!is_array($new_value)) {
-          $display_options['settings'] = array($setting => $new_value);
+          $display_options['settings'] = [$setting => $new_value];
         }
         else {
           $display_options['settings'] = $new_value;
@@ -495,29 +495,29 @@ function testLinkFormatter() {
   function testLinkSeparateFormatter() {
     $field_name = Unicode::strtolower($this->randomMachineName());
     // Create a field with settings to validate.
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'link',
       'cardinality' => 3,
-    ));
+    ]);
     $this->fieldStorage->save();
     FieldConfig::create([
       'field_storage' => $this->fieldStorage,
       'bundle' => 'entity_test',
-      'settings' => array(
+      'settings' => [
         'title' => DRUPAL_OPTIONAL,
         'link_type' => LinkItemInterface::LINK_GENERIC,
-      ),
+      ],
     ])->save();
-    $display_options = array(
+    $display_options = [
       'type' => 'link_separate',
       'label' => 'hidden',
-    );
+    ];
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'link_default',
-      ))
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
       ->setComponent($field_name, $display_options)
@@ -536,28 +536,28 @@ function testLinkSeparateFormatter() {
     // Intentionally contains an ampersand that needs sanitization on output.
     $title2 = 'A very long & strange example title that could break the nice layout of the site';
     $title3 = 'Fragment only';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][uri]" => $url1,
       "{$field_name}[1][uri]" => $url2,
       "{$field_name}[1][title]" => $title2,
       "{$field_name}[2][uri]" => $url3,
       "{$field_name}[2][title]" => $title3,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)));
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]));
 
     // Verify that the link is output according to the formatter settings.
-    $options = array(
-      'trim_length' => array(NULL, 6),
-      'rel' => array(NULL, 'nofollow'),
-      'target' => array(NULL, '_blank'),
-    );
+    $options = [
+      'trim_length' => [NULL, 6],
+      'rel' => [NULL, 'nofollow'],
+      'target' => [NULL, '_blank'],
+    ];
     foreach ($options as $setting => $values) {
       foreach ($values as $new_value) {
         // Update the field formatter settings.
-        $display_options['settings'] = array($setting => $new_value);
+        $display_options['settings'] = [$setting => $new_value];
         entity_get_display('entity_test', 'entity_test', 'full')
           ->setComponent($field_name, $display_options)
           ->save();
@@ -622,7 +622,7 @@ function testLinkSeparateFormatter() {
    */
   protected function renderTestEntity($id, $view_mode = 'full', $reset = TRUE) {
     if ($reset) {
-      $this->container->get('entity.manager')->getStorage('entity_test')->resetCache(array($id));
+      $this->container->get('entity.manager')->getStorage('entity_test')->resetCache([$id]);
     }
     $entity = EntityTest::load($id);
     $display = entity_get_display($entity->getEntityTypeId(), $entity->bundle(), $view_mode);
diff --git a/core/modules/link/src/Tests/Views/LinkViewsTokensTest.php b/core/modules/link/src/Tests/Views/LinkViewsTokensTest.php
index ec06ca6..80913ec 100644
--- a/core/modules/link/src/Tests/Views/LinkViewsTokensTest.php
+++ b/core/modules/link/src/Tests/Views/LinkViewsTokensTest.php
@@ -40,27 +40,27 @@ class LinkViewsTokensTest extends ViewTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    ViewTestData::createTestViews(get_class($this), array('link_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['link_test_views']);
 
     // Create Basic page node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'page',
       'name' => 'Basic page'
-    ));
+    ]);
 
     // Create a field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'type' => 'link',
       'entity_type' => 'node',
       'cardinality' => 1,
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
       'bundle' => 'page',
       'label' => 'link field',
-    ))->save();
+    ])->save();
 
   }
 
@@ -72,7 +72,7 @@ public function testLinkViewsTokens() {
 
     // Add nodes with the URI's and titles.
     foreach ($uris as $uri => $title) {
-      $values = array('type' => 'page');
+      $values = ['type' => 'page'];
       $values[$this->fieldName][] = ['uri' => $uri, 'title' => $title, 'options' => ['attributes' => ['class' => 'test-link-class']]];
       $this->drupalCreateNode($values);
     }
diff --git a/core/modules/link/tests/src/Functional/LinkFieldUITest.php b/core/modules/link/tests/src/Functional/LinkFieldUITest.php
index eeed78c..c990e64 100644
--- a/core/modules/link/tests/src/Functional/LinkFieldUITest.php
+++ b/core/modules/link/tests/src/Functional/LinkFieldUITest.php
@@ -60,7 +60,7 @@ function testFieldUI() {
     // generate warnings.
     // @todo Mess with the formatter settings a bit here.
     $this->drupalGet("$type_path/display");
-    $this->assertText(t('Link text trimmed to @limit characters', array('@limit' => 80)));
+    $this->assertText(t('Link text trimmed to @limit characters', ['@limit' => 80]));
 
     // Test the help text displays when the link field allows both internal and
     // external links.
@@ -81,7 +81,7 @@ function testFieldUI() {
     $label = $this->randomMachineName();
     $field_name = Unicode::strtolower($label);
     $field_edit = ['settings[link_type]' => LinkItemInterface::LINK_EXTERNAL];
-    $this->fieldUIAddNewField($type_path, $field_name, $label, 'link', array(), $field_edit);
+    $this->fieldUIAddNewField($type_path, $field_name, $label, 'link', [], $field_edit);
 
     // Test the help text displays when link allows only external links.
     $this->drupalLogin($this->drupalCreateUser(['create ' . $type->id() . ' content']));
diff --git a/core/modules/link/tests/src/Kernel/LinkItemTest.php b/core/modules/link/tests/src/Kernel/LinkItemTest.php
index 5e2c45d..ff4f840 100644
--- a/core/modules/link/tests/src/Kernel/LinkItemTest.php
+++ b/core/modules/link/tests/src/Kernel/LinkItemTest.php
@@ -24,7 +24,7 @@ class LinkItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('link');
+  public static $modules = ['link'];
 
   protected function setUp() {
     parent::setUp();
@@ -78,7 +78,7 @@ public function testLinkItem() {
     $entity->field_test->uri = $parsed_url['path'];
     $entity->field_test->title = $title;
     $entity->field_test->first()->get('options')->set('query', $parsed_url['query']);
-    $entity->field_test->first()->get('options')->set('attributes', array('class' => $class));
+    $entity->field_test->first()->get('options')->set('attributes', ['class' => $class]);
     $this->assertEquals([
       'query' => $parsed_url['query'],
       'attributes' => [
@@ -118,7 +118,7 @@ public function testLinkItem() {
     $entity->field_test->uri = $new_url;
     $entity->field_test->title = $new_title;
     $entity->field_test->first()->get('options')->set('query', NULL);
-    $entity->field_test->first()->get('options')->set('attributes', array('class' => $new_class));
+    $entity->field_test->first()->get('options')->set('attributes', ['class' => $new_class]);
     $this->assertEqual($entity->field_test->uri, $new_url);
     $this->assertEqual($entity->field_test->title, $new_title);
     $this->assertEqual($entity->field_test->options['attributes']['class'], $new_class);
diff --git a/core/modules/locale/locale.api.php b/core/modules/locale/locale.api.php
index 56210e5..3cf1e12 100644
--- a/core/modules/locale/locale.api.php
+++ b/core/modules/locale/locale.api.php
@@ -116,11 +116,11 @@
  */
 function hook_locale_translation_projects_alter(&$projects) {
   // The translations are located at a custom translation sever.
-  $projects['existing_project'] = array(
-    'info' => array(
+  $projects['existing_project'] = [
+    'info' => [
       'interface translation server pattern' => 'http://example.com/files/translations/%core/%project/%project-%version.%language.po',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/locale/locale.batch.inc b/core/modules/locale/locale.batch.inc
index 81ca966..a18f993 100644
--- a/core/modules/locale/locale.batch.inc
+++ b/core/modules/locale/locale.batch.inc
@@ -38,11 +38,11 @@
  */
 function locale_translation_batch_status_check($project, $langcode, array $options, &$context) {
   $failure = $checked = FALSE;
-  $options += array(
+  $options += [
     'finish_feedback' => TRUE,
     'use_remote' => TRUE,
-  );
-  $source = locale_translation_get_status(array($project), array($langcode));
+  ];
+  $source = locale_translation_get_status([$project], [$langcode]);
   $source = $source[$project][$langcode];
 
   // Check the status of local translation files.
@@ -82,7 +82,7 @@ function locale_translation_batch_status_check($project, $langcode, array $optio
   if ($failure && !$checked) {
     $context['results']['failed_files'][] = $source->name;
   }
-  $context['message'] = t('Checked translation for %project.', array('%project' => $source->project));
+  $context['message'] = t('Checked translation for %project.', ['%project' => $source->project]);
 }
 
 /**
@@ -99,7 +99,7 @@ function locale_translation_batch_status_finished($success, $results) {
   if ($success) {
     if (isset($results['failed_files'])) {
       if (\Drupal::moduleHandler()->moduleExists('dblog') && \Drupal::currentUser()->hasPermission('access site reports')) {
-        $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation file could not be checked. <a href=":url">See the log</a> for details.', '@count translation files could not be checked. <a href=":url">See the log</a> for details.', array(':url' => \Drupal::url('dblog.overview')));
+        $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation file could not be checked. <a href=":url">See the log</a> for details.', '@count translation files could not be checked. <a href=":url">See the log</a> for details.', [':url' => \Drupal::url('dblog.overview')]);
       }
       else {
         $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation files could not be checked. See the log for details.', '@count translation files could not be checked. See the log for details.');
@@ -139,12 +139,12 @@ function locale_translation_batch_status_finished($success, $results) {
  * @see locale_translation_batch_fetch_import()
  */
 function locale_translation_batch_fetch_download($project, $langcode, &$context) {
-  $sources = locale_translation_get_status(array($project), array($langcode));
+  $sources = locale_translation_get_status([$project], [$langcode]);
   if (isset($sources[$project][$langcode])) {
     $source = $sources[$project][$langcode];
     if (isset($source->type) && $source->type == LOCALE_TRANSLATION_REMOTE) {
       if ($file = locale_translation_download_source($source->files[LOCALE_TRANSLATION_REMOTE], 'translations://')) {
-        $context['message'] = t('Downloaded translation for %project.', array('%project' => $source->project));
+        $context['message'] = t('Downloaded translation for %project.', ['%project' => $source->project]);
         locale_translation_status_save($source->name, $source->langcode, LOCALE_TRANSLATION_LOCAL, $file);
       }
       else {
@@ -173,16 +173,16 @@ function locale_translation_batch_fetch_download($project, $langcode, &$context)
  * @see locale_translation_batch_fetch_download()
  */
 function locale_translation_batch_fetch_import($project, $langcode, $options, &$context) {
-  $sources = locale_translation_get_status(array($project), array($langcode));
+  $sources = locale_translation_get_status([$project], [$langcode]);
   if (isset($sources[$project][$langcode])) {
     $source = $sources[$project][$langcode];
     if (isset($source->type)) {
       if ($source->type == LOCALE_TRANSLATION_REMOTE || $source->type == LOCALE_TRANSLATION_LOCAL) {
         $file = $source->files[LOCALE_TRANSLATION_LOCAL];
         module_load_include('bulk.inc', 'locale');
-        $options += array(
-          'message' => t('Importing translation for %project.', array('%project' => $source->project)),
-        );
+        $options += [
+          'message' => t('Importing translation for %project.', ['%project' => $source->project]),
+        ];
         // Import the translation file. For large files the batch operations is
         // progressive and will be called repeatedly until finished.
         locale_translate_batch_import($file, $options, $context);
@@ -191,7 +191,7 @@ function locale_translation_batch_fetch_import($project, $langcode, $options, &$
         if (isset($context['finished']) && $context['finished'] == 1) {
           // The import is successful.
           if (isset($context['results']['files'][$file->uri])) {
-            $context['message'] = t('Imported translation for %project.', array('%project' => $source->project));
+            $context['message'] = t('Imported translation for %project.', ['%project' => $source->project]);
 
             // Save the data of imported source into the {locale_file} table and
             // update the current translation status.
@@ -243,7 +243,7 @@ function locale_translation_http_check($uri) {
         $actual_uri = (string) $request_uri;
       }
     ]])->head($uri);
-    $result = array();
+    $result = [];
 
     // Return the effective URL if it differs from the requested.
     if ($actual_uri && $actual_uri !== $uri) {
@@ -262,10 +262,10 @@ function locale_translation_http_check($uri) {
         // theme does not define the location of a translation file. By default
         // the file is checked at the translation server, but it will not be
         // found there.
-        $logger->notice('Translation file not found: @uri.', array('@uri' => $uri));
+        $logger->notice('Translation file not found: @uri.', ['@uri' => $uri]);
         return TRUE;
       }
-      $logger->notice('HTTP request to @url failed with error: @error.', array('@url' => $uri, '@error' => $response->getStatusCode() . ' ' . $response->getReasonPhrase()));
+      $logger->notice('HTTP request to @url failed with error: @error.', ['@url' => $uri, '@error' => $response->getStatusCode() . ' ' . $response->getReasonPhrase()]);
     }
   }
 
@@ -298,6 +298,6 @@ function locale_translation_download_source($source_file, $directory = 'temporar
     $file->timestamp = filemtime($uri);
     return $file;
   }
-  \Drupal::logger('locale')->error('Unable to download translation file @uri.', array('@uri' => $source_file->uri));
+  \Drupal::logger('locale')->error('Unable to download translation file @uri.', ['@uri' => $source_file->uri]);
   return FALSE;
 }
diff --git a/core/modules/locale/locale.bulk.inc b/core/modules/locale/locale.bulk.inc
index 1181b50..81261e7 100644
--- a/core/modules/locale/locale.bulk.inc
+++ b/core/modules/locale/locale.bulk.inc
@@ -37,14 +37,14 @@
  *   See https://www.drupal.org/node/1191488.
  */
 function locale_translate_batch_import_files(array $options, $force = FALSE) {
-  $options += array(
-    'overwrite_options' => array(),
+  $options += [
+    'overwrite_options' => [],
     'customized' => LOCALE_NOT_CUSTOMIZED,
     'finish_feedback' => TRUE,
-  );
+  ];
 
   if (!empty($options['langcode'])) {
-    $langcodes = array($options['langcode']);
+    $langcodes = [$options['langcode']];
   }
   else {
     // If langcode was not provided, make sure to only import files for the
@@ -52,11 +52,11 @@ function locale_translate_batch_import_files(array $options, $force = FALSE) {
     $langcodes = array_keys(\Drupal::languageManager()->getLanguages());
   }
 
-  $files = locale_translate_get_interface_translation_files(array(), $langcodes);
+  $files = locale_translate_get_interface_translation_files([], $langcodes);
 
   if (!$force) {
     $result = db_select('locale_file', 'lf')
-      ->fields('lf', array('langcode', 'uri', 'timestamp'))
+      ->fields('lf', ['langcode', 'uri', 'timestamp'])
       ->condition('langcode', $langcodes)
       ->execute()
       ->fetchAllAssoc('uri');
@@ -84,9 +84,9 @@ function locale_translate_batch_import_files(array $options, $force = FALSE) {
  * @return array
  *   An array of interface translation files keyed by their URI.
  */
-function locale_translate_get_interface_translation_files(array $projects = array(), array $langcodes = array()) {
+function locale_translate_get_interface_translation_files(array $projects = [], array $langcodes = []) {
   module_load_include('compare.inc', 'locale');
-  $files = array();
+  $files = [];
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
 
@@ -95,7 +95,7 @@ function locale_translate_get_interface_translation_files(array $projects = arra
   // {project}-{version}.{langcode}.po.
   // Only files of known projects and languages will be returned.
   $directory = \Drupal::config('locale.settings')->get('translation.path');
-  $result = file_scan_directory($directory, '![a-z_]+(\-[0-9a-z\.\-\+]+|)\.[^\./]+\.po$!', array('recurse' => FALSE));
+  $result = file_scan_directory($directory, '![a-z_]+(\-[0-9a-z\.\-\+]+|)\.[^\./]+\.po$!', ['recurse' => FALSE]);
 
   foreach ($result as $file) {
     // Update the file object with project name and version from the file name.
@@ -132,30 +132,30 @@ function locale_translate_get_interface_translation_files(array $projects = arra
  *   A batch structure or FALSE if $files was empty.
  */
 function locale_translate_batch_build(array $files, array $options) {
-  $options += array(
-    'overwrite_options' => array(),
+  $options += [
+    'overwrite_options' => [],
     'customized' => LOCALE_NOT_CUSTOMIZED,
     'finish_feedback' => TRUE,
-  );
+  ];
   if (count($files)) {
-    $operations = array();
+    $operations = [];
     foreach ($files as $file) {
       // We call locale_translate_batch_import for every batch operation.
-      $operations[] = array('locale_translate_batch_import', array($file, $options));
+      $operations[] = ['locale_translate_batch_import', [$file, $options]];
     }
     // Save the translation status of all files.
-    $operations[] = array('locale_translate_batch_import_save', array());
+    $operations[] = ['locale_translate_batch_import_save', []];
 
     // Add a final step to refresh JavaScript and configuration strings.
-    $operations[] = array('locale_translate_batch_refresh', array());
+    $operations[] = ['locale_translate_batch_refresh', []];
 
-    $batch = array(
+    $batch = [
       'operations'    => $operations,
       'title'         => t('Importing interface translations'),
       'progress_message' => '',
       'error_message' => t('Error importing interface translations'),
       'file'          => drupal_get_path('module', 'locale') . '/locale.bulk.inc',
-    );
+    ];
     if ($options['finish_feedback']) {
       $batch['finished'] = 'locale_translate_batch_finished';
     }
@@ -190,20 +190,20 @@ function locale_translate_batch_build(array $files, array $options) {
  */
 function locale_translate_batch_import($file, array $options, &$context) {
   // Merge the default values in the $options array.
-  $options += array(
-    'overwrite_options' => array(),
+  $options += [
+    'overwrite_options' => [],
     'customized' => LOCALE_NOT_CUSTOMIZED,
-  );
+  ];
 
   if (isset($file->langcode) && $file->langcode != LanguageInterface::LANGCODE_NOT_SPECIFIED) {
 
     try {
       if (empty($context['sandbox'])) {
-        $context['sandbox']['parse_state'] = array(
+        $context['sandbox']['parse_state'] = [
           'filesize' => filesize(drupal_realpath($file->uri)),
           'chunk_size' => 200,
           'seek' => 0,
-        );
+        ];
       }
       // Update the seek and the number of items in the $options array().
       $options['seek'] = $context['sandbox']['parse_state']['seek'];
@@ -220,10 +220,10 @@ function locale_translate_batch_import($file, array $options, &$context) {
         // https://www.drupal.org/node/1089472.
         $context['finished'] = min(0.95, $report['seek'] / filesize($file->uri));
         if (isset($options['message'])) {
-          $context['message'] = t('@message (@percent%).', array('@message' => $options['message'], '@percent' => (int) ($context['finished'] * 100)));
+          $context['message'] = t('@message (@percent%).', ['@message' => $options['message'], '@percent' => (int) ($context['finished'] * 100)]);
         }
         else {
-          $context['message'] = t('Importing translation file: %filename (@percent%).', array('%filename' => $file->filename, '@percent' => (int) ($context['finished'] * 100)));
+          $context['message'] = t('Importing translation file: %filename (@percent%).', ['%filename' => $file->filename, '@percent' => (int) ($context['finished'] * 100)]);
         }
       }
       else {
@@ -240,7 +240,7 @@ function locale_translate_batch_import($file, array $options, &$context) {
       // Each import iteration reports statistics in an array. The results of
       // each iteration are added and merged here and stored per file.
       if (!isset($context['results']['stats']) || !isset($context['results']['stats'][$file->uri])) {
-        $context['results']['stats'][$file->uri] = array();
+        $context['results']['stats'][$file->uri] = [];
       }
       foreach ($report as $key => $value) {
         if (is_numeric($report[$key])) {
@@ -250,7 +250,7 @@ function locale_translate_batch_import($file, array $options, &$context) {
           $context['results']['stats'][$file->uri][$key] += $report[$key];
         }
         elseif (is_array($value)) {
-          $context['results']['stats'][$file->uri] += array($key => array());
+          $context['results']['stats'][$file->uri] += [$key => []];
           $context['results']['stats'][$file->uri][$key] = array_merge($context['results']['stats'][$file->uri][$key], $value);
         }
       }
@@ -258,7 +258,7 @@ function locale_translate_batch_import($file, array $options, &$context) {
     catch (Exception $exception) {
       // Import failed. Store the data of the failing file.
       $context['results']['failed_files'][] = $file;
-      \Drupal::logger('locale')->notice('Unable to import translations file: @file', array('@file' => $file->uri));
+      \Drupal::logger('locale')->notice('Unable to import translations file: @file', ['@file' => $file->uri]);
     }
   }
 }
@@ -298,7 +298,7 @@ function locale_translate_batch_import_save($context) {
  */
 function locale_translate_batch_refresh(&$context) {
   if (!isset($context['sandbox']['refresh'])) {
-    $strings = $langcodes = array();
+    $strings = $langcodes = [];
     if (isset($context['results']['stats'])) {
       // Get list of unique string identifiers and language codes updated.
       $langcodes = array_unique(array_values($context['results']['languages']));
@@ -311,7 +311,7 @@ function locale_translate_batch_refresh(&$context) {
       $context['message'] = t('Updating translations for JavaScript and default configuration.');
       $context['sandbox']['refresh']['strings'] = array_unique($strings);
       $context['sandbox']['refresh']['languages'] = $langcodes;
-      $context['sandbox']['refresh']['names'] = array();
+      $context['sandbox']['refresh']['names'] = [];
       $context['results']['stats']['config'] = 0;
       $context['sandbox']['refresh']['count'] = count($strings);
 
@@ -324,12 +324,12 @@ function locale_translate_batch_refresh(&$context) {
   }
   elseif ($name = array_shift($context['sandbox']['refresh']['names'])) {
     // Refresh all languages for one object at a time.
-    $count = Locale::config()->updateConfigTranslations(array($name), $context['sandbox']['refresh']['languages']);
+    $count = Locale::config()->updateConfigTranslations([$name], $context['sandbox']['refresh']['languages']);
     $context['results']['stats']['config'] += $count;
     // Inherit finished information from the "parent" string lookup step so
     // visual display of status will make sense.
     $context['finished'] = $context['sandbox']['refresh']['names_finished'];
-    $context['message'] = t('Updating default configuration (@percent%).', array('@percent' => (int) ($context['finished'] * 100)));
+    $context['message'] = t('Updating default configuration (@percent%).', ['@percent' => (int) ($context['finished'] * 100)]);
   }
   elseif (!empty($context['sandbox']['refresh']['strings'])) {
     // Not perfect but will give some indication of progress.
@@ -367,7 +367,7 @@ function locale_translate_batch_finished($success, array $results) {
     $additions = $updates = $deletes = $skips = $config = 0;
     if (isset($results['failed_files'])) {
       if (\Drupal::moduleHandler()->moduleExists('dblog') && \Drupal::currentUser()->hasPermission('access site reports')) {
-        $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation file could not be imported. <a href=":url">See the log</a> for details.', '@count translation files could not be imported. <a href=":url">See the log</a> for details.', array(':url' => \Drupal::url('dblog.overview')));
+        $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation file could not be imported. <a href=":url">See the log</a> for details.', '@count translation files could not be imported. <a href=":url">See the log</a> for details.', [':url' => \Drupal::url('dblog.overview')]);
       }
       else {
         $message = \Drupal::translation()->formatPlural(count($results['failed_files']), 'One translation file could not be imported. See the log for details.', '@count translation files could not be imported. See the log for details.');
@@ -375,7 +375,7 @@ function locale_translate_batch_finished($success, array $results) {
       drupal_set_message($message, 'error');
     }
     if (isset($results['files'])) {
-      $skipped_files = array();
+      $skipped_files = [];
       // If there are no results and/or no stats (eg. coping with an empty .po
       // file), simply do nothing.
       if ($results && isset($results['stats'])) {
@@ -392,19 +392,19 @@ function locale_translate_batch_finished($success, array $results) {
       drupal_set_message(\Drupal::translation()->formatPlural(count($results['files']),
         'One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.',
         '@count translation files imported. %number translations were added, %update translations were updated and %delete translations were removed.',
-        array('%number' => $additions, '%update' => $updates, '%delete' => $deletes)
+        ['%number' => $additions, '%update' => $updates, '%delete' => $deletes]
       ));
-      $logger->notice('Translations imported: %number added, %update updated, %delete removed.', array('%number' => $additions, '%update' => $updates, '%delete' => $deletes));
+      $logger->notice('Translations imported: %number added, %update updated, %delete removed.', ['%number' => $additions, '%update' => $updates, '%delete' => $deletes]);
 
       if ($skips) {
         if (\Drupal::moduleHandler()->moduleExists('dblog') && \Drupal::currentUser()->hasPermission('access site reports')) {
-          $message = \Drupal::translation()->formatPlural($skips, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', array(':url' => \Drupal::url('dblog.overview')));
+          $message = \Drupal::translation()->formatPlural($skips, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', [':url' => \Drupal::url('dblog.overview')]);
         }
         else {
           $message = \Drupal::translation()->formatPlural($skips, 'One translation string was skipped because of disallowed or malformed HTML. See the log for details.', '@count translation strings were skipped because of disallowed or malformed HTML. See the log for details.');
         }
         drupal_set_message($message, 'warning');
-        $logger->warning('@count disallowed HTML string(s) in files: @files.', array('@count' => $skips, '@files' => implode(',', $skipped_files)));
+        $logger->warning('@count disallowed HTML string(s) in files: @files.', ['@count' => $skips, '@files' => implode(',', $skipped_files)]);
       }
     }
   }
@@ -448,13 +448,13 @@ function locale_translate_file_create($filepath) {
  * @return object
  *   Modified file object.
  */
-function locale_translate_file_attach_properties($file, array $options = array()) {
+function locale_translate_file_attach_properties($file, array $options = []) {
   // If $file is a file entity, convert it to a stdClass.
   if ($file instanceof FileInterface) {
-    $file = (object) array(
+    $file = (object) [
       'filename' => $file->getFilename(),
       'uri' => $file->getFileUri(),
-    );
+    ];
   }
 
   // Extract project, version and language code from the file name. Supported:
@@ -499,7 +499,7 @@ function locale_translate_file_attach_properties($file, array $options = array()
  *   TRUE if files are removed successfully. FALSE if one or more files could
  *   not be deleted.
  */
-function locale_translate_delete_translation_files(array $projects = array(), array $langcodes = array()) {
+function locale_translate_delete_translation_files(array $projects = [], array $langcodes = []) {
   $fail = FALSE;
   locale_translation_file_history_delete($projects, $langcodes);
 
@@ -531,7 +531,7 @@ function locale_translate_delete_translation_files(array $projects = array(), ar
  * @return array
  *   The batch definition.
  */
-function locale_config_batch_update_components(array $options, array $langcodes = array(), array $components = array()) {
+function locale_config_batch_update_components(array $options, array $langcodes = [], array $components = []) {
   $langcodes = $langcodes ? $langcodes : array_keys(\Drupal::languageManager()->getLanguages());
   if ($langcodes && $names = Locale::config()->getComponentNames($components)) {
     return locale_config_batch_build($names, $langcodes, $options);
@@ -555,11 +555,11 @@ function locale_config_batch_update_components(array $options, array $langcodes
  *
  * @see locale_config_batch_refresh_name()
  */
-function locale_config_batch_build(array $names, array $langcodes, array $options = array()) {
-  $options += array('finish_feedback' => TRUE);
+function locale_config_batch_build(array $names, array $langcodes, array $options = []) {
+  $options += ['finish_feedback' => TRUE];
   $i = 0;
-  $batch_names = array();
-  $operations = array();
+  $batch_names = [];
+  $operations = [];
   foreach ($names as $name) {
     $batch_names[] = $name;
     $i++;
@@ -568,20 +568,20 @@ function locale_config_batch_build(array $names, array $langcodes, array $option
     // request. We batch a small number of configuration object upgrades
     // together to improve the overall performance of the process.
     if ($i % 20 == 0) {
-      $operations[] = array('locale_config_batch_refresh_name', array($batch_names, $langcodes));
-      $batch_names = array();
+      $operations[] = ['locale_config_batch_refresh_name', [$batch_names, $langcodes]];
+      $batch_names = [];
     }
   }
   if (!empty($batch_names)) {
-    $operations[] = array('locale_config_batch_refresh_name', array($batch_names, $langcodes));
+    $operations[] = ['locale_config_batch_refresh_name', [$batch_names, $langcodes]];
   }
-  $batch = array(
+  $batch = [
     'operations'    => $operations,
     'title'         => t('Updating configuration translations'),
     'init_message'  => t('Starting configuration update'),
     'error_message' => t('Error updating configuration translations'),
     'file'          => drupal_get_path('module', 'locale') . '/locale.bulk.inc',
-  );
+  ];
   if (!empty($options['finish_feedback'])) {
     $batch['completed'] = 'locale_config_batch_finished';
   }
@@ -630,8 +630,8 @@ function locale_config_batch_finished($success, array $results) {
   if ($success) {
     $configuration = isset($results['stats']['config']) ? $results['stats']['config'] : 0;
     if ($configuration) {
-      drupal_set_message(t('The configuration was successfully updated. There are %number configuration objects updated.', array('%number' => $configuration)));
-      \Drupal::logger('locale')->notice('The configuration was successfully updated. %number configuration objects updated.', array('%number' => $configuration));
+      drupal_set_message(t('The configuration was successfully updated. There are %number configuration objects updated.', ['%number' => $configuration]));
+      \Drupal::logger('locale')->notice('The configuration was successfully updated. %number configuration objects updated.', ['%number' => $configuration]);
     }
     else {
       drupal_set_message(t('No configuration objects have been updated.'));
diff --git a/core/modules/locale/locale.compare.inc b/core/modules/locale/locale.compare.inc
index e24490c..3821284 100644
--- a/core/modules/locale/locale.compare.inc
+++ b/core/modules/locale/locale.compare.inc
@@ -66,7 +66,7 @@ function locale_translation_build_projects() {
     }
 
     // For every project store information.
-    $data += array(
+    $data += [
       'name' => $name,
       'version' => isset($data['info']['version']) ? $data['info']['version'] : '',
       'core' => isset($data['info']['core']) ? $data['info']['core'] : \Drupal::CORE_COMPATIBILITY,
@@ -74,7 +74,7 @@ function locale_translation_build_projects() {
       // gettext file. Use the default if not.
       'server_pattern' => isset($data['info']['interface translation server pattern']) && $data['info']['interface translation server pattern'] ? $data['info']['interface translation server pattern'] : $default_server['pattern'],
       'status' => !empty($data['project_status']) ? 1 : 0,
-    );
+    ];
 
     $project = (object) $data;
     $projects[$name] = $project;
@@ -95,14 +95,14 @@ function locale_translation_build_projects() {
  *   Array of project data including .info.yml file data.
  */
 function locale_translation_project_list() {
-  $projects = &drupal_static(__FUNCTION__, array());
+  $projects = &drupal_static(__FUNCTION__, []);
   if (empty($projects)) {
-    $projects = array();
+    $projects = [];
 
-    $additional_whitelist = array(
+    $additional_whitelist = [
       'interface translation project',
       'interface translation server pattern',
-    );
+    ];
     $module_data = _locale_translation_prepare_project_list(system_rebuild_module_data(), 'module');
     $theme_data = _locale_translation_prepare_project_list(\Drupal::service('theme_handler')->rebuildThemeData(), 'theme');
     $project_info = new ProjectInfo();
@@ -163,9 +163,9 @@ function locale_translation_default_translation_server() {
   // fallback.
   $pattern  = $pattern ? $pattern : LOCALE_TRANSLATION_DEFAULT_SERVER_PATTERN;
 
-  return array(
+  return [
     'pattern' => $pattern,
-  );
+  ];
 }
 
 /**
@@ -181,7 +181,7 @@ function locale_translation_default_translation_server() {
  *
  * @todo Return batch or NULL.
  */
-function locale_translation_check_projects($projects = array(), $langcodes = array()) {
+function locale_translation_check_projects($projects = [], $langcodes = []) {
   if (locale_translation_use_remote_source()) {
     // Retrieve the status of both remote and local translation sources by
     // using a batch process.
@@ -207,7 +207,7 @@ function locale_translation_check_projects($projects = array(), $langcodes = arr
  * @param string $langcodes
  *   Array of language codes. Defaults to all translatable languages.
  */
-function locale_translation_check_projects_batch($projects = array(), $langcodes = array()) {
+function locale_translation_check_projects_batch($projects = [], $langcodes = []) {
   // Build and set the batch process.
   $batch = locale_translation_batch_status_build($projects, $langcodes);
   batch_set($batch);
@@ -231,21 +231,21 @@ function locale_translation_check_projects_batch($projects = array(), $langcodes
  * @return array
  *   Batch definition array.
  */
-function locale_translation_batch_status_build($projects = array(), $langcodes = array()) {
+function locale_translation_batch_status_build($projects = [], $langcodes = []) {
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
   $options = _locale_translation_default_update_options();
 
   $operations = _locale_translation_batch_status_operations($projects, $langcodes, $options);
 
-  $batch = array(
+  $batch = [
     'operations' => $operations,
     'title' => t('Checking translations'),
     'progress_message' => '',
     'finished' => 'locale_translation_batch_status_finished',
     'error_message' => t('Error checking translation updates.'),
     'file' => drupal_get_path('module', 'locale') . '/locale.batch.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -263,13 +263,13 @@ function locale_translation_batch_status_build($projects = array(), $langcodes =
  * @return array
  *   Array of batch operations.
  */
-function _locale_translation_batch_status_operations($projects, $langcodes, $options = array()) {
-  $operations = array();
+function _locale_translation_batch_status_operations($projects, $langcodes, $options = []) {
+  $operations = [];
 
   foreach ($projects as $project) {
     foreach ($langcodes as $langcode) {
       // Check status of local and remote translation sources.
-      $operations[] = array('locale_translation_batch_status_check', array($project, $langcode, $options));
+      $operations[] = ['locale_translation_batch_status_check', [$project, $langcode, $options]];
     }
   }
 
@@ -295,7 +295,7 @@ function _locale_translation_batch_status_operations($projects, $langcodes, $opt
  * @param array $langcodes
  *   Array of language codes. Defaults to all translatable languages.
  */
-function locale_translation_check_projects_local($projects = array(), $langcodes = array()) {
+function locale_translation_check_projects_local($projects = [], $langcodes = []) {
   $projects = locale_translation_get_projects($projects);
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
 
diff --git a/core/modules/locale/locale.fetch.inc b/core/modules/locale/locale.fetch.inc
index 32796a2..1de6934 100644
--- a/core/modules/locale/locale.fetch.inc
+++ b/core/modules/locale/locale.fetch.inc
@@ -26,7 +26,7 @@
  * @return array
  *   Batch definition array.
  */
-function locale_translation_batch_update_build($projects = array(), $langcodes = array(), $options = array()) {
+function locale_translation_batch_update_build($projects = [], $langcodes = [], $options = []) {
   module_load_include('compare.inc', 'locale');
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
@@ -38,14 +38,14 @@ function locale_translation_batch_update_build($projects = array(), $langcodes =
   // Download and import translations.
   $operations = array_merge($operations, _locale_translation_fetch_operations($projects, $langcodes, $options));
 
-  $batch = array(
+  $batch = [
     'operations' => $operations,
     'title' => t('Updating translations'),
     'progress_message' => '',
     'error_message' => t('Error importing translation files'),
     'finished' => 'locale_translation_batch_fetch_finished',
     'file' => drupal_get_path('module', 'locale') . '/locale.batch.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -63,18 +63,18 @@ function locale_translation_batch_update_build($projects = array(), $langcodes =
  * @return array
  *   Batch definition array.
  */
-function locale_translation_batch_fetch_build($projects = array(), $langcodes = array(), $options = array()) {
+function locale_translation_batch_fetch_build($projects = [], $langcodes = [], $options = []) {
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
 
-  $batch = array(
+  $batch = [
     'operations' => _locale_translation_fetch_operations($projects, $langcodes, $options),
     'title' => t('Updating translations.'),
     'progress_message' => '',
     'error_message' => t('Error importing translation files'),
     'finished' => 'locale_translation_batch_fetch_finished',
     'file' => drupal_get_path('module', 'locale') . '/locale.batch.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -93,14 +93,14 @@ function locale_translation_batch_fetch_build($projects = array(), $langcodes =
  *   Array of batch operations.
  */
 function _locale_translation_fetch_operations($projects, $langcodes, $options) {
-  $operations = array();
+  $operations = [];
 
   foreach ($projects as $project) {
     foreach ($langcodes as $langcode) {
       if (locale_translation_use_remote_source()) {
-        $operations[] = array('locale_translation_batch_fetch_download', array($project, $langcode));
+        $operations[] = ['locale_translation_batch_fetch_download', [$project, $langcode]];
       }
-      $operations[] = array('locale_translation_batch_fetch_import', array($project, $langcode, $options));
+      $operations[] = ['locale_translation_batch_fetch_import', [$project, $langcode, $options]];
     }
   }
 
diff --git a/core/modules/locale/locale.install b/core/modules/locale/locale.install
index a66a533..f225a62 100644
--- a/core/modules/locale/locale.install
+++ b/core/modules/locale/locale.install
@@ -29,7 +29,7 @@ function locale_uninstall() {
   $locale_js_directory = 'public://' . $config->get('javascript.directory');
 
   if (is_dir($locale_js_directory)) {
-    $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: array();
+    $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: [];
     foreach ($locale_javascripts as $langcode => $file_suffix) {
       if (!empty($file_suffix)) {
         file_unmanaged_delete($locale_js_directory . '/' . $langcode . '_' . $file_suffix . '.js');
@@ -51,183 +51,183 @@ function locale_uninstall() {
  * Implements hook_schema().
  */
 function locale_schema() {
-  $schema['locales_source'] = array(
+  $schema['locales_source'] = [
     'description' => 'List of English source strings.',
-    'fields' => array(
-      'lid' => array(
+    'fields' => [
+      'lid' => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Unique identifier of this string.',
-      ),
-      'source' => array(
+      ],
+      'source' => [
         'type' => 'text',
         'mysql_type' => 'blob',
         'not null' => TRUE,
         'description' => 'The original string in English.',
-      ),
-      'context' => array(
+      ],
+      'context' => [
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'The context this string applies to.',
-      ),
-      'version' => array(
+      ],
+      'version' => [
         'type' => 'varchar_ascii',
         'length' => 20,
         'not null' => TRUE,
         'default' => 'none',
         'description' => 'Version of Drupal where the string was last used (for locales optimization).',
-      ),
-    ),
-    'primary key' => array('lid'),
-    'indexes' => array(
-      'source_context' => array(array('source', 30), 'context'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['lid'],
+    'indexes' => [
+      'source_context' => [['source', 30], 'context'],
+    ],
+  ];
 
-  $schema['locales_target'] = array(
+  $schema['locales_target'] = [
     'description' => 'Stores translated versions of strings.',
-    'fields' => array(
-      'lid' => array(
+    'fields' => [
+      'lid' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Source string ID. References {locales_source}.lid.',
-      ),
-      'translation' => array(
+      ],
+      'translation' => [
         'type' => 'text',
         'mysql_type' => 'blob',
         'not null' => TRUE,
         'description' => 'Translation string value in this language.',
-      ),
-      'language' => array(
+      ],
+      'language' => [
         'type' => 'varchar_ascii',
         'length' => 12,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Language code. References {language}.langcode.',
-      ),
-      'customized' => array(
+      ],
+      'customized' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0, // LOCALE_NOT_CUSTOMIZED
         'description' => 'Boolean indicating whether the translation is custom to this site.',
-      ),
-    ),
-    'primary key' => array('language', 'lid'),
-    'foreign keys' => array(
-      'locales_source' => array(
+      ],
+    ],
+    'primary key' => ['language', 'lid'],
+    'foreign keys' => [
+      'locales_source' => [
         'table' => 'locales_source',
-        'columns' => array('lid' => 'lid'),
-      ),
-    ),
-    'indexes' => array(
-      'lid' => array('lid'),
-    ),
-  );
+        'columns' => ['lid' => 'lid'],
+      ],
+    ],
+    'indexes' => [
+      'lid' => ['lid'],
+    ],
+  ];
 
-  $schema['locales_location'] = array(
+  $schema['locales_location'] = [
     'description' => 'Location information for source strings.',
-    'fields' => array(
-      'lid' => array(
+    'fields' => [
+      'lid' => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Unique identifier of this location.',
-      ),
-      'sid' => array(
+      ],
+      'sid' => [
         'type' => 'int',
         'not null' => TRUE,
         'description' => 'Unique identifier of this string.',
-      ),
-      'type' => array(
+      ],
+      'type' => [
         'type' => 'varchar_ascii',
         'length' => 50,
         'not null' => TRUE,
         'default' => '',
         'description' => 'The location type (file, config, path, etc).',
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Type dependent location information (file name, path, etc).',
-      ),
-      'version' => array(
+      ],
+      'version' => [
         'type' => 'varchar_ascii',
         'length' => 20,
         'not null' => TRUE,
         'default' => 'none',
         'description' => 'Version of Drupal where the location was found.',
-      ),
-    ),
-    'primary key' => array('lid'),
-    'foreign keys' => array(
-      'locales_source' => array(
+      ],
+    ],
+    'primary key' => ['lid'],
+    'foreign keys' => [
+      'locales_source' => [
         'table' => 'locales_source',
-        'columns' => array('sid' => 'lid'),
-      ),
-    ),
-    'indexes' => array(
-      'string_id' => array('sid'),
-      'string_type' => array('sid', 'type'),
-    ),
-  );
+        'columns' => ['sid' => 'lid'],
+      ],
+    ],
+    'indexes' => [
+      'string_id' => ['sid'],
+      'string_type' => ['sid', 'type'],
+    ],
+  ];
 
-  $schema['locale_file'] = array(
+  $schema['locale_file'] = [
     'description' => 'File import status information for interface translation files.',
-    'fields' => array(
-      'project' => array(
+    'fields' => [
+      'project' => [
         'type' => 'varchar_ascii',
         'length' => '255',
         'not null' => TRUE,
         'default' => '',
         'description' => 'A unique short name to identify the project the file belongs to.',
-      ),
-      'langcode' => array(
+      ],
+      'langcode' => [
         'type' => 'varchar_ascii',
         'length' => '12',
         'not null' => TRUE,
         'default' => '',
         'description' => 'Language code of this translation. References {language}.langcode.',
-      ),
-      'filename' => array(
+      ],
+      'filename' => [
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Filename of the imported file.',
-      ),
-      'version' => array(
+      ],
+      'version' => [
         'type' => 'varchar',
         'length' => '128',
         'not null' => TRUE,
         'default' => '',
         'description' => 'Version tag of the imported file.',
-      ),
-      'uri' => array(
+      ],
+      'uri' => [
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'URI of the remote file, the resulting local file or the locally imported file.',
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'type' => 'int',
         'not null' => FALSE,
         'default' => 0,
         'description' => 'Unix timestamp of the imported file.',
-      ),
-      'last_checked' => array(
+      ],
+      'last_checked' => [
         'type' => 'int',
         'not null' => FALSE,
         'default' => 0,
         'description' => 'Unix timestamp of the last time this translation was confirmed to be the most recent release available.',
-      ),
-    ),
-    'primary key' => array('project', 'langcode'),
-  );
+      ],
+    ],
+    'primary key' => ['project', 'langcode'],
+  ];
   return $schema;
 }
 
@@ -235,10 +235,10 @@ function locale_schema() {
  * Implements hook_requirements().
  */
 function locale_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
   if ($phase == 'runtime') {
-    $available_updates = array();
-    $untranslated = array();
+    $available_updates = [];
+    $untranslated = [];
     $languages = locale_translatable_language_list();
 
     if ($languages) {
@@ -258,37 +258,37 @@ function locale_requirements($phase) {
 
         if ($available_updates || $untranslated) {
           if ($available_updates) {
-            $requirements['locale_translation'] = array(
+            $requirements['locale_translation'] = [
               'title' => 'Translation update status',
               'value' => \Drupal::l(t('Updates available'), new Url('locale.translate_status')),
               'severity' => REQUIREMENT_WARNING,
-              'description' => t('Updates available for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', array('@languages' => implode(', ', $available_updates), ':updates' => \Drupal::url('locale.translate_status'))),
-            );
+              'description' => t('Updates available for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', ['@languages' => implode(', ', $available_updates), ':updates' => \Drupal::url('locale.translate_status')]),
+            ];
           }
           else {
-            $requirements['locale_translation'] = array(
+            $requirements['locale_translation'] = [
               'title' => 'Translation update status',
               'value' => t('Missing translations'),
               'severity' => REQUIREMENT_INFO,
-              'description' => t('Missing translations for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', array('@languages' => implode(', ', $untranslated), ':updates' => \Drupal::url('locale.translate_status'))),
-            );
+              'description' => t('Missing translations for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', ['@languages' => implode(', ', $untranslated), ':updates' => \Drupal::url('locale.translate_status')]),
+            ];
           }
         }
         else {
-          $requirements['locale_translation'] = array(
+          $requirements['locale_translation'] = [
             'title' => 'Translation update status',
             'value' => t('Up to date'),
             'severity' => REQUIREMENT_OK,
-          );
+          ];
         }
       }
       else {
-        $requirements['locale_translation'] = array(
+        $requirements['locale_translation'] = [
           'title' => 'Translation update status',
           'value' => \Drupal::l(t('Can not determine status'), new Url('locale.translate_status')),
           'severity' => REQUIREMENT_WARNING,
-          'description' => t('No translation status is available. See the <a href=":updates">Available translation updates</a> page for more information.', array(':updates' => \Drupal::url('locale.translate_status'))),
-        );
+          'description' => t('No translation status is available. See the <a href=":updates">Available translation updates</a> page for more information.', [':updates' => \Drupal::url('locale.translate_status')]),
+        ];
       }
     }
   }
diff --git a/core/modules/locale/locale.module b/core/modules/locale/locale.module
index 5b59faa..b1298e4 100644
--- a/core/modules/locale/locale.module
+++ b/core/modules/locale/locale.module
@@ -146,30 +146,30 @@ function locale_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.locale':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Interface Translation module allows you to translate interface text (<em>strings</em>) into different languages, and to switch between them for the display of interface text. It uses the functionality provided by the <a href=":language">Language module</a>. For more information, see the <a href=":doc-url">online documentation for the Interface Translation module</a>.', array(':doc-url' => 'https://www.drupal.org/documentation/modules/locale/', ':language' => \Drupal::url('help.page', array('name' => 'language')))) . '</p>';
+      $output .= '<p>' . t('The Interface Translation module allows you to translate interface text (<em>strings</em>) into different languages, and to switch between them for the display of interface text. It uses the functionality provided by the <a href=":language">Language module</a>. For more information, see the <a href=":doc-url">online documentation for the Interface Translation module</a>.', [':doc-url' => 'https://www.drupal.org/documentation/modules/locale/', ':language' => \Drupal::url('help.page', ['name' => 'language'])]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Importing translation files') . '</dt>';
-      $output .= '<dd>' . t('Translation files with translated interface text are imported automatically when languages are added on the <a href=":languages">Languages</a> page, or when modules or themes are enabled. On the <a href=":locale-settings">Interface translation settings</a> page, the <em>Translation source</em> can be restricted to local files only, or to include the <a href=":server">Drupal translation server</a>. Although modules and themes may not be fully translated in all languages, new translations become available frequently. You can specify whether and how often to check for translation file updates and whether to overwrite existing translations on the <a href=":locale-settings">Interface translation settings</a> page. You can also manually import a translation file on the <a href=":import">Interface translation import</a> page.', array(':import' => \Drupal::url('locale.translate_import'), ':locale-settings' => \Drupal::url('locale.settings'), ':languages' => \Drupal::url('entity.configurable_language.collection'), ':server' => 'https://localize.drupal.org')) . '</dd>';
+      $output .= '<dd>' . t('Translation files with translated interface text are imported automatically when languages are added on the <a href=":languages">Languages</a> page, or when modules or themes are enabled. On the <a href=":locale-settings">Interface translation settings</a> page, the <em>Translation source</em> can be restricted to local files only, or to include the <a href=":server">Drupal translation server</a>. Although modules and themes may not be fully translated in all languages, new translations become available frequently. You can specify whether and how often to check for translation file updates and whether to overwrite existing translations on the <a href=":locale-settings">Interface translation settings</a> page. You can also manually import a translation file on the <a href=":import">Interface translation import</a> page.', [':import' => \Drupal::url('locale.translate_import'), ':locale-settings' => \Drupal::url('locale.settings'), ':languages' => \Drupal::url('entity.configurable_language.collection'), ':server' => 'https://localize.drupal.org']) . '</dd>';
       $output .= '<dt>' . t('Checking the translation status') . '</dt>';
-      $output .= '<dd>' . t('You can check how much of the interface on your site is translated into which language on the <a href=":languages">Languages</a> page. On the <a href=":translation-updates">Available translation updates</a> page, you can check whether interface translation updates are available on the <a href=":server">Drupal translation server</a>.', array(':languages' => \Drupal::url('entity.configurable_language.collection'), ':translation-updates' => \Drupal::url('locale.translate_status'), ':server' => 'https://localize.drupal.org')) . '<dd>';
+      $output .= '<dd>' . t('You can check how much of the interface on your site is translated into which language on the <a href=":languages">Languages</a> page. On the <a href=":translation-updates">Available translation updates</a> page, you can check whether interface translation updates are available on the <a href=":server">Drupal translation server</a>.', [':languages' => \Drupal::url('entity.configurable_language.collection'), ':translation-updates' => \Drupal::url('locale.translate_status'), ':server' => 'https://localize.drupal.org']) . '<dd>';
       $output .= '<dt>' . t('Translating individual strings') . '</dt>';
-      $output .= '<dd>' . t('You can translate individual strings directly on the <a href=":translate">User interface translation</a> page, or download the currently-used translation file for a specific language on the <a href=":export">Interface translation export</a> page. Once you have edited the translation file, you can then import it again on the <a href=":import">Interface translation import</a> page.', array(':translate' => \Drupal::url('locale.translate_page'), ':export' => \Drupal::url('locale.translate_export'), ':import' => \Drupal::url('locale.translate_import'))) . '</dd>';
+      $output .= '<dd>' . t('You can translate individual strings directly on the <a href=":translate">User interface translation</a> page, or download the currently-used translation file for a specific language on the <a href=":export">Interface translation export</a> page. Once you have edited the translation file, you can then import it again on the <a href=":import">Interface translation import</a> page.', [':translate' => \Drupal::url('locale.translate_page'), ':export' => \Drupal::url('locale.translate_export'), ':import' => \Drupal::url('locale.translate_import')]) . '</dd>';
       $output .= '<dt>' . t('Overriding default English strings') . '</dt>';
-      $output .= '<dd>' . t('If translation is enabled for English, you can <em>override</em> the default English interface text strings in your site with other English text strings on the <a href=":translate">User interface translation</a> page. Translation is off by default for English, but you can turn it on by visiting the <em>Edit language</em> page for <em>English</em> from the <a href=":languages">Languages</a> page.', array(':translate' => \Drupal::url('locale.translate_page'), ':languages' => \Drupal::url('entity.configurable_language.collection'))) . '</dd>';
+      $output .= '<dd>' . t('If translation is enabled for English, you can <em>override</em> the default English interface text strings in your site with other English text strings on the <a href=":translate">User interface translation</a> page. Translation is off by default for English, but you can turn it on by visiting the <em>Edit language</em> page for <em>English</em> from the <a href=":languages">Languages</a> page.', [':translate' => \Drupal::url('locale.translate_page'), ':languages' => \Drupal::url('entity.configurable_language.collection')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
     case 'entity.configurable_language.collection':
-      return '<p>' . t('Interface translations are automatically imported when a language is added, or when new modules or themes are enabled. The report <a href=":update">Available translation updates</a> shows the status. Interface text can be customized in the <a href=":translate">user interface translation</a> page.', array(':update' => \Drupal::url('locale.translate_status'), ':translate' => \Drupal::url('locale.translate_page'))) . '</p>';
+      return '<p>' . t('Interface translations are automatically imported when a language is added, or when new modules or themes are enabled. The report <a href=":update">Available translation updates</a> shows the status. Interface text can be customized in the <a href=":translate">user interface translation</a> page.', [':update' => \Drupal::url('locale.translate_status'), ':translate' => \Drupal::url('locale.translate_page')]) . '</p>';
 
     case 'locale.translate_page':
-      $output = '<p>' . t('This page allows a translator to search for specific translated and untranslated strings, and is used when creating or editing translations. (Note: Because translation tasks involve many strings, it may be more convenient to <a title="User interface translation export" href=":export">export</a> strings for offline editing in a desktop Gettext translation editor.) Searches may be limited to strings in a specific language.', array(':export' => \Drupal::url('locale.translate_export'))) . '</p>';
+      $output = '<p>' . t('This page allows a translator to search for specific translated and untranslated strings, and is used when creating or editing translations. (Note: Because translation tasks involve many strings, it may be more convenient to <a title="User interface translation export" href=":export">export</a> strings for offline editing in a desktop Gettext translation editor.) Searches may be limited to strings in a specific language.', [':export' => \Drupal::url('locale.translate_export')]) . '</p>';
       return $output;
 
     case 'locale.translate_import':
-      $output = '<p>' . t('Translation files are automatically downloaded and imported when <a title="Languages" href=":language">languages</a> are added, or when modules or themes are enabled.', array(':language' => \Drupal::url('entity.configurable_language.collection'))) . '</p>';
-      $output .= '<p>' . t('This page allows translators to manually import translated strings contained in a Gettext Portable Object (.po) file. Manual import may be used for customized translations or for the translation of custom modules and themes. To customize translations you can download a translation file from the <a href=":url">Drupal translation server</a> or <a title="User interface translation export" href=":export">export</a> translations from the site, customize the translations using a Gettext translation editor, and import the result using this page.', array(':url' => 'https://localize.drupal.org', ':export' => \Drupal::url('locale.translate_export'))) . '</p>';
+      $output = '<p>' . t('Translation files are automatically downloaded and imported when <a title="Languages" href=":language">languages</a> are added, or when modules or themes are enabled.', [':language' => \Drupal::url('entity.configurable_language.collection')]) . '</p>';
+      $output .= '<p>' . t('This page allows translators to manually import translated strings contained in a Gettext Portable Object (.po) file. Manual import may be used for customized translations or for the translation of custom modules and themes. To customize translations you can download a translation file from the <a href=":url">Drupal translation server</a> or <a title="User interface translation export" href=":export">export</a> translations from the site, customize the translations using a Gettext translation editor, and import the result using this page.', [':url' => 'https://localize.drupal.org', ':export' => \Drupal::url('locale.translate_export')]) . '</p>';
       $output .= '<p>' . t('Note that importing large .po files may take several minutes.') . '</p>';
       return $output;
 
@@ -182,16 +182,16 @@ function locale_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function locale_theme() {
-  return array(
-    'locale_translation_last_check' => array(
-      'variables' => array('last' => NULL),
+  return [
+    'locale_translation_last_check' => [
+      'variables' => ['last' => NULL],
       'file' => 'locale.pages.inc',
-    ),
-    'locale_translation_update_info' => array(
-      'variables' => array('updates' => array(), 'not_found' => array()),
+    ],
+    'locale_translation_update_info' => [
+      'variables' => ['updates' => [], 'not_found' => []],
       'file' => 'locale.pages.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -223,11 +223,11 @@ function locale_configurable_language_update(ConfigurableLanguageInterface $lang
  */
 function locale_configurable_language_delete(ConfigurableLanguageInterface $language) {
   // Remove translations.
-  \Drupal::service('locale.storage')->deleteTranslations(array('language' => $language->id()));
+  \Drupal::service('locale.storage')->deleteTranslations(['language' => $language->id()]);
 
   // Remove interface translation files.
   module_load_include('inc', 'locale', 'locale.bulk');
-  locale_translate_delete_translation_files(array(), array($language->id()));
+  locale_translate_delete_translation_files([], [$language->id()]);
 
   // Remove translated configuration objects.
   Locale::config()->deleteLanguageTranslations($language->id());
@@ -237,7 +237,7 @@ function locale_configurable_language_delete(ConfigurableLanguageInterface $lang
   \Drupal::cache('render')->deleteAll();
 
   // Clear locale translation caches.
-  locale_translation_status_delete_languages(array($language->id()));
+  locale_translation_status_delete_languages([$language->id()]);
   \Drupal::cache()->delete('locale:' . $language->id());
 }
 
@@ -277,7 +277,7 @@ function locale_get_plural($count, $langcode = NULL) {
 
   // Used to store precomputed plural indexes corresponding to numbers
   // individually for each language.
-  $plural_indexes = &drupal_static(__FUNCTION__ . ':plurals', array());
+  $plural_indexes = &drupal_static(__FUNCTION__ . ':plurals', []);
 
   $langcode = $langcode ? $langcode : $language_interface->getId();
 
@@ -323,7 +323,7 @@ function locale_modules_installed($modules) {
  * Implements hook_module_preuninstall().
  */
 function locale_module_preuninstall($module) {
-  $components['module'] = array($module);
+  $components['module'] = [$module];
   locale_system_remove($components);
 }
 
@@ -399,7 +399,7 @@ function locale_system_set_config_langcodes() {
  *   translations for, indexed by type.
  */
 function locale_system_update(array $components) {
-  $components += array('module' => array(), 'theme' => array());
+  $components += ['module' => [], 'theme' => []];
   $list = array_merge($components['module'], $components['theme']);
 
   // Skip running the translation imports if in the installer,
@@ -446,7 +446,7 @@ function locale_system_update(array $components) {
  *   translations for, indexed by type.
  */
 function locale_system_remove($components) {
-  $components += array('module' => array(), 'theme' => array());
+  $components += ['module' => [], 'theme' => []];
   $list = array_merge($components['module'], $components['theme']);
   if ($language_list = locale_translatable_language_list()) {
     module_load_include('compare.inc', 'locale');
@@ -460,7 +460,7 @@ function locale_system_remove($components) {
       locale_translation_file_history_delete($list);
 
       // Remove translation files.
-      locale_translate_delete_translation_files($list, array());
+      locale_translate_delete_translation_files($list, []);
 
       // Remove translatable projects.
       // Follow-up issue https://www.drupal.org/node/1842362 to replace the
@@ -486,7 +486,7 @@ function locale_cache_flush() {
  */
 function locale_js_alter(&$javascript, AttachedAssetsInterface $assets) {
   // @todo Remove this in https://www.drupal.org/node/2421323.
-  $files = array();
+  $files = [];
   foreach ($javascript as $item) {
     if (isset($item['type']) && $item['type'] == 'file') {
       // Ignore the JS translation placeholder file.
@@ -529,11 +529,11 @@ function locale_js_alter(&$javascript, AttachedAssetsInterface $assets) {
  *   The filepath to the translation file or NULL if no translation is
  *   applicable.
  */
-function locale_js_translate(array $files = array()) {
+function locale_js_translate(array $files = []) {
   $language_interface = \Drupal::languageManager()->getCurrentLanguage();
 
   $dir = 'public://' . \Drupal::config('locale.settings')->get('javascript.directory');
-  $parsed = \Drupal::state()->get('system.javascript_parsed') ?: array();
+  $parsed = \Drupal::state()->get('system.javascript_parsed') ?: [];
   $new_files = FALSE;
 
   foreach ($files as $filepath) {
@@ -571,7 +571,7 @@ function locale_js_translate(array $files = array()) {
   }
 
   // Add the translation JavaScript file to the page.
-  $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: array();
+  $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: [];
   $translation_file = NULL;
   if (!empty($files) && !empty($locale_javascripts[$language_interface->getId()])) {
     // Add the translation JavaScript file to the page.
@@ -624,7 +624,7 @@ function locale_form_language_admin_overview_form_alter(&$form, FormStateInterfa
   $languages = $form['languages']['#languages'];
 
   $total_strings = \Drupal::service('locale.storage')->countStrings();
-  $stats = array_fill_keys(array_keys($languages), array());
+  $stats = array_fill_keys(array_keys($languages), []);
 
   // If we have source strings, count translations and calculate progress.
   if (!empty($total_strings)) {
@@ -640,26 +640,26 @@ function locale_form_language_admin_overview_form_alter(&$form, FormStateInterfa
   array_splice($form['languages']['#header'], -1, 0, ['translation-interface' => t('Interface translation')]);
 
   foreach ($languages as $langcode => $language) {
-    $stats[$langcode] += array(
+    $stats[$langcode] += [
       'translated' => 0,
       'ratio' => 0,
-    );
+    ];
     if (!$language->isLocked() && locale_is_translatable($langcode)) {
-      $form['languages'][$langcode]['locale_statistics'] = array(
+      $form['languages'][$langcode]['locale_statistics'] = [
         '#markup' => \Drupal::l(
-          t('@translated/@total (@ratio%)', array(
+          t('@translated/@total (@ratio%)', [
             '@translated' => $stats[$langcode]['translated'],
             '@total' => $total_strings,
             '@ratio' => $stats[$langcode]['ratio'],
-          )),
-          new Url('locale.translate_page', array(), array('query' => array('langcode' => $langcode)))
+          ]),
+          new Url('locale.translate_page', [], ['query' => ['langcode' => $langcode]])
         ),
-      );
+      ];
     }
     else {
-      $form['languages'][$langcode]['locale_statistics'] = array(
+      $form['languages'][$langcode]['locale_statistics'] = [
         '#markup' => t('not applicable'),
-      );
+      ];
     }
     // #type = link doesn't work with #weight on table.
     // reset and set it back after locale_statistics to get it at the right end.
@@ -695,7 +695,7 @@ function locale_form_language_admin_add_form_alter_submit($form, FormStateInterf
 
   if (\Drupal::config('locale.settings')->get('translation.import_enabled')) {
     // Download and import translations for the newly added language.
-    $batch = locale_translation_batch_update_build(array(), array($langcode), $options);
+    $batch = locale_translation_batch_update_build([], [$langcode], $options);
     batch_set($batch);
   }
 
@@ -704,7 +704,7 @@ function locale_form_language_admin_add_form_alter_submit($form, FormStateInterf
   // because then we extract English sources from shipped configuration.
   if (\Drupal::config('locale.settings')->get('translation.import_enabled') || $langcode == 'en') {
     \Drupal::moduleHandler()->loadInclude('locale', 'bulk.inc');
-    if ($batch = locale_config_batch_update_components($options, array($langcode))) {
+    if ($batch = locale_config_batch_update_components($options, [$langcode])) {
       batch_set($batch);
     }
   }
@@ -715,11 +715,11 @@ function locale_form_language_admin_add_form_alter_submit($form, FormStateInterf
  */
 function locale_form_language_admin_edit_form_alter(&$form, FormStateInterface $form_state) {
   if ($form['langcode']['#type'] == 'value' && $form['langcode']['#value'] == 'en') {
-    $form['locale_translate_english'] = array(
+    $form['locale_translate_english'] = [
       '#title' => t('Enable interface translation to English'),
       '#type' => 'checkbox',
       '#default_value' => \Drupal::configFactory()->getEditable('locale.settings')->get('translate_english'),
-    );
+    ];
     $form['actions']['submit']['#submit'][] = 'locale_form_language_admin_edit_form_alter_submit';
   }
 }
@@ -750,16 +750,16 @@ function locale_is_translatable($langcode) {
  * Add interface translation directory setting to directories configuration.
  */
 function locale_form_system_file_system_settings_alter(&$form, FormStateInterface $form_state) {
-  $form['translation_path'] = array(
+  $form['translation_path'] = [
     '#type' => 'textfield',
     '#title' => t('Interface translations directory'),
     '#default_value' => \Drupal::configFactory()->getEditable('locale.settings')->get('translation.path'),
     '#maxlength' => 255,
     '#description' => t('A local file system path where interface translation files will be stored.'),
     '#required' => TRUE,
-    '#after_build' => array('system_check_directory'),
+    '#after_build' => ['system_check_directory'],
     '#weight' => 10,
-  );
+  ];
   if ($form['file_default_scheme']) {
     $form['file_default_scheme']['#weight'] = 20;
   }
@@ -814,7 +814,7 @@ function locale_preprocess_node(&$variables) {
  *   Array of translation file objects.
  */
 function locale_translation_get_file_history() {
-  $history = &drupal_static(__FUNCTION__, array());
+  $history = &drupal_static(__FUNCTION__, []);
 
   if (empty($history)) {
     // Get file history from the database.
@@ -838,15 +838,15 @@ function locale_translation_get_file_history() {
  */
 function locale_translation_update_file_history($file) {
   $status = db_merge('locale_file')
-    ->key(array(
+    ->key([
       'project' => $file->project,
       'langcode' => $file->langcode,
-    ))
-    ->fields(array(
+    ])
+    ->fields([
       'version' => $file->version,
       'timestamp' => $file->timestamp,
       'last_checked' => $file->last_checked,
-    ))
+    ])
     ->execute();
   // The file history has changed, flush the static cache now.
   // @todo Can we make this more fine grained?
@@ -863,7 +863,7 @@ function locale_translation_update_file_history($file) {
  * @param array $langcodes
  *   Language code(s) to be deleted from the file history.
  */
-function locale_translation_file_history_delete($projects = array(), $langcodes = array()) {
+function locale_translation_file_history_delete($projects = [], $langcodes = []) {
   $query = db_delete('locale_file');
   if (!empty($projects)) {
     $query->condition('project', $projects, 'IN');
@@ -880,7 +880,7 @@ function locale_translation_file_history_delete($projects = array(), $langcodes
  * @todo What is 'translation status'?
  */
 function locale_translation_get_status($projects = NULL, $langcodes = NULL) {
-  $result = array();
+  $result = [];
   $status = \Drupal::keyValue('locale.translation_status')->getAll();
   module_load_include('translation.inc', 'locale');
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
@@ -894,7 +894,7 @@ function locale_translation_get_status($projects = NULL, $langcodes = NULL) {
         $result[$project][$langcode] = $status[$project][$langcode];
       }
       else {
-        $sources = locale_translation_build_sources(array($project), array($langcode));
+        $sources = locale_translation_build_sources([$project], [$langcode]);
         if (isset($sources[$project][$langcode])) {
           $result[$project][$langcode] = $sources[$project][$langcode];
         }
@@ -921,7 +921,7 @@ function locale_translation_status_save($project, $langcode, $type, $data) {
   module_load_include('translation.inc', 'locale');
   $status = locale_translation_get_status();
   if (empty($status)) {
-    $projects = locale_translation_get_projects(array($project));
+    $projects = locale_translation_get_projects([$project]);
     if (isset($projects[$project])) {
       $status[$project][$langcode] = locale_translation_source_build($projects[$project], $langcode);
     }
@@ -1049,7 +1049,7 @@ function locale_string_is_safe($string) {
   //   string. https://www.drupal.org/node/2372127
   $string = preg_replace('/\[[a-z0-9_-]+(:[a-z0-9_-]+)+\]/i', '', $string);
 
-  return Html::decodeEntities($string) == Html::decodeEntities(Xss::filter($string, array('a', 'abbr', 'acronym', 'address', 'b', 'bdo', 'big', 'blockquote', 'br', 'caption', 'cite', 'code', 'col', 'colgroup', 'dd', 'del', 'dfn', 'dl', 'dt', 'em', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hr', 'i', 'ins', 'kbd', 'li', 'ol', 'p', 'pre', 'q', 'samp', 'small', 'span', 'strong', 'sub', 'sup', 'table', 'tbody', 'td', 'tfoot', 'th', 'thead', 'tr', 'tt', 'ul', 'var')));
+  return Html::decodeEntities($string) == Html::decodeEntities(Xss::filter($string, ['a', 'abbr', 'acronym', 'address', 'b', 'bdo', 'big', 'blockquote', 'br', 'caption', 'cite', 'code', 'col', 'colgroup', 'dd', 'del', 'dfn', 'dl', 'dt', 'em', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'hr', 'i', 'ins', 'kbd', 'li', 'ol', 'p', 'pre', 'q', 'samp', 'small', 'span', 'strong', 'sub', 'sup', 'table', 'tbody', 'td', 'tfoot', 'th', 'thead', 'tr', 'tt', 'ul', 'var']));
 }
 
 /**
@@ -1066,11 +1066,11 @@ function locale_string_is_safe($string) {
  *   (optional) List of string identifiers that have been updated / created.
  *   If not provided, all caches for the affected languages are cleared.
  */
-function _locale_refresh_translations($langcodes, $lids = array()) {
+function _locale_refresh_translations($langcodes, $lids = []) {
   if (!empty($langcodes)) {
     // Update javascript translations if any of the strings has a javascript
     // location, or if no string ids were provided, update all languages.
-    if (empty($lids) || ($strings = \Drupal::service('locale.storage')->getStrings(array('lid' => $lids, 'type' => 'javascript')))) {
+    if (empty($lids) || ($strings = \Drupal::service('locale.storage')->getStrings(['lid' => $lids, 'type' => 'javascript']))) {
       array_map('_locale_invalidate_js', $langcodes);
     }
   }
@@ -1175,22 +1175,22 @@ function _locale_parse_js_file($filepath) {
     [,\)]
     ~sx', $file, $plural_matches);
 
-  $matches = array();
+  $matches = [];
 
   // Add strings from Drupal.t().
   foreach ($t_matches[1] as $key => $string) {
-    $matches[] = array(
+    $matches[] = [
       'source'  => _locale_strip_quotes($string),
       'context' => _locale_strip_quotes($t_matches[2][$key]),
-    );
+    ];
   }
 
   // Add string from Drupal.formatPlural().
   foreach ($plural_matches[1] as $key => $string) {
-    $matches[] = array(
+    $matches[] = [
       'source'  => _locale_strip_quotes($string) . LOCALE_PLURAL_DELIMITER . _locale_strip_quotes($plural_matches[2][$key]),
       'context' => _locale_strip_quotes($plural_matches[3][$key]),
-    );
+    ];
   }
 
   // Loop through all matches and process them.
@@ -1224,7 +1224,7 @@ function _locale_parse_js_file($filepath) {
  *   New content of the 'system.javascript_parsed' variable.
  */
 function _locale_invalidate_js($langcode = NULL) {
-  $parsed = \Drupal::state()->get('system.javascript_parsed') ?: array();
+  $parsed = \Drupal::state()->get('system.javascript_parsed') ?: [];
 
   if (empty($langcode)) {
     // Invalidate all languages.
@@ -1264,12 +1264,12 @@ function _locale_rebuild_js($langcode = NULL) {
 
   // Construct the array for JavaScript translations.
   // Only add strings with a translation to the translations array.
-  $conditions = array(
+  $conditions = [
     'type' => 'javascript',
     'language' => $language->getId(),
     'translated' => TRUE,
-  );
-  $translations = array();
+  ];
+  $translations = [];
   foreach (\Drupal::service('locale.storage')->getTranslations($conditions) as $data) {
     $translations[$data->context][$data->source] = $data->translation;
   }
@@ -1278,9 +1278,9 @@ function _locale_rebuild_js($langcode = NULL) {
   $data_hash = NULL;
   $data = $status = '';
   if (!empty($translations)) {
-    $data = array(
+    $data = [
       'strings' => $translations,
-    );
+    ];
 
     $locale_plurals = \Drupal::service('locale.plural.formula')->getFormula($language->getId());
     if ($locale_plurals) {
@@ -1297,7 +1297,7 @@ function _locale_rebuild_js($langcode = NULL) {
 
   // Delete old file, if we have no translations anymore, or a different file to
   // be saved.
-  $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: array();
+  $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: [];
   $changed_hash = !isset($locale_javascripts[$language->getId()]) || ($locale_javascripts[$language->getId()] != $data_hash);
   if (!empty($locale_javascripts[$language->getId()]) && (!$data || $changed_hash)) {
     file_unmanaged_delete($dir . '/' . $language->getId() . '_' . $locale_javascripts[$language->getId()] . '.js');
@@ -1348,24 +1348,24 @@ function _locale_rebuild_js($langcode = NULL) {
   $logger = \Drupal::logger('locale');
   switch ($status) {
     case 'updated':
-      $logger->notice('Updated JavaScript translation file for the language %language.', array('%language' => $language->getName()));
+      $logger->notice('Updated JavaScript translation file for the language %language.', ['%language' => $language->getName()]);
       return TRUE;
 
     case 'rebuilt':
-      $logger->warning('JavaScript translation file %file.js was lost.', array('%file' => $locale_javascripts[$language->getId()]));
+      $logger->warning('JavaScript translation file %file.js was lost.', ['%file' => $locale_javascripts[$language->getId()]]);
       // Proceed to the 'created' case as the JavaScript translation file has
       // been created again.
 
     case 'created':
-      $logger->notice('Created JavaScript translation file for the language %language.', array('%language' => $language->getName()));
+      $logger->notice('Created JavaScript translation file for the language %language.', ['%language' => $language->getName()]);
       return TRUE;
 
     case 'deleted':
-      $logger->notice('Removed JavaScript translation file for the language %language because no translations currently exist for that language.', array('%language' => $language->getName()));
+      $logger->notice('Removed JavaScript translation file for the language %language because no translations currently exist for that language.', ['%language' => $language->getName()]);
       return TRUE;
 
     case 'error':
-      $logger->error('An error occurred during creation of the JavaScript translation file for the language %language.', array('%language' => $language->getName()));
+      $logger->error('An error occurred during creation of the JavaScript translation file for the language %language.', ['%language' => $language->getName()]);
       return FALSE;
 
     default:
@@ -1383,7 +1383,7 @@ function locale_translation_language_table($form_element) {
   // Remove checkboxes of languages without updates.
   if ($form_element['#not_found']) {
     foreach ($form_element['#not_found'] as $langcode) {
-      $form_element[$langcode] = array();
+      $form_element[$langcode] = [];
     }
   }
   return $form_element;
diff --git a/core/modules/locale/locale.pages.inc b/core/modules/locale/locale.pages.inc
index 9b2be23..d8d7659 100644
--- a/core/modules/locale/locale.pages.inc
+++ b/core/modules/locale/locale.pages.inc
@@ -29,7 +29,7 @@ function locale_translation_manual_status() {
   if (batch_get()) {
     return batch_process('admin/reports/translations');
   }
-  return new RedirectResponse(\Drupal::url('locale.translate_status', array(), array('absolute' => TRUE)));
+  return new RedirectResponse(\Drupal::url('locale.translate_status', [], ['absolute' => TRUE]));
 }
 
 /**
@@ -72,5 +72,5 @@ function template_preprocess_locale_translation_last_check(array &$variables) {
   $last = $variables['last'];
   $variables['last_checked'] = ($last != NULL);
   $variables['time'] = \Drupal::service('date.formatter')->formatTimeDiffSince($last);
-  $variables['link'] = \Drupal::l(t('Check manually'), new Url('locale.check_translation', array(), array('query' => \Drupal::destination()->getAsArray())));
+  $variables['link'] = \Drupal::l(t('Check manually'), new Url('locale.check_translation', [], ['query' => \Drupal::destination()->getAsArray()]));
 }
diff --git a/core/modules/locale/locale.translation.inc b/core/modules/locale/locale.translation.inc
index 0383aaf..571f7d2 100644
--- a/core/modules/locale/locale.translation.inc
+++ b/core/modules/locale/locale.translation.inc
@@ -52,8 +52,8 @@
  *
  * @see locale_translation_build_projects()
  */
-function locale_translation_get_projects(array $project_names = array()) {
-  $projects = &drupal_static(__FUNCTION__, array());
+function locale_translation_get_projects(array $project_names = []) {
+  $projects = &drupal_static(__FUNCTION__, []);
 
   if (empty($projects)) {
     // Get project data from the database.
@@ -100,7 +100,7 @@ function locale_translation_clear_cache_projects() {
  * @see locale_translation_source_build()
  */
 function locale_translation_load_sources(array $projects = NULL, array $langcodes = NULL) {
-  $sources = array();
+  $sources = [];
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
 
@@ -129,8 +129,8 @@ function locale_translation_load_sources(array $projects = NULL, array $langcode
  *
  * @see locale_translation_source_build()
  */
-function locale_translation_build_sources(array $projects = array(), array $langcodes = array()) {
-  $sources = array();
+function locale_translation_build_sources(array $projects = [], array $langcodes = []) {
+  $sources = [];
   $projects = locale_translation_get_projects($projects);
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
 
@@ -173,7 +173,7 @@ function locale_translation_source_check_file($source) {
     $directory = $source_file->directory;
     $filename = '/' . preg_quote($source_file->filename) . '$/';
 
-    if ($files = file_scan_directory($directory, $filename, array('key' => 'name', 'recurse' => FALSE))) {
+    if ($files = file_scan_directory($directory, $filename, ['key' => 'name', 'recurse' => FALSE])) {
       $file = current($files);
       $source_file->uri = $file->uri;
       $source_file->timestamp = filemtime($file->uri);
@@ -244,35 +244,35 @@ function locale_translation_source_build($project, $langcode, $filename = NULL)
   // remote file. The local version of this file will only be checked if a
   // translations directory has been defined. If the server_pattern is a local
   // file path we will only check for a file in the local file system.
-  $files = array();
+  $files = [];
   if (_locale_translation_file_is_remote($source->server_pattern)) {
-    $files[LOCALE_TRANSLATION_REMOTE] = (object) array(
+    $files[LOCALE_TRANSLATION_REMOTE] = (object) [
       'project' => $project->name,
       'langcode' => $langcode,
       'version' => $project->version,
       'type' => LOCALE_TRANSLATION_REMOTE,
       'filename' => locale_translation_build_server_pattern($source, basename($source->server_pattern)),
       'uri' => locale_translation_build_server_pattern($source, $source->server_pattern),
-    );
-    $files[LOCALE_TRANSLATION_LOCAL] = (object) array(
+    ];
+    $files[LOCALE_TRANSLATION_LOCAL] = (object) [
       'project' => $project->name,
       'langcode' => $langcode,
       'version' => $project->version,
       'type' => LOCALE_TRANSLATION_LOCAL,
       'filename' => locale_translation_build_server_pattern($source, $filename),
       'directory' => 'translations://',
-    );
+    ];
     $files[LOCALE_TRANSLATION_LOCAL]->uri = $files[LOCALE_TRANSLATION_LOCAL]->directory . $files[LOCALE_TRANSLATION_LOCAL]->filename;
   }
   else {
-    $files[LOCALE_TRANSLATION_LOCAL] = (object) array(
+    $files[LOCALE_TRANSLATION_LOCAL] = (object) [
       'project' => $project->name,
       'langcode' => $langcode,
       'version' => $project->version,
       'type' => LOCALE_TRANSLATION_LOCAL,
       'filename' => locale_translation_build_server_pattern($source, basename($source->server_pattern)),
       'directory' => locale_translation_build_server_pattern($source, drupal_dirname($source->server_pattern)),
-    );
+    ];
     $files[LOCALE_TRANSLATION_LOCAL]->uri = $files[LOCALE_TRANSLATION_LOCAL]->directory . '/' . $files[LOCALE_TRANSLATION_LOCAL]->filename;
   }
   $source->files = $files;
@@ -310,12 +310,12 @@ function locale_translation_source_build($project, $langcode, $filename = NULL)
  *   String with replaced placeholders.
  */
 function locale_translation_build_server_pattern($project, $template) {
-  $variables = array(
+  $variables = [
     '%project' => $project->name,
     '%version' => $project->version,
     '%core' => $project->core,
     '%language' => isset($project->langcode) ? $project->langcode : '%language',
-  );
+  ];
   return strtr($template, $variables);
 }
 
@@ -323,7 +323,7 @@ function locale_translation_build_server_pattern($project, $template) {
  * Populate a queue with project to check for translation updates.
  */
 function locale_cron_fill_queue() {
-  $updates = array();
+  $updates = [];
   $config = \Drupal::config('locale.settings');
 
   // Determine which project+language should be updated.
@@ -335,7 +335,7 @@ function locale_cron_fill_queue() {
   $files = db_select('locale_file', 'f')
     ->condition('f.project', array_keys($projects), 'IN')
     ->condition('f.last_checked', $last, '<')
-    ->fields('f', array('project', 'langcode'))
+    ->fields('f', ['project', 'langcode'])
     ->execute()->fetchAll();
   foreach ($files as $file) {
     $updates[$file->project][] = $file->langcode;
@@ -343,7 +343,7 @@ function locale_cron_fill_queue() {
     // Update the last_checked timestamp of the project+language that will
     // be checked for updates.
     db_update('locale_file')
-      ->fields(array('last_checked' => REQUEST_TIME))
+      ->fields(['last_checked' => REQUEST_TIME])
       ->condition('project', $file->project)
       ->condition('langcode', $file->langcode)
       ->execute();
@@ -357,7 +357,7 @@ function locale_cron_fill_queue() {
     $queue = \Drupal::queue('locale_translation', TRUE);
 
     foreach ($updates as $project => $languages) {
-      $batch = locale_translation_batch_update_build(array($project), $languages, $options);
+      $batch = locale_translation_batch_update_build([$project], $languages, $options);
       foreach ($batch['operations'] as $item) {
         $queue->createItem($item);
       }
@@ -429,13 +429,13 @@ function _locale_translation_source_compare($source1, $source2) {
  */
 function _locale_translation_default_update_options() {
   $config = \Drupal::config('locale.settings');
-  return array(
+  return [
     'customized' => LOCALE_NOT_CUSTOMIZED,
-    'overwrite_options' => array(
+    'overwrite_options' => [
       'not_customized' => $config->get('translation.overwrite_not_customized'),
       'customized' => $config->get('translation.overwrite_customized'),
-    ),
+    ],
     'finish_feedback' => TRUE,
     'use_remote' => locale_translation_use_remote_source(),
-  );
+  ];
 }
diff --git a/core/modules/locale/src/Controller/LocaleController.php b/core/modules/locale/src/Controller/LocaleController.php
index 88cc6bd..2617c61 100644
--- a/core/modules/locale/src/Controller/LocaleController.php
+++ b/core/modules/locale/src/Controller/LocaleController.php
@@ -42,10 +42,10 @@ public function checkTranslation() {
    *   The render array for the string search screen.
    */
   public function translatePage() {
-    return array(
+    return [
       'filter' => $this->formBuilder()->getForm('Drupal\locale\Form\TranslateFilterForm'),
       'form' => $this->formBuilder()->getForm('Drupal\locale\Form\TranslateEditForm'),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/locale/src/Form/ExportForm.php b/core/modules/locale/src/Form/ExportForm.php
index 47a3aea..7c6f932 100644
--- a/core/modules/locale/src/Form/ExportForm.php
+++ b/core/modules/locale/src/Form/ExportForm.php
@@ -66,7 +66,7 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $languages = $this->languageManager->getLanguages();
-    $language_options = array();
+    $language_options = [];
     foreach ($languages as $langcode => $language) {
       if (locale_is_translatable($langcode)) {
         $language_options[$langcode] = $language->getName();
@@ -75,59 +75,59 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $language_default = $this->languageManager->getDefaultLanguage();
 
     if (empty($language_options)) {
-      $form['langcode'] = array(
+      $form['langcode'] = [
         '#type' => 'value',
         '#value' => LanguageInterface::LANGCODE_SYSTEM,
-      );
-      $form['langcode_text'] = array(
+      ];
+      $form['langcode_text'] = [
         '#type' => 'item',
         '#title' => $this->t('Language'),
         '#markup' => $this->t('No language available. The export will only contain source strings.'),
-      );
+      ];
     }
     else {
-      $form['langcode'] = array(
+      $form['langcode'] = [
         '#type' => 'select',
         '#title' => $this->t('Language'),
         '#options' => $language_options,
         '#default_value' => $language_default->getId(),
         '#empty_option' => $this->t('Source text only, no translations'),
         '#empty_value' => LanguageInterface::LANGCODE_SYSTEM,
-      );
-      $form['content_options'] = array(
+      ];
+      $form['content_options'] = [
         '#type' => 'details',
         '#title' => $this->t('Export options'),
         '#tree' => TRUE,
-        '#states' => array(
-          'invisible' => array(
-            ':input[name="langcode"]' => array('value' => LanguageInterface::LANGCODE_SYSTEM),
-          ),
-        ),
-      );
-      $form['content_options']['not_customized'] = array(
+        '#states' => [
+          'invisible' => [
+            ':input[name="langcode"]' => ['value' => LanguageInterface::LANGCODE_SYSTEM],
+          ],
+        ],
+      ];
+      $form['content_options']['not_customized'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Include non-customized translations'),
         '#default_value' => TRUE,
-      );
-      $form['content_options']['customized'] = array(
+      ];
+      $form['content_options']['customized'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Include customized translations'),
         '#default_value' => TRUE,
-      );
-      $form['content_options']['not_translated'] = array(
+      ];
+      $form['content_options']['not_translated'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Include untranslated text'),
         '#default_value' => TRUE,
-      );
+      ];
     }
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Export'),
-    );
+    ];
     return $form;
   }
 
@@ -142,7 +142,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     else {
       $language = NULL;
     }
-    $content_options = $form_state->getValue('content_options', array());
+    $content_options = $form_state->getValue('content_options', []);
     $reader = new PoDatabaseReader();
     $language_name = '';
     if ($language != NULL) {
diff --git a/core/modules/locale/src/Form/ImportForm.php b/core/modules/locale/src/Form/ImportForm.php
index 0ea7180..f2bd45b 100644
--- a/core/modules/locale/src/Form/ImportForm.php
+++ b/core/modules/locale/src/Form/ImportForm.php
@@ -72,7 +72,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     // Initialize a language list to the ones available, including English if we
     // are to translate Drupal to English as well.
-    $existing_languages = array();
+    $existing_languages = [];
     foreach ($languages as $langcode => $language) {
       if (locale_is_translatable($langcode)) {
         $existing_languages[$langcode] = $language->getName();
@@ -88,65 +88,65 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
     else {
       $default = key($existing_languages);
-      $language_options = array(
+      $language_options = [
         (string) $this->t('Existing languages') => $existing_languages,
         (string) $this->t('Languages not yet added') => $this->languageManager->getStandardLanguageListWithoutConfigured(),
-      );
+      ];
     }
 
-    $validators = array(
-      'file_validate_extensions' => array('po'),
-      'file_validate_size' => array(file_upload_max_size()),
-    );
-    $form['file'] = array(
+    $validators = [
+      'file_validate_extensions' => ['po'],
+      'file_validate_size' => [file_upload_max_size()],
+    ];
+    $form['file'] = [
       '#type' => 'file',
       '#title' => $this->t('Translation file'),
-      '#description' => array(
+      '#description' => [
         '#theme' => 'file_upload_help',
         '#description' => $this->t('A Gettext Portable Object file.'),
         '#upload_validators' => $validators,
-      ),
+      ],
       '#size' => 50,
       '#upload_validators' => $validators,
-      '#attributes' => array('class' => array('file-import-input')),
-    );
-    $form['langcode'] = array(
+      '#attributes' => ['class' => ['file-import-input']],
+    ];
+    $form['langcode'] = [
       '#type' => 'select',
       '#title' => $this->t('Language'),
       '#options' => $language_options,
       '#default_value' => $default,
-      '#attributes' => array('class' => array('langcode-input')),
-    );
+      '#attributes' => ['class' => ['langcode-input']],
+    ];
 
-    $form['customized'] = array(
+    $form['customized'] = [
       '#title' => $this->t('Treat imported strings as custom translations'),
       '#type' => 'checkbox',
-    );
-    $form['overwrite_options'] = array(
+    ];
+    $form['overwrite_options'] = [
       '#type' => 'container',
       '#tree' => TRUE,
-    );
-    $form['overwrite_options']['not_customized'] = array(
+    ];
+    $form['overwrite_options']['not_customized'] = [
       '#title' => $this->t('Overwrite non-customized translations'),
       '#type' => 'checkbox',
-      '#states' => array(
-        'checked' => array(
-          ':input[name="customized"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
-    $form['overwrite_options']['customized'] = array(
+      '#states' => [
+        'checked' => [
+          ':input[name="customized"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
+    $form['overwrite_options']['customized'] = [
       '#title' => $this->t('Overwrite existing customized translations'),
       '#type' => 'checkbox',
-    );
+    ];
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Import'),
-    );
+    ];
     return $form;
   }
 
@@ -172,21 +172,21 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if (empty($language)) {
       $language = ConfigurableLanguage::createFromLangcode($form_state->getValue('langcode'));
       $language->save();
-      drupal_set_message($this->t('The language %language has been created.', array('%language' => $this->t($language->label()))));
+      drupal_set_message($this->t('The language %language has been created.', ['%language' => $this->t($language->label())]));
     }
-    $options = array_merge(_locale_translation_default_update_options(), array(
+    $options = array_merge(_locale_translation_default_update_options(), [
       'langcode' => $form_state->getValue('langcode'),
       'overwrite_options' => $form_state->getValue('overwrite_options'),
       'customized' => $form_state->getValue('customized') ? LOCALE_CUSTOMIZED : LOCALE_NOT_CUSTOMIZED,
-    ));
+    ]);
     $this->moduleHandler->loadInclude('locale', 'bulk.inc');
     $file = locale_translate_file_attach_properties($this->file, $options);
-    $batch = locale_translate_batch_build(array($file->uri => $file), $options);
+    $batch = locale_translate_batch_build([$file->uri => $file], $options);
     batch_set($batch);
 
     // Create or update all configuration translations for this language.
     \Drupal::moduleHandler()->loadInclude('locale', 'bulk.inc');
-    if ($batch = locale_config_batch_update_components($options, array($form_state->getValue('langcode')))) {
+    if ($batch = locale_config_batch_update_components($options, [$form_state->getValue('langcode')])) {
       batch_set($batch);
     }
 
diff --git a/core/modules/locale/src/Form/LocaleSettingsForm.php b/core/modules/locale/src/Form/LocaleSettingsForm.php
index 9366224..e722cfb 100644
--- a/core/modules/locale/src/Form/LocaleSettingsForm.php
+++ b/core/modules/locale/src/Form/LocaleSettingsForm.php
@@ -30,35 +30,35 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('locale.settings');
 
-    $form['update_interval_days'] = array(
+    $form['update_interval_days'] = [
       '#type' => 'radios',
       '#title' => $this->t('Check for updates'),
       '#default_value' => $config->get('translation.update_interval_days'),
-      '#options' => array(
+      '#options' => [
         '0' => $this->t('Never (manually)'),
         '7' => $this->t('Weekly'),
         '30' => $this->t('Monthly'),
-      ),
-      '#description' => $this->t('Select how frequently you want to check for new interface translations for your currently installed modules and themes. <a href=":url">Check updates now</a>.', array(':url' => $this->url('locale.check_translation'))),
-    );
+      ],
+      '#description' => $this->t('Select how frequently you want to check for new interface translations for your currently installed modules and themes. <a href=":url">Check updates now</a>.', [':url' => $this->url('locale.check_translation')]),
+    ];
 
     if ($directory = $config->get('translation.path')) {
-      $description = $this->t('Translation files are stored locally in the  %path directory. You can change this directory on the <a href=":url">File system</a> configuration page.', array('%path' => $directory, ':url' => $this->url('system.file_system_settings')));
+      $description = $this->t('Translation files are stored locally in the  %path directory. You can change this directory on the <a href=":url">File system</a> configuration page.', ['%path' => $directory, ':url' => $this->url('system.file_system_settings')]);
     }
     else {
-      $description = $this->t('Translation files will not be stored locally. Change the Interface translation directory on the <a href=":url">File system configuration</a> page.', array(':url' => $this->url('system.file_system_settings')));
+      $description = $this->t('Translation files will not be stored locally. Change the Interface translation directory on the <a href=":url">File system configuration</a> page.', [':url' => $this->url('system.file_system_settings')]);
     }
     $form['#translation_directory'] = $directory;
-    $form['use_source'] = array(
+    $form['use_source'] = [
       '#type' => 'radios',
       '#title' => $this->t('Translation source'),
       '#default_value' => $config->get('translation.use_source'),
-      '#options' => array(
+      '#options' => [
         LOCALE_TRANSLATION_USE_SOURCE_REMOTE_AND_LOCAL => $this->t('Drupal translation server and local files'),
         LOCALE_TRANSLATION_USE_SOURCE_LOCAL => $this->t('Local files only'),
-      ),
+      ],
       '#description' => $this->t('The source of translation files for automatic interface translation.') . ' ' . $description,
-    );
+    ];
 
     if ($config->get('translation.overwrite_not_customized') == FALSE) {
       $default = LOCALE_TRANSLATION_OVERWRITE_NONE;
@@ -69,17 +69,17 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     else {
       $default = LOCALE_TRANSLATION_OVERWRITE_NON_CUSTOMIZED;
     }
-    $form['overwrite'] = array(
+    $form['overwrite'] = [
       '#type' => 'radios',
       '#title' => $this->t('Import behavior'),
       '#default_value' => $default,
-      '#options' => array(
+      '#options' => [
         LOCALE_TRANSLATION_OVERWRITE_NONE => $this->t("Don't overwrite existing translations."),
         LOCALE_TRANSLATION_OVERWRITE_NON_CUSTOMIZED => $this->t('Only overwrite imported translations, customized translations are kept.'),
         LOCALE_TRANSLATION_OVERWRITE_ALL => $this->t('Overwrite existing translations.'),
-      ),
+      ],
       '#description' => $this->t('How to treat existing translations when automatically updating the interface translations.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
@@ -91,7 +91,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     parent::validateForm($form, $form_state);
 
     if (empty($form['#translation_directory']) && $form_state->getValue('use_source') == LOCALE_TRANSLATION_USE_SOURCE_LOCAL) {
-      $form_state->setErrorByName('use_source', $this->t('You have selected local translation source, but no <a href=":url">Interface translation directory</a> was configured.', array(':url' => $this->url('system.file_system_settings'))));
+      $form_state->setErrorByName('use_source', $this->t('You have selected local translation source, but no <a href=":url">Interface translation directory</a> was configured.', [':url' => $this->url('system.file_system_settings')]));
     }
   }
 
diff --git a/core/modules/locale/src/Form/TranslateEditForm.php b/core/modules/locale/src/Form/TranslateEditForm.php
index c559f80..d629009 100644
--- a/core/modules/locale/src/Form/TranslateEditForm.php
+++ b/core/modules/locale/src/Form/TranslateEditForm.php
@@ -32,12 +32,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $form['#attached']['library'][] = 'locale/drupal.locale.admin';
 
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#type' => 'value',
       '#value' => $filter_values['langcode'],
-    );
+    ];
 
-    $form['strings'] = array(
+    $form['strings'] = [
       '#type' => 'table',
       '#tree' => TRUE,
       '#language' => $langname,
@@ -47,7 +47,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ],
       '#empty' => $this->t('No strings available.'),
       '#attributes' => ['class' => ['locale-translate-edit-table']],
-    );
+    ];
 
     if (isset($langcode)) {
       $strings = $this->translateFilterLoadStrings();
@@ -63,14 +63,14 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         if (count($source_array) == 1) {
           // Add original string value and mark as non-plural.
           $plural = FALSE;
-          $form['strings'][$string->lid]['original'] = array(
+          $form['strings'][$string->lid]['original'] = [
             '#type' => 'item',
-            '#title' => $this->t('Source string (@language)', array('@language' => $this->t('Built-in English'))),
+            '#title' => $this->t('Source string (@language)', ['@language' => $this->t('Built-in English')]),
             '#title_display' => 'invisible',
             '#plain_text' => $source_array[0],
             '#preffix' => '<span lang="en">',
             '#suffix' => '</span>',
-          );
+          ];
         }
         else {
           // Add original string value and mark as plural.
@@ -79,7 +79,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
             '#type' => 'item',
             '#title' => $this->t('Singular form'),
             '#plain_text' => $source_array[0],
-            '#prefix' => '<span class="visually-hidden">' . $this->t('Source string (@language)', array('@language' => $this->t('Built-in English'))) . '</span><span lang="en">',
+            '#prefix' => '<span class="visually-hidden">' . $this->t('Source string (@language)', ['@language' => $this->t('Built-in English')]) . '</span><span lang="en">',
             '#suffix' => '</span>',
           ];
           $original_plural = [
@@ -108,27 +108,27 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         // Approximate the number of rows to use in the default textarea.
         $rows = min(ceil(str_word_count($source_array[0]) / 12), 10);
         if (!$plural) {
-          $form['strings'][$string->lid]['translations'][0] = array(
+          $form['strings'][$string->lid]['translations'][0] = [
             '#type' => 'textarea',
-            '#title' => $this->t('Translated string (@language)', array('@language' => $langname)),
+            '#title' => $this->t('Translated string (@language)', ['@language' => $langname]),
             '#title_display' => 'invisible',
             '#rows' => $rows,
             '#default_value' => $translation_array[0],
-            '#attributes' => array('lang' => $langcode),
-          );
+            '#attributes' => ['lang' => $langcode],
+          ];
         }
         else {
           // Add a textarea for each plural variant.
           for ($i = 0; $i < $plurals; $i++) {
-            $form['strings'][$string->lid]['translations'][$i] = array(
+            $form['strings'][$string->lid]['translations'][$i] = [
               '#type' => 'textarea',
               // @todo Should use better labels https://www.drupal.org/node/2499639
               '#title' => ($i == 0 ? $this->t('Singular form') : $this->formatPlural($i, 'First plural form', '@count. plural form')),
               '#rows' => $rows,
               '#default_value' => isset($translation_array[$i]) ? $translation_array[$i] : '',
-              '#attributes' => array('lang' => $langcode),
-              '#prefix' => $i == 0 ? ('<span class="visually-hidden">' . $this->t('Translated string (@language)', array('@language' => $langname)) . '</span>') : '',
-            );
+              '#attributes' => ['lang' => $langcode],
+              '#prefix' => $i == 0 ? ('<span class="visually-hidden">' . $this->t('Translated string (@language)', ['@language' => $langname]) . '</span>') : '',
+            ];
           }
           if ($plurals == 2) {
             // Simplify interface text for the most common case.
@@ -137,11 +137,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         }
       }
       if (count(Element::children($form['strings']))) {
-        $form['actions'] = array('#type' => 'actions');
-        $form['actions']['submit'] = array(
+        $form['actions'] = ['#type' => 'actions'];
+        $form['actions']['submit'] = [
           '#type' => 'submit',
           '#value' => $this->t('Save translations'),
-        );
+        ];
       }
     }
     $form['pager']['#type'] = 'pager';
@@ -156,9 +156,9 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     foreach ($form_state->getValue('strings') as $lid => $translations) {
       foreach ($translations['translations'] as $key => $value) {
         if (!locale_string_is_safe($value)) {
-          $form_state->setErrorByName("strings][$lid][translations][$key", $this->t('The submitted string contains disallowed HTML: %string', array('%string' => $value)));
-          $form_state->setErrorByName("translations][$langcode][$key", $this->t('The submitted string contains disallowed HTML: %string', array('%string' => $value)));
-          $this->logger('locale')->warning('Attempted submission of a translation string with disallowed HTML: %string', array('%string' => $value));
+          $form_state->setErrorByName("strings][$lid][translations][$key", $this->t('The submitted string contains disallowed HTML: %string', ['%string' => $value]));
+          $form_state->setErrorByName("translations][$langcode][$key", $this->t('The submitted string contains disallowed HTML: %string', ['%string' => $value]));
+          $this->logger('locale')->warning('Attempted submission of a translation string with disallowed HTML: %string', ['%string' => $value]);
         }
       }
     }
@@ -169,12 +169,12 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $langcode = $form_state->getValue('langcode');
-    $updated = array();
+    $updated = [];
 
     // Preload all translations for strings in the form.
     $lids = array_keys($form_state->getValue('strings'));
-    $existing_translation_objects = array();
-    foreach ($this->localeStorage->getTranslations(array('lid' => $lids, 'language' => $langcode, 'translated' => TRUE)) as $existing_translation_object) {
+    $existing_translation_objects = [];
+    foreach ($this->localeStorage->getTranslations(['lid' => $lids, 'language' => $langcode, 'translated' => TRUE]) as $existing_translation_object) {
       $existing_translation_objects[$existing_translation_object->lid] = $existing_translation_object;
     }
 
@@ -204,7 +204,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
       if ($is_changed) {
         // Only update or insert if we have a value to use.
-        $target = isset($existing_translation_objects[$lid]) ? $existing_translation_objects[$lid] : $this->localeStorage->createTranslation(array('lid' => $lid, 'language' => $langcode));
+        $target = isset($existing_translation_objects[$lid]) ? $existing_translation_objects[$lid] : $this->localeStorage->createTranslation(['lid' => $lid, 'language' => $langcode]);
         $target->setPlurals($new_translation['translations'])
           ->setCustomized()
           ->save();
@@ -224,15 +224,15 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if (isset($page)) {
       $form_state->setRedirect(
         'locale.translate_page',
-        array(),
-        array('page' => $page)
+        [],
+        ['page' => $page]
       );
     }
 
     if ($updated) {
       // Clear cache and force refresh of JavaScript translations.
-      _locale_refresh_translations(array($langcode), $updated);
-      _locale_refresh_configuration(array($langcode), $updated);
+      _locale_refresh_translations([$langcode], $updated);
+      _locale_refresh_configuration([$langcode], $updated);
     }
   }
 
diff --git a/core/modules/locale/src/Form/TranslateFilterForm.php b/core/modules/locale/src/Form/TranslateFilterForm.php
index b3975b8..aeef26f 100644
--- a/core/modules/locale/src/Form/TranslateFilterForm.php
+++ b/core/modules/locale/src/Form/TranslateFilterForm.php
@@ -25,24 +25,24 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $form['#attached']['library'][] = 'locale/drupal.locale.admin';
 
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'details',
       '#title' => $this->t('Filter translatable strings'),
       '#open' => TRUE,
-    );
+    ];
     foreach ($filters as $key => $filter) {
       // Special case for 'string' filter.
       if ($key == 'string') {
-        $form['filters']['status']['string'] = array(
+        $form['filters']['status']['string'] = [
           '#type' => 'search',
           '#title' => $filter['title'],
           '#description' => $filter['description'],
           '#default_value' => $filter_values[$key],
-        );
+        ];
       }
       else {
         $empty_option = isset($filter['options'][$filter['default']]) ? $filter['options'][$filter['default']] : '- None -';
-        $form['filters']['status'][$key] = array(
+        $form['filters']['status'][$key] = [
           '#title' => $filter['title'],
           '#type' => 'select',
           '#empty_value' => $filter['default'],
@@ -50,27 +50,27 @@ public function buildForm(array $form, FormStateInterface $form_state) {
           '#size' => 0,
           '#options' => $filter['options'],
           '#default_value' => $filter_values[$key],
-        );
+        ];
         if (isset($filter['states'])) {
           $form['filters']['status'][$key]['#states'] = $filter['states'];
         }
       }
     }
 
-    $form['filters']['actions'] = array(
+    $form['filters']['actions'] = [
       '#type' => 'actions',
-      '#attributes' => array('class' => array('container-inline')),
-    );
-    $form['filters']['actions']['submit'] = array(
+      '#attributes' => ['class' => ['container-inline']],
+    ];
+    $form['filters']['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Filter'),
-    );
+    ];
     if (!empty($_SESSION['locale_translate_filter'])) {
-      $form['filters']['actions']['reset'] = array(
+      $form['filters']['actions']['reset'] = [
         '#type' => 'submit',
         '#value' => $this->t('Reset'),
-        '#submit' => array('::resetForm'),
-      );
+        '#submit' => ['::resetForm'],
+      ];
     }
 
     return $form;
@@ -93,7 +93,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
    * Provides a submit handler for the reset button.
    */
   public function resetForm(array &$form, FormStateInterface $form_state) {
-    $_SESSION['locale_translate_filter'] = array();
+    $_SESSION['locale_translate_filter'] = [];
     $form_state->setRedirect('locale.translate_page');
   }
 
diff --git a/core/modules/locale/src/Form/TranslateFormBase.php b/core/modules/locale/src/Form/TranslateFormBase.php
index ba5f7c3..9a7ad8b 100644
--- a/core/modules/locale/src/Form/TranslateFormBase.php
+++ b/core/modules/locale/src/Form/TranslateFormBase.php
@@ -81,8 +81,8 @@ protected function translateFilterLoadStrings() {
 
     // Language is sanitized to be one of the possible options in
     // translateFilterValues().
-    $conditions = array('language' => $filter_values['langcode']);
-    $options = array('pager limit' => 30, 'translated' => TRUE, 'untranslated' => TRUE);
+    $conditions = ['language' => $filter_values['langcode']];
+    $options = ['pager limit' => 30, 'translated' => TRUE, 'untranslated' => TRUE];
 
     // Add translation status conditions and options.
     switch ($filter_values['translation']) {
@@ -123,7 +123,7 @@ protected function translateFilterValues($reset = FALSE) {
       return static::$filterValues;
     }
 
-    $filter_values = array();
+    $filter_values = [];
     $filters = $this->translateFilters();
     foreach ($filters as $key => $filter) {
       $filter_values[$key] = $filter['default'];
@@ -152,12 +152,12 @@ protected function translateFilterValues($reset = FALSE) {
    * Lists locale translation filters that can be applied.
    */
   protected function translateFilters() {
-    $filters = array();
+    $filters = [];
 
     // Get all languages, except English.
     $this->languageManager->reset();
     $languages = $this->languageManager->getLanguages();
-    $language_options = array();
+    $language_options = [];
     foreach ($languages as $langcode => $language) {
       if (locale_is_translatable($langcode)) {
         $language_options[$langcode] = $language->getName();
@@ -171,42 +171,42 @@ protected function translateFilters() {
       $default_langcode = array_shift($available_langcodes);
     }
 
-    $filters['string'] = array(
+    $filters['string'] = [
       'title' => $this->t('String contains'),
       'description' => $this->t('Leave blank to show all strings. The search is case sensitive.'),
       'default' => '',
-    );
+    ];
 
-    $filters['langcode'] = array(
+    $filters['langcode'] = [
       'title' => $this->t('Translation language'),
       'options' => $language_options,
       'default' => $default_langcode,
-    );
+    ];
 
-    $filters['translation'] = array(
+    $filters['translation'] = [
       'title' => $this->t('Search in'),
-      'options' => array(
+      'options' => [
         'all' => $this->t('Both translated and untranslated strings'),
         'translated' => $this->t('Only translated strings'),
         'untranslated' => $this->t('Only untranslated strings'),
-      ),
+      ],
       'default' => 'all',
-    );
+    ];
 
-    $filters['customized'] = array(
+    $filters['customized'] = [
       'title' => $this->t('Translation type'),
-      'options' => array(
+      'options' => [
         'all' => $this->t('All'),
         LOCALE_NOT_CUSTOMIZED => $this->t('Non-customized translation'),
         LOCALE_CUSTOMIZED => $this->t('Customized translation'),
-      ),
-      'states' => array(
-        'visible' => array(
-          ':input[name=translation]' => array('value' => 'translated'),
-        ),
-      ),
+      ],
+      'states' => [
+        'visible' => [
+          ':input[name=translation]' => ['value' => 'translated'],
+        ],
+      ],
       'default' => 'all',
-    );
+    ];
 
     return $filters;
   }
diff --git a/core/modules/locale/src/Form/TranslationStatusForm.php b/core/modules/locale/src/Form/TranslationStatusForm.php
index 31f8bb9..cbf4d4a 100644
--- a/core/modules/locale/src/Form/TranslationStatusForm.php
+++ b/core/modules/locale/src/Form/TranslationStatusForm.php
@@ -65,10 +65,10 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $languages = locale_translatable_language_list();
     $status = locale_translation_get_status();
-    $options = array();
-    $languages_update = array();
-    $languages_not_found = array();
-    $projects_update = array();
+    $options = [];
+    $languages_update = [];
+    $languages_not_found = [];
+    $projects_update = [];
     // Prepare information about projects which have available translation
     // updates.
     if ($languages && $status) {
@@ -77,24 +77,24 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       // Build data options for the select table.
       foreach ($updates as $langcode => $update) {
         $title = $languages[$langcode]->getName();
-        $locale_translation_update_info = array('#theme' => 'locale_translation_update_info');
-        foreach (array('updates', 'not_found') as $update_status) {
+        $locale_translation_update_info = ['#theme' => 'locale_translation_update_info'];
+        foreach (['updates', 'not_found'] as $update_status) {
           if (isset($update[$update_status])) {
             $locale_translation_update_info['#' . $update_status] = $update[$update_status];
           }
         }
-        $options[$langcode] = array(
-          'title' => array(
-            'data' => array(
+        $options[$langcode] = [
+          'title' => [
+            'data' => [
               '#title' => $title,
               '#plain_text' => $title,
-            ),
-          ),
-          'status' => array(
-            'class' => array('description', 'priority-low'),
+            ],
+          ],
+          'status' => [
+            'class' => ['description', 'priority-low'],
             'data' => $locale_translation_update_info,
-          ),
-        );
+          ],
+        ];
         if (!empty($update['not_found'])) {
           $languages_not_found[$langcode] = $langcode;
         }
@@ -110,43 +110,43 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     $last_checked = $this->state->get('locale.translation_last_checked');
-    $form['last_checked'] = array(
+    $form['last_checked'] = [
       '#theme' => 'locale_translation_last_check',
       '#last' => $last_checked,
-    );
+    ];
 
-    $header = array(
-      'title' => array(
+    $header = [
+      'title' => [
         'data' => $this->t('Language'),
-        'class' => array('title'),
-      ),
-      'status' => array(
+        'class' => ['title'],
+      ],
+      'status' => [
         'data' => $this->t('Status'),
-        'class' => array('status', 'priority-low'),
-      ),
-    );
+        'class' => ['status', 'priority-low'],
+      ],
+    ];
 
     if (!$languages) {
-      $empty = $this->t('No translatable languages available. <a href=":add_language">Add a language</a> first.', array(
+      $empty = $this->t('No translatable languages available. <a href=":add_language">Add a language</a> first.', [
         ':add_language' => $this->url('entity.configurable_language.collection'),
-      ));
+      ]);
     }
     elseif ($status) {
       $empty = $this->t('All translations up to date.');
     }
     else {
-      $empty = $this->t('No translation status available. <a href=":check">Check manually</a>.', array(
+      $empty = $this->t('No translation status available. <a href=":check">Check manually</a>.', [
         ':check' => $this->url('locale.check_translation'),
-      ));
+      ]);
     }
 
     // The projects which require an update. Used by the _submit callback.
-    $form['projects_update'] = array(
+    $form['projects_update'] = [
       '#type' => 'value',
       '#value' => $projects_update,
-    );
+    ];
 
-    $form['langcodes'] = array(
+    $form['langcodes'] = [
       '#type' => 'tableselect',
       '#header' => $header,
       '#options' => $options,
@@ -156,17 +156,17 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       '#multiple' => TRUE,
       '#required' => TRUE,
       '#not_found' => $languages_not_found,
-      '#after_build' => array('locale_translation_language_table'),
-    );
+      '#after_build' => ['locale_translation_language_table'],
+    ];
 
     $form['#attached']['library'][] = 'locale/drupal.locale.admin';
 
-    $form['actions'] = array('#type' => 'actions');
+    $form['actions'] = ['#type' => 'actions'];
     if ($languages_update) {
-      $form['actions']['submit'] = array(
+      $form['actions']['submit'] = [
         '#type' => 'submit',
         '#value' => $this->t('Update translations'),
-      );
+      ];
     }
 
     return $form;
@@ -183,7 +183,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    *   translation update status.
    */
   protected function prepareUpdateData(array $status) {
-    $updates = array();
+    $updates = [];
 
     // @todo Calling locale_translation_build_projects() is an expensive way to
     //   get a module name. In follow-up issue
@@ -196,22 +196,22 @@ protected function prepareUpdateData(array $status) {
       foreach ($project as $langcode => $project_info) {
         // No translation file found for this project-language combination.
         if (empty($project_info->type)) {
-          $updates[$langcode]['not_found'][] = array(
+          $updates[$langcode]['not_found'][] = [
             'name' => $project_info->name == 'drupal' ? $this->t('Drupal core') : $project_data[$project_info->name]->info['name'],
             'version' => $project_info->version,
             'info' => $this->createInfoString($project_info),
-          );
+          ];
         }
         // Translation update found for this project-language combination.
         elseif ($project_info->type == LOCALE_TRANSLATION_LOCAL || $project_info->type == LOCALE_TRANSLATION_REMOTE) {
           $local = isset($project_info->files[LOCALE_TRANSLATION_LOCAL]) ? $project_info->files[LOCALE_TRANSLATION_LOCAL] : NULL;
           $remote = isset($project_info->files[LOCALE_TRANSLATION_REMOTE]) ? $project_info->files[LOCALE_TRANSLATION_REMOTE] : NULL;
           $recent = _locale_translation_source_compare($local, $remote) == LOCALE_TRANSLATION_SOURCE_COMPARE_LT ? $remote : $local;
-          $updates[$langcode]['updates'][] = array(
+          $updates[$langcode]['updates'][] = [
             'name' => $project_info->name == 'drupal' ? $this->t('Drupal core') : $project_data[$project_info->name]->info['name'],
             'version' => $project_info->version,
             'timestamp' => $recent->timestamp,
-          );
+          ];
         }
       }
     }
@@ -238,13 +238,13 @@ protected function createInfoString($project_info) {
     $local_path = isset($project_info->files['local']->uri) ? $project_info->files['local']->uri : FALSE;
 
     if (locale_translation_use_remote_source() && $remote_path && $local_path) {
-      return $this->t('File not found at %remote_path nor at %local_path', array(
+      return $this->t('File not found at %remote_path nor at %local_path', [
         '%remote_path' => $remote_path,
         '%local_path' => $local_path,
-      ));
+      ]);
     }
     elseif ($local_path) {
-      return $this->t('File not found at %local_path', array('%local_path' => $local_path));
+      return $this->t('File not found at %local_path', ['%local_path' => $local_path]);
     }
     return $this->t('Translation file location could not be determined.');
   }
@@ -279,7 +279,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $last_checked = $this->state->get('locale.translation_last_checked');
     if ($last_checked < REQUEST_TIME - LOCALE_TRANSLATION_STATUS_TTL) {
       locale_translation_clear_status();
-      $batch = locale_translation_batch_update_build(array(), $langcodes, $options);
+      $batch = locale_translation_batch_update_build([], $langcodes, $options);
       batch_set($batch);
     }
     else {
diff --git a/core/modules/locale/src/Gettext.php b/core/modules/locale/src/Gettext.php
index 5573f43..44677aa 100644
--- a/core/modules/locale/src/Gettext.php
+++ b/core/modules/locale/src/Gettext.php
@@ -41,12 +41,12 @@ class Gettext {
    */
   public static function fileToDatabase($file, $options) {
     // Add the default values to the options array.
-    $options += array(
-      'overwrite_options' => array(),
+    $options += [
+      'overwrite_options' => [],
       'customized' => LOCALE_NOT_CUSTOMIZED,
       'items' => -1,
       'seek' => 0,
-    );
+    ];
     // Instantiate and initialize the stream reader for this file.
     $reader = new PoStreamReader();
     $reader->setLangcode($file->langcode);
@@ -67,10 +67,10 @@ public static function fileToDatabase($file, $options) {
     // Initialize the database writer.
     $writer = new PoDatabaseWriter();
     $writer->setLangcode($file->langcode);
-    $writer_options = array(
+    $writer_options = [
       'overwrite_options' => $options['overwrite_options'],
       'customized' => $options['customized'],
-    );
+    ];
     $writer->setOptions($writer_options);
     $writer->setHeader($header);
 
diff --git a/core/modules/locale/src/LocaleConfigManager.php b/core/modules/locale/src/LocaleConfigManager.php
index bc598e2..e67f3bc 100644
--- a/core/modules/locale/src/LocaleConfigManager.php
+++ b/core/modules/locale/src/LocaleConfigManager.php
@@ -147,7 +147,7 @@ public function getTranslatableDefaultConfig($name) {
         return $this->getTranslatableData($typed_config);
       }
     }
-    return array();
+    return [];
   }
 
   /**
@@ -163,7 +163,7 @@ public function getTranslatableDefaultConfig($name) {
    *   TranslatableMarkup.
    */
   protected function getTranslatableData(TypedDataInterface $element) {
-    $translatable = array();
+    $translatable = [];
     if ($element instanceof TraversableTypedDataInterface) {
       foreach ($element as $key => $property) {
         $value = $this->getTranslatableData($property);
@@ -178,11 +178,11 @@ protected function getTranslatableData(TypedDataInterface $element) {
       $value = $element->getValue();
       $definition = $element->getDataDefinition();
       if (!empty($definition['translatable']) && $value !== '' && $value !== NULL) {
-        $options = array();
+        $options = [];
         if (isset($definition['translation context'])) {
           $options['context'] = $definition['translation context'];
         }
-        return new TranslatableMarkup($value, array(), $options);
+        return new TranslatableMarkup($value, [], $options);
       }
     }
     return $translatable;
@@ -215,7 +215,7 @@ protected function getTranslatableData(TypedDataInterface $element) {
    * @see self::getTranslatableData()
    */
   protected function processTranslatableData($name, array $active, array $translatable, $langcode) {
-    $translated = array();
+    $translated = [];
     foreach ($translatable as $key => $item) {
       if (!isset($active[$key])) {
         continue;
@@ -296,10 +296,10 @@ protected function deleteTranslationOverride($name, $langcode) {
    * @return array
    *   Array of configuration object names.
    */
-  public function getComponentNames(array $components = array()) {
+  public function getComponentNames(array $components = []) {
     $components = array_filter($components);
     if ($components) {
-      $names = array();
+      $names = [];
       foreach ($components as $type => $list) {
         // InstallStorage::getComponentNames returns a list of folders keyed by
         // config name.
@@ -322,8 +322,8 @@ public function getComponentNames(array $components = array()) {
    *   Array of configuration object names.
    */
   public function getStringNames(array $lids) {
-    $names = array();
-    $locations = $this->localeStorage->getLocations(array('sid' => $lids, 'type' => 'configuration'));
+    $names = [];
+    $locations = $this->localeStorage->getLocations(['sid' => $lids, 'type' => 'configuration']);
     foreach ($locations as $location) {
       $names[$location->name] = $location->name;
     }
@@ -370,15 +370,15 @@ public function translateString($name, $langcode, $source, $context) {
       // If translations for a language have not been loaded yet.
       if (!isset($this->translations[$name][$langcode])) {
         // Preload all translations for this configuration name and language.
-        $this->translations[$name][$langcode] = array();
-        foreach ($this->localeStorage->getTranslations(array('language' => $langcode, 'type' => 'configuration', 'name' => $name)) as $string) {
+        $this->translations[$name][$langcode] = [];
+        foreach ($this->localeStorage->getTranslations(['language' => $langcode, 'type' => 'configuration', 'name' => $name]) as $string) {
           $this->translations[$name][$langcode][$string->context][$string->source] = $string;
         }
       }
       if (!isset($this->translations[$name][$langcode][$context][$source])) {
         // There is no translation of the source string in this config location
         // to this language for this context.
-        if ($translation = $this->localeStorage->findTranslation(array('source' => $source, 'context' => $context, 'language' => $langcode))) {
+        if ($translation = $this->localeStorage->findTranslation(['source' => $source, 'context' => $context, 'language' => $langcode])) {
           // Look for a translation of the string. It might have one, but not
           // be saved in this configuration location yet.
           // If the string has a translation for this context to this language,
@@ -393,7 +393,7 @@ public function translateString($name, $langcode, $source, $context) {
           // location so it can be translated, and the string is faster to look
           // for next time.
           $translation = $this->localeStorage
-            ->createString(array('source' => $source, 'context' => $context))
+            ->createString(['source' => $source, 'context' => $context])
             ->addLocation('configuration', $name)
             ->save();
         }
@@ -418,7 +418,7 @@ public function translateString($name, $langcode, $source, $context) {
    * @return $this
    */
   public function reset() {
-    $this->translations = array();
+    $this->translations = [];
     return $this;
   }
 
@@ -442,7 +442,7 @@ public function getStringTranslation($name, $langcode, $source, $context) {
       $this->translateString($name, $langcode, $source, $context);
       if ($string = $this->translations[$name][$langcode][$context][$source]) {
         if (!$string->isTranslation()) {
-          $conditions = array('lid' => $string->lid, 'language' => $langcode);
+          $conditions = ['lid' => $string->lid, 'language' => $langcode];
           $translation = $this->localeStorage->createTranslation($conditions);
           $this->translations[$name][$langcode][$context][$source] = $translation;
           return $translation;
@@ -564,7 +564,7 @@ public function isUpdatingTranslationsFromLocale() {
    *   Total number of configuration override and active configuration objects
    *   updated (saved or removed).
    */
-  public function updateConfigTranslations(array $names, array $langcodes = array()) {
+  public function updateConfigTranslations(array $names, array $langcodes = []) {
     $langcodes = $langcodes ? $langcodes : array_keys($this->languageManager->getLanguages());
     $count = 0;
     foreach ($names as $name) {
@@ -589,7 +589,7 @@ public function updateConfigTranslations(array $names, array $langcodes = array(
           $data = $this->filterOverride($override->get(), $translatable);
           if (!empty($processed)) {
             // Merge in the Locale managed translations with existing data.
-            $data = NestedArray::mergeDeepArray(array($data, $processed), TRUE);
+            $data = NestedArray::mergeDeepArray([$data, $processed], TRUE);
           }
           if (empty($data) && !$override->isNew()) {
             // The configuration override contains Locale overrides that no
@@ -607,7 +607,7 @@ public function updateConfigTranslations(array $names, array $langcodes = array(
           // If the language code is the active storage language, we should
           // update. If it is English, we should only update if English is also
           // translatable.
-          $active = NestedArray::mergeDeepArray(array($active, $processed), TRUE);
+          $active = NestedArray::mergeDeepArray([$active, $processed], TRUE);
           $this->saveTranslationActive($name, $active);
           $count++;
         }
@@ -629,7 +629,7 @@ public function updateConfigTranslations(array $names, array $langcodes = array(
    *   also in $translatable.
    */
   protected function filterOverride(array $override_data, array $translatable) {
-    $filtered_data = array();
+    $filtered_data = [];
     foreach ($override_data as $key => $value) {
       if (isset($translatable[$key])) {
         // If the translatable default configuration has this key, look further
diff --git a/core/modules/locale/src/LocaleConfigSubscriber.php b/core/modules/locale/src/LocaleConfigSubscriber.php
index 3542a06..d06cb34 100644
--- a/core/modules/locale/src/LocaleConfigSubscriber.php
+++ b/core/modules/locale/src/LocaleConfigSubscriber.php
@@ -114,7 +114,7 @@ public function onOverrideChange(LanguageConfigOverrideCrudEvent $event) {
    *   override. This allows us to update locale keys for data not in the
    *   override but still in the active configuration.
    */
-  protected function updateLocaleStorage(StorableConfigBase $config, $langcode, array $reference_config = array()) {
+  protected function updateLocaleStorage(StorableConfigBase $config, $langcode, array $reference_config = []) {
     $name = $config->getName();
     if ($this->localeConfigManager->isSupported($name) && locale_is_translatable($langcode)) {
       $translatables = $this->localeConfigManager->getTranslatableDefaultConfig($name);
@@ -139,7 +139,7 @@ protected function updateLocaleStorage(StorableConfigBase $config, $langcode, ar
    *   override. This allows us to update locale keys for data not in the
    *   override but still in the active configuration.
    */
-  protected function processTranslatableData($name, array $config, array $translatable, $langcode, array $reference_config = array()) {
+  protected function processTranslatableData($name, array $config, array $translatable, $langcode, array $reference_config = []) {
     foreach ($translatable as $key => $item) {
       if (!isset($config[$key])) {
         if (isset($reference_config[$key])) {
@@ -148,7 +148,7 @@ protected function processTranslatableData($name, array $config, array $translat
         continue;
       }
       if (is_array($item)) {
-        $reference_config = isset($reference_config[$key]) ? $reference_config[$key] : array();
+        $reference_config = isset($reference_config[$key]) ? $reference_config[$key] : [];
         $this->processTranslatableData($name, $config[$key], $item, $langcode, $reference_config);
       }
       else {
diff --git a/core/modules/locale/src/LocaleEvent.php b/core/modules/locale/src/LocaleEvent.php
index 2a22477..6e919a6 100644
--- a/core/modules/locale/src/LocaleEvent.php
+++ b/core/modules/locale/src/LocaleEvent.php
@@ -31,7 +31,7 @@ class LocaleEvent extends Event {
    * @param array $lids
    *   (optional) List of string identifiers that have been updated / created.
    */
-  public function __construct(array $lang_codes, array $lids = array()) {
+  public function __construct(array $lang_codes, array $lids = []) {
     $this->langCodes = $lang_codes;
     $this->lids = $lids;
   }
diff --git a/core/modules/locale/src/LocaleLookup.php b/core/modules/locale/src/LocaleLookup.php
index 6bcb88c..9290efc 100644
--- a/core/modules/locale/src/LocaleLookup.php
+++ b/core/modules/locale/src/LocaleLookup.php
@@ -99,7 +99,7 @@ public function __construct($langcode, $context, StringStorageInterface $string_
 
     $this->cache = $cache;
     $this->lock = $lock;
-    $this->tags = array('locale');
+    $this->tags = ['locale'];
     $this->requestStack = $request_stack;
   }
 
@@ -123,7 +123,7 @@ protected function getCid() {
       // cache misses that need to be written into the cache. Prevent that by
       // resetting that list. All that happens in such a case are a few uncached
       // translation lookups.
-      $this->keysToPersist = array();
+      $this->keysToPersist = [];
     }
     return $this->cid;
   }
@@ -132,11 +132,11 @@ protected function getCid() {
    * {@inheritdoc}
    */
   protected function resolveCacheMiss($offset) {
-    $translation = $this->stringStorage->findTranslation(array(
+    $translation = $this->stringStorage->findTranslation([
       'language' => $this->langcode,
       'source' => $offset,
       'context' => $this->context,
-    ));
+    ]);
 
     if ($translation) {
       $value = !empty($translation->translation) ? $translation->translation : TRUE;
@@ -144,25 +144,25 @@ protected function resolveCacheMiss($offset) {
     else {
       // We don't have the source string, update the {locales_source} table to
       // indicate the string is not translated.
-      $this->stringStorage->createString(array(
+      $this->stringStorage->createString([
         'source' => $offset,
         'context' => $this->context,
         'version' => \Drupal::VERSION,
-      ))->addLocation('path', $this->requestStack->getCurrentRequest()->getRequestUri())->save();
+      ])->addLocation('path', $this->requestStack->getCurrentRequest()->getRequestUri())->save();
       $value = TRUE;
     }
 
     // If there is no translation available for the current language then use
     // language fallback to try other translations.
     if ($value === TRUE) {
-      $fallbacks = $this->languageManager->getFallbackCandidates(array('langcode' => $this->langcode, 'operation' => 'locale_lookup', 'data' => $offset));
+      $fallbacks = $this->languageManager->getFallbackCandidates(['langcode' => $this->langcode, 'operation' => 'locale_lookup', 'data' => $offset]);
       if (!empty($fallbacks)) {
         foreach ($fallbacks as $langcode) {
-          $translation = $this->stringStorage->findTranslation(array(
+          $translation = $this->stringStorage->findTranslation([
             'language' => $langcode,
             'source' => $offset,
             'context' => $this->context,
-          ));
+          ]);
 
           if ($translation && !empty($translation->translation)) {
             $value = $translation->translation;
diff --git a/core/modules/locale/src/LocaleProjectStorage.php b/core/modules/locale/src/LocaleProjectStorage.php
index 907bd6c..5b352f2 100644
--- a/core/modules/locale/src/LocaleProjectStorage.php
+++ b/core/modules/locale/src/LocaleProjectStorage.php
@@ -21,7 +21,7 @@ class LocaleProjectStorage implements LocaleProjectStorageInterface {
    *
    * @var array
    */
-  protected $cache = array();
+  protected $cache = [];
 
   /**
    * Cache status flag.
@@ -44,7 +44,7 @@ function __construct(KeyValueFactoryInterface $key_value_factory) {
    * {@inheritdoc}
    */
   public function get($key, $default = NULL) {
-    $values = $this->getMultiple(array($key));
+    $values = $this->getMultiple([$key]);
     return isset($values[$key]) ? $values[$key] : $default;
   }
 
@@ -52,8 +52,8 @@ public function get($key, $default = NULL) {
    * {@inheritdoc}
    */
   public function getMultiple(array $keys) {
-    $values = array();
-    $load = array();
+    $values = [];
+    $load = [];
     foreach ($keys as $key) {
       // Check if we have a value in the cache.
       if (isset($this->cache[$key])) {
@@ -87,7 +87,7 @@ public function getMultiple(array $keys) {
    * {@inheritdoc}
    */
   public function set($key, $value) {
-    $this->setMultiple(array($key => $value));
+    $this->setMultiple([$key => $value]);
   }
 
   /**
@@ -104,7 +104,7 @@ public function setMultiple(array $data) {
    * {@inheritdoc}
    */
   public function delete($key) {
-    $this->deleteMultiple(array($key));
+    $this->deleteMultiple([$key]);
   }
 
   /**
@@ -121,7 +121,7 @@ public function deleteMultiple(array $keys) {
    * {@inheritdoc}
    */
   public function resetCache() {
-    $this->cache = array();
+    $this->cache = [];
     static::$all = FALSE;
   }
 
diff --git a/core/modules/locale/src/LocaleTranslation.php b/core/modules/locale/src/LocaleTranslation.php
index 04f3d62..94125e9 100644
--- a/core/modules/locale/src/LocaleTranslation.php
+++ b/core/modules/locale/src/LocaleTranslation.php
@@ -40,7 +40,7 @@ class LocaleTranslation implements TranslatorInterface, DestructableInterface {
    *   Array of \Drupal\locale\LocaleLookup objects indexed by language code
    *   and context.
    */
-  protected $translations = array();
+  protected $translations = [];
 
   /**
    * The cache backend that should be used.
@@ -137,7 +137,7 @@ protected function canTranslateEnglish() {
    */
   public function reset() {
     unset($this->translateEnglish);
-    $this->translations = array();
+    $this->translations = [];
   }
 
   /**
diff --git a/core/modules/locale/src/PoDatabaseReader.php b/core/modules/locale/src/PoDatabaseReader.php
index d5c3cd7..55c2b69 100644
--- a/core/modules/locale/src/PoDatabaseReader.php
+++ b/core/modules/locale/src/PoDatabaseReader.php
@@ -45,7 +45,7 @@ class PoDatabaseReader implements PoReaderInterface {
    * Constructor, initializes with default options.
    */
   public function __construct() {
-    $this->setOptions(array());
+    $this->setOptions([]);
   }
 
   /**
@@ -73,11 +73,11 @@ public function getOptions() {
    * Set the options for the current reader.
    */
   public function setOptions(array $options) {
-    $options += array(
+    $options += [
       'customized' => FALSE,
       'not_customized' => FALSE,
       'not_translated' => FALSE,
-    );
+    ];
     $this->options = $options;
   }
 
@@ -104,7 +104,7 @@ public function setHeader(PoHeader $header) {
   private function loadStrings() {
     $langcode = $this->langcode;
     $options = $this->options;
-    $conditions = array();
+    $conditions = [];
 
     if (array_sum($options) == 0) {
       // If user asked to not include anything in the translation files,
diff --git a/core/modules/locale/src/PoDatabaseWriter.php b/core/modules/locale/src/PoDatabaseWriter.php
index f0be23a..988f7f3 100644
--- a/core/modules/locale/src/PoDatabaseWriter.php
+++ b/core/modules/locale/src/PoDatabaseWriter.php
@@ -89,14 +89,14 @@ public function getReport() {
    * @param array $report
    *   Associative array with result information.
    */
-  public function setReport($report = array()) {
-    $report += array(
+  public function setReport($report = []) {
+    $report += [
       'additions' => 0,
       'updates' => 0,
       'deletes' => 0,
       'skips' => 0,
-      'strings' => array(),
-    );
+      'strings' => [],
+    ];
     $this->report = $report;
   }
 
@@ -112,15 +112,15 @@ public function getOptions() {
    */
   public function setOptions(array $options) {
     if (!isset($options['overwrite_options'])) {
-      $options['overwrite_options'] = array();
+      $options['overwrite_options'] = [];
     }
-    $options['overwrite_options'] += array(
+    $options['overwrite_options'] += [
       'not_customized' => FALSE,
       'customized' => FALSE,
-    );
-    $options += array(
+    ];
+    $options += [
       'customized' => LOCALE_NOT_CUSTOMIZED,
-    );
+    ];
     $this->options = $options;
   }
 
@@ -148,7 +148,7 @@ public function getHeader() {
    */
   public function setHeader(PoHeader $header) {
     $this->header = $header;
-    $locale_plurals = \Drupal::state()->get('locale.translation.plurals') ?: array();
+    $locale_plurals = \Drupal::state()->get('locale.translation.plurals') ?: [];
 
     // Check for options.
     $options = $this->getOptions();
@@ -205,10 +205,10 @@ public function writeItems(PoReaderInterface $reader, $count = -1) {
    */
   private function importString(PoItem $item) {
     // Initialize overwrite options if not set.
-    $this->options['overwrite_options'] += array(
+    $this->options['overwrite_options'] += [
       'not_customized' => FALSE,
       'customized' => FALSE,
-    );
+    ];
     $overwrite_options = $this->options['overwrite_options'];
     $customized = $this->options['customized'];
 
@@ -217,17 +217,17 @@ private function importString(PoItem $item) {
     $translation = $item->getTranslation();
 
     // Look up the source string and any existing translation.
-    $strings = \Drupal::service('locale.storage')->getTranslations(array(
+    $strings = \Drupal::service('locale.storage')->getTranslations([
       'language' => $this->langcode,
       'source' => $source,
       'context' => $context,
-    ));
+    ]);
     $string = reset($strings);
 
     if (!empty($translation)) {
       // Skip this string unless it passes a check for dangerous code.
       if (!locale_string_is_safe($translation)) {
-        \Drupal::logger('locale')->error('Import of string "%string" was skipped because of disallowed or malformed HTML.', array('%string' => $translation));
+        \Drupal::logger('locale')->error('Import of string "%string" was skipped because of disallowed or malformed HTML.', ['%string' => $translation]);
         $this->report['skips']++;
         return 0;
       }
@@ -235,10 +235,10 @@ private function importString(PoItem $item) {
         $string->setString($translation);
         if ($string->isNew()) {
           // No translation in this language.
-          $string->setValues(array(
+          $string->setValues([
             'language' => $this->langcode,
             'customized' => $customized,
-          ));
+          ]);
           $string->save();
           $this->report['additions']++;
         }
@@ -253,14 +253,14 @@ private function importString(PoItem $item) {
       }
       else {
         // No such source string in the database yet.
-        $string = \Drupal::service('locale.storage')->createString(array('source' => $source, 'context' => $context))
+        $string = \Drupal::service('locale.storage')->createString(['source' => $source, 'context' => $context])
           ->save();
-        \Drupal::service('locale.storage')->createTranslation(array(
+        \Drupal::service('locale.storage')->createTranslation([
           'lid' => $string->getId(),
           'language' => $this->langcode,
           'translation' => $translation,
           'customized' => $customized,
-        ))->save();
+        ])->save();
 
         $this->report['additions']++;
         $this->report['strings'][] = $string->getId();
diff --git a/core/modules/locale/src/StringBase.php b/core/modules/locale/src/StringBase.php
index 2569289..63cd781 100644
--- a/core/modules/locale/src/StringBase.php
+++ b/core/modules/locale/src/StringBase.php
@@ -57,7 +57,7 @@
    * @param object|array $values
    *   Object or array with initial values.
    */
-  public function __construct($values = array()) {
+  public function __construct($values = []) {
     $this->setValues((array) $values);
   }
 
@@ -137,7 +137,7 @@ public function setValues(array $values, $override = TRUE) {
    * {@inheritdoc}
    */
   public function getValues(array $fields) {
-    $values = array();
+    $values = [];
     foreach ($fields as $field) {
       if (isset($this->$field)) {
         $values[$field] = $this->$field;
@@ -151,12 +151,12 @@ public function getValues(array $fields) {
    */
   public function getLocations($check_only = FALSE) {
     if (!isset($this->locations) && !$check_only) {
-      $this->locations = array();
-      foreach ($this->getStorage()->getLocations(array('sid' => $this->getId())) as $location) {
+      $this->locations = [];
+      foreach ($this->getStorage()->getLocations(['sid' => $this->getId()]) as $location) {
         $this->locations[$location->type][$location->name] = $location->lid;
       }
     }
-    return isset($this->locations) ? $this->locations : array();
+    return isset($this->locations) ? $this->locations : [];
   }
 
   /**
diff --git a/core/modules/locale/src/StringDatabaseStorage.php b/core/modules/locale/src/StringDatabaseStorage.php
index 8976224..45bf41d 100644
--- a/core/modules/locale/src/StringDatabaseStorage.php
+++ b/core/modules/locale/src/StringDatabaseStorage.php
@@ -22,7 +22,7 @@ class StringDatabaseStorage implements StringStorageInterface {
    *
    * @var array
    */
-  protected $options = array();
+  protected $options = [];
 
   /**
    * Constructs a new StringDatabaseStorage class.
@@ -32,7 +32,7 @@ class StringDatabaseStorage implements StringStorageInterface {
    * @param array $options
    *   (optional) Any additional database connection options to use in queries.
    */
-  public function __construct(Connection $connection, array $options = array()) {
+  public function __construct(Connection $connection, array $options = []) {
     $this->connection = $connection;
     $this->options = $options;
   }
@@ -40,15 +40,15 @@ public function __construct(Connection $connection, array $options = array()) {
   /**
    * {@inheritdoc}
    */
-  public function getStrings(array $conditions = array(), array $options = array()) {
+  public function getStrings(array $conditions = [], array $options = []) {
     return $this->dbStringLoad($conditions, $options, 'Drupal\locale\SourceString');
   }
 
   /**
    * {@inheritdoc}
    */
-  public function getTranslations(array $conditions = array(), array $options = array()) {
-    return $this->dbStringLoad($conditions, array('translation' => TRUE) + $options, 'Drupal\locale\TranslationString');
+  public function getTranslations(array $conditions = [], array $options = []) {
+    return $this->dbStringLoad($conditions, ['translation' => TRUE] + $options, 'Drupal\locale\TranslationString');
   }
 
   /**
@@ -70,7 +70,7 @@ public function findString(array $conditions) {
    * {@inheritdoc}
    */
   public function findTranslation(array $conditions) {
-    $values = $this->dbStringSelect($conditions, array('translation' => TRUE))
+    $values = $this->dbStringSelect($conditions, ['translation' => TRUE])
       ->execute()
       ->fetchAssoc();
 
@@ -85,7 +85,7 @@ public function findTranslation(array $conditions) {
   /**
    * {@inheritdoc}
    */
-  public function getLocations(array $conditions = array()) {
+  public function getLocations(array $conditions = []) {
     $query = $this->connection->select('locales_location', 'l', $this->options)
       ->fields('l');
     foreach ($conditions as $field => $value) {
@@ -143,14 +143,14 @@ protected function updateLocation($string) {
           // Make sure that the name isn't longer than 255 characters.
           $name = substr($name, 0, 255);
           if (!$lid) {
-            $this->dbDelete('locales_location', array('sid' => $string->getId(), 'type' => $type, 'name' => $name))
+            $this->dbDelete('locales_location', ['sid' => $string->getId(), 'type' => $type, 'name' => $name])
               ->execute();
           }
           elseif ($lid === TRUE) {
             // This is a new location to add, take care not to duplicate.
             $this->connection->merge('locales_location', $this->options)
-              ->keys(array('sid' => $string->getId(), 'type' => $type, 'name' => $name))
-              ->fields(array('version' => \Drupal::VERSION))
+              ->keys(['sid' => $string->getId(), 'type' => $type, 'name' => $name])
+              ->fields(['version' => \Drupal::VERSION])
               ->execute();
             $created = TRUE;
           }
@@ -177,7 +177,7 @@ protected function checkVersion($string, $version) {
       $string->setVersion($version);
       $this->connection->update('locales_source', $this->options)
         ->condition('lid', $string->getId())
-        ->fields(array('version' => $version))
+        ->fields(['version' => $version])
         ->execute();
     }
   }
@@ -204,11 +204,11 @@ public function delete($string) {
    * {@inheritdoc}
    */
   public function deleteStrings($conditions) {
-    $lids = $this->dbStringSelect($conditions, array('fields' => array('lid')))->execute()->fetchCol();
+    $lids = $this->dbStringSelect($conditions, ['fields' => ['lid']])->execute()->fetchCol();
     if ($lids) {
-      $this->dbDelete('locales_target', array('lid' => $lids))->execute();
-      $this->dbDelete('locales_source', array('lid' => $lids))->execute();
-      $this->dbDelete('locales_location', array('sid' => $lids))->execute();
+      $this->dbDelete('locales_target', ['lid' => $lids])->execute();
+      $this->dbDelete('locales_source', ['lid' => $lids])->execute();
+      $this->dbDelete('locales_location', ['sid' => $lids])->execute();
     }
   }
 
@@ -222,18 +222,18 @@ public function deleteTranslations($conditions) {
   /**
    * {@inheritdoc}
    */
-  public function createString($values = array()) {
-    return new SourceString($values + array('storage' => $this));
+  public function createString($values = []) {
+    return new SourceString($values + ['storage' => $this]);
   }
 
   /**
    * {@inheritdoc}
    */
-  public function createTranslation($values = array()) {
-    return new TranslationString($values + array(
+  public function createTranslation($values = []) {
+    return new TranslationString($values + [
       'storage' => $this,
       'is_new' => TRUE,
-    ));
+    ]);
   }
 
   /**
@@ -251,10 +251,10 @@ public function createTranslation($values = array()) {
    *     table fields)
    */
   protected function dbFieldTable($field) {
-    if (in_array($field, array('language', 'translation', 'customized'))) {
+    if (in_array($field, ['language', 'translation', 'customized'])) {
       return 't';
     }
-    elseif (in_array($field, array('type', 'name'))) {
+    elseif (in_array($field, ['type', 'name'])) {
       return 'l';
     }
     else {
@@ -291,16 +291,16 @@ protected function dbStringTable($string) {
    */
   protected function dbStringKeys($string) {
     if ($string->isSource()) {
-      $keys = array('lid');
+      $keys = ['lid'];
     }
     elseif ($string->isTranslation()) {
-      $keys = array('lid', 'language');
+      $keys = ['lid', 'language'];
     }
     if (!empty($keys) && ($values = $string->getValues($keys)) && count($keys) == count($values)) {
       return $values;
     }
     else {
-      return array();
+      return [];
     }
   }
 
@@ -318,7 +318,7 @@ protected function dbStringKeys($string) {
    *   Array of objects of the class requested.
    */
   protected function dbStringLoad(array $conditions, array $options, $class) {
-    $strings = array();
+    $strings = [];
     $result = $this->dbStringSelect($conditions, $options)->execute();
     foreach ($result as $item) {
       /** @var \Drupal\locale\StringInterface $string */
@@ -350,7 +350,7 @@ protected function dbStringLoad(array $conditions, array $options, $class) {
    * @return \Drupal\Core\Database\Query\Select
    *   Query object with all the tables, fields and conditions.
    */
-  protected function dbStringSelect(array $conditions, array $options = array()) {
+  protected function dbStringSelect(array $conditions, array $options = []) {
     // Start building the query with source table and check whether we need to
     // join the target table too.
     $query = $this->connection->select('locales_source', 's', $this->options)
@@ -377,9 +377,9 @@ protected function dbStringSelect(array $conditions, array $options = array()) {
     if ($join) {
       if (isset($conditions['language'])) {
         // If we've got a language condition, we use it for the join.
-        $query->$join('locales_target', 't', "t.lid = s.lid AND t.language = :langcode", array(
+        $query->$join('locales_target', 't', "t.lid = s.lid AND t.language = :langcode", [
           ':langcode' => $conditions['language'],
-        ));
+        ]);
         unset($conditions['language']);
       }
       else {
@@ -388,7 +388,7 @@ protected function dbStringSelect(array $conditions, array $options = array()) {
       }
       if (!empty($options['translation'])) {
         // We cannot just add all fields because 'lid' may get null values.
-        $query->fields('t', array('language', 'translation', 'customized'));
+        $query->fields('t', ['language', 'translation', 'customized']);
       }
     }
 
@@ -397,8 +397,8 @@ protected function dbStringSelect(array $conditions, array $options = array()) {
     // array so we can consistently use IN conditions.
     if (isset($conditions['type']) || isset($conditions['name'])) {
       $subquery = $this->connection->select('locales_location', 'l', $this->options)
-        ->fields('l', array('sid'));
-      foreach (array('type', 'name') as $field) {
+        ->fields('l', ['sid']);
+      foreach (['type', 'name'] as $field) {
         if (isset($conditions[$field])) {
           $subquery->condition('l.' . $field, (array) $conditions[$field], 'IN');
           unset($conditions[$field]);
@@ -464,12 +464,12 @@ protected function dbStringSelect(array $conditions, array $options = array()) {
    */
   protected function dbStringInsert($string) {
     if ($string->isSource()) {
-      $string->setValues(array('context' => '', 'version' => 'none'), FALSE);
-      $fields = $string->getValues(array('source', 'context', 'version'));
+      $string->setValues(['context' => '', 'version' => 'none'], FALSE);
+      $fields = $string->getValues(['source', 'context', 'version']);
     }
     elseif ($string->isTranslation()) {
-      $string->setValues(array('customized' => 0), FALSE);
-      $fields = $string->getValues(array('lid', 'language', 'translation', 'customized'));
+      $string->setValues(['customized' => 0], FALSE);
+      $fields = $string->getValues(['lid', 'language', 'translation', 'customized']);
     }
     if (!empty($fields)) {
       return $this->connection->insert($this->dbStringTable($string), $this->options)
@@ -496,10 +496,10 @@ protected function dbStringInsert($string) {
    */
   protected function dbStringUpdate($string) {
     if ($string->isSource()) {
-      $values = $string->getValues(array('source', 'context', 'version'));
+      $values = $string->getValues(['source', 'context', 'version']);
     }
     elseif ($string->isTranslation()) {
-      $values = $string->getValues(array('translation', 'customized'));
+      $values = $string->getValues(['translation', 'customized']);
     }
     if (!empty($values) && $keys = $this->dbStringKeys($string)) {
       return $this->connection->merge($this->dbStringTable($string), $this->options)
@@ -534,7 +534,7 @@ protected function dbDelete($table, $keys) {
   /**
    * Executes an arbitrary SELECT query string with the injected options.
    */
-  protected function dbExecute($query, array $args = array()) {
+  protected function dbExecute($query, array $args = []) {
     return $this->connection->query($query, $args, $this->options);
   }
 
diff --git a/core/modules/locale/src/StringStorageInterface.php b/core/modules/locale/src/StringStorageInterface.php
index da1c8fb..18c5edc 100644
--- a/core/modules/locale/src/StringStorageInterface.php
+++ b/core/modules/locale/src/StringStorageInterface.php
@@ -27,7 +27,7 @@
    * @return array
    *   Array of \Drupal\locale\StringInterface objects matching the conditions.
    */
-  public function getStrings(array $conditions = array(), array $options = array());
+  public function getStrings(array $conditions = [], array $options = []);
 
   /**
    * Loads multiple string translation objects.
@@ -44,7 +44,7 @@ public function getStrings(array $conditions = array(), array $options = array()
    *
    * @see \Drupal\locale\StringStorageInterface::getStrings()
    */
-  public function getTranslations(array $conditions = array(), array $options = array());
+  public function getTranslations(array $conditions = [], array $options = []);
 
   /**
    * Loads string location information.
@@ -61,7 +61,7 @@ public function getTranslations(array $conditions = array(), array $options = ar
    *
    * @see \Drupal\locale\StringStorageInterface::getStrings()
    */
-  public function getLocations(array $conditions = array());
+  public function getLocations(array $conditions = []);
 
   /**
    * Loads a string source object, fast query.
@@ -164,7 +164,7 @@ public function countTranslations();
    * @return \Drupal\locale\SourceString
    *   New source string object.
    */
-  public function createString($values = array());
+  public function createString($values = []);
 
   /**
    * Creates a string translation object bound to this storage but not saved.
@@ -175,6 +175,6 @@ public function createString($values = array());
    * @return \Drupal\locale\TranslationString
    *   New string translation object.
    */
-  public function createTranslation($values = array());
+  public function createTranslation($values = []);
 
 }
diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
index 9ad620f..9e80c7b 100644
--- a/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
+++ b/core/modules/locale/src/Tests/LocaleConfigTranslationImportTest.php
@@ -18,13 +18,13 @@ class LocaleConfigTranslationImportTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'locale_test_translate');
+  public static $modules = ['language', 'locale_test_translate'];
 
   /**
    * Test update changes configuration translations if enabled after language.
    */
   public function testConfigTranslationImport() {
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions']);
     $this->drupalLogin($admin_user);
 
     // Add a language. The Afrikaans translation file of locale_test_translate
@@ -32,7 +32,7 @@ public function testConfigTranslationImport() {
     ConfigurableLanguage::createFromLangcode('af')->save();
 
     // Enable locale module.
-    $this->container->get('module_installer')->install(array('locale'));
+    $this->container->get('module_installer')->install(['locale']);
     $this->resetAll();
 
     // Enable import of translations. By default this is disabled for automated
@@ -42,9 +42,9 @@ public function testConfigTranslationImport() {
       ->save();
 
     // Add translation permissions now that the locale module has been enabled.
-    $edit = array(
+    $edit = [
       'authenticated[translate interface]' => 'translate interface',
-    );
+    ];
     $this->drupalPostForm('admin/people/permissions', $edit, t('Save permissions'));
 
     // Check and update the translation status. This will import the Afrikaans
@@ -57,7 +57,7 @@ public function testConfigTranslationImport() {
     $status['drupal']['af']->type = 'current';
     \Drupal::state()->set('locale.translation_status', $status);
 
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Check if configuration translations have been imported.
     $override = \Drupal::languageManager()->getLanguageConfigOverride('af', 'system.maintenance');
@@ -77,7 +77,7 @@ public function testConfigTranslationModuleInstall() {
     // import. Test that this override is in place.
     $this->assertFalse($this->config('locale.settings')->get('translation.import_enabled'), 'Translations imports are disabled by default in the Testing profile.');
 
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate configuration'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate configuration']);
     $this->drupalLogin($admin_user);
 
     // Enable import of translations. By default this is disabled for automated
@@ -90,7 +90,7 @@ public function testConfigTranslationModuleInstall() {
     $this->drupalPostForm('admin/config/regional/language/add', ['predefined_langcode' => 'af'], t('Add language'));
 
     // Add the system branding block to the page.
-    $this->drupalPlaceBlock('system_branding_block', array('region' => 'header', 'id' => 'site-branding'));
+    $this->drupalPlaceBlock('system_branding_block', ['region' => 'header', 'id' => 'site-branding']);
     $this->drupalPostForm('admin/config/system/site-information', ['site_slogan' => 'Test site slogan'], 'Save configuration');
     $this->drupalPostForm('admin/config/system/site-information/translate/af/edit', ['translation[config_names][system.site][slogan]' => 'Test site slogan in Afrikaans'], 'Save translation');
 
@@ -135,7 +135,7 @@ function testLocaleRemovalAndConfigOverrideDelete() {
     $this->container->get('module_installer')->install(['locale']);
     $this->resetAll();
 
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate interface']);
     $this->drupalLogin($admin_user);
 
     // Enable import of translations. By default this is disabled for automated
@@ -153,7 +153,7 @@ function testLocaleRemovalAndConfigOverrideDelete() {
     // Remove the string from translation to simulate a Locale removal. Note
     // that is no current way of doing this in the UI.
     $locale_storage = \Drupal::service('locale.storage');
-    $string = $locale_storage->findString(array('source' => 'Locale can translate'));
+    $string = $locale_storage->findString(['source' => 'Locale can translate']);
     \Drupal::service('locale.storage')->delete($string);
     // Force a rebuild of config translations.
     $count = Locale::config()->updateConfigTranslations(['locale_test_translate.settings'], ['af']);
@@ -172,7 +172,7 @@ function testLocaleRemovalAndConfigOverridePreserve() {
     $this->container->get('module_installer')->install(['locale']);
     $this->resetAll();
 
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'administer permissions', 'translate interface']);
     $this->drupalLogin($admin_user);
 
     // Enable import of translations. By default this is disabled for automated
@@ -198,18 +198,18 @@ function testLocaleRemovalAndConfigOverridePreserve() {
     $this->assertEqual($expected, $override->get());
 
     // Set the translated string to empty.
-    $search = array(
+    $search = [
       'string' => 'Locale can translate',
       'langcode' => 'af',
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textareas = $this->xpath('//textarea');
     $textarea = current($textareas);
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => '',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     $override = \Drupal::languageManager()->getLanguageConfigOverride('af', 'locale_test_translate.settings');
diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
index 271f6e2..a90dce0 100644
--- a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
+++ b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php
@@ -24,7 +24,7 @@ class LocaleConfigTranslationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'contact', 'contact_test');
+  public static $modules = ['locale', 'contact', 'contact_test'];
 
   /**
    * {@inheritdoc}
@@ -42,15 +42,15 @@ protected function setUp() {
 
     // Add custom language.
     $this->langcode = 'xx';
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'translate interface', 'administer modules', 'access site-wide contact form', 'administer contact forms', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'translate interface', 'administer modules', 'access site-wide contact form', 'administer contact forms', 'administer site configuration']);
     $this->drupalLogin($admin_user);
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $this->langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     // Set path prefix.
     $edit = ["prefix[$this->langcode]" => $this->langcode];
@@ -63,23 +63,23 @@ protected function setUp() {
   public function testConfigTranslation() {
     // Check that the maintenance message exists and create translation for it.
     $source = '@site is currently under maintenance. We should be back shortly. Thank you for your patience.';
-    $string = $this->storage->findString(array('source' => $source, 'context' => '', 'type' => 'configuration'));
+    $string = $this->storage->findString(['source' => $source, 'context' => '', 'type' => 'configuration']);
     $this->assertTrue($string, 'Configuration strings have been created upon installation.');
 
     // Translate using the UI so configuration is refreshed.
     $message = $this->randomMachineName(20);
-    $search = array(
+    $search = [
       'string' => $string->source,
       'langcode' => $this->langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textareas = $this->xpath('//textarea');
     $textarea = current($textareas);
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $message,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Get translation and check we've only got the message.
@@ -88,22 +88,22 @@ public function testConfigTranslation() {
     $this->assertEqual($translation['message'], $message);
 
     // Check default medium date format exists and create a translation for it.
-    $string = $this->storage->findString(array('source' => 'D, m/d/Y - H:i', 'context' => 'PHP date format', 'type' => 'configuration'));
+    $string = $this->storage->findString(['source' => 'D, m/d/Y - H:i', 'context' => 'PHP date format', 'type' => 'configuration']);
     $this->assertTrue($string, 'Configuration date formats have been created upon installation.');
 
     // Translate using the UI so configuration is refreshed.
-    $search = array(
+    $search = [
       'string' => $string->source,
       'langcode' => $this->langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textareas = $this->xpath('//textarea');
     $textarea = current($textareas);
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => 'D',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     $translation = \Drupal::languageManager()->getLanguageConfigOverride($this->langcode, 'core.date_format.medium')->get();
@@ -115,14 +115,14 @@ public function testConfigTranslation() {
     $this->assertEqual($formatted_date, 'Tue', 'Got the right formatted date using the date format translation pattern.');
 
     // Assert strings from image module config are not available.
-    $string = $this->storage->findString(array('source' => 'Medium (220×220)', 'context' => '', 'type' => 'configuration'));
+    $string = $this->storage->findString(['source' => 'Medium (220×220)', 'context' => '', 'type' => 'configuration']);
     $this->assertFalse($string, 'Configuration strings have been created upon installation.');
 
     // Enable the image module.
-    $this->drupalPostForm('admin/modules', array('modules[image][enable]' => "1"), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[image][enable]' => "1"], t('Install'));
     $this->rebuildContainer();
 
-    $string = $this->storage->findString(array('source' => 'Medium (220×220)', 'context' => '', 'type' => 'configuration'));
+    $string = $this->storage->findString(['source' => 'Medium (220×220)', 'context' => '', 'type' => 'configuration']);
     $this->assertTrue($string, 'Configuration strings have been created upon installation.');
     $locations = $string->getLocations();
     $this->assertTrue(isset($locations['configuration']) && isset($locations['configuration']['image.style.medium']), 'Configuration string has been created with the right location');
@@ -136,17 +136,17 @@ public function testConfigTranslation() {
 
     // Translate using the UI so configuration is refreshed.
     $image_style_label = $this->randomMachineName(20);
-    $search = array(
+    $search = [
       'string' => $string->source,
       'langcode' => $this->langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $image_style_label,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Check the right single translation has been created.
@@ -159,8 +159,8 @@ public function testConfigTranslation() {
     $this->assertEqual($translation['label'], $image_style_label, 'Got the right translation for image style name after translation');
 
     // Uninstall the module.
-    $this->drupalPostForm('admin/modules/uninstall', array('uninstall[image]' => "image"), t('Uninstall'));
-    $this->drupalPostForm(NULL, array(), t('Uninstall'));
+    $this->drupalPostForm('admin/modules/uninstall', ['uninstall[image]' => "image"], t('Uninstall'));
+    $this->drupalPostForm(NULL, [], t('Uninstall'));
 
     // Ensure that the translated configuration has been removed.
     $override = \Drupal::languageManager()->getLanguageConfigOverride('xx', 'image.style.medium');
@@ -168,17 +168,17 @@ public function testConfigTranslation() {
 
     // Translate default category using the UI so configuration is refreshed.
     $category_label = $this->randomMachineName(20);
-    $search = array(
+    $search = [
       'string' => 'Website feedback',
       'langcode' => $this->langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $category_label,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Check if this category displayed in this language will use the
diff --git a/core/modules/locale/src/Tests/LocaleExportTest.php b/core/modules/locale/src/Tests/LocaleExportTest.php
index f9cd2ea..54d36e2 100644
--- a/core/modules/locale/src/Tests/LocaleExportTest.php
+++ b/core/modules/locale/src/Tests/LocaleExportTest.php
@@ -16,7 +16,7 @@ class LocaleExportTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   /**
    * A user able to create languages and export translations.
@@ -29,7 +29,7 @@ class LocaleExportTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer languages', 'translate interface', 'access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages', 'translate interface', 'access administration pages']);
     $this->drupalLogin($this->adminUser);
 
     // Copy test po files to the translations directory.
@@ -45,16 +45,16 @@ public function testExportTranslation() {
     // This will also automatically add the 'fr' language.
     $name = \Drupal::service('file_system')->tempnam('temporary://', "po_") . '.po';
     file_put_contents($name, $this->getPoFile());
-    $this->drupalPostForm('admin/config/regional/translate/import', array(
+    $this->drupalPostForm('admin/config/regional/translate/import', [
       'langcode' => 'fr',
       'files[file]' => $name,
-    ), t('Import'));
+    ], t('Import'));
     drupal_unlink($name);
 
     // Get the French translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'fr',
-    ), t('Export'));
+    ], t('Export'));
 
     // Ensure we have a translation file.
     $this->assertRaw('# French translation of Drupal', 'Exported French translation file.');
@@ -64,11 +64,11 @@ public function testExportTranslation() {
     // Import some more French translations which will be marked as customized.
     $name = \Drupal::service('file_system')->tempnam('temporary://', "po2_") . '.po';
     file_put_contents($name, $this->getCustomPoFile());
-    $this->drupalPostForm('admin/config/regional/translate/import', array(
+    $this->drupalPostForm('admin/config/regional/translate/import', [
       'langcode' => 'fr',
       'files[file]' => $name,
       'customized' => 1,
-    ), t('Import'));
+    ], t('Import'));
     drupal_unlink($name);
 
     // Create string without translation in the locales_source table.
@@ -79,12 +79,12 @@ public function testExportTranslation() {
       ->save();
 
     // Export only customized French translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'fr',
       'content_options[not_customized]' => FALSE,
       'content_options[customized]' => TRUE,
       'content_options[not_translated]' => FALSE,
-    ), t('Export'));
+    ], t('Export'));
 
     // Ensure we have a translation file.
     $this->assertRaw('# French translation of Drupal', 'Exported French translation file with only customized strings.');
@@ -94,12 +94,12 @@ public function testExportTranslation() {
     $this->assertNoRaw('msgid "February"', 'Untranslated string not present in exported file.');
 
     // Export only untranslated French translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'fr',
       'content_options[not_customized]' => FALSE,
       'content_options[customized]' => FALSE,
       'content_options[not_translated]' => TRUE,
-    ), t('Export'));
+    ], t('Export'));
 
     // Ensure we have a translation file.
     $this->assertRaw('# French translation of Drupal', 'Exported French translation file with only untranslated strings.');
@@ -118,7 +118,7 @@ public function testExportTranslationTemplateFile() {
     // the locales_source table gets populated with something.
     $this->drupalGet('admin/config/regional/language');
     // Get the translation template file.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(), t('Export'));
+    $this->drupalPostForm('admin/config/regional/translate/export', [], t('Export'));
     // Ensure we have a translation file.
     $this->assertRaw('# LANGUAGE translation of PROJECT', 'Exported translation template file.');
   }
diff --git a/core/modules/locale/src/Tests/LocaleFileSystemFormTest.php b/core/modules/locale/src/Tests/LocaleFileSystemFormTest.php
index 1e41755..e25ec40 100644
--- a/core/modules/locale/src/Tests/LocaleFileSystemFormTest.php
+++ b/core/modules/locale/src/Tests/LocaleFileSystemFormTest.php
@@ -16,14 +16,14 @@ class LocaleFileSystemFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp(){
     parent::setUp();
-    $account = $this->drupalCreateUser(array('administer site configuration'));
+    $account = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($account);
   }
 
@@ -44,9 +44,9 @@ function testFileConfigurationPage() {
 
     // The setting should persist.
     $translation_path = $this->publicFilesDirectory . '/translations_changed';
-    $fields = array(
+    $fields = [
       'translation_path' => $translation_path
-    );
+    ];
     $this->drupalPostForm(NULL, $fields, t('Save configuration'));
     $this->drupalGet('admin/config/media/file-system');
     $this->assertFieldByName('translation_path', $translation_path);
diff --git a/core/modules/locale/src/Tests/LocaleImportFunctionalTest.php b/core/modules/locale/src/Tests/LocaleImportFunctionalTest.php
index 7fb93d9..c1d9a61 100644
--- a/core/modules/locale/src/Tests/LocaleImportFunctionalTest.php
+++ b/core/modules/locale/src/Tests/LocaleImportFunctionalTest.php
@@ -17,7 +17,7 @@ class LocaleImportFunctionalTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'dblog');
+  public static $modules = ['locale', 'dblog'];
 
   /**
    * A user able to create languages and import translations.
@@ -44,8 +44,8 @@ protected function setUp() {
     file_unmanaged_copy(__DIR__ . '/../../tests/test.de.po', 'translations://', FILE_EXISTS_REPLACE);
     file_unmanaged_copy(__DIR__ . '/../../tests/test.xx.po', 'translations://', FILE_EXISTS_REPLACE);
 
-    $this->adminUser = $this->drupalCreateUser(array('administer languages', 'translate interface', 'access administration pages'));
-    $this->adminUserAccessSiteReports = $this->drupalCreateUser(array('administer languages', 'translate interface', 'access administration pages', 'access site reports'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages', 'translate interface', 'access administration pages']);
+    $this->adminUserAccessSiteReports = $this->drupalCreateUser(['administer languages', 'translate interface', 'access administration pages', 'access site reports']);
     $this->drupalLogin($this->adminUser);
 
     // Enable import of translations. By default this is disabled for automated
@@ -60,15 +60,15 @@ protected function setUp() {
    */
   public function testStandalonePoFile() {
     // Try importing a .po file.
-    $this->importPoFile($this->getPoFile(), array(
+    $this->importPoFile($this->getPoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
     $this->config('locale.settings');
     // The import should automatically create the corresponding language.
-    $this->assertRaw(t('The language %language has been created.', array('%language' => 'French')), 'The language has been automatically created.');
+    $this->assertRaw(t('The language %language has been created.', ['%language' => 'French']), 'The language has been automatically created.');
 
     // The import should have created 8 strings.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 8, '%update' => 0, '%delete' => 0)), 'The translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 8, '%update' => 0, '%delete' => 0]), 'The translation file was successfully imported.');
 
     // This import should have saved plural forms to have 2 variants.
     $locale_plurals = \Drupal::service('locale.plural.formula')->getNumberOfPlurals('fr');
@@ -78,14 +78,14 @@ public function testStandalonePoFile() {
     $this->assertUrl(\Drupal::url('locale.translate_page', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
 
     // Try importing a .po file with invalid tags.
-    $this->importPoFile($this->getBadPoFile(), array(
+    $this->importPoFile($this->getBadPoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
 
     // The import should have created 1 string and rejected 2.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 1, '%update' => 0, '%delete' => 0)), 'The translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 1, '%update' => 0, '%delete' => 0]), 'The translation file was successfully imported.');
 
-    $skip_message = \Drupal::translation()->formatPlural(2, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. See the log for details.', array(':url' => \Drupal::url('dblog.overview')));
+    $skip_message = \Drupal::translation()->formatPlural(2, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. See the log for details.', [':url' => \Drupal::url('dblog.overview')]);
     $this->assertRaw($skip_message, 'Unsafe strings were skipped.');
 
     // Repeat the process with a user that can access site reports, and this
@@ -93,19 +93,19 @@ public function testStandalonePoFile() {
     $this->drupalLogin($this->adminUserAccessSiteReports);
 
     // Try importing a .po file with invalid tags.
-    $this->importPoFile($this->getBadPoFile(), array(
+    $this->importPoFile($this->getBadPoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
 
-    $skip_message = \Drupal::translation()->formatPlural(2, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', array(':url' => \Drupal::url('dblog.overview')));
+    $skip_message = \Drupal::translation()->formatPlural(2, 'One translation string was skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', '@count translation strings were skipped because of disallowed or malformed HTML. <a href=":url">See the log</a> for details.', [':url' => \Drupal::url('dblog.overview')]);
     $this->assertRaw($skip_message, 'Unsafe strings were skipped.');
 
     // Check empty files import with a user that cannot access site reports..
     $this->drupalLogin($this->adminUser);
     // Try importing a zero byte sized .po file.
-    $this->importPoFile($this->getEmptyPoFile(), array(
+    $this->importPoFile($this->getEmptyPoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
     // The import should have created 0 string and rejected 0.
     $this->assertRaw(t('One translation file could not be imported. See the log for details.'), 'The empty translation file import reported no translations imported.');
 
@@ -113,35 +113,35 @@ public function testStandalonePoFile() {
     // time the different warnings must contain links to the log.
     $this->drupalLogin($this->adminUserAccessSiteReports);
     // Try importing a zero byte sized .po file.
-    $this->importPoFile($this->getEmptyPoFile(), array(
+    $this->importPoFile($this->getEmptyPoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
     // The import should have created 0 string and rejected 0.
-    $this->assertRaw(t('One translation file could not be imported. <a href=":url">See the log</a> for details.', array(':url' => \Drupal::url('dblog.overview'))), 'The empty translation file import reported no translations imported.');
+    $this->assertRaw(t('One translation file could not be imported. <a href=":url">See the log</a> for details.', [':url' => \Drupal::url('dblog.overview')]), 'The empty translation file import reported no translations imported.');
 
     // Try importing a .po file which doesn't exist.
     $name = $this->randomMachineName(16);
-    $this->drupalPostForm('admin/config/regional/translate/import', array(
+    $this->drupalPostForm('admin/config/regional/translate/import', [
       'langcode' => 'fr',
       'files[file]' => $name,
-    ), t('Import'));
+    ], t('Import'));
     $this->assertUrl(\Drupal::url('locale.translate_import', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
     $this->assertText(t('File to import not found.'), 'File to import not found message.');
 
     // Try importing a .po file with overriding strings, and ensure existing
     // strings are kept.
-    $this->importPoFile($this->getOverwritePoFile(), array(
+    $this->importPoFile($this->getOverwritePoFile(), [
       'langcode' => 'fr',
-    ));
+    ]);
 
     // The import should have created 1 string.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 1, '%update' => 0, '%delete' => 0)), 'The translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 1, '%update' => 0, '%delete' => 0]), 'The translation file was successfully imported.');
     // Ensure string wasn't overwritten.
-    $search = array(
+    $search = [
       'string' => 'Montag',
       'langcode' => 'fr',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), 'String not overwritten by imported string.');
 
@@ -151,19 +151,19 @@ public function testStandalonePoFile() {
 
     // Try importing a .po file with overriding strings, and ensure existing
     // strings are overwritten.
-    $this->importPoFile($this->getOverwritePoFile(), array(
+    $this->importPoFile($this->getOverwritePoFile(), [
       'langcode' => 'fr',
       'overwrite_options[not_customized]' => TRUE,
-    ));
+    ]);
 
     // The import should have updated 2 strings.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 0, '%update' => 2, '%delete' => 0)), 'The translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 0, '%update' => 2, '%delete' => 0]), 'The translation file was successfully imported.');
     // Ensure string was overwritten.
-    $search = array(
+    $search = [
       'string' => 'Montag',
       'langcode' => 'fr',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'String overwritten by imported string.');
     // This import should have changed number of plural forms.
@@ -171,54 +171,54 @@ public function testStandalonePoFile() {
     $this->assertEqual(3, $locale_plurals, 'Plural numbers changed.');
 
     // Importing a .po file and mark its strings as customized strings.
-    $this->importPoFile($this->getCustomPoFile(), array(
+    $this->importPoFile($this->getCustomPoFile(), [
       'langcode' => 'fr',
       'customized' => TRUE,
-    ));
+    ]);
 
     // The import should have created 6 strings.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 6, '%update' => 0, '%delete' => 0)), 'The customized translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 6, '%update' => 0, '%delete' => 0]), 'The customized translation file was successfully imported.');
 
     // The database should now contain 6 customized strings (two imported
     // strings are not translated).
-    $count = db_query('SELECT COUNT(*) FROM {locales_target} WHERE customized = :custom', array(':custom' => 1))->fetchField();
+    $count = db_query('SELECT COUNT(*) FROM {locales_target} WHERE customized = :custom', [':custom' => 1])->fetchField();
     $this->assertEqual($count, 6, 'Customized translations successfully imported.');
 
     // Try importing a .po file with overriding strings, and ensure existing
     // customized strings are kept.
-    $this->importPoFile($this->getCustomOverwritePoFile(), array(
+    $this->importPoFile($this->getCustomOverwritePoFile(), [
       'langcode' => 'fr',
       'overwrite_options[not_customized]' => TRUE,
       'overwrite_options[customized]' => FALSE,
-    ));
+    ]);
 
     // The import should have created 1 string.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 1, '%update' => 0, '%delete' => 0)), 'The customized translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 1, '%update' => 0, '%delete' => 0]), 'The customized translation file was successfully imported.');
     // Ensure string wasn't overwritten.
-    $search = array(
+    $search = [
       'string' => 'januari',
       'langcode' => 'fr',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), 'Customized string not overwritten by imported string.');
 
     // Try importing a .po file with overriding strings, and ensure existing
     // customized strings are overwritten.
-    $this->importPoFile($this->getCustomOverwritePoFile(), array(
+    $this->importPoFile($this->getCustomOverwritePoFile(), [
       'langcode' => 'fr',
       'overwrite_options[not_customized]' => FALSE,
       'overwrite_options[customized]' => TRUE,
-    ));
+    ]);
 
     // The import should have updated 2 strings.
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 0, '%update' => 2, '%delete' => 0)), 'The customized translation file was successfully imported.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 0, '%update' => 2, '%delete' => 0]), 'The customized translation file was successfully imported.');
     // Ensure string was overwritten.
-    $search = array(
+    $search = [
       'string' => 'januari',
       'langcode' => 'fr',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'Customized string overwritten by imported string.');
 
@@ -229,14 +229,14 @@ public function testStandalonePoFile() {
    */
   public function testLanguageContext() {
     // Try importing a .po file.
-    $this->importPoFile($this->getPoFileWithContext(), array(
+    $this->importPoFile($this->getPoFileWithContext(), [
       'langcode' => 'hr',
-    ));
+    ]);
 
     // We cast the return value of t() to string so as to retrieve the
     // translated value, rendered as a string.
-    $this->assertIdentical((string) t('May', array(), array('langcode' => 'hr', 'context' => 'Long month name')), 'Svibanj', 'Long month name context is working.');
-    $this->assertIdentical((string) t('May', array(), array('langcode' => 'hr')), 'Svi.', 'Default context is working.');
+    $this->assertIdentical((string) t('May', [], ['langcode' => 'hr', 'context' => 'Long month name']), 'Svibanj', 'Long month name context is working.');
+    $this->assertIdentical((string) t('May', [], ['langcode' => 'hr']), 'Svi.', 'Default context is working.');
   }
 
   /**
@@ -246,26 +246,26 @@ public function testEmptyMsgstr() {
     $langcode = 'hu';
 
     // Try importing a .po file.
-    $this->importPoFile($this->getPoFileWithMsgstr(), array(
+    $this->importPoFile($this->getPoFileWithMsgstr(), [
       'langcode' => $langcode,
-    ));
+    ]);
 
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 1, '%update' => 0, '%delete' => 0)), 'The translation file was successfully imported.');
-    $this->assertIdentical((string) t('Operations', array(), array('langcode' => $langcode)), 'Műveletek', 'String imported and translated.');
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 1, '%update' => 0, '%delete' => 0]), 'The translation file was successfully imported.');
+    $this->assertIdentical((string) t('Operations', [], ['langcode' => $langcode]), 'Műveletek', 'String imported and translated.');
 
     // Try importing a .po file.
-    $this->importPoFile($this->getPoFileWithEmptyMsgstr(), array(
+    $this->importPoFile($this->getPoFileWithEmptyMsgstr(), [
       'langcode' => $langcode,
       'overwrite_options[not_customized]' => TRUE,
-    ));
-    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', array('%number' => 0, '%update' => 0, '%delete' => 1)), 'The translation file was successfully imported.');
+    ]);
+    $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.', ['%number' => 0, '%update' => 0, '%delete' => 1]), 'The translation file was successfully imported.');
 
     $str = "Operations";
-    $search = array(
+    $search = [
       'string' => $str,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText($str, 'Search found the string as untranslated.');
   }
@@ -276,27 +276,27 @@ public function testEmptyMsgstr() {
   public function testConfigPoFile() {
     // Values for translations to assert. Config key, original string,
     // translation and config property name.
-    $config_strings = array(
-      'system.maintenance' => array(
+    $config_strings = [
+      'system.maintenance' => [
         '@site is currently under maintenance. We should be back shortly. Thank you for your patience.',
         '@site karbantartás alatt áll. Rövidesen visszatérünk. Köszönjük a türelmet.',
         'message',
-      ),
-      'user.role.anonymous' => array(
+      ],
+      'user.role.anonymous' => [
         'Anonymous user',
         'Névtelen felhasználó',
         'label',
-      ),
-    );
+      ],
+    ];
 
     // Add custom language for testing.
     $langcode = 'xx';
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $this->randomMachineName(16),
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Check for the source strings we are going to translate. Adding the
@@ -304,24 +304,24 @@ public function testConfigPoFile() {
     // strings to interface translation executed.
     $locale_storage = $this->container->get('locale.storage');
     foreach ($config_strings as $config_string) {
-      $string = $locale_storage->findString(array('source' => $config_string[0], 'context' => '', 'type' => 'configuration'));
+      $string = $locale_storage->findString(['source' => $config_string[0], 'context' => '', 'type' => 'configuration']);
       $this->assertTrue($string, 'Configuration strings have been created upon installation.');
     }
 
     // Import a .po file to translate.
-    $this->importPoFile($this->getPoFileWithConfig(), array(
+    $this->importPoFile($this->getPoFileWithConfig(), [
       'langcode' => $langcode,
-    ));
+    ]);
 
     // Translations got recorded in the interface translation system.
     foreach ($config_strings as $config_string) {
-      $search = array(
+      $search = [
         'string' => $config_string[0],
         'langcode' => $langcode,
         'translation' => 'all',
-      );
+      ];
       $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
-      $this->assertText($config_string[1], format_string('Translation of @string found.', array('@string' => $config_string[0])));
+      $this->assertText($config_string[1], format_string('Translation of @string found.', ['@string' => $config_string[0]]));
     }
 
     // Test that translations got recorded in the config system.
@@ -340,8 +340,8 @@ public function testConfigtranslationImportingPoFile() {
     $langcode = 'de';
 
     // Import a .po file to translate.
-    $this->importPoFile($this->getPoFileWithConfigDe(), array(
-      'langcode' => $langcode));
+    $this->importPoFile($this->getPoFileWithConfigDe(), [
+      'langcode' => $langcode]);
 
     // Check that the 'Anonymous' string is translated.
     $config = \Drupal::languageManager()->getLanguageConfigOverride($langcode, 'user.settings');
@@ -353,7 +353,7 @@ public function testConfigtranslationImportingPoFile() {
    */
   public function testCreatedLanguageTranslation() {
     // Import a .po file to add de language.
-    $this->importPoFile($this->getPoFileWithConfigDe(), array('langcode' => 'de'));
+    $this->importPoFile($this->getPoFileWithConfigDe(), ['langcode' => 'de']);
 
     // Get the language.entity.de label and check it's been translated.
     $override = \Drupal::languageManager()->getLanguageConfigOverride('de', 'language.entity.de');
@@ -368,7 +368,7 @@ public function testCreatedLanguageTranslation() {
    * @param array $options
    *   (optional) Additional options to pass to the translation import form.
    */
-  public function importPoFile($contents, array $options = array()) {
+  public function importPoFile($contents, array $options = []) {
     $name = \Drupal::service('file_system')->tempnam('temporary://', "po_") . '.po';
     file_put_contents($name, $contents);
     $options['files[file]'] = $name;
diff --git a/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php b/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
index b16ba18..fe99ce2 100644
--- a/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
+++ b/core/modules/locale/src/Tests/LocaleJavascriptTranslationTest.php
@@ -18,7 +18,7 @@ class LocaleJavascriptTranslationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'locale_test');
+  public static $modules = ['locale', 'locale_test'];
 
   public function testFileParsing() {
     $filename = __DIR__ . '/../../tests/locale_test.js';
@@ -29,19 +29,19 @@ public function testFileParsing() {
     // Get all of the source strings that were found.
     $strings = $this->container
       ->get('locale.storage')
-      ->getStrings(array(
+      ->getStrings([
         'type' => 'javascript',
         'name' => $filename,
-      ));
+      ]);
 
-    $source_strings = array();
+    $source_strings = [];
     foreach ($strings as $string) {
       $source_strings[$string->source] = $string->context;
     }
 
     $etx = LOCALE_PLURAL_DELIMITER;
     // List of all strings that should be in the file.
-    $test_strings = array(
+    $test_strings = [
       'Standard Call t' => '',
       'Whitespace Call t' => '',
 
@@ -73,11 +73,11 @@ public function testFileParsing() {
       "Context Unquoted plural{$etx}Context Unquoted @count plural" => 'Context string unquoted',
       "Context Single Quoted plural{$etx}Context Single Quoted @count plural" => 'Context string single quoted',
       "Context Double Quoted plural{$etx}Context Double Quoted @count plural" => 'Context string double quoted',
-    );
+    ];
 
     // Assert that all strings were found properly.
     foreach ($test_strings as $str => $context) {
-      $args = array('%source' => $str, '%context' => $context);
+      $args = ['%source' => $str, '%context' => $context];
 
       // Make sure that the string was found in the file.
       $this->assertTrue(isset($source_strings[$str]), SafeMarkup::format('Found source string: %source', $args));
@@ -95,7 +95,7 @@ public function testFileParsing() {
    */
   public function testLocaleTranslationJsDependencies() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'translate interface']);
 
     // Add custom language.
     $this->drupalLogin($admin_user);
@@ -105,16 +105,16 @@ public function testLocaleTranslationJsDependencies() {
     $name = $this->randomMachineName(16);
     // The domain prefix.
     $prefix = $langcode;
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Set path prefix.
-    $edit = array("prefix[$langcode]" => $prefix);
+    $edit = ["prefix[$langcode]" => $prefix];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
 
     // This forces locale.admin.js string sources to be imported, which contains
@@ -123,11 +123,11 @@ public function testLocaleTranslationJsDependencies() {
 
     // Translate a string in locale.admin.js to our new language.
     $strings = \Drupal::service('locale.storage')
-      ->getStrings(array(
+      ->getStrings([
         'source' => 'Show description',
         'type' => 'javascript',
         'name' => 'core/modules/locale/locale.admin.js',
-      ));
+      ]);
     $string = $strings[0];
 
     $this->drupalPostForm(NULL, ['string' => 'Show description'], t('Filter'));
diff --git a/core/modules/locale/src/Tests/LocaleLibraryAlterTest.php b/core/modules/locale/src/Tests/LocaleLibraryAlterTest.php
index e84e3dd..68996f4 100644
--- a/core/modules/locale/src/Tests/LocaleLibraryAlterTest.php
+++ b/core/modules/locale/src/Tests/LocaleLibraryAlterTest.php
@@ -19,7 +19,7 @@ class LocaleLibraryAlterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   /**
    * Verifies that the datepicker can be localized.
diff --git a/core/modules/locale/src/Tests/LocalePluralFormatTest.php b/core/modules/locale/src/Tests/LocalePluralFormatTest.php
index c0e9041..2315dbd 100644
--- a/core/modules/locale/src/Tests/LocalePluralFormatTest.php
+++ b/core/modules/locale/src/Tests/LocalePluralFormatTest.php
@@ -24,7 +24,7 @@ class LocalePluralFormatTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   /**
    * {@inheritdoc}
@@ -32,7 +32,7 @@ class LocalePluralFormatTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer languages', 'translate interface', 'access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages', 'translate interface', 'access administration pages']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -43,23 +43,23 @@ protected function setUp() {
   public function testGetPluralFormat() {
     // Import some .po files with formulas to set up the environment.
     // These will also add the languages to the system.
-    $this->importPoFile($this->getPoFileWithSimplePlural(), array(
+    $this->importPoFile($this->getPoFileWithSimplePlural(), [
       'langcode' => 'fr',
-    ));
-    $this->importPoFile($this->getPoFileWithComplexPlural(), array(
+    ]);
+    $this->importPoFile($this->getPoFileWithComplexPlural(), [
       'langcode' => 'hr',
-    ));
+    ]);
 
     // Attempt to import some broken .po files as well to prove that these
     // will not overwrite the proper plural formula imported above.
-    $this->importPoFile($this->getPoFileWithMissingPlural(), array(
+    $this->importPoFile($this->getPoFileWithMissingPlural(), [
       'langcode' => 'fr',
       'overwrite_options[not_customized]' => TRUE,
-    ));
-    $this->importPoFile($this->getPoFileWithBrokenPlural(), array(
+    ]);
+    $this->importPoFile($this->getPoFileWithBrokenPlural(), [
       'langcode' => 'hr',
       'overwrite_options[not_customized]' => TRUE,
-    ));
+    ]);
 
     // Reset static caches from locale_get_plural() to ensure we get fresh data.
     drupal_static_reset('locale_get_plural');
@@ -67,49 +67,49 @@ public function testGetPluralFormat() {
     drupal_static_reset('locale');
 
     // Expected plural translation strings for each plural index.
-    $plural_strings = array(
+    $plural_strings = [
       // English is not imported in this case, so we assume built-in text
       // and formulas.
-      'en' => array(
+      'en' => [
         0 => '1 hour',
         1 => '@count hours',
-      ),
-      'fr' => array(
+      ],
+      'fr' => [
         0 => '@count heure',
         1 => '@count heures',
-      ),
-      'hr' => array(
+      ],
+      'hr' => [
         0 => '@count sat',
         1 => '@count sata',
         2 => '@count sati',
-      ),
+      ],
       // Hungarian is not imported, so it should assume the same text as
       // English, but it will always pick the plural form as per the built-in
       // logic, so only index -1 is relevant with the plural value.
-      'hu' => array(
+      'hu' => [
         0 => '1 hour',
         -1 => '@count hours',
-      ),
-    );
+      ],
+    ];
 
     // Expected plural indexes precomputed base on the plural formulas with
     // given $count value.
-    $plural_tests = array(
-      'en' => array(
+    $plural_tests = [
+      'en' => [
         1 => 0,
         0 => 1,
         5 => 1,
         123 => 1,
         235 => 1,
-      ),
-      'fr' => array(
+      ],
+      'fr' => [
         1 => 0,
         0 => 0,
         5 => 1,
         123 => 1,
         235 => 1,
-      ),
-      'hr' => array(
+      ],
+      'hr' => [
         1 => 0,
         21 => 0,
         0 => 2,
@@ -117,13 +117,13 @@ public function testGetPluralFormat() {
         8 => 2,
         123 => 1,
         235 => 2,
-      ),
-      'hu' => array(
+      ],
+      'hu' => [
         1 => -1,
         21 => -1,
         0 => -1,
-      ),
-    );
+      ],
+    ];
 
     foreach ($plural_tests as $langcode => $tests) {
       foreach ($tests as $count => $expected_plural_index) {
@@ -133,14 +133,14 @@ public function testGetPluralFormat() {
         // expected index as per the logic for translation lookups.
         $expected_plural_index = ($count == 1) ? 0 : $expected_plural_index;
         $expected_plural_string = str_replace('@count', $count, $plural_strings[$langcode][$expected_plural_index]);
-        $this->assertIdentical(\Drupal::translation()->formatPlural($count, '1 hour', '@count hours', array(), array('langcode' => $langcode))->render(), $expected_plural_string, 'Plural translation of 1 hours / @count hours for count ' . $count . ' in ' . $langcode . ' is ' . $expected_plural_string);
+        $this->assertIdentical(\Drupal::translation()->formatPlural($count, '1 hour', '@count hours', [], ['langcode' => $langcode])->render(), $expected_plural_string, 'Plural translation of 1 hours / @count hours for count ' . $count . ' in ' . $langcode . ' is ' . $expected_plural_string);
         // DO NOT use translation to pass translated strings into
         // PluralTranslatableMarkup::createFromTranslatedString() this way. It
         // is designed to be used with *already* translated text like settings
         // from configuration. We use PHP translation here just because we have
         // the expected result data in that format.
-        $translated_string = \Drupal::translation()->translate('1 hour' . PluralTranslatableMarkup::DELIMITER . '@count hours', array(), array('langcode' => $langcode));
-        $plural = PluralTranslatableMarkup::createFromTranslatedString($count, $translated_string, array(), array('langcode' => $langcode));
+        $translated_string = \Drupal::translation()->translate('1 hour' . PluralTranslatableMarkup::DELIMITER . '@count hours', [], ['langcode' => $langcode]);
+        $plural = PluralTranslatableMarkup::createFromTranslatedString($count, $translated_string, [], ['langcode' => $langcode]);
         $this->assertIdentical($plural->render(), $expected_plural_string);
       }
     }
@@ -153,9 +153,9 @@ public function testPluralEditDateFormatter() {
 
     // Import some .po files with formulas to set up the environment.
     // These will also add the languages to the system.
-    $this->importPoFile($this->getPoFileWithSimplePlural(), array(
+    $this->importPoFile($this->getPoFileWithSimplePlural(), [
       'langcode' => 'fr',
-    ));
+    ]);
 
     // Set French as the site default language.
     $this->config('system.site')->set('default_langcode', 'fr')->save();
@@ -170,12 +170,12 @@ public function testPluralEditDateFormatter() {
     $this->assertText("seconde", "'Member for' text is translated.");
 
     $path = 'admin/config/regional/translate/';
-    $search = array(
+    $search = [
       'langcode' => 'fr',
       // Limit to only translated strings to ensure that database ordering does
       // not break the test.
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm($path, $search, t('Filter'));
     // Plural values for the langcode fr.
     $this->assertText('@count seconde');
@@ -185,20 +185,20 @@ public function testPluralEditDateFormatter() {
     // langcode here because the language will be English by default and will
     // not save our source string for performance optimization if we do not ask
     // specifically for a language.
-    \Drupal::translation()->formatPlural(1, '1 second', '@count seconds', array(), array('langcode' => 'fr'))->render();
-    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", array(':source' => "1 second" . LOCALE_PLURAL_DELIMITER . "@count seconds"))->fetchField();
+    \Drupal::translation()->formatPlural(1, '1 second', '@count seconds', [], ['langcode' => 'fr'])->render();
+    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", [':source' => "1 second" . LOCALE_PLURAL_DELIMITER . "@count seconds"])->fetchField();
     // Look up editing page for this plural string and check fields.
-    $search = array(
+    $search = [
       'string' => '1 second',
       'langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
     // Save complete translations for the string in langcode fr.
-    $edit = array(
+    $edit = [
       "strings[$lid][translations][0]" => '1 seconde updated',
       "strings[$lid][translations][1]" => '@count secondes updated',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save translations'));
 
     // User interface input for translating seconds should not be duplicated
@@ -218,17 +218,17 @@ public function testPluralEditDateFormatter() {
   public function testPluralEditExport() {
     // Import some .po files with formulas to set up the environment.
     // These will also add the languages to the system.
-    $this->importPoFile($this->getPoFileWithSimplePlural(), array(
+    $this->importPoFile($this->getPoFileWithSimplePlural(), [
       'langcode' => 'fr',
-    ));
-    $this->importPoFile($this->getPoFileWithComplexPlural(), array(
+    ]);
+    $this->importPoFile($this->getPoFileWithComplexPlural(), [
       'langcode' => 'hr',
-    ));
+    ]);
 
     // Get the French translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'fr',
-    ), t('Export'));
+    ], t('Export'));
     // Ensure we have a translation file.
     $this->assertRaw('# French translation of Drupal', 'Exported French translation file.');
     // Ensure our imported translations exist in the file.
@@ -237,9 +237,9 @@ public function testPluralEditExport() {
     $this->assertRaw("msgid \"1 hour\"\nmsgid_plural \"@count hours\"\nmsgstr[0] \"@count heure\"\nmsgstr[1] \"@count heures\"", 'Plural translations exported properly.');
 
     // Get the Croatian translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'hr',
-    ), t('Export'));
+    ], t('Export'));
     // Ensure we have a translation file.
     $this->assertRaw('# Croatian translation of Drupal', 'Exported Croatian translation file.');
     // Ensure our imported translations exist in the file.
@@ -254,9 +254,9 @@ public function testPluralEditExport() {
 
     // Look up editing page for this plural string and check fields.
     $path = 'admin/config/regional/translate/';
-    $search = array(
+    $search = [
       'langcode' => 'hr',
-    );
+    ];
     $this->drupalPostForm($path, $search, t('Filter'));
     // Labels for plural editing elements.
     $this->assertText('Singular form');
@@ -270,15 +270,15 @@ public function testPluralEditExport() {
     $this->assertText('@count sati');
 
     // Edit langcode hr translations and see if that took effect.
-    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", array(':source' => "1 hour" . LOCALE_PLURAL_DELIMITER . "@count hours"))->fetchField();
-    $edit = array(
+    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", [':source' => "1 hour" . LOCALE_PLURAL_DELIMITER . "@count hours"])->fetchField();
+    $edit = [
       "strings[$lid][translations][1]" => '@count sata edited',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save translations'));
 
-    $search = array(
+    $search = [
       'langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // Plural values for the langcode fr.
     $this->assertText('@count heure');
@@ -286,57 +286,57 @@ public function testPluralEditExport() {
     $this->assertNoText('2. plural form');
 
     // Edit langcode fr translations and see if that took effect.
-    $edit = array(
+    $edit = [
       "strings[$lid][translations][0]" => '@count heure edited',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save translations'));
 
     // Inject a plural source string to the database. We need to use a specific
     // langcode here because the language will be English by default and will
     // not save our source string for performance optimization if we do not ask
     // specifically for a language.
-    \Drupal::translation()->formatPlural(1, '1 day', '@count days', array(), array('langcode' => 'fr'))->render();
-    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", array(':source' => "1 day" . LOCALE_PLURAL_DELIMITER . "@count days"))->fetchField();
+    \Drupal::translation()->formatPlural(1, '1 day', '@count days', [], ['langcode' => 'fr'])->render();
+    $lid = db_query("SELECT lid FROM {locales_source} WHERE source = :source AND context = ''", [':source' => "1 day" . LOCALE_PLURAL_DELIMITER . "@count days"])->fetchField();
     // Look up editing page for this plural string and check fields.
-    $search = array(
+    $search = [
       'string' => '1 day',
       'langcode' => 'fr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
     // Save complete translations for the string in langcode fr.
-    $edit = array(
+    $edit = [
       "strings[$lid][translations][0]" => '1 jour',
       "strings[$lid][translations][1]" => '@count jours',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save translations'));
 
     // Save complete translations for the string in langcode hr.
-    $search = array(
+    $search = [
       'string' => '1 day',
       'langcode' => 'hr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
-    $edit = array(
+    $edit = [
       "strings[$lid][translations][0]" => '@count dan',
       "strings[$lid][translations][1]" => '@count dana',
       "strings[$lid][translations][2]" => '@count dana',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save translations'));
 
     // Get the French translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'fr',
-    ), t('Export'));
+    ], t('Export'));
     // Check for plural export specifically.
     $this->assertRaw("msgid \"1 hour\"\nmsgid_plural \"@count hours\"\nmsgstr[0] \"@count heure edited\"\nmsgstr[1] \"@count heures\"", 'Edited French plural translations for hours exported properly.');
     $this->assertRaw("msgid \"1 day\"\nmsgid_plural \"@count days\"\nmsgstr[0] \"1 jour\"\nmsgstr[1] \"@count jours\"", 'Added French plural translations for days exported properly.');
 
     // Get the Croatian translations.
-    $this->drupalPostForm('admin/config/regional/translate/export', array(
+    $this->drupalPostForm('admin/config/regional/translate/export', [
       'langcode' => 'hr',
-    ), t('Export'));
+    ], t('Export'));
     // Check for plural export specifically.
     $this->assertRaw("msgid \"1 hour\"\nmsgid_plural \"@count hours\"\nmsgstr[0] \"@count sat\"\nmsgstr[1] \"@count sata edited\"\nmsgstr[2] \"@count sati\"", 'Edited Croatian plural translations exported properly.');
     $this->assertRaw("msgid \"1 day\"\nmsgid_plural \"@count days\"\nmsgstr[0] \"@count dan\"\nmsgstr[1] \"@count dana\"\nmsgstr[2] \"@count dana\"", 'Added Croatian plural translations exported properly.');
@@ -350,7 +350,7 @@ public function testPluralEditExport() {
    * @param array $options
    *   Additional options to pass to the translation import form.
    */
-  public function importPoFile($contents, array $options = array()) {
+  public function importPoFile($contents, array $options = []) {
     $name = \Drupal::service('file_system')->tempnam('temporary://', "po_") . '.po';
     file_put_contents($name, $contents);
     $options['files[file]'] = $name;
diff --git a/core/modules/locale/src/Tests/LocaleTranslateStringTourTest.php b/core/modules/locale/src/Tests/LocaleTranslateStringTourTest.php
index 5c642f2..a4b1656 100644
--- a/core/modules/locale/src/Tests/LocaleTranslateStringTourTest.php
+++ b/core/modules/locale/src/Tests/LocaleTranslateStringTourTest.php
@@ -23,14 +23,14 @@ class LocaleTranslateStringTourTest extends TourTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'tour');
+  public static $modules = ['locale', 'tour'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('translate interface', 'access tour', 'administer languages'));
+    $this->adminUser = $this->drupalCreateUser(['translate interface', 'access tour', 'administer languages']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -39,7 +39,7 @@ protected function setUp() {
    */
   public function testTranslateStringTourTips() {
     // Add another language so there are no missing form items.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'es';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
diff --git a/core/modules/locale/src/Tests/LocaleTranslationUiTest.php b/core/modules/locale/src/Tests/LocaleTranslationUiTest.php
index aad0119..53f77c1 100644
--- a/core/modules/locale/src/Tests/LocaleTranslationUiTest.php
+++ b/core/modules/locale/src/Tests/LocaleTranslationUiTest.php
@@ -20,16 +20,16 @@ class LocaleTranslationUiTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   /**
    * Enable interface translation to English.
    */
   public function testEnglishTranslation() {
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     $this->drupalLogin($admin_user);
 
-    $this->drupalPostForm('admin/config/regional/language/edit/en', array('locale_translate_english' => TRUE), t('Save language'));
+    $this->drupalPostForm('admin/config/regional/language/edit/en', ['locale_translate_english' => TRUE], t('Save language'));
     $this->assertLinkByHref('/admin/config/regional/translate?langcode=en', 0, 'Enabled interface translation to English.');
   }
 
@@ -38,9 +38,9 @@ public function testEnglishTranslation() {
    */
   public function testStringTranslation() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     // User to translate and delete string.
-    $translate_user = $this->drupalCreateUser(array('translate interface', 'access administration pages'));
+    $translate_user = $this->drupalCreateUser(['translate interface', 'access administration pages']);
     // Code for the language.
     $langcode = 'xx';
     // The English name for the language. This will be translated.
@@ -51,15 +51,15 @@ public function testStringTranslation() {
 
     // Add custom language.
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     // Add string.
-    t($name, array(), array('langcode' => $langcode))->render();
+    t($name, [], ['langcode' => $langcode])->render();
     // Reset locale cache.
     $this->container->get('string_translation')->reset();
     $this->assertRaw('"edit-languages-' . $langcode . '-weight"', 'Language code found.');
@@ -68,11 +68,11 @@ public function testStringTranslation() {
 
     // Search for the name and translate it.
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText($name, 'Search found the string as untranslated.');
 
@@ -81,7 +81,7 @@ public function testStringTranslation() {
     $this->assertNoOption('edit-langcode', 'en', 'No way to translate the string to English.');
     $this->drupalLogout();
     $this->drupalLogin($admin_user);
-    $this->drupalPostForm('admin/config/regional/language/edit/en', array('locale_translate_english' => TRUE), t('Save language'));
+    $this->drupalPostForm('admin/config/regional/language/edit/en', ['locale_translate_english' => TRUE], t('Save language'));
     $this->drupalLogout();
     $this->drupalLogin($translate_user);
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
@@ -90,55 +90,55 @@ public function testStringTranslation() {
     // Assume this is the only result, given the random name.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $translation,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
     $this->assertText(t('The strings have been saved.'), 'The strings have been saved.');
     $url_bits = explode('?', $this->getUrl());
-    $this->assertEqual($url_bits[0], \Drupal::url('locale.translate_page', array(), array('absolute' => TRUE)), 'Correct page redirection.');
-    $search = array(
+    $this->assertEqual($url_bits[0], \Drupal::url('locale.translate_page', [], ['absolute' => TRUE]), 'Correct page redirection.');
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertRaw($translation, 'Non-English translation properly saved.');
 
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => 'en',
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $translation_to_en,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => 'en',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertRaw($translation_to_en, 'English translation properly saved.');
 
-    $this->assertTrue($name != $translation && t($name, array(), array('langcode' => $langcode)) == $translation, 't() works for non-English.');
+    $this->assertTrue($name != $translation && t($name, [], ['langcode' => $langcode]) == $translation, 't() works for non-English.');
     // Refresh the locale() cache to get fresh data from t() below. We are in
     // the same HTTP request and therefore t() is not refreshed by saving the
     // translation above.
     $this->container->get('string_translation')->reset();
     // Now we should get the proper fresh translation from t().
-    $this->assertTrue($name != $translation_to_en && t($name, array(), array('langcode' => 'en')) == $translation_to_en, 't() works for English.');
-    $this->assertTrue(t($name, array(), array('langcode' => LanguageInterface::LANGCODE_SYSTEM)) == $name, 't() works for LanguageInterface::LANGCODE_SYSTEM.');
+    $this->assertTrue($name != $translation_to_en && t($name, [], ['langcode' => 'en']) == $translation_to_en, 't() works for English.');
+    $this->assertTrue(t($name, [], ['langcode' => LanguageInterface::LANGCODE_SYSTEM]) == $name, 't() works for LanguageInterface::LANGCODE_SYSTEM.');
 
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => 'en',
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), 'String is translated.');
 
@@ -148,17 +148,17 @@ public function testStringTranslation() {
     $this->assertText('Enter the password that accompanies your username.');
 
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => 'accompanies your username',
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => 'Please enter your Llama username.',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     $this->drupalLogout();
@@ -169,9 +169,9 @@ public function testStringTranslation() {
     $this->drupalLogin($admin_user);
     $path = 'admin/config/regional/language/delete/' . $langcode;
     // This a confirm form, we do not need any fields changed.
-    $this->drupalPostForm($path, array(), t('Delete'));
+    $this->drupalPostForm($path, [], t('Delete'));
     // We need raw here because %language and %langcode will add HTML.
-    $t_args = array('%language' => $name, '%langcode' => $langcode);
+    $t_args = ['%language' => $name, '%langcode' => $langcode];
     $this->assertRaw(t('The %language (%langcode) language has been removed.', $t_args), 'The test language has been removed.');
     // Reload to remove $name.
     $this->drupalGet($path);
@@ -181,26 +181,26 @@ public function testStringTranslation() {
 
     // Delete the string.
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => 'en',
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // Assume this is the only result, given the random name.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => '',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
     $this->assertRaw($name, 'The strings have been saved.');
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => 'en',
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'The translation has been removed');
   }
@@ -210,7 +210,7 @@ public function testStringTranslation() {
    * properly created and rebuilt on deletion.
    */
   public function testJavaScriptTranslation() {
-    $user = $this->drupalCreateUser(array('translate interface', 'administer languages', 'access administration pages'));
+    $user = $this->drupalCreateUser(['translate interface', 'administer languages', 'access administration pages']);
     $this->drupalLogin($user);
     $config = $this->config('locale.settings');
 
@@ -219,12 +219,12 @@ public function testJavaScriptTranslation() {
     $name = $this->randomMachineName(16);
 
     // Add custom language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->container->get('language_manager')->reset();
 
@@ -234,38 +234,38 @@ public function testJavaScriptTranslation() {
     // {locales_source} table and translate it.
     $query = db_select('locales_source', 's');
     $query->addJoin('INNER', 'locales_location', 'l', 's.lid = l.lid');
-    $source = $query->fields('s', array('source'))
+    $source = $query->fields('s', ['source'])
       ->condition('l.type', 'javascript')
       ->range(0, 1)
       ->execute()
       ->fetchField();
 
-    $search = array(
+    $search = [
       'string' => $source,
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Trigger JavaScript translation parsing and building.
     _locale_rebuild_js($langcode);
 
-    $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: array();
+    $locale_javascripts = \Drupal::state()->get('locale.translation.javascript') ?: [];
     $js_file = 'public://' . $config->get('javascript.directory') . '/' . $langcode . '_' . $locale_javascripts[$langcode] . '.js';
-    $this->assertTrue($result = file_exists($js_file), SafeMarkup::format('JavaScript file created: %file', array('%file' => $result ? $js_file : 'not found')));
+    $this->assertTrue($result = file_exists($js_file), SafeMarkup::format('JavaScript file created: %file', ['%file' => $result ? $js_file : 'not found']));
 
     // Test JavaScript translation rebuilding.
     file_unmanaged_delete($js_file);
-    $this->assertTrue($result = !file_exists($js_file), SafeMarkup::format('JavaScript file deleted: %file', array('%file' => $result ? $js_file : 'found')));
+    $this->assertTrue($result = !file_exists($js_file), SafeMarkup::format('JavaScript file deleted: %file', ['%file' => $result ? $js_file : 'found']));
     _locale_rebuild_js($langcode);
-    $this->assertTrue($result = file_exists($js_file), SafeMarkup::format('JavaScript file rebuilt: %file', array('%file' => $result ? $js_file : 'not found')));
+    $this->assertTrue($result = file_exists($js_file), SafeMarkup::format('JavaScript file rebuilt: %file', ['%file' => $result ? $js_file : 'not found']));
   }
 
   /**
@@ -273,7 +273,7 @@ public function testJavaScriptTranslation() {
    */
   public function testStringValidation() {
     // User to add language and strings.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'translate interface']);
     $this->drupalLogin($admin_user);
     $langcode = 'xx';
     // The English name for the language. This will be translated.
@@ -290,30 +290,30 @@ public function testStringValidation() {
     $bad_translations[$key] = "<BODY ONLOAD=alert('xss')>" . $key;
 
     // Add custom language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     // Add string.
-    t($name, array(), array('langcode' => $langcode))->render();
+    t($name, [], ['langcode' => $langcode])->render();
     // Reset locale cache.
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // Find the edit path.
 
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
     foreach ($bad_translations as $translation) {
-      $edit = array(
+      $edit = [
         $lid => $translation,
-      );
+      ];
       $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
       // Check for a form error on the textarea.
       $form_class = $this->xpath('//form[@id="locale-translate-edit-form"]//textarea/@class');
@@ -327,9 +327,9 @@ public function testStringValidation() {
    */
   public function testStringSearch() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     // User to translate and delete string.
-    $translate_user = $this->drupalCreateUser(array('translate interface', 'access administration pages'));
+    $translate_user = $this->drupalCreateUser(['translate interface', 'access administration pages']);
 
     // Code for the language.
     $langcode = 'xx';
@@ -340,35 +340,35 @@ public function testStringSearch() {
 
     // Add custom language.
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => 'yy',
       'label' => $this->randomMachineName(16),
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Add string.
-    t($name, array(), array('langcode' => $langcode))->render();
+    t($name, [], ['langcode' => $langcode])->render();
     // Reset locale cache.
     $this->container->get('string_translation')->reset();
     $this->drupalLogout();
 
     // Search for the name.
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // assertText() seems to remove the input field where $name always could be
     // found, so this is not a false assert. See how assertNoText succeeds
@@ -377,21 +377,21 @@ public function testStringSearch() {
 
     // Ensure untranslated string doesn't appear if searching on 'only
     // translated strings'.
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), "Search didn't find the string.");
 
     // Ensure untranslated string appears if searching on 'only untranslated
     // strings'.
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'Search found the string.');
 
@@ -400,66 +400,66 @@ public function testStringSearch() {
     // We save the lid from the path.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $translation,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Ensure translated string does appear if searching on 'only
     // translated strings'.
-    $search = array(
+    $search = [
       'string' => $translation,
       'langcode' => $langcode,
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'Search found the translation.');
 
     // Ensure translated source string doesn't appear if searching on 'only
     // untranslated strings'.
-    $search = array(
+    $search = [
       'string' => $name,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), "Search didn't find the source string.");
 
     // Ensure translated string doesn't appear if searching on 'only
     // untranslated strings'.
-    $search = array(
+    $search = [
       'string' => $translation,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), "Search didn't find the translation.");
 
     // Ensure translated string does appear if searching on the custom language.
-    $search = array(
+    $search = [
       'string' => $translation,
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'Search found the translation.');
 
     // Ensure translated string doesn't appear if searching in System (English).
-    $search = array(
+    $search = [
       'string' => $translation,
       'langcode' => 'yy',
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), "Search didn't find the translation.");
 
     // Search for a string that isn't in the system.
     $unavailable_string = $this->randomMachineName(16);
-    $search = array(
+    $search = [
       'string' => $unavailable_string,
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText(t('No strings available.'), "Search didn't find the invalid string.");
   }
@@ -468,35 +468,35 @@ public function testStringSearch() {
    * Tests that only changed strings are saved customized when edited.
    */
   public function testUICustomizedStrings() {
-    $user = $this->drupalCreateUser(array('translate interface', 'administer languages', 'access administration pages'));
+    $user = $this->drupalCreateUser(['translate interface', 'administer languages', 'access administration pages']);
     $this->drupalLogin($user);
     ConfigurableLanguage::createFromLangcode('de')->save();
 
     // Create test source string.
-    $string = $this->container->get('locale.storage')->createString(array(
+    $string = $this->container->get('locale.storage')->createString([
       'source' => $this->randomMachineName(100),
       'context' => $this->randomMachineName(20),
-    ))->save();
+    ])->save();
 
     // Create translation for new string and save it as non-customized.
-    $translation = $this->container->get('locale.storage')->createTranslation(array(
+    $translation = $this->container->get('locale.storage')->createTranslation([
       'lid' => $string->lid,
       'language' => 'de',
       'translation' => $this->randomMachineName(100),
       'customized' => 0,
-    ))->save();
+    ])->save();
 
     // Reset locale cache.
     $this->container->get('string_translation')->reset();
 
     // Ensure non-customized translation string does appear if searching
     // non-customized translation.
-    $search = array(
+    $search = [
       'string' => $string->getString(),
       'langcode' => 'de',
       'translation' => 'translated',
       'customized' => '0',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
 
     $this->assertText($translation->getString(), 'Translation is found in search result.');
@@ -504,38 +504,38 @@ public function testUICustomizedStrings() {
     // Submit the translations without changing the translation.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $translation->getString(),
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Ensure unchanged translation string does appear if searching
     // non-customized translation.
-    $search = array(
+    $search = [
       'string' => $string->getString(),
       'langcode' => 'de',
       'translation' => 'translated',
       'customized' => '0',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText($string->getString(), 'Translation is not marked as customized.');
 
     // Submit the translations with a new translation.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $this->randomMachineName(100),
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Ensure changed translation string does appear if searching customized
     // translation.
-    $search = array(
+    $search = [
       'string' => $string->getString(),
       'langcode' => 'de',
       'translation' => 'translated',
       'customized' => '1',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText($string->getString(), "Translation is marked as customized.");
   }
diff --git a/core/modules/locale/src/Tests/LocaleUpdateBase.php b/core/modules/locale/src/Tests/LocaleUpdateBase.php
index 85196ad..b228a96 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateBase.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateBase.php
@@ -45,7 +45,7 @@
    *
    * @var array
    */
-  public static $modules = array('locale', 'locale_test');
+  public static $modules = ['locale', 'locale_test'];
 
   /**
    * {@inheritdoc}
@@ -85,10 +85,10 @@ protected function setTranslationsDirectory($path) {
    *   The language code of the language to add.
    */
   protected function addLanguage($langcode) {
-    $edit = array('predefined_langcode' => $langcode);
+    $edit = ['predefined_langcode' => $langcode];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     $this->container->get('language_manager')->reset();
-    $this->assertTrue(\Drupal::languageManager()->getLanguage($langcode), SafeMarkup::format('Language %langcode added.', array('%langcode' => $langcode)));
+    $this->assertTrue(\Drupal::languageManager()->getLanguage($langcode), SafeMarkup::format('Language %langcode added.', ['%langcode' => $langcode]));
   }
 
   /**
@@ -105,7 +105,7 @@ protected function addLanguage($langcode) {
    *   singular strings are supported, no plurals. No double quotes are allowed
    *   in source and translations strings.
    */
-  protected function makePoFile($path, $filename, $timestamp = NULL, array $translations = array()) {
+  protected function makePoFile($path, $filename, $timestamp = NULL, array $translations = []) {
     $timestamp = $timestamp ? $timestamp : REQUEST_TIME;
     $path = 'public://' . $path;
     $text = '';
@@ -184,9 +184,9 @@ protected function setTranslationFiles() {
     $config->set('translation.default_filename', '%project-%version.%language._po')->save();
 
     // Setting up sets of translations for the translation files.
-    $translations_one = array('January' => 'Januar_1', 'February' => 'Februar_1', 'March' => 'Marz_1');
-    $translations_two = array('February' => 'Februar_2', 'March' => 'Marz_2', 'April' => 'April_2');
-    $translations_three = array('April' => 'April_3', 'May' => 'Mai_3', 'June' => 'Juni_3');
+    $translations_one = ['January' => 'Januar_1', 'February' => 'Februar_1', 'March' => 'Marz_1'];
+    $translations_two = ['February' => 'Februar_2', 'March' => 'Marz_2', 'April' => 'April_2'];
+    $translations_three = ['April' => 'April_3', 'May' => 'Mai_3', 'June' => 'Juni_3'];
 
     // Add a number of files to the local file system to serve as remote
     // translation server and match the project definitions set in
@@ -212,71 +212,71 @@ protected function setCurrentTranslations() {
     // Add non customized translations to the database.
     $langcode = 'de';
     $context = '';
-    $non_customized_translations = array(
+    $non_customized_translations = [
       'March' => 'Marz',
       'June' => 'Juni',
-    );
+    ];
     foreach ($non_customized_translations as $source => $translation) {
-      $string = $this->container->get('locale.storage')->createString(array(
+      $string = $this->container->get('locale.storage')->createString([
         'source' => $source,
         'context' => $context,
-      ))
+      ])
         ->save();
-      $this->container->get('locale.storage')->createTranslation(array(
+      $this->container->get('locale.storage')->createTranslation([
         'lid' => $string->getId(),
         'language' => $langcode,
         'translation' => $translation,
         'customized' => LOCALE_NOT_CUSTOMIZED,
-      ))->save();
+      ])->save();
     }
 
     // Add customized translations to the database.
-    $customized_translations = array(
+    $customized_translations = [
       'January' => 'Januar_customized',
       'February' => 'Februar_customized',
       'May' => 'Mai_customized',
-    );
+    ];
     foreach ($customized_translations as $source => $translation) {
-      $string = $this->container->get('locale.storage')->createString(array(
+      $string = $this->container->get('locale.storage')->createString([
         'source' => $source,
         'context' => $context,
-      ))
+      ])
         ->save();
-      $this->container->get('locale.storage')->createTranslation(array(
+      $this->container->get('locale.storage')->createTranslation([
         'lid' => $string->getId(),
         'language' => $langcode,
         'translation' => $translation,
         'customized' => LOCALE_CUSTOMIZED,
-      ))->save();
+      ])->save();
     }
 
     // Add a state of current translations in locale_files.
-    $default = array(
+    $default = [
       'langcode' => $langcode,
       'uri' => '',
       'timestamp' => $this->timestampMedium,
       'last_checked' => $this->timestampMedium,
-    );
-    $data[] = array(
+    ];
+    $data[] = [
       'project' => 'contrib_module_one',
       'filename' => 'contrib_module_one-8.x-1.1.de._po',
       'version' => '8.x-1.1',
-    );
-    $data[] = array(
+    ];
+    $data[] = [
       'project' => 'contrib_module_two',
       'filename' => 'contrib_module_two-8.x-2.0-beta4.de._po',
       'version' => '8.x-2.0-beta4',
-    );
-    $data[] = array(
+    ];
+    $data[] = [
       'project' => 'contrib_module_three',
       'filename' => 'contrib_module_three-8.x-1.0.de._po',
       'version' => '8.x-1.0',
-    );
-    $data[] = array(
+    ];
+    $data[] = [
       'project' => 'custom_module_one',
       'filename' => 'custom_module_one.de.po',
       'version' => '',
-    );
+    ];
     foreach ($data as $file) {
       $file = array_merge($default, $file);
       db_insert('locale_file')->fields($file)->execute();
@@ -297,9 +297,9 @@ protected function setCurrentTranslations() {
    *   (optional) A message to display with the assertion.
    */
   protected function assertTranslation($source, $translation, $langcode, $message = '') {
-    $db_translation = db_query('SELECT translation FROM {locales_target} lt INNER JOIN {locales_source} ls ON ls.lid = lt.lid WHERE ls.source = :source AND lt.language = :langcode', array(':source' => $source, ':langcode' => $langcode))->fetchField();
+    $db_translation = db_query('SELECT translation FROM {locales_target} lt INNER JOIN {locales_source} ls ON ls.lid = lt.lid WHERE ls.source = :source AND lt.language = :langcode', [':source' => $source, ':langcode' => $langcode])->fetchField();
     $db_translation = $db_translation == FALSE ? '' : $db_translation;
-    $this->assertEqual($translation, $db_translation, $message ? $message : format_string('Correct translation of %source (%language)', array('%source' => $source, '%language' => $langcode)));
+    $this->assertEqual($translation, $db_translation, $message ? $message : format_string('Correct translation of %source (%language)', ['%source' => $source, '%language' => $langcode]));
   }
 
 }
diff --git a/core/modules/locale/src/Tests/LocaleUpdateCronTest.php b/core/modules/locale/src/Tests/LocaleUpdateCronTest.php
index 569b818..78a14ec 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateCronTest.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateCronTest.php
@@ -9,14 +9,14 @@
  */
 class LocaleUpdateCronTest extends LocaleUpdateBase {
 
-  protected $batchOutput = array();
+  protected $batchOutput = [];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface']);
     $this->drupalLogin($admin_user);
     $this->addLanguage('de');
   }
@@ -35,7 +35,7 @@ public function testUpdateCron() {
 
     // Update translations using batch to ensure a clean test starting point.
     $this->drupalGet('admin/reports/translations/check');
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Store translation status for comparison.
     $initial_history = locale_translation_get_file_history();
@@ -48,16 +48,16 @@ public function testUpdateCron() {
     // Prepare for test: Simulate that the file has not been checked for a long
     // time. Set the last_check timestamp to zero.
     $query = db_update('locale_file');
-    $query->fields(array('last_checked' => 0));
+    $query->fields(['last_checked' => 0]);
     $query->condition('project', 'contrib_module_two');
     $query->condition('langcode', 'de');
     $query->execute();
 
     // Test: Disable cron update and verify that no tasks are added to the
     // queue.
-    $edit = array(
+    $edit = [
       'update_interval_days' => 0,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Execute locale cron tasks to add tasks to the queue.
@@ -70,9 +70,9 @@ public function testUpdateCron() {
     // Test: Enable cron update and check if update tasks are added to the
     // queue.
     // Set cron update to Weekly.
-    $edit = array(
+    $edit = [
       'update_interval_days' => 7,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Execute locale cron tasks to add tasks to the queue.
diff --git a/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php b/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php
index cfd2446..3d7970b 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateDevelopmentReleaseTest.php
@@ -11,14 +11,14 @@
  */
 class LocaleUpdateDevelopmentReleaseTest extends WebTestBase {
 
-  public static $modules = array('locale', 'locale_test_development_release');
+  public static $modules = ['locale', 'locale_test_development_release'];
 
   protected function setUp() {
     parent::setUp();
     module_load_include('compare.inc', 'locale');
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer languages', 'access administration pages', 'translate interface']);
     $this->drupalLogin($admin_user);
-    $this->drupalPostForm('admin/config/regional/language/add', array('predefined_langcode' => 'hu'), t('Add language'));
+    $this->drupalPostForm('admin/config/regional/language/add', ['predefined_langcode' => 'hu'], t('Add language'));
   }
 
   public function testLocaleUpdateDevelopmentRelease() {
diff --git a/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php b/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
index 45740ac..32928b1 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateInterfaceTest.php
@@ -17,14 +17,14 @@ class LocaleUpdateInterfaceTest extends LocaleUpdateBase {
    *
    * @var array
    */
-  public static $modules = array('locale_test_translate');
+  public static $modules = ['locale_test_translate'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface']);
     $this->drupalLogin($admin_user);
   }
 
@@ -41,7 +41,7 @@ public function testInterface() {
     $this->assertNoText(t('Translation update status'), 'No status message');
 
     $this->drupalGet('admin/reports/translations');
-    $this->assertRaw(t('No translatable languages available. <a href=":add_language">Add a language</a> first.', array(':add_language' => \Drupal::url('entity.configurable_language.collection'))), 'Language message');
+    $this->assertRaw(t('No translatable languages available. <a href=":add_language">Add a language</a> first.', [':add_language' => \Drupal::url('entity.configurable_language.collection')]), 'Language message');
 
     // Add German language.
     $this->addLanguage('de');
@@ -66,9 +66,9 @@ public function testInterface() {
     // Check if updates are available for German.
     $this->drupalGet('admin/reports/status');
     $this->assertText(t('Translation update status'), 'Status message');
-    $this->assertRaw(t('Updates available for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', array('@languages' => t('German'), ':updates' => \Drupal::url('locale.translate_status'))), 'Updates available message');
+    $this->assertRaw(t('Updates available for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', ['@languages' => t('German'), ':updates' => \Drupal::url('locale.translate_status')]), 'Updates available message');
     $this->drupalGet('admin/reports/translations');
-    $this->assertText(t('Updates for: @modules', array('@modules' => 'Locale test translate')), 'Translations available');
+    $this->assertText(t('Updates for: @modules', ['@modules' => 'Locale test translate']), 'Translations available');
 
     // Set locale_test_translate module to have a dev release and no
     // translation found.
@@ -80,13 +80,13 @@ public function testInterface() {
     // Check if no updates were found.
     $this->drupalGet('admin/reports/status');
     $this->assertText(t('Translation update status'), 'Status message');
-    $this->assertRaw(t('Missing translations for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', array('@languages' => t('German'), ':updates' => \Drupal::url('locale.translate_status'))), 'Missing translations message');
+    $this->assertRaw(t('Missing translations for: @languages. See the <a href=":updates">Available translation updates</a> page for more information.', ['@languages' => t('German'), ':updates' => \Drupal::url('locale.translate_status')]), 'Missing translations message');
     $this->drupalGet('admin/reports/translations');
     $this->assertText(t('Missing translations for one project'), 'No translations found');
     $release_details = new FormattableMarkup('@module (@version). @info', [
       '@module' => 'Locale test translate',
       '@version' => '1.3-dev',
-      '@info' => t('File not found at %local_path', array('%local_path' => 'core/modules/locale/tests/test.de.po'))
+      '@info' => t('File not found at %local_path', ['%local_path' => 'core/modules/locale/tests/test.de.po'])
     ]);
     $this->assertRaw($release_details->__toString(), 'Release details');
 
@@ -100,7 +100,7 @@ public function testInterface() {
     // Check if Drupal core is not translated.
     $this->drupalGet('admin/reports/translations');
     $this->assertText(t('Missing translations for 2 projects'), 'No translations found');
-    $this->assertText(t('@module (@version).', array('@module' => t('Drupal core'), '@version' => '8.1.1')), 'Release details');
+    $this->assertText(t('@module (@version).', ['@module' => t('Drupal core'), '@version' => '8.1.1']), 'Release details');
 
     // Override Drupal core translation status as 'translations available'.
     $status = locale_translation_get_status();
@@ -111,8 +111,8 @@ public function testInterface() {
 
     // Check if translations are available for Drupal core.
     $this->drupalGet('admin/reports/translations');
-    $this->assertText(t('Updates for: @project', array('@project' => t('Drupal core'))), 'Translations found');
-    $this->assertText(SafeMarkup::format('@module (@date)', array('@module' => t('Drupal core'), '@date' => format_date(REQUEST_TIME, 'html_date'))), 'Core translation update');
+    $this->assertText(t('Updates for: @project', ['@project' => t('Drupal core')]), 'Translations found');
+    $this->assertText(SafeMarkup::format('@module (@date)', ['@module' => t('Drupal core'), '@date' => format_date(REQUEST_TIME, 'html_date')]), 'Core translation update');
     $update_button = $this->xpath('//input[@type="submit"][@value="' . t('Update translations') . '"]');
     $this->assertTrue($update_button, 'Update translations button');
   }
diff --git a/core/modules/locale/src/Tests/LocaleUpdateTest.php b/core/modules/locale/src/Tests/LocaleUpdateTest.php
index 999f01b..957419b 100644
--- a/core/modules/locale/src/Tests/LocaleUpdateTest.php
+++ b/core/modules/locale/src/Tests/LocaleUpdateTest.php
@@ -18,7 +18,7 @@ protected function setUp() {
     parent::setUp();
     module_load_include('compare.inc', 'locale');
     module_load_include('fetch.inc', 'locale');
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface']);
     $this->drupalLogin($admin_user);
     // We use German as test language. This language must match the translation
     // file that come with the locale_test module (test.de.po) and can therefore
@@ -42,7 +42,7 @@ public function testUpdateProjects() {
     $projects = locale_translation_project_list();
     $this->assertFalse(isset($projects['locale_test_translate']), 'Hidden module not found');
     $this->assertEqual($projects['locale_test']['info']['interface translation server pattern'], 'core/modules/locale/test/test.%language.po', 'Interface translation parameter found in project info.');
-    $this->assertEqual($projects['locale_test']['name'], 'locale_test', format_string('%key found in project info.', array('%key' => 'interface translation project')));
+    $this->assertEqual($projects['locale_test']['name'], 'locale_test', format_string('%key found in project info.', ['%key' => 'interface translation project']));
   }
 
   /**
@@ -74,9 +74,9 @@ public function testUpdateCheckStatus() {
     $config->set('translation.default_filename', '%project-%version.%language._po')->save();
 
     // Set the test conditions.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_LOCAL,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Get status of translation sources at local file system.
@@ -90,9 +90,9 @@ public function testUpdateCheckStatus() {
     $this->assertEqual($result['custom_module_one']['de']->type, LOCALE_TRANSLATION_LOCAL, 'Translation of custom_module_one found');
 
     // Set the test conditions.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_REMOTE_AND_LOCAL,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Get status of translation sources at both local and remote locations.
@@ -124,10 +124,10 @@ public function testUpdateImportSourceRemote() {
     $config->set('translation.default_filename', '%project-%version.%language._po');
 
     // Set the update conditions for this test.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_REMOTE_AND_LOCAL,
       'overwrite' => LOCALE_TRANSLATION_OVERWRITE_ALL,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Get the translation status.
@@ -140,7 +140,7 @@ public function testUpdateImportSourceRemote() {
     $this->assertText('Contributed module two (' . format_date($this->timestampNew, 'html_date') . ')', 'Updates for Contrib module two');
 
     // Execute the translation update.
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Check if the translation has been updated, using the status cache.
     $status = locale_translation_get_status();
@@ -161,13 +161,13 @@ public function testUpdateImportSourceRemote() {
     $this->assertEqual($history['contrib_module_three']['de']->last_checked, $this->timestampMedium, 'Translation of contrib_module_three is not updated');
 
     // Check whether existing translations have (not) been overwritten.
-    $this->assertEqual(t('January', array(), array('langcode' => 'de')), 'Januar_1', 'Translation of January');
-    $this->assertEqual(t('February', array(), array('langcode' => 'de')), 'Februar_2', 'Translation of February');
-    $this->assertEqual(t('March', array(), array('langcode' => 'de')), 'Marz_2', 'Translation of March');
-    $this->assertEqual(t('April', array(), array('langcode' => 'de')), 'April_2', 'Translation of April');
-    $this->assertEqual(t('May', array(), array('langcode' => 'de')), 'Mai_customized', 'Translation of May');
-    $this->assertEqual(t('June', array(), array('langcode' => 'de')), 'Juni', 'Translation of June');
-    $this->assertEqual(t('Monday', array(), array('langcode' => 'de')), 'Montag', 'Translation of Monday');
+    $this->assertEqual(t('January', [], ['langcode' => 'de']), 'Januar_1', 'Translation of January');
+    $this->assertEqual(t('February', [], ['langcode' => 'de']), 'Februar_2', 'Translation of February');
+    $this->assertEqual(t('March', [], ['langcode' => 'de']), 'Marz_2', 'Translation of March');
+    $this->assertEqual(t('April', [], ['langcode' => 'de']), 'April_2', 'Translation of April');
+    $this->assertEqual(t('May', [], ['langcode' => 'de']), 'Mai_customized', 'Translation of May');
+    $this->assertEqual(t('June', [], ['langcode' => 'de']), 'Juni', 'Translation of June');
+    $this->assertEqual(t('Monday', [], ['langcode' => 'de']), 'Montag', 'Translation of Monday');
   }
 
   /**
@@ -186,15 +186,15 @@ public function testUpdateImportSourceLocal() {
     $config->set('translation.default_filename', '%project-%version.%language._po');
 
     // Set the update conditions for this test.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_LOCAL,
       'overwrite' => LOCALE_TRANSLATION_OVERWRITE_ALL,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Execute the translation update.
     $this->drupalGet('admin/reports/translations/check');
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Check if the translation has been updated, using the status cache.
     $status = locale_translation_get_status();
@@ -215,13 +215,13 @@ public function testUpdateImportSourceLocal() {
     $this->assertEqual($history['contrib_module_three']['de']->last_checked, $this->timestampMedium, 'Translation of contrib_module_three is not updated');
 
     // Check whether existing translations have (not) been overwritten.
-    $this->assertEqual(t('January', array(), array('langcode' => 'de')), 'Januar_customized', 'Translation of January');
-    $this->assertEqual(t('February', array(), array('langcode' => 'de')), 'Februar_2', 'Translation of February');
-    $this->assertEqual(t('March', array(), array('langcode' => 'de')), 'Marz_2', 'Translation of March');
-    $this->assertEqual(t('April', array(), array('langcode' => 'de')), 'April_2', 'Translation of April');
-    $this->assertEqual(t('May', array(), array('langcode' => 'de')), 'Mai_customized', 'Translation of May');
-    $this->assertEqual(t('June', array(), array('langcode' => 'de')), 'Juni', 'Translation of June');
-    $this->assertEqual(t('Monday', array(), array('langcode' => 'de')), 'Montag', 'Translation of Monday');
+    $this->assertEqual(t('January', [], ['langcode' => 'de']), 'Januar_customized', 'Translation of January');
+    $this->assertEqual(t('February', [], ['langcode' => 'de']), 'Februar_2', 'Translation of February');
+    $this->assertEqual(t('March', [], ['langcode' => 'de']), 'Marz_2', 'Translation of March');
+    $this->assertEqual(t('April', [], ['langcode' => 'de']), 'April_2', 'Translation of April');
+    $this->assertEqual(t('May', [], ['langcode' => 'de']), 'Mai_customized', 'Translation of May');
+    $this->assertEqual(t('June', [], ['langcode' => 'de']), 'Juni', 'Translation of June');
+    $this->assertEqual(t('Monday', [], ['langcode' => 'de']), 'Montag', 'Translation of Monday');
   }
 
   /**
@@ -240,24 +240,24 @@ public function testUpdateImportModeNonCustomized() {
     $config->set('translation.default_filename', '%project-%version.%language._po');
 
     // Set the test conditions.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_REMOTE_AND_LOCAL,
       'overwrite' => LOCALE_TRANSLATION_OVERWRITE_NON_CUSTOMIZED,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Execute translation update.
     $this->drupalGet('admin/reports/translations/check');
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Check whether existing translations have (not) been overwritten.
-    $this->assertEqual(t('January', array(), array('langcode' => 'de')), 'Januar_customized', 'Translation of January');
-    $this->assertEqual(t('February', array(), array('langcode' => 'de')), 'Februar_customized', 'Translation of February');
-    $this->assertEqual(t('March', array(), array('langcode' => 'de')), 'Marz_2', 'Translation of March');
-    $this->assertEqual(t('April', array(), array('langcode' => 'de')), 'April_2', 'Translation of April');
-    $this->assertEqual(t('May', array(), array('langcode' => 'de')), 'Mai_customized', 'Translation of May');
-    $this->assertEqual(t('June', array(), array('langcode' => 'de')), 'Juni', 'Translation of June');
-    $this->assertEqual(t('Monday', array(), array('langcode' => 'de')), 'Montag', 'Translation of Monday');
+    $this->assertEqual(t('January', [], ['langcode' => 'de']), 'Januar_customized', 'Translation of January');
+    $this->assertEqual(t('February', [], ['langcode' => 'de']), 'Februar_customized', 'Translation of February');
+    $this->assertEqual(t('March', [], ['langcode' => 'de']), 'Marz_2', 'Translation of March');
+    $this->assertEqual(t('April', [], ['langcode' => 'de']), 'April_2', 'Translation of April');
+    $this->assertEqual(t('May', [], ['langcode' => 'de']), 'Mai_customized', 'Translation of May');
+    $this->assertEqual(t('June', [], ['langcode' => 'de']), 'Juni', 'Translation of June');
+    $this->assertEqual(t('Monday', [], ['langcode' => 'de']), 'Montag', 'Translation of Monday');
   }
 
   /**
@@ -276,15 +276,15 @@ public function testUpdateImportModeNone() {
     $config->set('translation.default_filename', '%project-%version.%language._po');
 
     // Set the test conditions.
-    $edit = array(
+    $edit = [
       'use_source' => LOCALE_TRANSLATION_USE_SOURCE_REMOTE_AND_LOCAL,
       'overwrite' => LOCALE_TRANSLATION_OVERWRITE_NONE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate/settings', $edit, t('Save configuration'));
 
     // Execute translation update.
     $this->drupalGet('admin/reports/translations/check');
-    $this->drupalPostForm('admin/reports/translations', array(), t('Update translations'));
+    $this->drupalPostForm('admin/reports/translations', [], t('Update translations'));
 
     // Check whether existing translations have (not) been overwritten.
     $this->assertTranslation('January', 'Januar_customized', 'de');
@@ -307,21 +307,21 @@ public function testEnableUninstallModule() {
     $this->assertTranslation('Tuesday', '', 'de');
 
     // Enable a module.
-    $edit = array(
+    $edit = [
       'modules[locale_test_translate][enable]' => 'locale_test_translate',
-    );
+    ];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Check if translations have been imported.
     $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.',
-      array('%number' => 7, '%update' => 0, '%delete' => 0)), 'One translation file imported.');
+      ['%number' => 7, '%update' => 0, '%delete' => 0]), 'One translation file imported.');
     $this->assertTranslation('Tuesday', 'Dienstag', 'de');
 
-    $edit = array(
+    $edit = [
       'uninstall[locale_test_translate]' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
-    $this->drupalPostForm(NULL, array(), t('Uninstall'));
+    $this->drupalPostForm(NULL, [], t('Uninstall'));
 
     // Check if the file data is removed from the database.
     $history = locale_translation_get_file_history();
@@ -342,9 +342,9 @@ public function testEnableLanguage() {
     \Drupal::state()->set('locale.test_system_info_alter', TRUE);
 
     // Enable a module.
-    $edit = array(
+    $edit = [
       'modules[locale_test_translate][enable]' => 'locale_test_translate',
-    );
+    ];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Check if there is no Dutch translation yet.
@@ -352,14 +352,14 @@ public function testEnableLanguage() {
     $this->assertTranslation('Tuesday', 'Dienstag', 'de');
 
     // Add a language.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'nl',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Check if the right number of translations are added.
     $this->assertRaw(t('One translation file imported. %number translations were added, %update translations were updated and %delete translations were removed.',
-      array('%number' => 8, '%update' => 0, '%delete' => 0)), 'One language added.');
+      ['%number' => 8, '%update' => 0, '%delete' => 0]), 'One language added.');
     $this->assertTranslation('Extraday', 'extra dag', 'nl');
 
     // Check if the language data is added to the database.
@@ -367,7 +367,7 @@ public function testEnableLanguage() {
     $this->assertTrue($result, 'Files added to file history');
 
     // Remove a language.
-    $this->drupalPostForm('admin/config/regional/language/delete/nl', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/nl', [], t('Delete'));
 
     // Check if the language data is removed from the database.
     $result = db_query("SELECT project FROM {locale_file} WHERE langcode='nl'")->fetchField();
@@ -386,21 +386,21 @@ public function testEnableCustomLanguage() {
     \Drupal::state()->set('locale.test_system_info_alter', TRUE);
 
     // Enable a module.
-    $edit = array(
+    $edit = [
       'modules[locale_test_translate][enable]' => 'locale_test_translate',
-    );
+    ];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Create a custom language with language code 'xx' and a random
     // name.
     $langcode = 'xx';
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Ensure the translation file is automatically imported when the language
@@ -409,31 +409,31 @@ public function testEnableCustomLanguage() {
     $this->assertText(t('One translation string was skipped because of disallowed or malformed HTML'), 'Language file automatically imported.');
 
     // Ensure the strings were successfully imported.
-    $search = array(
+    $search = [
       'string' => 'lundi',
       'langcode' => $langcode,
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available.'), 'String successfully imported.');
 
     // Ensure the multiline string was imported.
-    $search = array(
+    $search = [
       'string' => 'Source string for multiline translation',
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText('Multiline translation string to make sure that import works with it.', 'String successfully imported.');
 
     // Ensure 'Allowed HTML source string' was imported but the translation for
     // 'Another allowed HTML source string' was not because it contains invalid
     // HTML.
-    $search = array(
+    $search = [
       'string' => 'HTML source string',
       'langcode' => $langcode,
       'translation' => 'all',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertText('Allowed HTML source string', 'String successfully imported.');
     $this->assertNoText('Another allowed HTML source string', 'String with disallowed translation not imported.');
diff --git a/core/modules/locale/src/TranslationString.php b/core/modules/locale/src/TranslationString.php
index 917e874..63f4543 100644
--- a/core/modules/locale/src/TranslationString.php
+++ b/core/modules/locale/src/TranslationString.php
@@ -42,7 +42,7 @@ class TranslationString extends StringBase {
   /**
    * {@inheritdoc}
    */
-  public function __construct($values = array()) {
+  public function __construct($values = []) {
     parent::__construct($values);
     if (!isset($this->isNew)) {
       // We mark the string as not new if it is a complete translation.
diff --git a/core/modules/locale/tests/modules/locale_test/locale_test.module b/core/modules/locale/tests/modules/locale_test/locale_test.module
index b59dfee..89ba2ba 100644
--- a/core/modules/locale/tests/modules/locale_test/locale_test.module
+++ b/core/modules/locale/tests/modules/locale_test/locale_test.module
@@ -57,10 +57,10 @@ function locale_test_locale_translation_projects_alter(&$projects) {
     $remote_url = $url . PublicStream::basePath() . '/remote/';
 
     // Completely replace the project data with a set of test projects.
-    $projects = array(
-      'contrib_module_one' => array(
+    $projects = [
+      'contrib_module_one' => [
         'name' => 'contrib_module_one',
-        'info' => array(
+        'info' => [
           'name' => 'Contributed module one',
           'interface translation server pattern' => $remote_url . '%core/%project/%project-%version.%language._po',
           'package' => 'Other',
@@ -68,14 +68,14 @@ function locale_test_locale_translation_projects_alter(&$projects) {
           'project' => 'contrib_module_one',
           'datestamp' => '1344471537',
           '_info_file_ctime' => 1348767306,
-        ),
+        ],
         'datestamp' => '1344471537',
         'project_type' => 'module',
         'project_status' => TRUE,
-      ),
-      'contrib_module_two' => array(
+      ],
+      'contrib_module_two' => [
         'name' => 'contrib_module_two',
-        'info' => array(
+        'info' => [
           'name' => 'Contributed module two',
           'interface translation server pattern' => $remote_url . '%core/%project/%project-%version.%language._po',
           'package' => 'Other',
@@ -83,14 +83,14 @@ function locale_test_locale_translation_projects_alter(&$projects) {
           'project' => 'contrib_module_two',
           'datestamp' => '1344471537',
           '_info_file_ctime' => 1348767306,
-        ),
+        ],
         'datestamp' => '1344471537',
         'project_type' => 'module',
         'project_status' => TRUE,
-      ),
-      'contrib_module_three' => array(
+      ],
+      'contrib_module_three' => [
         'name' => 'contrib_module_three',
-        'info' => array(
+        'info' => [
           'name' => 'Contributed module three',
           'interface translation server pattern' => $remote_url . '%core/%project/%project-%version.%language._po',
           'package' => 'Other',
@@ -98,14 +98,14 @@ function locale_test_locale_translation_projects_alter(&$projects) {
           'project' => 'contrib_module_three',
           'datestamp' => '1344471537',
           '_info_file_ctime' => 1348767306,
-        ),
+        ],
         'datestamp' => '1344471537',
         'project_type' => 'module',
         'project_status' => TRUE,
-      ),
-      'locale_test' => array(
+      ],
+      'locale_test' => [
         'name' => 'locale_test',
-        'info' => array(
+        'info' => [
           'name' => 'Locale test',
           'interface translation project' => 'locale_test',
           'interface translation server pattern' => 'core/modules/locale/tests/test.%language.po',
@@ -114,14 +114,14 @@ function locale_test_locale_translation_projects_alter(&$projects) {
           'project' => 'locale_test',
           '_info_file_ctime' => 1348767306,
           'datestamp' => 0,
-        ),
+        ],
         'datestamp' => 0,
         'project_type' => 'module',
         'project_status' => TRUE,
-      ),
-      'custom_module_one' => array(
+      ],
+      'custom_module_one' => [
         'name' => 'custom_module_one',
-        'info' => array(
+        'info' => [
           'name' => 'Custom module one',
           'interface translation project' => 'custom_module_one',
           'interface translation server pattern' => 'translations://custom_module_one.%language.po',
@@ -130,12 +130,12 @@ function locale_test_locale_translation_projects_alter(&$projects) {
           'project' => 'custom_module_one',
           '_info_file_ctime' => 1348767306,
           'datestamp' => 0,
-        ),
+        ],
         'datestamp' => 0,
         'project_type' => 'module',
         'project_status' => TRUE,
-      ),
-    );
+      ],
+    ];
   }
 }
 
diff --git a/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module
index deedf07..248d9e4 100644
--- a/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module
+++ b/core/modules/locale/tests/modules/locale_test_development_release/locale_test_development_release.module
@@ -27,14 +27,14 @@ function locale_test_development_release_system_info_alter(&$info, Extension $fi
 function locale_test_development_release_locale_translation_projects_alter(&$projects) {
   $projects['contrib'] = [
     'name' => 'contrib',
-    'info' => array(
+    'info' => [
       'name' => 'Contributed module',
       'package' => 'Other',
       'version' => '12.x-10.4-unstable11+14-dev',
       'project' => 'contrib_module',
       'datestamp' => '0',
       '_info_file_ctime' => 1442933959,
-    ),
+    ],
     'datestamp' => '0',
     'project_type' => 'module',
     'project_status' => TRUE,
diff --git a/core/modules/locale/tests/src/Functional/LocaleContentTest.php b/core/modules/locale/tests/src/Functional/LocaleContentTest.php
index d4561b9..e795550 100644
--- a/core/modules/locale/tests/src/Functional/LocaleContentTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleContentTest.php
@@ -19,14 +19,14 @@ class LocaleContentTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'locale');
+  public static $modules = ['node', 'locale'];
 
   /**
    * Verifies that machine name fields are always LTR.
    */
   public function testMachineNameLTR() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'administer content types', 'access administration pages', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'administer content types', 'access administration pages', 'administer site configuration']);
 
     // Log in as admin.
     $this->drupalLogin($admin_user);
@@ -36,13 +36,13 @@ public function testMachineNameLTR() {
     $this->assertFieldByXpath('//input[@name="type" and @dir="ltr"]', NULL, 'The machine name field is LTR when no additional language is configured.');
 
     // Install the Arabic language (which is RTL) and configure as the default.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'ar';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
-    $edit = array(
+    $edit = [
       'site_default_language' => 'ar',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
 
     // Verify that the machine name field is still LTR for a new content type.
@@ -58,9 +58,9 @@ public function testContentTypeLanguageConfiguration() {
     $type2 = $this->drupalCreateContentType();
 
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'administer content types', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'administer content types', 'access administration pages']);
     // User to create a node.
-    $web_user = $this->drupalCreateUser(array("create {$type1->id()} content", "create {$type2->id()} content", "edit any {$type2->id()} content"));
+    $web_user = $this->drupalCreateUser(["create {$type1->id()} content", "create {$type2->id()} content", "edit any {$type2->id()} content"]);
 
     // Add custom language.
     $this->drupalLogin($admin_user);
@@ -68,22 +68,22 @@ public function testContentTypeLanguageConfiguration() {
     $langcode = 'xx';
     // The English name for the language.
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Set the content type to use multilingual support.
     $this->drupalGet("admin/structure/types/manage/{$type2->id()}");
     $this->assertText(t('Language settings'), 'Multilingual support widget present on content type configuration form.');
-    $edit = array(
+    $edit = [
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm("admin/structure/types/manage/{$type2->id()}", $edit, t('Save content type'));
-    $this->assertRaw(t('The content type %type has been updated.', array('%type' => $type2->label())));
+    $this->assertRaw(t('The content type %type has been updated.', ['%type' => $type2->label()]));
     $this->drupalLogout();
     \Drupal::languageManager()->reset();
 
@@ -103,26 +103,26 @@ public function testContentTypeLanguageConfiguration() {
     // Create a node.
     $node_title = $this->randomMachineName();
     $node_body = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'type' => $type2->id(),
       'title' => $node_title,
-      'body' => array(array('value' => $node_body)),
+      'body' => [['value' => $node_body]],
       'langcode' => $langcode,
-    );
+    ];
     $node = $this->drupalCreateNode($edit);
     // Edit the content and ensure correct language is selected.
     $path = 'node/' . $node->id() . '/edit';
     $this->drupalGet($path);
     $this->assertRaw('<option value="' . $langcode . '" selected="selected">' . $name . '</option>', 'Correct language selected.');
     // Ensure we can change the node language.
-    $edit = array(
+    $edit = [
       'langcode[0][value]' => 'en',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save'));
-    $this->assertText(t('@title has been updated.', array('@title' => $node_title)));
+    $this->assertText(t('@title has been updated.', ['@title' => $node_title]));
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/' . $node->id()));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/' . $node->id()]);
     $this->assert(isset($view_link), 'The message area contains the link to the edited node');
 
     $this->drupalLogout();
@@ -135,44 +135,44 @@ public function testContentTypeDirLang() {
     $type = $this->drupalCreateContentType();
 
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'administer content types', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'administer content types', 'access administration pages']);
     // User to create a node.
-    $web_user = $this->drupalCreateUser(array("create {$type->id()} content", "edit own {$type->id()} content"));
+    $web_user = $this->drupalCreateUser(["create {$type->id()} content", "edit own {$type->id()} content"]);
 
     // Log in as admin.
     $this->drupalLogin($admin_user);
 
     // Install Arabic language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'ar';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Install Spanish language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'es';
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     \Drupal::languageManager()->reset();
 
     // Set the content type to use multilingual support.
     $this->drupalGet("admin/structure/types/manage/{$type->id()}");
-    $edit = array(
+    $edit = [
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm("admin/structure/types/manage/{$type->id()}", $edit, t('Save content type'));
-    $this->assertRaw(t('The content type %type has been updated.', array('%type' => $type->label())));
+    $this->assertRaw(t('The content type %type has been updated.', ['%type' => $type->label()]));
     $this->drupalLogout();
 
     // Log in as web user to add new node.
     $this->drupalLogin($web_user);
 
     // Create three nodes: English, Arabic and Spanish.
-    $nodes = array();
-    foreach (array('en', 'es', 'ar') as $langcode) {
-      $nodes[$langcode] = $this->drupalCreateNode(array(
+    $nodes = [];
+    foreach (['en', 'es', 'ar'] as $langcode) {
+      $nodes[$langcode] = $this->drupalCreateNode([
         'langcode' => $langcode,
         'type' => $type->id(),
         'promote' => NodeInterface::PROMOTED,
-      ));
+      ]);
     }
 
     // Check if English node does not have lang tag.
diff --git a/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php b/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
index 2eeb224..5f3e5f7 100644
--- a/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
@@ -17,7 +17,7 @@ class LocaleLocaleLookupTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale', 'locale_test');
+  public static $modules = ['locale', 'locale_test'];
 
   /**
    * {@inheritdoc}
@@ -37,7 +37,7 @@ protected function setUp() {
    */
   public function testCircularDependency() {
     // Ensure that we can enable early_translation_test on a non-english site.
-    $this->drupalPostForm('admin/modules', array('modules[early_translation_test][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[early_translation_test][enable]' => TRUE], t('Install'));
     $this->assertResponse(200);
   }
 
@@ -48,7 +48,7 @@ public function testLanguageFallbackDefaults() {
     $this->drupalGet('');
     // Ensure state of fallback languages persisted by
     // locale_test_language_fallback_candidates_locale_lookup_alter() is empty.
-    $this->assertEqual(\Drupal::state()->get('locale.test_language_fallback_candidates_locale_lookup_alter_candidates'), array());
+    $this->assertEqual(\Drupal::state()->get('locale.test_language_fallback_candidates_locale_lookup_alter_candidates'), []);
     // Make sure there is enough information provided for alter hooks.
     $context = \Drupal::state()->get('locale.test_language_fallback_candidates_locale_lookup_alter_context');
     $this->assertEqual($context['langcode'], 'fr');
diff --git a/core/modules/locale/tests/src/Functional/LocalePathTest.php b/core/modules/locale/tests/src/Functional/LocalePathTest.php
index fd26320..16cc268 100644
--- a/core/modules/locale/tests/src/Functional/LocalePathTest.php
+++ b/core/modules/locale/tests/src/Functional/LocalePathTest.php
@@ -18,7 +18,7 @@ class LocalePathTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'locale', 'path', 'views');
+  public static $modules = ['node', 'locale', 'path', 'views'];
 
   /**
    * {@inheritdoc}
@@ -26,7 +26,7 @@ class LocalePathTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     $this->config('system.site')->set('page.front', '/node')->save();
   }
 
@@ -35,7 +35,7 @@ protected function setUp() {
    */
   public function testPathLanguageConfiguration() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'create page content', 'administer url aliases', 'create url aliases', 'access administration pages', 'access content overview'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'create page content', 'administer url aliases', 'create url aliases', 'access administration pages', 'access content overview']);
 
     // Add custom language.
     $this->drupalLogin($admin_user);
@@ -45,16 +45,16 @@ public function testPathLanguageConfiguration() {
     $name = $this->randomMachineName(16);
     // The domain prefix.
     $prefix = $langcode;
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
 
     // Set path prefix.
-    $edit = array("prefix[$langcode]" => $prefix);
+    $edit = ["prefix[$langcode]" => $prefix];
     $this->drupalPostForm('admin/config/regional/language/detection/url', $edit, t('Save configuration'));
 
     // Check that the "xx" front page is readily available because path prefix
@@ -63,25 +63,25 @@ public function testPathLanguageConfiguration() {
     $this->assertText(t('Welcome to Drupal'), 'The "xx" front page is readibly available.');
 
     // Create a node.
-    $node = $this->drupalCreateNode(array('type' => 'page'));
+    $node = $this->drupalCreateNode(['type' => 'page']);
 
     // Create a path alias in default language (English).
     $path = 'admin/config/search/path/add';
     $english_path = $this->randomMachineName(8);
-    $edit = array(
+    $edit = [
       'source'   => '/node/' . $node->id(),
       'alias'    => '/' . $english_path,
       'langcode' => 'en',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save'));
 
     // Create a path alias in new custom language.
     $custom_language_path = $this->randomMachineName(8);
-    $edit = array(
+    $edit = [
       'source'   => '/node/' . $node->id(),
       'alias'    => '/' . $custom_language_path,
       'langcode' => $langcode,
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save'));
 
     // Confirm English language path alias works.
@@ -96,11 +96,11 @@ public function testPathLanguageConfiguration() {
     $custom_path = $this->randomMachineName(8);
 
     // Check priority of language for alias by source path.
-    $edit = array(
+    $edit = [
       'source'   => '/node/' . $node->id(),
       'alias'    => '/' . $custom_path,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    );
+    ];
     $this->container->get('path.alias_storage')->save($edit['source'], $edit['alias'], $edit['langcode']);
     $lookup_path = $this->container->get('path.alias_manager')->getAliasByPath('/node/' . $node->id(), 'en');
     $this->assertEqual('/' . $english_path, $lookup_path, 'English language alias has priority.');
@@ -110,32 +110,32 @@ public function testPathLanguageConfiguration() {
     $this->container->get('path.alias_storage')->delete($edit);
 
     // Create language nodes to check priority of aliases.
-    $first_node = $this->drupalCreateNode(array('type' => 'page', 'promote' => 1, 'langcode' => 'en'));
-    $second_node = $this->drupalCreateNode(array('type' => 'page', 'promote' => 1, 'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED));
+    $first_node = $this->drupalCreateNode(['type' => 'page', 'promote' => 1, 'langcode' => 'en']);
+    $second_node = $this->drupalCreateNode(['type' => 'page', 'promote' => 1, 'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED]);
 
     // Assign a custom path alias to the first node with the English language.
-    $edit = array(
+    $edit = [
       'source'   => '/node/' . $first_node->id(),
       'alias'    => '/' . $custom_path,
       'langcode' => $first_node->language()->getId(),
-    );
+    ];
     $this->container->get('path.alias_storage')->save($edit['source'], $edit['alias'], $edit['langcode']);
 
     // Assign a custom path alias to second node with
     // LanguageInterface::LANGCODE_NOT_SPECIFIED.
-    $edit = array(
+    $edit = [
       'source'   => '/node/' . $second_node->id(),
       'alias'    => '/' . $custom_path,
       'langcode' => $second_node->language()->getId(),
-    );
+    ];
     $this->container->get('path.alias_storage')->save($edit['source'], $edit['alias'], $edit['langcode']);
 
     // Test that both node titles link to our path alias.
     $this->drupalGet('admin/content');
     $custom_path_url = Url::fromUserInput('/' . $custom_path)->toString();
-    $elements = $this->xpath('//a[@href=:href and normalize-space(text())=:title]', array(':href' => $custom_path_url, ':title' => $first_node->label()));
+    $elements = $this->xpath('//a[@href=:href and normalize-space(text())=:title]', [':href' => $custom_path_url, ':title' => $first_node->label()]);
     $this->assertTrue(!empty($elements), 'First node links to the path alias.');
-    $elements = $this->xpath('//a[@href=:href and normalize-space(text())=:title]', array(':href' => $custom_path_url, ':title' => $second_node->label()));
+    $elements = $this->xpath('//a[@href=:href and normalize-space(text())=:title]', [':href' => $custom_path_url, ':title' => $second_node->label()]);
     $this->assertTrue(!empty($elements), 'Second node links to the path alias.');
 
     // Confirm that the custom path leads to the first node.
diff --git a/core/modules/locale/tests/src/Functional/LocaleStringTest.php b/core/modules/locale/tests/src/Functional/LocaleStringTest.php
index 082515f..601b738 100644
--- a/core/modules/locale/tests/src/Functional/LocaleStringTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleStringTest.php
@@ -17,7 +17,7 @@ class LocaleStringTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   /**
    * The locale storage.
@@ -34,7 +34,7 @@ protected function setUp() {
     // Add a default locale storage for all these tests.
     $this->storage = $this->container->get('locale.storage');
     // Create two languages: Spanish and German.
-    foreach (array('es', 'de') as $langcode) {
+    foreach (['es', 'de'] as $langcode) {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
   }
@@ -46,51 +46,51 @@ public function testStringCRUDAPI() {
     // Create source string.
     $source = $this->buildSourceString();
     $source->save();
-    $this->assertTrue($source->lid, format_string('Successfully created string %string', array('%string' => $source->source)));
+    $this->assertTrue($source->lid, format_string('Successfully created string %string', ['%string' => $source->source]));
 
     // Load strings by lid and source.
-    $string1 = $this->storage->findString(array('lid' => $source->lid));
+    $string1 = $this->storage->findString(['lid' => $source->lid]);
     $this->assertEqual($source, $string1, 'Successfully retrieved string by identifier.');
-    $string2 = $this->storage->findString(array('source' => $source->source, 'context' => $source->context));
+    $string2 = $this->storage->findString(['source' => $source->source, 'context' => $source->context]);
     $this->assertEqual($source, $string2, 'Successfully retrieved string by source and context.');
-    $string3 = $this->storage->findString(array('source' => $source->source, 'context' => ''));
+    $string3 = $this->storage->findString(['source' => $source->source, 'context' => '']);
     $this->assertFalse($string3, 'Cannot retrieve string with wrong context.');
 
     // Check version handling and updating.
     $this->assertEqual($source->version, 'none', 'String originally created without version.');
-    $string = $this->storage->findTranslation(array('lid' => $source->lid));
+    $string = $this->storage->findTranslation(['lid' => $source->lid]);
     $this->assertEqual($string->version, \Drupal::VERSION, 'Checked and updated string version to Drupal version.');
 
     // Create translation and find it by lid and source.
     $langcode = 'es';
     $translation = $this->createTranslation($source, $langcode);
     $this->assertEqual($translation->customized, LOCALE_NOT_CUSTOMIZED, 'Translation created as not customized by default.');
-    $string1 = $this->storage->findTranslation(array('language' => $langcode, 'lid' => $source->lid));
+    $string1 = $this->storage->findTranslation(['language' => $langcode, 'lid' => $source->lid]);
     $this->assertEqual($string1->translation, $translation->translation, 'Successfully loaded translation by string identifier.');
-    $string2 = $this->storage->findTranslation(array('language' => $langcode, 'source' => $source->source, 'context' => $source->context));
+    $string2 = $this->storage->findTranslation(['language' => $langcode, 'source' => $source->source, 'context' => $source->context]);
     $this->assertEqual($string2->translation, $translation->translation, 'Successfully loaded translation by source and context.');
     $translation
       ->setCustomized()
       ->save();
-    $translation = $this->storage->findTranslation(array('language' => $langcode, 'lid' => $source->lid));
+    $translation = $this->storage->findTranslation(['language' => $langcode, 'lid' => $source->lid]);
     $this->assertEqual($translation->customized, LOCALE_CUSTOMIZED, 'Translation successfully marked as customized.');
 
     // Delete translation.
     $translation->delete();
-    $deleted = $this->storage->findTranslation(array('language' => $langcode, 'lid' => $source->lid));
+    $deleted = $this->storage->findTranslation(['language' => $langcode, 'lid' => $source->lid]);
     $this->assertFalse(isset($deleted->translation), 'Successfully deleted translation string.');
 
     // Create some translations and then delete string and all of its
     // translations.
     $lid = $source->lid;
     $this->createAllTranslations($source);
-    $search = $this->storage->getTranslations(array('lid' => $source->lid));
+    $search = $this->storage->getTranslations(['lid' => $source->lid]);
     $this->assertEqual(count($search), 3, 'Created and retrieved all translations for our source string.');
 
     $source->delete();
-    $string = $this->storage->findString(array('lid' => $lid));
+    $string = $this->storage->findString(['lid' => $lid]);
     $this->assertFalse($string, 'Successfully deleted source string.');
-    $deleted = $search = $this->storage->getTranslations(array('lid' => $lid));
+    $deleted = $search = $this->storage->getTranslations(['lid' => $lid]);
     $this->assertFalse($deleted, 'Successfully deleted all translation strings.');
 
     // Tests that locations of different types and arbitrary lengths can be
@@ -102,7 +102,7 @@ public function testStringCRUDAPI() {
     $source_string->addLocation('path', $location = $this->randomString(300));
     $source_string->save();
 
-    $rows = db_query('SELECT * FROM {locales_location} WHERE sid = :sid', array(':sid' => $source_string->lid))->fetchAllAssoc('type');
+    $rows = db_query('SELECT * FROM {locales_location} WHERE sid = :sid', [':sid' => $source_string->lid])->fetchAllAssoc('type');
     $this->assertEqual(count($rows), 4, '4 source locations have been persisted.');
     $this->assertEqual($rows['path']->name, substr($location, 0, 255), 'Too long location has been limited to 255 characters.');
   }
@@ -117,50 +117,50 @@ public function testStringSearchAPI() {
     // Source 2 will have all translations, customized.
     // Source 3 will have no translations.
     $prefix = $this->randomMachineName(100);
-    $source1 = $this->buildSourceString(array('source' => $prefix . $this->randomMachineName(100)))->save();
-    $source2 = $this->buildSourceString(array('source' => $prefix . $this->randomMachineName(100)))->save();
+    $source1 = $this->buildSourceString(['source' => $prefix . $this->randomMachineName(100)])->save();
+    $source2 = $this->buildSourceString(['source' => $prefix . $this->randomMachineName(100)])->save();
     $source3 = $this->buildSourceString()->save();
     // Load all source strings.
-    $strings = $this->storage->getStrings(array());
+    $strings = $this->storage->getStrings([]);
     $this->assertEqual(count($strings), 3, 'Found 3 source strings in the database.');
     // Load all source strings matching a given string.
-    $filter_options['filters'] = array('source' => $prefix);
-    $strings = $this->storage->getStrings(array(), $filter_options);
+    $filter_options['filters'] = ['source' => $prefix];
+    $strings = $this->storage->getStrings([], $filter_options);
     $this->assertEqual(count($strings), 2, 'Found 2 strings using some string filter.');
 
     // Not customized translations.
     $translate1 = $this->createAllTranslations($source1);
     // Customized translations.
-    $this->createAllTranslations($source2, array('customized' => LOCALE_CUSTOMIZED));
+    $this->createAllTranslations($source2, ['customized' => LOCALE_CUSTOMIZED]);
     // Try quick search function with different field combinations.
     $langcode = 'es';
-    $found = $this->storage->findTranslation(array('language' => $langcode, 'source' => $source1->source, 'context' => $source1->context));
+    $found = $this->storage->findTranslation(['language' => $langcode, 'source' => $source1->source, 'context' => $source1->context]);
     $this->assertTrue($found && isset($found->language) && isset($found->translation) && !$found->isNew(), 'Translation found searching by source and context.');
     $this->assertEqual($found->translation, $translate1[$langcode]->translation, 'Found the right translation.');
     // Now try a translation not found.
-    $found = $this->storage->findTranslation(array('language' => $langcode, 'source' => $source3->source, 'context' => $source3->context));
+    $found = $this->storage->findTranslation(['language' => $langcode, 'source' => $source3->source, 'context' => $source3->context]);
     $this->assertTrue($found && $found->lid == $source3->lid && !isset($found->translation) && $found->isNew(), 'Translation not found but source string found.');
 
     // Load all translations. For next queries we'll be loading only translated
     // strings.
-    $translations = $this->storage->getTranslations(array('translated' => TRUE));
+    $translations = $this->storage->getTranslations(['translated' => TRUE]);
     $this->assertEqual(count($translations), 2 * $language_count, 'Created and retrieved all translations for source strings.');
 
     // Load all customized translations.
-    $translations = $this->storage->getTranslations(array('customized' => LOCALE_CUSTOMIZED, 'translated' => TRUE));
+    $translations = $this->storage->getTranslations(['customized' => LOCALE_CUSTOMIZED, 'translated' => TRUE]);
     $this->assertEqual(count($translations), $language_count, 'Retrieved all customized translations for source strings.');
 
     // Load all Spanish customized translations.
-    $translations = $this->storage->getTranslations(array('language' => 'es', 'customized' => LOCALE_CUSTOMIZED, 'translated' => TRUE));
+    $translations = $this->storage->getTranslations(['language' => 'es', 'customized' => LOCALE_CUSTOMIZED, 'translated' => TRUE]);
     $this->assertEqual(count($translations), 1, 'Found only Spanish and customized translations.');
 
     // Load all source strings without translation (1).
-    $translations = $this->storage->getStrings(array('translated' => FALSE));
+    $translations = $this->storage->getStrings(['translated' => FALSE]);
     $this->assertEqual(count($translations), 1, 'Found 1 source string without translations.');
 
     // Load Spanish translations using string filter.
-    $filter_options['filters'] = array('source' => $prefix);
-    $translations = $this->storage->getTranslations(array('language' => 'es'), $filter_options);
+    $filter_options['filters'] = ['source' => $prefix];
+    $translations = $this->storage->getTranslations(['language' => 'es'], $filter_options);
     $this->assertEqual(count($translations), 2, 'Found 2 translations using some string filter.');
 
   }
@@ -171,18 +171,18 @@ public function testStringSearchAPI() {
    * @return \Drupal\locale\StringInterface
    *   A locale string.
    */
-  public function buildSourceString($values = array()) {
-    return $this->storage->createString($values += array(
+  public function buildSourceString($values = []) {
+    return $this->storage->createString($values += [
       'source' => $this->randomMachineName(100),
       'context' => $this->randomMachineName(20),
-    ));
+    ]);
   }
 
   /**
    * Creates translations for source string and all languages.
    */
-  public function createAllTranslations($source, $values = array()) {
-    $list = array();
+  public function createAllTranslations($source, $values = []) {
+    $list = [];
     /* @var $language_manager \Drupal\Core\Language\LanguageManagerInterface */
     $language_manager = $this->container->get('language_manager');
     foreach ($language_manager->getLanguages() as $language) {
@@ -194,12 +194,12 @@ public function createAllTranslations($source, $values = array()) {
   /**
    * Creates single translation for source string.
    */
-  public function createTranslation($source, $langcode, $values = array()) {
-    return $this->storage->createTranslation($values + array(
+  public function createTranslation($source, $langcode, $values = []) {
+    return $this->storage->createTranslation($values + [
       'lid' => $source->lid,
       'language' => $langcode,
       'translation' => $this->randomMachineName(100),
-    ))->save();
+    ])->save();
   }
 
 }
diff --git a/core/modules/locale/tests/src/Functional/LocaleTranslatedSchemaDefinitionTest.php b/core/modules/locale/tests/src/Functional/LocaleTranslatedSchemaDefinitionTest.php
index 4b1eb0a..7efb73a 100644
--- a/core/modules/locale/tests/src/Functional/LocaleTranslatedSchemaDefinitionTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleTranslatedSchemaDefinitionTest.php
@@ -17,7 +17,7 @@ class LocaleTranslatedSchemaDefinitionTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'locale', 'node');
+  public static $modules = ['language', 'locale', 'node'];
 
   /**
    * {@inheritdoc}
@@ -40,15 +40,15 @@ function testTranslatedSchemaDefinition() {
     /** @var \Drupal\locale\StringDatabaseStorage $stringStorage */
     $stringStorage = \Drupal::service('locale.storage');
 
-    $source = $stringStorage->createString(array(
+    $source = $stringStorage->createString([
       'source' => 'Revision ID',
-    ))->save();
+    ])->save();
 
-    $stringStorage->createTranslation(array(
+    $stringStorage->createTranslation([
       'lid' => $source->lid,
       'language' => 'fr',
       'translation' => 'Translated Revision ID',
-    ))->save();
+    ])->save();
 
     // Ensure that the field is translated when access through the API.
     $this->assertEqual('Translated Revision ID', \Drupal::entityManager()->getBaseFieldDefinitions('node')['vid']->getLabel());
@@ -62,10 +62,10 @@ function testTranslatedSchemaDefinition() {
    */
   function testTranslatedUpdate() {
     // Visit the update page to collect any strings that may be translatable.
-    $user = $this->drupalCreateUser(array('administer software updates'));
+    $user = $this->drupalCreateUser(['administer software updates']);
     $this->drupalLogin($user);
     $update_url = $GLOBALS['base_url'] . '/update.php';
-    $this->drupalGet($update_url, array('external' => TRUE));
+    $this->drupalGet($update_url, ['external' => TRUE]);
 
     /** @var \Drupal\locale\StringDatabaseStorage $stringStorage */
     $stringStorage = \Drupal::service('locale.storage');
@@ -73,17 +73,17 @@ function testTranslatedUpdate() {
 
     // Translate all source strings found.
     foreach ($sources as $source) {
-      $stringStorage->createTranslation(array(
+      $stringStorage->createTranslation([
         'lid' => $source->lid,
         'language' => 'fr',
         'translation' => $this->randomMachineName(100),
-      ))->save();
+      ])->save();
     }
 
     // Ensure that there are no updates just due to translations. Check for
     // markup and a link instead of specific text because text may be
     // translated.
-    $this->drupalGet($update_url . '/selection', array('external' => TRUE));
+    $this->drupalGet($update_url . '/selection', ['external' => TRUE]);
     $this->assertRaw('messages--status', 'No pending updates.');
     $this->assertNoLinkByHref('fr/update.php/run', 'No link to run updates.');
   }
diff --git a/core/modules/locale/tests/src/Kernel/LocaleConfigManagerTest.php b/core/modules/locale/tests/src/Kernel/LocaleConfigManagerTest.php
index c1ce1b7..8389b6e 100644
--- a/core/modules/locale/tests/src/Kernel/LocaleConfigManagerTest.php
+++ b/core/modules/locale/tests/src/Kernel/LocaleConfigManagerTest.php
@@ -18,7 +18,7 @@ class LocaleConfigManagerTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'language', 'locale', 'locale_test', 'block');
+  public static $modules = ['system', 'language', 'locale', 'locale_test', 'block'];
 
   /**
    * This test creates simple config on the fly breaking schema checking.
@@ -31,8 +31,8 @@ class LocaleConfigManagerTest extends KernelTestBase {
    * Tests hasTranslation().
    */
   public function testHasTranslation() {
-    $this->installSchema('locale', array('locales_location', 'locales_source', 'locales_target'));
-    $this->installConfig(array('locale_test'));
+    $this->installSchema('locale', ['locales_location', 'locales_source', 'locales_target']);
+    $this->installConfig(['locale_test']);
     $locale_config_manager = \Drupal::service('locale.config_manager');
 
     $language = ConfigurableLanguage::createFromLangcode('de');
@@ -48,8 +48,8 @@ public function testHasTranslation() {
    * Tests getStringTranslation().
    */
   public function testGetStringTranslation() {
-    $this->installSchema('locale', array('locales_location', 'locales_source', 'locales_target'));
-    $this->installConfig(array('locale_test'));
+    $this->installSchema('locale', ['locales_location', 'locales_source', 'locales_target']);
+    $this->installConfig(['locale_test']);
 
     $locale_config_manager = \Drupal::service('locale.config_manager');
 
@@ -80,7 +80,7 @@ public function testGetDefaultConfigLangcode() {
     $simple_config->set('foo', 'bar')->save();
     $this->assertNull(\Drupal::service('locale.config_manager')->getDefaultConfigLangcode($simple_config->getName()), 'Simple config created through the API is not treated as shipped configuration.');
 
-    $block = Block::create(array(
+    $block = Block::create([
       'id' => 'test_default_config',
       'theme' => 'classy',
       'status' => TRUE,
@@ -94,7 +94,7 @@ public function testGetDefaultConfigLangcode() {
         'primary' => TRUE,
         'secondary' => TRUE,
       ],
-    ));
+    ]);
     $block->save();
 
     // Install the theme after creating the block as installing the theme will
diff --git a/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php b/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php
index a53c3cf..e7a13fc 100644
--- a/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php
+++ b/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php
@@ -124,7 +124,7 @@ public function testEnglish() {
     $config_name = 'locale_test.translation';
     ConfigurableLanguage::createFromLangcode('en')->save();
     // Adding a language on the UI would normally call updateConfigTranslations.
-    $this->localeConfigManager->updateConfigTranslations(array($config_name), array('en'));
+    $this->localeConfigManager->updateConfigTranslations([$config_name], ['en']);
     $this->assertConfigOverride($config_name, 'test', 'English test', 'en');
 
     $this->configFactory->getEditable('locale.settings')->set('translate_english', TRUE)->save();
diff --git a/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberTest.php b/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberTest.php
index 013a9ea..3a12efd 100644
--- a/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberTest.php
+++ b/core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberTest.php
@@ -182,7 +182,7 @@ public function testLocaleDeleteTranslation() {
    *   The language code.
    */
   protected function setUpNoTranslation($config_name, $key, $source, $langcode) {
-    $this->localeConfigManager->updateConfigTranslations(array($config_name), array($langcode));
+    $this->localeConfigManager->updateConfigTranslations([$config_name], [$langcode]);
     $this->assertNoConfigOverride($config_name, $key, $source, $langcode);
     $this->assertNoTranslation($config_name, $langcode);
   }
@@ -222,7 +222,7 @@ protected function setUpTranslation($config_name, $key, $source, $translation, $
       ->save();
     $this->configFactory->reset($config_name);
     $this->localeConfigManager->reset();
-    $this->localeConfigManager->updateConfigTranslations(array($config_name), array($langcode));
+    $this->localeConfigManager->updateConfigTranslations([$config_name], [$langcode]);
 
     if ($is_active) {
       $this->assertActiveConfig($config_name, $key, $translation, $langcode);
@@ -291,7 +291,7 @@ protected function saveLocaleTranslationData($config_name, $key, $source, $trans
       ->setString($translation)
       ->save();
     $this->localeConfigManager->reset();
-    $this->localeConfigManager->updateConfigTranslations(array($config_name), array($langcode));
+    $this->localeConfigManager->updateConfigTranslations([$config_name], [$langcode]);
     $this->configFactory->reset($config_name);
 
     if ($is_active) {
@@ -356,7 +356,7 @@ protected function deleteLocaleTranslationData($config_name, $key, $source_value
       ->getStringTranslation($config_name, $langcode, $source_value, '')
       ->delete();
     $this->localeConfigManager->reset();
-    $this->localeConfigManager->updateConfigTranslations(array($config_name), array($langcode));
+    $this->localeConfigManager->updateConfigTranslations([$config_name], [$langcode]);
     $this->configFactory->reset($config_name);
 
     $this->assertNoConfigOverride($config_name, $key, $source_value, $langcode);
diff --git a/core/modules/locale/tests/src/Kernel/Migrate/MigrateLocaleConfigsTest.php b/core/modules/locale/tests/src/Kernel/Migrate/MigrateLocaleConfigsTest.php
index 6216f78..b444918 100644
--- a/core/modules/locale/tests/src/Kernel/Migrate/MigrateLocaleConfigsTest.php
+++ b/core/modules/locale/tests/src/Kernel/Migrate/MigrateLocaleConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateLocaleConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('locale', 'language');
+  public static $modules = ['locale', 'language'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/locale/tests/src/Unit/LocaleLookupTest.php b/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
index 2848746..cbdd6de 100644
--- a/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
+++ b/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
@@ -76,9 +76,9 @@ protected function setUp() {
     $this->user = $this->getMock('Drupal\Core\Session\AccountInterface');
     $this->user->expects($this->any())
       ->method('getRoles')
-      ->will($this->returnValue(array('anonymous')));
+      ->will($this->returnValue(['anonymous']));
 
-    $this->configFactory = $this->getConfigFactoryStub(array('locale.settings' => array('cache_strings' => FALSE)));
+    $this->configFactory = $this->getConfigFactoryStub(['locale.settings' => ['cache_strings' => FALSE]]);
 
     $this->languageManager = $this->getMock('Drupal\Core\Language\LanguageManagerInterface');
     $this->requestStack = new RequestStack();
@@ -94,15 +94,15 @@ protected function setUp() {
    * @covers ::resolveCacheMiss
    */
   public function testResolveCacheMissWithoutFallback() {
-    $args = array(
+    $args = [
       'language' => 'en',
       'source' => 'test',
       'context' => 'irrelevant',
-    );
+    ];
 
-    $result = (object) array(
+    $result = (object) [
       'translation' => 'test',
-    );
+    ];
 
     $this->cache->expects($this->once())
       ->method('get')
@@ -114,8 +114,8 @@ public function testResolveCacheMissWithoutFallback() {
       ->will($this->returnValue($result));
 
     $locale_lookup = $this->getMockBuilder('Drupal\locale\LocaleLookup')
-      ->setConstructorArgs(array('en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack))
-      ->setMethods(array('persist'))
+      ->setConstructorArgs(['en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack])
+      ->setMethods(['persist'])
       ->getMock();
     $locale_lookup->expects($this->never())
       ->method('persist');
@@ -133,46 +133,46 @@ public function testResolveCacheMissWithoutFallback() {
    */
   public function testResolveCacheMissWithFallback($langcode, $string, $context, $expected) {
     // These are fake words!
-    $translations = array(
-      'en' => array(
+    $translations = [
+      'en' => [
         'test' => 'test',
         'fake' => 'fake',
         'missing pl' => 'missing pl',
         'missing cs' => 'missing cs',
         'missing both' => 'missing both',
-      ),
-      'pl' => array(
+      ],
+      'pl' => [
         'test' => 'test po polsku',
         'fake' => 'ściema',
         'missing cs' => 'zaginiony czech',
-      ),
-      'cs' => array(
+      ],
+      'cs' => [
         'test' => 'test v české',
         'fake' => 'falešný',
         'missing pl' => 'chybějící pl',
-      ),
-    );
+      ],
+    ];
     $this->storage->expects($this->any())
       ->method('findTranslation')
       ->will($this->returnCallback(function ($argument) use ($translations) {
         if (isset($translations[$argument['language']][$argument['source']])) {
-          return (object) array('translation' => $translations[$argument['language']][$argument['source']]);
+          return (object) ['translation' => $translations[$argument['language']][$argument['source']]];
         }
         return TRUE;
       }));
 
     $this->languageManager->expects($this->any())
       ->method('getFallbackCandidates')
-      ->will($this->returnCallback(function (array $context = array()) {
+      ->will($this->returnCallback(function (array $context = []) {
         switch ($context['langcode']) {
           case 'pl':
-            return array('cs', 'en');
+            return ['cs', 'en'];
 
           case 'cs':
-            return array('en');
+            return ['en'];
 
           default:
-            return array();
+            return [];
         }
       }));
 
@@ -188,20 +188,20 @@ public function testResolveCacheMissWithFallback($langcode, $string, $context, $
    * Provides test data for testResolveCacheMissWithFallback().
    */
   public function resolveCacheMissWithFallbackProvider() {
-    return array(
-      array('cs', 'test', 'irrelevant', 'test v české'),
-      array('cs', 'fake', 'irrelevant', 'falešný'),
-      array('cs', 'missing pl', 'irrelevant', 'chybějící pl'),
-      array('cs', 'missing cs', 'irrelevant', 'missing cs'),
-      array('cs', 'missing both', 'irrelevant', 'missing both'),
+    return [
+      ['cs', 'test', 'irrelevant', 'test v české'],
+      ['cs', 'fake', 'irrelevant', 'falešný'],
+      ['cs', 'missing pl', 'irrelevant', 'chybějící pl'],
+      ['cs', 'missing cs', 'irrelevant', 'missing cs'],
+      ['cs', 'missing both', 'irrelevant', 'missing both'],
 
       // Testing PL with fallback to cs, en.
-      array('pl', 'test', 'irrelevant', 'test po polsku'),
-      array('pl', 'fake', 'irrelevant', 'ściema'),
-      array('pl', 'missing pl', 'irrelevant', 'chybějící pl'),
-      array('pl', 'missing cs', 'irrelevant', 'zaginiony czech'),
-      array('pl', 'missing both', 'irrelevant', 'missing both'),
-    );
+      ['pl', 'test', 'irrelevant', 'test po polsku'],
+      ['pl', 'fake', 'irrelevant', 'ściema'],
+      ['pl', 'missing pl', 'irrelevant', 'chybějící pl'],
+      ['pl', 'missing cs', 'irrelevant', 'zaginiony czech'],
+      ['pl', 'missing both', 'irrelevant', 'missing both'],
+    ];
   }
 
   /**
@@ -210,25 +210,25 @@ public function resolveCacheMissWithFallbackProvider() {
    * @covers ::resolveCacheMiss
    */
   public function testResolveCacheMissWithPersist() {
-    $args = array(
+    $args = [
       'language' => 'en',
       'source' => 'test',
       'context' => 'irrelevant',
-    );
+    ];
 
-    $result = (object) array(
+    $result = (object) [
       'translation' => 'test',
-    );
+    ];
 
     $this->storage->expects($this->once())
       ->method('findTranslation')
       ->with($this->equalTo($args))
       ->will($this->returnValue($result));
 
-    $this->configFactory = $this->getConfigFactoryStub(array('locale.settings' => array('cache_strings' => TRUE)));
+    $this->configFactory = $this->getConfigFactoryStub(['locale.settings' => ['cache_strings' => TRUE]]);
     $locale_lookup = $this->getMockBuilder('Drupal\locale\LocaleLookup')
-      ->setConstructorArgs(array('en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack))
-      ->setMethods(array('persist'))
+      ->setConstructorArgs(['en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack])
+      ->setMethods(['persist'])
       ->getMock();
     $locale_lookup->expects($this->once())
       ->method('persist');
@@ -257,8 +257,8 @@ public function testResolveCacheMissNoTranslation() {
     $this->requestStack->push($request);
 
     $locale_lookup = $this->getMockBuilder('Drupal\locale\LocaleLookup')
-      ->setConstructorArgs(array('en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack))
-      ->setMethods(array('persist'))
+      ->setConstructorArgs(['en', 'irrelevant', $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack])
+      ->setMethods(['persist'])
       ->getMock();
     $locale_lookup->expects($this->never())
       ->method('persist');
diff --git a/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php b/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
index b6e4b59..fced5cd 100644
--- a/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
+++ b/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
@@ -15,9 +15,9 @@ class LocaleLocalTasksTest extends LocalTaskIntegrationTestBase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'locale' => 'core/modules/locale',
-    );
+    ];
     parent::setUp();
   }
 
@@ -27,9 +27,9 @@ protected function setUp() {
    * @dataProvider getLocalePageRoutes
    */
   public function testLocalePageLocalTasks($route) {
-    $tasks = array(
-      0 => array('locale.translate_page', 'locale.translate_import', 'locale.translate_export', 'locale.settings'),
-    );
+    $tasks = [
+      0 => ['locale.translate_page', 'locale.translate_import', 'locale.translate_export', 'locale.settings'],
+    ];
     $this->assertLocalTasks($route, $tasks);
   }
 
@@ -37,12 +37,12 @@ public function testLocalePageLocalTasks($route) {
    * Provides a list of routes to test.
    */
   public function getLocalePageRoutes() {
-    return array(
-      array('locale.translate_page'),
-      array('locale.translate_import'),
-      array('locale.translate_export'),
-      array('locale.settings'),
-    );
+    return [
+      ['locale.translate_page'],
+      ['locale.translate_import'],
+      ['locale.translate_export'],
+      ['locale.settings'],
+    ];
   }
 
 }
diff --git a/core/modules/menu_link_content/menu_link_content.module b/core/modules/menu_link_content/menu_link_content.module
index 98357c6..0e02ba9 100644
--- a/core/modules/menu_link_content/menu_link_content.module
+++ b/core/modules/menu_link_content/menu_link_content.module
@@ -18,10 +18,10 @@ function menu_link_content_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<h3>' . t('About') . '</h3>';
       $output .= '<p>' . t('The Custom Menu Links module allows users to create menu links. These links can be translated if multiple languages are used for the site.');
       if (\Drupal::moduleHandler()->moduleExists('menu_ui')) {
-        $output .= ' ' . t('It is required by the Menu UI module, which provides an interface for managing menus and menu links. For more information, see the <a href=":menu-help">Menu UI module help page</a> and the <a href=":drupal-org-help">online documentation for the Custom Menu Links module</a>.', array(':menu-help' => \Drupal::url('help.page', array('name' => 'menu_ui')), ':drupal-org-help' => 'https://www.drupal.org/documentation/modules/menu_link'));
+        $output .= ' ' . t('It is required by the Menu UI module, which provides an interface for managing menus and menu links. For more information, see the <a href=":menu-help">Menu UI module help page</a> and the <a href=":drupal-org-help">online documentation for the Custom Menu Links module</a>.', [':menu-help' => \Drupal::url('help.page', ['name' => 'menu_ui']), ':drupal-org-help' => 'https://www.drupal.org/documentation/modules/menu_link']);
       }
       else {
-        $output .= ' ' . t('For more information, see the <a href=":drupal-org-help">online documentation for the Custom Menu Links module</a>. If you enable the Menu UI module, it provides an interface for managing menus and menu links.', array(':drupal-org-help' => 'https://www.drupal.org/documentation/modules/menu_link'));
+        $output .= ' ' . t('For more information, see the <a href=":drupal-org-help">online documentation for the Custom Menu Links module</a>. If you enable the Menu UI module, it provides an interface for managing menus and menu links.', [':drupal-org-help' => 'https://www.drupal.org/documentation/modules/menu_link']);
       }
       $output .= '</p>';
       return $output;
@@ -33,7 +33,7 @@ function menu_link_content_help($route_name, RouteMatchInterface $route_match) {
  */
 function menu_link_content_menu_delete(MenuInterface $menu) {
   $storage = \Drupal::entityManager()->getStorage('menu_link_content');
-  $menu_links = $storage->loadByProperties(array('menu_name' => $menu->id()));
+  $menu_links = $storage->loadByProperties(['menu_name' => $menu->id()]);
   $storage->delete($menu_links);
 }
 
diff --git a/core/modules/menu_link_content/src/Controller/MenuController.php b/core/modules/menu_link_content/src/Controller/MenuController.php
index 6aaae64..be7879f 100644
--- a/core/modules/menu_link_content/src/Controller/MenuController.php
+++ b/core/modules/menu_link_content/src/Controller/MenuController.php
@@ -20,12 +20,12 @@ class MenuController extends ControllerBase {
    *   Returns the menu link creation form.
    */
   public function addLink(MenuInterface $menu) {
-    $menu_link = $this->entityManager()->getStorage('menu_link_content')->create(array(
+    $menu_link = $this->entityManager()->getStorage('menu_link_content')->create([
       'id' => '',
       'parent' => '',
       'menu_name' => $menu->id(),
       'bundle' => 'menu_link_content',
-    ));
+    ]);
     return $this->entityFormBuilder()->getForm($menu_link);
   }
 
diff --git a/core/modules/menu_link_content/src/Entity/MenuLinkContent.php b/core/modules/menu_link_content/src/Entity/MenuLinkContent.php
index d23f876..d53ba49 100644
--- a/core/modules/menu_link_content/src/Entity/MenuLinkContent.php
+++ b/core/modules/menu_link_content/src/Entity/MenuLinkContent.php
@@ -133,7 +133,7 @@ public function getWeight() {
    * {@inheritdoc}
    */
   public function getPluginDefinition() {
-    $definition = array();
+    $definition = [];
     $definition['class'] = 'Drupal\menu_link_content\Plugin\Menu\MenuLinkContent';
     $definition['menu_name'] = $this->getMenuName();
 
@@ -155,7 +155,7 @@ public function getPluginDefinition() {
     $definition['description'] = $this->getDescription();
     $definition['weight'] = $this->getWeight();
     $definition['id'] = $this->getPluginId();
-    $definition['metadata'] = array('entity_id' => $this->id());
+    $definition['metadata'] = ['entity_id' => $this->id()];
     $definition['form_class'] = '\Drupal\menu_link_content\Form\MenuLinkContentForm';
     $definition['enabled'] = $this->isEnabled() ? 1 : 0;
     $definition['expanded'] = $this->isExpanded() ? 1 : 0;
@@ -256,15 +256,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRequired(TRUE)
       ->setTranslatable(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => -5,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['description'] = BaseFieldDefinition::create('string')
@@ -272,15 +272,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t('Shown when hovering over the menu link.'))
       ->setTranslatable(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => 0,
-      ));
+      ]);
 
     $fields['menu_name'] = BaseFieldDefinition::create('string')
       ->setLabel(t('Menu name'))
@@ -292,14 +292,14 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Link'))
       ->setDescription(t('The location this menu link points to.'))
       ->setRequired(TRUE)
-      ->setSettings(array(
+      ->setSettings([
         'link_type' => LinkItemInterface::LINK_GENERIC,
         'title' => DRUPAL_DISABLED,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'link_default',
         'weight' => -2,
-      ));
+      ]);
 
     $fields['external'] = BaseFieldDefinition::create('boolean')
       ->setLabel(t('External'))
@@ -314,43 +314,43 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Weight'))
       ->setDescription(t('Link weight among links in the same menu at the same depth. In the menu, the links with high weight will sink and links with a low weight will be positioned nearer the top.'))
       ->setDefaultValue(0)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'integer',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'number',
         'weight' => 20,
-      ));
+      ]);
 
     $fields['expanded'] = BaseFieldDefinition::create('boolean')
       ->setLabel(t('Show as expanded'))
       ->setDescription(t('If selected and this menu link has children, the menu will always appear expanded.'))
       ->setDefaultValue(FALSE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'boolean',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
-        'settings' => array('display_label' => TRUE),
+      ])
+      ->setDisplayOptions('form', [
+        'settings' => ['display_label' => TRUE],
         'weight' => 0,
-      ));
+      ]);
 
     $fields['enabled'] = BaseFieldDefinition::create('boolean')
       ->setLabel(t('Enabled'))
       ->setDescription(t('A flag for whether the link should be enabled in menus or hidden.'))
       ->setDefaultValue(TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'boolean',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
-        'settings' => array('display_label' => TRUE),
+      ])
+      ->setDisplayOptions('form', [
+        'settings' => ['display_label' => TRUE],
         'weight' => -1,
-      ));
+      ]);
 
     $fields['parent'] = BaseFieldDefinition::create('string')
       ->setLabel(t('Parent plugin ID'))
diff --git a/core/modules/menu_link_content/src/Form/MenuLinkContentDeleteForm.php b/core/modules/menu_link_content/src/Form/MenuLinkContentDeleteForm.php
index b4caaff..2b780c9 100644
--- a/core/modules/menu_link_content/src/Form/MenuLinkContentDeleteForm.php
+++ b/core/modules/menu_link_content/src/Form/MenuLinkContentDeleteForm.php
@@ -15,7 +15,7 @@ class MenuLinkContentDeleteForm extends ContentEntityDeleteForm {
    */
   public function getCancelUrl() {
     if ($this->moduleHandler->moduleExists('menu_ui')) {
-      return new Url('entity.menu.edit_form', array('menu' => $this->entity->getMenuName()));
+      return new Url('entity.menu.edit_form', ['menu' => $this->entity->getMenuName()]);
     }
     return $this->entity->urlInfo();
   }
@@ -31,7 +31,7 @@ protected function getRedirectUrl() {
    * {@inheritdoc}
    */
   protected function getDeletionMessage() {
-    return $this->t('The menu link %title has been deleted.', array('%title' => $this->entity->label()));
+    return $this->t('The menu link %title has been deleted.', ['%title' => $this->entity->label()]);
   }
 
 }
diff --git a/core/modules/menu_link_content/src/Form/MenuLinkContentForm.php b/core/modules/menu_link_content/src/Form/MenuLinkContentForm.php
index 8a708ce..4bdd6b9 100644
--- a/core/modules/menu_link_content/src/Form/MenuLinkContentForm.php
+++ b/core/modules/menu_link_content/src/Form/MenuLinkContentForm.php
@@ -113,8 +113,8 @@ public function buildEntity(array $form, FormStateInterface $form_state) {
 
     $entity->parent->value = $parent;
     $entity->menu_name->value = $menu_name;
-    $entity->enabled->value = (!$form_state->isValueEmpty(array('enabled', 'value')));
-    $entity->expanded->value = (!$form_state->isValueEmpty(array('expanded', 'value')));
+    $entity->enabled->value = (!$form_state->isValueEmpty(['enabled', 'value']));
+    $entity->expanded->value = (!$form_state->isValueEmpty(['expanded', 'value']));
 
     return $entity;
   }
@@ -131,7 +131,7 @@ public function save(array $form, FormStateInterface $form_state) {
       drupal_set_message($this->t('The menu link has been saved.'));
       $form_state->setRedirect(
         'entity.menu_link_content.canonical',
-        array('menu_link_content' => $menu_link->id())
+        ['menu_link_content' => $menu_link->id()]
       );
     }
     else {
diff --git a/core/modules/menu_link_content/src/Plugin/Menu/MenuLinkContent.php b/core/modules/menu_link_content/src/Plugin/Menu/MenuLinkContent.php
index fea0211..98e8cdf 100644
--- a/core/modules/menu_link_content/src/Plugin/Menu/MenuLinkContent.php
+++ b/core/modules/menu_link_content/src/Plugin/Menu/MenuLinkContent.php
@@ -21,12 +21,12 @@ class MenuLinkContent extends MenuLinkBase implements ContainerFactoryPluginInte
    *
    * @var array
    */
-  protected static $entityIdsToLoad = array();
+  protected static $entityIdsToLoad = [];
 
   /**
    * {@inheritdoc}
    */
-  protected $overrideAllowed = array(
+  protected $overrideAllowed = [
     'menu_name' => 1,
     'parent' => 1,
     'weight' => 1,
@@ -38,7 +38,7 @@ class MenuLinkContent extends MenuLinkBase implements ContainerFactoryPluginInte
     'route_parameters' => 1,
     'url' => 1,
     'options' => 1,
-  );
+  ];
 
   /**
    * The menu link content entity connected to this plugin instance.
@@ -123,12 +123,12 @@ protected function getEntity() {
         static::$entityIdsToLoad[$entity_id] = $entity_id;
         $entities = $storage->loadMultiple(array_values(static::$entityIdsToLoad));
         $entity = isset($entities[$entity_id]) ? $entities[$entity_id] : NULL;
-        static::$entityIdsToLoad = array();
+        static::$entityIdsToLoad = [];
       }
       if (!$entity) {
         // Fallback to the loading by the UUID.
         $uuid = $this->getUuid();
-        $loaded_entities = $storage->loadByProperties(array('uuid' => $uuid));
+        $loaded_entities = $storage->loadByProperties(['uuid' => $uuid]);
         $entity = reset($loaded_entities);
       }
       if (!$entity) {
diff --git a/core/modules/menu_link_content/src/Plugin/migrate/source/MenuLink.php b/core/modules/menu_link_content/src/Plugin/migrate/source/MenuLink.php
index 067b133..338d3ec 100644
--- a/core/modules/menu_link_content/src/Plugin/migrate/source/MenuLink.php
+++ b/core/modules/menu_link_content/src/Plugin/migrate/source/MenuLink.php
@@ -39,7 +39,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'menu_name' => t("The menu name. All links with the same menu name (such as 'navigation') are part of the same menu."),
       'mlid' => t('The menu link ID (mlid) is the integer primary key.'),
       'plid' => t('The parent link ID (plid) is the mlid of the link above in the hierarchy, or zero if the link is at the top level in its menu.'),
@@ -65,7 +65,7 @@ public function fields() {
       'p8' => t('The eighth mlid in the materialized path. See p1.'),
       'p9' => t('The ninth mlid in the materialized path. See p1.'),
       'updated' => t('Flag that indicates that this link was generated during the update from Drupal 5.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php b/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
index 1bdc927..c8244fe 100644
--- a/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
+++ b/core/modules/menu_link_content/src/Tests/MenuLinkContentFormTest.php
@@ -16,16 +16,16 @@ class MenuLinkContentFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'menu_link_content',
-  );
+  ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $web_user = $this->drupalCreateUser(array('administer menu'));
+    $web_user = $this->drupalCreateUser(['administer menu']);
     $this->drupalLogin($web_user);
   }
 
@@ -34,16 +34,16 @@ protected function setUp() {
    */
   public function testMenuLinkContentForm() {
     $this->drupalGet('admin/structure/menu/manage/admin/add');
-    $element = $this->xpath('//select[@id = :id]/option[@selected]', array(':id' => 'edit-menu-parent'));
+    $element = $this->xpath('//select[@id = :id]/option[@selected]', [':id' => 'edit-menu-parent']);
     $this->assertTrue($element, 'A default menu parent was found.');
     $this->assertEqual('admin:', $element[0]['value'], '<Administration> menu is the parent.');
 
     $this->drupalPostForm(
       NULL,
-      array(
+      [
         'title[0][value]' => t('Front page'),
         'link[0][uri]' => '<front>',
-      ),
+      ],
       t('Save')
     );
     $this->assertText(t('The menu link has been saved.'));
@@ -56,10 +56,10 @@ public function testMenuLinkContentFormValidation() {
     $this->drupalGet('admin/structure/menu/manage/admin/add');
     $this->drupalPostForm(
       NULL,
-      array(
+      [
         'title[0][value]' => t('Test page'),
         'link[0][uri]' => '<test>',
-      ),
+      ],
       t('Save')
     );
     $this->assertText(t('Manually entered paths should start with /, ? or #.'));
diff --git a/core/modules/menu_link_content/src/Tests/MenuLinkContentTranslationUITest.php b/core/modules/menu_link_content/src/Tests/MenuLinkContentTranslationUITest.php
index cf802b7..4aeb637 100644
--- a/core/modules/menu_link_content/src/Tests/MenuLinkContentTranslationUITest.php
+++ b/core/modules/menu_link_content/src/Tests/MenuLinkContentTranslationUITest.php
@@ -22,12 +22,12 @@ class MenuLinkContentTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'menu_link_content',
     'menu_ui',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -42,14 +42,14 @@ protected function setUp() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('administer menu'));
+    return array_merge(parent::getTranslatorPermissions(), ['administer menu']);
   }
 
   /**
    * {@inheritdoc}
    */
   protected function getAdministratorPermissions() {
-    return array_merge(parent::getAdministratorPermissions(), array('administer themes', 'view the administration theme'));
+    return array_merge(parent::getAdministratorPermissions(), ['administer themes', 'view the administration theme']);
   }
 
   /**
@@ -81,11 +81,11 @@ public function testTranslationLinkOnMenuEditForm() {
    */
   function testTranslationLinkTheme() {
     $this->drupalLogin($this->administrator);
-    $entityId = $this->createEntity(array(), 'en');
+    $entityId = $this->createEntity([], 'en');
 
     // Set up Seven as the admin theme to test.
-    $this->container->get('theme_handler')->install(array('seven'));
-    $edit = array();
+    $this->container->get('theme_handler')->install(['seven']);
+    $edit = [];
     $edit['admin_theme'] = 'seven';
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
     $this->drupalGet('admin/structure/menu/item/' . $entityId . '/edit');
@@ -107,14 +107,14 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('@title [%language translation]', array(
+        $title = t('@title [%language translation]', [
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/menu_link_content/tests/src/Functional/LinksTest.php b/core/modules/menu_link_content/tests/src/Functional/LinksTest.php
index 9047ac8..14aa4f2 100644
--- a/core/modules/menu_link_content/tests/src/Functional/LinksTest.php
+++ b/core/modules/menu_link_content/tests/src/Functional/LinksTest.php
@@ -19,7 +19,7 @@ class LinksTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('router_test', 'menu_link_content');
+  public static $modules = ['router_test', 'menu_link_content'];
 
   /**
    * The menu link plugin manager.
@@ -36,11 +36,11 @@ protected function setUp() {
 
     $this->menuLinkManager = \Drupal::service('plugin.manager.menu.link');
 
-    Menu::create(array(
+    Menu::create([
       'id' => 'menu_test',
       'label' => 'Test menu',
       'description' => 'Description text',
-    ))->save();
+    ])->save();
   }
 
   /**
@@ -56,47 +56,47 @@ function createLinkHierarchy($module = 'menu_test') {
     //      - child-1-1
     //      - child-1-2
     //   - child-2
-    $base_options = array(
+    $base_options = [
       'title' => 'Menu link test',
       'provider' => $module,
       'menu_name' => 'menu_test',
-    );
+    ];
 
-    $parent = $base_options + array(
+    $parent = $base_options + [
       'link' => ['uri' => 'internal:/menu-test/hierarchy/parent'],
-    );
+    ];
     $link = MenuLinkContent::create($parent);
     $link->save();
     $links['parent'] = $link->getPluginId();
 
-    $child_1 = $base_options + array(
+    $child_1 = $base_options + [
       'link' => ['uri' => 'internal:/menu-test/hierarchy/parent/child'],
       'parent' => $links['parent'],
-    );
+    ];
     $link = MenuLinkContent::create($child_1);
     $link->save();
     $links['child-1'] = $link->getPluginId();
 
-    $child_1_1 = $base_options + array(
+    $child_1_1 = $base_options + [
       'link' => ['uri' => 'internal:/menu-test/hierarchy/parent/child2/child'],
       'parent' => $links['child-1'],
-    );
+    ];
     $link = MenuLinkContent::create($child_1_1);
     $link->save();
     $links['child-1-1'] = $link->getPluginId();
 
-    $child_1_2 = $base_options + array(
+    $child_1_2 = $base_options + [
       'link' => ['uri' => 'internal:/menu-test/hierarchy/parent/child2/child'],
       'parent' => $links['child-1'],
-    );
+    ];
     $link = MenuLinkContent::create($child_1_2);
     $link->save();
     $links['child-1-2'] = $link->getPluginId();
 
-    $child_2 = $base_options + array(
+    $child_2 = $base_options + [
       'link' => ['uri' => 'internal:/menu-test/hierarchy/parent/child'],
       'parent' => $links['parent'],
-    );
+    ];
     $link = MenuLinkContent::create($child_2);
     $link->save();
     $links['child-2'] = $link->getPluginId();
@@ -113,7 +113,7 @@ function assertMenuLinkParents($links, $expected_hierarchy) {
       $menu_link_plugin = $this->menuLinkManager->createInstance($links[$id]);
       $expected_parent = isset($links[$parent]) ? $links[$parent] : '';
 
-      $this->assertEqual($menu_link_plugin->getParent(), $expected_parent, SafeMarkup::format('Menu link %id has parent of %parent, expected %expected_parent.', array('%id' => $id, '%parent' => $menu_link_plugin->getParent(), '%expected_parent' => $expected_parent)));
+      $this->assertEqual($menu_link_plugin->getParent(), $expected_parent, SafeMarkup::format('Menu link %id has parent of %parent, expected %expected_parent.', ['%id' => $id, '%parent' => $menu_link_plugin->getParent(), '%expected_parent' => $expected_parent]));
     }
   }
 
@@ -121,18 +121,18 @@ function assertMenuLinkParents($links, $expected_hierarchy) {
    * Assert that a link entity's created timestamp is set.
    */
   public function testCreateLink() {
-    $options = array(
+    $options = [
       'menu_name' => 'menu_test',
       'bundle' => 'menu_link_content',
       'link' => [['uri' => 'internal:/']],
-    );
+    ];
     $link = MenuLinkContent::create($options);
     $link->save();
     // Make sure the changed timestamp is set.
     $this->assertEqual($link->getChangedTime(), REQUEST_TIME, 'Creating a menu link sets the "changed" timestamp.');
-    $options = array(
+    $options = [
       'title' => 'Test Link',
-    );
+    ];
     $link->link->options = $options;
     $link->changed->value = 0;
     $link->save();
@@ -147,32 +147,32 @@ function testMenuLinkReparenting($module = 'menu_test') {
     // Check the initial hierarchy.
     $links = $this->createLinkHierarchy($module);
 
-    $expected_hierarchy = array(
+    $expected_hierarchy = [
       'parent' => '',
       'child-1' => 'parent',
       'child-1-1' => 'child-1',
       'child-1-2' => 'child-1',
       'child-2' => 'parent',
-    );
+    ];
     $this->assertMenuLinkParents($links, $expected_hierarchy);
 
     // Start over, and move child-1 under child-2, and check that all the
     // children of child-1 have been moved too.
     $links = $this->createLinkHierarchy($module);
     /* @var \Drupal\Core\Menu\MenuLinkInterface $menu_link_plugin  */
-    $this->menuLinkManager->updateDefinition($links['child-1'], array('parent' => $links['child-2']));
+    $this->menuLinkManager->updateDefinition($links['child-1'], ['parent' => $links['child-2']]);
     // Verify that the entity was updated too.
     $menu_link_plugin = $this->menuLinkManager->createInstance($links['child-1']);
     $entity = \Drupal::entityManager()->loadEntityByUuid('menu_link_content', $menu_link_plugin->getDerivativeId());
     $this->assertEqual($entity->getParentId(), $links['child-2']);
 
-    $expected_hierarchy = array(
+    $expected_hierarchy = [
       'parent' => '',
       'child-1' => 'child-2',
       'child-1-1' => 'child-1',
       'child-1-2' => 'child-1',
       'child-2' => 'parent',
-    );
+    ];
     $this->assertMenuLinkParents($links, $expected_hierarchy);
 
     // Start over, and delete child-1, and check that the children of child-1
@@ -180,12 +180,12 @@ function testMenuLinkReparenting($module = 'menu_test') {
     $links = $this->createLinkHierarchy($module);
     $this->menuLinkManager->removeDefinition($links['child-1']);
 
-    $expected_hierarchy = array(
+    $expected_hierarchy = [
       'parent' => FALSE,
       'child-1-1' => 'parent',
       'child-1-2' => 'parent',
       'child-2' => 'parent',
-    );
+    ];
     $this->assertMenuLinkParents($links, $expected_hierarchy);
 
     // Try changing the parent at the entity level.
@@ -194,12 +194,12 @@ function testMenuLinkReparenting($module = 'menu_test') {
     $entity->parent->value = '';
     $entity->save();
 
-    $expected_hierarchy = array(
+    $expected_hierarchy = [
       'parent' => '',
       'child-1-1' => 'parent',
       'child-1-2' => '',
       'child-2' => 'parent',
-    );
+    ];
     $this->assertMenuLinkParents($links, $expected_hierarchy);
 
     // @todo Figure out what makes sense to test in terms of automatic
@@ -210,7 +210,7 @@ function testMenuLinkReparenting($module = 'menu_test') {
    * Tests uninstalling a module providing default links.
    */
   public function testModuleUninstalledMenuLinks() {
-    \Drupal::service('module_installer')->install(array('menu_test'));
+    \Drupal::service('module_installer')->install(['menu_test']);
     \Drupal::service('router.builder')->rebuild();
     \Drupal::service('plugin.manager.menu.link')->rebuild();
     $menu_links = $this->menuLinkManager->loadLinksByRoute('menu_test.menu_test');
@@ -219,7 +219,7 @@ public function testModuleUninstalledMenuLinks() {
     $this->assertEqual($menu_link->getPluginId(), 'menu_test');
 
     // Uninstall the module and ensure the menu link got removed.
-    \Drupal::service('module_installer')->uninstall(array('menu_test'));
+    \Drupal::service('module_installer')->uninstall(['menu_test']);
     \Drupal::service('plugin.manager.menu.link')->rebuild();
     $menu_links = $this->menuLinkManager->loadLinksByRoute('menu_test.menu_test');
     $this->assertEqual(count($menu_links), 0);
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Migrate/d6/MigrateMenuLinkTest.php b/core/modules/menu_link_content/tests/src/Kernel/Migrate/d6/MigrateMenuLinkTest.php
index eea87db..f1368ed 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Migrate/d6/MigrateMenuLinkTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Migrate/d6/MigrateMenuLinkTest.php
@@ -15,7 +15,7 @@ class MigrateMenuLinkTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('menu_ui', 'menu_link_content');
+  public static $modules = ['menu_ui', 'menu_link_content'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Migrate/d7/MigrateMenuLinkTest.php b/core/modules/menu_link_content/tests/src/Kernel/Migrate/d7/MigrateMenuLinkTest.php
index 1d757a5..dc17ce3 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Migrate/d7/MigrateMenuLinkTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Migrate/d7/MigrateMenuLinkTest.php
@@ -19,7 +19,7 @@ class MigrateMenuLinkTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('link', 'menu_ui', 'menu_link_content', 'node');
+  public static $modules = ['link', 'menu_ui', 'menu_link_content', 'node'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
index db6c547..7fb3a91 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
@@ -35,7 +35,7 @@ public function providerSource() {
         'link_path' => 'admin/config/system/cron',
         'router_path' => 'admin/config/system/cron',
         'link_title' => 'Cron',
-        'options' => array(),
+        'options' => [],
         'module' => 'system',
         'hidden' => 0,
         'external' => 0,
@@ -64,7 +64,7 @@ public function providerSource() {
         'link_path' => 'node/141',
         'router_path' => 'node/%',
         'link_title' => 'Node 141',
-        'options' => array(),
+        'options' => [],
         'module' => 'menu',
         'hidden' => 0,
         'external' => 0,
@@ -93,7 +93,7 @@ public function providerSource() {
         'link_path' => 'node/142',
         'router_path' => 'node/%',
         'link_title' => 'Node 142',
-        'options' => array(),
+        'options' => [],
         'module' => 'menu',
         'hidden' => 0,
         'external' => 0,
@@ -121,7 +121,7 @@ public function providerSource() {
         'link_path' => 'admin',
         'router_path' => 'admin',
         'link_title' => 'Test 1',
-        'options' => array('attributes' => array('title' => 'Test menu link 1')),
+        'options' => ['attributes' => ['title' => 'Test menu link 1']],
         'module' => 'menu',
         'hidden' => 0,
         'external' => 0,
@@ -149,7 +149,7 @@ public function providerSource() {
         'link_path' => 'admin/modules',
         'router_path' => 'admin/modules',
         'link_title' => 'Test 2',
-        'options' => array('attributes' => array('title' => 'Test menu link 2')),
+        'options' => ['attributes' => ['title' => 'Test menu link 2']],
         'module' => 'menu',
         'hidden' => 0,
         'external' => 0,
@@ -177,7 +177,7 @@ public function providerSource() {
         'link_path' => 'admin/build/menu-customize/navigation',
         'router_path' => 'admin/build/menu-customize/%',
         'link_title' => 'Navigation',
-        'options' => array(),
+        'options' => [],
         'module' => 'menu',
         'hidden' => 0,
         'external' => 0,
diff --git a/core/modules/menu_ui/menu_ui.module b/core/modules/menu_ui/menu_ui.module
index bb3ec23..cffccde 100644
--- a/core/modules/menu_ui/menu_ui.module
+++ b/core/modules/menu_ui/menu_ui.module
@@ -38,21 +38,21 @@ function menu_ui_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.menu_ui':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Menu UI module provides an interface for managing menus. A menu is a hierarchical collection of links, which can be within or external to the site, generally used for navigation. For more information, see the <a href=":menu">online documentation for the Menu UI module</a>.', array(':menu' => 'https://www.drupal.org/documentation/modules/menu/')) . '</p>';
+      $output .= '<p>' . t('The Menu UI module provides an interface for managing menus. A menu is a hierarchical collection of links, which can be within or external to the site, generally used for navigation. For more information, see the <a href=":menu">online documentation for the Menu UI module</a>.', [':menu' => 'https://www.drupal.org/documentation/modules/menu/']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing menus') . '</dt>';
-      $output .= '<dd>' . t('Users with the <em>Administer menus and menu items</em> permission can add, edit, and delete custom menus on the <a href=":menu">Menus page</a>. Custom menus can be special site menus, menus of external links, or any combination of internal and external links. You may create an unlimited number of additional menus, each of which will automatically have an associated block (if you have the <a href=":block_help">Block module</a> installed). By selecting <em>Edit menu</em>, you can add, edit, or delete links for a given menu. The links listing page provides a drag-and-drop interface for controlling the order of links, and creating a hierarchy within the menu.', array(':block_help' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('help.page', array('name' => 'block')) : '#', ':menu' => \Drupal::url('entity.menu.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Administer menus and menu items</em> permission can add, edit, and delete custom menus on the <a href=":menu">Menus page</a>. Custom menus can be special site menus, menus of external links, or any combination of internal and external links. You may create an unlimited number of additional menus, each of which will automatically have an associated block (if you have the <a href=":block_help">Block module</a> installed). By selecting <em>Edit menu</em>, you can add, edit, or delete links for a given menu. The links listing page provides a drag-and-drop interface for controlling the order of links, and creating a hierarchy within the menu.', [':block_help' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('help.page', ['name' => 'block']) : '#', ':menu' => \Drupal::url('entity.menu.collection')]) . '</dd>';
       $output .= '<dt>' . t('Displaying menus') . '</dt>';
-      $output .= '<dd>' . t('If you have the Block module enabled, then each menu that you create is rendered in a block that you enable and position on the <a href=":blocks">Block layout page</a>. In some <a href=":themes">themes</a>, the main menu and possibly the secondary menu will be output automatically; you may be able to disable this behavior on the <a href=":themes">theme\'s settings page</a>.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':themes' => \Drupal::url('system.themes_page'), ':theme_settings' => \Drupal::url('system.theme_settings'))) . '</dd>';
+      $output .= '<dd>' . t('If you have the Block module enabled, then each menu that you create is rendered in a block that you enable and position on the <a href=":blocks">Block layout page</a>. In some <a href=":themes">themes</a>, the main menu and possibly the secondary menu will be output automatically; you may be able to disable this behavior on the <a href=":themes">theme\'s settings page</a>.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':themes' => \Drupal::url('system.themes_page'), ':theme_settings' => \Drupal::url('system.theme_settings')]) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
   if ($route_name == 'entity.menu.add_form' && \Drupal::moduleHandler()->moduleExists('block') && \Drupal::currentUser()->hasPermission('administer blocks')) {
-    return '<p>' . t('You can enable the newly-created block for this menu on the <a href=":blocks">Block layout page</a>.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</p>';
+    return '<p>' . t('You can enable the newly-created block for this menu on the <a href=":blocks">Block layout page</a>.', [':blocks' => \Drupal::url('block.admin_display')]) . '</p>';
   }
   elseif ($route_name == 'entity.menu.collection' && \Drupal::moduleHandler()->moduleExists('block') && \Drupal::currentUser()->hasPermission('administer blocks')) {
-    return '<p>' . t('Each menu has a corresponding block that is managed on the <a href=":blocks">Block layout page</a>.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</p>';
+    return '<p>' . t('Each menu has a corresponding block that is managed on the <a href=":blocks">Block layout page</a>.', [':blocks' => \Drupal::url('block.admin_display')]) . '</p>';
   }
 }
 
@@ -123,9 +123,9 @@ function menu_ui_menu_delete(Menu $menu) {
 function menu_ui_block_view_system_menu_block_alter(array &$build, BlockPluginInterface $block) {
   if ($block->getBaseId() == 'system_menu_block') {
     $menu_name = $block->getDerivativeId();
-    $build['#contextual_links']['menu'] = array(
-      'route_parameters' => array('menu' => $menu_name),
-    );
+    $build['#contextual_links']['menu'] = [
+      'route_parameters' => ['menu' => $menu_name],
+    ];
   }
 }
 
@@ -152,10 +152,10 @@ function _menu_ui_node_save(NodeInterface $node, array $values) {
   }
   else {
     // Create a new menu_link_content entity.
-    $entity = MenuLinkContent::create(array(
+    $entity = MenuLinkContent::create([
       'link' => ['uri' => 'entity:node/' . $node->id()],
       'langcode' => $node->language()->getId(),
-    ));
+    ]);
     $entity->enabled->value = 1;
   }
   $entity->title->value = trim($values['title']);
@@ -173,7 +173,7 @@ function menu_ui_node_predelete(EntityInterface $node) {
   // Delete all MenuLinkContent links that point to this node.
   /** @var \Drupal\Core\Menu\MenuLinkManagerInterface $menu_link_manager */
   $menu_link_manager = \Drupal::service('plugin.manager.menu.link');
-  $result = $menu_link_manager->loadLinksByRoute('entity.node.canonical', array('node' => $node->id()));
+  $result = $menu_link_manager->loadLinksByRoute('entity.node.canonical', ['node' => $node->id()]);
 
   if (!empty($result)) {
     foreach ($result as $id => $instance) {
@@ -202,7 +202,7 @@ function menu_ui_get_menu_link_defaults(NodeInterface $node) {
   if ($node->id()) {
     $id = FALSE;
     // Give priority to the default menu
-    $type_menus = $node_type->getThirdPartySetting('menu_ui', 'available_menus', array('main'));
+    $type_menus = $node_type->getThirdPartySetting('menu_ui', 'available_menus', ['main']);
     if (in_array($menu_name, $type_menus)) {
       $query = \Drupal::entityQuery('menu_link_content')
         ->condition('link.uri', 'node/' . $node->id())
@@ -227,7 +227,7 @@ function menu_ui_get_menu_link_defaults(NodeInterface $node) {
     if ($id) {
       $menu_link = MenuLinkContent::load($id);
       $menu_link = \Drupal::service('entity.repository')->getTranslationFromContext($menu_link);
-      $defaults = array(
+      $defaults = [
         'entity_id' => $menu_link->id(),
         'id' => $menu_link->getPluginId(),
         'title' => $menu_link->getTitle(),
@@ -236,7 +236,7 @@ function menu_ui_get_menu_link_defaults(NodeInterface $node) {
         'menu_name' => $menu_link->getMenuName(),
         'parent' => $menu_link->getParentId(),
         'weight' => $menu_link->getWeight(),
-      );
+      ];
     }
   }
 
@@ -245,7 +245,7 @@ function menu_ui_get_menu_link_defaults(NodeInterface $node) {
     // definition.
     $field_definitions = \Drupal::entityManager()->getBaseFieldDefinitions('menu_link_content');
     $max_length = $field_definitions['title']->getSetting('max_length');
-    $defaults = array(
+    $defaults = [
       'entity_id' => 0,
       'id' => '',
       'title' => '',
@@ -254,7 +254,7 @@ function menu_ui_get_menu_link_defaults(NodeInterface $node) {
       'menu_name' => $menu_name,
       'parent' => '',
       'weight' => 0,
-    );
+    ];
   }
   return $defaults;
 }
@@ -276,8 +276,8 @@ function menu_ui_form_node_form_alter(&$form, FormStateInterface $form_state) {
   /** @var \Drupal\Core\Menu\MenuParentFormSelectorInterface $menu_parent_selector */
   $menu_parent_selector = \Drupal::service('menu.parent_form_selector');
   $menu_names = menu_ui_get_menus();
-  $type_menus = $node_type->getThirdPartySetting('menu_ui', 'available_menus', array('main'));
-  $available_menus = array();
+  $type_menus = $node_type->getThirdPartySetting('menu_ui', 'available_menus', ['main']);
+  $available_menus = [];
   foreach ($type_menus as $menu) {
     $available_menus[$menu] = $menu_names[$menu];
   }
@@ -293,64 +293,64 @@ function menu_ui_form_node_form_alter(&$form, FormStateInterface $form_state) {
     return;
   }
 
-  $form['menu'] = array(
+  $form['menu'] = [
     '#type' => 'details',
     '#title' => t('Menu settings'),
     '#access' => \Drupal::currentUser()->hasPermission('administer menu'),
     '#open' => (bool) $defaults['id'],
     '#group' => 'advanced',
-    '#attached' => array(
-      'library' => array('menu_ui/drupal.menu_ui'),
-    ),
+    '#attached' => [
+      'library' => ['menu_ui/drupal.menu_ui'],
+    ],
     '#tree' => TRUE,
     '#weight' => -2,
-    '#attributes' => array('class' => array('menu-link-form')),
-  );
-  $form['menu']['enabled'] = array(
+    '#attributes' => ['class' => ['menu-link-form']],
+  ];
+  $form['menu']['enabled'] = [
     '#type' => 'checkbox',
     '#title' => t('Provide a menu link'),
     '#default_value' => (int) (bool) $defaults['id'],
-  );
-  $form['menu']['link'] = array(
+  ];
+  $form['menu']['link'] = [
     '#type' => 'container',
-    '#parents' => array('menu'),
-    '#states' => array(
-      'invisible' => array(
-        'input[name="menu[enabled]"]' => array('checked' => FALSE),
-      ),
-    ),
-  );
+    '#parents' => ['menu'],
+    '#states' => [
+      'invisible' => [
+        'input[name="menu[enabled]"]' => ['checked' => FALSE],
+      ],
+    ],
+  ];
 
   // Populate the element with the link data.
-  foreach (array('id', 'entity_id') as $key) {
-    $form['menu']['link'][$key] = array('#type' => 'value', '#value' => $defaults[$key]);
+  foreach (['id', 'entity_id'] as $key) {
+    $form['menu']['link'][$key] = ['#type' => 'value', '#value' => $defaults[$key]];
   }
 
-  $form['menu']['link']['title'] = array(
+  $form['menu']['link']['title'] = [
     '#type' => 'textfield',
     '#title' => t('Menu link title'),
     '#default_value' => $defaults['title'],
     '#maxlength' => $defaults['title_max_length'],
-  );
+  ];
 
-  $form['menu']['link']['description'] = array(
+  $form['menu']['link']['description'] = [
     '#type' => 'textarea',
     '#title' => t('Description'),
     '#default_value' => $defaults['description'],
     '#rows' => 1,
     '#description' => t('Shown when hovering over the menu link.'),
-  );
+  ];
 
   $form['menu']['link']['menu_parent'] = $parent_element;
   $form['menu']['link']['menu_parent']['#title'] = t('Parent item');
   $form['menu']['link']['menu_parent']['#attributes']['class'][] = 'menu-parent-select';
 
-  $form['menu']['link']['weight'] = array(
+  $form['menu']['link']['weight'] = [
     '#type' => 'number',
     '#title' => t('Weight'),
     '#default_value' => $defaults['weight'],
     '#description' => t('Menu links with lower weights are displayed before links with higher weights.'),
-  );
+  ];
 
   foreach (array_keys($form['actions']) as $action) {
     if ($action != 'preview' && isset($form['actions'][$action]['#type']) && $form['actions'][$action]['#type'] === 'submit') {
@@ -401,21 +401,21 @@ function menu_ui_form_node_type_form_alter(&$form, FormStateInterface $form_stat
   $menu_options = menu_ui_get_menus();
   /** @var \Drupal\node\NodeTypeInterface $type */
   $type = $form_state->getFormObject()->getEntity();
-  $form['menu'] = array(
+  $form['menu'] = [
     '#type' => 'details',
     '#title' => t('Menu settings'),
-    '#attached' => array(
-      'library' => array('menu_ui/drupal.menu_ui.admin'),
-    ),
+    '#attached' => [
+      'library' => ['menu_ui/drupal.menu_ui.admin'],
+    ],
     '#group' => 'additional_settings',
-  );
-  $form['menu']['menu_options'] = array(
+  ];
+  $form['menu']['menu_options'] = [
     '#type' => 'checkboxes',
     '#title' => t('Available menus'),
-    '#default_value' => $type->getThirdPartySetting('menu_ui', 'available_menus', array('main')),
+    '#default_value' => $type->getThirdPartySetting('menu_ui', 'available_menus', ['main']),
     '#options' => $menu_options,
     '#description' => t('The menus available to place links in for this content type.'),
-  );
+  ];
   // @todo See if we can avoid pre-loading all options by changing the form or
   //   using a #process callback. https://www.drupal.org/node/2310319
   //   To avoid an 'illegal option' error after saving the form we have to load
@@ -423,14 +423,14 @@ function menu_ui_form_node_type_form_alter(&$form, FormStateInterface $form_stat
   //   add options to the list using ajax.
   $options_cacheability = new CacheableMetadata();
   $options = $menu_parent_selector->getParentSelectOptions('', NULL, $options_cacheability);
-  $form['menu']['menu_parent'] = array(
+  $form['menu']['menu_parent'] = [
     '#type' => 'select',
     '#title' => t('Default parent item'),
     '#default_value' => $type->getThirdPartySetting('menu_ui', 'parent', 'main:'),
     '#options' => $options,
     '#description' => t('Choose the menu item to be the default parent for a new link in the content authoring form.'),
-    '#attributes' => array('class' => array('menu-title-select')),
-  );
+    '#attributes' => ['class' => ['menu-title-select']],
+  ];
   $options_cacheability->applyTo($form['menu']['menu_parent']);
 
   $form['#validate'][] = 'menu_ui_form_node_type_form_validate';
diff --git a/core/modules/menu_ui/src/Controller/MenuController.php b/core/modules/menu_ui/src/Controller/MenuController.php
index 39b0a32..7958c10 100644
--- a/core/modules/menu_ui/src/Controller/MenuController.php
+++ b/core/modules/menu_ui/src/Controller/MenuController.php
@@ -49,7 +49,7 @@ public static function create(ContainerInterface $container) {
    *   The available menu and menu items.
    */
   public function getParentOptions(Request $request) {
-    $available_menus = array();
+    $available_menus = [];
     if ($menus = $request->request->get('menus')) {
       foreach ($menus as $menu) {
         $available_menus[$menu] = $menu;
diff --git a/core/modules/menu_ui/src/Form/MenuDeleteForm.php b/core/modules/menu_ui/src/Form/MenuDeleteForm.php
index 22bfb0a..1cebd90 100644
--- a/core/modules/menu_ui/src/Form/MenuDeleteForm.php
+++ b/core/modules/menu_ui/src/Form/MenuDeleteForm.php
@@ -57,7 +57,7 @@ public function getDescription() {
     $caption = '';
     $num_links = $this->menuLinkManager->countMenuLinks($this->entity->id());
     if ($num_links) {
-      $caption .= '<p>' . $this->formatPlural($num_links, '<strong>Warning:</strong> There is currently 1 menu link in %title. It will be deleted (system-defined items will be reset).', '<strong>Warning:</strong> There are currently @count menu links in %title. They will be deleted (system-defined links will be reset).', array('%title' => $this->entity->label())) . '</p>';
+      $caption .= '<p>' . $this->formatPlural($num_links, '<strong>Warning:</strong> There is currently 1 menu link in %title. It will be deleted (system-defined items will be reset).', '<strong>Warning:</strong> There are currently @count menu links in %title. They will be deleted (system-defined links will be reset).', ['%title' => $this->entity->label()]) . '</p>';
     }
     $caption .= '<p>' . t('This action cannot be undone.') . '</p>';
     return $caption;
@@ -67,7 +67,7 @@ public function getDescription() {
    * {@inheritdoc}
    */
   protected function logDeletionMessage() {
-    $this->logger('menu')->notice('Deleted custom menu %title and all its menu links.', array('%title' => $this->entity->label()));
+    $this->logger('menu')->notice('Deleted custom menu %title and all its menu links.', ['%title' => $this->entity->label()]);
   }
 
   /**
@@ -85,7 +85,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     //   parameter that is being removed. Also, consider moving this to
     //   menu_ui.module as part of a generic response to entity deletion.
     //   https://www.drupal.org/node/2310329
-    $menu_links = $this->menuLinkManager->loadLinksByRoute('entity.menu.edit_form', array('menu' => $this->entity->id()), TRUE);
+    $menu_links = $this->menuLinkManager->loadLinksByRoute('entity.menu.edit_form', ['menu' => $this->entity->id()], TRUE);
     foreach ($menu_links as $id => $link) {
       $this->menuLinkManager->removeDefinition($id);
     }
diff --git a/core/modules/menu_ui/src/Form/MenuLinkEditForm.php b/core/modules/menu_ui/src/Form/MenuLinkEditForm.php
index cf133cd..2dbd6a5 100644
--- a/core/modules/menu_ui/src/Form/MenuLinkEditForm.php
+++ b/core/modules/menu_ui/src/Form/MenuLinkEditForm.php
@@ -57,22 +57,22 @@ public function getFormId() {
    *   The plugin instance to use for this form.
    */
   public function buildForm(array $form, FormStateInterface $form_state, MenuLinkInterface $menu_link_plugin = NULL) {
-    $form['menu_link_id'] = array(
+    $form['menu_link_id'] = [
       '#type' => 'value',
       '#value' => $menu_link_plugin->getPluginId(),
-    );
+    ];
     $class_name = $menu_link_plugin->getFormClass();
     $form['#plugin_form'] = $this->classResolver->getInstanceFromDefinition($class_name);
     $form['#plugin_form']->setMenuLinkInstance($menu_link_plugin);
 
     $form += $form['#plugin_form']->buildConfigurationForm($form, $form_state);
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
       '#button_type' => 'primary',
-    );
+    ];
     return $form;
   }
 
@@ -92,7 +92,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     drupal_set_message($this->t('The menu link has been saved.'));
     $form_state->setRedirect(
       'entity.menu.edit_form',
-      array('menu' => $link->getMenuName())
+      ['menu' => $link->getMenuName()]
     );
   }
 
diff --git a/core/modules/menu_ui/src/Form/MenuLinkResetForm.php b/core/modules/menu_ui/src/Form/MenuLinkResetForm.php
index 6fbf622..e37b16b 100644
--- a/core/modules/menu_ui/src/Form/MenuLinkResetForm.php
+++ b/core/modules/menu_ui/src/Form/MenuLinkResetForm.php
@@ -59,16 +59,16 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to reset the link %item to its default values?', array('%item' => $this->link->getTitle()));
+    return $this->t('Are you sure you want to reset the link %item to its default values?', ['%item' => $this->link->getTitle()]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('entity.menu.edit_form', array(
+    return new Url('entity.menu.edit_form', [
       'menu' => $this->link->getMenuName(),
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/menu_ui/src/MenuForm.php b/core/modules/menu_ui/src/MenuForm.php
index 105875f..0bee996 100644
--- a/core/modules/menu_ui/src/MenuForm.php
+++ b/core/modules/menu_ui/src/MenuForm.php
@@ -48,7 +48,7 @@ class MenuForm extends EntityForm {
    *
    * @var array
    */
-  protected $overviewTreeForm = array('#tree' => TRUE);
+  protected $overviewTreeForm = ['#tree' => TRUE];
 
   /**
    * Constructs a MenuForm object.
@@ -84,43 +84,43 @@ public function form(array $form, FormStateInterface $form_state) {
     $menu = $this->entity;
 
     if ($this->operation == 'edit') {
-      $form['#title'] = $this->t('Edit menu %label', array('%label' => $menu->label()));
+      $form['#title'] = $this->t('Edit menu %label', ['%label' => $menu->label()]);
     }
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Title'),
       '#default_value' => $menu->label(),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#title' => $this->t('Menu name'),
       '#default_value' => $menu->id(),
       '#maxlength' => MENU_MAX_MENU_NAME_LENGTH_UI,
       '#description' => $this->t('A unique name to construct the URL for the menu. It must only contain lowercase letters, numbers and hyphens.'),
-      '#machine_name' => array(
-        'exists' => array($this, 'menuNameExists'),
-        'source' => array('label'),
+      '#machine_name' => [
+        'exists' => [$this, 'menuNameExists'],
+        'source' => ['label'],
         'replace_pattern' => '[^a-z0-9-]+',
         'replace' => '-',
-      ),
+      ],
       // A menu's machine name cannot be changed.
       '#disabled' => !$menu->isNew() || $menu->isLocked(),
-    );
-    $form['description'] = array(
+    ];
+    $form['description'] = [
       '#type' => 'textfield',
       '#title' => t('Administrative summary'),
       '#maxlength' => 512,
       '#default_value' => $menu->getDescription(),
-    );
+    ];
 
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#type' => 'language_select',
       '#title' => t('Menu language'),
       '#languages' => LanguageInterface::STATE_ALL,
       '#default_value' => $menu->language()->getId(),
-    );
+    ];
 
     // Add menu links administration form for existing menus.
     if (!$menu->isNew() || $menu->isLocked()) {
@@ -130,7 +130,7 @@ public function form(array $form, FormStateInterface $form_state) {
       // the parents of the form section.
       // @see self::submitOverviewForm()
       $form_state->set('menu_overview_form_parents', ['links']);
-      $form['links'] = array();
+      $form['links'] = [];
       $form['links'] = $this->buildOverviewForm($form['links'], $form_state);
     }
 
@@ -164,12 +164,12 @@ public function save(array $form, FormStateInterface $form_state) {
     $status = $menu->save();
     $edit_link = $this->entity->link($this->t('Edit'));
     if ($status == SAVED_UPDATED) {
-      drupal_set_message($this->t('Menu %label has been updated.', array('%label' => $menu->label())));
-      $this->logger('menu')->notice('Menu %label has been updated.', array('%label' => $menu->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Menu %label has been updated.', ['%label' => $menu->label()]));
+      $this->logger('menu')->notice('Menu %label has been updated.', ['%label' => $menu->label(), 'link' => $edit_link]);
     }
     else {
-      drupal_set_message($this->t('Menu %label has been added.', array('%label' => $menu->label())));
-      $this->logger('menu')->notice('Menu %label has been added.', array('%label' => $menu->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Menu %label has been added.', ['%label' => $menu->label()]));
+      $this->logger('menu')->notice('Menu %label has been added.', ['%label' => $menu->label(), 'link' => $edit_link]);
     }
 
     $form_state->setRedirectUrl($this->entity->urlInfo('edit-form'));
@@ -213,10 +213,10 @@ protected function buildOverviewForm(array &$form, FormStateInterface $form_stat
 
     // We indicate that a menu administrator is running the menu access check.
     $this->getRequest()->attributes->set('_menu_admin', TRUE);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ];
     $tree = $this->menuTree->transform($tree, $manipulators);
     $this->getRequest()->attributes->set('_menu_admin', FALSE);
 
@@ -229,26 +229,26 @@ protected function buildOverviewForm(array &$form, FormStateInterface $form_stat
     };
     $delta = max($count($tree), 50);
 
-    $form['links'] = array(
+    $form['links'] = [
       '#type' => 'table',
       '#theme' => 'table__menu_overview',
-      '#header' => array(
+      '#header' => [
         $this->t('Menu link'),
-        array(
+        [
           'data' => $this->t('Enabled'),
-          'class' => array('checkbox'),
-        ),
+          'class' => ['checkbox'],
+        ],
         $this->t('Weight'),
-        array(
+        [
           'data' => $this->t('Operations'),
           'colspan' => 3,
-        ),
-      ),
-      '#attributes' => array(
+        ],
+      ],
+      '#attributes' => [
         'id' => 'menu-overview',
-      ),
-      '#tabledrag' => array(
-        array(
+      ],
+      '#tabledrag' => [
+        [
           'action' => 'match',
           'relationship' => 'parent',
           'group' => 'menu-parent',
@@ -256,14 +256,14 @@ protected function buildOverviewForm(array &$form, FormStateInterface $form_stat
           'source' => 'menu-id',
           'hidden' => TRUE,
           'limit' => \Drupal::menuTree()->maxDepth() - 1,
-        ),
-        array(
+        ],
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'menu-weight',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     $form['links']['#empty'] = $this->t('There are no menu links yet. <a href=":url">Add link</a>.', [
       ':url' => $this->url('entity.menu.add_link_form', ['menu' => $this->entity->id()], [
@@ -285,19 +285,19 @@ protected function buildOverviewForm(array &$form, FormStateInterface $form_stat
         $form['links'][$id]['#weight'] = $element['#item']->link->getWeight();
 
         // Add special classes to be used for tabledrag.js.
-        $element['parent']['#attributes']['class'] = array('menu-parent');
-        $element['weight']['#attributes']['class'] = array('menu-weight');
-        $element['id']['#attributes']['class'] = array('menu-id');
+        $element['parent']['#attributes']['class'] = ['menu-parent'];
+        $element['weight']['#attributes']['class'] = ['menu-weight'];
+        $element['id']['#attributes']['class'] = ['menu-id'];
 
-        $form['links'][$id]['title'] = array(
-          array(
+        $form['links'][$id]['title'] = [
+          [
             '#theme' => 'indentation',
             '#size' => $element['#item']->depth - 1,
-          ),
+          ],
           $element['title'],
-        );
+        ];
         $form['links'][$id]['enabled'] = $element['enabled'];
-        $form['links'][$id]['enabled']['#wrapper_attributes']['class'] = array('checkbox', 'menu-enabled');
+        $form['links'][$id]['enabled']['#wrapper_attributes']['class'] = ['checkbox', 'menu-enabled'];
 
         $form['links'][$id]['weight'] = $element['weight'];
 
@@ -339,7 +339,7 @@ protected function buildOverviewTreeForm($tree, $delta) {
       if ($link) {
         $id = 'menu_plugin_id:' . $link->getPluginId();
         $form[$id]['#item'] = $element;
-        $form[$id]['#attributes'] = $link->isEnabled() ? array('class' => array('menu-enabled')) : array('class' => array('menu-disabled'));
+        $form[$id]['#attributes'] = $link->isEnabled() ? ['class' => ['menu-enabled']] : ['class' => ['menu-disabled']];
         $form[$id]['title'] = Link::fromTextAndUrl($link->getTitle(), $link->getUrlObject())->toRenderable();
         if (!$link->isEnabled()) {
           $form[$id]['title']['#suffix'] = ' (' . $this->t('disabled') . ')';
@@ -353,32 +353,32 @@ protected function buildOverviewTreeForm($tree, $delta) {
           $form[$id]['title']['#suffix'] = ' (' . $this->t('logged in users only') . ')';
         }
 
-        $form[$id]['enabled'] = array(
+        $form[$id]['enabled'] = [
           '#type' => 'checkbox',
-          '#title' => $this->t('Enable @title menu link', array('@title' => $link->getTitle())),
+          '#title' => $this->t('Enable @title menu link', ['@title' => $link->getTitle()]),
           '#title_display' => 'invisible',
           '#default_value' => $link->isEnabled(),
-        );
-        $form[$id]['weight'] = array(
+        ];
+        $form[$id]['weight'] = [
           '#type' => 'weight',
           '#delta' => $delta,
           '#default_value' => $link->getWeight(),
-          '#title' => $this->t('Weight for @title', array('@title' => $link->getTitle())),
+          '#title' => $this->t('Weight for @title', ['@title' => $link->getTitle()]),
           '#title_display' => 'invisible',
-        );
-        $form[$id]['id'] = array(
+        ];
+        $form[$id]['id'] = [
           '#type' => 'hidden',
           '#value' => $link->getPluginId(),
-        );
-        $form[$id]['parent'] = array(
+        ];
+        $form[$id]['parent'] = [
           '#type' => 'hidden',
           '#default_value' => $link->getParent(),
-        );
+        ];
         // Build a list of operations.
-        $operations = array();
-        $operations['edit'] = array(
+        $operations = [];
+        $operations['edit'] = [
           'title' => $this->t('Edit'),
-        );
+        ];
         // Allow for a custom edit link per plugin.
         $edit_route = $link->getEditRoute();
         if ($edit_route) {
@@ -388,16 +388,16 @@ protected function buildOverviewTreeForm($tree, $delta) {
         }
         else {
           // Fall back to the standard edit link.
-          $operations['edit'] += array(
+          $operations['edit'] += [
             'url' => Url::fromRoute('menu_ui.link_edit', ['menu_link_plugin' => $link->getPluginId()]),
-          );
+          ];
         }
         // Links can either be reset or deleted, not both.
         if ($link->isResettable()) {
-          $operations['reset'] = array(
+          $operations['reset'] = [
             'title' => $this->t('Reset'),
             'url' => Url::fromRoute('menu_ui.link_reset', ['menu_link_plugin' => $link->getPluginId()]),
-          );
+          ];
         }
         elseif ($delete_link = $link->getDeleteRoute()) {
           $operations['delete']['url'] = $delete_link;
@@ -405,15 +405,15 @@ protected function buildOverviewTreeForm($tree, $delta) {
           $operations['delete']['title'] = $this->t('Delete');
         }
         if ($link->isTranslatable()) {
-          $operations['translate'] = array(
+          $operations['translate'] = [
             'title' => $this->t('Translate'),
             'url' => $link->getTranslateRoute(),
-          );
+          ];
         }
-        $form[$id]['operations'] = array(
+        $form[$id]['operations'] = [
           '#type' => 'operations',
           '#links' => $operations,
-        );
+        ];
       }
 
       if ($element->subtree) {
@@ -449,16 +449,16 @@ protected function submitOverviewForm(array $complete_form, FormStateInterface $
     // parent. To prevent this, save items in the form in the same order they
     // are sent, ensuring parents are saved first, then their children.
     // See https://www.drupal.org/node/181126#comment-632270.
-    $order = is_array($input) ? array_flip(array_keys($input)) : array();
+    $order = is_array($input) ? array_flip(array_keys($input)) : [];
     // Update our original form with the new order.
     $form = array_intersect_key(array_merge($order, $form), $form);
 
-    $fields = array('weight', 'parent', 'enabled');
+    $fields = ['weight', 'parent', 'enabled'];
     $form_links = $form['links'];
     foreach (Element::children($form_links) as $id) {
       if (isset($form_links[$id]['#item'])) {
         $element = $form_links[$id];
-        $updated_values = array();
+        $updated_values = [];
         // Update any fields that have changed in this menu item.
         foreach ($fields as $field) {
           if ($element[$field]['#value'] != $element[$field]['#default_value']) {
diff --git a/core/modules/menu_ui/src/MenuListBuilder.php b/core/modules/menu_ui/src/MenuListBuilder.php
index 1534272..b694c8b 100644
--- a/core/modules/menu_ui/src/MenuListBuilder.php
+++ b/core/modules/menu_ui/src/MenuListBuilder.php
@@ -18,10 +18,10 @@ class MenuListBuilder extends ConfigEntityListBuilder {
    */
   public function buildHeader() {
     $header['title'] = t('Title');
-    $header['description'] = array(
+    $header['description'] = [
       'data' => t('Description'),
-      'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-    );
+      'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+    ];
     return $header + parent::buildHeader();
   }
 
@@ -29,10 +29,10 @@ public function buildHeader() {
    * {@inheritdoc}
    */
   public function buildRow(EntityInterface $entity) {
-    $row['title'] = array(
+    $row['title'] = [
       'data' => $entity->label(),
-      'class' => array('menu-label'),
-    );
+      'class' => ['menu-label'],
+    ];
     $row['description']['data'] = ['#markup' => $entity->getDescription()];
     return $row + parent::buildRow($entity);
   }
@@ -45,11 +45,11 @@ public function getDefaultOperations(EntityInterface $entity) {
 
     if (isset($operations['edit'])) {
       $operations['edit']['title'] = t('Edit menu');
-      $operations['add'] = array(
+      $operations['add'] = [
         'title' => t('Add link'),
         'weight' => 20,
         'url' => $entity->urlInfo('add-link-form'),
-      );
+      ];
     }
     if (isset($operations['delete'])) {
       $operations['delete']['title'] = t('Delete menu');
diff --git a/core/modules/menu_ui/src/Tests/MenuLanguageTest.php b/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
index 72865ea..856f408 100644
--- a/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
+++ b/core/modules/menu_ui/src/Tests/MenuLanguageTest.php
@@ -21,19 +21,19 @@ class MenuLanguageTest extends MenuWebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer menu')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer menu']));
 
     // Add some custom languages.
-    foreach (array('aa', 'bb', 'cc', 'cs') as $language_code) {
-      ConfigurableLanguage::create(array(
+    foreach (['aa', 'bb', 'cc', 'cs'] as $language_code) {
+      ConfigurableLanguage::create([
         'id' => $language_code,
         'label' => $this->randomMachineName(),
-      ))->save();
+      ])->save();
     }
   }
 
@@ -45,12 +45,12 @@ function testMenuLanguage() {
     // Machine name has to be lowercase.
     $menu_name = Unicode::strtolower($this->randomMachineName(16));
     $label = $this->randomString();
-    $edit = array(
+    $edit = [
       'id' => $menu_name,
       'description' => '',
       'label' => $label,
       'langcode' => 'aa',
-    );
+    ];
     $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save'));
     ContentLanguageSettings::loadByEntityTypeBundle('menu_link_content', 'menu_link_content')
       ->setDefaultLangcode('bb')
@@ -65,19 +65,19 @@ function testMenuLanguage() {
 
     // Add a menu link.
     $link_title = $this->randomString();
-    $edit = array(
+    $edit = [
       'title[0][value]' => $link_title,
       'link[0][uri]' => $link_path,
-    );
+    ];
     $this->drupalPostForm("admin/structure/menu/manage/$menu_name/add", $edit, t('Save'));
     // Check the link was added with the correct menu link default language.
-    $menu_links = entity_load_multiple_by_properties('menu_link_content', array('title' => $link_title));
+    $menu_links = entity_load_multiple_by_properties('menu_link_content', ['title' => $link_title]);
     $menu_link = reset($menu_links);
-    $this->assertMenuLink($menu_link->getPluginId(), array(
+    $this->assertMenuLink($menu_link->getPluginId(), [
       'menu_name' => $menu_name,
       'route_name' => '<front>',
       'langcode' => 'bb',
-    ));
+    ]);
 
     // Edit menu link default, changing it to cc.
     ContentLanguageSettings::loadByEntityTypeBundle('menu_link_content', 'menu_link_content')
@@ -87,30 +87,30 @@ function testMenuLanguage() {
 
     // Add a menu link.
     $link_title = $this->randomString();
-    $edit = array(
+    $edit = [
       'title[0][value]' => $link_title,
       'link[0][uri]' => $link_path,
-    );
+    ];
     $this->drupalPostForm("admin/structure/menu/manage/$menu_name/add", $edit, t('Save'));
     // Check the link was added with the correct new menu link default language.
-    $menu_links = entity_load_multiple_by_properties('menu_link_content', array('title' => $link_title));
+    $menu_links = entity_load_multiple_by_properties('menu_link_content', ['title' => $link_title]);
     $menu_link = reset($menu_links);
-    $this->assertMenuLink($menu_link->getPluginId(), array(
+    $this->assertMenuLink($menu_link->getPluginId(), [
       'menu_name' => $menu_name,
       'route_name' => '<front>',
       'langcode' => 'cc',
-    ));
+    ]);
 
     // Now change the language of the new link to 'bb'.
-    $edit = array(
+    $edit = [
       'langcode[0][value]' => 'bb',
-    );
+    ];
     $this->drupalPostForm('admin/structure/menu/item/' . $menu_link->id() . '/edit', $edit, t('Save'));
-    $this->assertMenuLink($menu_link->getPluginId(), array(
+    $this->assertMenuLink($menu_link->getPluginId(), [
       'menu_name' => $menu_name,
       'route_name' => '<front>',
       'langcode' => 'bb',
-    ));
+    ]);
 
     // Saving menu link items ends up on the edit menu page. To check the menu
     // link has the correct language default on edit, go to the menu link edit
diff --git a/core/modules/menu_ui/src/Tests/MenuNodeTest.php b/core/modules/menu_ui/src/Tests/MenuNodeTest.php
index 3fc8423..26f6e4f 100644
--- a/core/modules/menu_ui/src/Tests/MenuNodeTest.php
+++ b/core/modules/menu_ui/src/Tests/MenuNodeTest.php
@@ -26,7 +26,7 @@ class MenuNodeTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_ui', 'test_page_test', 'node', 'block', 'locale', 'language', 'content_translation');
+  public static $modules = ['menu_ui', 'test_page_test', 'node', 'block', 'locale', 'language', 'content_translation'];
 
   protected function setUp() {
     parent::setUp();
@@ -34,9 +34,9 @@ protected function setUp() {
     $this->drupalPlaceBlock('system_menu_block:main');
     $this->drupalPlaceBlock('page_title_block');
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $this->editor = $this->drupalCreateUser(array(
+    $this->editor = $this->drupalCreateUser([
       'access administration pages',
       'administer content types',
       'administer menu',
@@ -47,7 +47,7 @@ protected function setUp() {
       'update content translations',
       'delete content translations',
       'translate any entity',
-    ));
+    ]);
     $this->drupalLogin($this->editor);
   }
 
@@ -68,9 +68,9 @@ function testMenuNodeFormWidget() {
     $this->assertPattern('/<input .* id="edit-menu-title" .* maxlength="' . $max_length . '" .* \/>/', 'Menu link title field has correct maxlength in node add form.');
 
     // Disable the default main menu, so that no menus are enabled.
-    $edit = array(
+    $edit = [
       'menu_options[main]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
 
     // Verify that no menu settings are displayed and nodes can be created.
@@ -78,47 +78,47 @@ function testMenuNodeFormWidget() {
     $this->assertText(t('Create Basic page'));
     $this->assertNoText(t('Menu settings'));
     $node_title = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
       'body[0][value]' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $node = $this->drupalGetNodeByTitle($node_title);
     $this->assertEqual($node->getTitle(), $edit['title[0][value]']);
 
     // Test that we cannot set a menu item from a menu that is not set as
     // available.
-    $edit = array(
+    $edit = [
       'menu_options[tools]' => 1,
       'menu_parent' => 'main:',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
     $this->assertText(t('The selected menu item is not under one of the selected menus.'));
-    $this->assertNoRaw(t('The content type %name has been updated.', array('%name' => 'Basic page')));
+    $this->assertNoRaw(t('The content type %name has been updated.', ['%name' => 'Basic page']));
 
     // Enable Tools menu as available menu.
-    $edit = array(
+    $edit = [
       'menu_options[main]' => 1,
       'menu_options[tools]' => 1,
       'menu_parent' => 'main:',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
-    $this->assertRaw(t('The content type %name has been updated.', array('%name' => 'Basic page')));
+    $this->assertRaw(t('The content type %name has been updated.', ['%name' => 'Basic page']));
 
     // Test that we can preview a node that will create a menu item.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
       'menu[enabled]' => 1,
       'menu[title]' => 'Test preview',
-    );
+    ];
     $this->drupalPostForm('node/add/page', $edit, t('Preview'));
 
     // Create a node.
     $node_title = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'title[0][value]' => $node_title,
       'body[0][value]' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
     $node = $this->drupalGetNodeByTitle($node_title);
     // Assert that there is no link for the node.
@@ -126,9 +126,9 @@ function testMenuNodeFormWidget() {
     $this->assertNoLink($node_title);
 
     // Edit the node, enable the menu link setting, but skip the link title.
-    $edit = array(
+    $edit = [
       'menu[enabled]' => 1,
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     // Assert that there is no link for the node.
     $this->drupalGet('test-page');
@@ -165,11 +165,11 @@ function testMenuNodeFormWidget() {
     // Log back in as normal user.
     $this->drupalLogin($this->editor);
     // Edit the node and create a menu link.
-    $edit = array(
+    $edit = [
       'menu[enabled]' => 1,
       'menu[title]' => $node_title,
       'menu[weight]' => 17,
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     // Assert that the link exists.
     $this->drupalGet('test-page');
@@ -190,20 +190,20 @@ function testMenuNodeFormWidget() {
     $this->assertFalse($link->isEnabled(), 'Saving a node with a disabled menu link keeps the menu link disabled.');
 
     // Edit the node and remove the menu link.
-    $edit = array(
+    $edit = [
       'menu[enabled]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
     // Assert that there is no link for the node.
     $this->drupalGet('test-page');
     $this->assertNoLink($node_title);
 
     // Add a menu link to the Administration menu.
-    $item = MenuLinkContent::create(array(
+    $item = MenuLinkContent::create([
       'link' => [['uri' => 'entity:node/' . $node->id()]],
       'title' => $this->randomMachineName(16),
       'menu_name' => 'admin',
-    ));
+    ]);
     $item->save();
 
     // Assert that disabled Administration menu is not shown on the
@@ -219,14 +219,14 @@ function testMenuNodeFormWidget() {
     $item->menu_name->value = 'tools';
     $item->save();
     // Create a second node.
-    $child_node = $this->drupalCreateNode(array('type' => 'article'));
+    $child_node = $this->drupalCreateNode(['type' => 'article']);
     // Assign a menu link to the second node, being a child of the first one.
-    $child_item = MenuLinkContent::create(array(
+    $child_item = MenuLinkContent::create([
       'link' => [['uri' => 'entity:node/' . $child_node->id()]],
       'title' => $this->randomMachineName(16),
       'parent' => $item->getPluginId(),
       'menu_name' => $item->getMenuName(),
-    ));
+    ]);
     $child_item->save();
     // Edit the first node.
     $this->drupalGet('node/' . $node->id() . '/edit');
@@ -242,7 +242,7 @@ function testMenuNodeFormWidget() {
    */
   function testMultilingualMenuNodeFormWidget() {
     // Setup languages.
-    $langcodes = array('de');
+    $langcodes = ['de'];
     foreach ($langcodes as $langcode) {
       ConfigurableLanguage::createFromLangcode($langcode)->save();
     }
@@ -257,7 +257,7 @@ function testMultilingualMenuNodeFormWidget() {
 
     $this->rebuildContainer();
 
-    $languages = array();
+    $languages = [];
     foreach ($langcodes as $langcode) {
       $languages[$langcode] = ConfigurableLanguage::load($langcode);
     }
@@ -265,14 +265,14 @@ function testMultilingualMenuNodeFormWidget() {
     // Use a UI form submission to make the node type and menu link content entity translatable.
     $this->drupalLogout();
     $this->drupalLogin($this->rootUser);
-    $edit = array(
+    $edit = [
       'entity_types[node]' => TRUE,
       'entity_types[menu_link_content]' => TRUE,
       'settings[node][page][settings][language][language_alterable]' => TRUE,
       'settings[node][page][translatable]' => TRUE,
       'settings[node][page][fields][title]' => TRUE,
       'settings[menu_link_content][menu_link_content][translatable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
 
     // Log out and back in as normal user.
@@ -297,42 +297,42 @@ function testMultilingualMenuNodeFormWidget() {
     $node->save();
 
     // Edit the node and create a menu link.
-    $edit = array(
+    $edit = [
       'menu[enabled]' => 1,
       'menu[title]' => $node_title,
       'menu[weight]' => 17,
-    );
-    $options = array('language' => $languages[$langcodes[0]]);
+    ];
+    $options = ['language' => $languages[$langcodes[0]]];
     $url = $node->toUrl('edit-form', $options);
     $this->drupalPostForm($url, $edit, t('Save') . ' ' . t('(this translation)'));
 
     // Edit the node in a different language and translate the menu link.
-    $edit = array(
+    $edit = [
       'menu[enabled]' => 1,
       'menu[title]' => $translated_node_title,
       'menu[weight]' => 17,
-    );
-    $options = array('language' => $languages[$langcodes[1]]);
+    ];
+    $options = ['language' => $languages[$langcodes[1]]];
     $url = $node->toUrl('edit-form', $options);
     $this->drupalPostForm($url, $edit, t('Save') . ' ' . t('(this translation)'));
 
     // Assert that the original link exists in the frontend.
-    $this->drupalGet('node/' . $node->id(), array('language' => $languages[$langcodes[0]]));
+    $this->drupalGet('node/' . $node->id(), ['language' => $languages[$langcodes[0]]]);
     $this->assertLink($node_title);
 
     // Assert that the translated link exists in the frontend.
-    $this->drupalGet('node/' . $node->id(), array('language' => $languages[$langcodes[1]]));
+    $this->drupalGet('node/' . $node->id(), ['language' => $languages[$langcodes[1]]]);
     $this->assertLink($translated_node_title);
 
     // Revisit the edit page in original language, check the loaded menu item title and save.
-    $options = array('language' => $languages[$langcodes[0]]);
+    $options = ['language' => $languages[$langcodes[0]]];
     $url = $node->toUrl('edit-form', $options);
     $this->drupalGet($url);
     $this->assertFieldById('edit-menu-title', $node_title);
     $this->drupalPostForm(NULL, [], t('Save') . ' ' . t('(this translation)'));
 
     // Revisit the edit page of the translation and check the loaded menu item title.
-    $options = array('language' => $languages[$langcodes[1]]);
+    $options = ['language' => $languages[$langcodes[1]]];
     $url = $node->toUrl('edit-form', $options);
     $this->drupalGet($url);
     $this->assertFieldById('edit-menu-title', $translated_node_title);
diff --git a/core/modules/menu_ui/src/Tests/MenuTest.php b/core/modules/menu_ui/src/Tests/MenuTest.php
index 9c4e1ce..c9df569 100644
--- a/core/modules/menu_ui/src/Tests/MenuTest.php
+++ b/core/modules/menu_ui/src/Tests/MenuTest.php
@@ -25,7 +25,7 @@ class MenuTest extends MenuWebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'block', 'contextual', 'help', 'path', 'test_page_test');
+  public static $modules = ['node', 'block', 'contextual', 'help', 'path', 'test_page_test'];
 
   /**
    * A user with administration rights.
@@ -67,11 +67,11 @@ protected function setUp() {
 
     $this->drupalPlaceBlock('page_title_block');
 
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer blocks', 'administer menu', 'create article content'));
-    $this->authenticatedUser = $this->drupalCreateUser(array());
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer blocks', 'administer menu', 'create article content']);
+    $this->authenticatedUser = $this->drupalCreateUser([]);
   }
 
   /**
@@ -80,7 +80,7 @@ protected function setUp() {
   function testMenu() {
     // Log in the user.
     $this->drupalLogin($this->adminUser);
-    $this->items = array();
+    $this->items = [];
 
     $this->menu = $this->addCustomMenu();
     $this->doMenuTests();
@@ -132,7 +132,7 @@ function testMenu() {
     $instance = $this->getStandardMenuLink();
     $old_weight = $instance->getWeight();
     // Edit the static menu link.
-    $edit = array();
+    $edit = [];
     $edit['weight'] = 10;
     $id = $instance->getPluginId();
     $this->drupalPostForm("admin/structure/menu/link/$id/edit", $edit, t('Save'));
@@ -153,11 +153,11 @@ function addCustomMenuCRUD() {
     $menu_name = substr(hash('sha256', $this->randomMachineName(16)), 0, MENU_MAX_MENU_NAME_LENGTH_UI);
     $label = $this->randomMachineName(16);
 
-    $menu = Menu::create(array(
+    $menu = Menu::create([
       'id' => $menu_name,
       'label' => $label,
       'description' => 'Description text',
-    ));
+    ]);
     $menu->save();
 
     // Assert the new menu.
@@ -183,20 +183,20 @@ function addCustomMenu() {
     $this->drupalGet('admin/structure/menu/add');
     $menu_name = substr(hash('sha256', $this->randomMachineName(16)), 0, MENU_MAX_MENU_NAME_LENGTH_UI + 1);
     $label = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'id' => $menu_name,
       'description' => '',
       'label' => $label,
-    );
+    ];
     $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save'));
 
     // Verify that using a menu_name that is too long results in a validation
     // message.
-    $this->assertRaw(t('@name cannot be longer than %max characters but is currently %length characters long.', array(
+    $this->assertRaw(t('@name cannot be longer than %max characters but is currently %length characters long.', [
       '@name' => t('Menu name'),
       '%max' => MENU_MAX_MENU_NAME_LENGTH_UI,
       '%length' => Unicode::strlen($menu_name),
-    )));
+    ]));
 
     // Change the menu_name so it no longer exceeds the maximum length.
     $menu_name = substr(hash('sha256', $this->randomMachineName(16)), 0, MENU_MAX_MENU_NAME_LENGTH_UI);
@@ -204,13 +204,13 @@ function addCustomMenu() {
     $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save'));
 
     // Verify that no validation error is given for menu_name length.
-    $this->assertNoRaw(t('@name cannot be longer than %max characters but is currently %length characters long.', array(
+    $this->assertNoRaw(t('@name cannot be longer than %max characters but is currently %length characters long.', [
       '@name' => t('Menu name'),
       '%max' => MENU_MAX_MENU_NAME_LENGTH_UI,
       '%length' => Unicode::strlen($menu_name),
-    )));
+    ]));
     // Verify that the confirmation message is displayed.
-    $this->assertRaw(t('Menu %label has been added.', array('%label' => $label)));
+    $this->assertRaw(t('Menu %label has been added.', ['%label' => $label]));
     $this->drupalGet('admin/structure/menu');
     $this->assertText($label, 'Menu created');
 
@@ -236,13 +236,13 @@ function deleteCustomMenu() {
     $label = $this->menu->label();
 
     // Delete custom menu.
-    $this->drupalPostForm("admin/structure/menu/manage/$menu_name/delete", array(), t('Delete'));
+    $this->drupalPostForm("admin/structure/menu/manage/$menu_name/delete", [], t('Delete'));
     $this->assertResponse(200);
-    $this->assertRaw(t('The menu %title has been deleted.', array('%title' => $label)), 'Custom menu was deleted');
+    $this->assertRaw(t('The menu %title has been deleted.', ['%title' => $label]), 'Custom menu was deleted');
     $this->assertNull(Menu::load($menu_name), 'Custom menu was deleted');
     // Test if all menu links associated with the menu were removed from
     // database.
-    $result = entity_load_multiple_by_properties('menu_link_content', array('menu_name' => $menu_name));
+    $result = entity_load_multiple_by_properties('menu_link_content', ['menu_name' => $menu_name]);
     $this->assertFalse($result, 'All menu links associated with the custom menu were deleted.');
 
     // Make sure there's no delete button on system menus.
@@ -265,32 +265,32 @@ function doMenuTests() {
 
     $this->clickLink(t('Add link'));
     $link_title = $this->randomString();
-    $this->drupalPostForm(NULL, array('link[0][uri]' => '/', 'title[0][value]' => $link_title), t('Save'));
+    $this->drupalPostForm(NULL, ['link[0][uri]' => '/', 'title[0][value]' => $link_title], t('Save'));
     $this->assertUrl(Url::fromRoute('entity.menu.edit_form', ['menu' => $menu_name]));
     // Test the 'Edit' operation.
     $this->clickLink(t('Edit'));
     $this->assertFieldByName('title[0][value]', $link_title);
     $link_title = $this->randomString();
-    $this->drupalPostForm(NULL, array('title[0][value]' => $link_title), t('Save'));
+    $this->drupalPostForm(NULL, ['title[0][value]' => $link_title], t('Save'));
     $this->assertUrl(Url::fromRoute('entity.menu.edit_form', ['menu' => $menu_name]));
     // Test the 'Delete' operation.
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete the custom menu link %item?', array('%item' => $link_title)));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->assertRaw(t('Are you sure you want to delete the custom menu link %item?', ['%item' => $link_title]));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->assertUrl(Url::fromRoute('entity.menu.edit_form', ['menu' => $menu_name]));
 
     // Add nodes to use as links for menu links.
-    $node1 = $this->drupalCreateNode(array('type' => 'article'));
-    $node2 = $this->drupalCreateNode(array('type' => 'article'));
-    $node3 = $this->drupalCreateNode(array('type' => 'article'));
-    $node4 = $this->drupalCreateNode(array('type' => 'article'));
+    $node1 = $this->drupalCreateNode(['type' => 'article']);
+    $node2 = $this->drupalCreateNode(['type' => 'article']);
+    $node3 = $this->drupalCreateNode(['type' => 'article']);
+    $node4 = $this->drupalCreateNode(['type' => 'article']);
     // Create a node with an alias.
-    $node5 = $this->drupalCreateNode(array(
+    $node5 = $this->drupalCreateNode([
       'type' => 'article',
-      'path' => array(
+      'path' => [
         'alias' => '/node5',
-      ),
-    ));
+      ],
+    ]);
 
     // Verify add link button.
     $this->drupalGet('admin/structure/menu');
@@ -310,25 +310,25 @@ function doMenuTests() {
     // -- item2
     // --- item3
 
-    $this->assertMenuLink($item1->getPluginId(), array(
-      'children' => array($item2->getPluginId(), $item3->getPluginId()),
-      'parents' => array($item1->getPluginId()),
+    $this->assertMenuLink($item1->getPluginId(), [
+      'children' => [$item2->getPluginId(), $item3->getPluginId()],
+      'parents' => [$item1->getPluginId()],
       // We assert the language code here to make sure that the language
       // selection element degrades gracefully without the Language module.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item2->getPluginId(), array(
-      'children' => array($item3->getPluginId()),
-      'parents' => array($item2->getPluginId(), $item1->getPluginId()),
+    ]);
+    $this->assertMenuLink($item2->getPluginId(), [
+      'children' => [$item3->getPluginId()],
+      'parents' => [$item2->getPluginId(), $item1->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item3->getPluginId(), array(
-      'children' => array(),
-      'parents' => array($item3->getPluginId(), $item2->getPluginId(), $item1->getPluginId()),
+    ]);
+    $this->assertMenuLink($item3->getPluginId(), [
+      'children' => [],
+      'parents' => [$item3->getPluginId(), $item2->getPluginId(), $item1->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
+    ]);
 
     // Verify menu links.
     $this->verifyMenuLink($item1, $node1);
@@ -350,26 +350,26 @@ function doMenuTests() {
     // -- item5
     // -- item6
 
-    $this->assertMenuLink($item4->getPluginId(), array(
-      'children' => array($item5->getPluginId(), $item6->getPluginId()),
-      'parents' => array($item4->getPluginId()),
+    $this->assertMenuLink($item4->getPluginId(), [
+      'children' => [$item5->getPluginId(), $item6->getPluginId()],
+      'parents' => [$item4->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item5->getPluginId(), array(
-      'children' => array(),
-      'parents' => array($item5->getPluginId(), $item4->getPluginId()),
+    ]);
+    $this->assertMenuLink($item5->getPluginId(), [
+      'children' => [],
+      'parents' => [$item5->getPluginId(), $item4->getPluginId()],
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item6->getPluginId(), array(
-      'children' => array(),
-      'parents' => array($item6->getPluginId(), $item4->getPluginId()),
+    ]);
+    $this->assertMenuLink($item6->getPluginId(), [
+      'children' => [],
+      'parents' => [$item6->getPluginId(), $item4->getPluginId()],
       'route_name' => 'entity.node.canonical',
-      'route_parameters' => array('node' => $node5->id()),
+      'route_parameters' => ['node' => $node5->id()],
       'url' => '',
       // See above.
       'langcode' => 'en',
-    ));
+    ]);
 
     // Modify menu links.
     $this->modifyMenuLink($item1);
@@ -390,49 +390,49 @@ function doMenuTests() {
     // ---- item3
     // -- item6
 
-    $this->assertMenuLink($item1->getPluginId(), array(
-      'children' => array(),
-      'parents' => array($item1->getPluginId()),
+    $this->assertMenuLink($item1->getPluginId(), [
+      'children' => [],
+      'parents' => [$item1->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item4->getPluginId(), array(
-      'children' => array($item5->getPluginId(), $item6->getPluginId(), $item2->getPluginId(), $item3->getPluginId()),
-      'parents' => array($item4->getPluginId()),
+    ]);
+    $this->assertMenuLink($item4->getPluginId(), [
+      'children' => [$item5->getPluginId(), $item6->getPluginId(), $item2->getPluginId(), $item3->getPluginId()],
+      'parents' => [$item4->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
+    ]);
 
-    $this->assertMenuLink($item5->getPluginId(), array(
-      'children' => array($item2->getPluginId(), $item3->getPluginId()),
-      'parents' => array($item5->getPluginId(), $item4->getPluginId()),
+    $this->assertMenuLink($item5->getPluginId(), [
+      'children' => [$item2->getPluginId(), $item3->getPluginId()],
+      'parents' => [$item5->getPluginId(), $item4->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item2->getPluginId(), array(
-      'children' => array($item3->getPluginId()),
-      'parents' => array($item2->getPluginId(), $item5->getPluginId(), $item4->getPluginId()),
+    ]);
+    $this->assertMenuLink($item2->getPluginId(), [
+      'children' => [$item3->getPluginId()],
+      'parents' => [$item2->getPluginId(), $item5->getPluginId(), $item4->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
-    $this->assertMenuLink($item3->getPluginId(), array(
-      'children' => array(),
-      'parents' => array($item3->getPluginId(), $item2->getPluginId(), $item5->getPluginId(), $item4->getPluginId()),
+    ]);
+    $this->assertMenuLink($item3->getPluginId(), [
+      'children' => [],
+      'parents' => [$item3->getPluginId(), $item2->getPluginId(), $item5->getPluginId(), $item4->getPluginId()],
       // See above.
       'langcode' => 'en',
-    ));
+    ]);
 
     // Add 102 menu links with increasing weights, then make sure the last-added
     // item's weight doesn't get changed because of the old hardcoded delta=50.
-    $items = array();
+    $items = [];
     for ($i = -50; $i <= 51; $i++) {
       $items[$i] = $this->addMenuLink('', '/node/' . $node1->id(), $menu_name, TRUE, strval($i));
     }
-    $this->assertMenuLink($items[51]->getPluginId(), array('weight' => '51'));
+    $this->assertMenuLink($items[51]->getPluginId(), ['weight' => '51']);
 
     // Disable a link and then re-enable the link via the overview form.
     $this->disableMenuLink($item1);
-    $edit = array();
+    $edit = [];
     $edit['links[menu_plugin_id:' . $item1->getPluginId() . '][enabled]'] = TRUE;
     $this->drupalPostForm('admin/structure/menu/manage/' . $item1->getMenuName(), $edit, t('Save'));
 
@@ -446,15 +446,15 @@ function doMenuTests() {
     $item5->save();
 
     // Verify in the database.
-    $this->assertMenuLink($item1->getPluginId(), array('enabled' => 1));
+    $this->assertMenuLink($item1->getPluginId(), ['enabled' => 1]);
 
     // Add an external link.
     $item7 = $this->addMenuLink('', 'https://www.drupal.org', $menu_name);
-    $this->assertMenuLink($item7->getPluginId(), array('url' => 'https://www.drupal.org'));
+    $this->assertMenuLink($item7->getPluginId(), ['url' => 'https://www.drupal.org']);
 
     // Add <front> menu item.
     $item8 = $this->addMenuLink('', '/', $menu_name);
-    $this->assertMenuLink($item8->getPluginId(), array('route_name' => '<front>'));
+    $this->assertMenuLink($item8->getPluginId(), ['route_name' => '<front>']);
     $this->drupalGet('');
     $this->assertResponse(200);
     // Make sure we get routed correctly.
@@ -501,7 +501,7 @@ function testMenuQueryAndFragment() {
 
     // Now change the path to something without query and fragment.
     $path = '/test-page';
-    $this->drupalPostForm('admin/structure/menu/item/' . $item->id() . '/edit', array('link[0][uri]' => $path), t('Save'));
+    $this->drupalPostForm('admin/structure/menu/item/' . $item->id() . '/edit', ['link[0][uri]' => $path], t('Save'));
     $this->drupalGet('admin/structure/menu/item/' . $item->id() . '/edit');
     $this->assertFieldByName('link[0][uri]', $path, 'Path no longer has query or fragment.');
 
@@ -512,7 +512,7 @@ function testMenuQueryAndFragment() {
     $this->drupalGet('admin/structure/menu/item/' . $item->id() . '/edit');
     $this->assertFieldByName('link[0][uri]', $path, 'Path is found with both query and fragment.');
 
-    $this->drupalPostForm('admin/structure/menu/item/' . $item->id() . '/edit', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/menu/item/' . $item->id() . '/edit', [], t('Save'));
 
     $this->drupalGet('admin/structure/menu/item/' . $item->id() . '/edit');
     $this->assertFieldByName('link[0][uri]', $path, 'Path is found with both query and fragment.');
@@ -523,9 +523,9 @@ function testMenuQueryAndFragment() {
    */
   function testSystemMenuRename() {
     $this->drupalLogin($this->adminUser);
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(16),
-    );
+    ];
     $this->drupalPostForm('admin/structure/menu/manage/main', $edit, t('Save'));
 
     // Make sure menu shows up with new name in block addition.
@@ -539,12 +539,12 @@ function testSystemMenuRename() {
    * Tests that menu items pointing to unpublished nodes are editable.
    */
   function testUnpublishedNodeMenuItem() {
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer blocks', 'administer menu', 'create article content', 'bypass node access')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer blocks', 'administer menu', 'create article content', 'bypass node access']));
     // Create an unpublished node.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => 'article',
       'status' => NodeInterface::NOT_PUBLISHED,
-    ));
+    ]);
 
     $item = $this->addMenuLink('', '/node/' . $node->id());
     $this->modifyMenuLink($item);
@@ -564,20 +564,20 @@ function testUnpublishedNodeMenuItem() {
    * Tests the contextual links on a menu block.
    */
   public function testBlockContextualLinks() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer menu', 'access contextual links', 'administer blocks')));
+    $this->drupalLogin($this->drupalCreateUser(['administer menu', 'access contextual links', 'administer blocks']));
     $custom_menu = $this->addCustomMenu();
     $this->addMenuLink('', '/', $custom_menu->id());
-    $block = $this->drupalPlaceBlock('system_menu_block:' . $custom_menu->id(), array('label' => 'Custom menu', 'provider' => 'system'));
+    $block = $this->drupalPlaceBlock('system_menu_block:' . $custom_menu->id(), ['label' => 'Custom menu', 'provider' => 'system']);
     $this->drupalGet('test-page');
 
     $id = 'block:block=' . $block->id() . ':langcode=en|menu:menu=' . $custom_menu->id() . ':langcode=en';
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:assertContextualLinkPlaceHolder()
-    $this->assertRaw('<div data-contextual-id="' . $id . '"></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $id)));
+    $this->assertRaw('<div data-contextual-id="' . $id . '"></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $id]));
 
     // Get server-rendered contextual links.
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:renderContextualLinks()
-    $post = array('ids[0]' => $id);
-    $response = $this->drupalPost('contextual/render', 'application/json', $post, array('query' => array('destination' => 'test-page')));
+    $post = ['ids[0]' => $id];
+    $response = $this->drupalPost('contextual/render', 'application/json', $post, ['query' => ['destination' => 'test-page']]);
     $this->assertResponse(200);
     $json = Json::decode($response);
     $this->assertIdentical($json[$id], '<ul class="contextual-links"><li class="block-configure"><a href="' . base_path() . 'admin/structure/block/manage/' . $block->id() . '">Configure block</a></li><li class="entitymenuedit-form"><a href="' . base_path() . 'admin/structure/menu/manage/' . $custom_menu->id() . '">Edit menu</a></li></ul>');
@@ -608,7 +608,7 @@ function addMenuLink($parent = '', $path = '/', $menu_name = 'tools', $expanded
     $this->assertResponse(200);
 
     $title = '!link_' . $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'link[0][uri]' => $path,
       'title[0][value]' => $title,
       'description[0][value]' => '',
@@ -616,18 +616,18 @@ function addMenuLink($parent = '', $path = '/', $menu_name = 'tools', $expanded
       'expanded[value]' => $expanded,
       'menu_parent' => $menu_name . ':' . $parent,
       'weight[0][value]' => $weight,
-    );
+    ];
 
     // Add menu link.
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertResponse(200);
     $this->assertText('The menu link has been saved.');
 
-    $menu_links = entity_load_multiple_by_properties('menu_link_content', array('title' => $title));
+    $menu_links = entity_load_multiple_by_properties('menu_link_content', ['title' => $title]);
 
     $menu_link = reset($menu_links);
     $this->assertTrue($menu_link, 'Menu link was found in database.');
-    $this->assertMenuLink($menu_link->getPluginId(), array('menu_name' => $menu_name, 'children' => array(), 'parent' => $parent));
+    $this->assertMenuLink($menu_link->getPluginId(), ['menu_name' => $menu_name, 'children' => [], 'parent' => $parent]);
 
     return $menu_link;
   }
@@ -636,13 +636,13 @@ function addMenuLink($parent = '', $path = '/', $menu_name = 'tools', $expanded
    * Attempts to add menu link with invalid path or no access permission.
    */
   function addInvalidMenuLink() {
-    foreach (array('access' => '/admin/people/permissions') as $type => $link_path) {
-      $edit = array(
+    foreach (['access' => '/admin/people/permissions'] as $type => $link_path) {
+      $edit = [
         'link[0][uri]' => $link_path,
         'title[0][value]' => 'title',
-      );
+      ];
       $this->drupalPostForm("admin/structure/menu/manage/{$this->menu->id()}/add", $edit, t('Save'));
-      $this->assertRaw(t("The path '@link_path' is inaccessible.", array('@link_path' => $link_path)), 'Menu link was not created');
+      $this->assertRaw(t("The path '@link_path' is inaccessible.", ['@link_path' => $link_path]), 'Menu link was not created');
     }
   }
 
@@ -651,7 +651,7 @@ function addInvalidMenuLink() {
    */
   function checkInvalidParentMenuLinks() {
     $last_link = NULL;
-    $created_links = array();
+    $created_links = [];
 
     // Get the max depth of the tree.
     $menu_link_tree = \Drupal::service('menu.link_tree');
@@ -661,7 +661,7 @@ function checkInvalidParentMenuLinks() {
     for ($i = 0; $i <= $max_depth - 1; $i++) {
       $parent = $last_link ? 'tools:' . $last_link->getPluginId() : 'tools:';
       $title = 'title' . $i;
-      $edit = array(
+      $edit = [
         'link[0][uri]' => '/',
         'title[0][value]' => $title,
         'menu_parent' => $parent,
@@ -669,9 +669,9 @@ function checkInvalidParentMenuLinks() {
         'enabled[value]' => 1,
         'expanded[value]' => FALSE,
         'weight[0][value]' => '0',
-      );
+      ];
       $this->drupalPostForm("admin/structure/menu/manage/{$this->menu->id()}/add", $edit, t('Save'));
-      $menu_links = entity_load_multiple_by_properties('menu_link_content', array('title' => $title));
+      $menu_links = entity_load_multiple_by_properties('menu_link_content', ['title' => $title]);
       $last_link = reset($menu_links);
       $created_links[]  = 'tools:' . $last_link->getPluginId();
     }
@@ -714,7 +714,7 @@ function verifyMenuLink(MenuLinkContent $item, $item_node, MenuLinkContent $pare
       // Verify menu link link.
       $this->clickLink($title);
       $title = $parent_node->label();
-      $this->assertTitle(t("@title | Drupal", array('@title' => $title)), 'Parent menu link link target was correct');
+      $this->assertTitle(t("@title | Drupal", ['@title' => $title]), 'Parent menu link link target was correct');
     }
 
     // Verify menu link.
@@ -724,7 +724,7 @@ function verifyMenuLink(MenuLinkContent $item, $item_node, MenuLinkContent $pare
     // Verify menu link link.
     $this->clickLink($title);
     $title = $item_node->label();
-    $this->assertTitle(t("@title | Drupal", array('@title' => $title)), 'Menu link link target was correct');
+    $this->assertTitle(t("@title | Drupal", ['@title' => $title]), 'Menu link link target was correct');
   }
 
   /**
@@ -740,9 +740,9 @@ function verifyMenuLink(MenuLinkContent $item, $item_node, MenuLinkContent $pare
   function moveMenuLink(MenuLinkContent $item, $parent, $menu_name) {
     $mlid = $item->id();
 
-    $edit = array(
+    $edit = [
       'menu_parent' => $menu_name . ':' . $parent,
-    );
+    ];
     $this->drupalPostForm("admin/structure/menu/item/$mlid/edit", $edit, t('Save'));
     $this->assertResponse(200);
   }
@@ -760,7 +760,7 @@ function modifyMenuLink(MenuLinkContent $item) {
     $title = $item->getTitle();
 
     // Edit menu link.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $title;
     $this->drupalPostForm("admin/structure/menu/item/$mlid/edit", $edit, t('Save'));
     $this->assertResponse(200);
@@ -780,7 +780,7 @@ function modifyMenuLink(MenuLinkContent $item) {
    */
   function resetMenuLink(MenuLinkInterface $menu_link, $old_weight) {
     // Reset menu link.
-    $this->drupalPostForm("admin/structure/menu/link/{$menu_link->getPluginId()}/reset", array(), t('Reset'));
+    $this->drupalPostForm("admin/structure/menu/link/{$menu_link->getPluginId()}/reset", [], t('Reset'));
     $this->assertResponse(200);
     $this->assertRaw(t('The menu link was reset to its default settings.'), 'Menu link was reset');
 
@@ -800,9 +800,9 @@ function deleteMenuLink(MenuLinkContent $item) {
     $title = $item->getTitle();
 
     // Delete menu link.
-    $this->drupalPostForm("admin/structure/menu/item/$mlid/delete", array(), t('Delete'));
+    $this->drupalPostForm("admin/structure/menu/item/$mlid/delete", [], t('Delete'));
     $this->assertResponse(200);
-    $this->assertRaw(t('The menu link %title has been deleted.', array('%title' => $title)), 'Menu link was deleted');
+    $this->assertRaw(t('The menu link %title has been deleted.', ['%title' => $title]), 'Menu link was deleted');
 
     // Verify deletion.
     $this->drupalGet('');
@@ -841,7 +841,7 @@ function disableMenuLink(MenuLinkContent $item) {
 
     // Unlike most other modules, there is no confirmation message displayed.
     // Verify in the database.
-    $this->assertMenuLink($item->getPluginId(), array('enabled' => 0));
+    $this->assertMenuLink($item->getPluginId(), ['enabled' => 0]);
   }
 
   /**
@@ -856,7 +856,7 @@ function enableMenuLink(MenuLinkContent $item) {
     $this->drupalPostForm("admin/structure/menu/item/$mlid/edit", $edit, t('Save'));
 
     // Verify in the database.
-    $this->assertMenuLink($item->getPluginId(), array('enabled' => 1));
+    $this->assertMenuLink($item->getPluginId(), ['enabled' => 1]);
   }
 
   /**
@@ -864,7 +864,7 @@ function enableMenuLink(MenuLinkContent $item) {
    * AJAX callback.
    */
   public function testMenuParentsJsAccess() {
-    $admin = $this->drupalCreateUser(array('administer menu'));
+    $admin = $this->drupalCreateUser(['administer menu']);
     $this->drupalLogin($admin);
     // Just check access to the callback overall, the POST data is irrelevant.
     $this->drupalGetAjax('admin/structure/menu/parents');
diff --git a/core/modules/menu_ui/src/Tests/MenuWebTestBase.php b/core/modules/menu_ui/src/Tests/MenuWebTestBase.php
index c08fc14..bda38ba 100644
--- a/core/modules/menu_ui/src/Tests/MenuWebTestBase.php
+++ b/core/modules/menu_ui/src/Tests/MenuWebTestBase.php
@@ -14,7 +14,7 @@
    *
    * @var array
    */
-  public static $modules = array('menu_ui', 'menu_link_content');
+  public static $modules = ['menu_ui', 'menu_link_content'];
 
   /**
    * Fetches the menu item from the database and compares it to expected item.
diff --git a/core/modules/menu_ui/tests/src/Functional/MenuCacheTagsTest.php b/core/modules/menu_ui/tests/src/Functional/MenuCacheTagsTest.php
index 03ff031..f7bf7f8 100644
--- a/core/modules/menu_ui/tests/src/Functional/MenuCacheTagsTest.php
+++ b/core/modules/menu_ui/tests/src/Functional/MenuCacheTagsTest.php
@@ -17,7 +17,7 @@ class MenuCacheTagsTest extends PageCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('menu_ui', 'block', 'test_page_test');
+  public static $modules = ['menu_ui', 'block', 'test_page_test'];
 
   /**
    * Tests cache tags presence and invalidation of the Menu entity.
@@ -29,23 +29,23 @@ public function testMenuBlock() {
     $url = Url::fromRoute('test_page_test.test_page');
 
     // Create a Llama menu, add a link to it and place the corresponding block.
-    $menu = Menu::create(array(
+    $menu = Menu::create([
       'id' => 'llama',
       'label' => 'Llama',
       'description' => 'Description text',
-    ));
+    ]);
     $menu->save();
     /** @var \Drupal\Core\Menu\MenuLinkManagerInterface $menu_link_manager */
     $menu_link_manager = \Drupal::service('plugin.manager.menu.link');
     // Move a link into the new menu.
-    $menu_link = $menu_link_manager->updateDefinition('test_page_test.test_page', array('menu_name' => 'llama', 'parent' => ''));
-    $block = $this->drupalPlaceBlock('system_menu_block:llama', array('label' => 'Llama', 'provider' => 'system', 'region' => 'footer'));
+    $menu_link = $menu_link_manager->updateDefinition('test_page_test.test_page', ['menu_name' => 'llama', 'parent' => '']);
+    $block = $this->drupalPlaceBlock('system_menu_block:llama', ['label' => 'Llama', 'provider' => 'system', 'region' => 'footer']);
 
     // Prime the page cache.
     $this->verifyPageCache($url, 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags.
-    $expected_tags = array(
+    $expected_tags = [
       'http_response',
       'rendered',
       'block_view',
@@ -55,7 +55,7 @@ public function testMenuBlock() {
       // The cache contexts associated with the (in)accessible menu links are
       // bubbled.
       'config:user.role.anonymous',
-    );
+    ];
     $this->verifyPageCache($url, 'HIT', $expected_tags);
 
     // Verify that after modifying the menu, there is a cache miss.
@@ -68,7 +68,7 @@ public function testMenuBlock() {
     $this->verifyPageCache($url, 'HIT');
 
     // Verify that after modifying the menu link weight, there is a cache miss.
-    $menu_link_manager->updateDefinition('test_page_test.test_page', array('weight' => -10));
+    $menu_link_manager->updateDefinition('test_page_test.test_page', ['weight' => -10]);
     $this->pass('Test modification of menu link.', 'Debug');
     $this->verifyPageCache($url, 'MISS');
 
@@ -77,7 +77,7 @@ public function testMenuBlock() {
 
     // Verify that after adding a menu link, there is a cache miss.
     $this->pass('Test addition of menu link.', 'Debug');
-    $menu_link_2 = MenuLinkContent::create(array(
+    $menu_link_2 = MenuLinkContent::create([
       'id' => '',
       'parent' => '',
       'title' => 'Alpaca',
@@ -86,7 +86,7 @@ public function testMenuBlock() {
         'uri' => 'internal:/',
       ]],
       'bundle' => 'menu_name',
-    ));
+    ]);
     $menu_link_2->save();
     $this->verifyPageCache($url, 'MISS');
 
diff --git a/core/modules/menu_ui/tests/src/Functional/MenuLinkReorderTest.php b/core/modules/menu_ui/tests/src/Functional/MenuLinkReorderTest.php
index e0f7cc8..163853d 100644
--- a/core/modules/menu_ui/tests/src/Functional/MenuLinkReorderTest.php
+++ b/core/modules/menu_ui/tests/src/Functional/MenuLinkReorderTest.php
@@ -23,7 +23,7 @@ class MenuLinkReorderTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_ui', 'test_page_test', 'node', 'block');
+  public static $modules = ['menu_ui', 'test_page_test', 'node', 'block'];
 
   /**
    * Test creating, editing, deleting menu links via node form widget.
@@ -38,17 +38,17 @@ function testDefaultMenuLinkReorder() {
     $this->assertLink('Home');
 
     // The administrator user that can re-order menu links.
-    $this->administrator = $this->drupalCreateUser(array(
+    $this->administrator = $this->drupalCreateUser([
       'administer site configuration',
       'access administration pages',
       'administer menu',
-    ));
+    ]);
     $this->drupalLogin($this->administrator);
 
     // Change the weight of the link to a non default value.
-    $edit = array(
+    $edit = [
       'links[menu_plugin_id:test_page_test.front_page][weight]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/structure/menu/manage/main', $edit, t('Save'));
 
     // The link is still there.
diff --git a/core/modules/menu_ui/tests/src/Functional/MenuUninstallTest.php b/core/modules/menu_ui/tests/src/Functional/MenuUninstallTest.php
index 269454e..a0320f4 100644
--- a/core/modules/menu_ui/tests/src/Functional/MenuUninstallTest.php
+++ b/core/modules/menu_ui/tests/src/Functional/MenuUninstallTest.php
@@ -17,15 +17,15 @@ class MenuUninstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_ui');
+  public static $modules = ['menu_ui'];
 
   /**
    * Tests Menu uninstall.
    */
   public function testMenuUninstall() {
-    \Drupal::service('module_installer')->uninstall(array('menu_ui'));
+    \Drupal::service('module_installer')->uninstall(['menu_ui']);
 
-    \Drupal::entityManager()->getStorage('menu')->resetCache(array('admin'));
+    \Drupal::entityManager()->getStorage('menu')->resetCache(['admin']);
 
     $this->assertTrue(Menu::load('admin'), 'The \'admin\' menu still exists after uninstalling Menu UI module.');
   }
diff --git a/core/modules/migrate/migrate.api.php b/core/modules/migrate/migrate.api.php
index aea0d77..eefda3c 100644
--- a/core/modules/migrate/migrate.api.php
+++ b/core/modules/migrate/migrate.api.php
@@ -103,7 +103,7 @@
  */
 function hook_migrate_prepare_row(Row $row, MigrateSourceInterface $source, MigrationInterface $migration) {
   if ($migration->id() == 'd6_filter_formats') {
-    $value = $source->getDatabase()->query('SELECT value FROM {variable} WHERE name = :name', array(':name' => 'mymodule_filter_foo_' . $row->getSourceProperty('format')))->fetchField();
+    $value = $source->getDatabase()->query('SELECT value FROM {variable} WHERE name = :name', [':name' => 'mymodule_filter_foo_' . $row->getSourceProperty('format')])->fetchField();
     if ($value) {
       $row->setSourceProperty('settings:mymodule:foo', unserialize($value));
     }
diff --git a/core/modules/migrate/migrate.module b/core/modules/migrate/migrate.module
index 9cec273..3b92463 100644
--- a/core/modules/migrate/migrate.module
+++ b/core/modules/migrate/migrate.module
@@ -15,7 +15,7 @@ function migrate_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.migrate':
       $output = '<h3>' . t('About') . '</h3>';
       $output .= '<p>';
-      $output .= t('The Migrate module provides a framework for migrating data, usually from an external source into your site. It does not provide a user interface. For more information, see the <a href=":migrate">online documentation for the Migrate module</a>.', array(':migrate' => 'https://www.drupal.org/documentation/modules/migrate'));
+      $output .= t('The Migrate module provides a framework for migrating data, usually from an external source into your site. It does not provide a user interface. For more information, see the <a href=":migrate">online documentation for the Migrate module</a>.', [':migrate' => 'https://www.drupal.org/documentation/modules/migrate']);
       $output .= '</p>';
       return $output;
   }
diff --git a/core/modules/migrate/src/Exception/RequirementsException.php b/core/modules/migrate/src/Exception/RequirementsException.php
index 4c17dd6..93da7ee 100644
--- a/core/modules/migrate/src/Exception/RequirementsException.php
+++ b/core/modules/migrate/src/Exception/RequirementsException.php
@@ -56,7 +56,7 @@ public function getRequirementsString() {
     $output = '';
     foreach ($this->requirements as $requirement_type => $requirements) {
       if (!is_array($requirements)) {
-        $requirements = array($requirements);
+        $requirements = [$requirements];
       }
 
       foreach ($requirements as $value) {
diff --git a/core/modules/migrate/src/MigrateExecutable.php b/core/modules/migrate/src/MigrateExecutable.php
index ff05dfe..9d48618 100644
--- a/core/modules/migrate/src/MigrateExecutable.php
+++ b/core/modules/migrate/src/MigrateExecutable.php
@@ -65,7 +65,7 @@ class MigrateExecutable implements MigrateExecutableInterface {
    *
    * @var array
    */
-  protected $counts = array();
+  protected $counts = [];
 
   /**
    * The source.
@@ -151,10 +151,10 @@ public function import() {
     // Only begin the import operation if the migration is currently idle.
     if ($this->migration->getStatus() !== MigrationInterface::STATUS_IDLE) {
       $this->message->display($this->t('Migration @id is busy with another operation: @status',
-        array(
+        [
           '@id' => $this->migration->id(),
           '@status' => $this->t($this->migration->getStatusLabel()),
-        )), 'error');
+        ]), 'error');
       return MigrationInterface::RESULT_FAILED;
     }
     $this->getEventDispatcher()->dispatch(MigrateEvents::PRE_IMPORT, new MigrateImportEvent($this->migration, $this->message));
@@ -167,11 +167,11 @@ public function import() {
       $this->message->display(
         $this->t(
           'Migration @id did not meet the requirements. @message @requirements',
-          array(
+          [
             '@id' => $this->migration->id(),
             '@message' => $e->getMessage(),
             '@requirements' => $e->getRequirementsString(),
-          )
+          ]
         ),
         'error'
       );
@@ -189,7 +189,7 @@ public function import() {
     }
     catch (\Exception $e) {
       $this->message->display(
-        $this->t('Migration failed with source plugin exception: @e', array('@e' => $e->getMessage())), 'error');
+        $this->t('Migration failed with source plugin exception: @e', ['@e' => $e->getMessage()]), 'error');
       $this->migration->setStatus(MigrationInterface::STATUS_IDLE);
       return MigrationInterface::RESULT_FAILED;
     }
@@ -204,7 +204,7 @@ public function import() {
         $save = TRUE;
       }
       catch (MigrateException $e) {
-        $this->migration->getIdMap()->saveIdMapping($row, array(), $e->getStatus());
+        $this->migration->getIdMap()->saveIdMapping($row, [], $e->getStatus());
         $this->saveMessage($e->getMessage(), $e->getLevel());
         $save = FALSE;
       }
@@ -230,7 +230,7 @@ public function import() {
             }
           }
           else {
-            $id_map->saveIdMapping($row, array(), MigrateIdMapInterface::STATUS_FAILED);
+            $id_map->saveIdMapping($row, [], MigrateIdMapInterface::STATUS_FAILED);
             if (!$id_map->messageCount()) {
               $message = $this->t('New object was not saved, no error provided');
               $this->saveMessage($message);
@@ -239,11 +239,11 @@ public function import() {
           }
         }
         catch (MigrateException $e) {
-          $this->migration->getIdMap()->saveIdMapping($row, array(), $e->getStatus());
+          $this->migration->getIdMap()->saveIdMapping($row, [], $e->getStatus());
           $this->saveMessage($e->getMessage(), $e->getLevel());
         }
         catch (\Exception $e) {
-          $this->migration->getIdMap()->saveIdMapping($row, array(), MigrateIdMapInterface::STATUS_FAILED);
+          $this->migration->getIdMap()->saveIdMapping($row, [], MigrateIdMapInterface::STATUS_FAILED);
           $this->handleException($e);
         }
       }
@@ -268,7 +268,7 @@ public function import() {
       catch (\Exception $e) {
         $this->message->display(
           $this->t('Migration failed with source plugin exception: @e',
-            array('@e' => $e->getMessage())), 'error');
+            ['@e' => $e->getMessage()]), 'error');
         $this->migration->setStatus(MigrationInterface::STATUS_IDLE);
         return MigrationInterface::RESULT_FAILED;
       }
@@ -356,7 +356,7 @@ public function processRow(Row $row, array $process = NULL, $value = NULL) {
         // plugin) and in this case the current value needs to be iterated
         // and each scalar separately transformed.
         if ($multiple && !$definition['handle_multiples']) {
-          $new_value = array();
+          $new_value = [];
           if (!is_array($value)) {
             throw new MigrateException(sprintf('Pipeline failed for destination %s: %s got instead of an array,', $destination, $value));
           }
@@ -460,11 +460,11 @@ protected function memoryExceeded() {
       $this->message->display(
         $this->t(
           'Memory usage is @usage (@pct% of limit @limit), reclaiming memory.',
-          array(
+          [
             '@pct' => round($pct_memory * 100),
             '@usage' => $this->formatSize($usage),
             '@limit' => $this->formatSize($this->memoryLimit),
-          )
+          ]
         ),
         'warning'
       );
@@ -476,11 +476,11 @@ protected function memoryExceeded() {
         $this->message->display(
           $this->t(
             'Memory usage is now @usage (@pct% of limit @limit), not enough reclaimed, starting new batch',
-            array(
+            [
               '@pct' => round($pct_memory * 100),
               '@usage' => $this->formatSize($usage),
               '@limit' => $this->formatSize($this->memoryLimit),
-            )
+            ]
           ),
           'warning'
         );
@@ -490,11 +490,11 @@ protected function memoryExceeded() {
         $this->message->display(
           $this->t(
             'Memory usage is now @usage (@pct% of limit @limit), reclaimed enough, continuing',
-            array(
+            [
               '@pct' => round($pct_memory * 100),
               '@usage' => $this->formatSize($usage),
               '@limit' => $this->formatSize($this->memoryLimit),
-            )
+            ]
           ),
           'warning');
         return FALSE;
diff --git a/core/modules/migrate/src/MigrateMessage.php b/core/modules/migrate/src/MigrateMessage.php
index b3c7634..4cc166c 100644
--- a/core/modules/migrate/src/MigrateMessage.php
+++ b/core/modules/migrate/src/MigrateMessage.php
@@ -14,10 +14,10 @@ class MigrateMessage implements MigrateMessageInterface {
    *
    * @var array
    */
-  protected $map = array(
+  protected $map = [
     'status' => RfcLogLevel::INFO,
     'error' => RfcLogLevel::ERROR,
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php b/core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php
index ef7c0b6..0babe2f 100644
--- a/core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php
+++ b/core/modules/migrate/src/Plugin/Derivative/MigrateEntity.php
@@ -12,7 +12,7 @@ class MigrateEntity implements ContainerDeriverInterface {
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * The entity definitions
@@ -59,12 +59,12 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       $class = is_subclass_of($entity_info->getClass(), 'Drupal\Core\Config\Entity\ConfigEntityInterface') ?
         'Drupal\migrate\Plugin\migrate\destination\EntityConfigBase' :
         'Drupal\migrate\Plugin\migrate\destination\EntityContentBase';
-      $this->derivatives[$entity_type] = array(
+      $this->derivatives[$entity_type] = [
         'id' => "entity:$entity_type",
         'class' => $class,
         'requirements_met' => 1,
         'provider' => $entity_info->getProvider(),
-      );
+      ];
     }
     return $this->derivatives;
   }
diff --git a/core/modules/migrate/src/Plugin/Derivative/MigrateEntityRevision.php b/core/modules/migrate/src/Plugin/Derivative/MigrateEntityRevision.php
index 2925bd4..cee3b39 100644
--- a/core/modules/migrate/src/Plugin/Derivative/MigrateEntityRevision.php
+++ b/core/modules/migrate/src/Plugin/Derivative/MigrateEntityRevision.php
@@ -12,7 +12,7 @@ class MigrateEntityRevision implements ContainerDeriverInterface {
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * The entity definitions
@@ -57,12 +57,12 @@ public function getDerivativeDefinition($derivative_id, $base_plugin_definition)
   public function getDerivativeDefinitions($base_plugin_definition) {
     foreach ($this->entityDefinitions as $entity_type => $entity_info) {
       if ($entity_info->getKey('revision')) {
-        $this->derivatives[$entity_type] = array(
+        $this->derivatives[$entity_type] = [
           'id' => "entity_revision:$entity_type",
           'class' => 'Drupal\migrate\Plugin\migrate\destination\EntityRevision',
           'requirements_met' => 1,
           'provider' => $entity_info->getProvider(),
-        );
+        ];
       }
     }
     return $this->derivatives;
diff --git a/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php b/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php
index c102bb8..180be0a 100644
--- a/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php
+++ b/core/modules/migrate/src/Plugin/Discovery/AnnotatedClassDiscoveryAutomatedProviders.php
@@ -73,7 +73,7 @@ protected function prepareAnnotationDefinition(AnnotationInterface $annotation,
    * {@inheritdoc}
    */
   public function getDefinitions() {
-    $definitions = array();
+    $definitions = [];
 
     $reader = $this->getAnnotationReader();
 
diff --git a/core/modules/migrate/src/Plugin/MigrateDestinationInterface.php b/core/modules/migrate/src/Plugin/MigrateDestinationInterface.php
index 9c83baf..866e80c 100644
--- a/core/modules/migrate/src/Plugin/MigrateDestinationInterface.php
+++ b/core/modules/migrate/src/Plugin/MigrateDestinationInterface.php
@@ -106,7 +106,7 @@ public function fields(MigrationInterface $migration = NULL);
    * @return mixed
    *   The entity ID or an indication of success.
    */
-  public function import(Row $row, array $old_destination_id_values = array());
+  public function import(Row $row, array $old_destination_id_values = []);
 
   /**
    * Delete the specified destination object from the target Drupal.
diff --git a/core/modules/migrate/src/Plugin/MigrateDestinationPluginManager.php b/core/modules/migrate/src/Plugin/MigrateDestinationPluginManager.php
index 74100cf..090efd0 100644
--- a/core/modules/migrate/src/Plugin/MigrateDestinationPluginManager.php
+++ b/core/modules/migrate/src/Plugin/MigrateDestinationPluginManager.php
@@ -54,7 +54,7 @@ public function __construct($type, \Traversable $namespaces, CacheBackendInterfa
    *
    * A specific createInstance method is necessary to pass the migration on.
    */
-  public function createInstance($plugin_id, array $configuration = array(), MigrationInterface $migration = NULL) {
+  public function createInstance($plugin_id, array $configuration = [], MigrationInterface $migration = NULL) {
     if (substr($plugin_id, 0, 7) == 'entity:' && !$this->entityManager->getDefinition(substr($plugin_id, 7), FALSE)) {
       $plugin_id = 'null';
     }
diff --git a/core/modules/migrate/src/Plugin/MigratePluginManager.php b/core/modules/migrate/src/Plugin/MigratePluginManager.php
index 94c5985..b3645db 100644
--- a/core/modules/migrate/src/Plugin/MigratePluginManager.php
+++ b/core/modules/migrate/src/Plugin/MigratePluginManager.php
@@ -49,7 +49,7 @@ public function __construct($type, \Traversable $namespaces, CacheBackendInterfa
   /**
    * {@inheritdoc}
    */
-  public function createInstance($plugin_id, array $configuration = array(), MigrationInterface $migration = NULL) {
+  public function createInstance($plugin_id, array $configuration = [], MigrationInterface $migration = NULL) {
     $plugin_definition = $this->getDefinition($plugin_id);
     $plugin_class = DefaultFactory::getPluginClass($plugin_id, $plugin_definition);
     // If the plugin provides a factory method, pass the container to it.
diff --git a/core/modules/migrate/src/Plugin/Migration.php b/core/modules/migrate/src/Plugin/Migration.php
index be79d0d..13092e7 100644
--- a/core/modules/migrate/src/Plugin/Migration.php
+++ b/core/modules/migrate/src/Plugin/Migration.php
@@ -346,9 +346,9 @@ public function getProcessPlugins(array $process = NULL) {
     }
     $index = serialize($process);
     if (!isset($this->processPlugins[$index])) {
-      $this->processPlugins[$index] = array();
+      $this->processPlugins[$index] = [];
       foreach ($this->getProcessNormalized($process) as $property => $configurations) {
-        $this->processPlugins[$index][$property] = array();
+        $this->processPlugins[$index][$property] = [];
         foreach ($configurations as $configuration) {
           if (isset($configuration['source'])) {
             $this->processPlugins[$index][$property][] = $this->processPluginManager->createInstance('get', $configuration, $this);
@@ -376,16 +376,16 @@ public function getProcessPlugins(array $process = NULL) {
    *   The normalized process configuration.
    */
   protected function getProcessNormalized(array $process) {
-    $normalized_configurations = array();
+    $normalized_configurations = [];
     foreach ($process as $destination => $configuration) {
       if (is_string($configuration)) {
-        $configuration = array(
+        $configuration = [
           'plugin' => 'get',
           'source' => $configuration,
-        );
+        ];
       }
       if (isset($configuration['plugin'])) {
-        $configuration = array($configuration);
+        $configuration = [$configuration];
       }
       $normalized_configurations[$destination] = $configuration;
     }
diff --git a/core/modules/migrate/src/Plugin/MigrationPluginManager.php b/core/modules/migrate/src/Plugin/MigrationPluginManager.php
index 3ea5727..f3b75bc 100644
--- a/core/modules/migrate/src/Plugin/MigrationPluginManager.php
+++ b/core/modules/migrate/src/Plugin/MigrationPluginManager.php
@@ -24,9 +24,9 @@ class MigrationPluginManager extends DefaultPluginManager implements MigrationPl
    *
    * @var array
    */
-  protected $defaults = array(
+  protected $defaults = [
     'class' => '\Drupal\migrate\Plugin\Migration',
-  );
+  ];
 
   /**
    * The interface the plugins should implement.
@@ -55,7 +55,7 @@ class MigrationPluginManager extends DefaultPluginManager implements MigrationPl
   public function __construct(ModuleHandlerInterface $module_handler, CacheBackendInterface $cache_backend, LanguageManagerInterface $language_manager) {
     $this->factory = new ContainerFactory($this, $this->pluginInterface);
     $this->alterInfo('migration_plugins');
-    $this->setCacheBackend($cache_backend, 'migration_plugins', array('migration_plugins'));
+    $this->setCacheBackend($cache_backend, 'migration_plugins', ['migration_plugins']);
     $this->moduleHandler = $module_handler;
   }
 
@@ -85,7 +85,7 @@ protected function getDiscovery() {
   /**
    * {@inheritdoc}
    */
-  public function createInstance($plugin_id, array $configuration = array()) {
+  public function createInstance($plugin_id, array $configuration = []) {
     $instances = $this->createInstances([$plugin_id], [$plugin_id => $configuration]);
     return reset($instances);
   }
@@ -93,7 +93,7 @@ public function createInstance($plugin_id, array $configuration = array()) {
   /**
    * {@inheritdoc}
    */
-  public function createInstances($migration_id, array $configuration = array()) {
+  public function createInstances($migration_id, array $configuration = []) {
     if (empty($migration_id)) {
       $migration_id = array_keys($this->getDefinitions());
     }
@@ -222,9 +222,9 @@ public function buildDependencyMigration(array $migrations, array $dynamic_ids)
    *   The dynamic ID mapping.
    */
   protected function addDependency(array &$graph, $id, $dependency, $dynamic_ids) {
-    $dependencies = isset($dynamic_ids[$dependency]) ? $dynamic_ids[$dependency] : array($dependency);
+    $dependencies = isset($dynamic_ids[$dependency]) ? $dynamic_ids[$dependency] : [$dependency];
     if (!isset($graph[$id]['edges'])) {
-      $graph[$id]['edges'] = array();
+      $graph[$id]['edges'] = [];
     }
     $graph[$id]['edges'] += array_combine($dependencies, $dependencies);
   }
diff --git a/core/modules/migrate/src/Plugin/MigrationPluginManagerInterface.php b/core/modules/migrate/src/Plugin/MigrationPluginManagerInterface.php
index 0f97768..a0f6488 100644
--- a/core/modules/migrate/src/Plugin/MigrationPluginManagerInterface.php
+++ b/core/modules/migrate/src/Plugin/MigrationPluginManagerInterface.php
@@ -26,7 +26,7 @@
    * @throws \Drupal\Component\Plugin\Exception\PluginException
    *   If an instance cannot be created, such as if the ID is invalid.
    */
-  public function createInstances($id, array $configuration = array());
+  public function createInstances($id, array $configuration = []);
 
   /**
    * Creates a stub migration plugin from a definition array.
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/ComponentEntityDisplayBase.php b/core/modules/migrate/src/Plugin/migrate/destination/ComponentEntityDisplayBase.php
index a3b174a..6602484 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/ComponentEntityDisplayBase.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/ComponentEntityDisplayBase.php
@@ -15,8 +15,8 @@
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
-    $values = array();
+  public function import(Row $row, array $old_destination_id_values = []) {
+    $values = [];
     // array_intersect_key() won't work because the order is important because
     // this is also the return value.
     foreach (array_keys($this->getIds()) as $id) {
@@ -24,7 +24,7 @@ public function import(Row $row, array $old_destination_id_values = array()) {
     }
     $entity = $this->getEntity($values['entity_type'], $values['bundle'], $values[static::MODE_NAME]);
     if (!$row->getDestinationProperty('hidden')) {
-      $entity->setComponent($values['field_name'], $row->getDestinationProperty('options') ?: array());
+      $entity->setComponent($values['field_name'], $row->getDestinationProperty('options') ?: []);
     }
     else {
       $entity->removeComponent($values['field_name']);
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/Config.php b/core/modules/migrate/src/Plugin/migrate/destination/Config.php
index 422037b..cb1c1c0 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/Config.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/Config.php
@@ -83,7 +83,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     if ($this->isTranslationDestination()) {
       $this->config = $this->language_manager->getLanguageConfigOverride($row->getDestinationProperty('langcode'), $this->config->getName());
     }
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityConfigBase.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityConfigBase.php
index f59b8c7..2829032 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/EntityConfigBase.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityConfigBase.php
@@ -86,7 +86,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     if ($row->isStub()) {
       throw new MigrateException('Config entities can not be stubbed.');
     }
@@ -214,7 +214,7 @@ protected function updateEntityProperty(EntityInterface $entity, array $parents,
    *   The generated entity ID.
    */
   protected function generateId(Row $row, array $ids) {
-    $id_values = array();
+    $id_values = [];
     foreach ($ids as $id) {
       if ($this->isTranslationDestination() && $id == 'langcode') {
         continue;
@@ -230,7 +230,7 @@ protected function generateId(Row $row, array $ids) {
   public function rollback(array $destination_identifier) {
     if ($this->isTranslationDestination()) {
       // The entity id does not include the langcode.
-      $id_values = array();
+      $id_values = [];
       foreach ($destination_identifier as $key => $value) {
         if ($this->isTranslationDestination() && $key == 'langcode') {
           continue;
@@ -247,7 +247,7 @@ public function rollback(array $destination_identifier) {
     }
     else {
       $destination_identifier = implode('.', $destination_identifier);
-      parent::rollback(array($destination_identifier));
+      parent::rollback([$destination_identifier]);
     }
   }
 
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityContentBase.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityContentBase.php
index 9da3de6..d4f9bd7 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/EntityContentBase.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityContentBase.php
@@ -80,7 +80,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $this->rollbackAction = MigrateIdMapInterface::ROLLBACK_DELETE;
     $entity = $this->getEntity($row, $old_destination_id_values);
     if (!$entity) {
@@ -105,9 +105,9 @@ public function import(Row $row, array $old_destination_id_values = array()) {
    * @return array
    *   An array containing the entity ID.
    */
-  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = array()) {
+  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = []) {
     $entity->save();
-    return array($entity->id());
+    return [$entity->id()];
   }
 
   /**
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php
index 7ad0104..9b781a3 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php
@@ -25,7 +25,7 @@ public function getIds() {
    */
   public function rollback(array $destination_identifier) {
     $destination_identifier = implode('.', $destination_identifier);
-    parent::rollback(array($destination_identifier));
+    parent::rollback([$destination_identifier]);
   }
 
 }
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityRevision.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityRevision.php
index 3819742..b0db476 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/EntityRevision.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityRevision.php
@@ -63,9 +63,9 @@ protected function getEntity(Row $row, array $old_destination_id_values) {
   /**
    * {@inheritdoc}
    */
-  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = array()) {
+  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = []) {
     $entity->save();
-    return array($entity->getRevisionId());
+    return [$entity->getRevisionId()];
   }
 
   /**
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/EntityViewMode.php b/core/modules/migrate/src/Plugin/migrate/destination/EntityViewMode.php
index fad171b..d7c2e80 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/EntityViewMode.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/EntityViewMode.php
@@ -25,7 +25,7 @@ public function getIds() {
    */
   public function rollback(array $destination_identifier) {
     $destination_identifier = implode('.', $destination_identifier);
-    parent::rollback(array($destination_identifier));
+    parent::rollback([$destination_identifier]);
   }
 
 }
diff --git a/core/modules/migrate/src/Plugin/migrate/destination/NullDestination.php b/core/modules/migrate/src/Plugin/migrate/destination/NullDestination.php
index 878a183..cfe47ea 100644
--- a/core/modules/migrate/src/Plugin/migrate/destination/NullDestination.php
+++ b/core/modules/migrate/src/Plugin/migrate/destination/NullDestination.php
@@ -19,20 +19,20 @@ class NullDestination extends DestinationBase {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   public function fields(MigrationInterface $migration = NULL) {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
   }
 
 }
diff --git a/core/modules/migrate/src/Plugin/migrate/id_map/Sql.php b/core/modules/migrate/src/Plugin/migrate/id_map/Sql.php
index 1ff5ee4..14a0a7a 100644
--- a/core/modules/migrate/src/Plugin/migrate/id_map/Sql.php
+++ b/core/modules/migrate/src/Plugin/migrate/id_map/Sql.php
@@ -115,14 +115,14 @@ class Sql extends PluginBase implements MigrateIdMapInterface, ContainerFactoryP
    *
    * @var array
    */
-  protected $sourceIds = array();
+  protected $sourceIds = [];
 
   /**
    * The destination identifiers.
    *
    * @var array
    */
-  protected $destinationIds = array();
+  protected $destinationIds = [];
 
   /**
    * The current row.
@@ -136,7 +136,7 @@ class Sql extends PluginBase implements MigrateIdMapInterface, ContainerFactoryP
    *
    * @var array
    */
-  protected $currentKey = array();
+  protected $currentKey = [];
 
   /**
    * Constructs an SQL object.
@@ -208,7 +208,7 @@ public function getSourceIDsHash(array $source_id_values) {
   protected function sourceIdFields() {
     if (!isset($this->sourceIdFields)) {
       // Build the source and destination identifier maps.
-      $this->sourceIdFields = array();
+      $this->sourceIdFields = [];
       $count = 1;
       foreach ($this->migration->getSourcePlugin()->getIds() as $field => $schema) {
         $this->sourceIdFields[$field] = 'sourceid' . $count++;
@@ -225,7 +225,7 @@ protected function sourceIdFields() {
    */
   protected function destinationIdFields() {
     if (!isset($this->destinationIdFields)) {
-      $this->destinationIdFields = array();
+      $this->destinationIdFields = [];
       $count = 1;
       foreach ($this->migration->getDestinationPlugin()->getIds() as $field => $schema) {
         $this->destinationIdFields[$field] = 'destid' . $count++;
@@ -312,7 +312,7 @@ protected function ensureTables() {
       // Generate appropriate schema info for the map and message tables,
       // and map from the source field names to the map/msg field names.
       $count = 1;
-      $source_id_schema = array();
+      $source_id_schema = [];
       $indexes = [];
       foreach ($this->migration->getSourcePlugin()->getIds() as $id_definition) {
         $mapkey = 'sourceid' . $count++;
@@ -321,12 +321,12 @@ protected function ensureTables() {
         $source_id_schema[$mapkey]['not null'] = TRUE;
       }
 
-      $source_ids_hash[static::SOURCE_IDS_HASH] = array(
+      $source_ids_hash[static::SOURCE_IDS_HASH] = [
         'type' => 'varchar',
         'length' => '64',
         'not null' => TRUE,
         'description' => 'Hash of source ids. Used as primary key',
-      );
+      ];
       $fields = $source_ids_hash + $source_id_schema;
 
       // Add destination identifiers to map table.
@@ -338,69 +338,69 @@ protected function ensureTables() {
         $fields[$mapkey] = $this->getFieldSchema($id_definition);
         $fields[$mapkey]['not null'] = FALSE;
       }
-      $fields['source_row_status'] = array(
+      $fields['source_row_status'] = [
         'type' => 'int',
         'size' => 'tiny',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => MigrateIdMapInterface::STATUS_IMPORTED,
         'description' => 'Indicates current status of the source row',
-      );
-      $fields['rollback_action'] = array(
+      ];
+      $fields['rollback_action'] = [
         'type' => 'int',
         'size' => 'tiny',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => MigrateIdMapInterface::ROLLBACK_DELETE,
         'description' => 'Flag indicating what to do for this item on rollback',
-      );
-      $fields['last_imported'] = array(
+      ];
+      $fields['last_imported'] = [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'UNIX timestamp of the last time this row was imported',
-      );
-      $fields['hash'] = array(
+      ];
+      $fields['hash'] = [
         'type' => 'varchar',
         'length' => '64',
         'not null' => FALSE,
         'description' => 'Hash of source row data, for detecting changes',
-      );
-      $schema = array(
+      ];
+      $schema = [
         'description' => 'Mappings from source identifier value(s) to destination identifier value(s).',
         'fields' => $fields,
-        'primary key' => array(static::SOURCE_IDS_HASH),
+        'primary key' => [static::SOURCE_IDS_HASH],
         'indexes' => $indexes,
-      );
+      ];
       $this->getDatabase()->schema()->createTable($this->mapTableName, $schema);
 
       // Now do the message table.
       if (!$this->getDatabase()->schema()->tableExists($this->messageTableName())) {
-        $fields = array();
-        $fields['msgid'] = array(
+        $fields = [];
+        $fields['msgid'] = [
           'type' => 'serial',
           'unsigned' => TRUE,
           'not null' => TRUE,
-        );
+        ];
         $fields += $source_ids_hash;
 
-        $fields['level'] = array(
+        $fields['level'] = [
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 1,
-        );
-        $fields['message'] = array(
+        ];
+        $fields['message'] = [
           'type' => 'text',
           'size' => 'medium',
           'not null' => TRUE,
-        );
-        $schema = array(
+        ];
+        $schema = [
           'description' => 'Messages generated during a migration process',
           'fields' => $fields,
-          'primary key' => array('msgid'),
-        );
+          'primary key' => ['msgid'],
+        ];
         $this->getDatabase()->schema()->createTable($this->messageTableName(), $schema);
       }
     }
@@ -409,33 +409,33 @@ protected function ensureTables() {
       if (!$this->getDatabase()->schema()->fieldExists($this->mapTableName,
                                                     'rollback_action')) {
         $this->getDatabase()->schema()->addField($this->mapTableName, 'rollback_action',
-          array(
+          [
             'type' => 'int',
             'size' => 'tiny',
             'unsigned' => TRUE,
             'not null' => TRUE,
             'default' => 0,
             'description' => 'Flag indicating what to do for this item on rollback',
-          )
+          ]
         );
       }
       if (!$this->getDatabase()->schema()->fieldExists($this->mapTableName, 'hash')) {
         $this->getDatabase()->schema()->addField($this->mapTableName, 'hash',
-          array(
+          [
             'type' => 'varchar',
             'length' => '64',
             'not null' => FALSE,
             'description' => 'Hash of source row data, for detecting changes',
-          )
+          ]
         );
       }
       if (!$this->getDatabase()->schema()->fieldExists($this->mapTableName, static::SOURCE_IDS_HASH)) {
-        $this->getDatabase()->schema()->addField($this->mapTableName, static::SOURCE_IDS_HASH, array(
+        $this->getDatabase()->schema()->addField($this->mapTableName, static::SOURCE_IDS_HASH, [
           'type' => 'varchar',
           'length' => '64',
           'not null' => TRUE,
           'description' => 'Hash of source ids. Used as primary key',
-        ));
+        ]);
       }
     }
   }
@@ -508,7 +508,7 @@ public function getRowByDestination(array $destination_id_values) {
    * {@inheritdoc}
    */
   public function getRowsNeedingUpdate($count) {
-    $rows = array();
+    $rows = [];
     $result = $this->getDatabase()->select($this->mapTableName(), 'map')
       ->fields('map')
       ->condition('source_row_status', MigrateIdMapInterface::STATUS_NEEDS_UPDATE)
@@ -541,7 +541,7 @@ public function lookupSourceID(array $destination_id_values) {
    */
   public function lookupDestinationId(array $source_id_values) {
     $results = $this->lookupDestinationIds($source_id_values);
-    return $results ? reset($results) : array();
+    return $results ? reset($results) : [];
   }
 
   /**
@@ -549,7 +549,7 @@ public function lookupDestinationId(array $source_id_values) {
    */
   public function lookupDestinationIds(array $source_id_values) {
     if (empty($source_id_values)) {
-      return array();
+      return [];
     }
 
     // Canonicalize the keys into a hash of DB-field => value.
@@ -605,7 +605,7 @@ public function saveIdMapping(Row $row, array $destination_id_values, $source_ro
       if (!isset($source_id_values[$field_name])) {
         $this->message->display($this->t(
           'Did not save to map table due to NULL value for key field @field',
-          array('@field' => $field_name)), 'error');
+          ['@field' => $field_name]), 'error');
         return;
       }
       $fields[$key_name] = $source_id_values[$field_name];
@@ -615,11 +615,11 @@ public function saveIdMapping(Row $row, array $destination_id_values, $source_ro
       return;
     }
 
-    $fields += array(
+    $fields += [
       'source_row_status' => (int) $source_row_status,
       'rollback_action' => (int) $rollback_action,
       'hash' => $row->getHash(),
-    );
+    ];
     $count = 0;
     foreach ($destination_id_values as $dest_id) {
       $fields['destid' . ++$count] = $dest_id;
@@ -683,7 +683,7 @@ public function getMessageIterator(array $source_id_values = [], $level = NULL)
    */
   public function prepareUpdate() {
     $this->getDatabase()->update($this->mapTableName())
-      ->fields(array('source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE))
+      ->fields(['source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE])
       ->execute();
   }
 
@@ -702,7 +702,7 @@ public function processedCount() {
    */
   public function importedCount() {
     return $this->getDatabase()->select($this->mapTableName())
-      ->condition('source_row_status', array(MigrateIdMapInterface::STATUS_IMPORTED, MigrateIdMapInterface::STATUS_NEEDS_UPDATE), 'IN')
+      ->condition('source_row_status', [MigrateIdMapInterface::STATUS_IMPORTED, MigrateIdMapInterface::STATUS_NEEDS_UPDATE], 'IN')
       ->countQuery()
       ->execute()
       ->fetchField();
@@ -797,7 +797,7 @@ public function setUpdate(array $source_id_values) {
     }
     $query = $this->getDatabase()
       ->update($this->mapTableName())
-      ->fields(array('source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE));
+      ->fields(['source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE]);
 
     foreach ($this->sourceIdFields() as $field_name => $source_id) {
       $query->condition($source_id, $source_id_values[$field_name]);
@@ -827,7 +827,7 @@ public function destroy() {
    */
   public function rewind() {
     $this->currentRow = NULL;
-    $fields = array();
+    $fields = [];
     foreach ($this->sourceIdFields() as $field) {
       $fields[] = $field;
     }
@@ -866,7 +866,7 @@ public function key() {
    */
   public function currentDestination() {
     if ($this->valid()) {
-      $result = array();
+      $result = [];
       foreach ($this->destinationIdFields() as $destination_field_name => $idmap_field_name) {
         if (!is_null($this->currentRow[$idmap_field_name])) {
           $result[$destination_field_name] = $this->currentRow[$idmap_field_name];
@@ -884,7 +884,7 @@ public function currentDestination() {
    */
   public function currentSource() {
     if ($this->valid()) {
-      $result = array();
+      $result = [];
       foreach ($this->sourceIdFields() as $field_name => $source_id) {
         $result[$field_name] = $this->currentKey[$source_id];
       }
@@ -903,7 +903,7 @@ public function currentSource() {
    */
   public function next() {
     $this->currentRow = $this->result->fetchAssoc();
-    $this->currentKey = array();
+    $this->currentKey = [];
     if ($this->currentRow) {
       foreach ($this->sourceIdFields() as $map_field) {
         $this->currentKey[$map_field] = $this->currentRow[$map_field];
diff --git a/core/modules/migrate/src/Plugin/migrate/process/FileCopy.php b/core/modules/migrate/src/Plugin/migrate/process/FileCopy.php
index 58aa463..f241312 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/FileCopy.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/FileCopy.php
@@ -89,11 +89,11 @@ class FileCopy extends ProcessPluginBase implements ContainerFactoryPluginInterf
    *   An instance of the download plugin for handling remote URIs.
    */
   public function __construct(array $configuration, $plugin_id, array $plugin_definition, StreamWrapperManagerInterface $stream_wrappers, FileSystemInterface $file_system, MigrateProcessInterface $download_plugin) {
-    $configuration += array(
+    $configuration += [
       'move' => FALSE,
       'rename' => FALSE,
       'reuse' => FALSE,
-    );
+    ];
     parent::__construct($configuration, $plugin_id, $plugin_definition);
     $this->streamWrapperManager = $stream_wrappers;
     $this->fileSystem = $file_system;
diff --git a/core/modules/migrate/src/Plugin/migrate/process/Get.php b/core/modules/migrate/src/Plugin/migrate/process/Get.php
index f6b3c34..21f4265 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/Get.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/Get.php
@@ -29,8 +29,8 @@ class Get extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     $source = $this->configuration['source'];
-    $properties = is_string($source) ? array($source) : $source;
-    $return = array();
+    $properties = is_string($source) ? [$source] : $source;
+    $return = [];
     foreach ($properties as $property) {
       if ($property || (string) $property === '0') {
         $is_source = TRUE;
diff --git a/core/modules/migrate/src/Plugin/migrate/process/Iterator.php b/core/modules/migrate/src/Plugin/migrate/process/Iterator.php
index 2a41c4a..d85abfd 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/Iterator.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/Iterator.php
@@ -51,7 +51,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
    *   The transformed key.
    */
   protected function transformKey($key, MigrateExecutableInterface $migrate_executable, Row $row) {
-    $process = array('key' => $this->configuration['key']);
+    $process = ['key' => $this->configuration['key']];
     $migrate_executable->processRow($row, $process, $key);
     return $row->getDestinationProperty('key');
   }
diff --git a/core/modules/migrate/src/Plugin/migrate/process/Migration.php b/core/modules/migrate/src/Plugin/migrate/process/Migration.php
index 8520a5e..e07505f 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/Migration.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/Migration.php
@@ -75,23 +75,23 @@ public static function create(ContainerInterface $container, array $configuratio
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     $migration_ids = $this->configuration['migration'];
     if (!is_array($migration_ids)) {
-      $migration_ids = array($migration_ids);
+      $migration_ids = [$migration_ids];
     }
     if (!is_array($value)) {
-      $value = array($value);
+      $value = [$value];
     }
     $this->skipOnEmpty($value);
     $self = FALSE;
     /** @var \Drupal\migrate\Plugin\MigrationInterface[] $migrations */
     $destination_ids = NULL;
-    $source_id_values = array();
+    $source_id_values = [];
     $migrations = $this->migrationPluginManager->createInstances($migration_ids);
     foreach ($migrations as $migration_id => $migration) {
       if ($migration_id == $this->migration->id()) {
         $self = TRUE;
       }
       if (isset($this->configuration['source_ids'][$migration_id])) {
-        $configuration = array('source' => $this->configuration['source_ids'][$migration_id]);
+        $configuration = ['source' => $this->configuration['source_ids'][$migration_id]];
         $source_id_values[$migration_id] = $this->processPluginManager
           ->createInstance('get', $configuration, $this->migration)
           ->transform(NULL, $migrate_executable, $row, $destination_property);
@@ -128,7 +128,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
       // We already have the source ID values but need to key them for the Row
       // constructor.
       $source_ids = $migration->getSourcePlugin()->getIds();
-      $values = array();
+      $values = [];
       foreach (array_keys($source_ids) as $index => $source_id) {
         $values[$source_id] = $source_id_values[$migration->id()][$index];
       }
@@ -137,7 +137,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
 
       // Do a normal migration with the stub row.
       $migrate_executable->processRow($stub_row, $process);
-      $destination_ids = array();
+      $destination_ids = [];
       try {
         $destination_ids = $destination_plugin->import($stub_row);
       }
diff --git a/core/modules/migrate/src/Plugin/migrate/process/Route.php b/core/modules/migrate/src/Plugin/migrate/process/Route.php
index 7ff4720..515db97 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/Route.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/Route.php
@@ -64,12 +64,12 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
     }
 
     $extracted = $this->pathValidator->getUrlIfValidWithoutAccessCheck($link_path);
-    $route = array();
+    $route = [];
 
     if ($extracted) {
       if ($extracted->isExternal()) {
         $route['route_name'] = NULL;
-        $route['route_parameters'] = array();
+        $route['route_parameters'] = [];
         $route['options'] = $options;
         $route['url'] = $extracted->getUri();
       }
diff --git a/core/modules/migrate/src/Plugin/migrate/process/StaticMap.php b/core/modules/migrate/src/Plugin/migrate/process/StaticMap.php
index 769da3b..d3c93ed 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/StaticMap.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/StaticMap.php
@@ -31,7 +31,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
       }
     }
     else {
-      $new_value = array($value);
+      $new_value = [$value];
     }
     $new_value = NestedArray::getValue($this->configuration['map'], $new_value, $key_exists);
     if (!$key_exists) {
diff --git a/core/modules/migrate/src/Plugin/migrate/process/UrlEncode.php b/core/modules/migrate/src/Plugin/migrate/process/UrlEncode.php
index eab6918..4e38560 100644
--- a/core/modules/migrate/src/Plugin/migrate/process/UrlEncode.php
+++ b/core/modules/migrate/src/Plugin/migrate/process/UrlEncode.php
@@ -44,7 +44,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
         throw new MigrateException("Value '$value' is not a valid URL");
       }
       // Iterate over specific pieces of the URL rawurlencoding each one.
-      $url_parts_to_encode = array('path', 'query', 'fragment');
+      $url_parts_to_encode = ['path', 'query', 'fragment'];
       foreach ($parsed_url as $parsed_url_key => $parsed_url_value) {
         if (in_array($parsed_url_key, $url_parts_to_encode)) {
           // urlencode() would convert spaces to + signs.
diff --git a/core/modules/migrate/src/Plugin/migrate/source/EmptySource.php b/core/modules/migrate/src/Plugin/migrate/source/EmptySource.php
index 64b3201..2391b0a 100644
--- a/core/modules/migrate/src/Plugin/migrate/source/EmptySource.php
+++ b/core/modules/migrate/src/Plugin/migrate/source/EmptySource.php
@@ -17,16 +17,16 @@ class EmptySource extends SourcePluginBase {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'id' => t('ID'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function initializeIterator() {
-    return new \ArrayIterator(array(array('id' => '')));
+    return new \ArrayIterator([['id' => '']]);
   }
 
   /**
diff --git a/core/modules/migrate/src/Plugin/migrate/source/SourcePluginBase.php b/core/modules/migrate/src/Plugin/migrate/source/SourcePluginBase.php
index 23d03cf..e355850 100644
--- a/core/modules/migrate/src/Plugin/migrate/source/SourcePluginBase.php
+++ b/core/modules/migrate/src/Plugin/migrate/source/SourcePluginBase.php
@@ -198,8 +198,8 @@ protected function getModuleHandler() {
   public function prepareRow(Row $row) {
     $result = TRUE;
     try {
-      $result_hook = $this->getModuleHandler()->invokeAll('migrate_prepare_row', array($row, $this, $this->migration));
-      $result_named_hook = $this->getModuleHandler()->invokeAll('migrate_' . $this->migration->id() . '_prepare_row', array($row, $this, $this->migration));
+      $result_hook = $this->getModuleHandler()->invokeAll('migrate_prepare_row', [$row, $this, $this->migration]);
+      $result_named_hook = $this->getModuleHandler()->invokeAll('migrate_' . $this->migration->id() . '_prepare_row', [$row, $this, $this->migration]);
       // We will skip if any hook returned FALSE.
       $skip = ($result_hook && in_array(FALSE, $result_hook)) || ($result_named_hook && in_array(FALSE, $result_named_hook));
       $save_to_map = TRUE;
@@ -217,7 +217,7 @@ public function prepareRow(Row $row) {
       // Make sure we replace any previous messages for this item with any
       // new ones.
       if ($save_to_map) {
-        $this->idMap->saveIdMapping($row, array(), MigrateIdMapInterface::STATUS_IGNORED);
+        $this->idMap->saveIdMapping($row, [], MigrateIdMapInterface::STATUS_IGNORED);
         $this->currentRow = NULL;
         $this->currentSourceIds = NULL;
       }
diff --git a/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php b/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php
index b78df3b..380814c 100644
--- a/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php
+++ b/core/modules/migrate/src/Plugin/migrate/source/SqlBase.php
@@ -180,7 +180,7 @@ public function checkRequirements() {
   /**
    * Wrapper for database select.
    */
-  protected function select($table, $alias = NULL, array $options = array()) {
+  protected function select($table, $alias = NULL, array $options = []) {
     $options['fetch'] = \PDO::FETCH_ASSOC;
     return $this->getDatabase()->select($table, $alias, $options);
   }
@@ -220,7 +220,7 @@ protected function initializeIterator() {
       $this->prepareQuery();
 
       // Get the key values, for potential use in joining to the map table.
-      $keys = array();
+      $keys = [];
 
       // The rules for determining what conditions to add to the query are as
       // follows (applying first applicable rule):
@@ -356,7 +356,7 @@ protected function mapJoinable() {
       return FALSE;
     }
 
-    foreach (array('username', 'password', 'host', 'port', 'namespace', 'driver') as $key) {
+    foreach (['username', 'password', 'host', 'port', 'namespace', 'driver'] as $key) {
       if (isset($source_database_options[$key])) {
         if ($id_map_database_options[$key] != $source_database_options[$key]) {
           return FALSE;
diff --git a/core/modules/migrate/src/Row.php b/core/modules/migrate/src/Row.php
index ea70acd..2824dd9 100644
--- a/core/modules/migrate/src/Row.php
+++ b/core/modules/migrate/src/Row.php
@@ -15,21 +15,21 @@ class Row {
    *
    * @var array
    */
-  protected $source = array();
+  protected $source = [];
 
   /**
    * The source identifiers.
    *
    * @var array
    */
-  protected $sourceIds = array();
+  protected $sourceIds = [];
 
   /**
    * The destination values.
    *
    * @var array
    */
-  protected $destination = array();
+  protected $destination = [];
 
   /**
    * Level separator of destination and source properties.
@@ -41,11 +41,11 @@ class Row {
    *
    * @var array
    */
-  protected $idMap = array(
+  protected $idMap = [
     'original_hash' => '',
     'hash' => '',
     'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-  );
+  ];
 
   /**
    * Whether the source has been frozen already.
diff --git a/core/modules/migrate/tests/modules/migrate_events_test/src/Plugin/migrate/destination/DummyDestination.php b/core/modules/migrate/tests/modules/migrate_events_test/src/Plugin/migrate/destination/DummyDestination.php
index 45420d3..415d000 100644
--- a/core/modules/migrate/tests/modules/migrate_events_test/src/Plugin/migrate/destination/DummyDestination.php
+++ b/core/modules/migrate/tests/modules/migrate_events_test/src/Plugin/migrate/destination/DummyDestination.php
@@ -32,7 +32,7 @@ public function fields(MigrationInterface $migration = NULL) {
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     return ['value' => $row->getDestinationProperty('value')];
   }
 
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateEventsTest.php b/core/modules/migrate/tests/src/Kernel/MigrateEventsTest.php
index b332cbd..4de21fd 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateEventsTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateEventsTest.php
@@ -40,17 +40,17 @@ protected function setUp() {
     parent::setUp();
     $this->state = \Drupal::state();
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::MAP_SAVE,
-      array($this, 'mapSaveEventRecorder'));
+      [$this, 'mapSaveEventRecorder']);
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::MAP_DELETE,
-      array($this, 'mapDeleteEventRecorder'));
+      [$this, 'mapDeleteEventRecorder']);
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::PRE_IMPORT,
-      array($this, 'preImportEventRecorder'));
+      [$this, 'preImportEventRecorder']);
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::POST_IMPORT,
-      array($this, 'postImportEventRecorder'));
+      [$this, 'postImportEventRecorder']);
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::PRE_ROW_SAVE,
-      array($this, 'preRowSaveEventRecorder'));
+      [$this, 'preRowSaveEventRecorder']);
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::POST_ROW_SAVE,
-      array($this, 'postRowSaveEventRecorder'));
+      [$this, 'postRowSaveEventRecorder']);
   }
 
   /**
@@ -129,11 +129,11 @@ public function testMigrateEvents() {
    *   The event name.
    */
   public function mapSaveEventRecorder(MigrateMapSaveEvent $event, $name) {
-    $this->state->set('migrate_events_test.map_save_event', array(
+    $this->state->set('migrate_events_test.map_save_event', [
       'event_name' => $name,
       'map' => $event->getMap(),
       'fields' => $event->getFields(),
-    ));
+    ]);
   }
 
   /**
@@ -145,11 +145,11 @@ public function mapSaveEventRecorder(MigrateMapSaveEvent $event, $name) {
    *   The event name.
    */
   public function mapDeleteEventRecorder(MigrateMapDeleteEvent $event, $name) {
-    $this->state->set('migrate_events_test.map_delete_event', array(
+    $this->state->set('migrate_events_test.map_delete_event', [
       'event_name' => $name,
       'map' => $event->getMap(),
       'source_id' => $event->getSourceId(),
-    ));
+    ]);
   }
 
   /**
@@ -161,10 +161,10 @@ public function mapDeleteEventRecorder(MigrateMapDeleteEvent $event, $name) {
    *   The event name.
    */
   public function preImportEventRecorder(MigrateImportEvent $event, $name) {
-    $this->state->set('migrate_events_test.pre_import_event', array(
+    $this->state->set('migrate_events_test.pre_import_event', [
       'event_name' => $name,
       'migration' => $event->getMigration(),
-    ));
+    ]);
   }
 
   /**
@@ -176,10 +176,10 @@ public function preImportEventRecorder(MigrateImportEvent $event, $name) {
    *   The event name.
    */
   public function postImportEventRecorder(MigrateImportEvent $event, $name) {
-    $this->state->set('migrate_events_test.post_import_event', array(
+    $this->state->set('migrate_events_test.post_import_event', [
       'event_name' => $name,
       'migration' => $event->getMigration(),
-    ));
+    ]);
   }
 
   /**
@@ -191,11 +191,11 @@ public function postImportEventRecorder(MigrateImportEvent $event, $name) {
    *   The event name.
    */
   public function preRowSaveEventRecorder(MigratePreRowSaveEvent $event, $name) {
-    $this->state->set('migrate_events_test.pre_row_save_event', array(
+    $this->state->set('migrate_events_test.pre_row_save_event', [
       'event_name' => $name,
       'migration' => $event->getMigration(),
       'row' => $event->getRow(),
-    ));
+    ]);
   }
 
   /**
@@ -207,12 +207,12 @@ public function preRowSaveEventRecorder(MigratePreRowSaveEvent $event, $name) {
    *   The event name.
    */
   public function postRowSaveEventRecorder(MigratePostRowSaveEvent $event, $name) {
-    $this->state->set('migrate_events_test.post_row_save_event', array(
+    $this->state->set('migrate_events_test.post_row_save_event', [
       'event_name' => $name,
       'migration' => $event->getMigration(),
       'row' => $event->getRow(),
       'destination_id_values' => $event->getDestinationIdValues(),
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateExternalTranslatedTest.php b/core/modules/migrate/tests/src/Kernel/MigrateExternalTranslatedTest.php
index 384b806..d9728f5 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateExternalTranslatedTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateExternalTranslatedTest.php
@@ -27,7 +27,7 @@ class MigrateExternalTranslatedTest extends MigrateTestBase {
   public function setUp() {
     parent::setUp();
     $this->installSchema('system', ['sequences']);
-    $this->installSchema('node', array('node_access'));
+    $this->installSchema('node', ['node_access']);
     $this->installEntitySchema('user');
     $this->installEntitySchema('node');
 
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateInterruptionTest.php b/core/modules/migrate/tests/src/Kernel/MigrateInterruptionTest.php
index 9ff76f6..d99329e 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateInterruptionTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateInterruptionTest.php
@@ -29,7 +29,7 @@ class MigrateInterruptionTest extends KernelTestBase {
   protected function setUp() {
     parent::setUp();
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::POST_ROW_SAVE,
-      array($this, 'postRowSaveEventRecorder'));
+      [$this, 'postRowSaveEventRecorder']);
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateMessageTest.php b/core/modules/migrate/tests/src/Kernel/MigrateMessageTest.php
index 4f4af7d..3301336 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateMessageTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateMessageTest.php
@@ -89,7 +89,7 @@ public function testMessagesNotTeed() {
   public function testMessagesTeed() {
     // Ask to receive any messages sent to the idmap.
     \Drupal::service('event_dispatcher')->addListener(MigrateEvents::IDMAP_MESSAGE,
-      array($this, 'mapMessageRecorder'));
+      [$this, 'mapMessageRecorder']);
     $executable = new MigrateExecutable($this->migration, $this);
     $executable->import();
     $this->assertIdentical(count($this->messages), 1);
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateStatusTest.php b/core/modules/migrate/tests/src/Kernel/MigrateStatusTest.php
index b31a67e..7dc0b5b 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateStatusTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateStatusTest.php
@@ -33,13 +33,13 @@ public function testStatus() {
     $this->assertIdentical($status, MigrationInterface::STATUS_IDLE);
 
     // Test setting and retrieving all known status values.
-    $status_list = array(
+    $status_list = [
       MigrationInterface::STATUS_IDLE,
       MigrationInterface::STATUS_IMPORTING,
       MigrationInterface::STATUS_ROLLING_BACK,
       MigrationInterface::STATUS_STOPPING,
       MigrationInterface::STATUS_DISABLED,
-    );
+    ];
     foreach ($status_list as $status) {
       $migration->setStatus($status);
       $this->assertIdentical($migration->getStatus(), $status);
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateTestBase.php b/core/modules/migrate/tests/src/Kernel/MigrateTestBase.php
index 8494dc6..b0fc0b8 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateTestBase.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateTestBase.php
@@ -47,7 +47,7 @@
    */
   protected $sourceDatabase;
 
-  public static $modules = array('migrate');
+  public static $modules = ['migrate'];
 
   /**
    * {@inheritdoc}
@@ -201,7 +201,7 @@ public function display($message, $type = 'status') {
    */
   public function startCollectingMessages() {
     $this->collectMessages = TRUE;
-    $this->migrateMessages = array();
+    $this->migrateMessages = [];
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php b/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
index a7b0dac..ef15bd5 100644
--- a/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
+++ b/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
@@ -30,7 +30,7 @@ public function testConnectionTypes() {
 
     $target = 'test_db_target';
     $key = 'test_migrate_connection';
-    $config = array('target' => $target, 'key' => $key);
+    $config = ['target' => $target, 'key' => $key];
     $sql_base->setConfiguration($config);
     Database::addConnectionInfo($key, $target, Database::getConnectionInfo('default')['default']);
 
@@ -44,7 +44,7 @@ public function testConnectionTypes() {
     $target = 'test_db_target2';
     $key = 'test_migrate_connection2';
     $database = Database::getConnectionInfo('default')['default'];
-    $config = array('target' => $target, 'key' => $key, 'database' => $database);
+    $config = ['target' => $target, 'key' => $key, 'database' => $database];
     $sql_base->setConfiguration($config);
 
     // Call getDatabase() to get the connection defined.
diff --git a/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php b/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php
index 72d37ed..b3fafc8 100644
--- a/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php
+++ b/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php
@@ -34,18 +34,18 @@ public function testGetExceptionString($expected, $message, $requirements) {
    * Provides a list of requirements to test.
    */
   public function getRequirementsProvider() {
-    return array(
-      array(
+    return [
+      [
         'requirements: random_jackson_pivot.',
         'Single Requirement',
-        array('requirements' => $this->missingRequirements[0]),
-      ),
-      array(
+        ['requirements' => $this->missingRequirements[0]],
+      ],
+      [
         'requirements: random_jackson_pivot. requirements: 51_Eridani_b.',
         'Multiple Requirements',
-        array('requirements' => $this->missingRequirements),
-      ),
-    );
+        ['requirements' => $this->missingRequirements],
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php b/core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
index 42d500d..d14e54a 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
@@ -35,9 +35,9 @@ class MigrateExecutableMemoryExceededTest extends MigrateTestCase {
    *
    * @var array
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-  );
+  ];
 
   /**
    * The php.ini memory_limit value.
diff --git a/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php b/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
index 60809a9..ff320df 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
@@ -40,9 +40,9 @@ class MigrateExecutableTest extends MigrateTestCase {
    *
    * @var array
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -91,12 +91,12 @@ public function testImportWithValidRow() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->will($this->returnValue(array('id' => 'test')));
+      ->will($this->returnValue(['id' => 'test']));
 
     $this->idMap->expects($this->once())
       ->method('lookupDestinationId')
-      ->with(array('id' => 'test'))
-      ->will($this->returnValue(array('test')));
+      ->with(['id' => 'test'])
+      ->will($this->returnValue(['test']));
 
     $source->expects($this->once())
       ->method('current')
@@ -106,13 +106,13 @@ public function testImportWithValidRow() {
 
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $destination = $this->getMock('Drupal\migrate\Plugin\MigrateDestinationInterface');
     $destination->expects($this->once())
       ->method('import')
-      ->with($row, array('test'))
-      ->will($this->returnValue(array('id' => 'test')));
+      ->with($row, ['test'])
+      ->will($this->returnValue(['id' => 'test']));
 
     $this->migration
       ->method('getDestinationPlugin')
@@ -133,12 +133,12 @@ public function testImportWithValidRowWithoutDestinationId() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->will($this->returnValue(array('id' => 'test')));
+      ->will($this->returnValue(['id' => 'test']));
 
     $this->idMap->expects($this->once())
       ->method('lookupDestinationId')
-      ->with(array('id' => 'test'))
-      ->will($this->returnValue(array('test')));
+      ->with(['id' => 'test'])
+      ->will($this->returnValue(['test']));
 
     $source->expects($this->once())
       ->method('current')
@@ -148,12 +148,12 @@ public function testImportWithValidRowWithoutDestinationId() {
 
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $destination = $this->getMock('Drupal\migrate\Plugin\MigrateDestinationInterface');
     $destination->expects($this->once())
       ->method('import')
-      ->with($row, array('test'))
+      ->with($row, ['test'])
       ->will($this->returnValue(TRUE));
 
     $this->migration
@@ -178,7 +178,7 @@ public function testImportWithValidRowNoDestinationValues() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->will($this->returnValue(array('id' => 'test')));
+      ->will($this->returnValue(['id' => 'test']));
 
     $source->expects($this->once())
       ->method('current')
@@ -188,13 +188,13 @@ public function testImportWithValidRowNoDestinationValues() {
 
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $destination = $this->getMock('Drupal\migrate\Plugin\MigrateDestinationInterface');
     $destination->expects($this->once())
       ->method('import')
-      ->with($row, array('test'))
-      ->will($this->returnValue(array()));
+      ->with($row, ['test'])
+      ->will($this->returnValue([]));
 
     $this->migration
       ->method('getDestinationPlugin')
@@ -202,7 +202,7 @@ public function testImportWithValidRowNoDestinationValues() {
 
     $this->idMap->expects($this->once())
       ->method('saveIdMapping')
-      ->with($row, array(), MigrateIdMapInterface::STATUS_FAILED, NULL);
+      ->with($row, [], MigrateIdMapInterface::STATUS_FAILED, NULL);
 
     $this->idMap->expects($this->once())
       ->method('messageCount')
@@ -213,8 +213,8 @@ public function testImportWithValidRowNoDestinationValues() {
 
     $this->idMap->expects($this->once())
       ->method('lookupDestinationId')
-      ->with(array('id' => 'test'))
-      ->will($this->returnValue(array('test')));
+      ->with(['id' => 'test'])
+      ->will($this->returnValue(['test']));
 
     $this->message->expects($this->once())
       ->method('display')
@@ -238,7 +238,7 @@ public function testImportWithValidRowWithDestinationMigrateException() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->will($this->returnValue(array('id' => 'test')));
+      ->will($this->returnValue(['id' => 'test']));
 
     $source->expects($this->once())
       ->method('current')
@@ -248,12 +248,12 @@ public function testImportWithValidRowWithDestinationMigrateException() {
 
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $destination = $this->getMock('Drupal\migrate\Plugin\MigrateDestinationInterface');
     $destination->expects($this->once())
       ->method('import')
-      ->with($row, array('test'))
+      ->with($row, ['test'])
       ->will($this->throwException(new MigrateException($exception_message)));
 
     $this->migration
@@ -262,15 +262,15 @@ public function testImportWithValidRowWithDestinationMigrateException() {
 
     $this->idMap->expects($this->once())
       ->method('saveIdMapping')
-      ->with($row, array(), MigrateIdMapInterface::STATUS_FAILED, NULL);
+      ->with($row, [], MigrateIdMapInterface::STATUS_FAILED, NULL);
 
     $this->idMap->expects($this->once())
       ->method('saveMessage');
 
     $this->idMap->expects($this->once())
       ->method('lookupDestinationId')
-      ->with(array('id' => 'test'))
-      ->will($this->returnValue(array('test')));
+      ->with(['id' => 'test'])
+      ->will($this->returnValue(['test']));
 
     $this->assertSame(MigrationInterface::RESULT_COMPLETED, $this->executable->import());
   }
@@ -290,7 +290,7 @@ public function testImportWithValidRowWithProcesMigrateException() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->willReturn(array('id' => 'test'));
+      ->willReturn(['id' => 'test']);
 
     $source->expects($this->once())
       ->method('current')
@@ -312,7 +312,7 @@ public function testImportWithValidRowWithProcesMigrateException() {
 
     $this->idMap->expects($this->once())
       ->method('saveIdMapping')
-      ->with($row, array(), MigrateIdMapInterface::STATUS_FAILED, NULL);
+      ->with($row, [], MigrateIdMapInterface::STATUS_FAILED, NULL);
 
     $this->idMap->expects($this->once())
       ->method('saveMessage');
@@ -336,7 +336,7 @@ public function testImportWithValidRowWithException() {
 
     $row->expects($this->once())
       ->method('getSourceIdValues')
-      ->will($this->returnValue(array('id' => 'test')));
+      ->will($this->returnValue(['id' => 'test']));
 
     $source->expects($this->once())
       ->method('current')
@@ -346,12 +346,12 @@ public function testImportWithValidRowWithException() {
 
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $destination = $this->getMock('Drupal\migrate\Plugin\MigrateDestinationInterface');
     $destination->expects($this->once())
       ->method('import')
-      ->with($row, array('test'))
+      ->with($row, ['test'])
       ->will($this->throwException(new \Exception($exception_message)));
 
     $this->migration
@@ -360,15 +360,15 @@ public function testImportWithValidRowWithException() {
 
     $this->idMap->expects($this->once())
       ->method('saveIdMapping')
-      ->with($row, array(), MigrateIdMapInterface::STATUS_FAILED, NULL);
+      ->with($row, [], MigrateIdMapInterface::STATUS_FAILED, NULL);
 
     $this->idMap->expects($this->once())
       ->method('saveMessage');
 
     $this->idMap->expects($this->once())
       ->method('lookupDestinationId')
-      ->with(array('id' => 'test'))
-      ->will($this->returnValue(array('test')));
+      ->with(['id' => 'test'])
+      ->will($this->returnValue(['test']));
 
     $this->message->expects($this->once())
       ->method('display')
@@ -381,15 +381,15 @@ public function testImportWithValidRowWithException() {
    * Tests the processRow method.
    */
   public function testProcessRow() {
-    $expected = array(
+    $expected = [
       'test' => 'test destination',
       'test1' => 'test1 destination'
-    );
+    ];
     foreach ($expected as $key => $value) {
       $plugins[$key][0] = $this->getMock('Drupal\migrate\Plugin\MigrateProcessInterface');
       $plugins[$key][0]->expects($this->once())
         ->method('getPluginDefinition')
-        ->will($this->returnValue(array()));
+        ->will($this->returnValue([]));
       $plugins[$key][0]->expects($this->once())
         ->method('transform')
         ->will($this->returnValue($value));
@@ -413,10 +413,10 @@ public function testProcessRowEmptyPipeline() {
     $this->migration->expects($this->once())
       ->method('getProcessPlugins')
       ->with(NULL)
-      ->will($this->returnValue(array('test' => array())));
+      ->will($this->returnValue(['test' => []]));
     $row = new Row();
     $this->executable->processRow($row);
-    $this->assertSame($row->getDestination(), array());
+    $this->assertSame($row->getDestination(), []);
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapEnsureTablesTest.php b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapEnsureTablesTest.php
index 3c9aa42..3c3cba8 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapEnsureTablesTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapEnsureTablesTest.php
@@ -16,70 +16,70 @@ class MigrateSqlIdMapEnsureTablesTest extends MigrateTestCase {
    *
    * @var array
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'sql_idmap_test',
-  );
+  ];
 
   /**
    * Tests the ensureTables method when the tables do not exist.
    */
   public function testEnsureTablesNotExist() {
-    $fields['source_ids_hash'] = Array(
+    $fields['source_ids_hash'] = [
       'type' => 'varchar',
       'length' => 64,
       'not null' => 1,
       'description' => 'Hash of source ids. Used as primary key'
-    );
-    $fields['sourceid1'] = array(
+    ];
+    $fields['sourceid1'] = [
       'type' => 'int',
       'not null' => TRUE,
-    );
-    $fields['sourceid2'] = array(
+    ];
+    $fields['sourceid2'] = [
       'type' => 'int',
       'not null' => TRUE,
-    );
-    $fields['destid1'] = array(
+    ];
+    $fields['destid1'] = [
       'type' => 'varchar',
       'length' => 255,
       'not null' => FALSE,
-    );
-    $fields['source_row_status'] = array(
+    ];
+    $fields['source_row_status'] = [
       'type' => 'int',
       'size' => 'tiny',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => MigrateIdMapInterface::STATUS_IMPORTED,
       'description' => 'Indicates current status of the source row',
-    );
-    $fields['rollback_action'] = array(
+    ];
+    $fields['rollback_action'] = [
       'type' => 'int',
       'size' => 'tiny',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => MigrateIdMapInterface::ROLLBACK_DELETE,
       'description' => 'Flag indicating what to do for this item on rollback',
-    );
-    $fields['last_imported'] = array(
+    ];
+    $fields['last_imported'] = [
       'type' => 'int',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => 0,
       'description' => 'UNIX timestamp of the last time this row was imported',
-    );
-    $fields['hash'] = array(
+    ];
+    $fields['hash'] = [
       'type' => 'varchar',
       'length' => '64',
       'not null' => FALSE,
       'description' => 'Hash of source row data, for detecting changes',
-    );
-    $map_table_schema = array(
+    ];
+    $map_table_schema = [
       'description' => 'Mappings from source identifier value(s) to destination identifier value(s).',
       'fields' => $fields,
-      'primary key' => array('source_ids_hash'),
+      'primary key' => ['source_ids_hash'],
       'indexes' => [
         'source' => ['sourceid1', 'sourceid2'],
       ],
-    );
+    ];
     $schema = $this->getMockBuilder('Drupal\Core\Database\Schema')
       ->disableOriginalConstructor()
       ->getMock();
@@ -91,34 +91,34 @@ public function testEnsureTablesNotExist() {
       ->method('createTable')
       ->with('migrate_map_sql_idmap_test', $map_table_schema);
     // Now do the message table.
-    $fields = array();
-    $fields['msgid'] = array(
+    $fields = [];
+    $fields['msgid'] = [
       'type' => 'serial',
       'unsigned' => TRUE,
       'not null' => TRUE,
-    );
-    $fields['source_ids_hash'] = Array(
+    ];
+    $fields['source_ids_hash'] = [
       'type' => 'varchar',
       'length' => 64,
       'not null' => 1,
       'description' => 'Hash of source ids. Used as primary key'
-    );
-    $fields['level'] = array(
+    ];
+    $fields['level'] = [
       'type' => 'int',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => 1,
-    );
-    $fields['message'] = array(
+    ];
+    $fields['message'] = [
       'type' => 'text',
       'size' => 'medium',
       'not null' => TRUE,
-    );
-    $table_schema = array(
+    ];
+    $table_schema = [
       'description' => 'Messages generated during a migration process',
       'fields' => $fields,
-      'primary key' => array('msgid'),
-    );
+      'primary key' => ['msgid'],
+    ];
 
     $schema->expects($this->at(2))
       ->method('tableExists')
@@ -147,14 +147,14 @@ public function testEnsureTablesExist() {
       ->method('fieldExists')
       ->with('migrate_map_sql_idmap_test', 'rollback_action')
       ->will($this->returnValue(FALSE));
-    $field_schema = array(
+    $field_schema = [
       'type' => 'int',
       'size' => 'tiny',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => 0,
       'description' => 'Flag indicating what to do for this item on rollback',
-    );
+    ];
     $schema->expects($this->at(2))
       ->method('addField')
       ->with('migrate_map_sql_idmap_test', 'rollback_action', $field_schema);
@@ -162,12 +162,12 @@ public function testEnsureTablesExist() {
       ->method('fieldExists')
       ->with('migrate_map_sql_idmap_test', 'hash')
       ->will($this->returnValue(FALSE));
-    $field_schema = array(
+    $field_schema = [
       'type' => 'varchar',
       'length' => '64',
       'not null' => FALSE,
       'description' => 'Hash of source row data, for detecting changes',
-    );
+    ];
     $schema->expects($this->at(4))
       ->method('addField')
       ->with('migrate_map_sql_idmap_test', 'hash', $field_schema);
@@ -175,12 +175,12 @@ public function testEnsureTablesExist() {
       ->method('fieldExists')
       ->with('migrate_map_sql_idmap_test', 'source_ids_hash')
       ->will($this->returnValue(FALSE));
-    $field_schema = array(
+    $field_schema = [
       'type' => 'varchar',
       'length' => '64',
       'not null' => TRUE,
       'description' => 'Hash of source ids. Used as primary key',
-    );
+    ];
     $schema->expects($this->at(6))
       ->method('addField')
       ->with('migrate_map_sql_idmap_test', 'source_ids_hash', $field_schema);
@@ -208,31 +208,31 @@ protected function runEnsureTablesTest($schema) {
     $plugin = $this->getMock('Drupal\migrate\Plugin\MigrateSourceInterface');
     $plugin->expects($this->any())
       ->method('getIds')
-      ->willReturn(array(
-      'source_id_property' => array(
+      ->willReturn([
+      'source_id_property' => [
         'type' => 'integer',
-      ),
-      'source_id_property_2' => array(
+      ],
+      'source_id_property_2' => [
         'type' => 'integer',
-      ),
-    ));
+      ],
+    ]);
     $migration->expects($this->any())
       ->method('getSourcePlugin')
       ->willReturn($plugin);
     $plugin = $this->getMock('Drupal\migrate\Plugin\MigrateSourceInterface');
     $plugin->expects($this->any())
       ->method('getIds')
-      ->willReturn(array(
-      'destination_id_property' => array(
+      ->willReturn([
+      'destination_id_property' => [
         'type' => 'string',
-      ),
-    ));
+      ],
+    ]);
     $migration->expects($this->any())
       ->method('getDestinationPlugin')
       ->willReturn($plugin);
     /** @var \Symfony\Component\EventDispatcher\EventDispatcherInterface $event_dispatcher */
     $event_dispatcher = $this->getMock('Symfony\Component\EventDispatcher\EventDispatcherInterface');
-    $map = new TestSqlIdMap($database, array(), 'sql', array(), $migration, $event_dispatcher);
+    $map = new TestSqlIdMap($database, [], 'sql', [], $migration, $event_dispatcher);
     $map->getDatabase();
   }
 
diff --git a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
index e38e971..2ad2b3d 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
@@ -130,11 +130,11 @@ protected function getIdMap() {
    *   - hash
    */
   protected function idMapDefaults() {
-    $defaults = array(
+    $defaults = [
       'source_row_status' => MigrateIdMapInterface::STATUS_IMPORTED,
       'rollback_action' => MigrateIdMapInterface::ROLLBACK_DELETE,
       'hash' => '',
-    );
+    ];
     // By default, the PDO SQLite driver strongly prefers to return strings
     // from SELECT queries. Even for columns that don't store strings. Even
     // if the connection's STRINGIFY_FETCHES attribute is FALSE. This can cause
@@ -157,9 +157,9 @@ protected function idMapDefaults() {
    * - updating work.
    */
   public function testSaveIdMapping() {
-    $source = array(
+    $source = [
       'source_id_property' => 'source_value',
-    );
+    ];
     $row = new Row($source, ['source_id_property' => []]);
     $id_map = $this->getIdMap();
     $id_map->saveIdMapping($row, ['destination_id_property' => 2]);
diff --git a/core/modules/migrate/tests/src/Unit/MigrateSqlSourceTestCase.php b/core/modules/migrate/tests/src/Unit/MigrateSqlSourceTestCase.php
index 962a75d..be600c8 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateSqlSourceTestCase.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateSqlSourceTestCase.php
@@ -33,7 +33,7 @@
    *
    * @var array
    */
-  protected $databaseContents = array();
+  protected $databaseContents = [];
 
   /**
    * The plugin class under test.
@@ -60,7 +60,7 @@
    *
    * @var array
    */
-  protected $expectedResults = array();
+  protected $expectedResults = [];
 
   /**
    * Expected count of source rows.
@@ -112,7 +112,7 @@ protected function setUp() {
 
     // Setup the plugin.
     $plugin_class = static::PLUGIN_CLASS;
-    $plugin = new $plugin_class($this->migrationConfiguration['source'], $this->migrationConfiguration['source']['plugin'], array(), $migration, $state, $entity_manager);
+    $plugin = new $plugin_class($this->migrationConfiguration['source'], $this->migrationConfiguration['source']['plugin'], [], $migration, $state, $entity_manager);
 
     // Do some reflection to set the database and moduleHandler.
     $plugin_reflection = new \ReflectionClass($plugin);
@@ -122,7 +122,7 @@ protected function setUp() {
     $module_handler_property->setAccessible(TRUE);
 
     // Set the database and the module handler onto our plugin.
-    $database_property->setValue($plugin, $this->getDatabase($this->databaseContents + array('test_map' => array())));
+    $database_property->setValue($plugin, $this->getDatabase($this->databaseContents + ['test_map' => []]));
     $module_handler_property->setValue($plugin, $module_handler);
 
     $plugin->setStringTranslation($this->getStringTranslationStub());
diff --git a/core/modules/migrate/tests/src/Unit/RowTest.php b/core/modules/migrate/tests/src/Unit/RowTest.php
index ec04f82..aa3a7d9 100644
--- a/core/modules/migrate/tests/src/Unit/RowTest.php
+++ b/core/modules/migrate/tests/src/Unit/RowTest.php
@@ -17,19 +17,19 @@ class RowTest extends UnitTestCase {
    *
    * @var array
    */
-  protected $testSourceIds = array(
+  protected $testSourceIds = [
     'nid' => 'Node ID',
-  );
+  ];
 
   /**
    * The test values.
    *
    * @var array
    */
-  protected $testValues = array(
+  protected $testValues = [
     'nid' => 1,
     'title' => 'node 1',
-  );
+  ];
 
   /**
    * The test hash.
@@ -50,7 +50,7 @@ class RowTest extends UnitTestCase {
    */
   public function testRowWithoutData() {
     $row = new Row();
-    $this->assertSame(array(), $row->getSource(), 'Empty row');
+    $this->assertSame([], $row->getSource(), 'Empty row');
   }
 
   /**
@@ -65,8 +65,8 @@ public function testRowWithBasicData() {
    * Tests object creation: multiple source IDs.
    */
   public function testRowWithMultipleSourceIds() {
-    $multi_source_ids = $this->testSourceIds + array('vid' => 'Node revision');
-    $multi_source_ids_values = $this->testValues + array('vid' => 1);
+    $multi_source_ids = $this->testSourceIds + ['vid' => 'Node revision'];
+    $multi_source_ids_values = $this->testValues + ['vid' => 1];
     $row = new Row($multi_source_ids_values, $multi_source_ids);
     $this->assertSame($multi_source_ids_values, $row->getSource(), 'Row with data, multifield id.');
   }
@@ -77,9 +77,9 @@ public function testRowWithMultipleSourceIds() {
    * @expectedException \Exception
    */
   public function testRowWithInvalidData() {
-    $invalid_values = array(
+    $invalid_values = [
       'title' => 'node X',
-    );
+    ];
     $row = new Row($invalid_values, $this->testSourceIds);
   }
 
@@ -123,11 +123,11 @@ public function testHashing() {
     $this->assertSame($this->testHash, $row->getHash(), 'Correct hash even doing it twice.');
 
     // Set the map to needs update.
-    $test_id_map = array(
+    $test_id_map = [
       'original_hash' => '',
       'hash' => '',
       'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-    );
+    ];
     $row->setIdMap($test_id_map);
     $this->assertTrue($row->needsUpdate());
 
@@ -143,30 +143,30 @@ public function testHashing() {
     $this->assertSame(64, strlen($row->getHash()));
 
     // Set the map to successfully imported.
-    $test_id_map = array(
+    $test_id_map = [
       'original_hash' => '',
       'hash' => '',
       'source_row_status' => MigrateIdMapInterface::STATUS_IMPORTED,
-    );
+    ];
     $row->setIdMap($test_id_map);
     $this->assertFalse($row->needsUpdate());
 
     // Set the same hash value and ensure it was not changed.
     $random = $this->randomMachineName();
-    $test_id_map = array(
+    $test_id_map = [
       'original_hash' => $random,
       'hash' => $random,
       'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-    );
+    ];
     $row->setIdMap($test_id_map);
     $this->assertFalse($row->changed());
 
     // Set different has values to ensure it is marked as changed.
-    $test_id_map = array(
+    $test_id_map = [
       'original_hash' => $this->randomMachineName(),
       'hash' => $this->randomMachineName(),
       'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-    );
+    ];
     $row->setIdMap($test_id_map);
     $this->assertTrue($row->changed());
   }
@@ -179,11 +179,11 @@ public function testHashing() {
    */
   public function testGetSetIdMap() {
     $row = new Row($this->testValues, $this->testSourceIds);
-    $test_id_map = array(
+    $test_id_map = [
       'original_hash' => '',
       'hash' => '',
       'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-    );
+    ];
     $row->setIdMap($test_id_map);
     $this->assertEquals($test_id_map, $row->getIdMap());
   }
@@ -193,7 +193,7 @@ public function testGetSetIdMap() {
    */
   public function testSourceIdValues() {
     $row = new Row($this->testValues, $this->testSourceIds);
-    $this->assertSame(array('nid' => $this->testValues['nid']), $row->getSourceIdValues());
+    $this->assertSame(['nid' => $this->testValues['nid']], $row->getSourceIdValues());
   }
 
   /**
@@ -219,7 +219,7 @@ public function testDestination() {
     // Set a destination.
     $row->setDestinationProperty('nid', 2);
     $this->assertTrue($row->hasDestinationProperty('nid'));
-    $this->assertEquals(array('nid' => 2), $row->getDestination());
+    $this->assertEquals(['nid' => 2], $row->getDestination());
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Unit/TestSqlIdMap.php b/core/modules/migrate/tests/src/Unit/TestSqlIdMap.php
index b64ca9b..6d33338 100644
--- a/core/modules/migrate/tests/src/Unit/TestSqlIdMap.php
+++ b/core/modules/migrate/tests/src/Unit/TestSqlIdMap.php
@@ -55,21 +55,21 @@ public function getDatabase() {
    */
   protected function getFieldSchema(array $id_definition) {
     if (!isset($id_definition['type'])) {
-      return array();
+      return [];
     }
     switch ($id_definition['type']) {
       case 'integer':
-        return array(
+        return [
           'type' => 'int',
           'not null' => TRUE,
-        );
+        ];
 
       case 'string':
-        return array(
+        return [
           'type' => 'varchar',
           'length' => 255,
           'not null' => FALSE,
-        );
+        ];
 
       default:
         throw new MigrateException($id_definition['type'] . ' not supported');
diff --git a/core/modules/migrate/tests/src/Unit/destination/ConfigTest.php b/core/modules/migrate/tests/src/Unit/destination/ConfigTest.php
index 25eeebb..b57cffe 100644
--- a/core/modules/migrate/tests/src/Unit/destination/ConfigTest.php
+++ b/core/modules/migrate/tests/src/Unit/destination/ConfigTest.php
@@ -16,9 +16,9 @@ class ConfigTest extends UnitTestCase {
    * Test the import method.
    */
   public function testImport() {
-    $source = array(
+    $source = [
       'test' => 'x',
-    );
+    ];
     $migration = $this->getMockBuilder('Drupal\migrate\Plugin\Migration')
       ->disableOriginalConstructor()
       ->getMock();
@@ -54,7 +54,7 @@ public function testImport() {
       ->method('getLanguageConfigOverride')
       ->with('fr', 'd8_config')
       ->will($this->returnValue($config));
-    $destination = new Config(array('config_name' => 'd8_config'), 'd8_config', array('pluginId' => 'd8_config'), $migration, $config_factory, $language_manager);
+    $destination = new Config(['config_name' => 'd8_config'], 'd8_config', ['pluginId' => 'd8_config'], $migration, $config_factory, $language_manager);
     $destination_id = $destination->import($row);
     $this->assertEquals($destination_id, ['d8_config']);
   }
@@ -63,9 +63,9 @@ public function testImport() {
    * Test the import method.
    */
   public function testLanguageImport() {
-    $source = array(
+    $source = [
       'langcode' => 'mi',
-    );
+    ];
     $migration = $this->getMockBuilder(MigrationInterface::class)
       ->disableOriginalConstructor()
       ->getMock();
@@ -104,7 +104,7 @@ public function testLanguageImport() {
       ->method('getLanguageConfigOverride')
       ->with('mi', 'd8_config')
       ->will($this->returnValue($config));
-    $destination = new Config(array('config_name' => 'd8_config', 'translations' => 'true'), 'd8_config', array('pluginId' => 'd8_config'), $migration, $config_factory, $language_manager);
+    $destination = new Config(['config_name' => 'd8_config', 'translations' => 'true'], 'd8_config', ['pluginId' => 'd8_config'], $migration, $config_factory, $language_manager);
     $destination_id = $destination->import($row);
     $this->assertEquals($destination_id, ['d8_config', 'mi']);
   }
diff --git a/core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php b/core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php
index 1886914..f68c2be 100644
--- a/core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php
+++ b/core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php
@@ -212,7 +212,7 @@ public function getEntity(Row $row, array $old_destination_id_values) {
   /**
    * Allow public access for testing.
    */
-  public function save(ContentEntityInterface $entity, array $old_destination_id_values = array()) {
+  public function save(ContentEntityInterface $entity, array $old_destination_id_values = []) {
     return parent::save($entity, $old_destination_id_values);
   }
 
diff --git a/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityDisplayTest.php b/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityDisplayTest.php
index 4782dc0..6deaec8 100644
--- a/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityDisplayTest.php
+++ b/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityDisplayTest.php
@@ -22,13 +22,13 @@ class PerComponentEntityDisplayTest extends MigrateTestCase {
    * Tests the entity display import method.
    */
   public function testImport() {
-    $values = array(
+    $values = [
       'entity_type' => 'entity_type_test',
       'bundle' => 'bundle_test',
       'view_mode' => 'view_mode_test',
       'field_name' => 'field_name_test',
-      'options' => array('test setting'),
-    );
+      'options' => ['test setting'],
+    ];
     $row = new Row();
     foreach ($values as $key => $value) {
       $row->setDestinationProperty($key, $value);
@@ -38,14 +38,14 @@ public function testImport() {
       ->getMock();
     $entity->expects($this->once())
       ->method('setComponent')
-      ->with('field_name_test', array('test setting'))
+      ->with('field_name_test', ['test setting'])
       ->will($this->returnSelf());
     $entity->expects($this->once())
       ->method('save')
       ->with();
     $plugin = new TestPerComponentEntityDisplay($entity);
-    $this->assertSame($plugin->import($row), array('entity_type_test', 'bundle_test', 'view_mode_test', 'field_name_test'));
-    $this->assertSame($plugin->getTestValues(), array('entity_type_test', 'bundle_test', 'view_mode_test'));
+    $this->assertSame($plugin->import($row), ['entity_type_test', 'bundle_test', 'view_mode_test', 'field_name_test']);
+    $this->assertSame($plugin->getTestValues(), ['entity_type_test', 'bundle_test', 'view_mode_test']);
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php b/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php
index 50cdbf6..0424ceb 100644
--- a/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php
+++ b/core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php
@@ -22,13 +22,13 @@ class PerComponentEntityFormDisplayTest extends MigrateTestCase {
    * Tests the entity display import method.
    */
   public function testImport() {
-    $values = array(
+    $values = [
       'entity_type' => 'entity_type_test',
       'bundle' => 'bundle_test',
       'form_mode' => 'form_mode_test',
       'field_name' => 'field_name_test',
-      'options' => array('test setting'),
-    );
+      'options' => ['test setting'],
+    ];
     $row = new Row();
     foreach ($values as $key => $value) {
       $row->setDestinationProperty($key, $value);
@@ -38,14 +38,14 @@ public function testImport() {
       ->getMock();
     $entity->expects($this->once())
       ->method('setComponent')
-      ->with('field_name_test', array('test setting'))
+      ->with('field_name_test', ['test setting'])
       ->will($this->returnSelf());
     $entity->expects($this->once())
       ->method('save')
       ->with();
     $plugin = new TestPerComponentEntityFormDisplay($entity);
-    $this->assertSame($plugin->import($row), array('entity_type_test', 'bundle_test', 'form_mode_test', 'field_name_test'));
-    $this->assertSame($plugin->getTestValues(), array('entity_type_test', 'bundle_test', 'form_mode_test'));
+    $this->assertSame($plugin->import($row), ['entity_type_test', 'bundle_test', 'form_mode_test', 'field_name_test']);
+    $this->assertSame($plugin->getTestValues(), ['entity_type_test', 'bundle_test', 'form_mode_test']);
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Unit/process/CallbackTest.php b/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
index 92d1f7c..e3b8f27 100644
--- a/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
@@ -37,7 +37,7 @@ public function testCallbackWithFunction() {
    * Test callback with a class method as callable.
    */
   public function testCallbackWithClassMethod() {
-    $this->plugin->setCallable(array('\Drupal\Component\Utility\Unicode', 'strtolower'));
+    $this->plugin->setCallable(['\Drupal\Component\Utility\Unicode', 'strtolower']);
     $value = $this->plugin->transform('FooBar', $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'foobar');
   }
diff --git a/core/modules/migrate/tests/src/Unit/process/ConcatTest.php b/core/modules/migrate/tests/src/Unit/process/ConcatTest.php
index 1d0d4c3..cae7cc0 100644
--- a/core/modules/migrate/tests/src/Unit/process/ConcatTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/ConcatTest.php
@@ -28,7 +28,7 @@ protected function setUp() {
    * Test concat works without a delimiter.
    */
   public function testConcatWithoutDelimiter() {
-    $value = $this->plugin->transform(array('foo', 'bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $value = $this->plugin->transform(['foo', 'bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'foobar');
   }
 
@@ -46,7 +46,7 @@ public function testConcatWithNonArray() {
    */
   public function testConcatWithDelimiter() {
     $this->plugin->setDelimiter('_');
-    $value = $this->plugin->transform(array('foo', 'bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $value = $this->plugin->transform(['foo', 'bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'foo_bar');
   }
 
diff --git a/core/modules/migrate/tests/src/Unit/process/DedupeEntityTest.php b/core/modules/migrate/tests/src/Unit/process/DedupeEntityTest.php
index 2aec300..8f412fd 100644
--- a/core/modules/migrate/tests/src/Unit/process/DedupeEntityTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/DedupeEntityTest.php
@@ -34,9 +34,9 @@ class DedupeEntityTest extends MigrateProcessTestCase {
    *
    * @var array
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -64,16 +64,16 @@ protected function setUp() {
    * @dataProvider providerTestDedupe
    */
   public function testDedupe($count, $postfix = '', $start = NULL, $length = NULL) {
-    $configuration = array(
+    $configuration = [
       'entity_type' => 'test_entity_type',
       'field' => 'test_field',
-    );
+    ];
     if ($postfix) {
       $configuration['postfix'] = $postfix;
     }
     $configuration['start'] = isset($start) ? $start : NULL;
     $configuration['length'] = isset($length) ? $length : NULL;
-    $plugin = new DedupeEntity($configuration, 'dedupe_entity', array(), $this->getMigration(), $this->entityTypeManager);
+    $plugin = new DedupeEntity($configuration, 'dedupe_entity', [], $this->getMigration(), $this->entityTypeManager);
     $this->entityQueryExpects($count);
     $value = $this->randomMachineName(32);
     $actual = $plugin->transform($value, $this->migrateExecutable, $this->row, 'testproperty');
@@ -86,12 +86,12 @@ public function testDedupe($count, $postfix = '', $start = NULL, $length = NULL)
    * Tests that invalid start position throws an exception.
    */
   public function testDedupeEntityInvalidStart() {
-    $configuration = array(
+    $configuration = [
       'entity_type' => 'test_entity_type',
       'field' => 'test_field',
       'start' => 'foobar',
-    );
-    $plugin = new DedupeEntity($configuration, 'dedupe_entity', array(), $this->getMigration(), $this->entityTypeManager);
+    ];
+    $plugin = new DedupeEntity($configuration, 'dedupe_entity', [], $this->getMigration(), $this->entityTypeManager);
     $this->setExpectedException('Drupal\migrate\MigrateException', 'The start position configuration key should be an integer. Omit this key to capture from the beginning of the string.');
     $plugin->transform('test_start', $this->migrateExecutable, $this->row, 'testproperty');
   }
@@ -100,12 +100,12 @@ public function testDedupeEntityInvalidStart() {
    * Tests that invalid length option throws an exception.
    */
   public function testDedupeEntityInvalidLength() {
-    $configuration = array(
+    $configuration = [
       'entity_type' => 'test_entity_type',
       'field' => 'test_field',
       'length' => 'foobar',
-    );
-    $plugin = new DedupeEntity($configuration, 'dedupe_entity', array(), $this->getMigration(), $this->entityTypeManager);
+    ];
+    $plugin = new DedupeEntity($configuration, 'dedupe_entity', [], $this->getMigration(), $this->entityTypeManager);
     $this->setExpectedException('Drupal\migrate\MigrateException', 'The character length configuration key should be an integer. Omit this key to capture the entire string.');
     $plugin->transform('test_length', $this->migrateExecutable, $this->row, 'testproperty');
   }
@@ -114,40 +114,40 @@ public function testDedupeEntityInvalidLength() {
    * Data provider for testDedupe().
    */
   public function providerTestDedupe() {
-    return array(
+    return [
       // Tests no duplication.
-      array(0),
+      [0],
       // Tests no duplication and start position.
-      array(0, NULL, 10),
+      [0, NULL, 10],
       // Tests no duplication, start position, and length.
-      array(0, NULL, 5, 10),
+      [0, NULL, 5, 10],
       // Tests no duplication and length.
-      array(0, NULL, NULL, 10),
+      [0, NULL, NULL, 10],
       // Tests duplication.
-      array(3),
+      [3],
       // Tests duplication and start position.
-      array(3, NULL, 10),
+      [3, NULL, 10],
       // Tests duplication, start position, and length.
-      array(3, NULL, 5, 10),
+      [3, NULL, 5, 10],
       // Tests duplication and length.
-      array(3, NULL, NULL, 10),
+      [3, NULL, NULL, 10],
       // Tests no duplication and postfix.
-      array(0, '_'),
+      [0, '_'],
       // Tests no duplication, postfix, and start position.
-      array(0, '_', 5),
+      [0, '_', 5],
       // Tests no duplication, postfix, start position, and length.
-      array(0, '_', 5, 10),
+      [0, '_', 5, 10],
       // Tests no duplication, postfix, and length.
-      array(0, '_', NULL, 10),
+      [0, '_', NULL, 10],
       // Tests duplication and postfix.
-      array(2, '_'),
+      [2, '_'],
       // Tests duplication, postfix, and start position.
-      array(2, '_', 5),
+      [2, '_', 5],
       // Tests duplication, postfix, start position, and length.
-      array(2, '_', 5, 10),
+      [2, '_', 5, 10],
       // Tests duplication, postfix, and length.
-      array(2, '_', NULL, 10),
-    );
+      [2, '_', NULL, 10],
+    ];
   }
 
   /**
@@ -172,12 +172,12 @@ protected function entityQueryExpects($count) {
    * Test deduplicating only migrated entities.
    */
   public function testDedupeMigrated() {
-    $configuration = array(
+    $configuration = [
       'entity_type' => 'test_entity_type',
       'field' => 'test_field',
       'migrated' => TRUE,
-    );
-    $plugin = new DedupeEntity($configuration, 'dedupe_entity', array(), $this->getMigration(), $this->entityTypeManager);
+    ];
+    $plugin = new DedupeEntity($configuration, 'dedupe_entity', [], $this->getMigration(), $this->entityTypeManager);
 
     // Setup the entityQuery used in DedupeEntity::exists. The map, $map, is
     // an array consisting of the four input parameters to the query condition
diff --git a/core/modules/migrate/tests/src/Unit/process/ExtractTest.php b/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
index 26c2cfe..d030a07 100644
--- a/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
@@ -14,8 +14,8 @@ class ExtractTest extends MigrateProcessTestCase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $configuration['index'] = array('foo');
-    $this->plugin = new Extract($configuration, 'map', array());
+    $configuration['index'] = ['foo'];
+    $this->plugin = new Extract($configuration, 'map', []);
     parent::setUp();
   }
 
@@ -23,7 +23,7 @@ protected function setUp() {
    * Tests successful extraction.
    */
   public function testExtract() {
-    $value = $this->plugin->transform(array('foo' => 'bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $value = $this->plugin->transform(['foo' => 'bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'bar');
   }
 
@@ -44,7 +44,7 @@ public function testExtractFromString() {
    * @expectedExceptionMessage Array index missing, extraction failed.
    */
   public function testExtractFail() {
-    $this->plugin->transform(array('bar' => 'foo'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->plugin->transform(['bar' => 'foo'], $this->migrateExecutable, $this->row, 'destinationproperty');
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Unit/process/FlattenTest.php b/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
index 52c19be..484cfc7 100644
--- a/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
@@ -15,9 +15,9 @@ class FlattenTest extends MigrateProcessTestCase {
    * Test that various array flatten operations work properly.
    */
   public function testFlatten() {
-    $plugin = new Flatten(array(), 'flatten', array());
-    $flattened = $plugin->transform(array(1, 2, array(3, 4, array(5)), array(), array(7, 8)), $this->migrateExecutable, $this->row, 'destinationproperty');
-    $this->assertSame($flattened, array(1, 2, 3, 4, 5, 7, 8));
+    $plugin = new Flatten([], 'flatten', []);
+    $flattened = $plugin->transform([1, 2, [3, 4, [5]], [], [7, 8]], $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->assertSame($flattened, [1, 2, 3, 4, 5, 7, 8]);
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Unit/process/GetTest.php b/core/modules/migrate/tests/src/Unit/process/GetTest.php
index ae24d98..01ab2da 100644
--- a/core/modules/migrate/tests/src/Unit/process/GetTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/GetTest.php
@@ -41,16 +41,16 @@ public function testTransformSourceString() {
    * Tests the Get plugin when source is an array.
    */
   public function testTransformSourceArray() {
-    $map = array(
+    $map = [
       'test1' => 'source_value1',
       'test2' => 'source_value2',
-    );
-    $this->plugin->setSource(array('test1', 'test2'));
+    ];
+    $this->plugin->setSource(['test1', 'test2']);
     $this->row->expects($this->exactly(2))
       ->method('getSourceProperty')
       ->will($this->returnCallback(function ($argument)  use ($map) { return $map[$argument]; } ));
     $value = $this->plugin->transform(NULL, $this->migrateExecutable, $this->row, 'destinationproperty');
-    $this->assertSame($value, array('source_value1', 'source_value2'));
+    $this->assertSame($value, ['source_value1', 'source_value2']);
   }
 
   /**
@@ -70,18 +70,18 @@ public function testTransformSourceStringAt() {
    * Tests the Get plugin when source is an array pointing to destination.
    */
   public function testTransformSourceArrayAt() {
-    $map = array(
+    $map = [
       'test1' => 'source_value1',
       '@test2' => 'source_value2',
       '@test3' => 'source_value3',
       'test4' => 'source_value4',
-    );
-    $this->plugin->setSource(array('test1', '@@test2', '@@test3', 'test4'));
+    ];
+    $this->plugin->setSource(['test1', '@@test2', '@@test3', 'test4']);
     $this->row->expects($this->exactly(4))
       ->method('getSourceProperty')
       ->will($this->returnCallback(function ($argument)  use ($map) { return $map[$argument]; } ));
     $value = $this->plugin->transform(NULL, $this->migrateExecutable, $this->row, 'destinationproperty');
-    $this->assertSame($value, array('source_value1', 'source_value2', 'source_value3', 'source_value4'));
+    $this->assertSame($value, ['source_value1', 'source_value2', 'source_value3', 'source_value4']);
   }
 
   /**
diff --git a/core/modules/migrate/tests/src/Unit/process/IteratorTest.php b/core/modules/migrate/tests/src/Unit/process/IteratorTest.php
index cdffac0..993fb92 100644
--- a/core/modules/migrate/tests/src/Unit/process/IteratorTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/IteratorTest.php
@@ -25,9 +25,9 @@ class IteratorTest extends MigrateTestCase {
   /**
    * @var array
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-  );
+  ];
 
   /**
    * Tests the iterator process plugin.
@@ -35,24 +35,24 @@ class IteratorTest extends MigrateTestCase {
   public function testIterator() {
     $migration = $this->getMigration();
     // Set up the properties for the iterator.
-    $configuration = array(
-      'process' => array(
+    $configuration = [
+      'process' => [
         'foo' => 'source_foo',
         'id' => 'source_id',
-      ),
+      ],
       'key' => '@id',
-    );
-    $plugin = new Iterator($configuration, 'iterator', array());
+    ];
+    $plugin = new Iterator($configuration, 'iterator', []);
     // Manually create the plugins. Migration::getProcessPlugins does this
     // normally but the plugin system is not available.
     foreach ($configuration['process'] as $destination => $source) {
-      $iterator_plugins[$destination][] = new Get(array('source' => $source), 'get', array());
+      $iterator_plugins[$destination][] = new Get(['source' => $source], 'get', []);
     }
     $migration->expects($this->at(1))
       ->method('getProcessPlugins')
       ->will($this->returnValue($iterator_plugins));
     // Set up the key plugins.
-    $key_plugin['key'][] = new Get(array('source' => '@id'), 'get', array());
+    $key_plugin['key'][] = new Get(['source' => '@id'], 'get', []);
     $migration->expects($this->at(2))
       ->method('getProcessPlugins')
       ->will($this->returnValue($key_plugin));
@@ -60,12 +60,12 @@ public function testIterator() {
     $migrate_executable = new MigrateExecutable($migration, $this->getMock('Drupal\migrate\MigrateMessageInterface'), $event_dispatcher);
 
     // The current value of the pipeline.
-    $current_value = array(
-      array(
+    $current_value = [
+      [
         'source_foo' => 'test',
         'source_id' => 42,
-      ),
-    );
+      ],
+    ];
     // This is not used but the interface requires it, so create an empty row.
     $row = new Row();
 
diff --git a/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php b/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
index 7f44157..5bc9158 100644
--- a/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
@@ -53,7 +53,7 @@ public function testMachineNames() {
       ->with($human_name)
       ->will($this->returnValue($human_name_ascii . 'aeo'));
 
-    $plugin = new MachineName(array(), 'machine_name', array(), $this->transliteration);
+    $plugin = new MachineName([], 'machine_name', [], $this->transliteration);
     $value = $plugin->transform($human_name, $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertEquals($expected_result, $value);
   }
diff --git a/core/modules/migrate/tests/src/Unit/process/StaticMapTest.php b/core/modules/migrate/tests/src/Unit/process/StaticMapTest.php
index 59db2e5..5a8de13 100644
--- a/core/modules/migrate/tests/src/Unit/process/StaticMapTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/StaticMapTest.php
@@ -16,7 +16,7 @@ class StaticMapTest extends MigrateProcessTestCase {
    */
   protected function setUp() {
     $configuration['map']['foo']['bar'] = 'baz';
-    $this->plugin = new StaticMap($configuration, 'map', array());
+    $this->plugin = new StaticMap($configuration, 'map', []);
     parent::setUp();
   }
 
@@ -25,14 +25,14 @@ protected function setUp() {
    */
   public function testMapWithSourceString() {
     $value = $this->plugin->transform('foo', $this->migrateExecutable, $this->row, 'destinationproperty');
-    $this->assertSame($value, array('bar' => 'baz'));
+    $this->assertSame($value, ['bar' => 'baz']);
   }
 
   /**
    * Tests map when the source is a list.
    */
   public function testMapWithSourceList() {
-    $value = $this->plugin->transform(array('foo', 'bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $value = $this->plugin->transform(['foo', 'bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'baz');
   }
 
@@ -42,7 +42,7 @@ public function testMapWithSourceList() {
    * @expectedException \Drupal\migrate\MigrateException
    */
   public function testMapwithEmptySource() {
-    $this->plugin->transform(array(), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->plugin->transform([], $this->migrateExecutable, $this->row, 'destinationproperty');
   }
 
   /**
@@ -51,7 +51,7 @@ public function testMapwithEmptySource() {
    * @expectedException \Drupal\migrate\MigrateSkipRowException
    */
   public function testMapwithInvalidSource() {
-    $this->plugin->transform(array('bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->plugin->transform(['bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
   }
 
   /**
@@ -60,8 +60,8 @@ public function testMapwithInvalidSource() {
   public function testMapWithInvalidSourceWithADefaultValue() {
     $configuration['map']['foo']['bar'] = 'baz';
     $configuration['default_value'] = 'test';
-    $this->plugin = new StaticMap($configuration, 'map', array());
-    $value = $this->plugin->transform(array('bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->plugin = new StaticMap($configuration, 'map', []);
+    $value = $this->plugin->transform(['bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertSame($value, 'test');
   }
 
@@ -72,7 +72,7 @@ public function testMapWithInvalidSourceWithANullDefaultValue() {
     $configuration['map']['foo']['bar'] = 'baz';
     $configuration['default_value'] = NULL;
     $this->plugin = new StaticMap($configuration, 'map', []);
-    $value = $this->plugin->transform(array('bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $value = $this->plugin->transform(['bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
     $this->assertNull($value);
   }
 
@@ -86,8 +86,8 @@ public function testMapWithInvalidSourceAndBypass() {
     $configuration['map']['foo']['bar'] = 'baz';
     $configuration['default_value'] = 'test';
     $configuration['bypass'] = TRUE;
-    $this->plugin = new StaticMap($configuration, 'map', array());
-    $this->plugin->transform(array('bar'), $this->migrateExecutable, $this->row, 'destinationproperty');
+    $this->plugin = new StaticMap($configuration, 'map', []);
+    $this->plugin->transform(['bar'], $this->migrateExecutable, $this->row, 'destinationproperty');
   }
 
 }
diff --git a/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php b/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
index 78d89a1..1f7d94a 100644
--- a/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
@@ -28,14 +28,14 @@ class UrlEncodeTest extends MigrateTestCase {
    *   An array of URLs to test.
    */
   public function urlDataProvider() {
-    return array(
-      'A URL with no characters requiring encoding' => array('http://example.com/normal_url.html', 'http://example.com/normal_url.html'),
-      'The definitive use case - encoding spaces in URLs' => array('http://example.com/url with spaces.html', 'http://example.com/url%20with%20spaces.html'),
-      'Definitive use case 2 - spaces in directories' => array('http://example.com/dir with spaces/foo.html', 'http://example.com/dir%20with%20spaces/foo.html'),
-      'Local filespecs without spaces should not be transformed' => array('/tmp/normal.txt', '/tmp/normal.txt'),
-      'Local filespecs with spaces should not be transformed' => array('/tmp/with spaces.txt', '/tmp/with spaces.txt'),
-      'Make sure URL characters (:, ?, &) are not encoded but others are.' => array('https://example.com/?a=b@c&d=e+f%', 'https://example.com/?a%3Db%40c&d%3De%2Bf%25'),
-    );
+    return [
+      'A URL with no characters requiring encoding' => ['http://example.com/normal_url.html', 'http://example.com/normal_url.html'],
+      'The definitive use case - encoding spaces in URLs' => ['http://example.com/url with spaces.html', 'http://example.com/url%20with%20spaces.html'],
+      'Definitive use case 2 - spaces in directories' => ['http://example.com/dir with spaces/foo.html', 'http://example.com/dir%20with%20spaces/foo.html'],
+      'Local filespecs without spaces should not be transformed' => ['/tmp/normal.txt', '/tmp/normal.txt'],
+      'Local filespecs with spaces should not be transformed' => ['/tmp/with spaces.txt', '/tmp/with spaces.txt'],
+      'Make sure URL characters (:, ?, &) are not encoded but others are.' => ['https://example.com/?a=b@c&d=e+f%', 'https://example.com/?a%3Db%40c&d%3De%2Bf%25'],
+    ];
   }
 
   /**
diff --git a/core/modules/migrate_drupal/migrate_drupal.module b/core/modules/migrate_drupal/migrate_drupal.module
index dc3ab4e..9b00e07 100644
--- a/core/modules/migrate_drupal/migrate_drupal.module
+++ b/core/modules/migrate_drupal/migrate_drupal.module
@@ -20,7 +20,7 @@ function migrate_drupal_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.migrate_drupal':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Migrate Drupal module provides a framework based on the <a href=":migrate">Migrate module</a> to facilitate migration from a Drupal (6, 7, or 8) site to your website. It does not provide a user interface. For more information, see the <a href=":migrate_drupal">online documentation for the Migrate Drupal module</a>.', array(':migrate' => \Drupal::url('help.page', array('name' => 'migrate')), ':migrate_drupal' => 'https://www.drupal.org/documentation/modules/migrate_drupal')) . '</p>';
+      $output .= '<p>' . t('The Migrate Drupal module provides a framework based on the <a href=":migrate">Migrate module</a> to facilitate migration from a Drupal (6, 7, or 8) site to your website. It does not provide a user interface. For more information, see the <a href=":migrate_drupal">online documentation for the Migrate Drupal module</a>.', [':migrate' => \Drupal::url('help.page', ['name' => 'migrate']), ':migrate_drupal' => 'https://www.drupal.org/documentation/modules/migrate_drupal']) . '</p>';
       return $output;
   }
 }
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php
index 3c3624d..ffff626 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php
@@ -59,7 +59,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    */
   public function getSystemData() {
     if (!isset($this->systemData)) {
-      $this->systemData = array();
+      $this->systemData = [];
       try {
         $results = $this->select('system', 's')
           ->fields('s')
@@ -149,7 +149,7 @@ protected function moduleExists($module) {
   protected function variableGet($name, $default) {
     try {
       $result = $this->select('variable', 'v')
-        ->fields('v', array('value'))
+        ->fields('v', ['value'])
         ->condition('name', $name)
         ->execute()
         ->fetchField();
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/Variable.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/Variable.php
index 2d8c3cc..410acec 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/Variable.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/Variable.php
@@ -37,7 +37,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    * {@inheritdoc}
    */
   protected function initializeIterator() {
-    return new \ArrayIterator(array($this->values()));
+    return new \ArrayIterator([$this->values()]);
   }
 
   /**
@@ -75,7 +75,7 @@ public function fields() {
   public function query() {
     return $this->getDatabase()
       ->select('variable', 'v')
-      ->fields('v', array('name', 'value'))
+      ->fields('v', ['name', 'value'])
       ->condition('name', $this->variables, 'IN');
   }
 
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/VariableMultiRow.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/VariableMultiRow.php
index 2ecea8d..61da5eb 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/VariableMultiRow.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/VariableMultiRow.php
@@ -21,7 +21,7 @@ class VariableMultiRow extends DrupalSqlBase {
    */
   public function query() {
     return $this->select('variable', 'v')
-      ->fields('v', array('name', 'value'))
+      ->fields('v', ['name', 'value'])
       // Cast scalars to array so we can consistently use an IN condition.
       ->condition('name', (array) $this->configuration['variables'], 'IN');
   }
@@ -30,10 +30,10 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'name' => $this->t('Name'),
       'value' => $this->t('Value'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/d8/Config.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/d8/Config.php
index df3311f..8d83387 100644
--- a/core/modules/migrate_drupal/src/Plugin/migrate/source/d8/Config.php
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/d8/Config.php
@@ -19,7 +19,7 @@ class Config extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('config', 'c')
-      ->fields('c', array('collection', 'name', 'data'));
+      ->fields('c', ['collection', 'name', 'data']);
     if (!empty($this->configuration['collections'])) {
       $query->condition('collection', (array) $this->configuration['collections'], 'IN');
     }
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/MigrateCckFieldPluginManagerTest.php b/core/modules/migrate_drupal/tests/src/Kernel/MigrateCckFieldPluginManagerTest.php
index 1754cfe..9e30795 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/MigrateCckFieldPluginManagerTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/MigrateCckFieldPluginManagerTest.php
@@ -14,7 +14,7 @@ class MigrateCckFieldPluginManagerTest extends MigrateDrupalTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('system', 'user', 'field', 'migrate_drupal', 'options', 'file', 'text', 'migrate_cckfield_plugin_manager_test');
+  public static $modules = ['system', 'user', 'field', 'migrate_drupal', 'options', 'file', 'text', 'migrate_cckfield_plugin_manager_test'];
 
   /**
    * Tests that the correct MigrateCckField plugins are used.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/MigrateDrupalTestBase.php b/core/modules/migrate_drupal/tests/src/Kernel/MigrateDrupalTestBase.php
index 2cf4eb1..063c99c 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/MigrateDrupalTestBase.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/MigrateDrupalTestBase.php
@@ -15,7 +15,7 @@
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field', 'migrate_drupal', 'options', 'file');
+  public static $modules = ['system', 'user', 'field', 'migrate_drupal', 'options', 'file'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/d6/EntityContentBaseTest.php b/core/modules/migrate_drupal/tests/src/Kernel/d6/EntityContentBaseTest.php
index 5074473..9c5ee58 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/d6/EntityContentBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/d6/EntityContentBaseTest.php
@@ -44,12 +44,12 @@ protected function setUp() {
       'uid' => 2,
       'name' => 'Ford Prefect',
       'mail' => 'ford.prefect@localhost',
-      'signature' => array(
-        array(
+      'signature' => [
+        [
           'value' => 'Bring a towel.',
           'format' => 'filtered_html',
-        ),
-      ),
+        ],
+      ],
       'init' => 'proto@zo.an',
     ])->save();
 
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/dependencies/MigrateDependenciesTest.php b/core/modules/migrate_drupal/tests/src/Kernel/dependencies/MigrateDependenciesTest.php
index 1b5736d..ba0dc5a 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/dependencies/MigrateDependenciesTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/dependencies/MigrateDependenciesTest.php
@@ -22,11 +22,11 @@ class MigrateDependenciesTest extends MigrateDrupal6TestBase {
    * Tests that the order is correct when loading several migrations.
    */
   public function testMigrateDependenciesOrder() {
-    $migration_items = array('d6_comment', 'd6_filter_format', 'd6_node:page');
+    $migration_items = ['d6_comment', 'd6_filter_format', 'd6_node:page'];
     $migrations = $this->container->get('plugin.manager.migration')->createInstances($migration_items);
-    $expected_order = array('d6_filter_format', 'd6_node:page', 'd6_comment');
+    $expected_order = ['d6_filter_format', 'd6_node:page', 'd6_comment'];
     $this->assertIdentical(array_keys($migrations), $expected_order);
-    $expected_requirements = array(
+    $expected_requirements = [
       // d6_comment depends on d6_node:*, which the deriver expands into every
       // variant of d6_node.
       'd6_node:article',
@@ -47,7 +47,7 @@ public function testMigrateDependenciesOrder() {
       'd6_comment_type',
       'd6_comment_entity_display',
       'd6_comment_entity_form_display',
-    );
+    ];
     // Migration dependencies for comment include dependencies for node
     // migration as well.
     $actual_requirements = $migrations['d6_comment']->get('requirements');
@@ -66,7 +66,7 @@ public function testAggregatorMigrateDependencies() {
     $executable = new MigrateExecutable($migration, $this);
     $this->startCollectingMessages();
     $executable->import();
-    $this->assertEqual($this->migrateMessages['error'], array(SafeMarkup::format('Migration @id did not meet the requirements. Missing migrations d6_aggregator_feed. requirements: d6_aggregator_feed.', array('@id' => $migration->id()))));
+    $this->assertEqual($this->migrateMessages['error'], [SafeMarkup::format('Migration @id did not meet the requirements. Missing migrations d6_aggregator_feed. requirements: d6_aggregator_feed.', ['@id' => $migration->id()])]);
     $this->collectMessages = FALSE;
   }
 
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 f2254dc..6dd5925 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
@@ -14,9 +14,9 @@ class DrupalSqlBaseTest extends MigrateTestCase {
   /**
    * Define bare minimum migration configuration.
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'DrupalSqlBase',
-  );
+  ];
 
   /**
    * @var \Drupal\migrate_drupal\Plugin\migrate\source\DrupalSqlBase
@@ -26,17 +26,17 @@ class DrupalSqlBaseTest extends MigrateTestCase {
   /**
    * Minimum database contents needed to test DrupalSqlBase.
    */
-  protected $databaseContents = array(
-    'system' => array(
-      array(
+  protected $databaseContents = [
+    'system' => [
+      [
         'filename' => 'sites/all/modules/module1',
         'name' => 'module1',
         'type' => 'module',
         'status' => 0,
         'schema_version' => -1,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   /**
    * @covers ::checkRequirements
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowTestBase.php b/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowTestBase.php
index c9af613..5710436 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowTestBase.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/VariableMultiRowTestBase.php
@@ -14,27 +14,27 @@
   const PLUGIN_CLASS = 'Drupal\migrate_drupal\Plugin\migrate\source\VariableMultiRow';
 
   // The fake Migration configuration entity.
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'source' => array(
+    'source' => [
       'plugin' => 'd6_variable_multirow',
-      'variables' => array(
+      'variables' => [
         'foo',
         'bar',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
-  protected $expectedResults = array(
-    array('name' => 'foo', 'value' => 1),
-    array('name' => 'bar', 'value' => FALSE),
-  );
+  protected $expectedResults = [
+    ['name' => 'foo', 'value' => 1],
+    ['name' => 'bar', 'value' => FALSE],
+  ];
 
-  protected $databaseContents = array(
-    'variable' => array(
-      array('name' => 'foo', 'value' => 'i:1;'),
-      array('name' => 'bar', 'value' => 'b:0;'),
-    ),
-  );
+  protected $databaseContents = [
+    'variable' => [
+      ['name' => 'foo', 'value' => 'i:1;'],
+      ['name' => 'bar', 'value' => 'b:0;'],
+    ],
+  ];
 
 }
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/VariableTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/VariableTest.php
index 18a3033..1b5abc3 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/VariableTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/VariableTest.php
@@ -13,31 +13,31 @@ class VariableTest extends MigrateSqlSourceTestCase {
 
   const PLUGIN_CLASS = 'Drupal\migrate_drupal\Plugin\migrate\source\Variable';
 
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'test',
-    'highWaterProperty' => array('field' => 'test'),
-    'source' => array(
+    'highWaterProperty' => ['field' => 'test'],
+    'source' => [
       'plugin' => 'd6_variable',
-      'variables' => array(
+      'variables' => [
         'foo',
         'bar',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
-  protected $expectedResults = array(
-    array(
+  protected $expectedResults = [
+    [
       'id' => 'foo',
       'foo' => 1,
       'bar' => FALSE,
-    ),
-  );
+    ],
+  ];
 
-  protected $databaseContents = array(
-    'variable' => array(
-      array('name' => 'foo', 'value' => 'i:1;'),
-      array('name' => 'bar', 'value' => 'b:0;'),
-    ),
-  );
+  protected $databaseContents = [
+    'variable' => [
+      ['name' => 'foo', 'value' => 'i:1;'],
+      ['name' => 'bar', 'value' => 'b:0;'],
+    ],
+  ];
 
 }
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 845ce78..55d1282 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
@@ -19,9 +19,9 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
   /**
    * Define bare minimum migration configuration.
    */
-  protected $migrationConfiguration = array(
+  protected $migrationConfiguration = [
     'id' => 'Drupal6SqlBase',
-  );
+  ];
 
   /**
    * @var \Drupal\migrate_drupal\Plugin\migrate\source\DrupalSqlBase
@@ -31,37 +31,37 @@ class Drupal6SqlBaseTest extends MigrateTestCase {
   /**
    * Minimum database contents needed to test Drupal6SqlBase.
    */
-  protected $databaseContents = array(
-    'system' => array(
-      array(
+  protected $databaseContents = [
+    'system' => [
+      [
         'filename' => 'sites/all/modules/module1',
         'name' => 'module1',
         'type' => 'module',
         'status' => 1,
         'schema_version' => -1,
-      ),
-      array(
+      ],
+      [
         'filename' => 'sites/all/modules/module2',
         'name' => 'module2',
         'type' => 'module',
         'status' => 0,
         'schema_version' => 7201,
-      ),
-      array(
+      ],
+      [
         'filename' => 'sites/all/modules/test2',
         'name' => 'test2',
         'type' => 'theme',
         'status' => 1,
         'schema_version' => -1,
-      ),
-    ),
-    'variable' => array(
-      array(
+      ],
+    ],
+    'variable' => [
+      [
         'name' => 'my_variable',
         'value' => 'b:1;',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   /**
    * {@inheritdoc}
@@ -72,7 +72,7 @@ protected function setUp() {
     $state = $this->getMock('Drupal\Core\State\StateInterface');
     /** @var \Drupal\Core\Entity\EntityManagerInterface $entity_manager */
     $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
-    $this->base = new TestDrupal6SqlBase($this->migrationConfiguration, $plugin, array(), $this->getMigration(), $state, $entity_manager);
+    $this->base = new TestDrupal6SqlBase($this->migrationConfiguration, $plugin, [], $this->getMigration(), $state, $entity_manager);
     $this->base->setDatabase($this->getDatabase($this->databaseContents));
   }
 
@@ -143,7 +143,7 @@ class TestDrupal6SqlBase extends DrupalSqlBase {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'filename' => t('The path of the primary file for this item.'),
       'name' => t('The name of the item; e.g. node.'),
       'type' => t('The type of the item, either module, theme, or theme_engine.'),
@@ -154,7 +154,7 @@ public function fields() {
       'schema_version' => t('The module\'s database schema version number.'),
       'weight' => t('The order in which this module\'s hooks should be invoked.'),
       'info' => t('A serialized array containing information from the module\'s .info file.'),
-    );
+    ];
   }
 
   /**
@@ -163,7 +163,7 @@ public function fields() {
   public function query() {
     $query = $this->database
       ->select('system', 's')
-      ->fields('s', array('filename', 'name', 'schema_version'));
+      ->fields('s', ['filename', 'name', 'schema_version']);
     return $query;
   }
 
@@ -216,7 +216,7 @@ public function variableGetWrapper($name, $default) {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/d6/i18nVariableTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/d6/i18nVariableTest.php
index bcfb6c2..06059cf 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/d6/i18nVariableTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/d6/i18nVariableTest.php
@@ -20,7 +20,7 @@ class i18nVariableTest extends MigrateSqlSourceTestCase {
    */
   protected $migrationConfiguration = [
     'id' => 'test',
-    'highWaterProperty' => array('field' => 'test'),
+    'highWaterProperty' => ['field' => 'test'],
     'source' => [
       'plugin' => 'i18n_variable',
       'variables' => [
@@ -51,10 +51,10 @@ class i18nVariableTest extends MigrateSqlSourceTestCase {
    */
   protected $databaseContents = [
     'i18n_variable' => [
-      array('name' => 'site_slogan', 'language' => 'fr', 'value' => 's:19:"Migrate est génial";'),
-      array('name' => 'site_name', 'language' => 'fr', 'value' => 's:11:"nom de site";'),
-      array('name' => 'site_slogan', 'language' => 'mi', 'value' => 's:19:"Ko whakamataku heke";'),
-      array('name' => 'site_name', 'language' => 'mi', 'value' => 's:9:"ingoa_pae";'),
+      ['name' => 'site_slogan', 'language' => 'fr', 'value' => 's:19:"Migrate est génial";'],
+      ['name' => 'site_name', 'language' => 'fr', 'value' => 's:11:"nom de site";'],
+      ['name' => 'site_slogan', 'language' => 'mi', 'value' => 's:19:"Ko whakamataku heke";'],
+      ['name' => 'site_name', 'language' => 'mi', 'value' => 's:9:"ingoa_pae";'],
     ],
   ];
 
diff --git a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
index 212a044..6b1fc1b 100644
--- a/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
+++ b/core/modules/migrate_drupal_ui/src/Form/MigrateUpgradeForm.php
@@ -1058,7 +1058,7 @@ public function buildConfirmForm(array $form, FormStateInterface $form_state) {
     $form['missing_module_list_title'] = [
       '#type' => 'item',
       '#title' => $this->t('Missing upgrade paths'),
-      '#description' => $this->t('The following items will not be upgraded. For more information see <a href=":migrate">Upgrading from Drupal 6 or 7 to Drupal 8</a>.', array(':migrate' => 'https://www.drupal.org/upgrade/migrate')),
+      '#description' => $this->t('The following items will not be upgraded. For more information see <a href=":migrate">Upgrading from Drupal 6 or 7 to Drupal 8</a>.', [':migrate' => 'https://www.drupal.org/upgrade/migrate']),
     ];
     $form['missing_module_list'] = [
       '#type' => 'table',
diff --git a/core/modules/node/node.admin.inc b/core/modules/node/node.admin.inc
index dc1be65..fc637bd 100644
--- a/core/modules/node/node.admin.inc
+++ b/core/modules/node/node.admin.inc
@@ -33,10 +33,10 @@ function node_mass_update(array $nodes, array $updates, $langcode = NULL, $load
   // We use batch processing to prevent timeout when updating a large number
   // of nodes.
   if (count($nodes) > 10) {
-    $batch = array(
-      'operations' => array(
-        array('_node_mass_update_batch_process', array($nodes, $updates, $langcode, $load, $revisions))
-      ),
+    $batch = [
+      'operations' => [
+        ['_node_mass_update_batch_process', [$nodes, $updates, $langcode, $load, $revisions]]
+      ],
       'finished' => '_node_mass_update_batch_finished',
       'title' => t('Processing'),
       // We use a single multi-pass operation, so the default
@@ -46,7 +46,7 @@ function node_mass_update(array $nodes, array $updates, $langcode = NULL, $load
       // The operations do not live in the .module file, so we need to
       // tell the batch engine which file to load before calling them.
       'file' => drupal_get_path('module', 'node') . '/node.admin.inc',
-    );
+    ];
     batch_set($batch);
   }
   else {
@@ -81,7 +81,7 @@ function node_mass_update(array $nodes, array $updates, $langcode = NULL, $load
  * @see node_mass_update()
  */
 function _node_mass_update_helper(NodeInterface $node, array $updates, $langcode = NULL) {
-  $langcodes = isset($langcode) ? array($langcode) : array_keys($node->getTranslationLanguages());
+  $langcodes = isset($langcode) ? [$langcode] : array_keys($node->getTranslationLanguages());
   // For efficiency manually save the original node before applying any changes.
   $node->original = clone $node;
   foreach ($langcodes as $langcode) {
@@ -169,10 +169,10 @@ function _node_mass_update_batch_finished($success, $results, $operations) {
   else {
     drupal_set_message(t('An error occurred and processing did not complete.'), 'error');
     $message = \Drupal::translation()->formatPlural(count($results), '1 item successfully processed:', '@count items successfully processed:');
-    $item_list = array(
+    $item_list = [
       '#theme' => 'item_list',
       '#items' => $results,
-    );
+    ];
     $message .= drupal_render($item_list);
     drupal_set_message($message);
   }
diff --git a/core/modules/node/node.api.php b/core/modules/node/node.api.php
index a4937f7..6041874 100644
--- a/core/modules/node/node.api.php
+++ b/core/modules/node/node.api.php
@@ -81,10 +81,10 @@
  */
 function hook_node_grants(\Drupal\Core\Session\AccountInterface $account, $op) {
   if ($account->hasPermission('access private content')) {
-    $grants['example'] = array(1);
+    $grants['example'] = [1];
   }
   if ($account->id()) {
-    $grants['example_author'] = array($account->id());
+    $grants['example_author'] = [$account->id()];
   }
   return $grants;
 }
@@ -158,33 +158,33 @@ function hook_node_access_records(\Drupal\node\NodeInterface $node) {
   // We only care about the node if it has been marked private. If not, it is
   // treated just like any other node and we completely ignore it.
   if ($node->private->value) {
-    $grants = array();
+    $grants = [];
     // Only published Catalan translations of private nodes should be viewable
     // to all users. If we fail to check $node->isPublished(), all users would be able
     // to view an unpublished node.
     if ($node->isPublished()) {
-      $grants[] = array(
+      $grants[] = [
         'realm' => 'example',
         'gid' => 1,
         'grant_view' => 1,
         'grant_update' => 0,
         'grant_delete' => 0,
         'langcode' => 'ca'
-      );
+      ];
     }
     // For the example_author array, the GID is equivalent to a UID, which
     // means there are many groups of just 1 user.
     // Note that an author can always view his or her nodes, even if they
     // have status unpublished.
     if ($node->getOwnerId()) {
-      $grants[] = array(
+      $grants[] = [
         'realm' => 'example_author',
         'gid' => $node->getOwnerId(),
         'grant_view' => 1,
         'grant_update' => 1,
         'grant_delete' => 1,
         'langcode' => 'ca'
-      );
+      ];
     }
 
     return $grants;
@@ -231,7 +231,7 @@ function hook_node_access_records_alter(&$grants, Drupal\node\NodeInterface $nod
     // Our module grants are set in $grants['example'].
     $temp = $grants['example'];
     // Now remove all module grants but our own.
-    $grants = array('example' => $temp);
+    $grants = ['example' => $temp];
   }
 }
 
@@ -280,7 +280,7 @@ function hook_node_grants_alter(&$grants, \Drupal\Core\Session\AccountInterface
     // Now check the roles for this account against the restrictions.
     foreach ($account->getRoles() as $rid) {
       if (in_array($rid, $restricted)) {
-        $grants = array();
+        $grants = [];
       }
     }
   }
@@ -374,8 +374,8 @@ function hook_node_access(\Drupal\node\NodeInterface $node, $op, \Drupal\Core\Se
  * @ingroup entity_crud
  */
 function hook_node_search_result(\Drupal\node\NodeInterface $node) {
-  $rating = db_query('SELECT SUM(points) FROM {my_rating} WHERE nid = :nid', array('nid' => $node->id()))->fetchField();
-  return array('rating' => \Drupal::translation()->formatPlural($rating, '1 point', '@count points'));
+  $rating = db_query('SELECT SUM(points) FROM {my_rating} WHERE nid = :nid', ['nid' => $node->id()])->fetchField();
+  return ['rating' => \Drupal::translation()->formatPlural($rating, '1 point', '@count points')];
 }
 
 /**
@@ -394,7 +394,7 @@ function hook_node_search_result(\Drupal\node\NodeInterface $node) {
  */
 function hook_node_update_index(\Drupal\node\NodeInterface $node) {
   $text = '';
-  $ratings = db_query('SELECT title, description FROM {my_ratings} WHERE nid = :nid', array(':nid' => $node->id()));
+  $ratings = db_query('SELECT title, description FROM {my_ratings} WHERE nid = :nid', [':nid' => $node->id()]);
   foreach ($ratings as $rating) {
     $text .= '<h2>' . Html::escape($rating->title) . '</h2>' . Xss::filter($rating->description);
   }
@@ -447,24 +447,24 @@ function hook_node_update_index(\Drupal\node\NodeInterface $node) {
 function hook_ranking() {
   // If voting is disabled, we can avoid returning the array, no hard feelings.
   if (\Drupal::config('vote.settings')->get('node_enabled')) {
-    return array(
-      'vote_average' => array(
+    return [
+      'vote_average' => [
         'title' => t('Average vote'),
         // Note that we use i.sid, the search index's search item id, rather than
         // n.nid.
-        'join' => array(
+        'join' => [
           'type' => 'LEFT',
           'table' => 'vote_node_data',
           'alias' => 'vote_node_data',
           'on' => 'vote_node_data.nid = i.sid',
-        ),
+        ],
         // The highest possible score should be 1, and the lowest possible score,
         // always 0, should be 0.
         'score' => 'vote_node_data.average / CAST(%f AS DECIMAL)',
         // Pass in the highest possible voting score as a decimal argument.
-        'arguments' => array(\Drupal::config('vote.settings')->get('score_max')),
-      ),
-    );
+        'arguments' => [\Drupal::config('vote.settings')->get('score_max')],
+      ],
+    ];
   }
 }
 
@@ -486,16 +486,16 @@ function hook_ranking() {
  * @see entity_crud
  */
 function hook_node_links_alter(array &$links, NodeInterface $entity, array &$context) {
-  $links['mymodule'] = array(
+  $links['mymodule'] = [
     '#theme' => 'links__node__mymodule',
-    '#attributes' => array('class' => array('links', 'inline')),
-    '#links' => array(
-      'node-report' => array(
+    '#attributes' => ['class' => ['links', 'inline']],
+    '#links' => [
+      'node-report' => [
         'title' => t('Report'),
         'url' => Url::fromRoute('node_test.report', ['node' => $entity->id()], ['query' => ['token' => \Drupal::getContainer()->get('csrf_token')->get("node/{$entity->id()}/report")]]),
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/node/node.install b/core/modules/node/node.install
index 0582459..3aeff41 100644
--- a/core/modules/node/node.install
+++ b/core/modules/node/node.install
@@ -13,26 +13,26 @@
  * Implements hook_requirements().
  */
 function node_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
   if ($phase === 'runtime') {
     // Only show rebuild button if there are either 0, or 2 or more, rows
     // in the {node_access} table, or if there are modules that
     // implement hook_node_grants().
     $grant_count = \Drupal::entityManager()->getAccessControlHandler('node')->countGrants();
     if ($grant_count != 1 || count(\Drupal::moduleHandler()->getImplementations('node_grants')) > 0) {
-      $value = \Drupal::translation()->formatPlural($grant_count, 'One permission in use', '@count permissions in use', array('@count' => $grant_count));
+      $value = \Drupal::translation()->formatPlural($grant_count, 'One permission in use', '@count permissions in use', ['@count' => $grant_count]);
     }
     else {
       $value = t('Disabled');
     }
 
-    $requirements['node_access'] = array(
+    $requirements['node_access'] = [
       'title' => t('Node Access Permissions'),
       'value' => $value,
-      'description' => t('If the site is experiencing problems with permissions to content, you may have to rebuild the permissions cache. Rebuilding will remove all privileges to content and replace them with permissions based on the current modules and settings. Rebuilding may take some time if there is a lot of content or complex permission settings. After rebuilding has completed, content will automatically use the new permissions. <a href=":rebuild">Rebuild permissions</a>', array(
+      'description' => t('If the site is experiencing problems with permissions to content, you may have to rebuild the permissions cache. Rebuilding will remove all privileges to content and replace them with permissions based on the current modules and settings. Rebuilding may take some time if there is a lot of content or complex permission settings. After rebuilding has completed, content will automatically use the new permissions. <a href=":rebuild">Rebuild permissions</a>', [
         ':rebuild' => \Drupal::url('node.configure_rebuild_confirm'),
-      )),
-    );
+      ]),
+    ];
   }
   return $requirements;
 }
@@ -41,78 +41,78 @@ function node_requirements($phase) {
  * Implements hook_schema().
  */
 function node_schema() {
-  $schema['node_access'] = array(
+  $schema['node_access'] = [
     'description' => 'Identifies which realm/grant pairs a user must possess in order to view, update, or delete specific nodes.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'description' => 'The {node}.nid this record affects.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'langcode' => array(
+      ],
+      'langcode' => [
         'description' => 'The {language}.langcode of this node.',
         'type' => 'varchar_ascii',
         'length' => 12,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'fallback' => array(
+      ],
+      'fallback' => [
         'description' => 'Boolean indicating whether this record should be used as a fallback if a language condition is not provided.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 1,
         'size' => 'tiny',
-      ),
-      'gid' => array(
+      ],
+      'gid' => [
         'description' => "The grant ID a user must possess in the specified realm to gain this row's privileges on the node.",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'realm' => array(
+      ],
+      'realm' => [
         'description' => 'The realm in which the user must possess the grant ID. Each node access node can define one or more realms.',
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'grant_view' => array(
+      ],
+      'grant_view' => [
         'description' => 'Boolean indicating whether a user with the realm/grant pair can view this node.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-      'grant_update' => array(
+      ],
+      'grant_update' => [
         'description' => 'Boolean indicating whether a user with the realm/grant pair can edit this node.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-      'grant_delete' => array(
+      ],
+      'grant_delete' => [
         'description' => 'Boolean indicating whether a user with the realm/grant pair can delete this node.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-    ),
-    'primary key' => array('nid', 'gid', 'realm', 'langcode'),
-    'foreign keys' => array(
-      'affected_node' => array(
+      ],
+    ],
+    'primary key' => ['nid', 'gid', 'realm', 'langcode'],
+    'foreign keys' => [
+      'affected_node' => [
         'table' => 'node',
-        'columns' => array('nid' => 'nid'),
-      ),
-    ),
-  );
+        'columns' => ['nid' => 'nid'],
+      ],
+    ],
+  ];
 
   return $schema;
 }
@@ -129,20 +129,20 @@ function node_install() {
   // these permissions. Doing so also allows tests to continue to operate as
   // expected without first having to manually grant these default permissions.
   if (\Drupal::moduleHandler()->moduleExists('user')) {
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access content'));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array('access content'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access content']);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, ['access content']);
   }
 
   // Populate the node access table.
   db_insert('node_access')
-    ->fields(array(
+    ->fields([
       'nid' => 0,
       'gid' => 0,
       'realm' => 'all',
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
-    ))
+    ])
     ->execute();
 }
 
@@ -216,7 +216,7 @@ function node_update_8003() {
   //   changes. SqlContentEntityStorageSchema::onEntityTypeUpdate() should be
   //   fixed to automatically handle this.
   //   See https://www.drupal.org/node/2554245.
-  foreach (array('status', 'uid') as $field_name) {
+  foreach (['status', 'uid'] as $field_name) {
     $manager->updateFieldStorageDefinition($manager->getFieldStorageDefinition($field_name, 'node'));
   }
 }
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 7d7247b..40e5b4e 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -90,7 +90,7 @@ function node_help($route_name, RouteMatchInterface $route_match) {
       $message = t('The content access permissions need to be rebuilt.');
     }
     else {
-      $message = t('The content access permissions need to be rebuilt. <a href=":node_access_rebuild">Rebuild permissions</a>.', array(':node_access_rebuild' => \Drupal::url('node.configure_rebuild_confirm')));
+      $message = t('The content access permissions need to be rebuilt. <a href=":node_access_rebuild">Rebuild permissions</a>.', [':node_access_rebuild' => \Drupal::url('node.configure_rebuild_confirm')]);
     }
     drupal_set_message($message, 'error');
   }
@@ -99,19 +99,19 @@ function node_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.node':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Node module manages the creation, editing, deletion, settings, and display of the main site content. Content items managed by the Node module are typically displayed as pages on your site, and include a title, some meta-data (author, creation time, content type, etc.), and optional fields containing text or other data (fields are managed by the <a href=":field">Field module</a>). For more information, see the <a href=":node">online documentation for the Node module</a>.', array(':node' => 'https://www.drupal.org/documentation/modules/node', ':field' => \Drupal::url('help.page', array('name' => 'field')))) . '</p>';
+      $output .= '<p>' . t('The Node module manages the creation, editing, deletion, settings, and display of the main site content. Content items managed by the Node module are typically displayed as pages on your site, and include a title, some meta-data (author, creation time, content type, etc.), and optional fields containing text or other data (fields are managed by the <a href=":field">Field module</a>). For more information, see the <a href=":node">online documentation for the Node module</a>.', [':node' => 'https://www.drupal.org/documentation/modules/node', ':field' => \Drupal::url('help.page', ['name' => 'field'])]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating content') . '</dt>';
-      $output .= '<dd>' . t('When new content is created, the Node module records basic information about the content, including the author, date of creation, and the <a href=":content-type">Content type</a>. It also manages the <em>publishing options</em>, which define whether or not the content is published, promoted to the front page of the site, and/or sticky at the top of content lists. Default settings can be configured for each <a href=":content-type">type of content</a> on your site.', array(':content-type' => \Drupal::url('entity.node_type.collection'))) . '</dd>';
+      $output .= '<dd>' . t('When new content is created, the Node module records basic information about the content, including the author, date of creation, and the <a href=":content-type">Content type</a>. It also manages the <em>publishing options</em>, which define whether or not the content is published, promoted to the front page of the site, and/or sticky at the top of content lists. Default settings can be configured for each <a href=":content-type">type of content</a> on your site.', [':content-type' => \Drupal::url('entity.node_type.collection')]) . '</dd>';
       $output .= '<dt>' . t('Creating custom content types') . '</dt>';
-      $output .= '<dd>' . t('The Node module gives users with the <em>Administer content types</em> permission the ability to <a href=":content-new">create new content types</a> in addition to the default ones already configured. Creating custom content types gives you the flexibility to add <a href=":field">fields</a> and configure default settings that suit the differing needs of various site content.', array(':content-new' => \Drupal::url('node.type_add'), ':field' => \Drupal::url('help.page', array('name' => 'field')))) . '</dd>';
+      $output .= '<dd>' . t('The Node module gives users with the <em>Administer content types</em> permission the ability to <a href=":content-new">create new content types</a> in addition to the default ones already configured. Creating custom content types gives you the flexibility to add <a href=":field">fields</a> and configure default settings that suit the differing needs of various site content.', [':content-new' => \Drupal::url('node.type_add'), ':field' => \Drupal::url('help.page', ['name' => 'field'])]) . '</dd>';
       $output .= '<dt>' . t('Administering content') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":content">Content</a> page lists your content, allowing you add new content, filter, edit or delete existing content, or perform bulk operations on existing content.', array(':content' => \Drupal::url('system.admin_content'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":content">Content</a> page lists your content, allowing you add new content, filter, edit or delete existing content, or perform bulk operations on existing content.', [':content' => \Drupal::url('system.admin_content')]) . '</dd>';
       $output .= '<dt>' . t('Creating revisions') . '</dt>';
       $output .= '<dd>' . t('The Node module also enables you to create multiple versions of any content, and revert to older versions using the <em>Revision information</em> settings.') . '</dd>';
       $output .= '<dt>' . t('User permissions') . '</dt>';
-      $output .= '<dd>' . t('The Node module makes a number of permissions available for each content type, which can be set by role on the <a href=":permissions">permissions page</a>.', array(':permissions' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-node')))) . '</dd>';
+      $output .= '<dd>' . t('The Node module makes a number of permissions available for each content type, which can be set by role on the <a href=":permissions">permissions page</a>.', [':permissions' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-node'])]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -121,13 +121,13 @@ function node_help($route_name, RouteMatchInterface $route_match) {
     case 'entity.entity_form_display.node.default':
     case 'entity.entity_form_display.node.form_mode':
       $type = $route_match->getParameter('node_type');
-      return '<p>' . t('Content items can be edited using different form modes. Here, you can define which fields are shown and hidden when %type content is edited in each form mode, and define how the field form widgets are displayed in each form mode.', array('%type' => $type->label())) . '</p>' ;
+      return '<p>' . t('Content items can be edited using different form modes. Here, you can define which fields are shown and hidden when %type content is edited in each form mode, and define how the field form widgets are displayed in each form mode.', ['%type' => $type->label()]) . '</p>' ;
 
     case 'entity.entity_view_display.node.default':
     case 'entity.entity_view_display.node.view_mode':
       $type = $route_match->getParameter('node_type');
       return '<p>' . t('Content items can be displayed using different view modes: Teaser, Full content, Print, RSS, etc. <em>Teaser</em> is a short format that is typically used in lists of multiple content items. <em>Full content</em> is typically used when the content is displayed on its own page.') . '</p>' .
-        '<p>' . t('Here, you can define which fields are shown and hidden when %type content is displayed in each view mode, and define how the fields are displayed in each view mode.', array('%type' => $type->label())) . '</p>';
+        '<p>' . t('Here, you can define which fields are shown and hidden when %type content is displayed in each view mode, and define how the fields are displayed in each view mode.', ['%type' => $type->label()]) . '</p>';
 
     case 'entity.node.version_history':
       return '<p>' . t('Revisions allow you to track differences between multiple versions of your content, and revert to older versions.') . '</p>';
@@ -149,26 +149,26 @@ function node_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function node_theme() {
-  return array(
-    'node' => array(
+  return [
+    'node' => [
       'render element' => 'elements',
-    ),
-    'node_add_list' => array(
-      'variables' => array('content' => NULL),
-    ),
-    'node_edit_form' => array(
+    ],
+    'node_add_list' => [
+      'variables' => ['content' => NULL],
+    ],
+    'node_edit_form' => [
       'render element' => 'form',
-    ),
-    'field__node__title' => array(
+    ],
+    'field__node__title' => [
       'base hook' => 'field',
-    ),
-    'field__node__uid' => array(
+    ],
+    'field__node__uid' => [
       'base hook' => 'field',
-    ),
-    'field__node__created' => array(
+    ],
+    'field__node__created' => [
       'base hook' => 'field',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -204,19 +204,19 @@ function node_entity_view_display_alter(EntityViewDisplayInterface $display, $co
  *   $result, or FALSE if there are no rows in $result.
  */
 function node_title_list(StatementInterface $result, $title = NULL) {
-  $items = array();
+  $items = [];
   $num_rows = FALSE;
   $nids = [];
   foreach ($result as $row) {
     // Do not use $node->label() or $node->urlInfo() here, because we only have
     // database rows, not actual nodes.
     $nids[] = $row->nid;
-    $options = !empty($row->comment_count) ? array('attributes' => array('title' => \Drupal::translation()->formatPlural($row->comment_count, '1 comment', '@count comments'))) : array();
+    $options = !empty($row->comment_count) ? ['attributes' => ['title' => \Drupal::translation()->formatPlural($row->comment_count, '1 comment', '@count comments')]] : [];
     $items[] = \Drupal::l($row->title, new Url('entity.node.canonical', ['node' => $row->nid], $options));
     $num_rows = TRUE;
   }
 
-  return $num_rows ? array('#theme' => 'item_list__node', '#items' => $items, '#title' => $title, '#cache' => ['tags' => Cache::mergeTags(['node_list'], Cache::buildTags('node', $nids))]) : FALSE;
+  return $num_rows ? ['#theme' => 'item_list__node', '#items' => $items, '#title' => $title, '#cache' => ['tags' => Cache::mergeTags(['node_list'], Cache::buildTags('node', $nids))]] : FALSE;
 }
 
 /**
@@ -232,7 +232,7 @@ function node_title_list(StatementInterface $result, $title = NULL) {
  */
 function node_mark($nid, $timestamp) {
 
-  $cache = &drupal_static(__FUNCTION__, array());
+  $cache = &drupal_static(__FUNCTION__, []);
 
   if (\Drupal::currentUser()->isAnonymous() || !\Drupal::moduleHandler()->moduleExists('history')) {
     return MARK_READ;
@@ -346,23 +346,23 @@ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') {
       'field_storage' => $field_storage,
       'bundle' => $type->id(),
       'label' => $label,
-      'settings' => array('display_summary' => TRUE),
+      'settings' => ['display_summary' => TRUE],
     ]);
     $field->save();
 
     // Assign widget settings for the 'default' form mode.
     entity_get_form_display('node', $type->id(), 'default')
-      ->setComponent('body', array(
+      ->setComponent('body', [
         'type' => 'text_textarea_with_summary',
-      ))
+      ])
       ->save();
 
     // Assign display settings for the 'default' and 'teaser' view modes.
     entity_get_display('node', $type->id(), 'default')
-      ->setComponent('body', array(
+      ->setComponent('body', [
         'label' => 'hidden',
         'type' => 'text_default',
-      ))
+      ])
       ->save();
 
     // The teaser view mode is created by the Standard profile and therefore
@@ -370,10 +370,10 @@ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') {
     $view_modes = \Drupal::entityManager()->getViewModes('node');
     if (isset($view_modes['teaser'])) {
       entity_get_display('node', $type->id(), 'teaser')
-        ->setComponent('body', array(
+        ->setComponent('body', [
           'label' => 'hidden',
           'type' => 'text_summary_or_trimmed',
-        ))
+        ])
         ->save();
     }
   }
@@ -385,15 +385,15 @@ function node_add_body_field(NodeTypeInterface $type, $label = 'Body') {
  * Implements hook_entity_extra_field_info().
  */
 function node_entity_extra_field_info() {
-  $extra = array();
+  $extra = [];
   $description = t('Node module element');
   foreach (NodeType::loadMultiple() as $bundle) {
-    $extra['node'][$bundle->id()]['display']['links'] = array(
+    $extra['node'][$bundle->id()]['display']['links'] = [
       'label' => t('Links'),
       'description' => $description,
       'weight' => 100,
       'visible' => TRUE,
-    );
+    ];
   }
 
   return $extra;
@@ -460,7 +460,7 @@ function node_load_multiple(array $nids = NULL, $reset = FALSE) {
  */
 function node_load($nid = NULL, $reset = FALSE) {
   if ($reset) {
-    \Drupal::entityManager()->getStorage('node')->resetCache(array($nid));
+    \Drupal::entityManager()->getStorage('node')->resetCache([$nid]);
   }
   return Node::load($nid);
 }
@@ -517,16 +517,16 @@ function node_is_page(NodeInterface $node) {
  * @see node_add_page()
  */
 function template_preprocess_node_add_list(&$variables) {
-  $variables['types'] = array();
+  $variables['types'] = [];
   if (!empty($variables['content'])) {
     foreach ($variables['content'] as $type) {
-      $variables['types'][$type->id()] = array(
+      $variables['types'][$type->id()] = [
         'type' => $type->id(),
-        'add_link' => \Drupal::l($type->label(), new Url('node.add', array('node_type' => $type->id()))),
-        'description' => array(
+        'add_link' => \Drupal::l($type->label(), new Url('node.add', ['node_type' => $type->id()])),
+        'description' => [
           '#markup' => $type->getDescription(),
-        ),
-      );
+        ],
+      ];
     }
   }
 }
@@ -558,7 +558,7 @@ function node_preprocess_block(&$variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function node_theme_suggestions_node(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
   $node = $variables['elements']['#node'];
   $sanitized_view_mode = strtr($variables['elements']['#view_mode'], '.', '_');
 
@@ -598,18 +598,18 @@ function template_preprocess_node(&$variables) {
   $variables['author_name'] = drupal_render($variables['elements']['uid']);
   unset($variables['elements']['uid']);
 
-  $variables['url'] = $node->url('canonical', array(
+  $variables['url'] = $node->url('canonical', [
     'language' => $node->language(),
-  ));
+  ]);
   $variables['label'] = $variables['elements']['title'];
   unset($variables['elements']['title']);
   // The 'page' variable is set to TRUE in two occasions:
   //   - The view mode is 'full' and we are on the 'node.view' route.
   //   - The node is in preview and view mode is either 'full' or 'default'.
-  $variables['page'] = ($variables['view_mode'] == 'full' && (node_is_page($node)) || (isset($node->in_preview) && in_array($node->preview_view_mode, array('full', 'default'))));
+  $variables['page'] = ($variables['view_mode'] == 'full' && (node_is_page($node)) || (isset($node->in_preview) && in_array($node->preview_view_mode, ['full', 'default'])));
 
   // Helpful $content variable for templates.
-  $variables += array('content' => array());
+  $variables += ['content' => []];
   foreach (Element::children($variables['elements']) as $key) {
     $variables['content'][$key] = $variables['elements'][$key];
   }
@@ -648,10 +648,10 @@ function node_cron() {
       ->execute();
     if (isset($result[0])) {
       // Make an array with definite keys and store it in the state system.
-      $array = array(
+      $array = [
         'min_created' => $result[0][$min_alias],
         'max_created' => $result[0][$max_alias],
-      );
+      ];
       \Drupal::state()->set('node.min_max_update_time', $array);
     }
   }
@@ -662,35 +662,35 @@ function node_cron() {
  */
 function node_ranking() {
   // Create the ranking array and add the basic ranking options.
-  $ranking = array(
-    'relevance' => array(
+  $ranking = [
+    'relevance' => [
       'title' => t('Keyword relevance'),
       // Average relevance values hover around 0.15
       'score' => 'i.relevance',
-    ),
-    'sticky' => array(
+    ],
+    'sticky' => [
       'title' => t('Content is sticky at top of lists'),
       // The sticky flag is either 0 or 1, which is automatically normalized.
       'score' => 'n.sticky',
-    ),
-    'promote' => array(
+    ],
+    'promote' => [
       'title' => t('Content is promoted to the front page'),
       // The promote flag is either 0 or 1, which is automatically normalized.
       'score' => 'n.promote',
-    ),
-  );
+    ],
+  ];
   // Add relevance based on updated date, but only if it the scale values have
   // been calculated in node_cron().
   if ($node_min_max = \Drupal::state()->get('node.min_max_update_time')) {
-    $ranking['recent'] = array(
+    $ranking['recent'] = [
       'title' => t('Recently created'),
       // Exponential decay with half life of 14% of the age range of nodes.
       'score' => 'EXP(-5 * (1 - (n.created - :node_oldest) / :node_range))',
-      'arguments' => array(
+      'arguments' => [
         ':node_oldest' => $node_min_max['min_created'],
         ':node_range' => max($node_min_max['max_created'] - $node_min_max['min_created'], 1),
-      ),
-    );
+      ],
+    ];
   }
   return $ranking;
 }
@@ -706,17 +706,17 @@ function node_user_cancel($edit, $account, $method) {
         ->condition('uid', $account->id())
         ->execute();
       module_load_include('inc', 'node', 'node.admin');
-      node_mass_update($nids, array('status' => 0), NULL, TRUE);
+      node_mass_update($nids, ['status' => 0], NULL, TRUE);
       break;
 
     case 'user_cancel_reassign':
       // Anonymize all of the nodes for this old account.
       module_load_include('inc', 'node', 'node.admin');
       $vids = \Drupal::entityManager()->getStorage('node')->userRevisionIds($account);
-      node_mass_update($vids, array(
+      node_mass_update($vids, [
         'uid' => 0,
         'revision_uid' => 0,
-      ), NULL, TRUE, TRUE);
+      ], NULL, TRUE, TRUE);
       break;
   }
 }
@@ -779,7 +779,7 @@ function node_get_recent($number = 10) {
 
   $nodes = Node::loadMultiple($nids);
 
-  return $nodes ? $nodes : array();
+  return $nodes ? $nodes : [];
 }
 
 /**
@@ -825,12 +825,12 @@ function node_page_top(array &$page) {
   // Add 'Back to content editing' link on preview page.
   $route_match = \Drupal::routeMatch();
   if ($route_match->getRouteName() == 'entity.node.preview') {
-    $page['page_top']['node_preview'] = array(
+    $page['page_top']['node_preview'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('node-preview-container', 'container-inline')
-      ),
-    );
+      '#attributes' => [
+        'class' => ['node-preview-container', 'container-inline']
+      ],
+    ];
 
     $form = \Drupal::formBuilder()->getForm('\Drupal\node\Form\NodePreviewForm', $route_match->getParameter('node_preview'));
     $page['page_top']['node_preview']['view_mode'] = $form;
@@ -845,12 +845,12 @@ function node_page_top(array &$page) {
  * @see node_form_system_themes_admin_form_submit()
  */
 function node_form_system_themes_admin_form_alter(&$form, FormStateInterface $form_state, $form_id) {
-  $form['admin_theme']['use_admin_theme'] = array(
+  $form['admin_theme']['use_admin_theme'] = [
     '#type' => 'checkbox',
     '#title' => t('Use the administration theme when editing or creating content'),
-    '#description' => t('Control which roles can "View the administration theme" on the <a href=":permissions">Permissions page</a>.', array(':permissions' => Url::fromRoute('user.admin_permissions')->toString())),
+    '#description' => t('Control which roles can "View the administration theme" on the <a href=":permissions">Permissions page</a>.', [':permissions' => Url::fromRoute('user.admin_permissions')->toString()]),
     '#default_value' => \Drupal::configFactory()->getEditable('node.settings')->get('use_admin_theme'),
-  );
+  ];
   $form['#submit'][] = 'node_form_system_themes_admin_form_submit';
 }
 
@@ -970,11 +970,11 @@ function node_node_access(NodeInterface $node, $op, $account) {
  */
 function node_access_grants($op, AccountInterface $account) {
   // Fetch node access grants from other modules.
-  $grants = \Drupal::moduleHandler()->invokeAll('node_grants', array($account, $op));
+  $grants = \Drupal::moduleHandler()->invokeAll('node_grants', [$account, $op]);
   // Allow modules to alter the assigned grants.
   \Drupal::moduleHandler()->alter('node_grants', $grants, $account, $op);
 
-  return array_merge(array('all' => array(0)), $grants);
+  return array_merge(['all' => [0]], $grants);
 }
 
 /**
@@ -1168,13 +1168,13 @@ function node_access_rebuild($batch_mode = FALSE) {
   // Only recalculate if the site is using a node_access module.
   if (count(\Drupal::moduleHandler()->getImplementations('node_grants'))) {
     if ($batch_mode) {
-      $batch = array(
+      $batch = [
         'title' => t('Rebuilding content access permissions'),
-        'operations' => array(
-          array('_node_access_rebuild_batch_operation', array()),
-        ),
+        'operations' => [
+          ['_node_access_rebuild_batch_operation', []],
+        ],
         'finished' => '_node_access_rebuild_batch_finished'
-      );
+      ];
       batch_set($batch);
     }
     else {
@@ -1192,7 +1192,7 @@ function node_access_rebuild($batch_mode = FALSE) {
       $entity_query->accessCheck(FALSE);
       $nids = $entity_query->execute();
       foreach ($nids as $nid) {
-        $node_storage->resetCache(array($nid));
+        $node_storage->resetCache([$nid]);
         $node = Node::load($nid);
         // To preserve database integrity, only write grants if the node
         // loads successfully.
diff --git a/core/modules/node/node.tokens.inc b/core/modules/node/node.tokens.inc
index 81fa3f0..2fcf0dd 100644
--- a/core/modules/node/node.tokens.inc
+++ b/core/modules/node/node.tokens.inc
@@ -14,71 +14,71 @@
  * Implements hook_token_info().
  */
 function node_token_info() {
-  $type = array(
+  $type = [
     'name' => t('Nodes'),
     'description' => t('Tokens related to individual content items, or "nodes".'),
     'needs-data' => 'node',
-  );
+  ];
 
   // Core tokens for nodes.
-  $node['nid'] = array(
+  $node['nid'] = [
     'name' => t("Content ID"),
     'description' => t('The unique ID of the content item, or "node".'),
-  );
-  $node['vid'] = array(
+  ];
+  $node['vid'] = [
     'name' => t("Revision ID"),
     'description' => t("The unique ID of the node's latest revision."),
-  );
-  $node['type'] = array(
+  ];
+  $node['type'] = [
     'name' => t("Content type"),
-  );
-  $node['type-name'] = array(
+  ];
+  $node['type-name'] = [
     'name' => t("Content type name"),
     'description' => t("The human-readable name of the node type."),
-  );
-  $node['title'] = array(
+  ];
+  $node['title'] = [
     'name' => t("Title"),
-  );
-  $node['body'] = array(
+  ];
+  $node['body'] = [
     'name' => t("Body"),
     'description' => t("The main body text of the node."),
-  );
-  $node['summary'] = array(
+  ];
+  $node['summary'] = [
     'name' => t("Summary"),
     'description' => t("The summary of the node's main body text."),
-  );
-  $node['langcode'] = array(
+  ];
+  $node['langcode'] = [
     'name' => t('Language code'),
     'description' => t('The language code of the language the node is written in.'),
-  );
-  $node['url'] = array(
+  ];
+  $node['url'] = [
     'name' => t("URL"),
     'description' => t("The URL of the node."),
-  );
-  $node['edit-url'] = array(
+  ];
+  $node['edit-url'] = [
     'name' => t("Edit URL"),
     'description' => t("The URL of the node's edit page."),
-  );
+  ];
 
   // Chained tokens for nodes.
-  $node['created'] = array(
+  $node['created'] = [
     'name' => t("Date created"),
     'type' => 'date',
-  );
-  $node['changed'] = array(
+  ];
+  $node['changed'] = [
     'name' => t("Date changed"),
     'description' => t("The date the node was most recently updated."),
     'type' => 'date',
-  );
-  $node['author'] = array(
+  ];
+  $node['author'] = [
     'name' => t("Author"),
     'type' => 'user',
-  );
+  ];
 
-  return array(
-    'types' => array('node' => $type),
-    'tokens' => array('node' => $node),
-  );
+  return [
+    'types' => ['node' => $type],
+    'tokens' => ['node' => $node],
+  ];
 }
 
 /**
@@ -87,7 +87,7 @@ function node_token_info() {
 function node_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['langcode'])) {
     $url_options['language'] = \Drupal::languageManager()->getLanguage($options['langcode']);
     $langcode = $options['langcode'];
@@ -95,7 +95,7 @@ function node_tokens($type, $tokens, array $data, array $options, BubbleableMeta
   else {
     $langcode = LanguageInterface::LANGCODE_DEFAULT;
   }
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'node' && !empty($data['node'])) {
     /** @var \Drupal\node\NodeInterface $node */
@@ -127,7 +127,7 @@ function node_tokens($type, $tokens, array $data, array $options, BubbleableMeta
 
         case 'body':
         case 'summary':
-          $translation = \Drupal::entityManager()->getTranslationFromContext($node, $langcode, array('operation' => 'node_tokens'));
+          $translation = \Drupal::entityManager()->getTranslationFromContext($node, $langcode, ['operation' => 'node_tokens']);
           if ($translation->hasField('body') && ($items = $translation->get('body')) && !$items->isEmpty()) {
             $item = $items[0];
             // If the summary was requested and is not empty, use it.
@@ -195,15 +195,15 @@ function node_tokens($type, $tokens, array $data, array $options, BubbleableMeta
     }
 
     if ($author_tokens = $token_service->findWithPrefix($tokens, 'author')) {
-      $replacements += $token_service->generate('user', $author_tokens, array('user' => $node->getOwner()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('user', $author_tokens, ['user' => $node->getOwner()], $options, $bubbleable_metadata);
     }
 
     if ($created_tokens = $token_service->findWithPrefix($tokens, 'created')) {
-      $replacements += $token_service->generate('date', $created_tokens, array('date' => $node->getCreatedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $created_tokens, ['date' => $node->getCreatedTime()], $options, $bubbleable_metadata);
     }
 
     if ($changed_tokens = $token_service->findWithPrefix($tokens, 'changed')) {
-      $replacements += $token_service->generate('date', $changed_tokens, array('date' => $node->getChangedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $changed_tokens, ['date' => $node->getChangedTime()], $options, $bubbleable_metadata);
     }
   }
 
diff --git a/core/modules/node/node.views_execution.inc b/core/modules/node/node.views_execution.inc
index 193e479..4d834a1 100644
--- a/core/modules/node/node.views_execution.inc
+++ b/core/modules/node/node.views_execution.inc
@@ -14,18 +14,18 @@
  */
 function node_views_query_substitutions(ViewExecutable $view) {
   $account = \Drupal::currentUser();
-  return array(
+  return [
     '***ADMINISTER_NODES***' => intval($account->hasPermission('administer nodes')),
     '***VIEW_OWN_UNPUBLISHED_NODES***' => intval($account->hasPermission('view own unpublished content')),
     '***BYPASS_NODE_ACCESS***' => intval($account->hasPermission('bypass node access')),
-  );
+  ];
 }
 
 /**
  * Implements hook_views_analyze().
  */
 function node_views_analyze(ViewExecutable $view) {
-  $ret = array();
+  $ret = [];
   // Check for something other than the default display:
   if ($view->storage->get('base_table') == 'node') {
     foreach ($view->displayHandlers as $display) {
@@ -38,7 +38,7 @@ function node_views_analyze(ViewExecutable $view) {
           $authenticated_role = Role::load(RoleInterface::AUTHENTICATED_ID);
           $authenticated_has_access = $authenticated_role && $authenticated_role->hasPermission('access content');
           if (!$anonymous_has_access || !$authenticated_has_access) {
-            $ret[] = Analyzer::formatMessage(t('Some roles lack permission to access content, but display %display has no access control.', array('%display' => $display->display['display_title'])), 'warning');
+            $ret[] = Analyzer::formatMessage(t('Some roles lack permission to access content, but display %display has no access control.', ['%display' => $display->display['display_title']]), 'warning');
           }
           $filters = $display->getOption('filters');
           foreach ($filters as $filter) {
@@ -46,7 +46,7 @@ function node_views_analyze(ViewExecutable $view) {
               continue 2;
             }
           }
-          $ret[] = Analyzer::formatMessage(t('Display %display has no access control but does not contain a filter for published nodes.', array('%display' => $display->display['display_title'])), 'warning');
+          $ret[] = Analyzer::formatMessage(t('Display %display has no access control but does not contain a filter for published nodes.', ['%display' => $display->display['display_title']]), 'warning');
         }
       }
     }
@@ -54,7 +54,7 @@ function node_views_analyze(ViewExecutable $view) {
   foreach ($view->displayHandlers as $display) {
     if ($display->getPluginId() == 'page') {
       if ($display->getOption('path') == 'node/%') {
-        $ret[] = Analyzer::formatMessage(t('Display %display has set node/% as path. This will not produce what you want. If you want to have multiple versions of the node view, use panels.', array('%display' => $display->display['display_title'])), 'warning');
+        $ret[] = Analyzer::formatMessage(t('Display %display has set node/% as path. This will not produce what you want. If you want to have multiple versions of the node view, use panels.', ['%display' => $display->display['display_title']]), 'warning');
       }
     }
   }
diff --git a/core/modules/node/src/Access/NodeRevisionAccessCheck.php b/core/modules/node/src/Access/NodeRevisionAccessCheck.php
index 2005ec7..b85d783 100644
--- a/core/modules/node/src/Access/NodeRevisionAccessCheck.php
+++ b/core/modules/node/src/Access/NodeRevisionAccessCheck.php
@@ -35,7 +35,7 @@ class NodeRevisionAccessCheck implements AccessInterface {
    *
    * @var array
    */
-  protected $access = array();
+  protected $access = [];
 
   /**
    * Constructs a new NodeRevisionAccessCheck.
@@ -90,17 +90,17 @@ public function access(Route $route, AccountInterface $account, $node_revision =
    *   TRUE if the operation may be performed, FALSE otherwise.
    */
   public function checkAccess(NodeInterface $node, AccountInterface $account, $op = 'view') {
-    $map = array(
+    $map = [
       'view' => 'view all revisions',
       'update' => 'revert all revisions',
       'delete' => 'delete all revisions',
-    );
+    ];
     $bundle = $node->bundle();
-    $type_map = array(
+    $type_map = [
       'view' => "view $bundle revisions",
       'update' => "revert $bundle revisions",
       'delete' => "delete $bundle revisions",
-    );
+    ];
 
     if (!$node || !isset($map[$op]) || !isset($type_map[$op])) {
       // If there was no node to check against, or the $op was not one of the
diff --git a/core/modules/node/src/ContextProvider/NodeRouteContext.php b/core/modules/node/src/ContextProvider/NodeRouteContext.php
index 2b745e9..2e10a8a 100644
--- a/core/modules/node/src/ContextProvider/NodeRouteContext.php
+++ b/core/modules/node/src/ContextProvider/NodeRouteContext.php
@@ -48,7 +48,7 @@ public function getRuntimeContexts(array $unqualified_context_ids) {
     }
     elseif ($this->routeMatch->getRouteName() == 'node.add') {
       $node_type = $this->routeMatch->getParameter('node_type');
-      $value = Node::create(array('type' => $node_type->id()));
+      $value = Node::create(['type' => $node_type->id()]);
     }
 
     $cacheability = new CacheableMetadata();
diff --git a/core/modules/node/src/Controller/NodeController.php b/core/modules/node/src/Controller/NodeController.php
index 048b949..4840147 100644
--- a/core/modules/node/src/Controller/NodeController.php
+++ b/core/modules/node/src/Controller/NodeController.php
@@ -74,7 +74,7 @@ public function addPage() {
       ],
     ];
 
-    $content = array();
+    $content = [];
 
     // Only use node types the user has access to.
     foreach ($this->entityManager()->getStorage('node_type')->loadMultiple() as $type) {
@@ -88,7 +88,7 @@ public function addPage() {
     // Bypass the node/add listing if only one content type is available.
     if (count($content) == 1) {
       $type = array_shift($content);
-      return $this->redirect('node.add', array('node_type' => $type->id()));
+      return $this->redirect('node.add', ['node_type' => $type->id()]);
     }
 
     $build['#content'] = $content;
@@ -106,9 +106,9 @@ public function addPage() {
    *   A node submission form.
    */
   public function add(NodeTypeInterface $node_type) {
-    $node = $this->entityManager()->getStorage('node')->create(array(
+    $node = $this->entityManager()->getStorage('node')->create([
       'type' => $node_type->id(),
-    ));
+    ]);
 
     $form = $this->entityFormBuilder()->getForm($node);
 
@@ -144,7 +144,7 @@ public function revisionShow($node_revision) {
    */
   public function revisionPageTitle($node_revision) {
     $node = $this->entityManager()->getStorage('node')->loadRevision($node_revision);
-    return $this->t('Revision of %title from %date', array('%title' => $node->label(), '%date' => format_date($node->getRevisionCreationTime())));
+    return $this->t('Revision of %title from %date', ['%title' => $node->label(), '%date' => format_date($node->getRevisionCreationTime())]);
   }
 
   /**
@@ -166,12 +166,12 @@ public function revisionOverview(NodeInterface $node) {
     $type = $node->getType();
 
     $build['#title'] = $has_translations ? $this->t('@langname revisions for %title', ['@langname' => $langname, '%title' => $node->label()]) : $this->t('Revisions for %title', ['%title' => $node->label()]);
-    $header = array($this->t('Revision'), $this->t('Operations'));
+    $header = [$this->t('Revision'), $this->t('Operations')];
 
     $revert_permission = (($account->hasPermission("revert $type revisions") || $account->hasPermission('revert all revisions') || $account->hasPermission('administer nodes')) && $node->access('update'));
     $delete_permission = (($account->hasPermission("delete $type revisions") || $account->hasPermission('delete all revisions') || $account->hasPermission('administer nodes')) && $node->access('delete'));
 
-    $rows = array();
+    $rows = [];
     $default_revision = $node->getRevisionId();
 
     foreach ($this->getRevisionIds($node, $node_storage) as $vid) {
@@ -254,17 +254,17 @@ public function revisionOverview(NodeInterface $node) {
       }
     }
 
-    $build['node_revisions_table'] = array(
+    $build['node_revisions_table'] = [
       '#theme' => 'table',
       '#rows' => $rows,
       '#header' => $header,
-      '#attached' => array(
-        'library' => array('node/drupal.node.admin'),
-      ),
+      '#attached' => [
+        'library' => ['node/drupal.node.admin'],
+      ],
       '#attributes' => ['class' => 'node-revision-table'],
-    );
+    ];
 
-    $build['pager'] = array('#type' => 'pager');
+    $build['pager'] = ['#type' => 'pager'];
 
     return $build;
   }
@@ -279,7 +279,7 @@ public function revisionOverview(NodeInterface $node) {
    *   The page title.
    */
   public function addPageTitle(NodeTypeInterface $node_type) {
-    return $this->t('Create @name', array('@name' => $node_type->label()));
+    return $this->t('Create @name', ['@name' => $node_type->label()]);
   }
 
   /**
diff --git a/core/modules/node/src/Controller/NodeViewController.php b/core/modules/node/src/Controller/NodeViewController.php
index fce50e1..b8aa1e5 100644
--- a/core/modules/node/src/Controller/NodeViewController.php
+++ b/core/modules/node/src/Controller/NodeViewController.php
@@ -68,24 +68,24 @@ public function view(EntityInterface $node, $view_mode = 'full', $langcode = NUL
       // metadata if we have to check access.
       if ($this->currentUser->isAuthenticated() || $url->access($this->currentUser)) {
         // Set the node path as the canonical URL to prevent duplicate content.
-        $build['#attached']['html_head_link'][] = array(
-          array(
+        $build['#attached']['html_head_link'][] = [
+          [
             'rel' => $rel,
             'href' => $url->toString(),
-          ),
+          ],
           TRUE,
-        );
+        ];
       }
 
       if ($rel == 'canonical') {
         // Set the non-aliased canonical path as a default shortlink.
-        $build['#attached']['html_head_link'][] = array(
-          array(
+        $build['#attached']['html_head_link'][] = [
+          [
             'rel' => 'shortlink',
             'href' => $url->setOption('alias', TRUE)->toString(),
-          ),
+          ],
           TRUE,
-        );
+        ];
       }
     }
 
diff --git a/core/modules/node/src/Entity/Node.php b/core/modules/node/src/Entity/Node.php
index 263f7c8..c11a188 100644
--- a/core/modules/node/src/Entity/Node.php
+++ b/core/modules/node/src/Entity/Node.php
@@ -371,15 +371,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setTranslatable(TRUE)
       ->setRevisionable(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => -5,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['uid'] = BaseFieldDefinition::create('entity_reference')
@@ -389,20 +389,20 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setSetting('target_type', 'user')
       ->setDefaultValueCallback('Drupal\node\Entity\Node::getCurrentUserId')
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'author',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'entity_reference_autocomplete',
         'weight' => 5,
-        'settings' => array(
+        'settings' => [
           'match_operator' => 'CONTAINS',
           'size' => '60',
           'placeholder' => '',
-        ),
-      ))
+        ],
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['created'] = BaseFieldDefinition::create('created')
@@ -410,15 +410,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t('The time that the node was created.'))
       ->setRevisionable(TRUE)
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'timestamp',
         'weight' => 0,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'datetime_timestamp',
         'weight' => 10,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['changed'] = BaseFieldDefinition::create('changed')
@@ -432,13 +432,13 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRevisionable(TRUE)
       ->setTranslatable(TRUE)
       ->setDefaultValue(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'boolean_checkbox',
-        'settings' => array(
+        'settings' => [
           'display_label' => TRUE,
-        ),
+        ],
         'weight' => 15,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['sticky'] = BaseFieldDefinition::create('boolean')
@@ -446,13 +446,13 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRevisionable(TRUE)
       ->setTranslatable(TRUE)
       ->setDefaultValue(FALSE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'boolean_checkbox',
-        'settings' => array(
+        'settings' => [
           'display_label' => TRUE,
-        ),
+        ],
         'weight' => 16,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['revision_timestamp'] = BaseFieldDefinition::create('created')
@@ -471,13 +471,13 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t('Briefly describe the changes you have made.'))
       ->setRevisionable(TRUE)
       ->setDefaultValue('')
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textarea',
         'weight' => 25,
-        'settings' => array(
+        'settings' => [
           'rows' => 4,
-        ),
-      ));
+        ],
+      ]);
 
     $fields['revision_translation_affected'] = BaseFieldDefinition::create('boolean')
       ->setLabel(t('Revision translation affected'))
@@ -498,7 +498,7 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
    *   An array of default values.
    */
   public static function getCurrentUserId() {
-    return array(\Drupal::currentUser()->id());
+    return [\Drupal::currentUser()->id()];
   }
 
 }
diff --git a/core/modules/node/src/Entity/NodeType.php b/core/modules/node/src/Entity/NodeType.php
index 23f24a4..e4a4c3b 100644
--- a/core/modules/node/src/Entity/NodeType.php
+++ b/core/modules/node/src/Entity/NodeType.php
@@ -182,10 +182,10 @@ public function postSave(EntityStorageInterface $storage, $update = TRUE) {
         drupal_set_message(\Drupal::translation()->formatPlural($update_count,
           'Changed the content type of 1 post from %old-type to %type.',
           'Changed the content type of @count posts from %old-type to %type.',
-          array(
+          [
             '%old-type' => $this->getOriginalId(),
             '%type' => $this->id(),
-          )));
+          ]));
       }
     }
     if ($update) {
diff --git a/core/modules/node/src/Form/DeleteMultiple.php b/core/modules/node/src/Form/DeleteMultiple.php
index 7066b94..91d8ad4 100644
--- a/core/modules/node/src/Form/DeleteMultiple.php
+++ b/core/modules/node/src/Form/DeleteMultiple.php
@@ -20,7 +20,7 @@ class DeleteMultiple extends ConfirmFormBase {
    *
    * @var string[][]
    */
-  protected $nodeInfo = array();
+  protected $nodeInfo = [];
 
   /**
    * The tempstore factory.
@@ -130,10 +130,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $form['nodes'] = array(
+    $form['nodes'] = [
       '#theme' => 'item_list',
       '#items' => $items,
-    );
+    ];
     $form = parent::buildForm($form, $form_state);
 
     return $form;
@@ -167,7 +167,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
       if ($delete_nodes) {
         $this->storage->delete($delete_nodes);
-        $this->logger('content')->notice('Deleted @count posts.', array('@count' => count($delete_nodes)));
+        $this->logger('content')->notice('Deleted @count posts.', ['@count' => count($delete_nodes)]);
       }
 
       if ($delete_translations) {
@@ -182,7 +182,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         }
         if ($count) {
           $total_count += $count;
-          $this->logger('content')->notice('Deleted @count content translations.', array('@count' => $count));
+          $this->logger('content')->notice('Deleted @count content translations.', ['@count' => $count]);
         }
       }
 
diff --git a/core/modules/node/src/Form/NodeDeleteForm.php b/core/modules/node/src/Form/NodeDeleteForm.php
index 7afac86..da8c202 100644
--- a/core/modules/node/src/Form/NodeDeleteForm.php
+++ b/core/modules/node/src/Form/NodeDeleteForm.php
@@ -27,10 +27,10 @@ protected function getDeletionMessage() {
       ]);
     }
 
-    return $this->t('The @type %title has been deleted.', array(
+    return $this->t('The @type %title has been deleted.', [
       '@type' => $node_type,
       '%title' => $this->getEntity()->label(),
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/node/src/Form/NodePreviewForm.php b/core/modules/node/src/Form/NodePreviewForm.php
index 829fee1..8b6125b 100644
--- a/core/modules/node/src/Form/NodePreviewForm.php
+++ b/core/modules/node/src/Form/NodePreviewForm.php
@@ -72,18 +72,18 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, EntityInterface $node = NULL) {
     $view_mode = $node->preview_view_mode;
 
-    $query_options = array('query' => array('uuid' => $node->uuid()));
+    $query_options = ['query' => ['uuid' => $node->uuid()]];
     $query = $this->getRequest()->query;
     if ($query->has('destination')) {
       $query_options['query']['destination'] = $query->get('destination');
     }
 
-    $form['backlink'] = array(
+    $form['backlink'] = [
       '#type' => 'link',
       '#title' => $this->t('Back to content editing'),
       '#url' => $node->isNew() ? Url::fromRoute('node.add', ['node_type' => $node->bundle()]) : $node->urlInfo('edit-form'),
-      '#options' => array('attributes' => array('class' => array('node-preview-backlink'))) + $query_options,
-    );
+      '#options' => ['attributes' => ['class' => ['node-preview-backlink']]] + $query_options,
+    ];
 
     // Always show full as an option, even if the display is not enabled.
     $view_mode_options = ['full' => $this->t('Full')] + $this->entityManager->getViewModeOptionsByBundle('node', $node->bundle());
@@ -93,28 +93,28 @@ public function buildForm(array $form, FormStateInterface $form_state, EntityInt
     unset($view_mode_options['rss']);
     unset($view_mode_options['search_index']);
 
-    $form['uuid'] = array(
+    $form['uuid'] = [
       '#type' => 'value',
       '#value' => $node->uuid(),
-    );
+    ];
 
-    $form['view_mode'] = array(
+    $form['view_mode'] = [
       '#type' => 'select',
       '#title' => $this->t('View mode'),
       '#options' => $view_mode_options,
       '#default_value' => $view_mode,
-      '#attributes' => array(
+      '#attributes' => [
         'data-drupal-autosubmit' => TRUE,
-      )
-    );
+      ]
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Switch'),
-      '#attributes' => array(
-        'class' => array('js-hide'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['js-hide'],
+      ],
+    ];
 
     return $form;
   }
diff --git a/core/modules/node/src/Form/NodeRevisionDeleteForm.php b/core/modules/node/src/Form/NodeRevisionDeleteForm.php
index 27eec48..86e5b59 100644
--- a/core/modules/node/src/Form/NodeRevisionDeleteForm.php
+++ b/core/modules/node/src/Form/NodeRevisionDeleteForm.php
@@ -81,14 +81,14 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return t('Are you sure you want to delete the revision from %revision-date?', array('%revision-date' => format_date($this->revision->getRevisionCreationTime())));
+    return t('Are you sure you want to delete the revision from %revision-date?', ['%revision-date' => format_date($this->revision->getRevisionCreationTime())]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('entity.node.version_history', array('node' => $this->revision->id()));
+    return new Url('entity.node.version_history', ['node' => $this->revision->id()]);
   }
 
   /**
@@ -114,17 +114,17 @@ public function buildForm(array $form, FormStateInterface $form_state, $node_rev
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->nodeStorage->deleteRevision($this->revision->getRevisionId());
 
-    $this->logger('content')->notice('@type: deleted %title revision %revision.', array('@type' => $this->revision->bundle(), '%title' => $this->revision->label(), '%revision' => $this->revision->getRevisionId()));
+    $this->logger('content')->notice('@type: deleted %title revision %revision.', ['@type' => $this->revision->bundle(), '%title' => $this->revision->label(), '%revision' => $this->revision->getRevisionId()]);
     $node_type = $this->nodeTypeStorage->load($this->revision->bundle())->label();
-    drupal_set_message(t('Revision from %revision-date of @type %title has been deleted.', array('%revision-date' => format_date($this->revision->getRevisionCreationTime()), '@type' => $node_type, '%title' => $this->revision->label())));
+    drupal_set_message(t('Revision from %revision-date of @type %title has been deleted.', ['%revision-date' => format_date($this->revision->getRevisionCreationTime()), '@type' => $node_type, '%title' => $this->revision->label()]));
     $form_state->setRedirect(
       'entity.node.canonical',
-      array('node' => $this->revision->id())
+      ['node' => $this->revision->id()]
     );
-    if ($this->connection->query('SELECT COUNT(DISTINCT vid) FROM {node_field_revision} WHERE nid = :nid', array(':nid' => $this->revision->id()))->fetchField() > 1) {
+    if ($this->connection->query('SELECT COUNT(DISTINCT vid) FROM {node_field_revision} WHERE nid = :nid', [':nid' => $this->revision->id()])->fetchField() > 1) {
       $form_state->setRedirect(
         'entity.node.version_history',
-        array('node' => $this->revision->id())
+        ['node' => $this->revision->id()]
       );
     }
   }
diff --git a/core/modules/node/src/Form/NodeRevisionRevertForm.php b/core/modules/node/src/Form/NodeRevisionRevertForm.php
index 275d55b..09aab6f 100644
--- a/core/modules/node/src/Form/NodeRevisionRevertForm.php
+++ b/core/modules/node/src/Form/NodeRevisionRevertForm.php
@@ -77,7 +77,7 @@ public function getQuestion() {
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('entity.node.version_history', array('node' => $this->revision->id()));
+    return new Url('entity.node.version_history', ['node' => $this->revision->id()]);
   }
 
   /**
@@ -120,7 +120,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     drupal_set_message(t('@type %title has been reverted to the revision from %revision-date.', ['@type' => node_get_type_label($this->revision), '%title' => $this->revision->label(), '%revision-date' => $this->dateFormatter->format($original_revision_timestamp)]));
     $form_state->setRedirect(
       'entity.node.version_history',
-      array('node' => $this->revision->id())
+      ['node' => $this->revision->id()]
     );
   }
 
diff --git a/core/modules/node/src/Form/NodeRevisionRevertTranslationForm.php b/core/modules/node/src/Form/NodeRevisionRevertTranslationForm.php
index 05a4f6c..fd20dad 100644
--- a/core/modules/node/src/Form/NodeRevisionRevertTranslationForm.php
+++ b/core/modules/node/src/Form/NodeRevisionRevertTranslationForm.php
@@ -82,11 +82,11 @@ public function buildForm(array $form, FormStateInterface $form_state, $node_rev
     $this->langcode = $langcode;
     $form = parent::buildForm($form, $form_state, $node_revision);
 
-    $form['revert_untranslated_fields'] = array(
+    $form['revert_untranslated_fields'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Revert content shared among translations'),
       '#default_value' => FALSE,
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/node/src/Form/NodeTypeDeleteConfirm.php b/core/modules/node/src/Form/NodeTypeDeleteConfirm.php
index 50abec1..e4bea83 100644
--- a/core/modules/node/src/Form/NodeTypeDeleteConfirm.php
+++ b/core/modules/node/src/Form/NodeTypeDeleteConfirm.php
@@ -19,9 +19,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ->count()
       ->execute();
     if ($num_nodes) {
-      $caption = '<p>' . $this->formatPlural($num_nodes, '%type is used by 1 piece of content on your site. You can not remove this content type until you have removed all of the %type content.', '%type is used by @count pieces of content on your site. You may not remove %type until you have removed all of the %type content.', array('%type' => $this->entity->label())) . '</p>';
+      $caption = '<p>' . $this->formatPlural($num_nodes, '%type is used by 1 piece of content on your site. You can not remove this content type until you have removed all of the %type content.', '%type is used by @count pieces of content on your site. You may not remove %type until you have removed all of the %type content.', ['%type' => $this->entity->label()]) . '</p>';
       $form['#title'] = $this->getQuestion();
-      $form['description'] = array('#markup' => $caption);
+      $form['description'] = ['#markup' => $caption];
       return $form;
     }
 
diff --git a/core/modules/node/src/NodeAccessControlHandler.php b/core/modules/node/src/NodeAccessControlHandler.php
index 89b8169..a8a0bc6 100644
--- a/core/modules/node/src/NodeAccessControlHandler.php
+++ b/core/modules/node/src/NodeAccessControlHandler.php
@@ -73,7 +73,7 @@ public function access(EntityInterface $entity, $operation, AccountInterface $ac
   /**
    * {@inheritdoc}
    */
-  public function createAccess($entity_bundle = NULL, AccountInterface $account = NULL, array $context = array(), $return_as_object = FALSE) {
+  public function createAccess($entity_bundle = NULL, AccountInterface $account = NULL, array $context = [], $return_as_object = FALSE) {
     $account = $this->prepareUser($account);
 
     if ($account->hasPermission('bypass node access')) {
@@ -121,13 +121,13 @@ protected function checkCreateAccess(AccountInterface $account, array $context,
   protected function checkFieldAccess($operation, FieldDefinitionInterface $field_definition, AccountInterface $account, FieldItemListInterface $items = NULL) {
     // Only users with the administer nodes permission can edit administrative
     // fields.
-    $administrative_fields = array('uid', 'status', 'created', 'promote', 'sticky');
+    $administrative_fields = ['uid', 'status', 'created', 'promote', 'sticky'];
     if ($operation == 'edit' && in_array($field_definition->getName(), $administrative_fields, TRUE)) {
       return AccessResult::allowedIfHasPermission($account, 'administer nodes');
     }
 
     // No user can change read only fields.
-    $read_only_fields = array('revision_timestamp', 'revision_uid');
+    $read_only_fields = ['revision_timestamp', 'revision_uid'];
     if ($operation == 'edit' && in_array($field_definition->getName(), $read_only_fields, TRUE)) {
       return AccessResult::forbidden();
     }
@@ -147,12 +147,12 @@ protected function checkFieldAccess($operation, FieldDefinitionInterface $field_
    * {@inheritdoc}
    */
   public function acquireGrants(NodeInterface $node) {
-    $grants = $this->moduleHandler->invokeAll('node_access_records', array($node));
+    $grants = $this->moduleHandler->invokeAll('node_access_records', [$node]);
     // Let modules alter the grants.
     $this->moduleHandler->alter('node_access_records', $grants, $node);
     // If no grants are set and the node is published, then use the default grant.
     if (empty($grants) && $node->isPublished()) {
-      $grants[] = array('realm' => 'all', 'gid' => 0, 'grant_view' => 1, 'grant_update' => 0, 'grant_delete' => 0);
+      $grants[] = ['realm' => 'all', 'gid' => 0, 'grant_view' => 1, 'grant_update' => 0, 'grant_delete' => 0];
     }
     return $grants;
   }
diff --git a/core/modules/node/src/NodeForm.php b/core/modules/node/src/NodeForm.php
index bb58377..9d2ce6d 100644
--- a/core/modules/node/src/NodeForm.php
+++ b/core/modules/node/src/NodeForm.php
@@ -86,33 +86,33 @@ public function form(array $form, FormStateInterface $form_state) {
     $node = $this->entity;
 
     if ($this->operation == 'edit') {
-      $form['#title'] = $this->t('<em>Edit @type</em> @title', array('@type' => node_get_type_label($node), '@title' => $node->label()));
+      $form['#title'] = $this->t('<em>Edit @type</em> @title', ['@type' => node_get_type_label($node), '@title' => $node->label()]);
     }
 
     // Changed must be sent to the client, for later overwrite error checking.
-    $form['changed'] = array(
+    $form['changed'] = [
       '#type' => 'hidden',
       '#default_value' => $node->getChangedTime(),
-    );
+    ];
 
     $form = parent::form($form, $form_state);
 
     $form['advanced']['#attributes']['class'][] = 'entity-meta';
 
     // Node author information for administrators.
-    $form['author'] = array(
+    $form['author'] = [
       '#type' => 'details',
       '#title' => t('Authoring information'),
       '#group' => 'advanced',
-      '#attributes' => array(
-        'class' => array('node-form-author'),
-      ),
-      '#attached' => array(
-        'library' => array('node/drupal.node'),
-      ),
+      '#attributes' => [
+        'class' => ['node-form-author'],
+      ],
+      '#attached' => [
+        'library' => ['node/drupal.node'],
+      ],
       '#weight' => 90,
       '#optional' => TRUE,
-    );
+    ];
 
     if (isset($form['uid'])) {
       $form['uid']['#group'] = 'author';
@@ -123,19 +123,19 @@ public function form(array $form, FormStateInterface $form_state) {
     }
 
     // Node options for administrators.
-    $form['options'] = array(
+    $form['options'] = [
       '#type' => 'details',
       '#title' => t('Promotion options'),
       '#group' => 'advanced',
-      '#attributes' => array(
-        'class' => array('node-form-options'),
-      ),
-      '#attached' => array(
-        'library' => array('node/drupal.node'),
-      ),
+      '#attributes' => [
+        'class' => ['node-form-options'],
+      ],
+      '#attached' => [
+        'library' => ['node/drupal.node'],
+      ],
       '#weight' => 95,
       '#optional' => TRUE,
-    );
+    ];
 
     if (isset($form['promote'])) {
       $form['promote']['#group'] = 'options';
@@ -236,13 +236,13 @@ protected function actions(array $form, FormStateInterface $form_state) {
       $element['submit']['#access'] = FALSE;
     }
 
-    $element['preview'] = array(
+    $element['preview'] = [
       '#type' => 'submit',
       '#access' => $preview_mode != DRUPAL_DISABLED && ($node->access('create') || $node->access('update')),
       '#value' => t('Preview'),
       '#weight' => 20,
-      '#submit' => array('::submitForm', '::preview'),
-    );
+      '#submit' => ['::submitForm', '::preview'],
+    ];
 
     $element['delete']['#access'] = $node->access('delete');
     $element['delete']['#weight'] = 100;
@@ -285,8 +285,8 @@ public function save(array $form, FormStateInterface $form_state) {
     $insert = $node->isNew();
     $node->save();
     $node_link = $node->link($this->t('View'));
-    $context = array('@type' => $node->getType(), '%title' => $node->label(), 'link' => $node_link);
-    $t_args = array('@type' => node_get_type_label($node), '%title' => $node->link($node->label()));
+    $context = ['@type' => $node->getType(), '%title' => $node->label(), 'link' => $node_link];
+    $t_args = ['@type' => node_get_type_label($node), '%title' => $node->link($node->label())];
 
     if ($insert) {
       $this->logger('content')->notice('@type: added %title.', $context);
@@ -303,7 +303,7 @@ public function save(array $form, FormStateInterface $form_state) {
       if ($node->access('view')) {
         $form_state->setRedirect(
           'entity.node.canonical',
-          array('node' => $node->id())
+          ['node' => $node->id()]
         );
       }
       else {
diff --git a/core/modules/node/src/NodeGrantDatabaseStorage.php b/core/modules/node/src/NodeGrantDatabaseStorage.php
index a0a1337..993d095 100644
--- a/core/modules/node/src/NodeGrantDatabaseStorage.php
+++ b/core/modules/node/src/NodeGrantDatabaseStorage.php
@@ -161,7 +161,7 @@ public function alterQuery($query, array $tables, $op, AccountInterface $account
       if (!($table instanceof SelectInterface) && $table == $base_table) {
         // Set the subquery.
         $subquery = $this->database->select('node_access', 'na')
-          ->fields('na', array('nid'));
+          ->fields('na', ['nid']);
 
         // If any grant exists for the specified user, then user has access to the
         // node for the specified operation.
@@ -202,13 +202,13 @@ public function write(NodeInterface $node, array $grants, $realm = NULL, $delete
     if ($delete) {
       $query = $this->database->delete('node_access')->condition('nid', $node->id());
       if ($realm) {
-        $query->condition('realm', array($realm, 'all'), 'IN');
+        $query->condition('realm', [$realm, 'all'], 'IN');
       }
       $query->execute();
     }
     // Only perform work when node_access modules are active.
     if (!empty($grants) && count($this->moduleHandler->getImplementations('node_grants'))) {
-      $query = $this->database->insert('node_access')->fields(array('nid', 'langcode', 'fallback', 'realm', 'gid', 'grant_view', 'grant_update', 'grant_delete'));
+      $query = $this->database->insert('node_access')->fields(['nid', 'langcode', 'fallback', 'realm', 'gid', 'grant_view', 'grant_update', 'grant_delete']);
       // If we have defined a granted langcode, use it. But if not, add a grant
       // for every language this node is translated to.
       foreach ($grants as $grant) {
@@ -216,7 +216,7 @@ public function write(NodeInterface $node, array $grants, $realm = NULL, $delete
           continue;
         }
         if (isset($grant['langcode'])) {
-          $grant_languages = array($grant['langcode'] => $this->languageManager->getLanguage($grant['langcode']));
+          $grant_languages = [$grant['langcode'] => $this->languageManager->getLanguage($grant['langcode'])];
         }
         else {
           $grant_languages = $node->getTranslationLanguages(TRUE);
@@ -253,14 +253,14 @@ public function delete() {
    */
   public function writeDefault() {
     $this->database->insert('node_access')
-      ->fields(array(
+      ->fields([
           'nid' => 0,
           'realm' => 'all',
           'gid' => 0,
           'grant_view' => 1,
           'grant_update' => 0,
           'grant_delete' => 0,
-        ))
+        ])
       ->execute();
   }
 
diff --git a/core/modules/node/src/NodeListBuilder.php b/core/modules/node/src/NodeListBuilder.php
index 921ac9f..6266649 100644
--- a/core/modules/node/src/NodeListBuilder.php
+++ b/core/modules/node/src/NodeListBuilder.php
@@ -68,27 +68,27 @@ public static function createInstance(ContainerInterface $container, EntityTypeI
    */
   public function buildHeader() {
     // Enable language column and filter if multiple languages are added.
-    $header = array(
+    $header = [
       'title' => $this->t('Title'),
-      'type' => array(
+      'type' => [
         'data' => $this->t('Content type'),
-        'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-      ),
-      'author' => array(
+        'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+      ],
+      'author' => [
         'data' => $this->t('Author'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
       'status' => $this->t('Status'),
-      'changed' => array(
+      'changed' => [
         'data' => $this->t('Updated'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-    );
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+    ];
     if (\Drupal::languageManager()->isMultilingual()) {
-      $header['language_name'] = array(
+      $header['language_name'] = [
         'data' => $this->t('Language'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      );
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ];
     }
     return $header + parent::buildHeader();
   }
@@ -98,26 +98,26 @@ public function buildHeader() {
    */
   public function buildRow(EntityInterface $entity) {
     /** @var \Drupal\node\NodeInterface $entity */
-    $mark = array(
+    $mark = [
       '#theme' => 'mark',
       '#mark_type' => node_mark($entity->id(), $entity->getChangedTime()),
-    );
+    ];
     $langcode = $entity->language()->getId();
     $uri = $entity->urlInfo();
     $options = $uri->getOptions();
-    $options += ($langcode != LanguageInterface::LANGCODE_NOT_SPECIFIED && isset($languages[$langcode]) ? array('language' => $languages[$langcode]) : array());
+    $options += ($langcode != LanguageInterface::LANGCODE_NOT_SPECIFIED && isset($languages[$langcode]) ? ['language' => $languages[$langcode]] : []);
     $uri->setOptions($options);
-    $row['title']['data'] = array(
+    $row['title']['data'] = [
       '#type' => 'link',
       '#title' => $entity->label(),
       '#suffix' => ' ' . drupal_render($mark),
       '#url' => $uri,
-    );
+    ];
     $row['type'] = node_get_type_label($entity);
-    $row['author']['data'] = array(
+    $row['author']['data'] = [
       '#theme' => 'username',
       '#account' => $entity->getOwner(),
-    );
+    ];
     $row['status'] = $entity->isPublished() ? $this->t('published') : $this->t('not published');
     $row['changed'] = $this->dateFormatter->format($entity->getChangedTime(), 'short');
     $language_manager = \Drupal::languageManager();
diff --git a/core/modules/node/src/NodePermissions.php b/core/modules/node/src/NodePermissions.php
index 0bc0cde..1996360 100644
--- a/core/modules/node/src/NodePermissions.php
+++ b/core/modules/node/src/NodePermissions.php
@@ -22,7 +22,7 @@ class NodePermissions {
    *   @see \Drupal\user\PermissionHandlerInterface::getPermissions()
    */
   public function nodeTypePermissions() {
-    $perms = array();
+    $perms = [];
     // Generate node permissions for all node types.
     foreach (NodeType::loadMultiple() as $type) {
       $perms += $this->buildPermissions($type);
@@ -42,37 +42,37 @@ public function nodeTypePermissions() {
    */
   protected function buildPermissions(NodeType $type) {
     $type_id = $type->id();
-    $type_params = array('%type_name' => $type->label());
+    $type_params = ['%type_name' => $type->label()];
 
-    return array(
-      "create $type_id content" => array(
+    return [
+      "create $type_id content" => [
         'title' => $this->t('%type_name: Create new content', $type_params),
-      ),
-      "edit own $type_id content" => array(
+      ],
+      "edit own $type_id content" => [
         'title' => $this->t('%type_name: Edit own content', $type_params),
-      ),
-      "edit any $type_id content" => array(
+      ],
+      "edit any $type_id content" => [
         'title' => $this->t('%type_name: Edit any content', $type_params),
-      ),
-      "delete own $type_id content" => array(
+      ],
+      "delete own $type_id content" => [
         'title' => $this->t('%type_name: Delete own content', $type_params),
-      ),
-      "delete any $type_id content" => array(
+      ],
+      "delete any $type_id content" => [
         'title' => $this->t('%type_name: Delete any content', $type_params),
-      ),
-      "view $type_id revisions" => array(
+      ],
+      "view $type_id revisions" => [
         'title' => $this->t('%type_name: View revisions', $type_params),
         'description' => t('To view a revision, you also need permission to view the content item.'),
-      ),
-      "revert $type_id revisions" => array(
+      ],
+      "revert $type_id revisions" => [
         'title' => $this->t('%type_name: Revert revisions', $type_params),
         'description' => t('To revert a revision, you also need permission to edit the content item.'),
-      ),
-      "delete $type_id revisions" => array(
+      ],
+      "delete $type_id revisions" => [
         'title' => $this->t('%type_name: Delete revisions', $type_params),
         'description' => $this->t('To delete a revision, you also need permission to delete the content item.'),
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/node/src/NodeStorage.php b/core/modules/node/src/NodeStorage.php
index 3c72093..af85a06 100644
--- a/core/modules/node/src/NodeStorage.php
+++ b/core/modules/node/src/NodeStorage.php
@@ -20,7 +20,7 @@ class NodeStorage extends SqlContentEntityStorage implements NodeStorageInterfac
   public function revisionIds(NodeInterface $node) {
     return $this->database->query(
       'SELECT vid FROM {node_revision} WHERE nid=:nid ORDER BY vid',
-      array(':nid' => $node->id())
+      [':nid' => $node->id()]
     )->fetchCol();
   }
 
@@ -30,7 +30,7 @@ public function revisionIds(NodeInterface $node) {
   public function userRevisionIds(AccountInterface $account) {
     return $this->database->query(
       'SELECT vid FROM {node_field_revision} WHERE uid = :uid ORDER BY vid',
-      array(':uid' => $account->id())
+      [':uid' => $account->id()]
     )->fetchCol();
   }
 
@@ -38,7 +38,7 @@ public function userRevisionIds(AccountInterface $account) {
    * {@inheritdoc}
    */
   public function countDefaultLanguageRevisions(NodeInterface $node) {
-    return $this->database->query('SELECT COUNT(*) FROM {node_field_revision} WHERE nid = :nid AND default_langcode = 1', array(':nid' => $node->id()))->fetchField();
+    return $this->database->query('SELECT COUNT(*) FROM {node_field_revision} WHERE nid = :nid AND default_langcode = 1', [':nid' => $node->id()])->fetchField();
   }
 
   /**
@@ -46,7 +46,7 @@ public function countDefaultLanguageRevisions(NodeInterface $node) {
    */
   public function updateType($old_type, $new_type) {
     return $this->database->update('node')
-      ->fields(array('type' => $new_type))
+      ->fields(['type' => $new_type])
       ->condition('type', $old_type)
       ->execute();
   }
@@ -56,7 +56,7 @@ public function updateType($old_type, $new_type) {
    */
   public function clearRevisionsLanguage(LanguageInterface $language) {
     return $this->database->update('node_revision')
-      ->fields(array('langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED))
+      ->fields(['langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED])
       ->condition('langcode', $language->getId())
       ->execute();
   }
diff --git a/core/modules/node/src/NodeStorageSchema.php b/core/modules/node/src/NodeStorageSchema.php
index 18d6303..ac45bb5 100644
--- a/core/modules/node/src/NodeStorageSchema.php
+++ b/core/modules/node/src/NodeStorageSchema.php
@@ -17,10 +17,10 @@ class NodeStorageSchema extends SqlContentEntityStorageSchema {
   protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $reset = FALSE) {
     $schema = parent::getEntitySchema($entity_type, $reset);
 
-    $schema['node_field_data']['indexes'] += array(
-      'node__frontpage' => array('promote', 'status', 'sticky', 'created'),
-      'node__title_type' => array('title', array('type', 4)),
-    );
+    $schema['node_field_data']['indexes'] += [
+      'node__frontpage' => ['promote', 'status', 'sticky', 'created'],
+      'node__title_type' => ['title', ['type', 4]],
+    ];
 
     return $schema;
   }
diff --git a/core/modules/node/src/NodeTranslationHandler.php b/core/modules/node/src/NodeTranslationHandler.php
index 2f6d2ab..ead0d5d 100644
--- a/core/modules/node/src/NodeTranslationHandler.php
+++ b/core/modules/node/src/NodeTranslationHandler.php
@@ -39,7 +39,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
         }
       }
       if (isset($status_translatable)) {
-        foreach (array('publish', 'unpublish', 'submit') as $button) {
+        foreach (['publish', 'unpublish', 'submit'] as $button) {
           if (isset($form['actions'][$button])) {
             $form['actions'][$button]['#value'] .= ' ' . ($status_translatable ? t('(this translation)') : t('(all translations)'));
           }
@@ -53,7 +53,7 @@ public function entityFormAlter(array &$form, FormStateInterface $form_state, En
    */
   protected function entityFormTitle(EntityInterface $entity) {
     $type_name = node_get_type_label($entity);
-    return t('<em>Edit @type</em> @title', array('@type' => $type_name, '@title' => $entity->label()));
+    return t('<em>Edit @type</em> @title', ['@type' => $type_name, '@title' => $entity->label()]);
   }
 
   /**
diff --git a/core/modules/node/src/NodeTypeForm.php b/core/modules/node/src/NodeTypeForm.php
index d5fb998..abef502 100644
--- a/core/modules/node/src/NodeTypeForm.php
+++ b/core/modules/node/src/NodeTypeForm.php
@@ -54,134 +54,134 @@ public function form(array $form, FormStateInterface $form_state) {
       // get the default values for workflow settings.
       // @todo Make it possible to get default values without an entity.
       //   https://www.drupal.org/node/2318187
-      $node = $this->entityManager->getStorage('node')->create(array('type' => $type->uuid()));
+      $node = $this->entityManager->getStorage('node')->create(['type' => $type->uuid()]);
     }
     else {
-      $form['#title'] = $this->t('Edit %label content type', array('%label' => $type->label()));
+      $form['#title'] = $this->t('Edit %label content type', ['%label' => $type->label()]);
       $fields = $this->entityManager->getFieldDefinitions('node', $type->id());
       // Create a node to get the current values for workflow settings fields.
-      $node = $this->entityManager->getStorage('node')->create(array('type' => $type->id()));
+      $node = $this->entityManager->getStorage('node')->create(['type' => $type->id()]);
     }
 
-    $form['name'] = array(
+    $form['name'] = [
       '#title' => t('Name'),
       '#type' => 'textfield',
       '#default_value' => $type->label(),
       '#description' => t('The human-readable name of this content type. This text will be displayed as part of the list on the <em>Add content</em> page. This name must be unique.'),
       '#required' => TRUE,
       '#size' => 30,
-    );
+    ];
 
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'machine_name',
       '#default_value' => $type->id(),
       '#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
       '#disabled' => $type->isLocked(),
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => ['Drupal\node\Entity\NodeType', 'load'],
-        'source' => array('name'),
-      ),
-      '#description' => t('A unique machine-readable name for this content type. It must only contain lowercase letters, numbers, and underscores. This name will be used for constructing the URL of the %node-add page, in which underscores will be converted into hyphens.', array(
+        'source' => ['name'],
+      ],
+      '#description' => t('A unique machine-readable name for this content type. It must only contain lowercase letters, numbers, and underscores. This name will be used for constructing the URL of the %node-add page, in which underscores will be converted into hyphens.', [
         '%node-add' => t('Add content'),
-      )),
-    );
+      ]),
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#title' => t('Description'),
       '#type' => 'textarea',
       '#default_value' => $type->getDescription(),
       '#description' => t('This text will be displayed on the <em>Add new content</em> page.'),
-    );
+    ];
 
-    $form['additional_settings'] = array(
+    $form['additional_settings'] = [
       '#type' => 'vertical_tabs',
-      '#attached' => array(
-        'library' => array('node/drupal.content_types'),
-      ),
-    );
+      '#attached' => [
+        'library' => ['node/drupal.content_types'],
+      ],
+    ];
 
-    $form['submission'] = array(
+    $form['submission'] = [
       '#type' => 'details',
       '#title' => t('Submission form settings'),
       '#group' => 'additional_settings',
       '#open' => TRUE,
-    );
-    $form['submission']['title_label'] = array(
+    ];
+    $form['submission']['title_label'] = [
       '#title' => t('Title field label'),
       '#type' => 'textfield',
       '#default_value' => $fields['title']->getLabel(),
       '#required' => TRUE,
-    );
-    $form['submission']['preview_mode'] = array(
+    ];
+    $form['submission']['preview_mode'] = [
       '#type' => 'radios',
       '#title' => t('Preview before submitting'),
       '#default_value' => $type->getPreviewMode(),
-      '#options' => array(
+      '#options' => [
         DRUPAL_DISABLED => t('Disabled'),
         DRUPAL_OPTIONAL => t('Optional'),
         DRUPAL_REQUIRED => t('Required'),
-      ),
-    );
-    $form['submission']['help']  = array(
+      ],
+    ];
+    $form['submission']['help']  = [
       '#type' => 'textarea',
       '#title' => t('Explanation or submission guidelines'),
       '#default_value' => $type->getHelp(),
       '#description' => t('This text will be displayed at the top of the page when creating or editing content of this type.'),
-    );
-    $form['workflow'] = array(
+    ];
+    $form['workflow'] = [
       '#type' => 'details',
       '#title' => t('Publishing options'),
       '#group' => 'additional_settings',
-    );
-    $workflow_options = array(
+    ];
+    $workflow_options = [
       'status' => $node->status->value,
       'promote' => $node->promote->value,
       'sticky' => $node->sticky->value,
       'revision' => $type->isNewRevision(),
-    );
+    ];
     // Prepare workflow options to be used for 'checkboxes' form element.
     $keys = array_keys(array_filter($workflow_options));
     $workflow_options = array_combine($keys, $keys);
-    $form['workflow']['options'] = array(
+    $form['workflow']['options'] = [
       '#type' => 'checkboxes',
       '#title' => t('Default options'),
       '#default_value' => $workflow_options,
-      '#options' => array(
+      '#options' => [
         'status' => t('Published'),
         'promote' => t('Promoted to front page'),
         'sticky' => t('Sticky at top of lists'),
         'revision' => t('Create new revision'),
-      ),
+      ],
       '#description' => t('Users with the <em>Administer content</em> permission will be able to override these options.'),
-    );
+    ];
     if ($this->moduleHandler->moduleExists('language')) {
-      $form['language'] = array(
+      $form['language'] = [
         '#type' => 'details',
         '#title' => t('Language settings'),
         '#group' => 'additional_settings',
-      );
+      ];
 
       $language_configuration = ContentLanguageSettings::loadByEntityTypeBundle('node', $type->id());
-      $form['language']['language_configuration'] = array(
+      $form['language']['language_configuration'] = [
         '#type' => 'language_configuration',
-        '#entity_information' => array(
+        '#entity_information' => [
           'entity_type' => 'node',
           'bundle' => $type->id(),
-        ),
+        ],
         '#default_value' => $language_configuration,
-      );
+      ];
     }
-    $form['display'] = array(
+    $form['display'] = [
       '#type' => 'details',
       '#title' => t('Display settings'),
       '#group' => 'additional_settings',
-    );
-    $form['display']['display_submitted'] = array(
+    ];
+    $form['display']['display_submitted'] = [
       '#type' => 'checkbox',
       '#title' => t('Display author and date information'),
       '#default_value' => $type->displaySubmitted(),
       '#description' => t('Author username and publish date will be displayed.'),
-    );
+    ];
 
     return $this->protectBundleIdElement($form);
   }
@@ -205,7 +205,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     $id = trim($form_state->getValue('type'));
     // '0' is invalid, since elsewhere we check it using empty().
     if ($id == '0') {
-      $form_state->setErrorByName('type', $this->t("Invalid machine-readable name. Enter a name other than %invalid.", array('%invalid' => $id)));
+      $form_state->setErrorByName('type', $this->t("Invalid machine-readable name. Enter a name other than %invalid.", ['%invalid' => $id]));
     }
   }
 
@@ -214,13 +214,13 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
    */
   public function save(array $form, FormStateInterface $form_state) {
     $type = $this->entity;
-    $type->setNewRevision($form_state->getValue(array('options', 'revision')));
+    $type->setNewRevision($form_state->getValue(['options', 'revision']));
     $type->set('type', trim($type->id()));
     $type->set('name', trim($type->label()));
 
     $status = $type->save();
 
-    $t_args = array('%name' => $type->label());
+    $t_args = ['%name' => $type->label()];
 
     if ($status == SAVED_UPDATED) {
       drupal_set_message(t('The content type %name has been updated.', $t_args));
@@ -228,7 +228,7 @@ public function save(array $form, FormStateInterface $form_state) {
     elseif ($status == SAVED_NEW) {
       node_add_body_field($type);
       drupal_set_message(t('The content type %name has been added.', $t_args));
-      $context = array_merge($t_args, array('link' => $type->link($this->t('View'), 'collection')));
+      $context = array_merge($t_args, ['link' => $type->link($this->t('View'), 'collection')]);
       $this->logger('node')->notice('Added content type %name.', $context);
     }
 
@@ -242,8 +242,8 @@ public function save(array $form, FormStateInterface $form_state) {
     // Update workflow options.
     // @todo Make it possible to get default values without an entity.
     //   https://www.drupal.org/node/2318187
-    $node = $this->entityManager->getStorage('node')->create(array('type' => $type->id()));
-    foreach (array('status', 'promote', 'sticky') as $field_name) {
+    $node = $this->entityManager->getStorage('node')->create(['type' => $type->id()]);
+    foreach (['status', 'promote', 'sticky'] as $field_name) {
       $value = (bool) $form_state->getValue(['options', $field_name]);
       if ($node->$field_name->value != $value) {
         $fields[$field_name]->getConfig($type->id())->setDefaultValue($value)->save();
diff --git a/core/modules/node/src/NodeTypeListBuilder.php b/core/modules/node/src/NodeTypeListBuilder.php
index bdd0874..be6e5f6 100644
--- a/core/modules/node/src/NodeTypeListBuilder.php
+++ b/core/modules/node/src/NodeTypeListBuilder.php
@@ -18,10 +18,10 @@ class NodeTypeListBuilder extends ConfigEntityListBuilder {
    */
   public function buildHeader() {
     $header['title'] = t('Name');
-    $header['description'] = array(
+    $header['description'] = [
       'data' => t('Description'),
-      'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-    );
+      'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+    ];
     return $header + parent::buildHeader();
   }
 
@@ -29,10 +29,10 @@ public function buildHeader() {
    * {@inheritdoc}
    */
   public function buildRow(EntityInterface $entity) {
-    $row['title'] = array(
+    $row['title'] = [
       'data' => $entity->label(),
-      'class' => array('menu-label'),
-    );
+      'class' => ['menu-label'],
+    ];
     $row['description']['data'] = ['#markup' => $entity->getDescription()];
     return $row + parent::buildRow($entity);
   }
diff --git a/core/modules/node/src/NodeViewBuilder.php b/core/modules/node/src/NodeViewBuilder.php
index c65250e..f96302b 100644
--- a/core/modules/node/src/NodeViewBuilder.php
+++ b/core/modules/node/src/NodeViewBuilder.php
@@ -28,25 +28,25 @@ public function buildComponents(array &$build, array $entities, array $displays,
       $display = $displays[$bundle];
 
       if ($display->getComponent('links')) {
-        $build[$id]['links'] = array(
+        $build[$id]['links'] = [
           '#lazy_builder' => [get_called_class() . '::renderLinks', [
             $entity->id(),
             $view_mode,
             $entity->language()->getId(),
             !empty($entity->in_preview),
           ]],
-        );
+        ];
       }
 
       // Add Language field text element to node render array.
       if ($display->getComponent('langcode')) {
-        $build[$id]['langcode'] = array(
+        $build[$id]['langcode'] = [
           '#type' => 'item',
           '#title' => t('Language'),
           '#markup' => $entity->language()->getName(),
           '#prefix' => '<div id="field-language-display">',
           '#suffix' => '</div>'
-        );
+        ];
       }
     }
   }
@@ -81,21 +81,21 @@ protected function getBuildDefaults(EntityInterface $entity, $view_mode) {
    *   A renderable array representing the node links.
    */
   public static function renderLinks($node_entity_id, $view_mode, $langcode, $is_in_preview) {
-    $links = array(
+    $links = [
       '#theme' => 'links__node',
-      '#pre_render' => array('drupal_pre_render_links'),
-      '#attributes' => array('class' => array('links', 'inline')),
-    );
+      '#pre_render' => ['drupal_pre_render_links'],
+      '#attributes' => ['class' => ['links', 'inline']],
+    ];
 
     if (!$is_in_preview) {
       $entity = Node::load($node_entity_id)->getTranslation($langcode);
       $links['node'] = static::buildLinks($entity, $view_mode);
 
       // Allow other modules to alter the node links.
-      $hook_context = array(
+      $hook_context = [
         'view_mode' => $view_mode,
         'langcode' => $langcode,
-      );
+      ];
       \Drupal::moduleHandler()->alter('node_links', $links, $entity, $hook_context);
     }
     return $links;
@@ -113,30 +113,30 @@ public static function renderLinks($node_entity_id, $view_mode, $langcode, $is_i
    *   An array that can be processed by drupal_pre_render_links().
    */
   protected static function buildLinks(NodeInterface $entity, $view_mode) {
-    $links = array();
+    $links = [];
 
     // Always display a read more link on teasers because we have no way
     // to know when a teaser view is different than a full view.
     if ($view_mode == 'teaser') {
       $node_title_stripped = strip_tags($entity->label());
-      $links['node-readmore'] = array(
-        'title' => t('Read more<span class="visually-hidden"> about @title</span>', array(
+      $links['node-readmore'] = [
+        'title' => t('Read more<span class="visually-hidden"> about @title</span>', [
           '@title' => $node_title_stripped,
-        )),
+        ]),
         'url' => $entity->urlInfo(),
         'language' => $entity->language(),
-        'attributes' => array(
+        'attributes' => [
           'rel' => 'tag',
           'title' => $node_title_stripped,
-        ),
-      );
+        ],
+      ];
     }
 
-    return array(
+    return [
       '#theme' => 'links__node__node',
       '#links' => $links,
-      '#attributes' => array('class' => array('links', 'inline')),
-    );
+      '#attributes' => ['class' => ['links', 'inline']],
+    ];
   }
 
   /**
diff --git a/core/modules/node/src/NodeViewsData.php b/core/modules/node/src/NodeViewsData.php
index 21e1e44..b5aebf4 100644
--- a/core/modules/node/src/NodeViewsData.php
+++ b/core/modules/node/src/NodeViewsData.php
@@ -39,15 +39,15 @@ public function getViewsData() {
     // Use status = 1 instead of status <> 0 in WHERE statement.
     $data['node_field_data']['status']['filter']['use_equal'] = TRUE;
 
-    $data['node_field_data']['status_extra'] = array(
+    $data['node_field_data']['status_extra'] = [
       'title' => $this->t('Published status or admin user'),
       'help' => $this->t('Filters out unpublished content if the current user cannot view it.'),
-      'filter' => array(
+      'filter' => [
         'field' => 'status',
         'id' => 'node_status',
         'label' => $this->t('Published status or admin user'),
-      ),
-    );
+      ],
+    ];
 
     $data['node_field_data']['promote']['help'] = $this->t('A boolean indicating whether the node is visible on the front page.');
     $data['node_field_data']['promote']['filter']['label'] = $this->t('Promoted to front page status');
@@ -58,133 +58,133 @@ public function getViewsData() {
     $data['node_field_data']['sticky']['filter']['type'] = 'yes-no';
     $data['node_field_data']['sticky']['sort']['help'] = $this->t('Whether or not the content is sticky. To list sticky content first, set this to descending.');
 
-    $data['node']['path'] = array(
-      'field' => array(
+    $data['node']['path'] = [
+      'field' => [
         'title' => $this->t('Path'),
         'help' => $this->t('The aliased path to this content.'),
         'id' => 'node_path',
-      ),
-    );
+      ],
+    ];
 
-    $data['node']['node_bulk_form'] = array(
+    $data['node']['node_bulk_form'] = [
       'title' => $this->t('Node operations bulk form'),
       'help' => $this->t('Add a form element that lets you run operations on multiple nodes.'),
-      'field' => array(
+      'field' => [
         'id' => 'node_bulk_form',
-      ),
-    );
+      ],
+    ];
 
     // Bogus fields for aliasing purposes.
 
     // @todo Add similar support to any date field
     // @see https://www.drupal.org/node/2337507
-    $data['node_field_data']['created_fulldate'] = array(
+    $data['node_field_data']['created_fulldate'] = [
       'title' => $this->t('Created date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['created_year_month'] = array(
+    $data['node_field_data']['created_year_month'] = [
       'title' => $this->t('Created year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['created_year'] = array(
+    $data['node_field_data']['created_year'] = [
       'title' => $this->t('Created year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['created_month'] = array(
+    $data['node_field_data']['created_month'] = [
       'title' => $this->t('Created month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['created_day'] = array(
+    $data['node_field_data']['created_day'] = [
       'title' => $this->t('Created day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['created_week'] = array(
+    $data['node_field_data']['created_week'] = [
       'title' => $this->t('Created week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_fulldate'] = array(
+    $data['node_field_data']['changed_fulldate'] = [
       'title' => $this->t('Updated date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_year_month'] = array(
+    $data['node_field_data']['changed_year_month'] = [
       'title' => $this->t('Updated year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_year'] = array(
+    $data['node_field_data']['changed_year'] = [
       'title' => $this->t('Updated year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_month'] = array(
+    $data['node_field_data']['changed_month'] = [
       'title' => $this->t('Updated month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_day'] = array(
+    $data['node_field_data']['changed_day'] = [
       'title' => $this->t('Updated day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_data']['changed_week'] = array(
+    $data['node_field_data']['changed_week'] = [
       'title' => $this->t('Updated week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
     $data['node_field_data']['uid']['help'] = $this->t('The user authoring the content. If you need more fields than the uid add the content: author relationship');
     $data['node_field_data']['uid']['filter']['id'] = 'user_name';
@@ -192,13 +192,13 @@ public function getViewsData() {
     $data['node_field_data']['uid']['relationship']['help'] = $this->t('Relate content to the user who created it.');
     $data['node_field_data']['uid']['relationship']['label'] = $this->t('author');
 
-    $data['node']['node_listing_empty'] = array(
+    $data['node']['node_listing_empty'] = [
       'title' => $this->t('Empty Node Frontpage behavior'),
       'help' => $this->t('Provides a link to the node add overview page.'),
-      'area' => array(
+      'area' => [
         'id' => 'node_listing_empty',
-      ),
-    );
+      ],
+    ];
 
     $data['node_field_data']['uid_revision']['title'] = $this->t('User has a revision');
     $data['node_field_data']['uid_revision']['help'] = $this->t('All nodes where a certain user has a revision');
@@ -225,19 +225,19 @@ public function getViewsData() {
     $data['node_field_revision']['nid']['relationship']['title'] = $this->t('Content');
     $data['node_field_revision']['nid']['relationship']['label'] = $this->t('Get the actual content from a content revision.');
 
-    $data['node_field_revision']['vid'] = array(
-      'argument' => array(
+    $data['node_field_revision']['vid'] = [
+      'argument' => [
         'id' => 'node_vid',
         'numeric' => TRUE,
-      ),
-      'relationship' => array(
+      ],
+      'relationship' => [
         'id' => 'standard',
         'base' => 'node_field_data',
         'base field' => 'vid',
         'title' => $this->t('Content'),
         'label' => $this->t('Get the actual content from a content revision.'),
-      ),
-    ) + $data['node_field_revision']['vid'];
+      ],
+    ] + $data['node_field_revision']['vid'];
 
     $data['node_field_revision']['langcode']['help'] = $this->t('The language the original content is in.');
 
@@ -259,52 +259,52 @@ public function getViewsData() {
 
     $data['node_field_revision']['langcode']['help'] = $this->t('The language of the content or translation.');
 
-    $data['node_field_revision']['link_to_revision'] = array(
-      'field' => array(
+    $data['node_field_revision']['link_to_revision'] = [
+      'field' => [
         'title' => $this->t('Link to revision'),
         'help' => $this->t('Provide a simple link to the revision.'),
         'id' => 'node_revision_link',
         'click sortable' => FALSE,
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_revision']['revert_revision'] = array(
-      'field' => array(
+    $data['node_field_revision']['revert_revision'] = [
+      'field' => [
         'title' => $this->t('Link to revert revision'),
         'help' => $this->t('Provide a simple link to revert to the revision.'),
         'id' => 'node_revision_link_revert',
         'click sortable' => FALSE,
-      ),
-    );
+      ],
+    ];
 
-    $data['node_field_revision']['delete_revision'] = array(
-      'field' => array(
+    $data['node_field_revision']['delete_revision'] = [
+      'field' => [
         'title' => $this->t('Link to delete revision'),
         'help' => $this->t('Provide a simple link to delete the content revision.'),
         'id' => 'node_revision_link_delete',
         'click sortable' => FALSE,
-      ),
-    );
+      ],
+    ];
 
     // Define the base group of this table. Fields that don't have a group defined
     // will go into this field by default.
     $data['node_access']['table']['group']  = $this->t('Content access');
 
     // For other base tables, explain how we join.
-    $data['node_access']['table']['join'] = array(
-      'node_field_data' => array(
+    $data['node_access']['table']['join'] = [
+      'node_field_data' => [
         'left_field' => 'nid',
         'field' => 'nid',
-      ),
-    );
-    $data['node_access']['nid'] = array(
+      ],
+    ];
+    $data['node_access']['nid'] = [
       'title' => $this->t('Access'),
       'help' => $this->t('Filter by access.'),
-      'filter' => array(
+      'filter' => [
         'id' => 'node_access',
         'help' => $this->t('Filter for content by view access. <strong>Not necessary if you are using node as your base table.</strong>'),
-      ),
-    );
+      ],
+    ];
 
     // Add search table, fields, filters, etc., but only if a page using the
     // node_search plugin is enabled.
@@ -324,61 +324,61 @@ public function getViewsData() {
         // Automatically join to the node table (or actually, node_field_data).
         // Use a Views table alias to allow other modules to use this table too,
         // if they use the search index.
-        $data['node_search_index']['table']['join'] = array(
-          'node_field_data' => array(
+        $data['node_search_index']['table']['join'] = [
+          'node_field_data' => [
             'left_field' => 'nid',
             'field' => 'sid',
             'table' => 'search_index',
             'extra' => "node_search_index.type = 'node_search' AND node_search_index.langcode = node_field_data.langcode",
-          )
-        );
+          ]
+        ];
 
-        $data['node_search_total']['table']['join'] = array(
-          'node_search_index' => array(
+        $data['node_search_total']['table']['join'] = [
+          'node_search_index' => [
             'left_field' => 'word',
             'field' => 'word',
-          ),
-        );
+          ],
+        ];
 
-        $data['node_search_dataset']['table']['join'] = array(
-          'node_field_data' => array(
+        $data['node_search_dataset']['table']['join'] = [
+          'node_field_data' => [
             'left_field' => 'sid',
             'left_table' => 'node_search_index',
             'field' => 'sid',
             'table' => 'search_dataset',
             'extra' => 'node_search_index.type = node_search_dataset.type AND node_search_index.langcode = node_search_dataset.langcode',
             'type' => 'INNER',
-          ),
-        );
+          ],
+        ];
 
-        $data['node_search_index']['score'] = array(
+        $data['node_search_index']['score'] = [
           'title' => $this->t('Score'),
           'help' => $this->t('The score of the search item. This will not be used if the search filter is not also present.'),
-          'field' => array(
+          'field' => [
             'id' => 'search_score',
             'float' => TRUE,
             'no group by' => TRUE,
-          ),
-          'sort' => array(
+          ],
+          'sort' => [
             'id' => 'search_score',
             'no group by' => TRUE,
-          ),
-        );
+          ],
+        ];
 
-        $data['node_search_index']['keys'] = array(
+        $data['node_search_index']['keys'] = [
           'title' => $this->t('Search Keywords'),
           'help' => $this->t('The keywords to search for.'),
-          'filter' => array(
+          'filter' => [
             'id' => 'search_keywords',
             'no group by' => TRUE,
             'search_type' => 'node_search',
-          ),
-          'argument' => array(
+          ],
+          'argument' => [
             'id' => 'search',
             'no group by' => TRUE,
             'search_type' => 'node_search',
-          ),
-        );
+          ],
+        ];
 
       }
     }
diff --git a/core/modules/node/src/Plugin/Action/AssignOwnerNode.php b/core/modules/node/src/Plugin/Action/AssignOwnerNode.php
index 7c4412d..d9a9a43 100644
--- a/core/modules/node/src/Plugin/Action/AssignOwnerNode.php
+++ b/core/modules/node/src/Plugin/Action/AssignOwnerNode.php
@@ -67,9 +67,9 @@ public function execute($entity = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'owner_uid' => '',
-    );
+    ];
   }
 
   /**
@@ -81,34 +81,34 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
 
     // Use dropdown for fewer than 200 users; textbox for more than that.
     if (intval($count) < 200) {
-      $options = array();
+      $options = [];
       $result = $this->connection->query("SELECT uid, name FROM {users_field_data} WHERE uid > 0 AND default_langcode = 1 ORDER BY name");
       foreach ($result as $data) {
         $options[$data->uid] = $data->name;
       }
-      $form['owner_uid'] = array(
+      $form['owner_uid'] = [
         '#type' => 'select',
         '#title' => t('Username'),
         '#default_value' => $this->configuration['owner_uid'],
         '#options' => $options,
         '#description' => $description,
-      );
+      ];
     }
     else {
-      $form['owner_uid'] = array(
+      $form['owner_uid'] = [
         '#type' => 'entity_autocomplete',
         '#title' => t('Username'),
         '#target_type' => 'user',
-        '#selection_setttings' => array(
+        '#selection_setttings' => [
           'include_anonymous' => FALSE,
-        ),
+        ],
         '#default_value' => User::load($this->configuration['owner_uid']),
         // Validation is done in static::validateConfigurationForm().
         '#validate_reference' => FALSE,
         '#size' => '6',
         '#maxlength' => '60',
         '#description' => $description,
-      );
+      ];
     }
     return $form;
   }
@@ -117,7 +117,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
    * {@inheritdoc}
    */
   public function validateConfigurationForm(array &$form, FormStateInterface $form_state) {
-    $exists = (bool) $this->connection->queryRange('SELECT 1 FROM {users_field_data} WHERE uid = :uid AND default_langcode = 1', 0, 1, array(':uid' => $form_state->getValue('owner_uid')))->fetchField();
+    $exists = (bool) $this->connection->queryRange('SELECT 1 FROM {users_field_data} WHERE uid = :uid AND default_langcode = 1', 0, 1, [':uid' => $form_state->getValue('owner_uid')])->fetchField();
     if (!$exists) {
       $form_state->setErrorByName('owner_uid', t('Enter a valid username.'));
     }
diff --git a/core/modules/node/src/Plugin/Action/DeleteNode.php b/core/modules/node/src/Plugin/Action/DeleteNode.php
index 83124f1..5bf5d9e 100644
--- a/core/modules/node/src/Plugin/Action/DeleteNode.php
+++ b/core/modules/node/src/Plugin/Action/DeleteNode.php
@@ -85,7 +85,7 @@ public function executeMultiple(array $entities) {
    * {@inheritdoc}
    */
   public function execute($object = NULL) {
-    $this->executeMultiple(array($object));
+    $this->executeMultiple([$object]);
   }
 
   /**
diff --git a/core/modules/node/src/Plugin/Action/UnpublishByKeywordNode.php b/core/modules/node/src/Plugin/Action/UnpublishByKeywordNode.php
index 6ec835e..c008188 100644
--- a/core/modules/node/src/Plugin/Action/UnpublishByKeywordNode.php
+++ b/core/modules/node/src/Plugin/Action/UnpublishByKeywordNode.php
@@ -36,21 +36,21 @@ public function execute($node = NULL) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
-      'keywords' => array(),
-    );
+    return [
+      'keywords' => [],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['keywords'] = array(
+    $form['keywords'] = [
       '#title' => t('Keywords'),
       '#type' => 'textarea',
       '#description' => t('The content will be unpublished if it contains any of the phrases above. Use a case-sensitive, comma-separated list of phrases. Example: funny, bungee jumping, "Company, Inc."'),
       '#default_value' => Tags::implode($this->configuration['keywords']),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/node/src/Plugin/Block/SyndicateBlock.php b/core/modules/node/src/Plugin/Block/SyndicateBlock.php
index 07b969b..bcc98d0 100644
--- a/core/modules/node/src/Plugin/Block/SyndicateBlock.php
+++ b/core/modules/node/src/Plugin/Block/SyndicateBlock.php
@@ -21,9 +21,9 @@ class SyndicateBlock extends BlockBase {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'block_count' => 10,
-    );
+    ];
   }
 
   /**
@@ -37,10 +37,10 @@ protected function blockAccess(AccountInterface $account) {
    * {@inheritdoc}
    */
   public function build() {
-    return array(
+    return [
       '#theme' => 'feed_icon',
       '#url' => 'rss.xml',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/node/src/Plugin/Condition/NodeType.php b/core/modules/node/src/Plugin/Condition/NodeType.php
index ace42e6..dcd2dc7 100644
--- a/core/modules/node/src/Plugin/Condition/NodeType.php
+++ b/core/modules/node/src/Plugin/Condition/NodeType.php
@@ -64,17 +64,17 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $options = array();
+    $options = [];
     $node_types = $this->entityStorage->loadMultiple();
     foreach ($node_types as $type) {
       $options[$type->id()] = $type->label();
     }
-    $form['bundles'] = array(
+    $form['bundles'] = [
       '#title' => $this->t('Node types'),
       '#type' => 'checkboxes',
       '#options' => $options,
       '#default_value' => $this->configuration['bundles'],
-    );
+    ];
     return parent::buildConfigurationForm($form, $form_state);
   }
 
@@ -94,10 +94,10 @@ public function summary() {
       $bundles = $this->configuration['bundles'];
       $last = array_pop($bundles);
       $bundles = implode(', ', $bundles);
-      return $this->t('The node bundle is @bundles or @last', array('@bundles' => $bundles, '@last' => $last));
+      return $this->t('The node bundle is @bundles or @last', ['@bundles' => $bundles, '@last' => $last]);
     }
     $bundle = reset($this->configuration['bundles']);
-    return $this->t('The node bundle is @bundle', array('@bundle' => $bundle));
+    return $this->t('The node bundle is @bundle', ['@bundle' => $bundle]);
   }
 
   /**
@@ -115,7 +115,7 @@ public function evaluate() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array('bundles' => array()) + parent::defaultConfiguration();
+    return ['bundles' => []] + parent::defaultConfiguration();
   }
 
 }
diff --git a/core/modules/node/src/Plugin/Search/NodeSearch.php b/core/modules/node/src/Plugin/Search/NodeSearch.php
index ef61064..6d7c8eb 100644
--- a/core/modules/node/src/Plugin/Search/NodeSearch.php
+++ b/core/modules/node/src/Plugin/Search/NodeSearch.php
@@ -102,12 +102,12 @@ class NodeSearch extends ConfigurableSearchPluginBase implements AccessibleInter
    *
    * @var array
    */
-  protected $advanced = array(
-    'type' => array('column' => 'n.type'),
-    'language' => array('column' => 'i.langcode'),
-    'author' => array('column' => 'n.uid'),
-    'term' => array('column' => 'ti.tid', 'join' => array('table' => 'taxonomy_index', 'alias' => 'ti', 'condition' => 'n.nid = ti.nid')),
-  );
+  protected $advanced = [
+    'type' => ['column' => 'n.type'],
+    'language' => ['column' => 'i.langcode'],
+    'author' => ['column' => 'n.uid'],
+    'term' => ['column' => 'ti.tid', 'join' => ['table' => 'taxonomy_index', 'alias' => 'ti', 'condition' => 'n.nid = ti.nid']],
+  ];
 
   /**
    * A constant for setting and checking the query string.
@@ -207,7 +207,7 @@ public function execute() {
       }
     }
 
-    return array();
+    return [];
   }
 
   /**
@@ -225,7 +225,7 @@ protected function findResults() {
 
     // Build matching conditions.
     $query = $this->database
-      ->select('search_index', 'i', array('target' => 'replica'))
+      ->select('search_index', 'i', ['target' => 'replica'])
       ->extend('Drupal\search\SearchQuery')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender');
     $query->join('node_field_data', 'n', 'n.nid = i.sid AND n.langcode = i.langcode');
@@ -242,7 +242,7 @@ protected function findResults() {
     // the keywords string, and some of which are separate conditions.
     $parameters = $this->getParameters();
     if (!empty($parameters['f']) && is_array($parameters['f'])) {
-      $filters = array();
+      $filters = [];
       // Match any query value that is an expected option and a value
       // separated by ':' like 'term:27'.
       $pattern = '/^(' . implode('|', array_keys($this->advanced)) . '):([^ ]*)/i';
@@ -277,7 +277,7 @@ protected function findResults() {
     $find = $query
       // Add the language code of the indexed item to the result of the query,
       // since the node will be rendered using the respective language.
-      ->fields('i', array('langcode'))
+      ->fields('i', ['langcode'])
       // And since SearchQuery makes these into GROUP BY queries, if we add
       // a field, for PostgreSQL we also need to make it an aggregate or a
       // GROUP BY. In this case, we want GROUP BY.
@@ -289,7 +289,7 @@ protected function findResults() {
     $status = $query->getStatus();
 
     if ($status & SearchQuery::EXPRESSIONS_IGNORED) {
-      drupal_set_message($this->t('Your search used too many AND/OR expressions. Only the first @count terms were included in this search.', array('@count' => $this->searchSettings->get('and_or_limit'))), 'warning');
+      drupal_set_message($this->t('Your search used too many AND/OR expressions. Only the first @count terms were included in this search.', ['@count' => $this->searchSettings->get('and_or_limit')]), 'warning');
     }
 
     if ($status & SearchQuery::LOWER_CASE_OR) {
@@ -313,7 +313,7 @@ protected function findResults() {
    *   Array of search result item render arrays (empty array if no results).
    */
   protected function prepareResults(StatementInterface $found) {
-    $results = array();
+    $results = [];
 
     $node_storage = $this->entityManager->getStorage('node');
     $node_render = $this->entityManager->getViewBuilder('node');
@@ -329,7 +329,7 @@ protected function prepareResults(StatementInterface $found) {
       $type = $this->entityManager->getStorage('node_type')->load($node->bundle());
 
       unset($build['#theme']);
-      $build['#pre_render'][] = array($this, 'removeSubmittedInfo');
+      $build['#pre_render'][] = [$this, 'removeSubmittedInfo'];
 
       // Fetch comments for snippet.
       $rendered = $this->renderer->renderPlain($build);
@@ -339,13 +339,13 @@ protected function prepareResults(StatementInterface $found) {
       $extra = $this->moduleHandler->invokeAll('node_search_result', [$node]);
 
       $language = $this->languageManager->getLanguage($item->langcode);
-      $username = array(
+      $username = [
         '#theme' => 'username',
         '#account' => $node->getOwner(),
-      );
+      ];
 
-      $result = array(
-        'link' => $node->url('canonical', array('absolute' => TRUE, 'language' => $language)),
+      $result = [
+        'link' => $node->url('canonical', ['absolute' => TRUE, 'language' => $language]),
         'type' => $type->label(),
         'title' => $node->label(),
         'node' => $node,
@@ -353,7 +353,7 @@ protected function prepareResults(StatementInterface $found) {
         'score' => $item->calculated_score,
         'snippet' => search_excerpt($keys, $rendered, $item->langcode),
         'langcode' => $node->language()->getId(),
-      );
+      ];
 
       $this->addCacheableDependency($node);
 
@@ -364,10 +364,10 @@ protected function prepareResults(StatementInterface $found) {
       $this->addCacheableDependency($node->getOwner());
 
       if ($type->displaySubmitted()) {
-        $result += array(
+        $result += [
           'user' => $this->renderer->renderPlain($username),
           'date' => $node->getChangedTime(),
-        );
+        ];
       }
 
       $results[] = $result;
@@ -411,7 +411,7 @@ protected function addNodeRankings(SelectExtender $query) {
           if (isset($values['join']) && !isset($tables[$values['join']['alias']])) {
             $query->addJoin($values['join']['type'], $values['join']['table'], $values['join']['alias'], $values['join']['on']);
           }
-          $arguments = isset($values['arguments']) ? $values['arguments'] : array();
+          $arguments = isset($values['arguments']) ? $values['arguments'] : [];
           $query->addScore($values['score'], $arguments, $node_rank);
         }
       }
@@ -426,9 +426,9 @@ public function updateIndex() {
     // per cron run.
     $limit = (int) $this->searchSettings->get('index.cron_limit');
 
-    $query = db_select('node', 'n', array('target' => 'replica'));
+    $query = db_select('node', 'n', ['target' => 'replica']);
     $query->addField('n', 'nid');
-    $query->leftJoin('search_dataset', 'sd', 'sd.sid = n.nid AND sd.type = :type', array(':type' => $this->getPluginId()));
+    $query->leftJoin('search_dataset', 'sd', 'sd.sid = n.nid AND sd.type = :type', [':type' => $this->getPluginId()]);
     $query->addExpression('CASE MAX(sd.reindex) WHEN NULL THEN 0 ELSE 1 END', 'ex');
     $query->addExpression('MAX(sd.reindex)', 'ex2');
     $query->condition(
@@ -513,9 +513,9 @@ public function markForReindex() {
    */
   public function indexStatus() {
     $total = $this->database->query('SELECT COUNT(*) FROM {node}')->fetchField();
-    $remaining = $this->database->query("SELECT COUNT(DISTINCT n.nid) FROM {node} n LEFT JOIN {search_dataset} sd ON sd.sid = n.nid AND sd.type = :type WHERE sd.sid IS NULL OR sd.reindex <> 0", array(':type' => $this->getPluginId()))->fetchField();
+    $remaining = $this->database->query("SELECT COUNT(DISTINCT n.nid) FROM {node} n LEFT JOIN {search_dataset} sd ON sd.sid = n.nid AND sd.type = :type WHERE sd.sid IS NULL OR sd.reindex <> 0", [':type' => $this->getPluginId()])->fetchField();
 
-    return array('remaining' => $remaining, 'total' => $total);
+    return ['remaining' => $remaining, 'total' => $total];
   }
 
   /**
@@ -526,100 +526,100 @@ public function searchFormAlter(array &$form, FormStateInterface $form_state) {
     $keys = $this->getKeywords();
     $used_advanced = !empty($parameters[self::ADVANCED_FORM]);
     if ($used_advanced) {
-      $f = isset($parameters['f']) ? (array) $parameters['f'] : array();
+      $f = isset($parameters['f']) ? (array) $parameters['f'] : [];
       $defaults = $this->parseAdvancedDefaults($f, $keys);
     }
     else {
-      $defaults = array('keys' => $keys);
+      $defaults = ['keys' => $keys];
     }
 
     $form['basic']['keys']['#default_value'] = $defaults['keys'];
 
     // Add advanced search keyword-related boxes.
-    $form['advanced'] = array(
+    $form['advanced'] = [
       '#type' => 'details',
       '#title' => t('Advanced search'),
-      '#attributes' => array('class' => array('search-advanced')),
+      '#attributes' => ['class' => ['search-advanced']],
       '#access' => $this->account && $this->account->hasPermission('use advanced search'),
       '#open' => $used_advanced,
-    );
-    $form['advanced']['keywords-fieldset'] = array(
+    ];
+    $form['advanced']['keywords-fieldset'] = [
       '#type' => 'fieldset',
       '#title' => t('Keywords'),
-    );
+    ];
 
-    $form['advanced']['keywords'] = array(
+    $form['advanced']['keywords'] = [
       '#prefix' => '<div class="criterion">',
       '#suffix' => '</div>',
-    );
+    ];
 
-    $form['advanced']['keywords-fieldset']['keywords']['or'] = array(
+    $form['advanced']['keywords-fieldset']['keywords']['or'] = [
       '#type' => 'textfield',
       '#title' => t('Containing any of the words'),
       '#size' => 30,
       '#maxlength' => 255,
       '#default_value' => isset($defaults['or']) ? $defaults['or'] : '',
-    );
+    ];
 
-    $form['advanced']['keywords-fieldset']['keywords']['phrase'] = array(
+    $form['advanced']['keywords-fieldset']['keywords']['phrase'] = [
       '#type' => 'textfield',
       '#title' => t('Containing the phrase'),
       '#size' => 30,
       '#maxlength' => 255,
       '#default_value' => isset($defaults['phrase']) ? $defaults['phrase'] : '',
-    );
+    ];
 
-    $form['advanced']['keywords-fieldset']['keywords']['negative'] = array(
+    $form['advanced']['keywords-fieldset']['keywords']['negative'] = [
       '#type' => 'textfield',
       '#title' => t('Containing none of the words'),
       '#size' => 30,
       '#maxlength' => 255,
       '#default_value' => isset($defaults['negative']) ? $defaults['negative'] : '',
-    );
+    ];
 
     // Add node types.
-    $types = array_map(array('\Drupal\Component\Utility\Html', 'escape'), node_type_get_names());
-    $form['advanced']['types-fieldset'] = array(
+    $types = array_map(['\Drupal\Component\Utility\Html', 'escape'], node_type_get_names());
+    $form['advanced']['types-fieldset'] = [
       '#type' => 'fieldset',
       '#title' => t('Types'),
-    );
-    $form['advanced']['types-fieldset']['type'] = array(
+    ];
+    $form['advanced']['types-fieldset']['type'] = [
       '#type' => 'checkboxes',
       '#title' => t('Only of the type(s)'),
       '#prefix' => '<div class="criterion">',
       '#suffix' => '</div>',
       '#options' => $types,
-      '#default_value' => isset($defaults['type']) ? $defaults['type'] : array(),
-    );
+      '#default_value' => isset($defaults['type']) ? $defaults['type'] : [],
+    ];
 
-    $form['advanced']['submit'] = array(
+    $form['advanced']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Advanced search'),
       '#prefix' => '<div class="action">',
       '#suffix' => '</div>',
       '#weight' => 100,
-    );
+    ];
 
     // Add languages.
-    $language_options = array();
+    $language_options = [];
     $language_list = $this->languageManager->getLanguages(LanguageInterface::STATE_ALL);
     foreach ($language_list as $langcode => $language) {
       // Make locked languages appear special in the list.
-      $language_options[$langcode] = $language->isLocked() ? t('- @name -', array('@name' => $language->getName())) : $language->getName();
+      $language_options[$langcode] = $language->isLocked() ? t('- @name -', ['@name' => $language->getName()]) : $language->getName();
     }
     if (count($language_options) > 1) {
-      $form['advanced']['lang-fieldset'] = array(
+      $form['advanced']['lang-fieldset'] = [
         '#type' => 'fieldset',
         '#title' => t('Languages'),
-      );
-      $form['advanced']['lang-fieldset']['language'] = array(
+      ];
+      $form['advanced']['lang-fieldset']['language'] = [
         '#type' => 'checkboxes',
         '#title' => t('Languages'),
         '#prefix' => '<div class="criterion">',
         '#suffix' => '</div>',
         '#options' => $language_options,
-        '#default_value' => isset($defaults['language']) ? $defaults['language'] : array(),
-      );
+        '#default_value' => isset($defaults['language']) ? $defaults['language'] : [],
+      ];
     }
   }
 
@@ -633,7 +633,7 @@ public function buildSearchUrlQuery(FormStateInterface $form_state) {
     $advanced = FALSE;
 
     // Collect extra filters.
-    $filters = array();
+    $filters = [];
     if ($form_state->hasValue('type') && is_array($form_state->getValue('type'))) {
       // Retrieve selected types - Form API sets the value of unselected
       // checkboxes to 0.
@@ -680,7 +680,7 @@ public function buildSearchUrlQuery(FormStateInterface $form_state) {
     // Put the keywords and advanced parameters into GET parameters. Make sure
     // to put keywords into the query even if it is empty, because the page
     // controller uses that to decide it's time to check for search results.
-    $query = array('keys' => $keys);
+    $query = ['keys' => $keys];
     if ($filters) {
       $query['f'] = $filters;
     }
@@ -707,13 +707,13 @@ public function buildSearchUrlQuery(FormStateInterface $form_state) {
    *   a modified 'keys' element for the bare search keywords.
    */
   protected function parseAdvancedDefaults($f, $keys) {
-    $defaults = array();
+    $defaults = [];
 
     // Split out the advanced search parameters.
     foreach ($f as $advanced) {
       list($key, $value) = explode(':', $advanced, 2);
       if (!isset($defaults[$key])) {
-        $defaults[$key] = array();
+        $defaults[$key] = [];
       }
       $defaults[$key][] = $value;
     }
@@ -721,7 +721,7 @@ protected function parseAdvancedDefaults($f, $keys) {
     // Split out the negative, phrase, and OR parts of keywords.
 
     // For phrases, the form only supports one phrase.
-    $matches = array();
+    $matches = [];
     $keys = ' ' . $keys . ' ';
     if (preg_match('/ "([^"]+)" /', $keys, $matches)) {
       $keys = str_replace($matches[0], ' ', $keys);
@@ -764,9 +764,9 @@ protected function getRankings() {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    $configuration = array(
-      'rankings' => array(),
-    );
+    $configuration = [
+      'rankings' => [],
+    ];
     return $configuration;
   }
 
@@ -775,34 +775,34 @@ public function defaultConfiguration() {
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     // Output form for defining rank factor weights.
-    $form['content_ranking'] = array(
+    $form['content_ranking'] = [
       '#type' => 'details',
       '#title' => t('Content ranking'),
       '#open' => TRUE,
-    );
-    $form['content_ranking']['info'] = array(
+    ];
+    $form['content_ranking']['info'] = [
       '#markup' => '<p><em>' . $this->t('Influence is a numeric multiplier used in ordering search results. A higher number means the corresponding factor has more influence on search results; zero means the factor is ignored. Changing these numbers does not require the search index to be rebuilt. Changes take effect immediately.') . '</em></p>'
-    );
+    ];
     // Prepare table.
     $header = [$this->t('Factor'), $this->t('Influence')];
-    $form['content_ranking']['rankings'] = array(
+    $form['content_ranking']['rankings'] = [
       '#type' => 'table',
       '#header' => $header,
-    );
+    ];
 
     // Note: reversed to reflect that higher number = higher ranking.
     $range = range(0, 10);
     $options = array_combine($range, $range);
     foreach ($this->getRankings() as $var => $values) {
-      $form['content_ranking']['rankings'][$var]['name'] = array(
+      $form['content_ranking']['rankings'][$var]['name'] = [
         '#markup' => $values['title'],
-      );
-      $form['content_ranking']['rankings'][$var]['value'] = array(
+      ];
+      $form['content_ranking']['rankings'][$var]['value'] = [
         '#type' => 'select',
         '#options' => $options,
         '#attributes' => ['aria-label' => $this->t("Influence of '@title'", ['@title' => $values['title']])],
         '#default_value' => isset($this->configuration['rankings'][$var]) ? $this->configuration['rankings'][$var] : 0,
-      );
+      ];
     }
     return $form;
   }
diff --git a/core/modules/node/src/Plugin/migrate/D6NodeDeriver.php b/core/modules/node/src/Plugin/migrate/D6NodeDeriver.php
index 9b2c3cd..6d9b67a 100644
--- a/core/modules/node/src/Plugin/migrate/D6NodeDeriver.php
+++ b/core/modules/node/src/Plugin/migrate/D6NodeDeriver.php
@@ -101,7 +101,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     }
 
     // Read all CCK field instance definitions in the source database.
-    $fields = array();
+    $fields = [];
     try {
       $source_plugin = static::getSourcePlugin('d6_field_instance');
       $source_plugin->checkRequirements();
diff --git a/core/modules/node/src/Plugin/migrate/destination/EntityNodeType.php b/core/modules/node/src/Plugin/migrate/destination/EntityNodeType.php
index 820364c..c26f3b9 100644
--- a/core/modules/node/src/Plugin/migrate/destination/EntityNodeType.php
+++ b/core/modules/node/src/Plugin/migrate/destination/EntityNodeType.php
@@ -15,7 +15,7 @@ class EntityNodeType extends EntityConfigBase {
   /**
      * {@inheritdoc}
      */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $entity_ids = parent::import($row, $old_destination_id_values);
     if ($row->getDestinationProperty('create_body')) {
       $node_type = $this->storage->load(reset($entity_ids));
diff --git a/core/modules/node/src/Plugin/migrate/process/d6/NodeUpdate7008.php b/core/modules/node/src/Plugin/migrate/process/d6/NodeUpdate7008.php
index cf0b4ad..f6da2eb 100644
--- a/core/modules/node/src/Plugin/migrate/process/d6/NodeUpdate7008.php
+++ b/core/modules/node/src/Plugin/migrate/process/d6/NodeUpdate7008.php
@@ -22,7 +22,7 @@ class NodeUpdate7008 extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     if ($value === 'administer nodes') {
-      return array($value, 'access content overview');
+      return [$value, 'access content overview'];
     }
     return $value;
   }
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/Node.php b/core/modules/node/src/Plugin/migrate/source/d6/Node.php
index 2e4d1a6..ffa2659 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/Node.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/Node.php
@@ -77,7 +77,7 @@ public function query() {
     $query->innerJoin('node', 'n', static::JOIN);
     $this->handleTranslations($query);
 
-    $query->fields('n', array(
+    $query->fields('n', [
         'nid',
         'type',
         'language',
@@ -90,8 +90,8 @@ public function query() {
         'sticky',
         'tnid',
         'translate',
-      ))
-      ->fields('nr', array(
+      ])
+      ->fields('nr', [
         'title',
         'body',
         'teaser',
@@ -99,7 +99,7 @@ public function query() {
         'timestamp',
         'format',
         'vid',
-      ));
+      ]);
     $query->addField('n', 'uid', 'node_uid');
     $query->addField('nr', 'uid', 'revision_uid');
 
@@ -129,7 +129,7 @@ protected function initializeIterator() {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'nid' => $this->t('Node ID'),
       'type' => $this->t('Type'),
       'title' => $this->t('Title'),
@@ -147,7 +147,7 @@ public function fields() {
       'language' => $this->t('Language (fr, en, ...)'),
       'tnid' => $this->t('The translation set id for this node'),
       'timestamp' => $this->t('The timestamp the latest revision of this node was created.'),
-    );
+    ];
     return $fields;
   }
 
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/NodeRevision.php b/core/modules/node/src/Plugin/migrate/source/d6/NodeRevision.php
index 3f9a580..f3296c2 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/NodeRevision.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/NodeRevision.php
@@ -22,11 +22,11 @@ class NodeRevision extends Node {
    */
   public function fields() {
     // Use all the node fields plus the vid that identifies the version.
-    return parent::fields() + array(
+    return parent::fields() + [
       'vid' => t('The primary identifier for this version.'),
       'log' => $this->t('Revision Log message'),
       'timestamp' => $this->t('Revision timestamp'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/NodeType.php b/core/modules/node/src/Plugin/migrate/source/d6/NodeType.php
index 0653d59..6a6a32b 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/NodeType.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/NodeType.php
@@ -40,7 +40,7 @@ class NodeType extends DrupalSqlBase {
    */
   public function query() {
     return $this->select('node_type', 't')
-      ->fields('t', array(
+      ->fields('t', [
         'type',
         'name',
         'module',
@@ -54,7 +54,7 @@ public function query() {
         'modified',
         'locked',
         'orig_type',
-      ))
+      ])
       ->orderBy('t.type');
   }
 
@@ -62,7 +62,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'type' => $this->t('Machine name of the node type.'),
       'name' => $this->t('Human name of the node type.'),
       'module' => $this->t('The module providing the node type.'),
@@ -77,7 +77,7 @@ public function fields() {
       'locked' => $this->t('Flag.'),
       'orig_type' => $this->t('The original type.'),
       'teaser_length' => $this->t('Teaser length'),
-    );
+    ];
   }
 
   /**
@@ -86,7 +86,7 @@ public function fields() {
   protected function initializeIterator() {
     $this->teaserLength = $this->variableGet('teaser_length', 600);
     $this->nodePreview = $this->variableGet('node_preview', 0);
-    $this->themeSettings = $this->variableGet('theme_settings', array());
+    $this->themeSettings = $this->variableGet('theme_settings', []);
     return parent::initializeIterator();
   }
 
@@ -98,9 +98,9 @@ public function prepareRow(Row $row) {
     $row->setSourceProperty('node_preview', $this->nodePreview);
 
     $type = $row->getSourceProperty('type');
-    $source_options = $this->variableGet('node_options_' . $type, array('promote', 'sticky'));
-    $options = array();
-    foreach (array('promote', 'sticky', 'status', 'revision') as $item) {
+    $source_options = $this->variableGet('node_options_' . $type, ['promote', 'sticky']);
+    $options = [];
+    foreach (['promote', 'sticky', 'status', 'revision'] as $item) {
       $options[$item] = in_array($item, $source_options);
     }
     $row->setSourceProperty('options', $options);
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/ViewMode.php b/core/modules/node/src/Plugin/migrate/source/d6/ViewMode.php
index a450398..8e7b8ae 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/ViewMode.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/ViewMode.php
@@ -16,7 +16,7 @@ class ViewMode extends ViewModeBase {
    * {@inheritdoc}
    */
   protected function initializeIterator() {
-    $rows = array();
+    $rows = [];
     $result = $this->prepareQuery()->execute();
     while ($field_row = $result->fetchAssoc()) {
       $field_row['display_settings'] = unserialize($field_row['display_settings']);
@@ -38,9 +38,9 @@ protected function initializeIterator() {
    */
   public function query() {
     $query = $this->select('content_node_field_instance', 'cnfi')
-      ->fields('cnfi', array(
+      ->fields('cnfi', [
         'display_settings',
-      ));
+      ]);
 
     return $query;
   }
@@ -49,9 +49,9 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'display_settings' => $this->t('Serialize data with display settings.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/node/src/Plugin/migrate/source/d6/ViewModeBase.php b/core/modules/node/src/Plugin/migrate/source/d6/ViewModeBase.php
index 54abcb0..315f069 100644
--- a/core/modules/node/src/Plugin/migrate/source/d6/ViewModeBase.php
+++ b/core/modules/node/src/Plugin/migrate/source/d6/ViewModeBase.php
@@ -33,7 +33,7 @@ public function count() {
    *   The view mode names.
    */
   public function getViewModes() {
-    return array(
+    return [
       0,
       1,
       2,
@@ -42,7 +42,7 @@ public function getViewModes() {
       5,
       'teaser',
       'full',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/node/src/Plugin/migrate/source/d7/Node.php b/core/modules/node/src/Plugin/migrate/source/d7/Node.php
index 0de4c968..451905c 100644
--- a/core/modules/node/src/Plugin/migrate/source/d7/Node.php
+++ b/core/modules/node/src/Plugin/migrate/source/d7/Node.php
@@ -62,7 +62,7 @@ public static function create(ContainerInterface $container, array $configuratio
   public function query() {
     // Select node in its last revision.
     $query = $this->select('node_revision', 'nr')
-      ->fields('n', array(
+      ->fields('n', [
         'nid',
         'type',
         'language',
@@ -74,13 +74,13 @@ public function query() {
         'sticky',
         'tnid',
         'translate',
-      ))
-      ->fields('nr', array(
+      ])
+      ->fields('nr', [
         'vid',
         'title',
         'log',
         'timestamp',
-      ));
+      ]);
     $query->addField('n', 'uid', 'node_uid');
     $query->addField('nr', 'uid', 'revision_uid');
     $query->innerJoin('node', 'n', static::JOIN);
@@ -122,7 +122,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'nid' => $this->t('Node ID'),
       'type' => $this->t('Type'),
       'title' => $this->t('Title'),
@@ -137,7 +137,7 @@ public function fields() {
       'language' => $this->t('Language (fr, en, ...)'),
       'tnid' => $this->t('The translation set id for this node'),
       'timestamp' => $this->t('The timestamp the latest revision of this node was created.'),
-    );
+    ];
     return $fields;
   }
 
diff --git a/core/modules/node/src/Plugin/migrate/source/d7/NodeRevision.php b/core/modules/node/src/Plugin/migrate/source/d7/NodeRevision.php
index b88359a..89c1bcc 100644
--- a/core/modules/node/src/Plugin/migrate/source/d7/NodeRevision.php
+++ b/core/modules/node/src/Plugin/migrate/source/d7/NodeRevision.php
@@ -22,11 +22,11 @@ class NodeRevision extends Node {
    */
   public function fields() {
     // Use all the node fields plus the vid that identifies the version.
-    return parent::fields() + array(
+    return parent::fields() + [
       'vid' => t('The primary identifier for this version.'),
       'log' => $this->t('Revision Log message'),
       'timestamp' => $this->t('Revision timestamp'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/node/src/Plugin/migrate/source/d7/NodeType.php b/core/modules/node/src/Plugin/migrate/source/d7/NodeType.php
index b8a8519..85c0d32 100644
--- a/core/modules/node/src/Plugin/migrate/source/d7/NodeType.php
+++ b/core/modules/node/src/Plugin/migrate/source/d7/NodeType.php
@@ -40,7 +40,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'type' => $this->t('Machine name of the node type.'),
       'name' => $this->t('Human name of the node type.'),
       'description' => $this->t('Description of the node type.'),
@@ -53,7 +53,7 @@ public function fields() {
       'locked' => $this->t('Flag.'),
       'orig_type' => $this->t('The original type.'),
       'teaser_length' => $this->t('Teaser length'),
-    );
+    ];
   }
 
   /**
@@ -73,9 +73,9 @@ public function prepareRow(Row $row) {
     $row->setSourceProperty('node_preview', $this->nodePreview);
 
     $type = $row->getSourceProperty('type');
-    $source_options = $this->variableGet('node_options_' . $type, array('promote', 'sticky'));
-    $options = array();
-    foreach (array('promote', 'sticky', 'status', 'revision') as $item) {
+    $source_options = $this->variableGet('node_options_' . $type, ['promote', 'sticky']);
+    $options = [];
+    foreach (['promote', 'sticky', 'status', 'revision'] as $item) {
       $options[$item] = in_array($item, $source_options);
     }
     $row->setSourceProperty('options', $options);
@@ -86,7 +86,7 @@ public function prepareRow(Row $row) {
     if ($this->moduleExists('field')) {
       // Find body field for this node type.
       $body = $this->select('field_config_instance', 'fci')
-        ->fields('fci', array('data'))
+        ->fields('fci', ['data'])
         ->condition('entity_type', 'node')
         ->condition('bundle', $row->getSourceProperty('type'))
         ->condition('field_name', 'body')
diff --git a/core/modules/node/src/Plugin/views/area/ListingEmpty.php b/core/modules/node/src/Plugin/views/area/ListingEmpty.php
index e52ca1b..08e1d27 100644
--- a/core/modules/node/src/Plugin/views/area/ListingEmpty.php
+++ b/core/modules/node/src/Plugin/views/area/ListingEmpty.php
@@ -59,19 +59,19 @@ public static function create(ContainerInterface $container, array $configuratio
   public function render($empty = FALSE) {
     $account = \Drupal::currentUser();
     if (!$empty || !empty($this->options['empty'])) {
-      $element = array(
+      $element = [
         '#theme' => 'links',
-        '#links' => array(
-          array(
+        '#links' => [
+          [
             'url' => Url::fromRoute('node.add_page'),
             'title' => $this->t('Add content'),
-          ),
-        ),
-        '#access' => $this->accessManager->checkNamedRoute('node.add_page', array(), $account),
-      );
+          ],
+        ],
+        '#access' => $this->accessManager->checkNamedRoute('node.add_page', [], $account),
+      ];
       return $element;
     }
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/node/src/Plugin/views/argument/Nid.php b/core/modules/node/src/Plugin/views/argument/Nid.php
index 8f846bc..3b0f8df 100644
--- a/core/modules/node/src/Plugin/views/argument/Nid.php
+++ b/core/modules/node/src/Plugin/views/argument/Nid.php
@@ -52,7 +52,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * Override the behavior of title(). Get the title of the node.
    */
   public function titleQuery() {
-    $titles = array();
+    $titles = [];
 
     $nodes = $this->nodeStorage->loadMultiple($this->value);
     foreach ($nodes as $node) {
diff --git a/core/modules/node/src/Plugin/views/argument/UidRevision.php b/core/modules/node/src/Plugin/views/argument/UidRevision.php
index 9a19fe3..9e2fb81 100644
--- a/core/modules/node/src/Plugin/views/argument/UidRevision.php
+++ b/core/modules/node/src/Plugin/views/argument/UidRevision.php
@@ -15,7 +15,7 @@ class UidRevision extends Uid {
   public function query($group_by = FALSE) {
     $this->ensureMyTable();
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression(0, "$this->tableAlias.revision_uid = $placeholder OR ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nfr.revision_uid = $placeholder AND nr.nid = $this->tableAlias.nid) > 0)", array($placeholder => $this->argument));
+    $this->query->addWhereExpression(0, "$this->tableAlias.revision_uid = $placeholder OR ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nfr.revision_uid = $placeholder AND nr.nid = $this->tableAlias.nid) > 0)", [$placeholder => $this->argument]);
   }
 
 }
diff --git a/core/modules/node/src/Plugin/views/argument/Vid.php b/core/modules/node/src/Plugin/views/argument/Vid.php
index 8788b67..1cad35c 100644
--- a/core/modules/node/src/Plugin/views/argument/Vid.php
+++ b/core/modules/node/src/Plugin/views/argument/Vid.php
@@ -66,10 +66,10 @@ public static function create(ContainerInterface $container, array $configuratio
    * Override the behavior of title(). Get the title of the revision.
    */
   public function titleQuery() {
-    $titles = array();
+    $titles = [];
 
-    $results = $this->database->query('SELECT nr.vid, nr.nid, npr.title FROM {node_revision} nr WHERE nr.vid IN ( :vids[] )', array(':vids[]' => $this->value))->fetchAllAssoc('vid', PDO::FETCH_ASSOC);
-    $nids = array();
+    $results = $this->database->query('SELECT nr.vid, nr.nid, npr.title FROM {node_revision} nr WHERE nr.vid IN ( :vids[] )', [':vids[]' => $this->value])->fetchAllAssoc('vid', PDO::FETCH_ASSOC);
+    $nids = [];
     foreach ($results as $result) {
       $nids[] = $result['nid'];
     }
diff --git a/core/modules/node/src/Plugin/views/field/Node.php b/core/modules/node/src/Plugin/views/field/Node.php
index d721414..e5cd9d7 100644
--- a/core/modules/node/src/Plugin/views/field/Node.php
+++ b/core/modules/node/src/Plugin/views/field/Node.php
@@ -28,7 +28,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     // Don't add the additional fields to groupby
     if (!empty($this->options['link_to_node'])) {
-      $this->additional_fields['nid'] = array('table' => 'node_field_data', 'field' => 'nid');
+      $this->additional_fields['nid'] = ['table' => 'node_field_data', 'field' => 'nid'];
     }
   }
 
@@ -37,7 +37,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['link_to_node'] = array('default' => isset($this->definition['link_to_node default']) ? $this->definition['link_to_node default'] : FALSE);
+    $options['link_to_node'] = ['default' => isset($this->definition['link_to_node default']) ? $this->definition['link_to_node default'] : FALSE];
     return $options;
   }
 
@@ -45,12 +45,12 @@ protected function defineOptions() {
    * Provide link to node option
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['link_to_node'] = array(
+    $form['link_to_node'] = [
       '#title' => $this->t('Link this field to the original piece of content'),
       '#description' => $this->t("Enable to override this field's links."),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['link_to_node']),
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
diff --git a/core/modules/node/src/Plugin/views/field/Path.php b/core/modules/node/src/Plugin/views/field/Path.php
index 5fb07cd..c1c74ab 100644
--- a/core/modules/node/src/Plugin/views/field/Path.php
+++ b/core/modules/node/src/Plugin/views/field/Path.php
@@ -31,7 +31,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['absolute'] = array('default' => FALSE);
+    $options['absolute'] = ['default' => FALSE];
 
     return $options;
   }
@@ -41,13 +41,13 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['absolute'] = array(
+    $form['absolute'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Use absolute link (begins with "http://")'),
       '#default_value' => $this->options['absolute'],
       '#description' => $this->t('Enable this option to output an absolute link. Required if you want to use the path as a link destination (as in "output this field as a link" above).'),
       '#fieldset' => 'alter',
-    );
+    ];
   }
 
   /**
@@ -63,9 +63,9 @@ public function query() {
    */
   public function render(ResultRow $values) {
     $nid = $this->getValue($values, 'nid');
-    return array(
+    return [
       '#markup' => \Drupal::url('entity.node.canonical', ['node' => $nid], ['absolute' => $this->options['absolute']]),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/node/src/Plugin/views/filter/UidRevision.php b/core/modules/node/src/Plugin/views/filter/UidRevision.php
index ce588b7..0968480 100644
--- a/core/modules/node/src/Plugin/views/filter/UidRevision.php
+++ b/core/modules/node/src/Plugin/views/filter/UidRevision.php
@@ -21,7 +21,7 @@ public function query($group_by = FALSE) {
     $args = array_values($this->value);
 
     $this->query->addWhereExpression($this->options['group'], "$this->tableAlias.uid IN($placeholder) OR
-      ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nr.revision_uid IN ($placeholder) AND nr.nid = $this->tableAlias.nid) > 0)", array($placeholder => $args),
+      ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nr.revision_uid IN ($placeholder) AND nr.nid = $this->tableAlias.nid) > 0)", [$placeholder => $args],
       $args);
   }
 
diff --git a/core/modules/node/src/Plugin/views/row/Rss.php b/core/modules/node/src/Plugin/views/row/Rss.php
index 097655a..9683879 100644
--- a/core/modules/node/src/Plugin/views/row/Rss.php
+++ b/core/modules/node/src/Plugin/views/row/Rss.php
@@ -27,7 +27,7 @@ class Rss extends RssPluginBase {
   public $base_field = 'nid';
 
   // Stores the nodes loaded with preRender.
-  public $nodes = array();
+  public $nodes = [];
 
   /**
    * {@inheritdoc}
@@ -74,7 +74,7 @@ public function summaryTitle() {
   }
 
   public function preRender($values) {
-    $nids = array();
+    $nids = [];
     foreach ($values as $row) {
       $nids[] = $row->{$this->field_alias};
     }
@@ -103,23 +103,23 @@ public function render($row) {
       return;
     }
 
-    $node->link = $node->url('canonical', array('absolute' => TRUE));
-    $node->rss_namespaces = array();
-    $node->rss_elements = array(
-      array(
+    $node->link = $node->url('canonical', ['absolute' => TRUE]);
+    $node->rss_namespaces = [];
+    $node->rss_elements = [
+      [
         'key' => 'pubDate',
         'value' => gmdate('r', $node->getCreatedTime()),
-      ),
-      array(
+      ],
+      [
         'key' => 'dc:creator',
         'value' => $node->getOwner()->getDisplayName(),
-      ),
-      array(
+      ],
+      [
         'key' => 'guid',
         'value' => $node->id() . ' at ' . $base_url,
-        'attributes' => array('isPermaLink' => 'false'),
-      ),
-    );
+        'attributes' => ['isPermaLink' => 'false'],
+      ],
+    ];
 
     // The node gets built and modules add to or modify $node->rss_elements
     // and $node->rss_namespaces.
@@ -135,7 +135,7 @@ public function render($row) {
     elseif (function_exists('rdf_get_namespaces')) {
       // Merge RDF namespaces in the XML namespaces in case they are used
       // further in the RSS content.
-      $xml_rdf_namespaces = array();
+      $xml_rdf_namespaces = [];
       foreach (rdf_get_namespaces() as $prefix => $uri) {
         $xml_rdf_namespaces['xmlns:' . $prefix] = $uri;
       }
@@ -153,12 +153,12 @@ public function render($row) {
     // template_preprocess_views_view_row_rss() can still access it.
     $item->elements = &$node->rss_elements;
     $item->nid = $node->id();
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $item,
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/node/src/Plugin/views/wizard/Node.php b/core/modules/node/src/Plugin/views/wizard/Node.php
index ce267e6..34d4bcf 100644
--- a/core/modules/node/src/Plugin/views/wizard/Node.php
+++ b/core/modules/node/src/Plugin/views/wizard/Node.php
@@ -28,16 +28,16 @@ class Node extends WizardPluginBase {
   /**
    * Set default values for the filters.
    */
-  protected $filters = array(
-    'status' => array(
+  protected $filters = [
+    'status' => [
       'value' => TRUE,
       'table' => 'node_field_data',
       'field' => 'status',
       'plugin_id' => 'boolean',
       'entity_type' => 'node',
       'entity_field' => 'status',
-    )
-  );
+    ]
+  ];
 
   /**
    * Overrides Drupal\views\Plugin\views\wizard\WizardPluginBase::getAvailableSorts().
@@ -48,16 +48,16 @@ class Node extends WizardPluginBase {
    */
   public function getAvailableSorts() {
     // You can't execute functions in properties, so override the method
-    return array(
+    return [
       'node_field_data-title:ASC' => $this->t('Title')
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   protected function rowStyleOptions() {
-    $options = array();
+    $options = [];
     $options['teasers'] = $this->t('teasers');
     $options['full_posts'] = $this->t('full posts');
     $options['titles'] = $this->t('titles');
@@ -110,22 +110,22 @@ protected function defaultDisplayOptions() {
   protected function defaultDisplayFiltersUser(array $form, FormStateInterface $form_state) {
     $filters = parent::defaultDisplayFiltersUser($form, $form_state);
 
-    $tids = array();
-    if ($values = $form_state->getValue(array('show', 'tagged_with'))) {
+    $tids = [];
+    if ($values = $form_state->getValue(['show', 'tagged_with'])) {
       foreach ($values as $value) {
         $tids[] = $value['target_id'];
       }
     }
     if (!empty($tids)) {
       $vid = reset($form['displays']['show']['tagged_with']['#selection_settings']['target_bundles']);
-      $filters['tid'] = array(
+      $filters['tid'] = [
         'id' => 'tid',
         'table' => 'taxonomy_index',
         'field' => 'tid',
         'value' => $tids,
         'vid' => $vid,
         'plugin_id' => 'taxonomy_index_tid',
-      );
+      ];
       // If the user entered more than one valid term in the autocomplete
       // field, they probably intended both of them to be applied.
       if (count($tids) > 1) {
@@ -144,8 +144,8 @@ protected function defaultDisplayFiltersUser(array $form, FormStateInterface $fo
    */
   protected function pageDisplayOptions(array $form, FormStateInterface $form_state) {
     $display_options = parent::pageDisplayOptions($form, $form_state);
-    $row_plugin = $form_state->getValue(array('page', 'style', 'row_plugin'));
-    $row_options = $form_state->getValue(array('page', 'style', 'row_options'), array());
+    $row_plugin = $form_state->getValue(['page', 'style', 'row_plugin']);
+    $row_options = $form_state->getValue(['page', 'style', 'row_options'], []);
     $this->display_options_row($display_options, $row_plugin, $row_options);
     return $display_options;
   }
@@ -155,8 +155,8 @@ protected function pageDisplayOptions(array $form, FormStateInterface $form_stat
    */
   protected function blockDisplayOptions(array $form, FormStateInterface $form_state) {
     $display_options = parent::blockDisplayOptions($form, $form_state);
-    $row_plugin = $form_state->getValue(array('block', 'style', 'row_plugin'));
-    $row_options = $form_state->getValue(array('block', 'style', 'row_options'), array());
+    $row_plugin = $form_state->getValue(['block', 'style', 'row_plugin']);
+    $row_options = $form_state->getValue(['block', 'style', 'row_options'], []);
     $this->display_options_row($display_options, $row_plugin, $row_options);
     return $display_options;
   }
@@ -195,7 +195,7 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
     parent::buildFilters($form, $form_state);
 
     if (isset($form['displays']['show']['type'])) {
-      $selected_bundle = static::getSelected($form_state, array('show', 'type'), 'all', $form['displays']['show']['type']);
+      $selected_bundle = static::getSelected($form_state, ['show', 'type'], 'all', $form['displays']['show']['type']);
     }
 
     // Add the "tagged with" filter to the view.
@@ -221,9 +221,9 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
     // Double check that this is a real bundle before using it (since above
     // we added a dummy option 'all' to the bundle list on the form).
     if (isset($selected_bundle) && in_array($selected_bundle, $bundles)) {
-      $bundles = array($selected_bundle);
+      $bundles = [$selected_bundle];
     }
-    $tag_fields = array();
+    $tag_fields = [];
     foreach ($bundles as $bundle) {
       $display = entity_get_form_display($this->entityTypeId, $bundle, 'default');
       $taxonomy_fields = array_filter(\Drupal::entityManager()->getFieldDefinitions($this->entityTypeId, $bundle), function ($field_definition) {
@@ -253,7 +253,7 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
       }
       // Add the autocomplete textfield to the wizard.
       $target_bundles = $tag_fields[$tag_field_name]->getSetting('handler_settings')['target_bundles'];
-      $form['displays']['show']['tagged_with'] = array(
+      $form['displays']['show']['tagged_with'] = [
         '#type' => 'entity_autocomplete',
         '#title' => $this->t('tagged with'),
         '#target_type' => 'taxonomy_term',
@@ -261,7 +261,7 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
         '#tags' => TRUE,
         '#size' => 30,
         '#maxlength' => 1024,
-      );
+      ];
     }
   }
 
diff --git a/core/modules/node/src/Plugin/views/wizard/NodeRevision.php b/core/modules/node/src/Plugin/views/wizard/NodeRevision.php
index 64bc7be..9c3465d 100644
--- a/core/modules/node/src/Plugin/views/wizard/NodeRevision.php
+++ b/core/modules/node/src/Plugin/views/wizard/NodeRevision.php
@@ -27,16 +27,16 @@ class NodeRevision extends WizardPluginBase {
   /**
    * Set default values for the filters.
    */
-  protected $filters = array(
-    'status' => array(
+  protected $filters = [
+    'status' => [
       'value' => TRUE,
       'table' => 'node_field_revision',
       'field' => 'status',
       'plugin_id' => 'boolean',
       'entity_type' => 'node',
       'entity_field' => 'status',
-    )
-  );
+    ]
+  ];
 
   /**
    * Overrides Drupal\views\Plugin\views\wizard\WizardPluginBase::rowStyleOptions().
diff --git a/core/modules/node/src/Routing/RouteSubscriber.php b/core/modules/node/src/Routing/RouteSubscriber.php
index 23bd0f8..66d83c1 100644
--- a/core/modules/node/src/Routing/RouteSubscriber.php
+++ b/core/modules/node/src/Routing/RouteSubscriber.php
@@ -19,13 +19,13 @@ protected function alterRoutes(RouteCollection $collection) {
     // a node listing instead of the path's child links.
     $route = $collection->get('system.admin_content');
     if ($route) {
-      $route->setDefaults(array(
+      $route->setDefaults([
         '_title' => 'Content',
         '_entity_list' => 'node',
-      ));
-      $route->setRequirements(array(
+      ]);
+      $route->setRequirements([
         '_permission' => 'access content overview',
-      ));
+      ]);
     }
   }
 
diff --git a/core/modules/node/src/Tests/NodeAccessBaseTableTest.php b/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
index 74e2340..ef3ea90 100644
--- a/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
+++ b/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
@@ -16,7 +16,7 @@ class NodeAccessBaseTableTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test', 'views');
+  public static $modules = ['node_access_test', 'views'];
 
   /**
    * The installation profile to use with this test.
@@ -85,23 +85,23 @@ protected function setUp() {
    */
   function testNodeAccessBasic() {
     $num_simple_users = 2;
-    $simple_users = array();
+    $simple_users = [];
 
     // Nodes keyed by uid and nid: $nodes[$uid][$nid] = $is_private;
-    $this->nodesByUser = array();
+    $this->nodesByUser = [];
     // Titles keyed by nid.
     $titles = [];
     // Array of nids marked private.
     $private_nodes = [];
     for ($i = 0; $i < $num_simple_users; $i++) {
-      $simple_users[$i] = $this->drupalCreateUser(array('access content', 'create article content'));
+      $simple_users[$i] = $this->drupalCreateUser(['access content', 'create article content']);
     }
     foreach ($simple_users as $this->webUser) {
       $this->drupalLogin($this->webUser);
-      foreach (array(0 => 'Public', 1 => 'Private') as $is_private => $type) {
-        $edit = array(
-          'title[0][value]' => t('@private_public Article created by @user', array('@private_public' => $type, '@user' => $this->webUser->getUsername())),
-        );
+      foreach ([0 => 'Public', 1 => 'Private'] as $is_private => $type) {
+        $edit = [
+          'title[0][value]' => t('@private_public Article created by @user', ['@private_public' => $type, '@user' => $this->webUser->getUsername()]),
+        ];
         if ($is_private) {
           $edit['private[0][value]'] = TRUE;
           $edit['body[0][value]'] = 'private node';
@@ -122,8 +122,8 @@ function testNodeAccessBasic() {
         $this->nodesByUser[$this->webUser->id()][$node->id()] = $is_private;
       }
     }
-    $this->publicTid = db_query('SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1', array(':name' => 'public'))->fetchField();
-    $this->privateTid = db_query('SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1', array(':name' => 'private'))->fetchField();
+    $this->publicTid = db_query('SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1', [':name' => 'public'])->fetchField();
+    $this->privateTid = db_query('SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1', [':name' => 'private'])->fetchField();
     $this->assertTrue($this->publicTid, 'Public tid was found');
     $this->assertTrue($this->privateTid, 'Private tid was found');
     foreach ($simple_users as $this->webUser) {
@@ -138,12 +138,12 @@ function testNodeAccessBasic() {
           else {
             $should_be_visible = TRUE;
           }
-          $this->assertResponse($should_be_visible ? 200 : 403, strtr('A %private node by user %uid is %visible for user %current_uid.', array(
+          $this->assertResponse($should_be_visible ? 200 : 403, strtr('A %private node by user %uid is %visible for user %current_uid.', [
             '%private' => $is_private ? 'private' : 'public',
             '%uid' => $uid,
             '%visible' => $should_be_visible ? 'visible' : 'not visible',
             '%current_uid' => $this->webUser->id(),
-          )));
+          ]));
         }
       }
 
@@ -153,7 +153,7 @@ function testNodeAccessBasic() {
     }
 
     // Now test that a user with 'node test view' permissions can view content.
-    $access_user = $this->drupalCreateUser(array('access content', 'create article content', 'node test view', 'search content'));
+    $access_user = $this->drupalCreateUser(['access content', 'create article content', 'node test view', 'search content']);
     $this->drupalLogin($access_user);
 
     foreach ($this->nodesByUser as $private_status) {
@@ -193,7 +193,7 @@ function testNodeAccessBasic() {
    *   user's own private nodes should be listed.
    */
   protected function assertTaxonomyPage($is_admin) {
-    foreach (array($this->publicTid, $this->privateTid) as $tid_is_private => $tid) {
+    foreach ([$this->publicTid, $this->privateTid] as $tid_is_private => $tid) {
       $this->drupalGet("taxonomy/term/$tid");
       $this->nidsVisible = [];
       foreach ($this->xpath("//a[text()='Read more']") as $link) {
@@ -211,13 +211,13 @@ protected function assertTaxonomyPage($is_admin) {
           if (!$is_admin && $tid_is_private) {
             $should_be_visible = $should_be_visible && $uid == $this->webUser->id();
           }
-          $this->assertIdentical(isset($this->nidsVisible[$nid]), $should_be_visible, strtr('A %private node by user %uid is %visible for user %current_uid on the %tid_is_private page.', array(
+          $this->assertIdentical(isset($this->nidsVisible[$nid]), $should_be_visible, strtr('A %private node by user %uid is %visible for user %current_uid on the %tid_is_private page.', [
             '%private' => $is_private ? 'private' : 'public',
             '%uid' => $uid,
             '%visible' => isset($this->nidsVisible[$nid]) ? 'visible' : 'not visible',
             '%current_uid' => $this->webUser->id(),
             '%tid_is_private' => $tid_is_private ? 'private' : 'public',
-          )));
+          ]));
         }
       }
     }
diff --git a/core/modules/node/src/Tests/NodeAccessPagerTest.php b/core/modules/node/src/Tests/NodeAccessPagerTest.php
index 7db264c..b4fe830 100644
--- a/core/modules/node/src/Tests/NodeAccessPagerTest.php
+++ b/core/modules/node/src/Tests/NodeAccessPagerTest.php
@@ -21,15 +21,15 @@ class NodeAccessPagerTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test', 'comment', 'forum');
+  public static $modules = ['node_access_test', 'comment', 'forum'];
 
   protected function setUp() {
     parent::setUp();
 
     node_access_rebuild();
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => t('Basic page')));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => t('Basic page')]);
     $this->addDefaultCommentField('node', 'page');
-    $this->webUser = $this->drupalCreateUser(array('access content', 'access comments', 'node test view'));
+    $this->webUser = $this->drupalCreateUser(['access content', 'access comments', 'node test view']);
   }
 
   /**
@@ -41,16 +41,16 @@ public function testCommentPager() {
 
     // Create 60 comments.
     for ($i = 0; $i < 60; $i++) {
-      $comment = Comment::create(array(
+      $comment = Comment::create([
         'entity_id' => $node->id(),
         'entity_type' => 'node',
         'field_name' => 'comment',
         'subject' => $this->randomMachineName(),
-        'comment_body' => array(
-          array('value' => $this->randomMachineName()),
-        ),
+        'comment_body' => [
+          ['value' => $this->randomMachineName()],
+        ],
         'status' => CommentInterface::PUBLISHED,
-      ));
+      ]);
       $comment->save();
     }
 
@@ -80,13 +80,13 @@ public function testForumPager() {
 
     // Create 30 nodes.
     for ($i = 0; $i < 30; $i++) {
-      $this->drupalCreateNode(array(
+      $this->drupalCreateNode([
         'nid' => NULL,
         'type' => 'forum',
-        'taxonomy_forums' => array(
-          array('target_id' => $tid),
-        ),
-      ));
+        'taxonomy_forums' => [
+          ['target_id' => $tid],
+        ],
+      ]);
     }
 
     // View the general discussion forum page. With the default 25 nodes per
diff --git a/core/modules/node/src/Tests/NodeAccessRebuildNodeGrantsTest.php b/core/modules/node/src/Tests/NodeAccessRebuildNodeGrantsTest.php
index d151aad..251aa88 100644
--- a/core/modules/node/src/Tests/NodeAccessRebuildNodeGrantsTest.php
+++ b/core/modules/node/src/Tests/NodeAccessRebuildNodeGrantsTest.php
@@ -32,7 +32,7 @@ class NodeAccessRebuildNodeGrantsTest extends NodeTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer site configuration', 'access administration pages', 'access site reports'));
+    $this->adminUser = $this->drupalCreateUser(['administer site configuration', 'access administration pages', 'access site reports']);
     $this->drupalLogin($this->adminUser);
 
     $this->webUser = $this->drupalCreateUser();
@@ -50,10 +50,10 @@ public function testNodeAccessRebuildNodeGrants() {
     // Create 30 nodes so that _node_access_rebuild_batch_operation() has to run
     // more than once.
     for ($i = 0; $i < 30; $i++) {
-      $nodes[] = $this->drupalCreateNode(array(
+      $nodes[] = $this->drupalCreateNode([
         'uid' => $this->webUser->id(),
         'private' => [['value' => 1]]
-      ));
+      ]);
     }
 
     /** @var \Drupal\node\NodeGrantDatabaseStorageInterface $grant_storage */
@@ -71,7 +71,7 @@ public function testNodeAccessRebuildNodeGrants() {
     // Rebuild permissions.
     $this->drupalGet('admin/reports/status');
     $this->clickLink(t('Rebuild permissions'));
-    $this->drupalPostForm(NULL, array(), t('Rebuild permissions'));
+    $this->drupalPostForm(NULL, [], t('Rebuild permissions'));
     $this->assertText(t('The content access permissions have been rebuilt.'));
 
     // Test if the rebuild by user that cannot bypass node access and does not
@@ -107,7 +107,7 @@ public function testNodeAccessRebuildNoAccessModules() {
     // Rebuild permissions.
     $this->drupalGet('admin/reports/status');
     $this->clickLink(t('Rebuild permissions'));
-    $this->drupalPostForm(NULL, array(), t('Rebuild permissions'));
+    $this->drupalPostForm(NULL, [], t('Rebuild permissions'));
     $this->assertText(t('Content permissions have been rebuilt.'));
     $this->assertNull(\Drupal::state()->get('node.node_access_needs_rebuild'), 'Node access permissions have been rebuilt');
 
diff --git a/core/modules/node/src/Tests/NodeAdminTest.php b/core/modules/node/src/Tests/NodeAdminTest.php
index 1717bb1..7357d23 100644
--- a/core/modules/node/src/Tests/NodeAdminTest.php
+++ b/core/modules/node/src/Tests/NodeAdminTest.php
@@ -43,7 +43,7 @@ class NodeAdminTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   protected function setUp() {
     parent::setUp();
@@ -51,9 +51,9 @@ protected function setUp() {
     // Remove the "view own unpublished content" permission which is set
     // by default for authenticated users so we can test this permission
     // correctly.
-    user_role_revoke_permissions(RoleInterface::AUTHENTICATED_ID, array('view own unpublished content'));
+    user_role_revoke_permissions(RoleInterface::AUTHENTICATED_ID, ['view own unpublished content']);
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'access content overview', 'administer nodes', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'access content overview', 'administer nodes', 'bypass node access']);
     $this->baseUser1 = $this->drupalCreateUser(['access content overview']);
     $this->baseUser2 = $this->drupalCreateUser(['access content overview', 'view own unpublished content']);
     $this->baseUser3 = $this->drupalCreateUser(['access content overview', 'bypass node access']);
@@ -66,39 +66,39 @@ function testContentAdminSort() {
     $this->drupalLogin($this->adminUser);
 
     $changed = REQUEST_TIME;
-    foreach (array('dd', 'aa', 'DD', 'bb', 'cc', 'CC', 'AA', 'BB') as $prefix) {
+    foreach (['dd', 'aa', 'DD', 'bb', 'cc', 'CC', 'AA', 'BB'] as $prefix) {
       $changed += 1000;
-      $node = $this->drupalCreateNode(array('title' => $prefix . $this->randomMachineName(6)));
+      $node = $this->drupalCreateNode(['title' => $prefix . $this->randomMachineName(6)]);
       db_update('node_field_data')
-        ->fields(array('changed' => $changed))
+        ->fields(['changed' => $changed])
         ->condition('nid', $node->id())
         ->execute();
     }
 
     // Test that the default sort by node.changed DESC actually fires properly.
     $nodes_query = db_select('node_field_data', 'n')
-      ->fields('n', array('title'))
+      ->fields('n', ['title'])
       ->orderBy('changed', 'DESC')
       ->execute()
       ->fetchCol();
 
     $this->drupalGet('admin/content');
     foreach ($nodes_query as $delta => $string) {
-      $elements = $this->xpath('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', array(':class' => 'views-table', ':label' => $string));
+      $elements = $this->xpath('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [':class' => 'views-table', ':label' => $string]);
       $this->assertTrue(!empty($elements), 'The node was found in the correct order.');
     }
 
     // Compare the rendered HTML node list to a query for the nodes ordered by
     // title to account for possible database-dependent sort order.
     $nodes_query = db_select('node_field_data', 'n')
-      ->fields('n', array('title'))
+      ->fields('n', ['title'])
       ->orderBy('title')
       ->execute()
       ->fetchCol();
 
-    $this->drupalGet('admin/content', array('query' => array('sort' => 'asc', 'order' => 'title')));
+    $this->drupalGet('admin/content', ['query' => ['sort' => 'asc', 'order' => 'title']]);
     foreach ($nodes_query as $delta => $string) {
-      $elements = $this->xpath('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', array(':class' => 'views-table', ':label' => $string));
+      $elements = $this->xpath('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [':class' => 'views-table', ':label' => $string]);
       $this->assertTrue(!empty($elements), 'The node was found in the correct order.');
     }
   }
@@ -118,10 +118,10 @@ function testContentAdminPages() {
     // they appear in the following code, and the 'content' View has a table
     // style configuration with a default sort on the 'changed' field DESC.
     $time = time();
-    $nodes['published_page'] = $this->drupalCreateNode(array('type' => 'page', 'changed' => $time--));
-    $nodes['published_article'] = $this->drupalCreateNode(array('type' => 'article', 'changed' => $time--));
-    $nodes['unpublished_page_1'] = $this->drupalCreateNode(array('type' => 'page', 'changed' => $time--, 'uid' => $this->baseUser1->id(), 'status' => 0));
-    $nodes['unpublished_page_2'] = $this->drupalCreateNode(array('type' => 'page', 'changed' => $time, 'uid' => $this->baseUser2->id(), 'status' => 0));
+    $nodes['published_page'] = $this->drupalCreateNode(['type' => 'page', 'changed' => $time--]);
+    $nodes['published_article'] = $this->drupalCreateNode(['type' => 'article', 'changed' => $time--]);
+    $nodes['unpublished_page_1'] = $this->drupalCreateNode(['type' => 'page', 'changed' => $time--, 'uid' => $this->baseUser1->id(), 'status' => 0]);
+    $nodes['unpublished_page_2'] = $this->drupalCreateNode(['type' => 'page', 'changed' => $time, 'uid' => $this->baseUser2->id(), 'status' => 0]);
 
     // Verify view, edit, and delete links for any content.
     $this->drupalGet('admin/content');
@@ -139,14 +139,14 @@ function testContentAdminPages() {
     }
 
     // Verify filtering by publishing status.
-    $this->drupalGet('admin/content', array('query' => array('status' => TRUE)));
+    $this->drupalGet('admin/content', ['query' => ['status' => TRUE]]);
 
     $this->assertLinkByHref('node/' . $nodes['published_page']->id() . '/edit');
     $this->assertLinkByHref('node/' . $nodes['published_article']->id() . '/edit');
     $this->assertNoLinkByHref('node/' . $nodes['unpublished_page_1']->id() . '/edit');
 
     // Verify filtering by status and content type.
-    $this->drupalGet('admin/content', array('query' => array('status' => TRUE, 'type' => 'page')));
+    $this->drupalGet('admin/content', ['query' => ['status' => TRUE, 'type' => 'page']]);
 
     $this->assertLinkByHref('node/' . $nodes['published_page']->id() . '/edit');
     $this->assertNoLinkByHref('node/' . $nodes['published_article']->id() . '/edit');
diff --git a/core/modules/node/src/Tests/NodeBlockFunctionalTest.php b/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
index 9579045..5a2e40a 100644
--- a/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
+++ b/core/modules/node/src/Tests/NodeBlockFunctionalTest.php
@@ -35,14 +35,14 @@ class NodeBlockFunctionalTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'views');
+  public static $modules = ['block', 'views'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create users and test node.
-    $this->adminUser = $this->drupalCreateUser(array('administer content types', 'administer nodes', 'administer blocks', 'access content overview'));
-    $this->webUser = $this->drupalCreateUser(array('access content', 'create article content'));
+    $this->adminUser = $this->drupalCreateUser(['administer content types', 'administer nodes', 'administer blocks', 'access content overview']);
+    $this->webUser = $this->drupalCreateUser(['access content', 'create article content']);
   }
 
   /**
@@ -52,34 +52,34 @@ public function testRecentNodeBlock() {
     $this->drupalLogin($this->adminUser);
 
     // Disallow anonymous users to view content.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access content' => FALSE,
-    ));
+    ]);
 
     // Enable the recent content block with two items.
-    $block = $this->drupalPlaceBlock('views_block:content_recent-block_1', array('id' => 'test_block', 'items_per_page' => 2));
+    $block = $this->drupalPlaceBlock('views_block:content_recent-block_1', ['id' => 'test_block', 'items_per_page' => 2]);
 
     // Test that block is not visible without nodes.
     $this->drupalGet('');
     $this->assertText(t('No content available.'), 'Block with "No content available." found.');
 
     // Add some test nodes.
-    $default_settings = array('uid' => $this->webUser->id(), 'type' => 'article');
+    $default_settings = ['uid' => $this->webUser->id(), 'type' => 'article'];
     $node1 = $this->drupalCreateNode($default_settings);
     $node2 = $this->drupalCreateNode($default_settings);
     $node3 = $this->drupalCreateNode($default_settings);
 
     // Change the changed time for node so that we can test ordering.
     db_update('node_field_data')
-      ->fields(array(
+      ->fields([
         'changed' => $node1->getChangedTime() + 100,
-      ))
+      ])
       ->condition('nid', $node2->id())
       ->execute();
     db_update('node_field_data')
-      ->fields(array(
+      ->fields([
         'changed' => $node1->getChangedTime() + 200,
-      ))
+      ])
       ->condition('nid', $node3->id())
       ->execute();
 
@@ -131,7 +131,7 @@ public function testRecentNodeBlock() {
     $this->assertTrue(isset($visibility['node_type']['bundles']['article']), 'Visibility settings were saved to configuration');
 
     // Create a page node.
-    $node5 = $this->drupalCreateNode(array('uid' => $this->adminUser->id(), 'type' => 'page'));
+    $node5 = $this->drupalCreateNode(['uid' => $this->adminUser->id(), 'type' => 'page']);
 
     $this->drupalLogout();
     $this->drupalLogin($this->webUser);
diff --git a/core/modules/node/src/Tests/NodeEditFormTest.php b/core/modules/node/src/Tests/NodeEditFormTest.php
index bef0252..ed8b34a 100644
--- a/core/modules/node/src/Tests/NodeEditFormTest.php
+++ b/core/modules/node/src/Tests/NodeEditFormTest.php
@@ -43,8 +43,8 @@ class NodeEditFormTest extends NodeTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array('edit own page content', 'create page content'));
-    $this->adminUser = $this->drupalCreateUser(array('bypass node access', 'administer nodes'));
+    $this->webUser = $this->drupalCreateUser(['edit own page content', 'create page content']);
+    $this->adminUser = $this->drupalCreateUser(['bypass node access', 'administer nodes']);
     $this->drupalPlaceBlock('local_tasks_block');
 
     $this->nodeStorage = $this->container->get('entity.manager')->getStorage('node');
@@ -59,7 +59,7 @@ public function testNodeEdit() {
     $title_key = 'title[0][value]';
     $body_key = 'body[0][value]';
     // Create node to edit.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
@@ -79,7 +79,7 @@ public function testNodeEdit() {
     $this->assertFieldByName($body_key, $edit[$body_key], 'Body field displayed.');
 
     // Edit the content of the node.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     // Stay on the current page, without reloading.
@@ -90,11 +90,11 @@ public function testNodeEdit() {
     $this->assertText($edit[$body_key], 'Body displayed.');
 
     // Log in as a second administrator user.
-    $second_web_user = $this->drupalCreateUser(array('administer nodes', 'edit any page content'));
+    $second_web_user = $this->drupalCreateUser(['administer nodes', 'edit any page content']);
     $this->drupalLogin($second_web_user);
     // Edit the same node, creating a new revision.
     $this->drupalGet("node/" . $node->id() . "/edit");
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     $edit['revision'] = TRUE;
@@ -140,7 +140,7 @@ public function testNodeEditAuthoredBy() {
 
     // Create node to edit.
     $body_key = 'body[0][value]';
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save and publish'));
@@ -173,7 +173,7 @@ public function testNodeEditAuthoredBy() {
 
     // Save the node without making any changes.
     $this->drupalPostForm('node/' . $node->id() . '/edit', [], t('Save and keep published'));
-    $this->nodeStorage->resetCache(array($node->id()));
+    $this->nodeStorage->resetCache([$node->id()]);
     $node = $this->nodeStorage->load($node->id());
     $this->assertIdentical($this->webUser->id(), $node->getOwner()->id());
 
@@ -185,7 +185,7 @@ public function testNodeEditAuthoredBy() {
     // Check that saving the node without making any changes keeps the proper
     // author ID.
     $this->drupalPostForm('node/' . $node->id() . '/edit', [], t('Save and keep published'));
-    $this->nodeStorage->resetCache(array($node->id()));
+    $this->nodeStorage->resetCache([$node->id()]);
     $node = $this->nodeStorage->load($node->id());
     $this->assertIdentical($this->webUser->id(), $node->getOwner()->id());
   }
@@ -200,17 +200,17 @@ public function testNodeEditAuthoredBy() {
    */
   protected function checkVariousAuthoredByValues(NodeInterface $node, $form_element_name) {
     // Try to change the 'authored by' field to an invalid user name.
-    $edit = array(
+    $edit = [
       $form_element_name => 'invalid-name',
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
-    $this->assertRaw(t('There are no entities matching "%name".', array('%name' => 'invalid-name')));
+    $this->assertRaw(t('There are no entities matching "%name".', ['%name' => 'invalid-name']));
 
     // Change the authored by field to an empty string, which should assign
     // authorship to the anonymous user (uid 0).
     $edit[$form_element_name] = '';
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
-    $this->nodeStorage->resetCache(array($node->id()));
+    $this->nodeStorage->resetCache([$node->id()]);
     $node = $this->nodeStorage->load($node->id());
     $uid = $node->getOwnerId();
     // Most SQL database drivers stringify fetches but entities are not
@@ -229,7 +229,7 @@ protected function checkVariousAuthoredByValues(NodeInterface $node, $form_eleme
     // logged in).
     $edit[$form_element_name] = $this->webUser->getUsername();
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
-    $this->nodeStorage->resetCache(array($node->id()));
+    $this->nodeStorage->resetCache([$node->id()]);
     $node = $this->nodeStorage->load($node->id());
     $this->assertIdentical($node->getOwnerId(), $this->webUser->id(), 'Node authored by normal user.');
   }
diff --git a/core/modules/node/src/Tests/NodeEntityViewModeAlterTest.php b/core/modules/node/src/Tests/NodeEntityViewModeAlterTest.php
index 25ae6b6..79baf9b 100644
--- a/core/modules/node/src/Tests/NodeEntityViewModeAlterTest.php
+++ b/core/modules/node/src/Tests/NodeEntityViewModeAlterTest.php
@@ -14,17 +14,17 @@ class NodeEntityViewModeAlterTest extends NodeTestBase {
   /**
    * Enable dummy module that implements hook_ENTITY_TYPE_view() for nodes.
    */
-  public static $modules = array('node_test');
+  public static $modules = ['node_test'];
 
   /**
    * Create a "Basic page" node and verify its consistency in the database.
    */
   function testNodeViewModeChange() {
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit own page content'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit own page content']);
     $this->drupalLogin($web_user);
 
     // Create a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = t('Data that should appear only in the body for the node.');
     $edit['body[0][summary]'] = t('Extra data that should appear only in the teaser for the node.');
diff --git a/core/modules/node/src/Tests/NodeFieldMultilingualTest.php b/core/modules/node/src/Tests/NodeFieldMultilingualTest.php
index 3bd1a51..ff01dee 100644
--- a/core/modules/node/src/Tests/NodeFieldMultilingualTest.php
+++ b/core/modules/node/src/Tests/NodeFieldMultilingualTest.php
@@ -20,31 +20,31 @@ class NodeFieldMultilingualTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'language');
+  public static $modules = ['node', 'language'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create Basic page node type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     // Setup users.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'administer content types', 'access administration pages', 'create page content', 'edit own page content'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'administer content types', 'access administration pages', 'create page content', 'edit own page content']);
     $this->drupalLogin($admin_user);
 
     // Add a new language.
     ConfigurableLanguage::createFromLangcode('it')->save();
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => '1');
+    $edit = ['language_interface[enabled][language-url]' => '1'];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Set "Basic page" content type to use multilingual support.
-    $edit = array(
+    $edit = [
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
-    $this->assertRaw(t('The content type %type has been updated.', array('%type' => 'Basic page')), 'Basic page content type has been updated.');
+    $this->assertRaw(t('The content type %type has been updated.', ['%type' => 'Basic page']), 'Basic page content type has been updated.');
 
     // Make node body translatable.
     $field_storage = FieldStorageConfig::loadByName('node', 'body');
@@ -64,7 +64,7 @@ function testMultilingualNodeForm() {
     $body_value = $this->randomMachineName(16);
 
     // Create node to edit.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $title_value;
     $edit[$body_key] = $body_value;
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
@@ -77,17 +77,17 @@ function testMultilingualNodeForm() {
     // Change node language.
     $langcode = 'it';
     $this->drupalGet("node/{$node->id()}/edit");
-    $edit = array(
+    $edit = [
       $title_key => $this->randomMachineName(8),
       'langcode[0][value]' => $langcode,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $node = $this->drupalGetNodeByTitle($edit[$title_key], TRUE);
     $this->assertTrue($node, 'Node found in database.');
     $this->assertTrue($node->language()->getId() == $langcode && $node->body->value == $body_value, 'Field language correctly changed.');
 
     // Enable content language URL detection.
-    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_CONTENT, array(LanguageNegotiationUrl::METHOD_ID => 0));
+    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_CONTENT, [LanguageNegotiationUrl::METHOD_ID => 0]);
 
     // Test multilingual field language fallback logic.
     $this->drupalGet("it/node/{$node->id()}");
@@ -108,7 +108,7 @@ function testMultilingualDisplaySettings() {
     $body_value = $this->randomMachineName(16);
 
     // Create node to edit.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $title_value;
     $edit[$body_key] = $body_value;
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
@@ -119,10 +119,10 @@ function testMultilingualDisplaySettings() {
 
     // Check if node body is showed.
     $this->drupalGet('node/' . $node->id());
-    $body = $this->xpath('//article[contains(concat(" ", normalize-space(@class), " "), :node-class)]//div[contains(concat(" ", normalize-space(@class), " "), :content-class)]/descendant::p', array(
+    $body = $this->xpath('//article[contains(concat(" ", normalize-space(@class), " "), :node-class)]//div[contains(concat(" ", normalize-space(@class), " "), :content-class)]/descendant::p', [
       ':node-class' => ' node ',
       ':content-class' => 'node__content',
-    ));
+    ]);
     $this->assertEqual(current($body), $node->body->value, 'Node body found.');
   }
 
diff --git a/core/modules/node/src/Tests/NodeFormButtonsTest.php b/core/modules/node/src/Tests/NodeFormButtonsTest.php
index 9f6732b..9f98007 100644
--- a/core/modules/node/src/Tests/NodeFormButtonsTest.php
+++ b/core/modules/node/src/Tests/NodeFormButtonsTest.php
@@ -29,9 +29,9 @@ protected function setUp() {
     parent::setUp();
 
     // Create a user that has no access to change the state of the node.
-    $this->webUser = $this->drupalCreateUser(array('create article content', 'edit own article content'));
+    $this->webUser = $this->drupalCreateUser(['create article content', 'edit own article content']);
     // Create a user that has access to change the state of the node.
-    $this->adminUser = $this->drupalCreateUser(array('administer nodes', 'bypass node access'));
+    $this->adminUser = $this->drupalCreateUser(['administer nodes', 'bypass node access']);
   }
 
   /**
@@ -44,11 +44,11 @@ function testNodeFormButtons() {
 
     // Verify the buttons on a node add form.
     $this->drupalGet('node/add/article');
-    $this->assertButtons(array(t('Save and publish'), t('Save as unpublished')));
+    $this->assertButtons([t('Save and publish'), t('Save as unpublished')]);
 
     // Save the node and assert it's published after clicking
     // 'Save and publish'.
-    $edit = array('title[0][value]' => $this->randomString());
+    $edit = ['title[0][value]' => $this->randomString()];
     $this->drupalPostForm('node/add/article', $edit, t('Save and publish'));
 
     // Get the node.
@@ -57,25 +57,25 @@ function testNodeFormButtons() {
 
     // Verify the buttons on a node edit form.
     $this->drupalGet('node/' . $node_1->id() . '/edit');
-    $this->assertButtons(array(t('Save and keep published'), t('Save and unpublish')));
+    $this->assertButtons([t('Save and keep published'), t('Save and unpublish')]);
 
     // Save the node and verify it's still published after clicking
     // 'Save and keep published'.
     $this->drupalPostForm(NULL, $edit, t('Save and keep published'));
-    $node_storage->resetCache(array(1));
+    $node_storage->resetCache([1]);
     $node_1 = $node_storage->load(1);
     $this->assertTrue($node_1->isPublished(), 'Node is published');
 
     // Save the node and verify it's unpublished after clicking
     // 'Save and unpublish'.
     $this->drupalPostForm('node/' . $node_1->id() . '/edit', $edit, t('Save and unpublish'));
-    $node_storage->resetCache(array(1));
+    $node_storage->resetCache([1]);
     $node_1 = $node_storage->load(1);
     $this->assertFalse($node_1->isPublished(), 'Node is unpublished');
 
     // Verify the buttons on an unpublished node edit screen.
     $this->drupalGet('node/' . $node_1->id() . '/edit');
-    $this->assertButtons(array(t('Save and keep unpublished'), t('Save and publish')));
+    $this->assertButtons([t('Save and keep unpublished'), t('Save and publish')]);
 
     // Create a node as a normal user.
     $this->drupalLogout();
@@ -83,10 +83,10 @@ function testNodeFormButtons() {
 
     // Verify the buttons for a normal user.
     $this->drupalGet('node/add/article');
-    $this->assertButtons(array(t('Save')), FALSE);
+    $this->assertButtons([t('Save')], FALSE);
 
     // Create the node.
-    $edit = array('title[0][value]' => $this->randomString());
+    $edit = ['title[0][value]' => $this->randomString()];
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
     $node_2 = $node_storage->load(2);
     $this->assertTrue($node_2->isPublished(), 'Node is published');
@@ -95,8 +95,8 @@ function testNodeFormButtons() {
     // was created by the normal user.
     $this->drupalLogout();
     $this->drupalLogin($this->adminUser);
-    $this->drupalPostForm('node/' . $node_2->id() . '/edit', array(), t('Save and unpublish'));
-    $node_storage->resetCache(array(2));
+    $this->drupalPostForm('node/' . $node_2->id() . '/edit', [], t('Save and unpublish'));
+    $node_storage->resetCache([2]);
     $node_2 = $node_storage->load(2);
     $this->assertFalse($node_2->isPublished(), 'Node is unpublished');
 
@@ -104,8 +104,8 @@ function testNodeFormButtons() {
     // it's still unpublished.
     $this->drupalLogout();
     $this->drupalLogin($this->webUser);
-    $this->drupalPostForm('node/' . $node_2->id() . '/edit', array(), t('Save'));
-    $node_storage->resetCache(array(2));
+    $this->drupalPostForm('node/' . $node_2->id() . '/edit', [], t('Save'));
+    $node_storage->resetCache([2]);
     $node_2 = $node_storage->load(2);
     $this->assertFalse($node_2->isPublished(), 'Node is still unpublished');
     $this->drupalLogout();
@@ -121,12 +121,12 @@ function testNodeFormButtons() {
     // Verify the buttons on a node add form for an administrator.
     $this->drupalLogin($this->adminUser);
     $this->drupalGet('node/add/article');
-    $this->assertButtons(array(t('Save as unpublished'), t('Save and publish')));
+    $this->assertButtons([t('Save as unpublished'), t('Save and publish')]);
 
     // Verify the node is unpublished by default for a normal user.
     $this->drupalLogout();
     $this->drupalLogin($this->webUser);
-    $edit = array('title[0][value]' => $this->randomString());
+    $edit = ['title[0][value]' => $this->randomString()];
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
     $node_3 = $node_storage->load(3);
     $this->assertFalse($node_3->isPublished(), 'Node is unpublished');
diff --git a/core/modules/node/src/Tests/NodeQueryAlterTest.php b/core/modules/node/src/Tests/NodeQueryAlterTest.php
index 022625b..ad63d6b 100644
--- a/core/modules/node/src/Tests/NodeQueryAlterTest.php
+++ b/core/modules/node/src/Tests/NodeQueryAlterTest.php
@@ -14,7 +14,7 @@ class NodeQueryAlterTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test');
+  public static $modules = ['node_access_test'];
 
   /**
    * User with permission to view content.
@@ -39,9 +39,9 @@ protected function setUp() {
 
     // Create user with simple node access permission. The 'node test view'
     // permission is implemented and granted by the node_access_test module.
-    $this->accessUser = $this->drupalCreateUser(array('access content overview', 'access content', 'node test view'));
-    $this->noAccessUser = $this->drupalCreateUser(array('access content overview', 'access content'));
-    $this->noAccessUser2 = $this->drupalCreateUser(array('access content overview', 'access content'));
+    $this->accessUser = $this->drupalCreateUser(['access content overview', 'access content', 'node test view']);
+    $this->noAccessUser = $this->drupalCreateUser(['access content overview', 'access content']);
+    $this->noAccessUser2 = $this->drupalCreateUser(['access content overview', 'access content']);
   }
 
   /**
@@ -143,14 +143,14 @@ function testNodeQueryAlterLowLevelEditAccess() {
    * hook_node_grants().
    */
   function testNodeQueryAlterOverride() {
-    $record = array(
+    $record = [
       'nid' => 0,
       'gid' => 0,
       'realm' => 'node_access_all',
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
-    );
+    ];
     db_insert('node_access')->fields($record)->execute();
 
     // Test that the noAccessUser still doesn't have the 'view'
diff --git a/core/modules/node/src/Tests/NodeRevisionPermissionsTest.php b/core/modules/node/src/Tests/NodeRevisionPermissionsTest.php
index e000fb8..6f1409d 100644
--- a/core/modules/node/src/Tests/NodeRevisionPermissionsTest.php
+++ b/core/modules/node/src/Tests/NodeRevisionPermissionsTest.php
@@ -21,30 +21,30 @@ class NodeRevisionPermissionsTest extends NodeTestBase {
    *
    * @var array
    */
-  protected $accounts = array();
+  protected $accounts = [];
 
   // Map revision permission names to node revision access ops.
-  protected $map = array(
+  protected $map = [
     'view' => 'view all revisions',
     'update' => 'revert all revisions',
     'delete' => 'delete all revisions',
-  );
+  ];
 
   // Map revision permission names to node type revision access ops.
-  protected $typeMap = array(
+  protected $typeMap = [
     'view' => 'view page revisions',
     'update' => 'revert page revisions',
     'delete' => 'delete page revisions',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
 
-    $types = array('page', 'article');
+    $types = ['page', 'article'];
 
     foreach ($types as $type) {
       // Create a node with several revisions.
-      $nodes[$type] = $this->drupalCreateNode(array('type' => $type));
+      $nodes[$type] = $this->drupalCreateNode(['type' => $type]);
       $this->nodeRevisions[$type][] = $nodes[$type];
 
       for ($i = 0; $i < 3; $i++) {
@@ -66,19 +66,19 @@ function testNodeRevisionAccessAnyType() {
     foreach ($this->map as $op => $permission) {
       // Create the user.
       $account = $this->drupalCreateUser(
-        array(
+        [
           'access content',
           'edit any page content',
           'delete any page content',
           $permission,
-        )
+        ]
       );
       $account->op = $op;
       $this->accounts[] = $account;
     }
 
     // Create an admin account (returns TRUE for all revision permissions).
-    $admin_account = $this->drupalCreateUser(array('access content', 'administer nodes'));
+    $admin_account = $this->drupalCreateUser(['access content', 'administer nodes']);
     $admin_account->is_admin = TRUE;
     $this->accounts['admin'] = $admin_account;
     $accounts['admin'] = $admin_account;
@@ -90,17 +90,17 @@ function testNodeRevisionAccessAnyType() {
     $accounts[] = $normal_account;
     $revision = $this->nodeRevisions['page'][1];
 
-    $parameters = array(
+    $parameters = [
       'op' => array_keys($this->map),
       'account' => $this->accounts,
-    );
+    ];
 
     $permutations = $this->generatePermutations($parameters);
 
     $node_revision_access = \Drupal::service('access_check.node.revision');
     foreach ($permutations as $case) {
       // Skip this test if there are no revisions for the node.
-      if (!($revision->isDefaultRevision() && (db_query('SELECT COUNT(vid) FROM {node_field_revision} WHERE nid = :nid', array(':nid' => $revision->id()))->fetchField() == 1 || $case['op'] == 'update' || $case['op'] == 'delete'))) {
+      if (!($revision->isDefaultRevision() && (db_query('SELECT COUNT(vid) FROM {node_field_revision} WHERE nid = :nid', [':nid' => $revision->id()])->fetchField() == 1 || $case['op'] == 'update' || $case['op'] == 'delete'))) {
         if (!empty($case['account']->is_admin) || $case['account']->hasPermission($this->map[$case['op']])) {
           $this->assertTrue($node_revision_access->checkAccess($revision, $case['account'], $case['op']), "{$this->map[$case['op']]} granted.");
         }
@@ -124,21 +124,21 @@ function testNodeRevisionAccessPerType() {
     foreach ($this->typeMap as $op => $permission) {
       // Create the user.
       $account = $this->drupalCreateUser(
-        array(
+        [
           'access content',
           'edit any page content',
           'delete any page content',
           $permission,
-        )
+        ]
       );
       $account->op = $op;
       $accounts[] = $account;
     }
 
-    $parameters = array(
+    $parameters = [
       'op' => array_keys($this->typeMap),
       'account' => $accounts,
-    );
+    ];
 
     // Test that the accounts have access to the corresponding page revision
     // permissions.
@@ -148,7 +148,7 @@ function testNodeRevisionAccessPerType() {
     $node_revision_access = \Drupal::service('access_check.node.revision');
     foreach ($permutations as $case) {
       // Skip this test if there are no revisions for the node.
-      if (!($revision->isDefaultRevision() && (db_query('SELECT COUNT(vid) FROM {node_field_revision} WHERE nid = :nid', array(':nid' => $revision->id()))->fetchField() == 1 || $case['op'] == 'update' || $case['op'] == 'delete'))) {
+      if (!($revision->isDefaultRevision() && (db_query('SELECT COUNT(vid) FROM {node_field_revision} WHERE nid = :nid', [':nid' => $revision->id()])->fetchField() == 1 || $case['op'] == 'update' || $case['op'] == 'delete'))) {
         if (!empty($case['account']->is_admin) || $case['account']->hasPermission($this->typeMap[$case['op']], $case['account'])) {
           $this->assertTrue($node_revision_access->checkAccess($revision, $case['account'], $case['op']), "{$this->typeMap[$case['op']]} granted.");
         }
diff --git a/core/modules/node/src/Tests/NodeRevisionsTest.php b/core/modules/node/src/Tests/NodeRevisionsTest.php
index bfdd213..1979863 100644
--- a/core/modules/node/src/Tests/NodeRevisionsTest.php
+++ b/core/modules/node/src/Tests/NodeRevisionsTest.php
@@ -47,26 +47,26 @@ protected function setUp() {
     ConfigurableLanguage::createFromLangcode('de')->save();
     ConfigurableLanguage::createFromLangcode('it')->save();
 
-    $field_storage_definition = array(
+    $field_storage_definition = [
       'field_name' => 'untranslatable_string_field',
       'entity_type' => 'node',
       'type' => 'string',
       'cardinality' => 1,
       'translatable' => FALSE,
-    );
+    ];
     $field_storage = FieldStorageConfig::create($field_storage_definition);
     $field_storage->save();
 
-    $field_definition = array(
+    $field_definition = [
       'field_storage' => $field_storage,
       'bundle' => 'page',
-    );
+    ];
     $field = FieldConfig::create($field_definition);
     $field->save();
 
     // Create and log in user.
     $web_user = $this->drupalCreateUser(
-      array(
+      [
         'view page revisions',
         'revert page revisions',
         'delete page revisions',
@@ -75,7 +75,7 @@ protected function setUp() {
         'access contextual links',
         'translate any entity',
         'administer content types',
-      )
+      ]
     );
 
     $this->drupalLogin($web_user);
@@ -86,8 +86,8 @@ protected function setUp() {
     $settings['revision'] = 1;
     $settings['isDefaultRevision'] = TRUE;
 
-    $nodes = array();
-    $logs = array();
+    $nodes = [];
+    $logs = [];
 
     // Get original node.
     $nodes[] = clone $node;
@@ -99,10 +99,10 @@ protected function setUp() {
 
       // Create revision with a random title and body and update variables.
       $node->title = $this->randomMachineName();
-      $node->body = array(
+      $node->body = [
         'value' => $this->randomMachineName(32),
         'format' => filter_default_format(),
-      );
+      ];
       $node->untranslatable_string_field->value = $this->randomString();
       $node->setNewRevision();
 
@@ -167,11 +167,11 @@ function testRevisions() {
 
 
     // Confirm that revisions revert properly.
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionid() . "/revert", array(), t('Revert'));
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionid() . "/revert", [], t('Revert'));
     $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.',
-                        array('@type' => 'Basic page', '%title' => $nodes[1]->label(),
-                              '%revision-date' => format_date($nodes[1]->getRevisionCreationTime()))), 'Revision reverted.');
-    $node_storage->resetCache(array($node->id()));
+                        ['@type' => 'Basic page', '%title' => $nodes[1]->label(),
+                              '%revision-date' => format_date($nodes[1]->getRevisionCreationTime())]), 'Revision reverted.');
+    $node_storage->resetCache([$node->id()]);
     $reverted_node = $node_storage->load($node->id());
     $this->assertTrue(($nodes[1]->body->value == $reverted_node->body->value), 'Node reverted correctly.');
 
@@ -190,27 +190,27 @@ function testRevisions() {
 
 
     // Confirm revisions delete properly.
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/delete", array(), t('Delete'));
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/delete", [], t('Delete'));
     $this->assertRaw(t('Revision from %revision-date of @type %title has been deleted.',
-                        array('%revision-date' => format_date($nodes[1]->getRevisionCreationTime()),
-                              '@type' => 'Basic page', '%title' => $nodes[1]->label())), 'Revision deleted.');
-    $this->assertTrue(db_query('SELECT COUNT(vid) FROM {node_revision} WHERE nid = :nid and vid = :vid', array(':nid' => $node->id(), ':vid' => $nodes[1]->getRevisionId()))->fetchField() == 0, 'Revision not found.');
+                        ['%revision-date' => format_date($nodes[1]->getRevisionCreationTime()),
+                              '@type' => 'Basic page', '%title' => $nodes[1]->label()]), 'Revision deleted.');
+    $this->assertTrue(db_query('SELECT COUNT(vid) FROM {node_revision} WHERE nid = :nid and vid = :vid', [':nid' => $node->id(), ':vid' => $nodes[1]->getRevisionId()])->fetchField() == 0, 'Revision not found.');
 
     // Set the revision timestamp to an older date to make sure that the
     // confirmation message correctly displays the stored revision date.
     $old_revision_date = REQUEST_TIME - 86400;
     db_update('node_revision')
       ->condition('vid', $nodes[2]->getRevisionId())
-      ->fields(array(
+      ->fields([
         'revision_timestamp' => $old_revision_date,
-      ))
+      ])
       ->execute();
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[2]->getRevisionId() . "/revert", array(), t('Revert'));
-    $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.', array(
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[2]->getRevisionId() . "/revert", [], t('Revert'));
+    $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.', [
       '@type' => 'Basic page',
       '%title' => $nodes[2]->label(),
       '%revision-date' => format_date($old_revision_date),
-    )));
+    ]));
 
     // Make a new revision and set it to not be default.
     // This will create a new revision that is not "front facing".
@@ -232,7 +232,7 @@ function testRevisions() {
     // Verify that the non-default revision vid is greater than the default
     // revision vid.
     $default_revision = db_select('node', 'n')
-      ->fields('n', array('vid'))
+      ->fields('n', ['vid'])
       ->condition('nid', $node->id())
       ->execute()
       ->fetchCol();
@@ -301,7 +301,7 @@ function testNodeRevisionWithoutLogMessage() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     // Create a node with an initial log message.
     $revision_log = $this->randomMachineName(10);
-    $node = $this->drupalCreateNode(array('revision_log' => $revision_log));
+    $node = $this->drupalCreateNode(['revision_log' => $revision_log]);
 
     // Save over the same revision and explicitly provide an empty log message
     // (for example, to mimic the case of a node form submitted with no text in
@@ -317,12 +317,12 @@ function testNodeRevisionWithoutLogMessage() {
     $node->save();
     $this->drupalGet('node/' . $node->id());
     $this->assertText($new_title, 'New node title appears on the page.');
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node_revision = $node_storage->load($node->id());
     $this->assertEqual($node_revision->revision_log->value, $revision_log, 'After an existing node revision is re-saved without a log message, the original log message is preserved.');
 
     // Create another node with an initial revision log message.
-    $node = $this->drupalCreateNode(array('revision_log' => $revision_log));
+    $node = $this->drupalCreateNode(['revision_log' => $revision_log]);
 
     // Save a new node revision without providing a log message, and check that
     // this revision has an empty log message.
@@ -336,7 +336,7 @@ function testNodeRevisionWithoutLogMessage() {
     $node->save();
     $this->drupalGet('node/' . $node->id());
     $this->assertText($new_title, 'New node title appears on the page.');
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node_revision = $node_storage->load($node->id());
     $this->assertTrue(empty($node_revision->revision_log->value), 'After a new node revision is saved with an empty log message, the log message for the node is empty.');
   }
@@ -353,7 +353,7 @@ function testNodeRevisionWithoutLogMessage() {
    *   The decoded JSON response body.
    */
   protected function renderContextualLinks(array $ids, $current_path) {
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($ids); $i++) {
       $post['ids[' . $i . ']'] = $ids[$i];
     }
diff --git a/core/modules/node/src/Tests/NodeSyndicateBlockTest.php b/core/modules/node/src/Tests/NodeSyndicateBlockTest.php
index 31b216f..23c3d88 100644
--- a/core/modules/node/src/Tests/NodeSyndicateBlockTest.php
+++ b/core/modules/node/src/Tests/NodeSyndicateBlockTest.php
@@ -14,13 +14,13 @@ class NodeSyndicateBlockTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a user and log in.
-    $admin_user = $this->drupalCreateUser(array('administer blocks'));
+    $admin_user = $this->drupalCreateUser(['administer blocks']);
     $this->drupalLogin($admin_user);
   }
 
@@ -29,7 +29,7 @@ protected function setUp() {
    */
   public function testSyndicateBlock() {
     // Place the "Syndicate" block and confirm that it is rendered.
-    $this->drupalPlaceBlock('node_syndicate_block', array('id' => 'test_syndicate_block'));
+    $this->drupalPlaceBlock('node_syndicate_block', ['id' => 'test_syndicate_block']);
     $this->drupalGet('');
     $this->assertFieldByXPath('//div[@id="block-test-syndicate-block"]/*', NULL, 'Syndicate block found.');
   }
diff --git a/core/modules/node/src/Tests/NodeTestBase.php b/core/modules/node/src/Tests/NodeTestBase.php
index a5da2b4..d5a349d 100644
--- a/core/modules/node/src/Tests/NodeTestBase.php
+++ b/core/modules/node/src/Tests/NodeTestBase.php
@@ -19,7 +19,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'datetime');
+  public static $modules = ['node', 'datetime'];
 
   /**
    * The node access control handler.
@@ -36,12 +36,12 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array(
+      $this->drupalCreateContentType([
         'type' => 'page',
         'name' => 'Basic page',
         'display_submitted' => FALSE,
-      ));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      ]);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
     $this->accessHandler = \Drupal::entityManager()->getAccessControlHandler('node');
   }
@@ -79,9 +79,9 @@ function assertNodeAccess(array $ops, NodeInterface $node, AccountInterface $acc
    *   to check. If NULL, the untranslated (fallback) access is checked.
    */
   function assertNodeCreateAccess($bundle, $result, AccountInterface $account, $langcode = NULL) {
-    $this->assertEqual($result, $this->accessHandler->createAccess($bundle, $account, array(
+    $this->assertEqual($result, $this->accessHandler->createAccess($bundle, $account, [
       'langcode' => $langcode,
-    )), $this->nodeAccessAssertMessage('create', $result, $langcode));
+    ]), $this->nodeAccessAssertMessage('create', $result, $langcode));
   }
 
   /**
@@ -102,11 +102,11 @@ function assertNodeCreateAccess($bundle, $result, AccountInterface $account, $la
   function nodeAccessAssertMessage($operation, $result, $langcode = NULL) {
     return format_string(
       'Node access returns @result with operation %op, language code %langcode.',
-      array(
+      [
         '@result' => $result ? 'true' : 'false',
         '%op' => $operation,
         '%langcode' => !empty($langcode) ? $langcode : 'empty'
-      )
+      ]
     );
   }
 
diff --git a/core/modules/node/src/Tests/NodeTitleTest.php b/core/modules/node/src/Tests/NodeTitleTest.php
index 59ee021..986be79 100644
--- a/core/modules/node/src/Tests/NodeTitleTest.php
+++ b/core/modules/node/src/Tests/NodeTitleTest.php
@@ -19,7 +19,7 @@ class NodeTitleTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment', 'views', 'block');
+  public static $modules = ['comment', 'views', 'block'];
 
   /**
    * A user with permission to bypass access content.
@@ -35,7 +35,7 @@ protected function setUp() {
     parent::setUp();
     $this->drupalPlaceBlock('system_breadcrumb_block');
 
-    $this->adminUser = $this->drupalCreateUser(array('administer nodes', 'create article content', 'create page content', 'post comments'));
+    $this->adminUser = $this->drupalCreateUser(['administer nodes', 'create article content', 'create page content', 'post comments']);
     $this->drupalLogin($this->adminUser);
     $this->addDefaultCommentField('node', 'page');
   }
@@ -47,10 +47,10 @@ function testNodeTitle() {
     // Create "Basic page" content with title.
     // Add the node to the frontpage so we can test if teaser links are
     // clickable.
-    $settings = array(
+    $settings = [
       'title' => $this->randomMachineName(8),
       'promote' => 1,
-    );
+    ];
     $node = $this->drupalCreateNode($settings);
 
     // Test <title> tag.
@@ -64,16 +64,16 @@ function testNodeTitle() {
     $this->assertEqual(current($this->xpath($xpath)), $node->label(), 'Node breadcrumb is equal to node title.', 'Node');
 
     // Test node title in comment preview.
-    $this->assertEqual(current($this->xpath('//article[contains(concat(" ", normalize-space(@class), " "), :node-class)]/h2/a/span', array(':node-class' => ' node--type-' . $node->bundle() . ' '))), $node->label(), 'Node preview title is equal to node title.', 'Node');
+    $this->assertEqual(current($this->xpath('//article[contains(concat(" ", normalize-space(@class), " "), :node-class)]/h2/a/span', [':node-class' => ' node--type-' . $node->bundle() . ' '])), $node->label(), 'Node preview title is equal to node title.', 'Node');
 
     // Test node title is clickable on teaser list (/node).
     $this->drupalGet('node');
     $this->clickLink($node->label());
 
     // Test edge case where node title is set to 0.
-    $settings = array(
+    $settings = [
       'title' => 0,
-    );
+    ];
     $node = $this->drupalCreateNode($settings);
     // Test that 0 appears as <title>.
     $this->drupalGet('node/' . $node->id());
@@ -84,9 +84,9 @@ function testNodeTitle() {
 
     // Test edge case where node title contains special characters.
     $edge_case_title = 'article\'s "title".';
-    $settings = array(
+    $settings = [
       'title' => $edge_case_title,
-    );
+    ];
     $node = $this->drupalCreateNode($settings);
     // Test that the title appears as <title>. The title will be escaped on the
     // the page.
diff --git a/core/modules/node/src/Tests/NodeTitleXSSTest.php b/core/modules/node/src/Tests/NodeTitleXSSTest.php
index c410275..7b4890e 100644
--- a/core/modules/node/src/Tests/NodeTitleXSSTest.php
+++ b/core/modules/node/src/Tests/NodeTitleXSSTest.php
@@ -16,18 +16,18 @@ class NodeTitleXSSTest extends NodeTestBase {
    */
   function testNodeTitleXSS() {
     // Prepare a user to do the stuff.
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit any page content'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit any page content']);
     $this->drupalLogin($web_user);
 
     $xss = '<script>alert("xss")</script>';
     $title = $xss . $this->randomMachineName();
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $title;
 
     $this->drupalPostForm('node/add/page', $edit, t('Preview'));
     $this->assertNoRaw($xss, 'Harmful tags are escaped when previewing a node.');
 
-    $settings = array('title' => $title);
+    $settings = ['title' => $title];
     $node = $this->drupalCreateNode($settings);
 
     $this->drupalGet('node/' . $node->id());
diff --git a/core/modules/node/src/Tests/NodeTranslationUITest.php b/core/modules/node/src/Tests/NodeTranslationUITest.php
index 063469d..a01c4d5 100644
--- a/core/modules/node/src/Tests/NodeTranslationUITest.php
+++ b/core/modules/node/src/Tests/NodeTranslationUITest.php
@@ -35,7 +35,7 @@ class NodeTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'language', 'content_translation', 'node', 'datetime', 'field_ui', 'help');
+  public static $modules = ['block', 'language', 'content_translation', 'node', 'datetime', 'field_ui', 'help'];
 
   /**
    * The profile to install as a basis for testing.
@@ -50,11 +50,11 @@ protected function setUp() {
     parent::setUp();
 
     // Ensure the help message is shown even with prefixed paths.
-    $this->drupalPlaceBlock('help_block', array('region' => 'content'));
+    $this->drupalPlaceBlock('help_block', ['region' => 'content']);
 
     // Display the language selector.
     $this->drupalLogin($this->administrator);
-    $edit = array('language_configuration[language_alterable]' => TRUE);
+    $edit = ['language_configuration[language_alterable]' => TRUE];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
     $this->drupalLogin($this->translator);
   }
@@ -75,13 +75,13 @@ public function testPublishedStatusNoFields() {
     $this->drupalLogin($this->administrator);
     // Delete all fields.
     $this->drupalGet('admin/structure/types/manage/article/fields');
-    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $this->fieldName . '/delete', array(), t('Delete'));
-    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_tags/delete', array(), t('Delete'));
-    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_image/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.' . $this->fieldName . '/delete', [], t('Delete'));
+    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_tags/delete', [], t('Delete'));
+    $this->drupalPostForm('admin/structure/types/manage/article/fields/node.article.field_image/delete', [], t('Delete'));
 
     // Add a node.
     $default_langcode = $this->langcodes[0];
-    $values[$default_langcode] = array('title' => array(array('value' => $this->randomMachineName())));
+    $values[$default_langcode] = ['title' => [['value' => $this->randomMachineName()]]];
     $entity_id = $this->createEntity($values[$default_langcode], $default_langcode);
     $storage = $this->container->get('entity_type.manager')
       ->getStorage($this->entityTypeId);
@@ -91,14 +91,14 @@ public function testPublishedStatusNoFields() {
     // Add a content translation.
     $langcode = 'fr';
     $language = ConfigurableLanguage::load($langcode);
-    $values[$langcode] = array('title' => array(array('value' => $this->randomMachineName())));
+    $values[$langcode] = ['title' => [['value' => $this->randomMachineName()]]];
 
     $entity_type_id = $entity->getEntityTypeId();
     $add_url = Url::fromRoute("entity.$entity_type_id.content_translation_add", [
       $entity->getEntityTypeId() => $entity->id(),
       'source' => $default_langcode,
       'target' => $langcode
-    ], array('language' => $language));
+    ], ['language' => $language]);
     $this->drupalPostForm($add_url, $this->getEditValues($values, $langcode), t('Save and unpublish (this translation)'));
 
     $storage->resetCache([$this->entityId]);
@@ -112,28 +112,28 @@ public function testPublishedStatusNoFields() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('administer nodes', "edit any $this->bundle content"));
+    return array_merge(parent::getTranslatorPermissions(), ['administer nodes', "edit any $this->bundle content"]);
   }
 
   /**
    * {@inheritdoc}
    */
   protected function getEditorPermissions() {
-    return array('administer nodes', 'create article content');
+    return ['administer nodes', 'create article content'];
   }
 
   /**
    * {@inheritdoc}
    */
   protected function getAdministratorPermissions() {
-    return array_merge(parent::getAdministratorPermissions(), array('access administration pages', 'administer content types', 'administer node fields', 'access content overview', 'bypass node access', 'administer languages', 'administer themes', 'view the administration theme'));
+    return array_merge(parent::getAdministratorPermissions(), ['access administration pages', 'administer content types', 'administer node fields', 'access content overview', 'bypass node access', 'administer languages', 'administer themes', 'view the administration theme']);
   }
 
   /**
    * {@inheritdoc}
    */
   protected function getNewEntityValues($langcode) {
-    return array('title' => array(array('value' => $this->randomMachineName()))) + parent::getNewEntityValues($langcode);
+    return ['title' => [['value' => $this->randomMachineName()]]] + parent::getNewEntityValues($langcode);
   }
 
   /**
@@ -158,18 +158,18 @@ protected function doTestPublishedStatus() {
     $entity = $storage->load($this->entityId);
     $languages = $this->container->get('language_manager')->getLanguages();
 
-    $actions = array(
+    $actions = [
       t('Save and keep published'),
       t('Save and unpublish'),
-    );
+    ];
 
     foreach ($actions as $index => $action) {
       // (Un)publish the node translations and check that the translation
       // statuses are (un)published accordingly.
       foreach ($this->langcodes as $langcode) {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
-        $this->drupalPostForm($url, array(), $action . $this->getFormSubmitSuffix($entity, $langcode), $options);
+        $this->drupalPostForm($url, [], $action . $this->getFormSubmitSuffix($entity, $langcode), $options);
       }
       $storage->resetCache([$this->entityId]);
       $entity = $storage->load($this->entityId);
@@ -192,25 +192,25 @@ protected function doTestAuthoringInfo() {
     $storage->resetCache([$this->entityId]);
     $entity = $storage->load($this->entityId);
     $languages = $this->container->get('language_manager')->getLanguages();
-    $values = array();
+    $values = [];
 
     // Post different base field information for each translation.
     foreach ($this->langcodes as $langcode) {
       $user = $this->drupalCreateUser();
-      $values[$langcode] = array(
+      $values[$langcode] = [
         'uid' => $user->id(),
         'created' => REQUEST_TIME - mt_rand(0, 1000),
         'sticky' => (bool) mt_rand(0, 1),
         'promote' => (bool) mt_rand(0, 1),
-      );
-      $edit = array(
+      ];
+      $edit = [
         'uid[0][target_id]' => $user->getUsername(),
         'created[0][value][date]' => format_date($values[$langcode]['created'], 'custom', 'Y-m-d'),
         'created[0][value][time]' => format_date($values[$langcode]['created'], 'custom', 'H:i:s'),
         'sticky[value]' => $values[$langcode]['sticky'],
         'promote[value]' => $values[$langcode]['promote'],
-      );
-      $options = array('language' => $languages[$langcode]);
+      ];
+      $options = ['language' => $languages[$langcode]];
       $url = $entity->urlInfo('edit-form', $options);
       $this->drupalPostForm($url, $edit, $this->getFormSubmitAction($entity, $langcode), $options);
     }
@@ -232,11 +232,11 @@ protected function doTestAuthoringInfo() {
    */
   public function testTranslationLinkTheme() {
     $this->drupalLogin($this->administrator);
-    $article = $this->drupalCreateNode(array('type' => 'article', 'langcode' => $this->langcodes[0]));
+    $article = $this->drupalCreateNode(['type' => 'article', 'langcode' => $this->langcodes[0]]);
 
     // Set up Seven as the admin theme and use it for node editing.
-    $this->container->get('theme_handler')->install(array('seven'));
-    $edit = array();
+    $this->container->get('theme_handler')->install(['seven']);
+    $edit = [];
     $edit['admin_theme'] = 'seven';
     $edit['use_admin_theme'] = TRUE;
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
@@ -259,16 +259,16 @@ public function testTranslationLinkTheme() {
   public function testDisabledBundle() {
     // Create a bundle that does not have translation enabled.
     $disabledBundle = $this->randomMachineName();
-    $this->drupalCreateContentType(array('type' => $disabledBundle, 'name' => $disabledBundle));
+    $this->drupalCreateContentType(['type' => $disabledBundle, 'name' => $disabledBundle]);
 
     // Create a node for each bundle.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => $this->bundle,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
 
     // Make sure that nothing was inserted into the {content_translation} table.
-    $rows = db_query('SELECT nid, count(nid) AS count FROM {node_field_data} WHERE type <> :type GROUP BY nid HAVING count(nid) >= 2', array(':type' => $this->bundle))->fetchAll();
+    $rows = db_query('SELECT nid, count(nid) AS count FROM {node_field_data} WHERE type <> :type GROUP BY nid HAVING count(nid) >= 2', [':type' => $this->bundle])->fetchAll();
     $this->assertEqual(0, count($rows));
 
     // Ensure the translation tab is not accessible.
@@ -287,7 +287,7 @@ public function testTranslationRendering() {
     $node->setPromoted(TRUE);
 
     // Create translations.
-    foreach (array_diff($this->langcodes, array($default_langcode)) as $langcode) {
+    foreach (array_diff($this->langcodes, [$default_langcode]) as $langcode) {
       $values[$langcode] = $this->getNewEntityValues($langcode);
       $translation = $node->addTranslation($langcode, $values[$langcode]);
       // Publish and promote the translation to frontpage.
@@ -297,7 +297,7 @@ public function testTranslationRendering() {
     $node->save();
 
     // Test that the frontpage view displays the correct translations.
-    \Drupal::service('module_installer')->install(array('views'), TRUE);
+    \Drupal::service('module_installer')->install(['views'], TRUE);
     $this->rebuildContainer();
     $this->doTestTranslations('node', $values);
 
@@ -316,7 +316,7 @@ public function testTranslationRendering() {
     // See also assertTaxonomyPage() in NodeAccessBaseTableTest.
     $node_href = 'node/' . $node->id();
     foreach ($this->langcodes as $langcode) {
-      $this->drupalGet('node', array('language' => \Drupal::languageManager()->getLanguage($langcode)));
+      $this->drupalGet('node', ['language' => \Drupal::languageManager()->getLanguage($langcode)]);
       $num_match_found = 0;
       if ($langcode == 'en') {
         // Site default language does not have langcode prefix in the URL.
@@ -338,7 +338,7 @@ public function testTranslationRendering() {
     // language.
     $comment_form_href = 'node/' . $node->id() . '#comment-form';
     foreach ($this->langcodes as $langcode) {
-      $this->drupalGet('node', array('language' => \Drupal::languageManager()->getLanguage($langcode)));
+      $this->drupalGet('node', ['language' => \Drupal::languageManager()->getLanguage($langcode)]);
       $num_match_found = 0;
       if ($langcode == 'en') {
         // Site default language does not have langcode prefix in the URL.
@@ -374,8 +374,8 @@ public function testTranslationRendering() {
   protected function doTestTranslations($path, array $values) {
     $languages = $this->container->get('language_manager')->getLanguages();
     foreach ($this->langcodes as $langcode) {
-      $this->drupalGet($path, array('language' => $languages[$langcode]));
-      $this->assertText($values[$langcode]['title'][0]['value'], format_string('The %langcode node translation is correctly displayed.', array('%langcode' => $langcode)));
+      $this->drupalGet($path, ['language' => $languages[$langcode]]);
+      $this->assertText($values[$langcode]['title'][0]['value'], format_string('The %langcode node translation is correctly displayed.', ['%langcode' => $langcode]));
     }
   }
 
@@ -398,8 +398,8 @@ protected function doTestAlternateHreflangLinks(Url $url) {
       foreach ($urls as $alternate_langcode => $language_url) {
         // Retrieve desired link elements from the HTML head.
         $links = $this->xpath('head/link[@rel = "alternate" and @href = :href and @hreflang = :hreflang]',
-          array(':href' => $language_url->toString(), ':hreflang' => $alternate_langcode));
-        $this->assert(isset($links[0]), format_string('The %langcode node translation has the correct alternate hreflang link for %alternate_langcode: %link.', array('%langcode' => $langcode, '%alternate_langcode' => $alternate_langcode, '%link' => $url->toString())));
+          [':href' => $language_url->toString(), ':hreflang' => $alternate_langcode]);
+        $this->assert(isset($links[0]), format_string('The %langcode node translation has the correct alternate hreflang link for %alternate_langcode: %link.', ['%langcode' => $langcode, '%alternate_langcode' => $alternate_langcode, '%link' => $url->toString()]));
       }
     }
   }
@@ -446,15 +446,15 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('<em>Edit @type</em> @title [%language translation]', array(
+        $title = t('<em>Edit @type</em> @title [%language translation]', [
           '@type' => $type_name,
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/node/src/Tests/NodeTypeTest.php b/core/modules/node/src/Tests/NodeTypeTest.php
index 0d2d8de..bc42852 100644
--- a/core/modules/node/src/Tests/NodeTypeTest.php
+++ b/core/modules/node/src/Tests/NodeTypeTest.php
@@ -50,14 +50,14 @@ function testNodeTypeCreation() {
     $this->assertTrue($type_exists, 'The new content type has been created in the database.');
 
     // Log in a test user.
-    $web_user = $this->drupalCreateUser(array('create ' . $type->label() . ' content'));
+    $web_user = $this->drupalCreateUser(['create ' . $type->label() . ' content']);
     $this->drupalLogin($web_user);
 
     $this->drupalGet('node/add/' . $type->id());
     $this->assertResponse(200, 'The new content type can be accessed at node/add.');
 
     // Create a content type via the user interface.
-    $web_user = $this->drupalCreateUser(array('bypass node access', 'administer content types'));
+    $web_user = $this->drupalCreateUser(['bypass node access', 'administer content types']);
     $this->drupalLogin($web_user);
 
     $this->drupalGet('node/add');
@@ -66,11 +66,11 @@ function testNodeTypeCreation() {
     $elements = $this->cssSelect('dl.node-type-list dt');
     $this->assertEqual(3, count($elements));
 
-    $edit = array(
+    $edit = [
       'name' => 'foo',
       'title_label' => 'title for foo',
       'type' => 'foo',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/add', $edit, t('Save and manage fields'));
     $type_exists = (bool) NodeType::load('foo');
     $this->assertTrue($type_exists, 'The new content type has been created in the database.');
@@ -84,7 +84,7 @@ function testNodeTypeCreation() {
    * Tests editing a node type using the UI.
    */
   function testNodeTypeEditing() {
-    $web_user = $this->drupalCreateUser(array('bypass node access', 'administer content types', 'administer node fields'));
+    $web_user = $this->drupalCreateUser(['bypass node access', 'administer content types', 'administer node fields']);
     $this->drupalLogin($web_user);
 
     $field = FieldConfig::loadByName('node', 'page', 'body');
@@ -96,9 +96,9 @@ function testNodeTypeEditing() {
     $this->assertRaw('Body', 'Body field was found.');
 
     // Rename the title field.
-    $edit = array(
+    $edit = [
       'title_label' => 'Foo',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
 
     $this->drupalGet('node/add/page');
@@ -106,10 +106,10 @@ function testNodeTypeEditing() {
     $this->assertNoRaw('Title', 'Old title label was not displayed.');
 
     // Change the name and the description.
-    $edit = array(
+    $edit = [
       'name' => 'Bar',
       'description' => 'Lorem ipsum.',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
 
     $this->drupalGet('node/add');
@@ -131,9 +131,9 @@ function testNodeTypeEditing() {
     $this->assertEqual($node_bundles['page']['label'], 'NewBar', 'Node type bundle cache is updated');
 
     // Remove the body field.
-    $this->drupalPostForm('admin/structure/types/manage/page/fields/node.page.body/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/types/manage/page/fields/node.page.body/delete', [], t('Delete'));
     // Resave the settings for this type.
-    $this->drupalPostForm('admin/structure/types/manage/page', array(), t('Save content type'));
+    $this->drupalPostForm('admin/structure/types/manage/page', [], t('Save content type'));
     // Check that the body field doesn't exist.
     $this->drupalGet('node/add/page');
     $this->assertNoRaw('Body', 'Body field was not found.');
@@ -147,18 +147,18 @@ function testNodeTypeDeletion() {
     $type = $this->drupalCreateContentType();
 
     // Log in a test user.
-    $web_user = $this->drupalCreateUser(array(
+    $web_user = $this->drupalCreateUser([
       'bypass node access',
       'administer content types',
-    ));
+    ]);
     $this->drupalLogin($web_user);
 
     // Add a new node of this type.
-    $node = $this->drupalCreateNode(array('type' => $type->id()));
+    $node = $this->drupalCreateNode(['type' => $type->id()]);
     // Attempt to delete the content type, which should not be allowed.
     $this->drupalGet('admin/structure/types/manage/' . $type->label() . '/delete');
     $this->assertRaw(
-      t('%type is used by 1 piece of content on your site. You can not remove this content type until you have removed all of the %type content.', array('%type' => $type->label())),
+      t('%type is used by 1 piece of content on your site. You can not remove this content type until you have removed all of the %type content.', ['%type' => $type->label()]),
       'The content type will not be deleted until all nodes of that type are removed.'
     );
     $this->assertNoText(t('This action cannot be undone.'), 'The node type deletion confirmation form is not available.');
@@ -168,13 +168,13 @@ function testNodeTypeDeletion() {
     // Attempt to delete the content type, which should now be allowed.
     $this->drupalGet('admin/structure/types/manage/' . $type->label() . '/delete');
     $this->assertRaw(
-      t('Are you sure you want to delete the content type %type?', array('%type' => $type->label())),
+      t('Are you sure you want to delete the content type %type?', ['%type' => $type->label()]),
       'The content type is available for deletion.'
     );
     $this->assertText(t('This action cannot be undone.'), 'The node type deletion confirmation form is available.');
 
     // Test that a locked node type could not be deleted.
-    $this->container->get('module_installer')->install(array('node_test_config'));
+    $this->container->get('module_installer')->install(['node_test_config']);
     // Lock the default node type.
     $locked = \Drupal::state()->get('node.type.locked');
     $locked['default'] = 'default';
@@ -186,14 +186,14 @@ function testNodeTypeDeletion() {
     $this->assertNoLink(t('Delete'));
     $this->drupalGet('admin/structure/types/manage/default/delete');
     $this->assertResponse(403);
-    $this->container->get('module_installer')->uninstall(array('node_test_config'));
+    $this->container->get('module_installer')->uninstall(['node_test_config']);
     $this->container = \Drupal::getContainer();
     unset($locked['default']);
     \Drupal::state()->set('node.type.locked', $locked);
     $this->drupalGet('admin/structure/types/manage/default');
     $this->clickLink(t('Delete'));
     $this->assertResponse(200);
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->assertFalse((bool) NodeType::load('default'), 'Node type with machine default deleted.');
   }
 
@@ -202,7 +202,7 @@ function testNodeTypeDeletion() {
    */
   public function testNodeTypeFieldUiPermissions() {
     // Create an admin user who can only manage node fields.
-    $admin_user_1 = $this->drupalCreateUser(array('administer content types', 'administer node fields'));
+    $admin_user_1 = $this->drupalCreateUser(['administer content types', 'administer node fields']);
     $this->drupalLogin($admin_user_1);
 
     // Test that the user only sees the actions available to him.
@@ -211,7 +211,7 @@ public function testNodeTypeFieldUiPermissions() {
     $this->assertNoLinkByHref('admin/structure/types/manage/article/display');
 
     // Create another admin user who can manage node fields display.
-    $admin_user_2 = $this->drupalCreateUser(array('administer content types', 'administer node display'));
+    $admin_user_2 = $this->drupalCreateUser(['administer content types', 'administer node display']);
     $this->drupalLogin($admin_user_2);
 
     // Test that the user only sees the actions available to him.
diff --git a/core/modules/node/src/Tests/NodeViewTest.php b/core/modules/node/src/Tests/NodeViewTest.php
index 3a27ade..a01cb25 100644
--- a/core/modules/node/src/Tests/NodeViewTest.php
+++ b/core/modules/node/src/Tests/NodeViewTest.php
@@ -89,7 +89,7 @@ public function testLinkHeader() {
   public function testMultiByteUtf8() {
     $title = '🐝';
     $this->assertTrue(mb_strlen($title, 'utf-8') < strlen($title), 'Title has multi-byte characters.');
-    $node = $this->drupalCreateNode(array('title' => $title));
+    $node = $this->drupalCreateNode(['title' => $title]);
     $this->drupalGet($node->urlInfo());
     $result = $this->xpath('//span[contains(@class, "field--name-title")]');
     $this->assertEqual((string) $result[0], $title, 'The passed title was returned.');
diff --git a/core/modules/node/src/Tests/PagePreviewTest.php b/core/modules/node/src/Tests/PagePreviewTest.php
index 086ae82..aa4bcdb 100644
--- a/core/modules/node/src/Tests/PagePreviewTest.php
+++ b/core/modules/node/src/Tests/PagePreviewTest.php
@@ -29,7 +29,7 @@ class PagePreviewTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'taxonomy', 'comment', 'image', 'file', 'text', 'node_test', 'menu_ui');
+  public static $modules = ['node', 'taxonomy', 'comment', 'image', 'file', 'text', 'node_test', 'menu_ui'];
 
   /**
    * The name of the created field.
@@ -42,7 +42,7 @@ protected function setUp() {
     parent::setUp();
     $this->addDefaultCommentField('node', 'page');
 
-    $web_user = $this->drupalCreateUser(array('edit own page content', 'create page content', 'administer menu'));
+    $web_user = $this->drupalCreateUser(['edit own page content', 'create page content', 'administer menu']);
     $this->drupalLogin($web_user);
 
     // Add a vocabulary so we can test different view modes.
@@ -89,37 +89,37 @@ protected function setUp() {
 
     // Create a field.
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'page', $this->fieldName, 'Tags', 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
 
     // Show on default display and teaser.
     entity_get_display('node', 'page', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'page', 'teaser')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
 
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent('field_image', array(
+      ->setComponent('field_image', [
         'type' => 'image_image',
         'settings' => [],
-      ))
+      ])
       ->save();
 
     entity_get_display('node', 'page', 'default')
@@ -143,15 +143,15 @@ protected function setUp() {
     ])->save();
 
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent('field_test_multi', array(
+      ->setComponent('field_test_multi', [
         'type' => 'text_textfield',
-      ))
+      ])
       ->save();
 
     entity_get_display('node', 'page', 'default')
-      ->setComponent('field_test_multi', array(
+      ->setComponent('field_test_multi', [
         'type' => 'string',
-      ))
+      ])
       ->save();
   }
 
@@ -164,7 +164,7 @@ function testPagePreview() {
     $term_key = $this->fieldName . '[target_id]';
 
     // Fill in node creation form and preview node.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = '<em>' . $this->randomMachineName(8) . '</em>';
     $edit[$body_key] = $this->randomMachineName(16);
     $edit[$term_key] = $this->term->getName();
@@ -178,7 +178,7 @@ function testPagePreview() {
     $this->drupalPostForm(NULL, ['field_image[0][alt]' => 'Picture of llamas'], t('Preview'));
 
     // Check that the preview is displaying the title, body and term.
-    $this->assertTitle(t('@title | Drupal', array('@title' => $edit[$title_key])), 'Basic page title is preview.');
+    $this->assertTitle(t('@title | Drupal', ['@title' => $edit[$title_key]]), 'Basic page title is preview.');
     $this->assertEscaped($edit[$title_key], 'Title displayed and escaped.');
     $this->assertText($edit[$body_key], 'Body displayed.');
     $this->assertText($edit[$term_key], 'Term displayed.');
@@ -195,7 +195,7 @@ function testPagePreview() {
       ->removeComponent('body')
       ->save();
 
-    $view_mode_edit = array('view_mode' => 'teaser');
+    $view_mode_edit = ['view_mode' => 'teaser'];
     $this->drupalPostForm('node/preview/' . $uuid . '/full', $view_mode_edit, t('Switch'));
     $this->assertRaw('view-mode-teaser', 'View mode teaser class found.');
     $this->assertNoText($edit[$body_key], 'Body not displayed.');
@@ -207,20 +207,20 @@ function testPagePreview() {
     $this->assertFieldByName($body_key, $edit[$body_key], 'Body field displayed.');
     $this->assertFieldByName($term_key, $edit[$term_key], 'Term field displayed.');
     $this->assertFieldByName('field_image[0][alt]', 'Picture of llamas');
-    $this->drupalPostAjaxForm(NULL, array(), array('field_test_multi_add_more' => t('Add another item')), NULL, array(), array(), 'node-page-form');
+    $this->drupalPostAjaxForm(NULL, [], ['field_test_multi_add_more' => t('Add another item')], NULL, [], [], 'node-page-form');
     $this->assertFieldByName('field_test_multi[0][value]');
     $this->assertFieldByName('field_test_multi[1][value]');
 
     // Return to page preview to check everything is as expected.
-    $this->drupalPostForm(NULL, array(), t('Preview'));
-    $this->assertTitle(t('@title | Drupal', array('@title' => $edit[$title_key])), 'Basic page title is preview.');
+    $this->drupalPostForm(NULL, [], t('Preview'));
+    $this->assertTitle(t('@title | Drupal', ['@title' => $edit[$title_key]]), 'Basic page title is preview.');
     $this->assertEscaped($edit[$title_key], 'Title displayed and escaped.');
     $this->assertText($edit[$body_key], 'Body displayed.');
     $this->assertText($edit[$term_key], 'Term displayed.');
     $this->assertLink(t('Back to content editing'));
 
     // Assert the content is kept when reloading the page.
-    $this->drupalGet('node/add/page', array('query' => array('uuid' => $uuid)));
+    $this->drupalGet('node/add/page', ['query' => ['uuid' => $uuid]]);
     $this->assertFieldByName($title_key, $edit[$title_key], 'Title field displayed.');
     $this->assertFieldByName($body_key, $edit[$body_key], 'Body field displayed.');
     $this->assertFieldByName($term_key, $edit[$term_key], 'Term field displayed.');
@@ -240,7 +240,7 @@ function testPagePreview() {
 
     // Check with two new terms on the edit form, additionally to the existing
     // one.
-    $edit = array();
+    $edit = [];
     $newterm1 = $this->randomMachineName(8);
     $newterm2 = $this->randomMachineName(8);
     $edit[$term_key] = $this->term->getName() . ', ' . $newterm1 . ', ' . $newterm2;
@@ -256,7 +256,7 @@ function testPagePreview() {
 
     // Check with one more new term, keeping old terms, removing the existing
     // one.
-    $edit = array();
+    $edit = [];
     $newterm3 = $this->randomMachineName(8);
     $edit[$term_key] = $newterm1 . ', ' . $newterm3 . ', ' . $newterm2;
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Preview'));
@@ -270,9 +270,9 @@ function testPagePreview() {
 
     // Check that editing an existing node after it has been previewed and not
     // saved doesn't remember the previous changes.
-    $edit = array(
+    $edit = [
       $title_key => $this->randomMachineName(8),
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Preview'));
     $this->assertText($edit[$title_key], 'New title displayed.');
     $this->clickLink(t('Back to content editing'));
@@ -289,7 +289,7 @@ function testPagePreview() {
     $node_type->save();
     $this->drupalGet('node/add/page');
     $this->assertNoRaw('edit-submit');
-    $this->drupalPostForm('node/add/page', array($title_key => 'Preview'), t('Preview'));
+    $this->drupalPostForm('node/add/page', [$title_key => 'Preview'], t('Preview'));
     $this->clickLink(t('Back to content editing'));
     $this->assertRaw('edit-submit');
 
@@ -348,8 +348,8 @@ function testPagePreview() {
     $this->assertText('Basic page ' . $title . ' has been created.');
     $node = $this->drupalGetNodeByTitle($title);
     $this->drupalGet('node/' . $node->id() . '/edit');
-    $this->drupalPostAjaxForm(NULL, [], array('field_test_multi_add_more' => t('Add another item')));
-    $this->drupalPostAjaxForm(NULL, [], array('field_test_multi_add_more' => t('Add another item')));
+    $this->drupalPostAjaxForm(NULL, [], ['field_test_multi_add_more' => t('Add another item')]);
+    $this->drupalPostAjaxForm(NULL, [], ['field_test_multi_add_more' => t('Add another item')]);
     $edit = [
       'field_test_multi[1][value]' => $example_text_2,
       'field_test_multi[2][value]' => $example_text_3,
@@ -404,7 +404,7 @@ function testPagePreviewWithRevisions() {
     $node_type->save();
 
     // Fill in node creation form and preview node.
-    $edit = array();
+    $edit = [];
     $edit[$title_key] = $this->randomMachineName(8);
     $edit[$body_key] = $this->randomMachineName(16);
     $edit[$term_key] = $this->term->id();
@@ -412,7 +412,7 @@ function testPagePreviewWithRevisions() {
     $this->drupalPostForm('node/add/page', $edit, t('Preview'));
 
     // Check that the preview is displaying the title, body and term.
-    $this->assertTitle(t('@title | Drupal', array('@title' => $edit[$title_key])), 'Basic page title is preview.');
+    $this->assertTitle(t('@title | Drupal', ['@title' => $edit[$title_key]]), 'Basic page title is preview.');
     $this->assertText($edit[$title_key], 'Title displayed.');
     $this->assertText($edit[$body_key], 'Body displayed.');
     $this->assertText($edit[$term_key], 'Term displayed.');
@@ -450,18 +450,18 @@ function testPagePreviewWithRevisions() {
    */
   public function testSimultaneousPreview() {
     $title_key = 'title[0][value]';
-    $node = $this->drupalCreateNode(array());
+    $node = $this->drupalCreateNode([]);
 
-    $edit = array($title_key => 'New page title');
+    $edit = [$title_key => 'New page title'];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Preview'));
     $this->assertText($edit[$title_key]);
 
-    $user2 = $this->drupalCreateUser(array('edit any page content'));
+    $user2 = $this->drupalCreateUser(['edit any page content']);
     $this->drupalLogin($user2);
     $this->drupalGet('node/' . $node->id() . '/edit');
     $this->assertFieldByName($title_key, $node->label(), 'No title leaked from previous user.');
 
-    $edit2 = array($title_key => 'Another page title');
+    $edit2 = [$title_key => 'Another page title'];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit2, t('Preview'));
     $this->assertUrl(\Drupal::url('entity.node.preview', ['node_preview' => $node->uuid(), 'view_mode_id' => 'full'], ['absolute' => TRUE]));
     $this->assertText($edit2[$title_key]);
diff --git a/core/modules/node/src/Tests/SummaryLengthTest.php b/core/modules/node/src/Tests/SummaryLengthTest.php
index 35eb0dd..e953882 100644
--- a/core/modules/node/src/Tests/SummaryLengthTest.php
+++ b/core/modules/node/src/Tests/SummaryLengthTest.php
@@ -18,10 +18,10 @@ public function testSummaryLength() {
     $renderer = $this->container->get('renderer');
 
     // Create a node to view.
-    $settings = array(
-      'body' => array(array('value' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam vitae arcu at leo cursus laoreet. Curabitur dui tortor, adipiscing malesuada tempor in, bibendum ac diam. Cras non tellus a libero pellentesque condimentum. What is a Drupalism? Suspendisse ac lacus libero. Ut non est vel nisl faucibus interdum nec sed leo. Pellentesque sem risus, vulputate eu semper eget, auctor in libero. Ut fermentum est vitae metus convallis scelerisque. Phasellus pellentesque rhoncus tellus, eu dignissim purus posuere id. Quisque eu fringilla ligula. Morbi ullamcorper, lorem et mattis egestas, tortor neque pretium velit, eget eleifend odio turpis eu purus. Donec vitae metus quis leo pretium tincidunt a pulvinar sem. Morbi adipiscing laoreet mauris vel placerat. Nullam elementum, nisl sit amet scelerisque malesuada, dolor nunc hendrerit quam, eu ultrices erat est in orci. Curabitur feugiat egestas nisl sed accumsan.')),
+    $settings = [
+      'body' => [['value' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam vitae arcu at leo cursus laoreet. Curabitur dui tortor, adipiscing malesuada tempor in, bibendum ac diam. Cras non tellus a libero pellentesque condimentum. What is a Drupalism? Suspendisse ac lacus libero. Ut non est vel nisl faucibus interdum nec sed leo. Pellentesque sem risus, vulputate eu semper eget, auctor in libero. Ut fermentum est vitae metus convallis scelerisque. Phasellus pellentesque rhoncus tellus, eu dignissim purus posuere id. Quisque eu fringilla ligula. Morbi ullamcorper, lorem et mattis egestas, tortor neque pretium velit, eget eleifend odio turpis eu purus. Donec vitae metus quis leo pretium tincidunt a pulvinar sem. Morbi adipiscing laoreet mauris vel placerat. Nullam elementum, nisl sit amet scelerisque malesuada, dolor nunc hendrerit quam, eu ultrices erat est in orci. Curabitur feugiat egestas nisl sed accumsan.']],
       'promote' => 1,
-    );
+    ];
     $node = $this->drupalCreateNode($settings);
     $this->assertTrue(Node::load($node->id()), 'Node created.');
 
diff --git a/core/modules/node/src/Tests/Views/BulkFormAccessTest.php b/core/modules/node/src/Tests/Views/BulkFormAccessTest.php
index 6dada72..938e456 100644
--- a/core/modules/node/src/Tests/Views/BulkFormAccessTest.php
+++ b/core/modules/node/src/Tests/Views/BulkFormAccessTest.php
@@ -22,14 +22,14 @@ class BulkFormAccessTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test_views', 'node_access_test');
+  public static $modules = ['node_test_views', 'node_access_test'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_node_bulk_form');
+  public static $testViews = ['test_node_bulk_form'];
 
   /**
    * The node access control handler.
@@ -45,7 +45,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create Article node type.
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     $this->accessHandler = \Drupal::entityManager()->getAccessControlHandler('node');
 
@@ -65,15 +65,15 @@ public function testNodeEditAccess() {
     // Create an account who will be the author of a private node.
     $author = $this->drupalCreateUser();
     // Create a private node (author may view, edit and delete, others may not).
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => 'article',
-      'private' => array(array(
+      'private' => [[
         'value' => TRUE,
-      )),
+      ]],
       'uid' => $author->id(),
-    ));
+    ]);
     // Create an account that may view the private node, but not edit it.
-    $account = $this->drupalCreateUser(array('node test view'));
+    $account = $this->drupalCreateUser(['node test view']);
     $this->drupalLogin($account);
 
     // Ensure the node is published.
@@ -83,10 +83,10 @@ public function testNodeEditAccess() {
     $this->assertEqual(FALSE, $this->accessHandler->access($node, 'update', $account), 'The node may not be edited.');
 
     // Test editing the node using the bulk form.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_unpublish_action',
-    );
+    ];
     $this->drupalPostForm('test-node-bulk-form', $edit, t('Apply to selected items'));
     $this->assertRaw(SafeMarkup::format('No access to execute %action on the @entity_type_label %entity_label.', [
       '%action' => 'Unpublish content',
@@ -100,7 +100,7 @@ public function testNodeEditAccess() {
 
     // Create an account that may view the private node, but can update the
     // status.
-    $account = $this->drupalCreateUser(array('administer nodes', 'node test view'));
+    $account = $this->drupalCreateUser(['administer nodes', 'node test view']);
     $this->drupalLogin($account);
 
     // Ensure the node is published.
@@ -111,10 +111,10 @@ public function testNodeEditAccess() {
     $this->assertEqual(TRUE, $node->status->access('edit', $account), 'The node status can be edited.');
 
     // Test editing the node using the bulk form.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_unpublish_action',
-    );
+    ];
     $this->drupalPostForm('test-node-bulk-form', $edit, t('Apply to selected items'));
     // Test that the action message isn't shown.
     $this->assertNoRaw(SafeMarkup::format('%action was applied to 1 item.', [
@@ -132,25 +132,25 @@ public function testNodeDeleteAccess() {
     // Create an account who will be the author of a private node.
     $author = $this->drupalCreateUser();
     // Create a private node (author may view, edit and delete, others may not).
-    $private_node = $this->drupalCreateNode(array(
+    $private_node = $this->drupalCreateNode([
       'type' => 'article',
-      'private' => array(array(
+      'private' => [[
         'value' => TRUE,
-      )),
+      ]],
       'uid' => $author->id(),
-    ));
+    ]);
     // Create an account that may view the private node, but not delete it.
-    $account = $this->drupalCreateUser(array('access content', 'administer nodes', 'delete own article content', 'node test view'));
+    $account = $this->drupalCreateUser(['access content', 'administer nodes', 'delete own article content', 'node test view']);
     // Create a node that may be deleted too, to ensure the delete confirmation
     // page is shown later. In node_access_test.module, nodes may only be
     // deleted by the author.
-    $own_node = $this->drupalCreateNode(array(
+    $own_node = $this->drupalCreateNode([
       'type' => 'article',
-      'private' => array(array(
+      'private' => [[
         'value' => TRUE,
-      )),
+      ]],
       'uid' => $account->id(),
-    ));
+    ]);
     $this->drupalLogin($account);
 
     // Ensure that the private node can not be deleted.
@@ -159,13 +159,13 @@ public function testNodeDeleteAccess() {
     $this->assertEqual(TRUE, $this->accessHandler->access($own_node, 'delete', $account), 'The own node may be deleted.');
 
     // Try to delete the node using the bulk form.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'node_bulk_form[1]' => TRUE,
       'action' => 'node_delete_action',
-    );
+    ];
     $this->drupalPostForm('test-node-bulk-form', $edit, t('Apply to selected items'));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     // Ensure the private node still exists.
     $private_node = Node::load($private_node->id());
     $this->assertNotNull($private_node, 'The private node has not been deleted.');
diff --git a/core/modules/node/src/Tests/Views/BulkFormTest.php b/core/modules/node/src/Tests/Views/BulkFormTest.php
index 677c9d8..2e7b6ff 100644
--- a/core/modules/node/src/Tests/Views/BulkFormTest.php
+++ b/core/modules/node/src/Tests/Views/BulkFormTest.php
@@ -19,14 +19,14 @@ class BulkFormTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test_views', 'language');
+  public static $modules = ['node_test_views', 'language'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_node_bulk_form');
+  public static $testViews = ['test_node_bulk_form'];
 
   /**
    * The test nodes.
@@ -86,7 +86,7 @@ protected function setUp($import_test_views = TRUE) {
     $this->assertEqual(count($view->result), 10, 'All created translations are selected.');
 
     // Check the operations are accessible to the logged in user.
-    $this->drupalLogin($this->drupalCreateUser(array('administer nodes', 'access content overview', 'bypass node access')));
+    $this->drupalLogin($this->drupalCreateUser(['administer nodes', 'access content overview', 'bypass node access']));
     $this->drupalGet('test-node-bulk-form');
     $elements = $this->xpath('//select[@id="edit-action"]//option');
     $this->assertIdentical(count($elements), 8, 'All node operations are found.');
@@ -101,10 +101,10 @@ public function testBulkForm() {
     $this->assertTrue($node->isPublished(), 'Node is initially published');
     $this->assertTrue($node->getTranslation('en-gb')->isPublished(), 'Node translation is published');
     $this->assertTrue($node->getTranslation('it')->isPublished(), 'Node translation is published');
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_unpublish_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertFalse($node->isPublished(), 'Node has been unpublished');
@@ -112,10 +112,10 @@ public function testBulkForm() {
     $this->assertTrue($node->getTranslation('it')->isPublished(), 'Node translation has not been unpublished');
 
     // Publish action.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_publish_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertTrue($node->isPublished(), 'Node has been published again');
@@ -124,10 +124,10 @@ public function testBulkForm() {
     $this->assertFalse($node->isSticky(), 'Node is not sticky');
     $this->assertFalse($node->getTranslation('en-gb')->isSticky(), 'Node translation is not sticky');
     $this->assertFalse($node->getTranslation('it')->isSticky(), 'Node translation is not sticky');
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_make_sticky_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertTrue($node->isSticky(), 'Node has been made sticky');
@@ -135,10 +135,10 @@ public function testBulkForm() {
     $this->assertFalse($node->getTranslation('it')->isSticky(), 'Node translation has not been made sticky');
 
     // Make unsticky action.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_make_unsticky_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertFalse($node->isSticky(), 'Node is not sticky anymore');
@@ -147,10 +147,10 @@ public function testBulkForm() {
     $this->assertFalse($node->isPromoted(), 'Node is not promoted to the front page');
     $this->assertFalse($node->getTranslation('en-gb')->isPromoted(), 'Node translation is not promoted to the front page');
     $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation is not promoted to the front page');
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_promote_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertTrue($node->isPromoted(), 'Node has been promoted to the front page');
@@ -158,17 +158,17 @@ public function testBulkForm() {
     $this->assertFalse($node->getTranslation('it')->isPromoted(), 'Node translation has not been promoted to the front page');
 
     // Demote from front page.
-    $edit = array(
+    $edit = [
       'node_bulk_form[0]' => TRUE,
       'action' => 'node_unpromote_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode($node->id());
     $this->assertFalse($node->isPromoted(), 'Node has been demoted');
 
     // Select a bunch of translated and untranslated nodes and check that
     // operations are always applied to individual translations.
-    $edit = array(
+    $edit = [
       // Original and all translations.
       'node_bulk_form[0]' => TRUE, // Node 1, English, original.
       'node_bulk_form[1]' => TRUE, // Node 1, British English.
@@ -184,7 +184,7 @@ public function testBulkForm() {
       'node_bulk_form[8]' => TRUE, // Node 4, English, untranslated.
       'node_bulk_form[9]' => FALSE, // Node 5, British English, untranslated.
       'action' => 'node_unpublish_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $node = $this->loadNode(1);
     $this->assertFalse($node->getTranslation('en')->isPublished(), '1: English translation has been unpublished');
@@ -209,7 +209,7 @@ public function testBulkForm() {
   public function testBulkDeletion() {
     // Select a bunch of translated and untranslated nodes and check that
     // nodes and individual translations are properly deleted.
-    $edit = array(
+    $edit = [
       // Original and all translations.
       'node_bulk_form[0]' => TRUE, // Node 1, English, original.
       'node_bulk_form[1]' => TRUE, // Node 1, British English.
@@ -225,7 +225,7 @@ public function testBulkDeletion() {
       'node_bulk_form[8]' => TRUE, // Node 4, English, untranslated.
       'node_bulk_form[9]' => FALSE, // Node 5, British English, untranslated.
       'action' => 'node_delete_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
 
     $label = $this->loadNode(1)->label();
@@ -239,7 +239,7 @@ public function testBulkDeletion() {
     $this->assertText($label);
     $this->assertNoText("$label (Original translation) - The following content translations will be deleted:");
 
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
 
     $node = $this->loadNode(1);
     $this->assertNull($node, '1: Node has been deleted');
diff --git a/core/modules/node/src/Tests/Views/FilterUidRevisionTest.php b/core/modules/node/src/Tests/Views/FilterUidRevisionTest.php
index 017d5eb..1827300 100644
--- a/core/modules/node/src/Tests/Views/FilterUidRevisionTest.php
+++ b/core/modules/node/src/Tests/Views/FilterUidRevisionTest.php
@@ -16,7 +16,7 @@ class FilterUidRevisionTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_node_uid_revision');
+  public static $testViews = ['test_filter_node_uid_revision'];
 
   /**
    * Tests the node_uid_revision filter.
@@ -25,14 +25,14 @@ public function testFilter() {
     $author = $this->drupalCreateUser();
     $no_author = $this->drupalCreateUser();
 
-    $expected_result = array();
+    $expected_result = [];
     // Create one node, with the author as the node author.
-    $node = $this->drupalCreateNode(array('uid' => $author->id()));
-    $expected_result[] = array('nid' => $node->id());
+    $node = $this->drupalCreateNode(['uid' => $author->id()]);
+    $expected_result[] = ['nid' => $node->id()];
     // Create one node of which an additional revision author will be the
     // author.
-    $node = $this->drupalCreateNode(array('revision_uid' => $no_author->id()));
-    $expected_result[] = array('nid' => $node->id());
+    $node = $this->drupalCreateNode(['revision_uid' => $no_author->id()]);
+    $expected_result[] = ['nid' => $node->id()];
     $revision = clone $node;
     // Force to add a new revision.
     $revision->set('vid', NULL);
@@ -41,14 +41,14 @@ public function testFilter() {
 
     // Create one  node on which the author has neither authorship of revisions
     // or the main node.
-    $this->drupalCreateNode(array('uid' => $no_author->id()));
+    $this->drupalCreateNode(['uid' => $no_author->id()]);
 
     $view = Views::getView('test_filter_node_uid_revision');
     $view->initHandlers();
-    $view->filter['uid_revision']->value = array($author->id());
+    $view->filter['uid_revision']->value = [$author->id()];
 
     $this->executeView($view);
-    $this->assertIdenticalResultset($view, $expected_result, array('nid' => 'nid'), 'Make sure that the view only returns nodes which match either the node or the revision author.');
+    $this->assertIdenticalResultset($view, $expected_result, ['nid' => 'nid'], 'Make sure that the view only returns nodes which match either the node or the revision author.');
   }
 
 }
diff --git a/core/modules/node/src/Tests/Views/FrontPageTest.php b/core/modules/node/src/Tests/Views/FrontPageTest.php
index 19cb659..1c6003a 100644
--- a/core/modules/node/src/Tests/Views/FrontPageTest.php
+++ b/core/modules/node/src/Tests/Views/FrontPageTest.php
@@ -37,7 +37,7 @@ class FrontPageTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'contextual');
+  public static $modules = ['node', 'contextual'];
 
   protected function setUp() {
     parent::setUp();
@@ -74,14 +74,14 @@ public function testFrontPage() {
     $this->executeView($view);
     $view->preview();
 
-    $this->assertEqual($view->getTitle(), format_string('Welcome to @site_name', array('@site_name' => $site_name)), 'The welcome title is used for the empty view.');
+    $this->assertEqual($view->getTitle(), format_string('Welcome to @site_name', ['@site_name' => $site_name]), 'The welcome title is used for the empty view.');
     $view->destroy();
 
     // Create some nodes on the frontpage view. Add more than 10 nodes in order
     // to enable paging.
-    $expected = array();
+    $expected = [];
     for ($i = 0; $i < 20; $i++) {
-      $values = array();
+      $values = [];
       $values['type'] = 'article';
       $values['title'] = $this->randomMachineName();
       $values['promote'] = TRUE;
@@ -94,21 +94,21 @@ public function testFrontPage() {
         $node = $this->nodeStorage->create($values);
         $node->save();
         // Put the sticky on at the front.
-        array_unshift($expected, array('nid' => $node->id()));
+        array_unshift($expected, ['nid' => $node->id()]);
       }
       else {
         $values['sticky'] = FALSE;
         $node = $this->nodeStorage->create($values);
         $node->save();
-        array_push($expected, array('nid' => $node->id()));
+        array_push($expected, ['nid' => $node->id()]);
       }
     }
 
     // Create some nodes which aren't on the frontpage, either because they
     // aren't promoted or because they aren't published.
-    $not_expected_nids = array();
+    $not_expected_nids = [];
 
-    $values = array();
+    $values = [];
     $values['type'] = 'article';
     $values['title'] = $this->randomMachineName();
     $values['status'] = TRUE;
@@ -132,7 +132,7 @@ public function testFrontPage() {
     $node->save();
     $not_expected_nids[] = $node->id();
 
-    $column_map = array('nid' => 'nid');
+    $column_map = ['nid' => 'nid'];
 
     $view->setDisplay('page_1');
     $this->executeView($view);
@@ -171,7 +171,7 @@ protected function assertNotInResultSet(ViewExecutable $view, array $not_expecte
   public function testAdminFrontPage() {
     // When a user with sufficient permissions is logged in, views_ui adds
     // contextual links to the homepage view. This verifies there are no errors.
-    \Drupal::service('module_installer')->install(array('views_ui'));
+    \Drupal::service('module_installer')->install(['views_ui']);
     // Log in root user with sufficient permissions.
     $this->drupalLogin($this->rootUser);
     // Test frontpage view.
diff --git a/core/modules/node/src/Tests/Views/NodeContextualLinksTest.php b/core/modules/node/src/Tests/Views/NodeContextualLinksTest.php
index acd7d7b..dc23d0c 100644
--- a/core/modules/node/src/Tests/Views/NodeContextualLinksTest.php
+++ b/core/modules/node/src/Tests/Views/NodeContextualLinksTest.php
@@ -17,27 +17,27 @@ class NodeContextualLinksTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('contextual');
+  public static $modules = ['contextual'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_contextual_links');
+  public static $testViews = ['test_contextual_links'];
 
   /**
    * Tests contextual links.
    */
   public function testNodeContextualLinks() {
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $this->drupalCreateNode(array('promote' => 1));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $this->drupalCreateNode(['promote' => 1]);
     $this->drupalGet('node');
 
-    $user = $this->drupalCreateUser(array('administer nodes', 'access contextual links'));
+    $user = $this->drupalCreateUser(['administer nodes', 'access contextual links']);
     $this->drupalLogin($user);
 
-    $response = $this->renderContextualLinks(array('node:node=1:'), 'node');
+    $response = $this->renderContextualLinks(['node:node=1:'], 'node');
     $this->assertResponse(200);
     $json = Json::decode($response);
     $this->setRawContent($json['node:node=1:']);
@@ -63,7 +63,7 @@ public function testNodeContextualLinks() {
    */
   protected function renderContextualLinks($ids, $current_path) {
     // Build POST values.
-    $post = array();
+    $post = [];
     for ($i = 0; $i < count($ids); $i++) {
       $post['ids[' . $i . ']'] = $ids[$i];
     }
@@ -78,15 +78,15 @@ protected function renderContextualLinks($ids, $current_path) {
     $post = implode('&', $post);
 
     // Perform HTTP request.
-    return $this->curlExec(array(
-      CURLOPT_URL => \Drupal::url('contextual.render', [], ['absolute' => TRUE, 'query' => array('destination' => $current_path)]),
+    return $this->curlExec([
+      CURLOPT_URL => \Drupal::url('contextual.render', [], ['absolute' => TRUE, 'query' => ['destination' => $current_path]]),
       CURLOPT_POST => TRUE,
       CURLOPT_POSTFIELDS => $post,
-      CURLOPT_HTTPHEADER => array(
+      CURLOPT_HTTPHEADER => [
         'Accept: application/json',
         'Content-Type: application/x-www-form-urlencoded',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
@@ -108,8 +108,8 @@ public function testPageWithDisabledContextualModule() {
     $admin_user->pass_raw = 'new_password';
     $admin_user->save();
 
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $this->drupalCreateNode(array('promote' => 1));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $this->drupalCreateNode(['promote' => 1]);
 
     $this->drupalLogin($admin_user);
     $this->drupalGet('node');
diff --git a/core/modules/node/src/Tests/Views/NodeFieldFilterTest.php b/core/modules/node/src/Tests/Views/NodeFieldFilterTest.php
index 6b6d5e2..048c7a9 100644
--- a/core/modules/node/src/Tests/Views/NodeFieldFilterTest.php
+++ b/core/modules/node/src/Tests/Views/NodeFieldFilterTest.php
@@ -14,14 +14,14 @@ class NodeFieldFilterTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_field_filters');
+  public static $testViews = ['test_field_filters'];
 
   /**
    * List of node titles by language.
@@ -35,7 +35,7 @@ function setUp() {
 
     // Create Page content type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     }
 
     // Add two new languages.
@@ -43,15 +43,15 @@ function setUp() {
     ConfigurableLanguage::createFromLangcode('es')->save();
 
     // Set up node titles.
-    $this->nodeTitles = array(
+    $this->nodeTitles = [
       'en' => 'Food in Paris',
       'es' => 'Comida en Paris',
       'fr' => 'Nouriture en Paris',
-    );
+    ];
 
     // Create node with translations.
     $node = $this->drupalCreateNode(['title' => $this->nodeTitles['en'], 'langcode' => 'en', 'type' => 'page', 'body' => [['value' => $this->nodeTitles['en']]]]);
-    foreach (array('es', 'fr') as $langcode) {
+    foreach (['es', 'fr'] as $langcode) {
       $translation = $node->addTranslation($langcode, ['title' => $this->nodeTitles[$langcode]]);
       $translation->body->value = $this->nodeTitles[$langcode];
     }
@@ -64,19 +64,19 @@ function setUp() {
   public function testFilters() {
     // Test the title filter page, which filters for title contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-title-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida title filter');
+    $this->assertPageCounts('test-title-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida title filter');
 
     // Test the body filter page, which filters for body contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-body-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida body filter');
+    $this->assertPageCounts('test-body-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida body filter');
 
     // Test the title Paris filter page, which filters for title contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-title-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris title filter');
+    $this->assertPageCounts('test-title-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris title filter');
 
     // Test the body Paris filter page, which filters for body contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-body-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris body filter');
+    $this->assertPageCounts('test-body-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris body filter');
   }
 
   /**
diff --git a/core/modules/node/src/Tests/Views/NodeFieldTokensTest.php b/core/modules/node/src/Tests/Views/NodeFieldTokensTest.php
index 9c12446..a5b1910 100644
--- a/core/modules/node/src/Tests/Views/NodeFieldTokensTest.php
+++ b/core/modules/node/src/Tests/Views/NodeFieldTokensTest.php
@@ -17,7 +17,7 @@ class NodeFieldTokensTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_node_tokens');
+  public static $testViews = ['test_node_tokens'];
 
   /**
    * Tests token replacement for Views tokens supplied by the Node module.
diff --git a/core/modules/node/src/Tests/Views/NodeIntegrationTest.php b/core/modules/node/src/Tests/Views/NodeIntegrationTest.php
index 26909af..c679138 100644
--- a/core/modules/node/src/Tests/Views/NodeIntegrationTest.php
+++ b/core/modules/node/src/Tests/Views/NodeIntegrationTest.php
@@ -14,22 +14,22 @@ class NodeIntegrationTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_node_view');
+  public static $testViews = ['test_node_view'];
 
   /**
    * Tests basic node view with a node type argument.
    */
   public function testNodeViewTypeArgument() {
     // Create two content types with three nodes each.
-    $types = array();
-    $all_nids = array();
+    $types = [];
+    $all_nids = [];
     for ($i = 0; $i < 2; $i++) {
       $type = $this->drupalCreateContentType(['name' => '<em>' . $this->randomMachineName() . '</em>']);
       $types[] = $type;
 
       for ($j = 0; $j < 5; $j++) {
         // Ensure the right order of the nodes.
-        $node = $this->drupalCreateNode(array('type' => $type->id(), 'created' => REQUEST_TIME - ($i * 5 + $j)));
+        $node = $this->drupalCreateNode(['type' => $type->id(), 'created' => REQUEST_TIME - ($i * 5 + $j)]);
         $nodes[$type->id()][$node->id()] = $node;
         $all_nids[] = $node->id();
       }
@@ -55,9 +55,9 @@ public function testNodeViewTypeArgument() {
    * @param array $expected_nids
    *   An array of node IDs.
    */
-  protected function assertNids(array $expected_nids = array()) {
+  protected function assertNids(array $expected_nids = []) {
     $result = $this->xpath('//span[@class="field-content"]');
-    $nids = array();
+    $nids = [];
     foreach ($result as $element) {
       $nids[] = (int) $element;
     }
diff --git a/core/modules/node/src/Tests/Views/NodeLanguageTest.php b/core/modules/node/src/Tests/Views/NodeLanguageTest.php
index 4561508..bdd26c0 100644
--- a/core/modules/node/src/Tests/Views/NodeLanguageTest.php
+++ b/core/modules/node/src/Tests/Views/NodeLanguageTest.php
@@ -19,14 +19,14 @@ class NodeLanguageTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language', 'node_test_views');
+  public static $modules = ['language', 'node_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_language');
+  public static $testViews = ['test_language'];
 
   /**
    * List of node titles by language.
@@ -43,8 +43,8 @@ protected function setUp() {
 
     // Create Page content type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      ViewTestData::createTestViews(get_class($this), array('node_test_views'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      ViewTestData::createTestViews(get_class($this), ['node_test_views']);
     }
 
     // Add two new languages.
@@ -60,30 +60,30 @@ protected function setUp() {
     // Set up node titles. They should not include the words "French",
     // "English", or "Spanish", as there is a language field in the view
     // that prints out those words.
-    $this->nodeTitles = array(
-      LanguageInterface::LANGCODE_NOT_SPECIFIED => array(
+    $this->nodeTitles = [
+      LanguageInterface::LANGCODE_NOT_SPECIFIED => [
         'First node und',
-      ),
-      'es' => array(
+      ],
+      'es' => [
         'Primero nodo es',
         'Segundo nodo es',
         'Tercera nodo es',
-      ),
-      'en' => array(
+      ],
+      'en' => [
         'First node en',
         'Second node en',
-      ),
-      'fr' => array(
+      ],
+      'fr' => [
         'Premier nœud fr',
-      )
-    );
+      ]
+    ];
 
     // Create nodes with translations.
     foreach ($this->nodeTitles['es'] as $index => $title) {
-      $node = $this->drupalCreateNode(array('title' => $title, 'langcode' => 'es', 'type' => 'page', 'promote' => 1));
-      foreach (array('en', 'fr') as $langcode) {
+      $node = $this->drupalCreateNode(['title' => $title, 'langcode' => 'es', 'type' => 'page', 'promote' => 1]);
+      foreach (['en', 'fr'] as $langcode) {
         if (isset($this->nodeTitles[$langcode][$index])) {
-          $translation = $node->addTranslation($langcode, array('title' => $this->nodeTitles[$langcode][$index]));
+          $translation = $node->addTranslation($langcode, ['title' => $this->nodeTitles[$langcode][$index]]);
           $translation->body->value = $this->randomMachineName(32);
         }
       }
@@ -91,14 +91,14 @@ protected function setUp() {
     }
     // Create non-translatable nodes.
     foreach ($this->nodeTitles[LanguageInterface::LANGCODE_NOT_SPECIFIED] as $index => $title) {
-      $node = $this->drupalCreateNode(array('title' => $title, 'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED, 'type' => 'page', 'promote' => 1));
+      $node = $this->drupalCreateNode(['title' => $title, 'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED, 'type' => 'page', 'promote' => 1]);
       $node->body->value = $this->randomMachineName(32);
       $node->save();
     }
 
     $this->container->get('router.builder')->rebuild();
 
-    $user = $this->drupalCreateUser(array('access content overview', 'access content'));
+    $user = $this->drupalCreateUser(['access content overview', 'access content']);
     $this->drupalLogin($user);
   }
 
@@ -178,7 +178,7 @@ public function testLanguages() {
     }
     // When filtered, only the specific languages should show.
     foreach ($this->nodeTitles as $langcode => $titles) {
-      $this->drupalGet('admin/content', array('query' => array('langcode' => $langcode)));
+      $this->drupalGet('admin/content', ['query' => ['langcode' => $langcode]]);
       foreach ($titles as $title) {
         $this->assertText($title);
       }
@@ -195,7 +195,7 @@ public function testLanguages() {
     // filter is set to the site default language instead. This should just
     // show the English nodes, no matter what the content language is.
     $config = $this->config('views.view.frontpage');
-    $config->set('display.default.display_options.filters.langcode.value', array(PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT => PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT));
+    $config->set('display.default.display_options.filters.langcode.value', [PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT => PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT]);
     $config->save();
     foreach ($this->nodeTitles as $langcode => $titles) {
       if ($langcode == LanguageInterface::LANGCODE_NOT_SPECIFIED) {
@@ -219,10 +219,10 @@ public function testLanguages() {
     //
     // IMPORTANT: Make sure this part of the test is last -- it is changing
     // language configuration!
-    $config->set('display.default.display_options.filters.langcode.value', array('***LANGUAGE_language_interface***' => '***LANGUAGE_language_interface***'));
+    $config->set('display.default.display_options.filters.langcode.value', ['***LANGUAGE_language_interface***' => '***LANGUAGE_language_interface***']);
     $config->save();
     $language_config = $this->config('language.types');
-    $language_config->set('negotiation.language_interface.enabled', array('language-selected' => 1));
+    $language_config->set('negotiation.language_interface.enabled', ['language-selected' => 1]);
     $language_config->save();
     $language_config = $this->config('language.negotiation');
     $language_config->set('selected_langcode', 'es');
diff --git a/core/modules/node/src/Tests/Views/NodeRevisionWizardTest.php b/core/modules/node/src/Tests/Views/NodeRevisionWizardTest.php
index 109cdc4..6a774f3 100644
--- a/core/modules/node/src/Tests/Views/NodeRevisionWizardTest.php
+++ b/core/modules/node/src/Tests/Views/NodeRevisionWizardTest.php
@@ -17,11 +17,11 @@ class NodeRevisionWizardTest extends WizardTestBase {
    * Tests creating a node revision view.
    */
   public function testViewAdd() {
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
     // Create two nodes with two revision.
     $node_storage = \Drupal::entityManager()->getStorage('node');
     /** @var \Drupal\node\NodeInterface $node */
-    $node = $node_storage->create(array('title' => $this->randomString(), 'type' => 'article', 'created' => REQUEST_TIME + 40));
+    $node = $node_storage->create(['title' => $this->randomString(), 'type' => 'article', 'created' => REQUEST_TIME + 40]);
     $node->save();
 
     $node = $node->createDuplicate();
@@ -29,7 +29,7 @@ public function testViewAdd() {
     $node->created->value = REQUEST_TIME + 20;
     $node->save();
 
-    $node = $node_storage->create(array('title' => $this->randomString(), 'type' => 'article', 'created' => REQUEST_TIME + 30));
+    $node = $node_storage->create(['title' => $this->randomString(), 'type' => 'article', 'created' => REQUEST_TIME + 30]);
     $node->save();
 
     $node = $node->createDuplicate();
@@ -37,7 +37,7 @@ public function testViewAdd() {
     $node->created->value = REQUEST_TIME + 10;
     $node->save();
 
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
@@ -54,8 +54,8 @@ public function testViewAdd() {
     $executable = Views::executableFactory()->get($view);
     $this->executeView($executable);
 
-    $this->assertIdenticalResultset($executable, array(array('vid' => 1), array('vid' => 3), array('vid' => 2), array('vid' => 4)),
-      array('vid' => 'vid'));
+    $this->assertIdenticalResultset($executable, [['vid' => 1], ['vid' => 3], ['vid' => 2], ['vid' => 4]],
+      ['vid' => 'vid']);
   }
 
 }
diff --git a/core/modules/node/src/Tests/Views/NodeTestBase.php b/core/modules/node/src/Tests/Views/NodeTestBase.php
index 6701b41..661ad91 100644
--- a/core/modules/node/src/Tests/Views/NodeTestBase.php
+++ b/core/modules/node/src/Tests/Views/NodeTestBase.php
@@ -15,13 +15,13 @@
    *
    * @var array
    */
-  public static $modules = array('node_test_views');
+  public static $modules = ['node_test_views'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp($import_test_views);
 
     if ($import_test_views) {
-      ViewTestData::createTestViews(get_class($this), array('node_test_views'));
+      ViewTestData::createTestViews(get_class($this), ['node_test_views']);
     }
   }
 
diff --git a/core/modules/node/src/Tests/Views/PathPluginTest.php b/core/modules/node/src/Tests/Views/PathPluginTest.php
index 1ee6272..6558f00 100644
--- a/core/modules/node/src/Tests/Views/PathPluginTest.php
+++ b/core/modules/node/src/Tests/Views/PathPluginTest.php
@@ -16,14 +16,14 @@ class PathPluginTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_node_path_plugin');
+  public static $testViews = ['test_node_path_plugin'];
 
   /**
    * Contains all nodes used by this test.
@@ -35,21 +35,21 @@ class PathPluginTest extends NodeTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
     // Create two nodes.
     for ($i = 0; $i < 2; $i++) {
       $this->nodes[] = $this->drupalCreateNode(
-        array(
+        [
           'type' => 'article',
-          'body' => array(
-            array(
+          'body' => [
+            [
               'value' => $this->randomMachineName(42),
               'format' => filter_default_format(),
               'summary' => $this->randomMachineName(),
-            ),
-          ),
-        )
+            ],
+          ],
+        ]
       );
     }
   }
diff --git a/core/modules/node/src/Tests/Views/RevisionRelationshipsTest.php b/core/modules/node/src/Tests/Views/RevisionRelationshipsTest.php
index f4b34f1..51e200c 100644
--- a/core/modules/node/src/Tests/Views/RevisionRelationshipsTest.php
+++ b/core/modules/node/src/Tests/Views/RevisionRelationshipsTest.php
@@ -18,12 +18,12 @@ class RevisionRelationshipsTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node' , 'node_test_views');
+  public static $modules = ['node' , 'node_test_views'];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('node_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['node_test_views']);
   }
 
   /**
@@ -31,7 +31,7 @@ protected function setUp() {
    *
    * @var array
    */
-  public static $testViews = array('test_node_revision_nid', 'test_node_revision_vid');
+  public static $testViews = ['test_node_revision_nid', 'test_node_revision_vid'];
 
   /**
    * Create a node with revision and rest result count for both views.
@@ -42,40 +42,40 @@ public function testNodeRevisionRelationship() {
     $node_revision = clone $node;
     $node_revision->setNewRevision();
     $node_revision->save();
-    $column_map = array(
+    $column_map = [
       'vid' => 'vid',
       'node_field_data_node_field_revision_nid' => 'node_node_revision_nid',
       'nid_1' => 'nid_1',
-    );
+    ];
 
     // Here should be two rows.
     $view_nid = Views::getView('test_node_revision_nid');
-    $this->executeView($view_nid, array($node->id()));
-    $resultset_nid = array(
-      array(
+    $this->executeView($view_nid, [$node->id()]);
+    $resultset_nid = [
+      [
         'vid' => '1',
         'node_node_revision_nid' => '1',
         'nid_1' => '1',
-      ),
-      array(
+      ],
+      [
         'vid' => '2',
         'node_revision_nid' => '1',
         'node_node_revision_nid' => '1',
         'nid_1' => '1',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view_nid, $resultset_nid, $column_map);
 
     // There should be only one row with active revision 2.
     $view_vid = Views::getView('test_node_revision_vid');
-    $this->executeView($view_vid, array($node->id()));
-    $resultset_vid = array(
-      array(
+    $this->executeView($view_vid, [$node->id()]);
+    $resultset_vid = [
+      [
         'vid' => '2',
         'node_node_revision_nid' => '1',
         'nid_1' => '1',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view_vid, $resultset_vid, $column_map);
   }
 
diff --git a/core/modules/node/src/Tests/Views/RowPluginTest.php b/core/modules/node/src/Tests/Views/RowPluginTest.php
index d13e526..160640f 100644
--- a/core/modules/node/src/Tests/Views/RowPluginTest.php
+++ b/core/modules/node/src/Tests/Views/RowPluginTest.php
@@ -17,14 +17,14 @@ class RowPluginTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_node_row_plugin');
+  public static $testViews = ['test_node_row_plugin'];
 
   /**
    * Contains all nodes used by this test.
@@ -36,21 +36,21 @@ class RowPluginTest extends NodeTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
     // Create two nodes.
     for ($i = 0; $i < 2; $i++) {
       $this->nodes[] = $this->drupalCreateNode(
-        array(
+        [
           'type' => 'article',
-          'body' => array(
-            array(
+          'body' => [
+            [
               'value' => $this->randomMachineName(42),
               'format' => filter_default_format(),
               'summary' => $this->randomMachineName(),
-            ),
-          ),
-        )
+            ],
+          ],
+        ]
       );
     }
   }
diff --git a/core/modules/node/src/Tests/Views/StatusExtraTest.php b/core/modules/node/src/Tests/Views/StatusExtraTest.php
index d8ae016..9e41f5b 100644
--- a/core/modules/node/src/Tests/Views/StatusExtraTest.php
+++ b/core/modules/node/src/Tests/Views/StatusExtraTest.php
@@ -17,19 +17,19 @@ class StatusExtraTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_status_extra');
+  public static $testViews = ['test_status_extra'];
 
   /**
    * Tests the status extra filter.
    */
   public function testStatusExtra() {
-    $node_author = $this->drupalCreateUser(array('view own unpublished content'));
+    $node_author = $this->drupalCreateUser(['view own unpublished content']);
     $node_author_not_unpublished = $this->drupalCreateUser();
     $normal_user = $this->drupalCreateUser();
-    $admin_user = $this->drupalCreateUser(array('bypass node access'));
+    $admin_user = $this->drupalCreateUser(['bypass node access']);
 
     // Create one published and one unpublished node by the admin.
-    $node_published = $this->drupalCreateNode(array('uid' => $admin_user->id()));
+    $node_published = $this->drupalCreateNode(['uid' => $admin_user->id()]);
     $node_unpublished = $this->drupalCreateNode(['uid' => $admin_user->id(), 'status' => NodeInterface::NOT_PUBLISHED]);
 
     // Create one unpublished node by a certain author user.
diff --git a/core/modules/node/tests/modules/node_access_test/node_access_test.module b/core/modules/node/tests/modules/node_access_test/node_access_test.module
index 56b53a9..40baeb5 100644
--- a/core/modules/node/tests/modules/node_access_test/node_access_test.module
+++ b/core/modules/node/tests/modules/node_access_test/node_access_test.module
@@ -50,15 +50,15 @@
  * @see node_access_test_node_access_records()
  */
 function node_access_test_node_grants($account, $op) {
-  $grants = array();
-  $grants['node_access_test_author'] = array($account->id());
+  $grants = [];
+  $grants['node_access_test_author'] = [$account->id()];
   if ($op == 'view' && $account->hasPermission('node test view', $account)) {
-    $grants['node_access_test'] = array(8888, 8889);
+    $grants['node_access_test'] = [8888, 8889];
   }
 
   $no_access_uid = \Drupal::state()->get('node_access_test.no_access_uid') ?: 0;
   if ($op == 'view' && $account->id() == $no_access_uid) {
-    $grants['node_access_all'] = array(0);
+    $grants['node_access_all'] = [0];
   }
   return $grants;
 }
@@ -77,37 +77,37 @@ function node_access_test_node_grants($account, $op) {
  * @see node_access_test.permissions.yml
  */
 function node_access_test_node_access_records(NodeInterface $node) {
-  $grants = array();
+  $grants = [];
   // For NodeAccessBaseTableTestCase, only set records for private nodes.
   if (!\Drupal::state()->get('node_access_test.private') || $node->private->value) {
     // Groups 8888 and 8889 for the node_access_test realm both receive a view
     // grant for all controlled nodes. See node_access_test_node_grants().
-    $grants[] = array(
+    $grants[] = [
       'realm' => 'node_access_test',
       'gid' => 8888,
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
       'priority' => 0,
-    );
-    $grants[] = array(
+    ];
+    $grants[] = [
       'realm' => 'node_access_test',
       'gid' => 8889,
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
       'priority' => 0,
-    );
+    ];
     // For the author realm, the group ID is equivalent to a user ID, which
     // means there are many many groups of just 1 user.
-    $grants[] = array(
+    $grants[] = [
       'realm' => 'node_access_test_author',
       'gid' => $node->getOwnerId(),
       'grant_view' => 1,
       'grant_update' => 1,
       'grant_delete' => 1,
       'priority' => 0,
-    );
+    ];
   }
 
   return $grants;
@@ -120,25 +120,25 @@ function node_access_test_node_access_records(NodeInterface $node) {
  *   A node type entity.
  */
 function node_access_test_add_field(NodeTypeInterface $type) {
-  $field_storage = FieldStorageConfig::create(array(
+  $field_storage = FieldStorageConfig::create([
     'field_name' => 'private',
     'entity_type' => 'node',
     'type' => 'integer',
-  ));
+  ]);
   $field_storage->save();
-  $field = FieldConfig::create(array(
+  $field = FieldConfig::create([
     'field_name' => 'private',
     'entity_type' => 'node',
     'bundle' => $type->id(),
     'label' => 'Private',
-  ));
+  ]);
   $field->save();
 
   // Assign widget settings for the 'default' form mode.
   entity_get_form_display('node', $type->id(), 'default')
-    ->setComponent('private', array(
+    ->setComponent('private', [
       'type' => 'number',
-    ))
+    ])
     ->save();
 }
 
diff --git a/core/modules/node/tests/modules/node_access_test_empty/node_access_test_empty.module b/core/modules/node/tests/modules/node_access_test_empty/node_access_test_empty.module
index 67558e6..d67365a 100644
--- a/core/modules/node/tests/modules/node_access_test_empty/node_access_test_empty.module
+++ b/core/modules/node/tests/modules/node_access_test_empty/node_access_test_empty.module
@@ -11,12 +11,12 @@
  * Implements hook_node_grants().
  */
 function node_access_test_empty_node_grants($account, $op) {
-  return array();
+  return [];
 }
 
 /**
  * Implements hook_node_access_records().
  */
 function node_access_test_empty_node_access_records(NodeInterface $node) {
-  return array();
+  return [];
 }
diff --git a/core/modules/node/tests/modules/node_access_test_language/node_access_test_language.module b/core/modules/node/tests/modules/node_access_test_language/node_access_test_language.module
index ece18d8..565c100 100644
--- a/core/modules/node/tests/modules/node_access_test_language/node_access_test_language.module
+++ b/core/modules/node/tests/modules/node_access_test_language/node_access_test_language.module
@@ -16,7 +16,7 @@
  * This module defines a single grant realm. All users belong to this group.
  */
 function node_access_test_language_node_grants($account, $op) {
-  $grants['node_access_language_test'] = array(7888);
+  $grants['node_access_language_test'] = [7888];
   return $grants;
 }
 
@@ -24,13 +24,13 @@ function node_access_test_language_node_grants($account, $op) {
  * Implements hook_node_access_records().
  */
 function node_access_test_language_node_access_records(NodeInterface $node) {
-  $grants = array();
+  $grants = [];
 
   // Create grants for each translation of the node.
   foreach ($node->getTranslationLanguages() as $langcode => $language) {
     // If the translation is not marked as private, grant access.
     $translation = $node->getTranslation($langcode);
-    $grants[] = array(
+    $grants[] = [
       'realm' => 'node_access_language_test',
       'gid' => 7888,
       'grant_view' => empty($translation->field_private->value) ? 1 : 0,
@@ -38,7 +38,7 @@ function node_access_test_language_node_access_records(NodeInterface $node) {
       'grant_delete' => 0,
       'priority' => 0,
       'langcode' => $langcode,
-    );
+    ];
   }
   return $grants;
 }
diff --git a/core/modules/node/tests/modules/node_test/node_test.module b/core/modules/node/tests/modules/node_test/node_test.module
index 866be19..c852b44 100644
--- a/core/modules/node/tests/modules/node_test/node_test.module
+++ b/core/modules/node/tests/modules/node_test/node_test.module
@@ -21,23 +21,23 @@
 function node_test_node_view(array &$build, NodeInterface $node, EntityViewDisplayInterface $display, $view_mode) {
   if ($view_mode == 'rss') {
     // Add RSS elements and namespaces when building the RSS feed.
-    $node->rss_elements[] = array(
+    $node->rss_elements[] = [
       'key' => 'testElement',
-      'value' => t('Value of testElement RSS element for node @nid.', array('@nid' => $node->id())),
-    );
+      'value' => t('Value of testElement RSS element for node @nid.', ['@nid' => $node->id()]),
+    ];
 
     // Add content that should be displayed only in the RSS feed.
-    $build['extra_feed_content'] = array(
-      '#markup' => '<p>' . t('Extra data that should appear only in the RSS feed for node @nid.', array('@nid' => $node->id())) . '</p>',
+    $build['extra_feed_content'] = [
+      '#markup' => '<p>' . t('Extra data that should appear only in the RSS feed for node @nid.', ['@nid' => $node->id()]) . '</p>',
       '#weight' => 10,
-    );
+    ];
   }
 
   if ($view_mode != 'rss') {
     // Add content that should NOT be displayed in the RSS feed.
-    $build['extra_non_feed_content'] = array(
-      '#markup' => '<p>' . t('Extra data that should appear everywhere except the RSS feed for node @nid.', array('@nid' => $node->id())) . '</p>',
-    );
+    $build['extra_non_feed_content'] = [
+      '#markup' => '<p>' . t('Extra data that should appear everywhere except the RSS feed for node @nid.', ['@nid' => $node->id()]) . '</p>',
+    ];
   }
 }
 
@@ -57,11 +57,11 @@ function node_test_node_grants(AccountInterface $account, $op) {
   // Give everyone full grants so we don't break other node tests.
   // Our node access tests asserts three realms of access.
   // See testGrantAlter().
-  return array(
-    'test_article_realm' => array(1),
-    'test_page_realm' => array(1),
-    'test_alter_realm' => array(2),
-  );
+  return [
+    'test_article_realm' => [1],
+    'test_page_realm' => [1],
+    'test_alter_realm' => [2],
+  ];
 }
 
 /**
@@ -72,28 +72,28 @@ function node_test_node_access_records(NodeInterface $node) {
   if (!empty($node->disable_node_access)) {
     return;
   }
-  $grants = array();
+  $grants = [];
   if ($node->getType() == 'article') {
     // Create grant in arbitrary article_realm for article nodes.
-    $grants[] = array(
+    $grants[] = [
       'realm' => 'test_article_realm',
       'gid' => 1,
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
       'priority' => 0,
-    );
+    ];
   }
   elseif ($node->getType() == 'page') {
     // Create grant in arbitrary page_realm for page nodes.
-    $grants[] = array(
+    $grants[] = [
       'realm' => 'test_page_realm',
       'gid' => 1,
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
       'priority' => 0,
-    );
+    ];
   }
   return $grants;
 }
@@ -118,7 +118,7 @@ function node_test_node_access_records_alter(&$grants, NodeInterface $node) {
  */
 function node_test_node_grants_alter(&$grants, AccountInterface $account, $op) {
   // Return an empty array of grants to prove that we can alter by reference.
-  $grants = array();
+  $grants = [];
 }
 
 /**
diff --git a/core/modules/node/tests/src/Functional/MultiStepNodeFormBasicOptionsTest.php b/core/modules/node/tests/src/Functional/MultiStepNodeFormBasicOptionsTest.php
index 36ac519..2712c0c 100644
--- a/core/modules/node/tests/src/Functional/MultiStepNodeFormBasicOptionsTest.php
+++ b/core/modules/node/tests/src/Functional/MultiStepNodeFormBasicOptionsTest.php
@@ -24,17 +24,17 @@ class MultiStepNodeFormBasicOptionsTest extends NodeTestBase {
    */
   function testMultiStepNodeFormBasicOptions() {
     // Prepare a user to create the node.
-    $web_user = $this->drupalCreateUser(array('administer nodes', 'create page content'));
+    $web_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
     $this->drupalLogin($web_user);
 
     // Create an unlimited cardinality field.
     $this->fieldName = Unicode::strtolower($this->randomMachineName());
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
       'type' => 'text',
       'cardinality' => -1,
-    ))->save();
+    ])->save();
 
     // Attach an instance of the field to the page content type.
     FieldConfig::create([
@@ -44,17 +44,17 @@ function testMultiStepNodeFormBasicOptions() {
       'label' => $this->randomMachineName() . '_label',
     ])->save();
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'text_textfield',
-      ))
+      ])
       ->save();
 
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'a',
       'promote[value]' => FALSE,
       'sticky[value]' => 1,
       "{$this->fieldName}[0][value]" => $this->randomString(32),
-    );
+    ];
     $this->drupalPostForm('node/add/page', $edit, t('Add another item'));
     $this->assertNoFieldChecked('edit-promote-value', 'Promote stayed unchecked');
     $this->assertFieldChecked('edit-sticky-value', 'Sticky stayed checked');
diff --git a/core/modules/node/tests/src/Functional/NodeAccessFieldTest.php b/core/modules/node/tests/src/Functional/NodeAccessFieldTest.php
index a84b7b6..af14546 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessFieldTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessFieldTest.php
@@ -17,7 +17,7 @@ class NodeAccessFieldTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test', 'field_ui');
+  public static $modules = ['node_access_test', 'field_ui'];
 
   /**
    * A user with permission to bypass access content.
@@ -46,16 +46,16 @@ protected function setUp() {
     node_access_rebuild();
 
     // Create some users.
-    $this->adminUser = $this->drupalCreateUser(array('access content', 'bypass node access'));
-    $this->contentAdminUser = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields'));
+    $this->adminUser = $this->drupalCreateUser(['access content', 'bypass node access']);
+    $this->contentAdminUser = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields']);
 
     // Add a custom field to the page content type.
     $this->fieldName = Unicode::strtolower($this->randomMachineName() . '_field_name');
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
       'type' => 'text'
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
@@ -74,9 +74,9 @@ protected function setUp() {
    */
   function testNodeAccessAdministerField() {
     // Create a page node.
-    $fieldData = array();
+    $fieldData = [];
     $value = $fieldData[0]['value'] = $this->randomMachineName();
-    $node = $this->drupalCreateNode(array($this->fieldName => $fieldData));
+    $node = $this->drupalCreateNode([$this->fieldName => $fieldData]);
 
     // Log in as the administrator and confirm that the field value is present.
     $this->drupalLogin($this->adminUser);
@@ -89,7 +89,7 @@ function testNodeAccessAdministerField() {
     $this->assertText('Access denied', 'Access is denied for the content admin.');
 
     // Modify the field default as the content admin.
-    $edit = array();
+    $edit = [];
     $default = 'Sometimes words have two meanings';
     $edit["default_value_input[{$this->fieldName}][0][value]"] = $default;
     $this->drupalPostForm(
diff --git a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
index 7963e87..fa2116a 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessGrantsCacheContextTest.php
@@ -15,7 +15,7 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_access_test');
+  public static $modules = ['node_access_test'];
 
   /**
    * User with permission to view content.
@@ -43,9 +43,9 @@ protected function setUp() {
 
     // Create user with simple node access permission. The 'node test view'
     // permission is implemented and granted by the node_access_test module.
-    $this->accessUser = $this->drupalCreateUser(array('access content overview', 'access content', 'node test view'));
-    $this->noAccessUser = $this->drupalCreateUser(array('access content overview', 'access content'));
-    $this->noAccessUser2 = $this->drupalCreateUser(array('access content overview', 'access content'));
+    $this->accessUser = $this->drupalCreateUser(['access content overview', 'access content', 'node test view']);
+    $this->noAccessUser = $this->drupalCreateUser(['access content overview', 'access content']);
+    $this->noAccessUser2 = $this->drupalCreateUser(['access content overview', 'access content']);
 
     $this->userMapping = [
       1 => $this->rootUser,
@@ -84,14 +84,14 @@ public function testCacheContext() {
 
     // Grant view to all nodes (because nid = 0) for users in the
     // 'node_access_all' realm.
-    $record = array(
+    $record = [
       'nid' => 0,
       'gid' => 0,
       'realm' => 'node_access_all',
       'grant_view' => 1,
       'grant_update' => 0,
       'grant_delete' => 0,
-    );
+    ];
     db_insert('node_access')->fields($record)->execute();
 
     // Put user accessUser (uid 0) in the realm.
diff --git a/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareCombinationTest.php b/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareCombinationTest.php
index 860bebe..ff4d1a2 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareCombinationTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareCombinationTest.php
@@ -22,14 +22,14 @@ class NodeAccessLanguageAwareCombinationTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'node_access_test_language', 'node_access_test');
+  public static $modules = ['language', 'node_access_test_language', 'node_access_test'];
 
   /**
    * A set of nodes to use in testing.
    *
    * @var \Drupal\node\NodeInterface[]
    */
-  protected $nodes = array();
+  protected $nodes = [];
 
   /**
    * A normal authenticated user.
@@ -52,24 +52,24 @@ protected function setUp() {
 
     // Create the 'private' field, which allows the node to be marked as private
     // (restricted access) in a given translation.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_private',
       'entity_type' => 'node',
       'type' => 'boolean',
       'cardinality' => 1,
-    ));
+    ]);
     $field_storage->save();
 
     FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'page',
-      'widget' => array(
+      'widget' => [
         'type' => 'options_buttons',
-      ),
-      'settings' => array(
+      ],
+      'settings' => [
         'on_label' => 'Private',
         'off_label' => 'Not private',
-      ),
+      ],
     ])->save();
 
     // After enabling a node access module, the access table has to be rebuild.
@@ -80,7 +80,7 @@ protected function setUp() {
     ConfigurableLanguage::createFromLangcode('ca')->save();
 
     // Create a normal authenticated user.
-    $this->webUser = $this->drupalCreateUser(array('access content'));
+    $this->webUser = $this->drupalCreateUser(['access content']);
 
     // Load the user 1 user for later use as an admin user with permission to
     // see everything.
@@ -101,92 +101,92 @@ protected function setUp() {
     // 4. One public with only the Catalan translation private.
     // 5. One public with both the Hungarian and Catalan translations private.
     // 6. One private with both the Hungarian and Catalan translations private.
-    $this->nodes['public_both_public'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['public_both_public'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 0)),
+      'field_private' => [['value' => 0]],
       'private' => FALSE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 0;
     $node->save();
 
-    $this->nodes['private_both_public'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['private_both_public'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 0)),
+      'field_private' => [['value' => 0]],
       'private' => TRUE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 0;
     $node->save();
 
-    $this->nodes['public_hu_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['public_hu_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 1)),
+      'field_private' => [['value' => 1]],
       'private' => FALSE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 0;
     $node->save();
 
-    $this->nodes['public_ca_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['public_ca_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 0)),
+      'field_private' => [['value' => 0]],
       'private' => FALSE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 1;
     $node->save();
 
-    $this->nodes['public_both_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['public_both_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 1)),
+      'field_private' => [['value' => 1]],
       'private' => FALSE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 1;
     $node->save();
 
-    $this->nodes['private_both_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['private_both_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 1)),
+      'field_private' => [['value' => 1]],
       'private' => TRUE,
-    ));
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 1;
     $node->save();
 
-    $this->nodes['public_no_language_private'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 1)),
+    $this->nodes['public_no_language_private'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 1]],
       'private' => FALSE,
         'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
-    $this->nodes['public_no_language_public'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 0)),
+    ]);
+    $this->nodes['public_no_language_public'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 0]],
       'private' => FALSE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
-    $this->nodes['private_no_language_private'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 1)),
+    ]);
+    $this->nodes['private_no_language_private'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 1]],
       'private' => TRUE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
-    $this->nodes['private_no_language_public'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 1)),
+    ]);
+    $this->nodes['private_no_language_public'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 1]],
       'private' => TRUE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
   }
 
   /**
@@ -194,8 +194,8 @@ protected function setUp() {
    */
   function testNodeAccessLanguageAwareCombination() {
 
-    $expected_node_access = array('view' => TRUE, 'update' => FALSE, 'delete' => FALSE);
-    $expected_node_access_no_access = array('view' => FALSE, 'update' => FALSE, 'delete' => FALSE);
+    $expected_node_access = ['view' => TRUE, 'update' => FALSE, 'delete' => FALSE];
+    $expected_node_access_no_access = ['view' => FALSE, 'update' => FALSE, 'delete' => FALSE];
 
     // When the node and both translations are public, access should always be
     // granted.
@@ -254,7 +254,7 @@ function testNodeAccessLanguageAwareCombination() {
 
     // Query with no language specified. The fallback (hu or und) will be used.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -269,7 +269,7 @@ function testNodeAccessLanguageAwareCombination() {
 
     // Query with Hungarian (hu) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'hu')
       ->addTag('node_access');
@@ -283,7 +283,7 @@ function testNodeAccessLanguageAwareCombination() {
 
     // Query with Catalan (ca) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'ca')
       ->addTag('node_access');
@@ -297,7 +297,7 @@ function testNodeAccessLanguageAwareCombination() {
 
     // Query with German (de) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
@@ -309,7 +309,7 @@ function testNodeAccessLanguageAwareCombination() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and no specific langcode.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->adminUser)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -320,7 +320,7 @@ function testNodeAccessLanguageAwareCombination() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and langcode de.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->adminUser)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
diff --git a/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareTest.php b/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareTest.php
index 90e040b..9338e5d 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessLanguageAwareTest.php
@@ -21,14 +21,14 @@ class NodeAccessLanguageAwareTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'node_access_test_language');
+  public static $modules = ['language', 'node_access_test_language'];
 
   /**
    * A set of nodes to use in testing.
    *
    * @var \Drupal\node\NodeInterface[]
    */
-  protected $nodes = array();
+  protected $nodes = [];
 
   /**
    * A user with permission to bypass access content.
@@ -49,31 +49,31 @@ protected function setUp() {
 
     // Create the 'private' field, which allows the node to be marked as private
     // (restricted access) in a given translation.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'field_private',
       'entity_type' => 'node',
       'type' => 'boolean',
       'cardinality' => 1,
-    ));
+    ]);
     $field_storage->save();
 
     FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => 'page',
-      'widget' => array(
+      'widget' => [
         'type' => 'options_buttons',
-      ),
-      'settings' => array(
+      ],
+      'settings' => [
         'on_label' => 'Private',
         'off_label' => 'Not private',
-      ),
+      ],
     ])->save();
 
     // After enabling a node access module, the access table has to be rebuild.
     node_access_rebuild();
 
     // Create a normal authenticated user.
-    $this->webUser = $this->drupalCreateUser(array('access content'));
+    $this->webUser = $this->drupalCreateUser(['access content']);
 
     // Load the user 1 user for later use as an admin user with permission to
     // see everything.
@@ -95,54 +95,54 @@ protected function setUp() {
     // 2. Two nodes with no language specified.
     //   - One public.
     //   - One private.
-    $this->nodes['both_public'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['both_public'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 0)),
-    ));
+      'field_private' => [['value' => 0]],
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 0;
     $node->save();
 
-    $this->nodes['ca_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['ca_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 0)),
-    ));
+      'field_private' => [['value' => 0]],
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 1;
     $node->save();
 
-    $this->nodes['hu_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['hu_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 1)),
-    ));
+      'field_private' => [['value' => 1]],
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 0;
     $node->save();
 
-    $this->nodes['both_private'] = $node = $this->drupalCreateNode(array(
-      'body' => array(array()),
+    $this->nodes['both_private'] = $node = $this->drupalCreateNode([
+      'body' => [[]],
       'langcode' => 'hu',
-      'field_private' => array(array('value' => 1)),
-    ));
+      'field_private' => [['value' => 1]],
+    ]);
     $translation = $node->addTranslation('ca');
     $translation->title->value = $this->randomString();
     $translation->field_private->value = 1;
     $node->save();
 
-    $this->nodes['no_language_public'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 0)),
+    $this->nodes['no_language_public'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 0]],
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
-    $this->nodes['no_language_private'] = $this->drupalCreateNode(array(
-      'field_private' => array(array('value' => 1)),
+    ]);
+    $this->nodes['no_language_private'] = $this->drupalCreateNode([
+      'field_private' => [['value' => 1]],
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
   }
 
   /**
@@ -150,8 +150,8 @@ protected function setUp() {
    */
   function testNodeAccessLanguageAware() {
     // The node_access_test_language module only grants view access.
-    $expected_node_access = array('view' => TRUE, 'update' => FALSE, 'delete' => FALSE);
-    $expected_node_access_no_access = array('view' => FALSE, 'update' => FALSE, 'delete' => FALSE);
+    $expected_node_access = ['view' => TRUE, 'update' => FALSE, 'delete' => FALSE];
+    $expected_node_access_no_access = ['view' => FALSE, 'update' => FALSE, 'delete' => FALSE];
 
     // When both Hungarian and Catalan are marked as public, access to the
     // Hungarian translation should be granted with the default entity object or
@@ -195,7 +195,7 @@ function testNodeAccessLanguageAware() {
 
     // Query with no language specified. The fallback (hu) will be used.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -211,7 +211,7 @@ function testNodeAccessLanguageAware() {
 
     // Query with Hungarian (hu) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'hu')
       ->addTag('node_access');
@@ -225,7 +225,7 @@ function testNodeAccessLanguageAware() {
 
     // Query with Catalan (ca) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'ca')
       ->addTag('node_access');
@@ -239,7 +239,7 @@ function testNodeAccessLanguageAware() {
 
     // Query with German (de) specified.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->webUser)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
@@ -251,7 +251,7 @@ function testNodeAccessLanguageAware() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and no specific langcode.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->adminUser)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -262,7 +262,7 @@ function testNodeAccessLanguageAware() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and langcode de.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $this->adminUser)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
diff --git a/core/modules/node/tests/src/Functional/NodeAccessLanguageTest.php b/core/modules/node/tests/src/Functional/NodeAccessLanguageTest.php
index e758676..2c9bcc3 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessLanguageTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessLanguageTest.php
@@ -20,7 +20,7 @@ class NodeAccessLanguageTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'node_access_test');
+  public static $modules = ['language', 'node_access_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -43,14 +43,14 @@ protected function setUp() {
    * Tests node access with multiple node languages and no private nodes.
    */
   function testNodeAccess() {
-    $web_user = $this->drupalCreateUser(array('access content'));
+    $web_user = $this->drupalCreateUser(['access content']);
 
-    $expected_node_access = array('view' => TRUE, 'update' => FALSE, 'delete' => FALSE);
-    $expected_node_access_no_access = array('view' => FALSE, 'update' => FALSE, 'delete' => FALSE);
+    $expected_node_access = ['view' => TRUE, 'update' => FALSE, 'delete' => FALSE];
+    $expected_node_access_no_access = ['view' => FALSE, 'update' => FALSE, 'delete' => FALSE];
 
     // Creating a public node with langcode Hungarian, will be saved as the
     // fallback in node access table.
-    $node_public_hu = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'hu', 'private' => FALSE));
+    $node_public_hu = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'hu', 'private' => FALSE]);
     $this->assertTrue($node_public_hu->language()->getId() == 'hu', 'Node created as Hungarian.');
 
     // Tests the default access is provided for the public Hungarian node.
@@ -61,10 +61,10 @@ function testNodeAccess() {
 
     // Creating a public node with no special langcode, like when no language
     // module enabled.
-    $node_public_no_language = $this->drupalCreateNode(array(
+    $node_public_no_language = $this->drupalCreateNode([
       'private' => FALSE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $this->assertTrue($node_public_no_language->language()->getId() == LanguageInterface::LANGCODE_NOT_SPECIFIED, 'Node created with not specified language.');
 
     // Tests that access is granted if requested with no language.
@@ -73,7 +73,7 @@ function testNodeAccess() {
     // Reset the node access cache and turn on our test node access code.
     \Drupal::entityManager()->getAccessControlHandler('node')->resetCache();
     \Drupal::state()->set('node_access_test_secret_catalan', 1);
-    $node_public_ca = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'ca', 'private' => FALSE));
+    $node_public_ca = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'ca', 'private' => FALSE]);
     $this->assertTrue($node_public_ca->language()->getId() == 'ca', 'Node created as Catalan.');
 
     // Tests that access is granted if requested with no language.
@@ -113,13 +113,13 @@ function testNodeAccess() {
    * Tests node access with multiple node languages and private nodes.
    */
   function testNodeAccessPrivate() {
-    $web_user = $this->drupalCreateUser(array('access content'));
-    $expected_node_access = array('view' => TRUE, 'update' => FALSE, 'delete' => FALSE);
-    $expected_node_access_no_access = array('view' => FALSE, 'update' => FALSE, 'delete' => FALSE);
+    $web_user = $this->drupalCreateUser(['access content']);
+    $expected_node_access = ['view' => TRUE, 'update' => FALSE, 'delete' => FALSE];
+    $expected_node_access_no_access = ['view' => FALSE, 'update' => FALSE, 'delete' => FALSE];
 
     // Creating a private node with langcode Hungarian, will be saved as the
     // fallback in node access table.
-    $node_private_hu = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'hu', 'private' => TRUE));
+    $node_private_hu = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'hu', 'private' => TRUE]);
     $this->assertTrue($node_private_hu->language()->getId() == 'hu', 'Node created as Hungarian.');
 
     // Tests the default access is not provided for the private Hungarian node.
@@ -130,10 +130,10 @@ function testNodeAccessPrivate() {
 
     // Creating a private node with no special langcode, like when no language
     // module enabled.
-    $node_private_no_language = $this->drupalCreateNode(array(
+    $node_private_no_language = $this->drupalCreateNode([
       'private' => TRUE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $this->assertTrue($node_private_no_language->language()->getId() == LanguageInterface::LANGCODE_NOT_SPECIFIED, 'Node created with not specified language.');
 
     // Tests that access is not granted if requested with no language.
@@ -148,8 +148,8 @@ function testNodeAccessPrivate() {
 
     // Creating a private node with langcode Catalan to test that the
     // node_access_test_secret_catalan flag works.
-    $private_ca_user = $this->drupalCreateUser(array('access content', 'node test view'));
-    $node_private_ca = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'ca', 'private' => TRUE));
+    $private_ca_user = $this->drupalCreateUser(['access content', 'node test view']);
+    $node_private_ca = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'ca', 'private' => TRUE]);
     $this->assertTrue($node_private_ca->language()->getId() == 'ca', 'Node created as Catalan.');
 
     // Tests that Catalan is still not accessible to either user.
@@ -177,7 +177,7 @@ function testNodeAccessPrivate() {
    */
   function testNodeAccessQueryTag() {
     // Create a normal authenticated user.
-    $web_user = $this->drupalCreateUser(array('access content'));
+    $web_user = $this->drupalCreateUser(['access content']);
 
     // Load the user 1 user for later use as an admin user with permission to
     // see everything.
@@ -185,26 +185,26 @@ function testNodeAccessQueryTag() {
 
     // Creating a private node with langcode Hungarian, will be saved as
     // the fallback in node access table.
-    $node_private = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'hu', 'private' => TRUE));
+    $node_private = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'hu', 'private' => TRUE]);
     $this->assertTrue($node_private->language()->getId() == 'hu', 'Node created as Hungarian.');
 
     // Creating a public node with langcode Hungarian, will be saved as
     // the fallback in node access table.
-    $node_public = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'hu', 'private' => FALSE));
+    $node_public = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'hu', 'private' => FALSE]);
     $this->assertTrue($node_public->language()->getId() == 'hu', 'Node created as Hungarian.');
 
     // Creating a public node with no special langcode, like when no language
     // module enabled.
-    $node_no_language = $this->drupalCreateNode(array(
+    $node_no_language = $this->drupalCreateNode([
       'private' => FALSE,
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    ));
+    ]);
     $this->assertTrue($node_no_language->language()->getId() == LanguageInterface::LANGCODE_NOT_SPECIFIED, 'Node created with not specified language.');
 
     // Query the nodes table as the web user with the node access tag and no
     // specific langcode.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $web_user)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -218,7 +218,7 @@ function testNodeAccessQueryTag() {
     // Query the nodes table as the web user with the node access tag and
     // langcode de.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $web_user)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
@@ -230,7 +230,7 @@ function testNodeAccessQueryTag() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and no specific langcode.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $admin_user)
       ->addTag('node_access');
     $nids = $select->execute()->fetchAllAssoc('nid');
@@ -241,7 +241,7 @@ function testNodeAccessQueryTag() {
     // Query the nodes table as admin user (full access) with the node access
     // tag and langcode de.
     $select = db_select('node', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->addMetaData('account', $admin_user)
       ->addMetaData('langcode', 'de')
       ->addTag('node_access');
diff --git a/core/modules/node/tests/src/Functional/NodeAccessMenuLinkTest.php b/core/modules/node/tests/src/Functional/NodeAccessMenuLinkTest.php
index 9d12098..ce6326d 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessMenuLinkTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessMenuLinkTest.php
@@ -16,7 +16,7 @@ class NodeAccessMenuLinkTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_ui', 'block');
+  public static $modules = ['menu_ui', 'block'];
 
   /**
    * A user with permission to manage menu links and create nodes.
@@ -30,13 +30,13 @@ protected function setUp() {
 
     $this->drupalPlaceBlock('system_menu_block:main');
 
-    $this->contentAdminUser = $this->drupalCreateUser(array(
+    $this->contentAdminUser = $this->drupalCreateUser([
       'access content',
       'administer content types',
       'administer menu'
-    ));
+    ]);
 
-    $this->config('user.role.' . RoleInterface::ANONYMOUS_ID)->set('permissions', array())->save();
+    $this->config('user.role.' . RoleInterface::ANONYMOUS_ID)->set('permissions', [])->save();
   }
 
   /**
@@ -64,7 +64,7 @@ function testNodeAccessMenuLink() {
 
     // Ensure anonymous users with "access content" permission see this menu
     // link.
-    $this->config('user.role.' . RoleInterface::ANONYMOUS_ID)->set('permissions', array('access content'))->save();
+    $this->config('user.role.' . RoleInterface::ANONYMOUS_ID)->set('permissions', ['access content'])->save();
     $this->drupalGet('');
     $this->assertLink($menu_link_title);
   }
diff --git a/core/modules/node/tests/src/Functional/NodeAccessRecordsTest.php b/core/modules/node/tests/src/Functional/NodeAccessRecordsTest.php
index ce16bee..13ec111 100644
--- a/core/modules/node/tests/src/Functional/NodeAccessRecordsTest.php
+++ b/core/modules/node/tests/src/Functional/NodeAccessRecordsTest.php
@@ -16,68 +16,68 @@ class NodeAccessRecordsTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test');
+  public static $modules = ['node_test'];
 
   /**
    * Creates a node and tests the creation of node access rules.
    */
   function testNodeAccessRecords() {
     // Create an article node.
-    $node1 = $this->drupalCreateNode(array('type' => 'article'));
+    $node1 = $this->drupalCreateNode(['type' => 'article']);
     $this->assertTrue(Node::load($node1->id()), 'Article node created.');
 
     // Check to see if grants added by node_test_node_access_records made it in.
-    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', array(':nid' => $node1->id()))->fetchAll();
+    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', [':nid' => $node1->id()])->fetchAll();
     $this->assertEqual(count($records), 1, 'Returned the correct number of rows.');
     $this->assertEqual($records[0]->realm, 'test_article_realm', 'Grant with article_realm acquired for node without alteration.');
     $this->assertEqual($records[0]->gid, 1, 'Grant with gid = 1 acquired for node without alteration.');
 
     // Create an unpromoted "Basic page" node.
-    $node2 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 0));
+    $node2 = $this->drupalCreateNode(['type' => 'page', 'promote' => 0]);
     $this->assertTrue(Node::load($node2->id()), 'Unpromoted basic page node created.');
 
     // Check to see if grants added by node_test_node_access_records made it in.
-    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', array(':nid' => $node2->id()))->fetchAll();
+    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', [':nid' => $node2->id()])->fetchAll();
     $this->assertEqual(count($records), 1, 'Returned the correct number of rows.');
     $this->assertEqual($records[0]->realm, 'test_page_realm', 'Grant with page_realm acquired for node without alteration.');
     $this->assertEqual($records[0]->gid, 1, 'Grant with gid = 1 acquired for node without alteration.');
 
     // Create an unpromoted, unpublished "Basic page" node.
-    $node3 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 0, 'status' => 0));
+    $node3 = $this->drupalCreateNode(['type' => 'page', 'promote' => 0, 'status' => 0]);
     $this->assertTrue(Node::load($node3->id()), 'Unpromoted, unpublished basic page node created.');
 
     // Check to see if grants added by node_test_node_access_records made it in.
-    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', array(':nid' => $node3->id()))->fetchAll();
+    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', [':nid' => $node3->id()])->fetchAll();
     $this->assertEqual(count($records), 1, 'Returned the correct number of rows.');
     $this->assertEqual($records[0]->realm, 'test_page_realm', 'Grant with page_realm acquired for node without alteration.');
     $this->assertEqual($records[0]->gid, 1, 'Grant with gid = 1 acquired for node without alteration.');
 
     // Create a promoted "Basic page" node.
-    $node4 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 1));
+    $node4 = $this->drupalCreateNode(['type' => 'page', 'promote' => 1]);
     $this->assertTrue(Node::load($node4->id()), 'Promoted basic page node created.');
 
     // Check to see if grant added by node_test_node_access_records was altered
     // by node_test_node_access_records_alter.
-    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', array(':nid' => $node4->id()))->fetchAll();
+    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', [':nid' => $node4->id()])->fetchAll();
     $this->assertEqual(count($records), 1, 'Returned the correct number of rows.');
     $this->assertEqual($records[0]->realm, 'test_alter_realm', 'Altered grant with alter_realm acquired for node.');
     $this->assertEqual($records[0]->gid, 2, 'Altered grant with gid = 2 acquired for node.');
 
     // Check to see if we can alter grants with hook_node_grants_alter().
-    $operations = array('view', 'update', 'delete');
+    $operations = ['view', 'update', 'delete'];
     // Create a user that is allowed to access content.
-    $web_user = $this->drupalCreateUser(array('access content'));
+    $web_user = $this->drupalCreateUser(['access content']);
     foreach ($operations as $op) {
       $grants = node_test_node_grants($web_user, $op);
       $altered_grants = $grants;
       \Drupal::moduleHandler()->alter('node_grants', $altered_grants, $web_user, $op);
-      $this->assertNotEqual($grants, $altered_grants, format_string('Altered the %op grant for a user.', array('%op' => $op)));
+      $this->assertNotEqual($grants, $altered_grants, format_string('Altered the %op grant for a user.', ['%op' => $op]));
     }
 
     // Check that core does not grant access to an unpublished node when an
     // empty $grants array is returned.
-    $node6 = $this->drupalCreateNode(array('status' => 0, 'disable_node_access' => TRUE));
-    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', array(':nid' => $node6->id()))->fetchAll();
+    $node6 = $this->drupalCreateNode(['status' => 0, 'disable_node_access' => TRUE]);
+    $records = db_query('SELECT realm, gid FROM {node_access} WHERE nid = :nid', [':nid' => $node6->id()])->fetchAll();
     $this->assertEqual(count($records), 0, 'Returned no records for unpublished node.');
   }
 
diff --git a/core/modules/node/tests/src/Functional/NodeCacheTagsTest.php b/core/modules/node/tests/src/Functional/NodeCacheTagsTest.php
index d0007a1..ca5a0a9 100644
--- a/core/modules/node/tests/src/Functional/NodeCacheTagsTest.php
+++ b/core/modules/node/tests/src/Functional/NodeCacheTagsTest.php
@@ -17,7 +17,7 @@ class NodeCacheTagsTest extends EntityWithUriCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * {@inheritdoc}
@@ -61,7 +61,7 @@ protected function getAdditionalCacheContextsForEntity(EntityInterface $entity)
    * Each node must have an author.
    */
   protected function getAdditionalCacheTagsForEntity(EntityInterface $node) {
-    return array('user:' . $node->getOwnerId(), 'user_view');
+    return ['user:' . $node->getOwnerId(), 'user_view'];
   }
 
   /**
diff --git a/core/modules/node/tests/src/Functional/NodeCreationTest.php b/core/modules/node/tests/src/Functional/NodeCreationTest.php
index 57fd746..8f5fb35 100644
--- a/core/modules/node/tests/src/Functional/NodeCreationTest.php
+++ b/core/modules/node/tests/src/Functional/NodeCreationTest.php
@@ -21,12 +21,12 @@ class NodeCreationTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test_exception', 'dblog', 'test_page_test');
+  public static $modules = ['node_test_exception', 'dblog', 'test_page_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit own page content'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit own page content']);
     $this->drupalLogin($web_user);
   }
 
@@ -42,16 +42,16 @@ function testNodeCreation() {
     $this->assertResponse(200);
     $this->assertUrl('node/add/page');
     // Create a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
 
     // Check that the Basic page has been created.
-    $this->assertText(t('@post @title has been created.', array('@post' => 'Basic page', '@title' => $edit['title[0][value]'])), 'Basic page created.');
+    $this->assertText(t('@post @title has been created.', ['@post' => 'Basic page', '@title' => $edit['title[0][value]']]), 'Basic page created.');
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/']);
     $this->assert(isset($view_link), 'The message area contains a link to a node');
 
     // Check that the node exists in the database.
@@ -74,7 +74,7 @@ function testNodeCreation() {
     $this->assertText(format_date($node->getCreatedTime()));
 
     // Check if the node revision checkbox is not rendered on node creation form.
-    $admin_user = $this->drupalCreateUser(array('administer nodes', 'create page content'));
+    $admin_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('node/add/page');
     $this->assertNoFieldById('edit-revision', NULL, 'The revision checkbox is not present.');
@@ -85,13 +85,13 @@ function testNodeCreation() {
    */
   function testFailedPageCreation() {
     // Create a node.
-    $edit = array(
+    $edit = [
       'uid'      => $this->loggedInUser->id(),
       'name'     => $this->loggedInUser->name,
       'type'     => 'page',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
       'title'    => 'testing_transaction_exception',
-    );
+    ];
 
     try {
       // An exception is generated by node_test_exception_node_insert() if the
@@ -137,7 +137,7 @@ function testUnpublishedNodeCreation() {
       ->save();
 
     // Create a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
@@ -147,10 +147,10 @@ function testUnpublishedNodeCreation() {
     $this->assertText(t('Test page text'));
 
     // Confirm that the node was created.
-    $this->assertText(t('@post @title has been created.', array('@post' => 'Basic page', '@title' => $edit['title[0][value]'])));
+    $this->assertText(t('@post @title has been created.', ['@post' => 'Basic page', '@title' => $edit['title[0][value]']]));
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/']);
     $this->assert(isset($view_link), 'The message area contains a link to a node');
   }
 
@@ -158,7 +158,7 @@ function testUnpublishedNodeCreation() {
    * Tests the author autocompletion textfield.
    */
   public function testAuthorAutocomplete() {
-    $admin_user = $this->drupalCreateUser(array('administer nodes', 'create page content'));
+    $admin_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('node/add/page');
@@ -166,7 +166,7 @@ public function testAuthorAutocomplete() {
     $result = $this->xpath('//input[@id="edit-uid-0-value" and contains(@data-autocomplete-path, "user/autocomplete")]');
     $this->assertEqual(count($result), 0, 'No autocompletion without access user profiles.');
 
-    $admin_user = $this->drupalCreateUser(array('administer nodes', 'create page content', 'access user profiles'));
+    $admin_user = $this->drupalCreateUser(['administer nodes', 'create page content', 'access user profiles']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('node/add/page');
@@ -191,7 +191,7 @@ function testNodeAddWithoutContentTypes() {
     $this->drupalGet('node/add');
     $this->assertResponse(403);
 
-    $admin_content_types = $this->drupalCreateUser(array('administer content types'));
+    $admin_content_types = $this->drupalCreateUser(['administer content types']);
     $this->drupalLogin($admin_content_types);
 
     $this->drupalGet('node/add');
@@ -209,7 +209,7 @@ function testNodeAddWithoutContentTypes() {
   protected static function getWatchdogIdsForTestExceptionRollback() {
     // PostgreSQL doesn't support bytea LIKE queries, so we need to unserialize
     // first to check for the rollback exception message.
-    $matches = array();
+    $matches = [];
     $query = db_query("SELECT wid, variables FROM {watchdog}");
     foreach ($query as $row) {
       $variables = (array) unserialize($row->variables);
diff --git a/core/modules/node/tests/src/Functional/NodeFormSaveChangedTimeTest.php b/core/modules/node/tests/src/Functional/NodeFormSaveChangedTimeTest.php
index 918a2e7..607e68c 100644
--- a/core/modules/node/tests/src/Functional/NodeFormSaveChangedTimeTest.php
+++ b/core/modules/node/tests/src/Functional/NodeFormSaveChangedTimeTest.php
@@ -16,9 +16,9 @@ class NodeFormSaveChangedTimeTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'node',
-  );
+  ];
 
   /**
    * An user with permissions to create and edit articles.
@@ -34,18 +34,18 @@ protected function setUp() {
     parent::setUp();
 
     // Create a node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
     $this->authorUser = $this->drupalCreateUser(['access content', 'create article content', 'edit any article content'], 'author');
     $this->drupalLogin($this->authorUser);
 
     // Create one node of the above node type .
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'type' => 'article',
-    ));
+    ]);
   }
 
   /**
@@ -65,7 +65,7 @@ public function testChangedTimeAfterSaveWithoutChanges() {
     sleep(1);
 
     // Save the node on the regular node edit form.
-    $this->drupalPostForm('node/1/edit', array(), t('Save'));
+    $this->drupalPostForm('node/1/edit', [], t('Save'));
 
     $storage->resetCache([1]);
     $node = $storage->load(1);
diff --git a/core/modules/node/tests/src/Functional/NodeHelpTest.php b/core/modules/node/tests/src/Functional/NodeHelpTest.php
index ffeee08..c4b7139 100644
--- a/core/modules/node/tests/src/Functional/NodeHelpTest.php
+++ b/core/modules/node/tests/src/Functional/NodeHelpTest.php
@@ -16,7 +16,7 @@ class NodeHelpTest extends BrowserTestBase {
    *
    * @var array.
    */
-  public static $modules = array('block', 'node', 'help');
+  public static $modules = ['block', 'node', 'help'];
 
   /**
    * The name of the test node type to create.
@@ -39,11 +39,11 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer content types',
       'administer nodes',
       'bypass node access',
-    ));
+    ]);
 
     $this->drupalLogin($admin_user);
     $this->drupalPlaceBlock('help_block');
@@ -52,10 +52,10 @@ protected function setUp() {
     $this->testText = t('Help text to find on node forms.');
 
     // Create content type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => $this->testType,
       'help' => $this->testText,
-    ));
+    ]);
   }
 
   /**
@@ -68,7 +68,7 @@ public function testNodeShowHelpText() {
     $this->assertText($this->testText);
 
     // Create node and check the node edit form.
-    $node = $this->drupalCreateNode(array('type' => $this->testType));
+    $node = $this->drupalCreateNode(['type' => $this->testType]);
     $this->drupalGet('node/' . $node->id() . '/edit');
     $this->assertResponse(200);
     $this->assertText($this->testText);
diff --git a/core/modules/node/tests/src/Functional/NodeLinksTest.php b/core/modules/node/tests/src/Functional/NodeLinksTest.php
index f1e2629..7bd725b 100644
--- a/core/modules/node/tests/src/Functional/NodeLinksTest.php
+++ b/core/modules/node/tests/src/Functional/NodeLinksTest.php
@@ -16,16 +16,16 @@ class NodeLinksTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   /**
    * Tests that the links can be hidden in the view display settings.
    */
   public function testHideLinks() {
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => 'article',
       'promote' => NodeInterface::PROMOTED,
-    ));
+    ]);
 
     // Links are displayed by default.
     $this->drupalGet('node');
diff --git a/core/modules/node/tests/src/Functional/NodeLoadMultipleTest.php b/core/modules/node/tests/src/Functional/NodeLoadMultipleTest.php
index 92440ca..b5d991b 100644
--- a/core/modules/node/tests/src/Functional/NodeLoadMultipleTest.php
+++ b/core/modules/node/tests/src/Functional/NodeLoadMultipleTest.php
@@ -16,11 +16,11 @@ class NodeLoadMultipleTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   protected function setUp() {
     parent::setUp();
-    $web_user = $this->drupalCreateUser(array('create article content', 'create page content'));
+    $web_user = $this->drupalCreateUser(['create article content', 'create page content']);
     $this->drupalLogin($web_user);
   }
 
@@ -28,10 +28,10 @@ protected function setUp() {
    * Creates four nodes and ensures that they are loaded correctly.
    */
   function testNodeMultipleLoad() {
-    $node1 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $node2 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
-    $node3 = $this->drupalCreateNode(array('type' => 'article', 'promote' => 0));
-    $node4 = $this->drupalCreateNode(array('type' => 'page', 'promote' => 0));
+    $node1 = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $node2 = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
+    $node3 = $this->drupalCreateNode(['type' => 'article', 'promote' => 0]);
+    $node4 = $this->drupalCreateNode(['type' => 'page', 'promote' => 0]);
 
     // Confirm that promoted nodes appear in the default node listing.
     $this->drupalGet('node');
@@ -41,16 +41,16 @@ function testNodeMultipleLoad() {
     $this->assertNoText($node4->label(), 'Node title does not appear in the default listing.');
     // Load nodes with only a condition. Nodes 3 and 4 will be loaded.
     $nodes = $this->container->get('entity_type.manager')->getStorage('node')
-      ->loadByProperties(array('promote' => 0));
+      ->loadByProperties(['promote' => 0]);
     $this->assertEqual($node3->label(), $nodes[$node3->id()]->label(), 'Node was loaded.');
     $this->assertEqual($node4->label(), $nodes[$node4->id()]->label(), 'Node was loaded.');
     $count = count($nodes);
-    $this->assertTrue($count == 2, format_string('@count nodes loaded.', array('@count' => $count)));
+    $this->assertTrue($count == 2, format_string('@count nodes loaded.', ['@count' => $count]));
 
     // Load nodes by nid. Nodes 1, 2 and 4 will be loaded.
-    $nodes = Node::loadMultiple(array(1, 2, 4));
+    $nodes = Node::loadMultiple([1, 2, 4]);
     $count = count($nodes);
-    $this->assertTrue(count($nodes) == 3, format_string('@count nodes loaded', array('@count' => $count)));
+    $this->assertTrue(count($nodes) == 3, format_string('@count nodes loaded', ['@count' => $count]));
     $this->assertTrue(isset($nodes[$node1->id()]), 'Node is correctly keyed in the array');
     $this->assertTrue(isset($nodes[$node2->id()]), 'Node is correctly keyed in the array');
     $this->assertTrue(isset($nodes[$node4->id()]), 'Node is correctly keyed in the array');
diff --git a/core/modules/node/tests/src/Functional/NodePostSettingsTest.php b/core/modules/node/tests/src/Functional/NodePostSettingsTest.php
index c59c42d..9699261 100644
--- a/core/modules/node/tests/src/Functional/NodePostSettingsTest.php
+++ b/core/modules/node/tests/src/Functional/NodePostSettingsTest.php
@@ -13,7 +13,7 @@ class NodePostSettingsTest extends NodeTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('create page content', 'administer content types', 'access user profiles'));
+    $web_user = $this->drupalCreateUser(['create page content', 'administer content types', 'access user profiles']);
     $this->drupalLogin($web_user);
   }
 
@@ -23,35 +23,35 @@ protected function setUp() {
   function testPagePostInfo() {
 
     // Set "Basic page" content type to display post information.
-    $edit = array();
+    $edit = [];
     $edit['display_submitted'] = TRUE;
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
 
     // Create a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
 
     // Check that the post information is displayed.
     $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
-    $elements = $this->xpath('//div[contains(@class, :class)]', array(':class' => 'node__submitted'));
+    $elements = $this->xpath('//div[contains(@class, :class)]', [':class' => 'node__submitted']);
     $this->assertEqual(count($elements), 1, 'Post information is displayed.');
     $node->delete();
 
     // Set "Basic page" content type to display post information.
-    $edit = array();
+    $edit = [];
     $edit['display_submitted'] = FALSE;
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
 
     // Create a node.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
 
     // Check that the post information is displayed.
-    $elements = $this->xpath('//div[contains(@class, :class)]', array(':class' => 'node__submitted'));
+    $elements = $this->xpath('//div[contains(@class, :class)]', [':class' => 'node__submitted']);
     $this->assertEqual(count($elements), 0, 'Post information is not displayed.');
   }
 
diff --git a/core/modules/node/tests/src/Functional/NodeRSSContentTest.php b/core/modules/node/tests/src/Functional/NodeRSSContentTest.php
index de77927..2d154e2 100644
--- a/core/modules/node/tests/src/Functional/NodeRSSContentTest.php
+++ b/core/modules/node/tests/src/Functional/NodeRSSContentTest.php
@@ -20,7 +20,7 @@ class NodeRSSContentTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test', 'views');
+  public static $modules = ['node_test', 'views'];
 
   protected function setUp() {
     parent::setUp();
@@ -28,7 +28,7 @@ protected function setUp() {
     // Use bypass node access permission here, because the test class uses
     // hook_grants_alter() to deny access to everyone on node_access
     // queries.
-    $user = $this->drupalCreateUser(array('bypass node access', 'access content', 'create article content'));
+    $user = $this->drupalCreateUser(['bypass node access', 'access content', 'create article content']);
     $this->drupalLogin($user);
   }
 
@@ -37,21 +37,21 @@ protected function setUp() {
    */
   function testNodeRSSContent() {
     // Create a node.
-    $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
+    $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
 
     $this->drupalGet('rss.xml');
 
     // Check that content added in 'rss' view mode appear in RSS feed.
-    $rss_only_content = t('Extra data that should appear only in the RSS feed for node @nid.', array('@nid' => $node->id()));
+    $rss_only_content = t('Extra data that should appear only in the RSS feed for node @nid.', ['@nid' => $node->id()]);
     $this->assertText($rss_only_content, 'Node content designated for RSS appear in RSS feed.');
 
     // Check that content added in view modes other than 'rss' doesn't
     // appear in RSS feed.
-    $non_rss_content = t('Extra data that should appear everywhere except the RSS feed for node @nid.', array('@nid' => $node->id()));
+    $non_rss_content = t('Extra data that should appear everywhere except the RSS feed for node @nid.', ['@nid' => $node->id()]);
     $this->assertNoText($non_rss_content, 'Node content not designed for RSS does not appear in RSS feed.');
 
     // Check that extra RSS elements and namespaces are added to RSS feed.
-    $test_element = '<testElement>' . t('Value of testElement RSS element for node @nid.', array('@nid' => $node->id())) . '</testElement>';
+    $test_element = '<testElement>' . t('Value of testElement RSS element for node @nid.', ['@nid' => $node->id()]) . '</testElement>';
     $test_ns = 'xmlns:drupaltest="http://example.com/test-namespace"';
     $this->assertRaw($test_element, 'Extra RSS elements appear in RSS feed.');
     $this->assertRaw($test_ns, 'Extra namespaces appear in RSS feed.');
diff --git a/core/modules/node/tests/src/Functional/NodeRevisionsAllTest.php b/core/modules/node/tests/src/Functional/NodeRevisionsAllTest.php
index 9f3949e..85d33cd 100644
--- a/core/modules/node/tests/src/Functional/NodeRevisionsAllTest.php
+++ b/core/modules/node/tests/src/Functional/NodeRevisionsAllTest.php
@@ -20,13 +20,13 @@ protected function setUp() {
 
     // Create and log in user.
     $web_user = $this->drupalCreateUser(
-      array(
+      [
         'view page revisions',
         'revert page revisions',
         'delete page revisions',
         'edit any page content',
         'delete any page content'
-      )
+      ]
     );
     $this->drupalLogin($web_user);
 
@@ -36,8 +36,8 @@ protected function setUp() {
     $settings = get_object_vars($node);
     $settings['revision'] = 1;
 
-    $nodes = array();
-    $logs = array();
+    $nodes = [];
+    $logs = [];
 
     // Get the original node.
     $nodes[] = clone $node;
@@ -67,10 +67,10 @@ protected function setUp() {
   protected function createNodeRevision(NodeInterface $node) {
     // Create revision with a random title and body and update variables.
     $node->title = $this->randomMachineName();
-    $node->body = array(
+    $node->body = [
       'value' => $this->randomMachineName(32),
       'format' => filter_default_format(),
-    );
+    ];
     $node->setNewRevision();
     $node->save();
 
@@ -90,13 +90,13 @@ function testRevisions() {
 
     // Create and log in user.
     $content_admin = $this->drupalCreateUser(
-      array(
+      [
         'view all revisions',
         'revert all revisions',
         'delete all revisions',
         'edit any page content',
         'delete any page content'
-      )
+      ]
     );
     $this->drupalLogin($content_admin);
 
@@ -115,15 +115,15 @@ function testRevisions() {
     $this->assertTrue($node->isDefaultRevision(), 'Third node revision is the current one.');
 
     // Confirm that revisions revert properly.
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/revert", array(), t('Revert'));
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/revert", [], t('Revert'));
     $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.',
-      array(
+      [
         '@type' => 'Basic page',
         '%title' => $nodes[1]->getTitle(),
         '%revision-date' => format_date($nodes[1]->getRevisionCreationTime())
-      )),
+      ]),
       'Revision reverted.');
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $reverted_node = $node_storage->load($node->id());
     $this->assertTrue(($nodes[1]->body->value == $reverted_node->body->value), 'Node reverted correctly.');
 
@@ -132,16 +132,16 @@ function testRevisions() {
     $this->assertFalse($node->isDefaultRevision(), 'Third node revision is not the current one.');
 
     // Confirm revisions delete properly.
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/delete", array(), t('Delete'));
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[1]->getRevisionId() . "/delete", [], t('Delete'));
     $this->assertRaw(t('Revision from %revision-date of @type %title has been deleted.',
-      array(
+      [
         '%revision-date' => format_date($nodes[1]->getRevisionCreationTime()),
         '@type' => 'Basic page',
         '%title' => $nodes[1]->getTitle(),
-      )),
+      ]),
       'Revision deleted.');
     $this->assertTrue(db_query('SELECT COUNT(vid) FROM {node_revision} WHERE nid = :nid and vid = :vid',
-      array(':nid' => $node->id(), ':vid' => $nodes[1]->getRevisionId()))->fetchField() == 0,
+      [':nid' => $node->id(), ':vid' => $nodes[1]->getRevisionId()])->fetchField() == 0,
       'Revision not found.');
 
     // Set the revision timestamp to an older date to make sure that the
@@ -149,16 +149,16 @@ function testRevisions() {
     $old_revision_date = REQUEST_TIME - 86400;
     db_update('node_revision')
       ->condition('vid', $nodes[2]->getRevisionId())
-      ->fields(array(
+      ->fields([
         'revision_timestamp' => $old_revision_date,
-      ))
+      ])
       ->execute();
-    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[2]->getRevisionId() . "/revert", array(), t('Revert'));
-    $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.', array(
+    $this->drupalPostForm("node/" . $node->id() . "/revisions/" . $nodes[2]->getRevisionId() . "/revert", [], t('Revert'));
+    $this->assertRaw(t('@type %title has been reverted to the revision from %revision-date.', [
       '@type' => 'Basic page',
       '%title' => $nodes[2]->getTitle(),
       '%revision-date' => format_date($old_revision_date),
-    )));
+    ]));
 
     // Create 50 more revisions in order to trigger paging on the revisions
     // overview screen.
diff --git a/core/modules/node/tests/src/Functional/NodeRevisionsUiBypassAccessTest.php b/core/modules/node/tests/src/Functional/NodeRevisionsUiBypassAccessTest.php
index f2c750c..d1cbfb8 100644
--- a/core/modules/node/tests/src/Functional/NodeRevisionsUiBypassAccessTest.php
+++ b/core/modules/node/tests/src/Functional/NodeRevisionsUiBypassAccessTest.php
@@ -66,7 +66,7 @@ function testDisplayRevisionTab() {
     $this->assertFieldChecked('edit-revision', "'Create new revision' checkbox is checked");
 
     // Uncheck the create new revision checkbox and save the node.
-    $edit = array('revision' => FALSE);
+    $edit = ['revision' => FALSE];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, 'Save and keep published');
 
     $this->assertUrl($node->toUrl());
@@ -77,7 +77,7 @@ function testDisplayRevisionTab() {
     $this->assertFieldChecked('edit-revision', "'Create new revision' checkbox is checked");
 
     // Submit the form without changing the checkbox.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, 'Save and keep published');
 
     $this->assertUrl($node->toUrl());
diff --git a/core/modules/node/tests/src/Functional/NodeRevisionsUiTest.php b/core/modules/node/tests/src/Functional/NodeRevisionsUiTest.php
index 673a836..443f75f 100644
--- a/core/modules/node/tests/src/Functional/NodeRevisionsUiTest.php
+++ b/core/modules/node/tests/src/Functional/NodeRevisionsUiTest.php
@@ -54,11 +54,11 @@ function testNodeFormSaveWithoutRevision() {
     $this->assertFieldChecked('edit-revision', "'Create new revision' checkbox is checked");
 
     // Uncheck the create new revision checkbox and save the node.
-    $edit = array('revision' => FALSE);
+    $edit = ['revision' => FALSE];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
 
     // Load the node again and check the revision is the same as before.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node_revision = $node_storage->load($node->id(), TRUE);
     $this->assertEqual($node_revision->getRevisionId(), $node->getRevisionId(), "After an existing node is saved with 'Create new revision' unchecked, a new revision is not created.");
 
@@ -67,11 +67,11 @@ function testNodeFormSaveWithoutRevision() {
     $this->assertFieldChecked('edit-revision', "'Create new revision' checkbox is checked");
 
     // Submit the form without changing the checkbox.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
 
     // Load the node again and check the revision is different from before.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node_revision = $node_storage->load($node->id());
     $this->assertNotEqual($node_revision->getRevisionId(), $node->getRevisionId(), "After an existing node is saved with 'Create new revision' checked, a new revision is created.");
   }
diff --git a/core/modules/node/tests/src/Functional/NodeSaveTest.php b/core/modules/node/tests/src/Functional/NodeSaveTest.php
index 2d35ac0..9f57a5e 100644
--- a/core/modules/node/tests/src/Functional/NodeSaveTest.php
+++ b/core/modules/node/tests/src/Functional/NodeSaveTest.php
@@ -23,13 +23,13 @@ class NodeSaveTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node_test');
+  public static $modules = ['node_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a user that is allowed to post; we'll use this to test the submission.
-    $web_user = $this->drupalCreateUser(array('create article content'));
+    $web_user = $this->drupalCreateUser(['create article content']);
     $this->drupalLogin($web_user);
     $this->webUser = $web_user;
   }
@@ -51,13 +51,13 @@ function testImport() {
     $max_nid = reset($nids);
     $test_nid = $max_nid + mt_rand(1000, 1000000);
     $title = $this->randomMachineName(8);
-    $node = array(
+    $node = [
       'title' => $title,
-      'body' => array(array('value' => $this->randomMachineName(32))),
+      'body' => [['value' => $this->randomMachineName(32)]],
       'uid' => $this->webUser->id(),
       'type' => 'article',
       'nid' => $test_nid,
-    );
+    ];
     /** @var \Drupal\node\NodeInterface $node */
     $node = Node::create($node);
     $node->enforceIsNew();
@@ -78,11 +78,11 @@ function testImport() {
    */
   function testTimestamps() {
     // Use the default timestamps.
-    $edit = array(
+    $edit = [
       'uid' => $this->webUser->id(),
       'type' => 'article',
       'title' => $this->randomMachineName(8),
-    );
+    ];
 
     Node::create($edit)->save();
     $node = $this->drupalGetNodeByTitle($edit['title']);
@@ -105,13 +105,13 @@ function testTimestamps() {
     $this->assertEqual($node->getChangedTime(), 979534800, 'Saving a node uses "changed" timestamp set in presave hook.');
 
     // Programmatically set the timestamps on the node.
-    $edit = array(
+    $edit = [
       'uid' => $this->webUser->id(),
       'type' => 'article',
       'title' => $this->randomMachineName(8),
       'created' => 280299600, // Sun, 19 Nov 1978 05:00:00 GMT
       'changed' => 979534800, // Drupal 1.0 release.
-    );
+    ];
 
     Node::create($edit)->save();
     $node = $this->drupalGetNodeByTitle($edit['title']);
@@ -175,7 +175,7 @@ function testDeterminingChanges() {
   function testNodeSaveOnInsert() {
     // node_test_node_insert() triggers a save on insert if the title equals
     // 'new'.
-    $node = $this->drupalCreateNode(array('title' => 'new'));
+    $node = $this->drupalCreateNode(['title' => 'new']);
     $this->assertEqual($node->getTitle(), 'Node ' . $node->id(), 'Node saved on node insert.');
   }
 
diff --git a/core/modules/node/tests/src/Functional/NodeTemplateSuggestionsTest.php b/core/modules/node/tests/src/Functional/NodeTemplateSuggestionsTest.php
index 16dee43..7b99338 100644
--- a/core/modules/node/tests/src/Functional/NodeTemplateSuggestionsTest.php
+++ b/core/modules/node/tests/src/Functional/NodeTemplateSuggestionsTest.php
@@ -21,18 +21,18 @@ function testNodeThemeHookSuggestions() {
     $build = \Drupal::entityManager()->getViewBuilder('node')->view($node, $view_mode);
 
     $variables['elements'] = $build;
-    $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', array($variables));
+    $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', [$variables]);
 
-    $this->assertEqual($suggestions, array('node__full', 'node__page', 'node__page__full', 'node__' . $node->id(), 'node__' . $node->id() . '__full'), 'Found expected node suggestions.');
+    $this->assertEqual($suggestions, ['node__full', 'node__page', 'node__page__full', 'node__' . $node->id(), 'node__' . $node->id() . '__full'], 'Found expected node suggestions.');
 
     // Change the view mode.
     $view_mode = 'node.my_custom_view_mode';
     $build = \Drupal::entityManager()->getViewBuilder('node')->view($node, $view_mode);
 
     $variables['elements'] = $build;
-    $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', array($variables));
+    $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', [$variables]);
 
-    $this->assertEqual($suggestions, array('node__node_my_custom_view_mode', 'node__page', 'node__page__node_my_custom_view_mode', 'node__' . $node->id(), 'node__' . $node->id() . '__node_my_custom_view_mode'), 'Found expected node suggestions.');
+    $this->assertEqual($suggestions, ['node__node_my_custom_view_mode', 'node__page', 'node__page__node_my_custom_view_mode', 'node__' . $node->id(), 'node__' . $node->id() . '__node_my_custom_view_mode'], 'Found expected node suggestions.');
   }
 
 }
diff --git a/core/modules/node/tests/src/Functional/NodeTestBase.php b/core/modules/node/tests/src/Functional/NodeTestBase.php
index c3b269e..2341b9e 100644
--- a/core/modules/node/tests/src/Functional/NodeTestBase.php
+++ b/core/modules/node/tests/src/Functional/NodeTestBase.php
@@ -16,7 +16,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'datetime');
+  public static $modules = ['node', 'datetime'];
 
   /**
    * The node access control handler.
@@ -33,12 +33,12 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array(
+      $this->drupalCreateContentType([
         'type' => 'page',
         'name' => 'Basic page',
         'display_submitted' => FALSE,
-      ));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      ]);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
     $this->accessHandler = \Drupal::entityManager()->getAccessControlHandler('node');
   }
@@ -76,9 +76,9 @@ function assertNodeAccess(array $ops, NodeInterface $node, AccountInterface $acc
    *   to check. If NULL, the untranslated (fallback) access is checked.
    */
   function assertNodeCreateAccess($bundle, $result, AccountInterface $account, $langcode = NULL) {
-    $this->assertEqual($result, $this->accessHandler->createAccess($bundle, $account, array(
+    $this->assertEqual($result, $this->accessHandler->createAccess($bundle, $account, [
       'langcode' => $langcode,
-    )), $this->nodeAccessAssertMessage('create', $result, $langcode));
+    ]), $this->nodeAccessAssertMessage('create', $result, $langcode));
   }
 
   /**
@@ -99,11 +99,11 @@ function assertNodeCreateAccess($bundle, $result, AccountInterface $account, $la
   function nodeAccessAssertMessage($operation, $result, $langcode = NULL) {
     return format_string(
       'Node access returns @result with operation %op, language code %langcode.',
-      array(
+      [
         '@result' => $result ? 'true' : 'false',
         '%op' => $operation,
         '%langcode' => !empty($langcode) ? $langcode : 'empty'
-      )
+      ]
     );
   }
 
diff --git a/core/modules/node/tests/src/Functional/NodeTypeInitialLanguageTest.php b/core/modules/node/tests/src/Functional/NodeTypeInitialLanguageTest.php
index c1ef6ae..3295e2b 100644
--- a/core/modules/node/tests/src/Functional/NodeTypeInitialLanguageTest.php
+++ b/core/modules/node/tests/src/Functional/NodeTypeInitialLanguageTest.php
@@ -16,12 +16,12 @@ class NodeTypeInitialLanguageTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'field_ui');
+  public static $modules = ['language', 'field_ui'];
 
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('bypass node access', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer languages'));
+    $web_user = $this->drupalCreateUser(['bypass node access', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer languages']);
     $this->drupalLogin($web_user);
   }
 
@@ -45,20 +45,20 @@ function testNodeTypeInitialLanguageDefaults() {
     $this->assertNoField('langcode', 'Language is not selectable on node add/edit page by default.');
 
     // Adds a new language and set it as default.
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'hu',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
-    $edit = array(
+    $edit = [
       'site_default_language' => 'hu',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language', $edit, t('Save configuration'));
 
     // Tests the initial language after changing the site default language.
     // First unhide the language selector.
-    $edit = array(
+    $edit = [
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
     $this->drupalGet('node/add/article');
     $this->assertField('langcode[0][value]', 'Language is selectable on node add/edit page when language not hidden.');
@@ -78,9 +78,9 @@ function testNodeTypeInitialLanguageDefaults() {
     $this->assertOptionSelected('edit-fields-langcode-region', 'hidden', 'Language is hidden by default on manage display tab.');
 
     // Changes the initial language settings.
-    $edit = array(
+    $edit = [
       'language_configuration[langcode]' => 'en',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article', $edit, t('Save content type'));
     $this->drupalGet('node/add/article');
     $this->assertOptionSelected('edit-langcode-0-value', 'en', 'The initial language is the defined language.');
@@ -91,35 +91,35 @@ function testNodeTypeInitialLanguageDefaults() {
    */
   function testLanguageFieldVisibility() {
     // Creates a node to test Language field visibility feature.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(8),
       'body[0][value]' => $this->randomMachineName(16),
-    );
+    ];
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
     $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
     $this->assertTrue($node, 'Node found in database.');
 
     // Loads node page and check if Language field is hidden by default.
     $this->drupalGet('node/' . $node->id());
-    $language_field = $this->xpath('//div[@id=:id]/div', array(
+    $language_field = $this->xpath('//div[@id=:id]/div', [
       ':id' => 'field-language-display',
-    ));
+    ]);
     $this->assertTrue(empty($language_field), 'Language field value is not shown by default on node page.');
 
     // Configures Language field formatter and check if it is saved.
-    $edit = array(
+    $edit = [
       'fields[langcode][type]' => 'language',
       'fields[langcode][region]' => 'content',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/article/display', $edit, t('Save'));
     $this->drupalGet('admin/structure/types/manage/article/display');
     $this->assertOptionSelected('edit-fields-langcode-type', 'language', 'Language field has been set to visible.');
 
     // Loads node page and check if Language field is shown.
     $this->drupalGet('node/' . $node->id());
-    $language_field = $this->xpath('//div[@id=:id]/div', array(
+    $language_field = $this->xpath('//div[@id=:id]/div', [
       ':id' => 'field-language-display',
-    ));
+    ]);
     $this->assertFalse(empty($language_field), 'Language field value is shown on node page.');
   }
 
diff --git a/core/modules/node/tests/src/Functional/NodeTypeTranslationTest.php b/core/modules/node/tests/src/Functional/NodeTypeTranslationTest.php
index 067deca..07e61a0 100644
--- a/core/modules/node/tests/src/Functional/NodeTypeTranslationTest.php
+++ b/core/modules/node/tests/src/Functional/NodeTypeTranslationTest.php
@@ -22,12 +22,12 @@ class NodeTypeTranslationTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'block',
     'config_translation',
     'field_ui',
     'node',
-  );
+  ];
 
   /**
    * The default language code to use in this test.
@@ -53,14 +53,14 @@ class NodeTypeTranslationTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $admin_permissions = array(
+    $admin_permissions = [
       'administer content types',
       'administer node fields',
       'administer languages',
       'administer site configuration',
       'administer themes',
       'translate configuration',
-    );
+    ];
 
     // Create and log in user.
     $this->adminUser = $this->drupalCreateUser($admin_permissions);
@@ -93,31 +93,31 @@ public function testNodeTypeTranslation() {
     $type = Unicode::strtolower($this->randomMachineName(16));
     $name = $this->randomString();
     $this->drupalLogin($this->adminUser);
-    $this->drupalCreateContentType(array('type' => $type, 'name' => $name));
+    $this->drupalCreateContentType(['type' => $type, 'name' => $name]);
 
     // Translate the node type name.
     $langcode = $this->additionalLangcodes[0];
     $translated_name = $langcode . '-' . $name;
-    $edit = array(
+    $edit = [
       "translation[config_names][node.type.$type][name]" => $translated_name,
-    );
+    ];
 
     // Edit the title label to avoid having an exception when we save the translation.
     $this->drupalPostForm("admin/structure/types/manage/$type/translate/$langcode/add", $edit, t('Save translation'));
 
     // Check the name is translated without admin theme for editing.
-    $this->drupalPostForm('admin/appearance', array('use_admin_theme' => '0'), t('Save configuration'));
+    $this->drupalPostForm('admin/appearance', ['use_admin_theme' => '0'], t('Save configuration'));
     $this->drupalGet("$langcode/node/add/$type");
     // This is a Spanish page, so ensure the text asserted is translated in
     // Spanish and not French by adding the langcode option.
-    $this->assertRaw(t('Create @name', array('@name' => $translated_name), array('langcode' => $langcode)));
+    $this->assertRaw(t('Create @name', ['@name' => $translated_name], ['langcode' => $langcode]));
 
     // Check the name is translated with admin theme for editing.
-    $this->drupalPostForm('admin/appearance', array('use_admin_theme' => '1'), t('Save configuration'));
+    $this->drupalPostForm('admin/appearance', ['use_admin_theme' => '1'], t('Save configuration'));
     $this->drupalGet("$langcode/node/add/$type");
     // This is a Spanish page, so ensure the text asserted is translated in
     // Spanish and not French by adding the langcode option.
-    $this->assertRaw(t('Create @name', array('@name' => $translated_name), array('langcode' => $langcode)));
+    $this->assertRaw(t('Create @name', ['@name' => $translated_name], ['langcode' => $langcode]));
   }
 
   /**
@@ -127,18 +127,18 @@ public function testNodeTypeTitleLabelTranslation() {
     $type = Unicode::strtolower($this->randomMachineName(16));
     $name = $this->randomString();
     $this->drupalLogin($this->adminUser);
-    $this->drupalCreateContentType(array('type' => $type, 'name' => $name));
+    $this->drupalCreateContentType(['type' => $type, 'name' => $name]);
     $langcode = $this->additionalLangcodes[0];
 
     // Edit the title label for it to be displayed on the translation form.
-    $this->drupalPostForm("admin/structure/types/manage/$type", array('title_label' => 'Edited title'), t('Save content type'));
+    $this->drupalPostForm("admin/structure/types/manage/$type", ['title_label' => 'Edited title'], t('Save content type'));
 
     // Assert that the title label is displayed on the translation form with the right value.
     $this->drupalGet("admin/structure/types/manage/$type/translate/$langcode/add");
     $this->assertText('Edited title');
 
     // Translate the title label.
-    $this->drupalPostForm(NULL, array("translation[config_names][core.base_field_override.node.$type.title][label]" => 'Translated title'), t('Save translation'));
+    $this->drupalPostForm(NULL, ["translation[config_names][core.base_field_override.node.$type.title][label]" => 'Translated title'], t('Save translation'));
 
     // Assert that the right title label is displayed on the node add form. The
     // translations are created in this test; therefore, the assertions do not
@@ -150,23 +150,23 @@ public function testNodeTypeTitleLabelTranslation() {
     $this->assertText('Translated title');
 
     // Add an e-mail field.
-    $this->drupalPostForm("admin/structure/types/manage/$type/fields/add-field", array('new_storage_type' => 'email', 'label' => 'Email', 'field_name' => 'email'), 'Save and continue');
-    $this->drupalPostForm(NULL, array(), 'Save field settings');
-    $this->drupalPostForm(NULL, array(), 'Save settings');
+    $this->drupalPostForm("admin/structure/types/manage/$type/fields/add-field", ['new_storage_type' => 'email', 'label' => 'Email', 'field_name' => 'email'], 'Save and continue');
+    $this->drupalPostForm(NULL, [], 'Save field settings');
+    $this->drupalPostForm(NULL, [], 'Save settings');
 
     $type = Unicode::strtolower($this->randomMachineName(16));
     $name = $this->randomString();
-    $this->drupalCreateContentType(array('type' => $type, 'name' => $name));
+    $this->drupalCreateContentType(['type' => $type, 'name' => $name]);
 
     // Set tabs.
-    $this->drupalPlaceBlock('local_tasks_block', array('primary' => TRUE));
+    $this->drupalPlaceBlock('local_tasks_block', ['primary' => TRUE]);
 
     // Change default language.
-    $this->drupalPostForm('admin/config/regional/language', array('site_default_language' => 'es'), 'Save configuration');
+    $this->drupalPostForm('admin/config/regional/language', ['site_default_language' => 'es'], 'Save configuration');
 
     // Try re-using the email field.
     $this->drupalGet("es/admin/structure/types/manage/$type/fields/add-field");
-    $this->drupalPostForm(NULL, array('existing_storage_name' => 'field_email', 'existing_storage_label' => 'Email'), 'Save and continue');
+    $this->drupalPostForm(NULL, ['existing_storage_name' => 'field_email', 'existing_storage_label' => 'Email'], 'Save and continue');
     $this->assertResponse(200);
     $this->drupalGet("es/admin/structure/types/manage/$type/fields/node.$type.field_email/translate");
     $this->assertResponse(200);
diff --git a/core/modules/node/tests/src/Functional/NodeViewLanguageTest.php b/core/modules/node/tests/src/Functional/NodeViewLanguageTest.php
index 518d5fb..4730427 100644
--- a/core/modules/node/tests/src/Functional/NodeViewLanguageTest.php
+++ b/core/modules/node/tests/src/Functional/NodeViewLanguageTest.php
@@ -16,7 +16,7 @@ class NodeViewLanguageTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'datetime', 'language');
+  public static $modules = ['node', 'datetime', 'language'];
 
   /**
    * Tests the language extra field display.
@@ -31,7 +31,7 @@ public function testViewLanguage() {
       ->save();
 
     // Create a node in Spanish.
-    $node = $this->drupalCreateNode(array('langcode' => 'es'));
+    $node = $this->drupalCreateNode(['langcode' => 'es']);
 
     $this->drupalGet($node->urlInfo());
     $this->assertText('Spanish', 'The language field is displayed properly.');
diff --git a/core/modules/node/tests/src/Functional/PageViewTest.php b/core/modules/node/tests/src/Functional/PageViewTest.php
index ec6daba..1c6231f 100644
--- a/core/modules/node/tests/src/Functional/PageViewTest.php
+++ b/core/modules/node/tests/src/Functional/PageViewTest.php
@@ -23,7 +23,7 @@ function testPageView() {
     $this->assertResponse(403);
 
     // Create a user without permission to edit node.
-    $web_user = $this->drupalCreateUser(array('access content'));
+    $web_user = $this->drupalCreateUser(['access content']);
     $this->drupalLogin($web_user);
 
     // Attempt to access edit page.
@@ -31,7 +31,7 @@ function testPageView() {
     $this->assertResponse(403);
 
     // Create user with permission to edit node.
-    $web_user = $this->drupalCreateUser(array('bypass node access'));
+    $web_user = $this->drupalCreateUser(['bypass node access']);
     $this->drupalLogin($web_user);
 
     // Attempt to access edit page.
diff --git a/core/modules/node/tests/src/Kernel/Config/NodeImportChangeTest.php b/core/modules/node/tests/src/Kernel/Config/NodeImportChangeTest.php
index edb9ae0..e1b17f2 100644
--- a/core/modules/node/tests/src/Kernel/Config/NodeImportChangeTest.php
+++ b/core/modules/node/tests/src/Kernel/Config/NodeImportChangeTest.php
@@ -26,7 +26,7 @@ protected function setUp() {
     parent::setUp();
 
     // Set default storage backend.
-    $this->installConfig(array('field', 'node_test_config'));
+    $this->installConfig(['field', 'node_test_config']);
   }
 
   /**
diff --git a/core/modules/node/tests/src/Kernel/Config/NodeImportCreateTest.php b/core/modules/node/tests/src/Kernel/Config/NodeImportCreateTest.php
index f4fd1e1..cb98517 100644
--- a/core/modules/node/tests/src/Kernel/Config/NodeImportCreateTest.php
+++ b/core/modules/node/tests/src/Kernel/Config/NodeImportCreateTest.php
@@ -18,7 +18,7 @@ class NodeImportCreateTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field', 'text', 'system', 'user');
+  public static $modules = ['node', 'field', 'text', 'system', 'user'];
 
   /**
    * Set the default field storage backend for fields created during tests.
@@ -28,7 +28,7 @@ protected function setUp() {
     $this->installEntitySchema('user');
 
     // Set default storage backend.
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
   }
 
   /**
@@ -42,7 +42,7 @@ public function testImportCreateDefault() {
 
     // Enable node_test_config module and check that the content type
     // shipped in the module's default config is created.
-    $this->container->get('module_installer')->install(array('node_test_config'));
+    $this->container->get('module_installer')->install(['node_test_config']);
     $node_type = NodeType::load($node_type_id);
     $this->assertTrue($node_type, 'The default content type was created.');
   }
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTest.php b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTest.php
index 15b6d77..1409648 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTest.php
@@ -172,11 +172,11 @@ public function testNode() {
     $this->assertIdentical('full_html', $node->body->format);
 
     // Now insert a row indicating a failure and set to update later.
-    $title = $this->rerunMigration(array(
+    $title = $this->rerunMigration([
       'sourceid1' => 2,
       'destid1' => NULL,
       'source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE,
-    ));
+    ]);
     $node = Node::load(2);
     $this->assertIdentical($title, $node->getTitle());
   }
@@ -194,10 +194,10 @@ protected function rerunMigration($new_row = []) {
     $title = $this->randomString();
     $source_connection = Database::getConnection('default', 'migrate');
     $source_connection->update('node_revisions')
-      ->fields(array(
+      ->fields([
         'title' => $title,
         'format' => 2,
-      ))
+      ])
       ->condition('vid', 3)
       ->execute();
     $migration = $this->getMigration('d6_node:story');
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTypeTest.php b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTypeTest.php
index b984562..c9cb341 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateNodeTypeTest.php
@@ -33,7 +33,7 @@ public function testNodeType() {
     $this->assertIdentical(TRUE, $node_type_page->displaySubmitted());
     $this->assertIdentical(FALSE, $node_type_page->isNewRevision());
     $this->assertIdentical(DRUPAL_OPTIONAL, $node_type_page->getPreviewMode());
-    $this->assertIdentical($id_map->lookupDestinationID(array('test_page')), array('test_page'));
+    $this->assertIdentical($id_map->lookupDestinationID(['test_page']), ['test_page']);
 
     // Test we have a body field.
     $field = FieldConfig::loadByName('node', 'test_page', 'body');
@@ -46,7 +46,7 @@ public function testNodeType() {
     $this->assertIdentical(TRUE, $node_type_story->displaySubmitted());
     $this->assertIdentical(FALSE, $node_type_story->isNewRevision());
     $this->assertIdentical(DRUPAL_OPTIONAL, $node_type_story->getPreviewMode());
-    $this->assertIdentical($id_map->lookupDestinationID(array('test_story')), array('test_story'));
+    $this->assertIdentical($id_map->lookupDestinationID(['test_story']), ['test_story']);
 
     // Test we don't have a body field.
     $field = FieldConfig::loadByName('node', 'test_story', 'body');
@@ -59,7 +59,7 @@ public function testNodeType() {
     $this->assertIdentical(TRUE, $node_type_event->displaySubmitted());
     $this->assertIdentical(TRUE, $node_type_event->isNewRevision());
     $this->assertIdentical(DRUPAL_OPTIONAL, $node_type_event->getPreviewMode());
-    $this->assertIdentical($id_map->lookupDestinationID(array('test_event')), array('test_event'));
+    $this->assertIdentical($id_map->lookupDestinationID(['test_event']), ['test_event']);
 
     // Test we have a body field.
     $field = FieldConfig::loadByName('node', 'test_event', 'body');
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateViewModesTest.php b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateViewModesTest.php
index 5e8eb0a..f475592 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateViewModesTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d6/MigrateViewModesTest.php
@@ -29,7 +29,7 @@ public function testViewModes() {
     $this->assertIdentical(FALSE, is_null($view_mode), 'Preview view mode loaded.');
     $this->assertIdentical('Preview', $view_mode->label(), 'View mode has correct label.');
     // Test the ID map.
-    $this->assertIdentical(array('node', 'preview'), $this->getMigration('d6_view_modes')->getIdMap()->lookupDestinationID(array(1)));
+    $this->assertIdentical(['node', 'preview'], $this->getMigration('d6_view_modes')->getIdMap()->lookupDestinationID([1]));
   }
 
 }
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
index 8a962e7..f7855e8 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTest.php
@@ -16,7 +16,7 @@ class MigrateNodeTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array(
+  public static $modules = [
     'content_translation',
     'comment',
     'datetime',
@@ -28,7 +28,7 @@ class MigrateNodeTest extends MigrateDrupal7TestBase {
     'taxonomy',
     'telephone',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTypeTest.php b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTypeTest.php
index 8b98ec3..549021f 100644
--- a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeTypeTest.php
@@ -20,14 +20,14 @@ class MigrateNodeTypeTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'text', 'filter');
+  public static $modules = ['node', 'text', 'filter'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('node'));
+    $this->installConfig(['node']);
     $this->executeMigration('d7_node_type');
   }
 
diff --git a/core/modules/node/tests/src/Kernel/NodeAccessTest.php b/core/modules/node/tests/src/Kernel/NodeAccessTest.php
index b8e2251..539edcb 100644
--- a/core/modules/node/tests/src/Kernel/NodeAccessTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeAccessTest.php
@@ -73,11 +73,11 @@ protected function setUp() {
     $this->drupalCreateUser();
 
     // Create a node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'page',
       'name' => 'Basic page',
       'display_submitted' => FALSE,
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/node/tests/src/Kernel/NodeBodyFieldStorageTest.php b/core/modules/node/tests/src/Kernel/NodeBodyFieldStorageTest.php
index 6c1faf3..3dd1349 100644
--- a/core/modules/node/tests/src/Kernel/NodeBodyFieldStorageTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeBodyFieldStorageTest.php
@@ -28,7 +28,7 @@ protected function setUp() {
     $this->installSchema('user', 'users_data');
     $this->installEntitySchema('user');
     $this->installEntitySchema('node');
-    $this->installConfig(array('field', 'node'));
+    $this->installConfig(['field', 'node']);
   }
 
   /**
@@ -46,7 +46,7 @@ public function testFieldOverrides() {
     $field->delete();
     $field_storage = FieldStorageConfig::loadByName('node', 'body');
     $this->assertTrue(count($field_storage->getBundles()) == 0, 'Node body field storage exists after deleting the only instance of a field.');
-    \Drupal::service('module_installer')->uninstall(array('node'));
+    \Drupal::service('module_installer')->uninstall(['node']);
     $field_storage = FieldStorageConfig::loadByName('node', 'body');
     $this->assertFalse($field_storage, 'Node body field storage does not exist after uninstalling the Node module.');
   }
diff --git a/core/modules/node/tests/src/Kernel/NodeConditionTest.php b/core/modules/node/tests/src/Kernel/NodeConditionTest.php
index 7636d52..5bf7c73 100644
--- a/core/modules/node/tests/src/Kernel/NodeConditionTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeConditionTest.php
@@ -13,7 +13,7 @@
  */
 class NodeConditionTest extends EntityKernelTestBase {
 
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   protected function setUp() {
     parent::setUp();
@@ -45,20 +45,20 @@ function testConditions() {
     // Grab the node type condition and configure it to check against node type
     // of 'article' and set the context to the page type node.
     $condition = $manager->createInstance('node_type')
-      ->setConfig('bundles', array('article' => 'article'))
+      ->setConfig('bundles', ['article' => 'article'])
       ->setContextValue('node', $page);
     $this->assertFalse($condition->execute(), 'Page type nodes fail node type checks for articles.');
     // Check for the proper summary.
     $this->assertEqual('The node bundle is article', $condition->summary());
 
     // Set the node type check to page.
-    $condition->setConfig('bundles', array('page' => 'page'));
+    $condition->setConfig('bundles', ['page' => 'page']);
     $this->assertTrue($condition->execute(), 'Page type nodes pass node type checks for pages');
     // Check for the proper summary.
     $this->assertEqual('The node bundle is page', $condition->summary());
 
     // Set the node type check to page or article.
-    $condition->setConfig('bundles', array('page' => 'page', 'article' => 'article'));
+    $condition->setConfig('bundles', ['page' => 'page', 'article' => 'article']);
     $this->assertTrue($condition->execute(), 'Page type nodes pass node type checks for pages or articles');
     // Check for the proper summary.
     $this->assertEqual('The node bundle is page or article', $condition->summary());
@@ -72,11 +72,11 @@ function testConditions() {
     $this->assertFalse($condition->execute(), 'Test type nodes pass node type checks for pages or articles');
 
     // Check a greater than 2 bundles summary scenario.
-    $condition->setConfig('bundles', array('page' => 'page', 'article' => 'article', 'test' => 'test'));
+    $condition->setConfig('bundles', ['page' => 'page', 'article' => 'article', 'test' => 'test']);
     $this->assertEqual('The node bundle is page, article or test', $condition->summary());
 
     // Test Constructor injection.
-    $condition = $manager->createInstance('node_type', array('bundles' => array('article' => 'article'), 'context' => array('node' => $article)));
+    $condition = $manager->createInstance('node_type', ['bundles' => ['article' => 'article'], 'context' => ['node' => $article]]);
     $this->assertTrue($condition->execute(), 'Constructor injection of context and configuration working as anticipated.');
   }
 
diff --git a/core/modules/node/tests/src/Kernel/NodeFieldAccessTest.php b/core/modules/node/tests/src/Kernel/NodeFieldAccessTest.php
index f88e45e..f57768e 100644
--- a/core/modules/node/tests/src/Kernel/NodeFieldAccessTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeFieldAccessTest.php
@@ -19,27 +19,27 @@ class NodeFieldAccessTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Fields that only users with administer nodes permissions can change.
    *
    * @var array
    */
-  protected $administrativeFields = array(
+  protected $administrativeFields = [
     'status',
     'promote',
     'sticky',
     'created',
     'uid',
-  );
+  ];
 
   /**
    * These fields are automatically managed and can not be changed by any user.
    *
    * @var array
    */
-  protected $readOnlyFields = array('changed', 'revision_uid', 'revision_timestamp');
+  protected $readOnlyFields = ['changed', 'revision_uid', 'revision_timestamp'];
 
   /**
    * Test permissions on nodes status field.
@@ -62,74 +62,74 @@ function testAccessToAdministrativeFields() {
 
     // An administrator user. No user exists yet, ensure that the first user
     // does not have UID 1.
-    $content_admin_user = $this->createUser(array('uid' => 2), array('administer nodes'));
+    $content_admin_user = $this->createUser(['uid' => 2], ['administer nodes']);
 
     // Two different editor users.
-    $page_creator_user = $this->createUser(array(), array('create page content', 'edit own page content', 'delete own page content'));
-    $page_manager_user = $this->createUser(array(), array('create page content', 'edit any page content', 'delete any page content'));
+    $page_creator_user = $this->createUser([], ['create page content', 'edit own page content', 'delete own page content']);
+    $page_manager_user = $this->createUser([], ['create page content', 'edit any page content', 'delete any page content']);
 
     // An unprivileged user.
-    $page_unrelated_user = $this->createUser(array(), array('access content'));
+    $page_unrelated_user = $this->createUser([], ['access content']);
 
     // List of all users
-    $test_users = array(
+    $test_users = [
       $content_admin_user,
       $page_creator_user,
       $page_manager_user,
       $page_unrelated_user,
-    );
+    ];
 
     // Create three "Basic pages". One is owned by our test-user
     // "page_creator", one by "page_manager", and one by someone else.
-    $node1 = Node::create(array(
+    $node1 = Node::create([
       'title' => $this->randomMachineName(8),
       'uid' => $page_creator_user->id(),
       'type' => 'page',
-    ));
-    $node2 = Node::create(array(
+    ]);
+    $node2 = Node::create([
       'title' => $this->randomMachineName(8),
       'uid' => $page_manager_user->id(),
       'type' => 'article',
-    ));
-    $node3 = Node::create(array(
+    ]);
+    $node3 = Node::create([
       'title' => $this->randomMachineName(8),
       'type' => 'page',
-    ));
+    ]);
 
     foreach ($this->administrativeFields as $field) {
 
       // Checks on view operations.
       foreach ($test_users as $account) {
         $may_view = $node1->{$field}->access('view', $account);
-        $this->assertTrue($may_view, SafeMarkup::format('Any user may view the field @name.', array('@name' => $field)));
+        $this->assertTrue($may_view, SafeMarkup::format('Any user may view the field @name.', ['@name' => $field]));
       }
 
       // Checks on edit operations.
       $may_update = $node1->{$field}->access('edit', $page_creator_user);
-      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit own page content" is not allowed to the field @name.', array('@name' => $field)));
+      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit own page content" is not allowed to the field @name.', ['@name' => $field]));
       $may_update = $node2->{$field}->access('edit', $page_creator_user);
-      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit own page content" is not allowed to the field @name.', array('@name' => $field)));
+      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit own page content" is not allowed to the field @name.', ['@name' => $field]));
       $may_update = $node2->{$field}->access('edit', $page_manager_user);
-      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit any page content" is not allowed to the field @name.', array('@name' => $field)));
+      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit any page content" is not allowed to the field @name.', ['@name' => $field]));
       $may_update = $node1->{$field}->access('edit', $page_manager_user);
-      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit any page content" is not allowed to the field @name.', array('@name' => $field)));
+      $this->assertFalse($may_update, SafeMarkup::format('Users with permission "edit any page content" is not allowed to the field @name.', ['@name' => $field]));
       $may_update = $node2->{$field}->access('edit', $page_unrelated_user);
-      $this->assertFalse($may_update, SafeMarkup::format('Users not having permission "edit any page content" is not allowed to the field @name.', array('@name' => $field)));
+      $this->assertFalse($may_update, SafeMarkup::format('Users not having permission "edit any page content" is not allowed to the field @name.', ['@name' => $field]));
       $may_update = $node1->{$field}->access('edit', $content_admin_user) && $node3->status->access('edit', $content_admin_user);
-      $this->assertTrue($may_update, SafeMarkup::format('Users with permission "administer nodes" may edit @name fields on all nodes.', array('@name' => $field)));
+      $this->assertTrue($may_update, SafeMarkup::format('Users with permission "administer nodes" may edit @name fields on all nodes.', ['@name' => $field]));
     }
 
     foreach ($this->readOnlyFields as $field) {
       // Check view operation.
       foreach ($test_users as $account) {
         $may_view = $node1->{$field}->access('view', $account);
-        $this->assertTrue($may_view, SafeMarkup::format('Any user may view the field @name.', array('@name' => $field)));
+        $this->assertTrue($may_view, SafeMarkup::format('Any user may view the field @name.', ['@name' => $field]));
       }
 
       // Check edit operation.
       foreach ($test_users as $account) {
         $may_view = $node1->{$field}->access('edit', $account);
-        $this->assertFalse($may_view, SafeMarkup::format('No user is not allowed to edit the field @name.', array('@name' => $field)));
+        $this->assertFalse($may_view, SafeMarkup::format('No user is not allowed to edit the field @name.', ['@name' => $field]));
       }
     }
 
diff --git a/core/modules/node/tests/src/Kernel/NodeFieldOverridesTest.php b/core/modules/node/tests/src/Kernel/NodeFieldOverridesTest.php
index aee0272..7c7bc03 100644
--- a/core/modules/node/tests/src/Kernel/NodeFieldOverridesTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeFieldOverridesTest.php
@@ -27,14 +27,14 @@ class NodeFieldOverridesTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'system', 'field', 'node');
+  public static $modules = ['user', 'system', 'field', 'node'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
     $this->user = $this->createUser();
     \Drupal::service('current_user')->setAccount($this->user);
   }
diff --git a/core/modules/node/tests/src/Kernel/NodeOwnerTest.php b/core/modules/node/tests/src/Kernel/NodeOwnerTest.php
index d21d5ad..c12f311 100644
--- a/core/modules/node/tests/src/Kernel/NodeOwnerTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeOwnerTest.php
@@ -19,16 +19,16 @@ class NodeOwnerTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'language');
+  public static $modules = ['node', 'language'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create the node bundles required for testing.
-    $type = NodeType::create(array(
+    $type = NodeType::create([
       'type' => 'page',
       'name' => 'page',
-    ));
+    ]);
     $type->save();
 
     // Enable two additional languages.
@@ -48,11 +48,11 @@ public function testOwner() {
     $container->get('current_user')->setAccount($user);
 
     // Create a test node.
-    $english = Node::create(array(
+    $english = Node::create([
       'type' => 'page',
       'title' => $this->randomMachineName(),
       'language' => 'en',
-    ));
+    ]);
     $english->save();
 
     $this->assertEqual($user->id(), $english->getOwnerId());
diff --git a/core/modules/node/tests/src/Kernel/NodeTokenReplaceTest.php b/core/modules/node/tests/src/Kernel/NodeTokenReplaceTest.php
index c496c83..829bf4d 100644
--- a/core/modules/node/tests/src/Kernel/NodeTokenReplaceTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeTokenReplaceTest.php
@@ -22,14 +22,14 @@ class NodeTokenReplaceTest extends TokenReplaceKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'filter');
+  public static $modules = ['node', 'filter'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('filter', 'node'));
+    $this->installConfig(['filter', 'node']);
 
     $node_type = NodeType::create(['type' => 'article', 'name' => 'Article']);
     $node_type->save();
@@ -40,10 +40,10 @@ protected function setUp() {
    * Creates a node, then tests the tokens generated from it.
    */
   function testNodeTokenReplacement() {
-    $url_options = array(
+    $url_options = [
       'absolute' => TRUE,
       'language' => $this->interfaceLanguage,
-    );
+    ];
 
     // Create a user and a node.
     $account = $this->createUser();
@@ -58,7 +58,7 @@ function testNodeTokenReplacement() {
     $node->save();
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $tests['[node:nid]'] = $node->id();
     $tests['[node:vid]'] = $node->getRevisionId();
     $tests['[node:type]'] = 'article';
@@ -72,8 +72,8 @@ function testNodeTokenReplacement() {
     $tests['[node:author]'] = $account->getUsername();
     $tests['[node:author:uid]'] = $node->getOwnerId();
     $tests['[node:author:name]'] = $account->getUsername();
-    $tests['[node:created:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($node->getCreatedTime(), array('langcode' => $this->interfaceLanguage->getId()));
-    $tests['[node:changed:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($node->getChangedTime(), array('langcode' => $this->interfaceLanguage->getId()));
+    $tests['[node:created:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($node->getCreatedTime(), ['langcode' => $this->interfaceLanguage->getId()]);
+    $tests['[node:changed:since]'] = \Drupal::service('date.formatter')->formatTimeDiffSince($node->getChangedTime(), ['langcode' => $this->interfaceLanguage->getId()]);
 
     $base_bubbleable_metadata = BubbleableMetadata::createFromObject($node);
 
@@ -101,7 +101,7 @@ function testNodeTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $this->tokenService->replace($input, array('node' => $node), array('langcode' => $this->interfaceLanguage->getId()), $bubbleable_metadata);
+      $output = $this->tokenService->replace($input, ['node' => $node], ['langcode' => $this->interfaceLanguage->getId()], $bubbleable_metadata);
       $this->assertEqual($output, $expected, format_string('Node token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
@@ -116,14 +116,14 @@ function testNodeTokenReplacement() {
     $node->save();
 
     // Generate and test token - use full body as expected value.
-    $tests = array();
+    $tests = [];
     $tests['[node:summary]'] = $node->body->processed;
 
     // Test to make sure that we generated something for each token.
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated for node without a summary.');
 
     foreach ($tests as $input => $expected) {
-      $output = $this->tokenService->replace($input, array('node' => $node), array('language' => $this->interfaceLanguage));
+      $output = $this->tokenService->replace($input, ['node' => $node], ['language' => $this->interfaceLanguage]);
       $this->assertEqual($output, $expected, new FormattableMarkup('Node token %token replaced for node without a summary.', ['%token' => $input]));
     }
   }
diff --git a/core/modules/node/tests/src/Kernel/NodeValidationTest.php b/core/modules/node/tests/src/Kernel/NodeValidationTest.php
index 9fd646e..e111fae 100644
--- a/core/modules/node/tests/src/Kernel/NodeValidationTest.php
+++ b/core/modules/node/tests/src/Kernel/NodeValidationTest.php
@@ -18,7 +18,7 @@ class NodeValidationTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Set the default field storage backend for fields created during tests.
diff --git a/core/modules/node/tests/src/Unit/Plugin/views/field/NodeBulkFormTest.php b/core/modules/node/tests/src/Unit/Plugin/views/field/NodeBulkFormTest.php
index 6b28409..eb92f8c 100644
--- a/core/modules/node/tests/src/Unit/Plugin/views/field/NodeBulkFormTest.php
+++ b/core/modules/node/tests/src/Unit/Plugin/views/field/NodeBulkFormTest.php
@@ -25,7 +25,7 @@ protected function tearDown() {
    * Tests the constructor assignment of actions.
    */
   public function testConstructor() {
-    $actions = array();
+    $actions = [];
 
     for ($i = 1; $i <= 2; $i++) {
       $action = $this->getMock('\Drupal\system\ActionConfigEntityInterface');
@@ -60,7 +60,7 @@ public function testConstructor() {
     $views_data->expects($this->any())
       ->method('get')
       ->with('node')
-      ->will($this->returnValue(array('table' => array('entity type' => 'node'))));
+      ->will($this->returnValue(['table' => ['entity type' => 'node']]));
     $container = new ContainerBuilder();
     $container->set('views.views_data', $views_data);
     $container->set('string_translation', $this->getStringTranslationStub());
@@ -82,9 +82,9 @@ public function testConstructor() {
       ->getMock();
 
     $definition['title'] = '';
-    $options = array();
+    $options = [];
 
-    $node_bulk_form = new NodeBulkForm(array(), 'node_bulk_form', $definition, $entity_manager, $language_manager);
+    $node_bulk_form = new NodeBulkForm([], 'node_bulk_form', $definition, $entity_manager, $language_manager);
     $node_bulk_form->init($executable, $display, $options);
 
     $this->assertAttributeEquals(array_slice($actions, 0, -1, TRUE), 'actions', $node_bulk_form);
diff --git a/core/modules/options/options.api.php b/core/modules/options/options.api.php
index 28ac771..0f52b2b 100644
--- a/core/modules/options/options.api.php
+++ b/core/modules/options/options.api.php
@@ -81,21 +81,21 @@ function hook_options_list_alter(array &$options, array $context) {
  */
 function callback_allowed_values_function(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL, &$cacheable = TRUE) {
   if (isset($entity) && ($entity->bundle() == 'not_a_programmer')) {
-    $values = array(
+    $values = [
       1 => 'One',
       2 => 'Two',
-    );
+    ];
   }
   else {
-    $values = array(
-      'Group 1' => array(
+    $values = [
+      'Group 1' => [
         0 => 'Zero',
         1 => 'One',
-      ),
-      'Group 2' => array(
+      ],
+      'Group 2' => [
         2 => 'Two',
-      ),
-    );
+      ],
+    ];
   }
 
   return $values;
diff --git a/core/modules/options/options.module b/core/modules/options/options.module
index 2041607..7cf3635 100644
--- a/core/modules/options/options.module
+++ b/core/modules/options/options.module
@@ -19,11 +19,11 @@ function options_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.options':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Options module allows you to create fields where data values are selected from a fixed list of options. Usually these items are entered through a select list, checkboxes, or radio buttons. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":options_do">online documentation for the Options module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':options_do' => 'https://www.drupal.org/documentation/modules/options')) . '</p>';
+      $output .= '<p>' . t('The Options module allows you to create fields where data values are selected from a fixed list of options. Usually these items are entered through a select list, checkboxes, or radio buttons. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":options_do">online documentation for the Options module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':options_do' => 'https://www.drupal.org/documentation/modules/options']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying list fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the list fields can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the list fields can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Defining option keys and labels') . '</dt>';
       $output .= '<dd>' . t('When you define the list options you can define a key and a label for each option in the list. The label will be shown to the users while the key gets stored in the database.') . '</dd>';
       $output .= '<dt>' . t('Choosing list field type') . '</dt>';
@@ -70,9 +70,9 @@ function options_field_storage_config_delete(FieldStorageConfigInterface $field_
  * @see callback_allowed_values_function()
  */
 function options_allowed_values(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL) {
-  $allowed_values = &drupal_static(__FUNCTION__, array());
+  $allowed_values = &drupal_static(__FUNCTION__, []);
 
-  $cache_keys = array($definition->getTargetEntityTypeId(), $definition->getName());
+  $cache_keys = [$definition->getTargetEntityTypeId(), $definition->getName()];
   if ($entity) {
     $cache_keys[] = 'entity';
   }
@@ -112,7 +112,7 @@ function options_field_storage_config_update_forbid(FieldStorageConfigInterface
     $prior_allowed_values = $prior_field_storage->getSetting('allowed_values');
     $lost_keys = array_keys(array_diff_key($prior_allowed_values, $allowed_values));
     if (_options_values_in_use($field_storage->getTargetEntityTypeId(), $field_storage->getName(), $lost_keys)) {
-      throw new FieldStorageDefinitionUpdateForbiddenException(t('A list field (@field_name) with existing data cannot have its keys changed.', array('@field_name' => $field_storage->getName())));
+      throw new FieldStorageDefinitionUpdateForbiddenException(t('A list field (@field_name) with existing data cannot have its keys changed.', ['@field_name' => $field_storage->getName()]));
     }
   }
 }
diff --git a/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsDefaultFormatter.php b/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsDefaultFormatter.php
index bc1dba1..ba1ba9c 100644
--- a/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsDefaultFormatter.php
+++ b/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsDefaultFormatter.php
@@ -29,7 +29,7 @@ class OptionsDefaultFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     // Only collect allowed options if there are actually items to display.
     if ($items->count()) {
@@ -44,10 +44,10 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
         // If the stored value is in the current set of allowed values, display
         // the associated label, otherwise just display the raw value.
         $output = isset($options[$value]) ? $options[$value] : $value;
-        $elements[$delta] = array(
+        $elements[$delta] = [
           '#markup' => $output,
           '#allowed_tags' => FieldFilteredMarkup::allowedTags(),
-        );
+        ];
       }
     }
 
diff --git a/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsKeyFormatter.php b/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsKeyFormatter.php
index 2b83b15..64f22e9 100644
--- a/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsKeyFormatter.php
+++ b/core/modules/options/src/Plugin/Field/FieldFormatter/OptionsKeyFormatter.php
@@ -28,13 +28,13 @@ class OptionsKeyFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($items as $delta => $item) {
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#markup' => $item->value,
         '#allowed_tags' => FieldFilteredMarkup::allowedTags(),
-      );
+      ];
     }
 
     return $elements;
diff --git a/core/modules/options/src/Plugin/Field/FieldType/ListFloatItem.php b/core/modules/options/src/Plugin/Field/FieldType/ListFloatItem.php
index 254207d..416f7dc 100644
--- a/core/modules/options/src/Plugin/Field/FieldType/ListFloatItem.php
+++ b/core/modules/options/src/Plugin/Field/FieldType/ListFloatItem.php
@@ -34,16 +34,16 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'float',
-        ),
-      ),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+    ];
   }
 
   /**
@@ -55,7 +55,7 @@ protected function allowedValuesDescription() {
     $description .= '<br/>' . t('The label is optional: if a line contains a single number, it will be used as key and label.');
     $description .= '<br/>' . t('Lists of labels are also accepted (one label per line), only if the field does not hold any values yet. Numeric keys will be automatically generated from the positions in the list.');
     $description .= '</p>';
-    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', array('@tags' => $this->displayAllowedTags())) . '</p>';
+    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', ['@tags' => $this->displayAllowedTags()]) . '</p>';
     return $description;
   }
 
@@ -90,7 +90,7 @@ protected static function validateAllowedValue($option) {
    * {@inheritdoc}
    */
   public static function simplifyAllowedValues(array $structured_values) {
-    $values = array();
+    $values = [];
     foreach ($structured_values as $item) {
       // Nested elements are embedded in the label.
       if (is_array($item['label'])) {
diff --git a/core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php b/core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php
index 719ae48..b8a4204 100644
--- a/core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php
+++ b/core/modules/options/src/Plugin/Field/FieldType/ListIntegerItem.php
@@ -34,16 +34,16 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'int',
-        ),
-      ),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+    ];
   }
 
   /**
@@ -55,7 +55,7 @@ protected function allowedValuesDescription() {
     $description .= '<br/>' . t('The label is optional: if a line contains a single number, it will be used as key and label.');
     $description .= '<br/>' . t('Lists of labels are also accepted (one label per line), only if the field does not hold any values yet. Numeric keys will be automatically generated from the positions in the list.');
     $description .= '</p>';
-    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', array('@tags' => $this->displayAllowedTags())) . '</p>';
+    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', ['@tags' => $this->displayAllowedTags()]) . '</p>';
     return $description;
   }
 
diff --git a/core/modules/options/src/Plugin/Field/FieldType/ListItemBase.php b/core/modules/options/src/Plugin/Field/FieldType/ListItemBase.php
index 4527ca3..c7c2b16 100644
--- a/core/modules/options/src/Plugin/Field/FieldType/ListItemBase.php
+++ b/core/modules/options/src/Plugin/Field/FieldType/ListItemBase.php
@@ -21,10 +21,10 @@
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
-      'allowed_values' => array(),
+    return [
+      'allowed_values' => [],
       'allowed_values_function' => '',
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
@@ -85,28 +85,28 @@ public function storageSettingsForm(array &$form, FormStateInterface $form_state
     $allowed_values = $this->getSetting('allowed_values');
     $allowed_values_function = $this->getSetting('allowed_values_function');
 
-    $element['allowed_values'] = array(
+    $element['allowed_values'] = [
       '#type' => 'textarea',
       '#title' => t('Allowed values list'),
       '#default_value' => $this->allowedValuesString($allowed_values),
       '#rows' => 10,
       '#access' => empty($allowed_values_function),
-      '#element_validate' => array(array(get_class($this), 'validateAllowedValues')),
+      '#element_validate' => [[get_class($this), 'validateAllowedValues']],
       '#field_has_data' => $has_data,
       '#field_name' => $this->getFieldDefinition()->getName(),
       '#entity_type' => $this->getEntity()->getEntityTypeId(),
       '#allowed_values' => $allowed_values,
-    );
+    ];
 
     $element['allowed_values']['#description'] = $this->allowedValuesDescription();
 
-    $element['allowed_values_function'] = array(
+    $element['allowed_values_function'] = [
       '#type' => 'item',
       '#title' => t('Allowed values list'),
-      '#markup' => t('The value of this field is being determined by the %function function and may not be changed.', array('%function' => $allowed_values_function)),
+      '#markup' => t('The value of this field is being determined by the %function function and may not be changed.', ['%function' => $allowed_values_function]),
       '#access' => !empty($allowed_values_function),
       '#value' => $allowed_values_function,
-    );
+    ];
 
     return $element;
   }
@@ -171,7 +171,7 @@ public static function validateAllowedValues($element, FormStateInterface $form_
    * @see \Drupal\options\Plugin\Field\FieldType\ListItemBase::allowedValuesString()
    */
   protected static function extractAllowedValues($string, $has_data) {
-    $values = array();
+    $values = [];
 
     $list = explode("\n", $string);
     $list = array_map('trim', $list);
@@ -180,7 +180,7 @@ protected static function extractAllowedValues($string, $has_data) {
     $generated_keys = $explicit_keys = FALSE;
     foreach ($list as $position => $text) {
       // Check for an explicit key.
-      $matches = array();
+      $matches = [];
       if (preg_match('/(.*)\|(.*)/', $text, $matches)) {
         // Trim key and value to avoid unwanted spaces issues.
         $key = trim($matches[1]);
@@ -239,7 +239,7 @@ protected static function validateAllowedValue($option) { }
    *    - Each value is in the format "value|label" or "value".
    */
   protected function allowedValuesString($values) {
-    $lines = array();
+    $lines = [];
     foreach ($values as $key => $value) {
       $lines[] = "$key|$value";
     }
@@ -280,7 +280,7 @@ public static function storageSettingsFromConfigData(array $settings) {
    * @see \Drupal\options\Plugin\Field\FieldType\ListItemBase::structureAllowedValues()
    */
   protected static function simplifyAllowedValues(array $structured_values) {
-    $values = array();
+    $values = [];
     foreach ($structured_values as $item) {
       if (is_array($item['label'])) {
         // Nested elements are embedded in the label.
@@ -305,15 +305,15 @@ protected static function simplifyAllowedValues(array $structured_values) {
    * @see \Drupal\options\Plugin\Field\FieldType\ListItemBase::simplifyAllowedValues()
    */
   protected static function structureAllowedValues(array $values) {
-    $structured_values = array();
+    $structured_values = [];
     foreach ($values as $value => $label) {
       if (is_array($label)) {
         $label = static::structureAllowedValues($label);
       }
-      $structured_values[] = array(
+      $structured_values[] = [
         'value' => static::castAllowedValue($value),
         'label' => $label,
-      );
+      ];
     }
     return $structured_values;
   }
diff --git a/core/modules/options/src/Plugin/Field/FieldType/ListStringItem.php b/core/modules/options/src/Plugin/Field/FieldType/ListStringItem.php
index f5440ab..1f8caea 100644
--- a/core/modules/options/src/Plugin/Field/FieldType/ListStringItem.php
+++ b/core/modules/options/src/Plugin/Field/FieldType/ListStringItem.php
@@ -26,7 +26,7 @@ class ListStringItem extends ListItemBase {
   public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) {
     $properties['value'] = DataDefinition::create('string')
       ->setLabel(t('Text value'))
-      ->addConstraint('Length', array('max' => 255))
+      ->addConstraint('Length', ['max' => 255])
       ->setRequired(TRUE);
 
     return $properties;
@@ -36,17 +36,17 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'varchar',
           'length' => 255,
-        ),
-      ),
-      'indexes' => array(
-        'value' => array('value'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'value' => ['value'],
+      ],
+    ];
   }
 
   /**
@@ -57,7 +57,7 @@ protected function allowedValuesDescription() {
     $description .= '<br/>' . t('The key is the stored value. The label will be used in displayed values and edit forms.');
     $description .= '<br/>' . t('The label is optional: if a line contains a single string, it will be used as key and label.');
     $description .= '</p>';
-    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', array('@tags' => $this->displayAllowedTags())) . '</p>';
+    $description .= '<p>' . t('Allowed HTML tags in labels: @tags', ['@tags' => $this->displayAllowedTags()]) . '</p>';
     return $description;
   }
 
diff --git a/core/modules/options/src/Tests/OptionsDynamicValuesApiTest.php b/core/modules/options/src/Tests/OptionsDynamicValuesApiTest.php
index 081696a..c421583 100644
--- a/core/modules/options/src/Tests/OptionsDynamicValuesApiTest.php
+++ b/core/modules/options/src/Tests/OptionsDynamicValuesApiTest.php
@@ -21,12 +21,12 @@ public function testOptionsAllowedValues() {
 
     $values = options_allowed_values($this->fieldStorage, $this->entity);
 
-    $expected_values = array(
+    $expected_values = [
       $this->entity->label(),
       $this->entity->url(),
       $this->entity->uuid(),
       $this->entity->bundle(),
-    );
+    ];
     $expected_values = array_combine($expected_values, $expected_values);
     $this->assertEqual($expected_values, $values);
   }
diff --git a/core/modules/options/src/Tests/OptionsFieldUITest.php b/core/modules/options/src/Tests/OptionsFieldUITest.php
index ee6cf2e..76e076e 100644
--- a/core/modules/options/src/Tests/OptionsFieldUITest.php
+++ b/core/modules/options/src/Tests/OptionsFieldUITest.php
@@ -18,7 +18,7 @@ class OptionsFieldUITest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'options', 'field_test', 'taxonomy', 'field_ui');
+  public static $modules = ['node', 'options', 'field_test', 'taxonomy', 'field_ui'];
 
   /**
    * The name of the created content type.
@@ -70,15 +70,15 @@ function testOptionsAllowedValuesInteger() {
 
     // Flat list of textual values.
     $string = "Zero\nOne";
-    $array = array('0' => 'Zero', '1' => 'One');
+    $array = ['0' => 'Zero', '1' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Unkeyed lists are accepted.');
     // Explicit integer keys.
     $string = "0|Zero\n2|Two";
-    $array = array('0' => 'Zero', '2' => 'Two');
+    $array = ['0' => 'Zero', '2' => 'Two'];
     $this->assertAllowedValuesInput($string, $array, 'Integer keys are accepted.');
     // Check that values can be added and removed.
     $string = "0|Zero\n1|One";
-    $array = array('0' => 'Zero', '1' => 'One');
+    $array = ['0' => 'Zero', '1' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added and removed.');
     // Non-integer keys.
     $this->assertAllowedValuesInput("1.1|One", 'keys must be integers', 'Non integer keys are rejected.');
@@ -87,10 +87,10 @@ function testOptionsAllowedValuesInteger() {
     $this->assertAllowedValuesInput("Zero\n1|One", 'invalid input', 'Mixed lists are rejected.');
 
     // Create a node with actual data for the field.
-    $settings = array(
+    $settings = [
       'type' => $this->type,
-      $this->fieldName => array(array('value' => 1)),
-    );
+      $this->fieldName => [['value' => 1]],
+    ];
     $node = $this->drupalCreateNode($settings);
 
     // Check that a flat list of values is rejected once the field has data.
@@ -98,22 +98,22 @@ function testOptionsAllowedValuesInteger() {
 
     // Check that values can be added but values in use cannot be removed.
     $string = "0|Zero\n1|One\n2|Two";
-    $array = array('0' => 'Zero', '1' => 'One', '2' => 'Two');
+    $array = ['0' => 'Zero', '1' => 'One', '2' => 'Two'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added.');
     $string = "0|Zero\n1|One";
-    $array = array('0' => 'Zero', '1' => 'One');
+    $array = ['0' => 'Zero', '1' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
     $this->assertAllowedValuesInput("0|Zero", 'some values are being removed while currently in use', 'Values in use cannot be removed.');
 
     // Delete the node, remove the value.
     $node->delete();
     $string = "0|Zero";
-    $array = array('0' => 'Zero');
+    $array = ['0' => 'Zero'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
 
     // Check that the same key can only be used once.
     $string = "0|Zero\n0|One";
-    $array = array('0' => 'One');
+    $array = ['0' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Same value cannot be used multiple times.');
   }
 
@@ -126,15 +126,15 @@ function testOptionsAllowedValuesFloat() {
 
     // Flat list of textual values.
     $string = "Zero\nOne";
-    $array = array('0' => 'Zero', '1' => 'One');
+    $array = ['0' => 'Zero', '1' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Unkeyed lists are accepted.');
     // Explicit numeric keys.
     $string = "0|Zero\n.5|Point five";
-    $array = array('0' => 'Zero', '0.5' => 'Point five');
+    $array = ['0' => 'Zero', '0.5' => 'Point five'];
     $this->assertAllowedValuesInput($string, $array, 'Integer keys are accepted.');
     // Check that values can be added and removed.
     $string = "0|Zero\n.5|Point five\n1.0|One";
-    $array = array('0' => 'Zero', '0.5' => 'Point five', '1' => 'One');
+    $array = ['0' => 'Zero', '0.5' => 'Point five', '1' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added and removed.');
     // Non-numeric keys.
     $this->assertAllowedValuesInput("abc|abc\n", 'each key must be a valid integer or decimal', 'Non numeric keys are rejected.');
@@ -142,10 +142,10 @@ function testOptionsAllowedValuesFloat() {
     $this->assertAllowedValuesInput("Zero\n1|One\n", 'invalid input', 'Mixed lists are rejected.');
 
     // Create a node with actual data for the field.
-    $settings = array(
+    $settings = [
       'type' => $this->type,
-      $this->fieldName => array(array('value' => .5)),
-    );
+      $this->fieldName => [['value' => .5]],
+    ];
     $node = $this->drupalCreateNode($settings);
 
     // Check that a flat list of values is rejected once the field has data.
@@ -153,27 +153,27 @@ function testOptionsAllowedValuesFloat() {
 
     // Check that values can be added but values in use cannot be removed.
     $string = "0|Zero\n.5|Point five\n2|Two";
-    $array = array('0' => 'Zero', '0.5' => 'Point five', '2' => 'Two');
+    $array = ['0' => 'Zero', '0.5' => 'Point five', '2' => 'Two'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added.');
     $string = "0|Zero\n.5|Point five";
-    $array = array('0' => 'Zero', '0.5' => 'Point five');
+    $array = ['0' => 'Zero', '0.5' => 'Point five'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
     $this->assertAllowedValuesInput("0|Zero", 'some values are being removed while currently in use', 'Values in use cannot be removed.');
 
     // Delete the node, remove the value.
     $node->delete();
     $string = "0|Zero";
-    $array = array('0' => 'Zero');
+    $array = ['0' => 'Zero'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
 
     // Check that the same key can only be used once.
     $string = "0.5|Point five\n0.5|Half";
-    $array = array('0.5' => 'Half');
+    $array = ['0.5' => 'Half'];
     $this->assertAllowedValuesInput($string, $array, 'Same value cannot be used multiple times.');
 
     // Check that different forms of the same float value cannot be used.
     $string = "0|Zero\n.5|Point five\n0.5|Half";
-    $array = array('0' => 'Zero', '0.5' => 'Half');
+    $array = ['0' => 'Zero', '0.5' => 'Half'];
     $this->assertAllowedValuesInput($string, $array, 'Different forms of the same value cannot be used.');
   }
 
@@ -186,59 +186,59 @@ function testOptionsAllowedValuesText() {
 
     // Flat list of textual values.
     $string = "Zero\nOne";
-    $array = array('Zero' => 'Zero', 'One' => 'One');
+    $array = ['Zero' => 'Zero', 'One' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Unkeyed lists are accepted.');
     // Explicit keys.
     $string = "zero|Zero\none|One";
-    $array = array('zero' => 'Zero', 'one' => 'One');
+    $array = ['zero' => 'Zero', 'one' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Explicit keys are accepted.');
     // Check that values can be added and removed.
     $string = "zero|Zero\ntwo|Two";
-    $array = array('zero' => 'Zero', 'two' => 'Two');
+    $array = ['zero' => 'Zero', 'two' => 'Two'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added and removed.');
     // Mixed list of keyed and unkeyed values.
     $string = "zero|Zero\nOne\n";
-    $array = array('zero' => 'Zero', 'One' => 'One');
+    $array = ['zero' => 'Zero', 'One' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Mixed lists are accepted.');
     // Overly long keys.
     $this->assertAllowedValuesInput("zero|Zero\n" . $this->randomMachineName(256) . "|One", 'each key must be a string at most 255 characters long', 'Overly long keys are rejected.');
 
     // Create a node with actual data for the field.
-    $settings = array(
+    $settings = [
       'type' => $this->type,
-      $this->fieldName => array(array('value' => 'One')),
-    );
+      $this->fieldName => [['value' => 'One']],
+    ];
     $node = $this->drupalCreateNode($settings);
 
     // Check that flat lists of values are still accepted once the field has
     // data.
     $string = "Zero\nOne";
-    $array = array('Zero' => 'Zero', 'One' => 'One');
+    $array = ['Zero' => 'Zero', 'One' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Unkeyed lists are still accepted once the field has data.');
 
     // Check that values can be added but values in use cannot be removed.
     $string = "Zero\nOne\nTwo";
-    $array = array('Zero' => 'Zero', 'One' => 'One', 'Two' => 'Two');
+    $array = ['Zero' => 'Zero', 'One' => 'One', 'Two' => 'Two'];
     $this->assertAllowedValuesInput($string, $array, 'Values can be added.');
     $string = "Zero\nOne";
-    $array = array('Zero' => 'Zero', 'One' => 'One');
+    $array = ['Zero' => 'Zero', 'One' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
     $this->assertAllowedValuesInput("Zero", 'some values are being removed while currently in use', 'Values in use cannot be removed.');
 
     // Delete the node, remove the value.
     $node->delete();
     $string = "Zero";
-    $array = array('Zero' => 'Zero');
+    $array = ['Zero' => 'Zero'];
     $this->assertAllowedValuesInput($string, $array, 'Values not in use can be removed.');
 
     // Check that string values with dots can be used.
     $string = "Zero\nexample.com|Example";
-    $array = array('Zero' => 'Zero', 'example.com' => 'Example');
+    $array = ['Zero' => 'Zero', 'example.com' => 'Example'];
     $this->assertAllowedValuesInput($string, $array, 'String value with dot is supported.');
 
     // Check that the same key can only be used once.
     $string = "zero|Zero\nzero|One";
-    $array = array('zero' => 'One');
+    $array = ['zero' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Same value cannot be used multiple times.');
   }
 
@@ -251,7 +251,7 @@ function testOptionsTrimmedValuesText() {
 
     // Explicit keys.
     $string = "zero |Zero\none | One";
-    $array = array('zero' => 'Zero', 'one' => 'One');
+    $array = ['zero' => 'Zero', 'one' => 'One'];
     $this->assertAllowedValuesInput($string, $array, 'Explicit keys are accepted and trimmed.');
   }
 
@@ -263,11 +263,11 @@ function testOptionsTrimmedValuesText() {
    */
   protected function createOptionsField($type) {
     // Create a field.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
       'type' => $type,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'node',
@@ -292,7 +292,7 @@ protected function createOptionsField($type) {
    *   Message to display.
    */
   function assertAllowedValuesInput($input_string, $result, $message) {
-    $edit = array('settings[allowed_values]' => $input_string);
+    $edit = ['settings[allowed_values]' => $input_string];
     $this->drupalPostForm($this->adminPath, $edit, t('Save field settings'));
     $this->assertNoRaw('&amp;lt;', 'The page does not have double escaped HTML tags.');
 
@@ -311,32 +311,32 @@ function assertAllowedValuesInput($input_string, $result, $message) {
   function testNodeDisplay() {
     $this->fieldName = strtolower($this->randomMachineName());
     $this->createOptionsField('list_integer');
-    $node = $this->drupalCreateNode(array('type' => $this->type));
+    $node = $this->drupalCreateNode(['type' => $this->type]);
 
     $on = $this->randomMachineName();
     $off = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'settings[allowed_values]' =>
         "1|$on
         0|$off",
-    );
+    ];
 
     $this->drupalPostForm($this->adminPath, $edit, t('Save field settings'));
-    $this->assertText(format_string('Updated field @field_name field settings.', array('@field_name' => $this->fieldName)), "The 'On' and 'Off' form fields work for boolean fields.");
+    $this->assertText(format_string('Updated field @field_name field settings.', ['@field_name' => $this->fieldName]), "The 'On' and 'Off' form fields work for boolean fields.");
 
     // Select a default value.
-    $edit = array(
+    $edit = [
       $this->fieldName => '1',
-    );
+    ];
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save and keep published'));
 
     // Check the node page and see if the values are correct.
-    $file_formatters = array('list_default', 'list_key');
+    $file_formatters = ['list_default', 'list_key'];
     foreach ($file_formatters as $formatter) {
-      $edit = array(
+      $edit = [
         "fields[$this->fieldName][type]" => $formatter,
         "fields[$this->fieldName][region]" => 'content',
-      );
+      ];
       $this->drupalPostForm('admin/structure/types/manage/' . $this->typeName . '/display', $edit, t('Save'));
       $this->drupalGet('node/' . $node->id());
 
diff --git a/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php b/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
index 7b642e8..5a2f20b 100644
--- a/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
+++ b/core/modules/options/src/Tests/OptionsFloatFieldImportTest.php
@@ -18,13 +18,13 @@ class OptionsFloatFieldImportTest extends FieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'options', 'field_ui', 'config', 'options_config_install_test');
+  public static $modules = ['node', 'options', 'field_ui', 'config', 'options_config_install_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create test user.
-    $admin_user = $this->drupalCreateUser(array('synchronize configuration', 'access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer nodes', 'bypass node access', 'administer node fields', 'administer node display'));
+    $admin_user = $this->drupalCreateUser(['synchronize configuration', 'access content', 'access administration pages', 'administer site configuration', 'administer content types', 'administer nodes', 'bypass node access', 'administer node fields', 'administer node display']);
     $this->drupalLogin($admin_user);
   }
 
@@ -39,7 +39,7 @@ public function testImport() {
     // necessary configuration for this test is created by installing that
     // module.
     $field_storage = FieldStorageConfig::loadByName('node', $field_name);
-    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = array('0' => 'Zero', '0.5' => 'Point five'));
+    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = ['0' => 'Zero', '0.5' => 'Point five']);
 
     $admin_path = 'admin/structure/types/manage/' . $type . '/fields/node.' . $type . '.' . $field_name . '/storage';
 
@@ -47,26 +47,26 @@ public function testImport() {
     $this->copyConfig($this->container->get('config.storage'), $this->container->get('config.storage.sync'));
 
     // Set the active to not use dots in the allowed values key names.
-    $edit = array('settings[allowed_values]' => "0|Zero\n1|One");
+    $edit = ['settings[allowed_values]' => "0|Zero\n1|One"];
     $this->drupalPostForm($admin_path, $edit, t('Save field settings'));
     $field_storage = FieldStorageConfig::loadByName('node', $field_name);
-    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = array('0' => 'Zero', '1' => 'One'));
+    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = ['0' => 'Zero', '1' => 'One']);
 
     // Import configuration with dots in the allowed values key names. This
     // tests \Drupal\Core\Config\Entity\ConfigEntityStorage::importUpdate().
     $this->drupalGet('admin/config/development/configuration');
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $field_storage = FieldStorageConfig::loadByName('node', $field_name);
-    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = array('0' => 'Zero', '0.5' => 'Point five'));
+    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = ['0' => 'Zero', '0.5' => 'Point five']);
 
     // Delete field to test creation. This tests
     // \Drupal\Core\Config\Entity\ConfigEntityStorage::importCreate().
     FieldConfig::loadByName('node', $type, $field_name)->delete();
 
     $this->drupalGet('admin/config/development/configuration');
-    $this->drupalPostForm(NULL, array(), t('Import all'));
+    $this->drupalPostForm(NULL, [], t('Import all'));
     $field_storage = FieldStorageConfig::loadByName('node', $field_name);
-    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = array('0' => 'Zero', '0.5' => 'Point five'));
+    $this->assertIdentical($field_storage->getSetting('allowed_values'), $array = ['0' => 'Zero', '0.5' => 'Point five']);
   }
 
 }
diff --git a/core/modules/options/src/Tests/OptionsSelectDynamicValuesTest.php b/core/modules/options/src/Tests/OptionsSelectDynamicValuesTest.php
index df3365c..72c0d55 100644
--- a/core/modules/options/src/Tests/OptionsSelectDynamicValuesTest.php
+++ b/core/modules/options/src/Tests/OptionsSelectDynamicValuesTest.php
@@ -16,7 +16,7 @@ function testSelectListDynamic() {
     $this->entity->save();
 
     // Create a web user.
-    $web_user = $this->drupalCreateUser(array('view test entity', 'administer entity_test content'));
+    $web_user = $this->drupalCreateUser(['view test entity', 'administer entity_test content']);
     $this->drupalLogin($web_user);
 
     // Display form.
diff --git a/core/modules/options/src/Tests/OptionsWidgetsTest.php b/core/modules/options/src/Tests/OptionsWidgetsTest.php
index 23f0f0d..8a907c2 100644
--- a/core/modules/options/src/Tests/OptionsWidgetsTest.php
+++ b/core/modules/options/src/Tests/OptionsWidgetsTest.php
@@ -114,9 +114,9 @@ function testRadioButtons() {
     $this->assertRaw('Some HTML encoded markup with &lt; &amp; &gt;');
 
     // Select first option.
-    $edit = array('card_1' => 0);
+    $edit = ['card_1' => 0];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array(0));
+    $this->assertFieldValues($entity_init, 'card_1', [0]);
 
     // Check that the selected button is checked.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -125,9 +125,9 @@ function testRadioButtons() {
     $this->assertNoFieldChecked('edit-card-1-2');
 
     // Unselect option.
-    $edit = array('card_1' => '_none');
+    $edit = ['card_1' => '_none'];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array());
+    $this->assertFieldValues($entity_init, 'card_1', []);
 
     // Check that required radios with one option is auto-selected.
     $this->card1->setSetting('allowed_values', [99 => 'Only allowed value']);
@@ -149,16 +149,16 @@ function testCheckBoxes() {
     ]);
     $field->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->card2->getName(), array(
+      ->setComponent($this->card2->getName(), [
         'type' => 'options_buttons',
-      ))
+      ])
       ->save();
 
     // Create an entity.
-    $entity = EntityTest::create(array(
+    $entity = EntityTest::create([
       'user_id' => 1,
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $entity->save();
     $entity_init = clone $entity;
 
@@ -170,13 +170,13 @@ function testCheckBoxes() {
     $this->assertRaw('Some dangerous &amp; unescaped <strong>markup</strong>', 'Option text was properly filtered.');
 
     // Submit form: select first and third options.
-    $edit = array(
+    $edit = [
       'card_2[0]' => TRUE,
       'card_2[1]' => FALSE,
       'card_2[2]' => TRUE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0, 2));
+    $this->assertFieldValues($entity_init, 'card_2', [0, 2]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -185,13 +185,13 @@ function testCheckBoxes() {
     $this->assertFieldChecked('edit-card-2-2');
 
     // Submit form: select only first option.
-    $edit = array(
+    $edit = [
       'card_2[0]' => TRUE,
       'card_2[1]' => FALSE,
       'card_2[2]' => FALSE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0));
+    $this->assertFieldValues($entity_init, 'card_2', [0]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -200,23 +200,23 @@ function testCheckBoxes() {
     $this->assertNoFieldChecked('edit-card-2-2');
 
     // Submit form: select the three options while the field accepts only 2.
-    $edit = array(
+    $edit = [
       'card_2[0]' => TRUE,
       'card_2[1]' => TRUE,
       'card_2[2]' => TRUE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText('this field cannot hold more than 2 values', 'Validation error was displayed.');
 
     // Submit form: uncheck all options.
-    $edit = array(
+    $edit = [
       'card_2[0]' => FALSE,
       'card_2[1]' => FALSE,
       'card_2[2]' => FALSE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     // Check that the value was saved.
-    $this->assertFieldValues($entity_init, 'card_2', array());
+    $this->assertFieldValues($entity_init, 'card_2', []);
 
     // Required checkbox with one option is auto-selected.
     $this->card2->setSetting('allowed_values', [99 => 'Only allowed value']);
@@ -239,23 +239,23 @@ function testSelectListSingle() {
     ]);
     $field->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->card1->getName(), array(
+      ->setComponent($this->card1->getName(), [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
 
     // Create an entity.
-    $entity = EntityTest::create(array(
+    $entity = EntityTest::create([
       'user_id' => 1,
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $entity->save();
     $entity_init = clone $entity;
 
     // Display form.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
     // A required field without any value has a "none" option.
-    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', array(':id' => 'edit-card-1', ':label' => t('- Select a value -'))), 'A required select list has a "Select a value" choice.');
+    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', [':id' => 'edit-card-1', ':label' => t('- Select a value -')]), 'A required select list has a "Select a value" choice.');
 
     // With no field data, nothing is selected.
     $this->assertNoOptionSelected('edit-card-1', '_none');
@@ -265,19 +265,19 @@ function testSelectListSingle() {
     $this->assertRaw('Some dangerous &amp; unescaped markup', 'Option text was properly filtered.');
 
     // Submit form: select invalid 'none' option.
-    $edit = array('card_1' => '_none');
+    $edit = ['card_1' => '_none'];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('@title field is required.', array('@title' => $field->getName())), 'Cannot save a required field when selecting "none" from the select list.');
+    $this->assertRaw(t('@title field is required.', ['@title' => $field->getName()]), 'Cannot save a required field when selecting "none" from the select list.');
 
     // Submit form: select first option.
-    $edit = array('card_1' => 0);
+    $edit = ['card_1' => 0];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array(0));
+    $this->assertFieldValues($entity_init, 'card_1', [0]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
     // A required field with a value has no 'none' option.
-    $this->assertFalse($this->xpath('//select[@id=:id]//option[@value="_none"]', array(':id' => 'edit-card-1')), 'A required select list with an actual value has no "none" choice.');
+    $this->assertFalse($this->xpath('//select[@id=:id]//option[@value="_none"]', [':id' => 'edit-card-1']), 'A required select list with an actual value has no "none" choice.');
     $this->assertOptionSelected('edit-card-1', 0);
     $this->assertNoOptionSelected('edit-card-1', 1);
     $this->assertNoOptionSelected('edit-card-1', 2);
@@ -289,11 +289,11 @@ function testSelectListSingle() {
     // Display form.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
     // A non-required field has a 'none' option.
-    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', array(':id' => 'edit-card-1', ':label' => t('- None -'))), 'A non-required select list has a "None" choice.');
+    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', [':id' => 'edit-card-1', ':label' => t('- None -')]), 'A non-required select list has a "None" choice.');
     // Submit form: Unselect the option.
-    $edit = array('card_1' => '_none');
+    $edit = ['card_1' => '_none'];
     $this->drupalPostForm('entity_test/manage/' . $entity->id() . '/edit', $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array());
+    $this->assertFieldValues($entity_init, 'card_1', []);
 
     // Test optgroups.
 
@@ -311,9 +311,9 @@ function testSelectListSingle() {
     $this->assertRaw('Group 1', 'Option groups are displayed.');
 
     // Submit form: select first option.
-    $edit = array('card_1' => 0);
+    $edit = ['card_1' => 0];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array(0));
+    $this->assertFieldValues($entity_init, 'card_1', [0]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -322,9 +322,9 @@ function testSelectListSingle() {
     $this->assertNoOptionSelected('edit-card-1', 2);
 
     // Submit form: Unselect the option.
-    $edit = array('card_1' => '_none');
+    $edit = ['card_1' => '_none'];
     $this->drupalPostForm('entity_test/manage/' . $entity->id() . '/edit', $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_1', array());
+    $this->assertFieldValues($entity_init, 'card_1', []);
   }
 
   /**
@@ -338,16 +338,16 @@ function testSelectListMultiple() {
     ]);
     $field->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->card2->getName(), array(
+      ->setComponent($this->card2->getName(), [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
 
     // Create an entity.
-    $entity = EntityTest::create(array(
+    $entity = EntityTest::create([
       'user_id' => 1,
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $entity->save();
     $entity_init = clone $entity;
 
@@ -360,9 +360,9 @@ function testSelectListMultiple() {
     $this->assertRaw('Some dangerous &amp; unescaped markup', 'Option text was properly filtered.');
 
     // Submit form: select first and third options.
-    $edit = array('card_2[]' => array(0 => 0, 2 => 2));
+    $edit = ['card_2[]' => [0 => 0, 2 => 2]];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0, 2));
+    $this->assertFieldValues($entity_init, 'card_2', [0, 2]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -371,9 +371,9 @@ function testSelectListMultiple() {
     $this->assertOptionSelected('edit-card-2', 2);
 
     // Submit form: select only first option.
-    $edit = array('card_2[]' => array(0 => 0));
+    $edit = ['card_2[]' => [0 => 0]];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0));
+    $this->assertFieldValues($entity_init, 'card_2', [0]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -382,33 +382,33 @@ function testSelectListMultiple() {
     $this->assertNoOptionSelected('edit-card-2', 2);
 
     // Submit form: select the three options while the field accepts only 2.
-    $edit = array('card_2[]' => array(0 => 0, 1 => 1, 2 => 2));
+    $edit = ['card_2[]' => [0 => 0, 1 => 1, 2 => 2]];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText('this field cannot hold more than 2 values', 'Validation error was displayed.');
 
     // Submit form: uncheck all options.
-    $edit = array('card_2[]' => array());
+    $edit = ['card_2[]' => []];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array());
+    $this->assertFieldValues($entity_init, 'card_2', []);
 
     // Test the 'None' option.
 
     // Check that the 'none' option has no effect if actual options are selected
     // as well.
-    $edit = array('card_2[]' => array('_none' => '_none', 0 => 0));
+    $edit = ['card_2[]' => ['_none' => '_none', 0 => 0]];
     $this->drupalPostForm('entity_test/manage/' . $entity->id() . '/edit', $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0));
+    $this->assertFieldValues($entity_init, 'card_2', [0]);
 
     // Check that selecting the 'none' option empties the field.
-    $edit = array('card_2[]' => array('_none' => '_none'));
+    $edit = ['card_2[]' => ['_none' => '_none']];
     $this->drupalPostForm('entity_test/manage/' . $entity->id() . '/edit', $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array());
+    $this->assertFieldValues($entity_init, 'card_2', []);
 
     // A required select list does not have an empty key.
     $field->setRequired(TRUE);
     $field->save();
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
-    $this->assertFalse($this->xpath('//select[@id=:id]//option[@value=""]', array(':id' => 'edit-card-2')), 'A required select list does not have an empty key.');
+    $this->assertFalse($this->xpath('//select[@id=:id]//option[@value=""]', [':id' => 'edit-card-2']), 'A required select list does not have an empty key.');
 
     // We do not have to test that a required select list with one option is
     // auto-selected because the browser does it for us.
@@ -432,9 +432,9 @@ function testSelectListMultiple() {
     $this->assertRaw('Group 1', 'Option groups are displayed.');
 
     // Submit form: select first option.
-    $edit = array('card_2[]' => array(0 => 0));
+    $edit = ['card_2[]' => [0 => 0]];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array(0));
+    $this->assertFieldValues($entity_init, 'card_2', [0]);
 
     // Display form: check that the right options are selected.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
@@ -443,9 +443,9 @@ function testSelectListMultiple() {
     $this->assertNoOptionSelected('edit-card-2', 2);
 
     // Submit form: Unselect the option.
-    $edit = array('card_2[]' => array('_none' => '_none'));
+    $edit = ['card_2[]' => ['_none' => '_none']];
     $this->drupalPostForm('entity_test/manage/' . $entity->id() . '/edit', $edit, t('Save'));
-    $this->assertFieldValues($entity_init, 'card_2', array());
+    $this->assertFieldValues($entity_init, 'card_2', []);
   }
 
   /**
@@ -475,20 +475,20 @@ function testEmptyValue() {
 
     // Display form: check that _none options are present and has label.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
-    $this->assertTrue($this->xpath('//div[@id=:id]//input[@value=:value]', array(':id' => 'edit-card-1', ':value' => '_none')), 'A test radio button has a "None" choice.');
-    $this->assertTrue($this->xpath('//div[@id=:id]//label[@for=:for and text()=:label]', array(':id' => 'edit-card-1', ':for' => 'edit-card-1-none', ':label' => 'N/A')), 'A test radio button has a "N/A" choice.');
+    $this->assertTrue($this->xpath('//div[@id=:id]//input[@value=:value]', [':id' => 'edit-card-1', ':value' => '_none']), 'A test radio button has a "None" choice.');
+    $this->assertTrue($this->xpath('//div[@id=:id]//label[@for=:for and text()=:label]', [':id' => 'edit-card-1', ':for' => 'edit-card-1-none', ':label' => 'N/A']), 'A test radio button has a "N/A" choice.');
 
     // Change it to the select widget.
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->card1->getName(), array(
+      ->setComponent($this->card1->getName(), [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
 
     // Display form: check that _none options are present and has label.
     $this->drupalGet('entity_test/manage/' . $entity->id() . '/edit');
     // A required field without any value has a "none" option.
-    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', array(':id' => 'edit-card-1', ':label' => t('- None -'))), 'A test select has a "None" choice.');
+    $this->assertTrue($this->xpath('//select[@id=:id]//option[@value="_none" and text()=:label]', [':id' => 'edit-card-1', ':label' => t('- None -')]), 'A test select has a "None" choice.');
   }
 
 }
diff --git a/core/modules/options/tests/options_test/options_test.module b/core/modules/options/tests/options_test/options_test.module
index d20401a..dbb474b 100644
--- a/core/modules/options/tests/options_test/options_test.module
+++ b/core/modules/options/tests/options_test/options_test.module
@@ -14,18 +14,18 @@
  * @see options_allowed_values()
  */
 function options_test_allowed_values_callback(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL) {
-  $values = array(
-    'Group 1' => array(
+  $values = [
+    'Group 1' => [
       0 => 'Zero',
-    ),
+    ],
     1 => 'One',
-    'Group 2' => array(
+    'Group 2' => [
       2 => 'Some <script>dangerous</script> & unescaped <strong>markup</strong>',
-    ),
-    'More <script>dangerous</script> markup' => array(
+    ],
+    'More <script>dangerous</script> markup' => [
       3 => 'Three',
-    ),
-  );
+    ],
+  ];
 
   return $values;
 }
@@ -41,15 +41,15 @@ function options_test_allowed_values_callback(FieldStorageDefinitionInterface $d
  * @see options_allowed_values()
  */
 function options_test_dynamic_values_callback(FieldStorageDefinitionInterface $definition, FieldableEntityInterface $entity = NULL, &$cacheable = NULL) {
-  $values = array();
+  $values = [];
   if (isset($entity)) {
     $cacheable = FALSE;
-    $values = array(
+    $values = [
       $entity->label(),
       $entity->url(),
       $entity->uuid(),
       $entity->bundle(),
-    );
+    ];
   }
   // We need the values of the entity as keys.
   return array_combine($values, $values);
diff --git a/core/modules/options/tests/src/Kernel/OptionsFieldTest.php b/core/modules/options/tests/src/Kernel/OptionsFieldTest.php
index 89ac127..d3912a2 100644
--- a/core/modules/options/tests/src/Kernel/OptionsFieldTest.php
+++ b/core/modules/options/tests/src/Kernel/OptionsFieldTest.php
@@ -19,7 +19,7 @@ class OptionsFieldTest extends OptionsFieldUnitTestBase {
    *
    * @var array
    */
-  public static $modules = array('options');
+  public static $modules = ['options'];
 
   /**
    * Test that allowed values can be updated.
@@ -81,9 +81,9 @@ function testUpdateAllowedValues() {
       'required' => TRUE,
     ])->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'options_buttons',
-      ))
+      ])
       ->save();
     $entity = EntityTest::create();
     $form = \Drupal::service('entity.form_builder')->getForm($entity);
diff --git a/core/modules/options/tests/src/Kernel/OptionsFieldUnitTestBase.php b/core/modules/options/tests/src/Kernel/OptionsFieldUnitTestBase.php
index 7dd7cbe..9098b81 100644
--- a/core/modules/options/tests/src/Kernel/OptionsFieldUnitTestBase.php
+++ b/core/modules/options/tests/src/Kernel/OptionsFieldUnitTestBase.php
@@ -16,7 +16,7 @@
    *
    * @var array
    */
-  public static $modules = array('options');
+  public static $modules = ['options'];
 
   /**
    * The field name used in the test.
@@ -53,15 +53,15 @@ protected function setUp() {
     parent::setUp();
     $this->container->get('router.builder')->rebuild();
 
-    $this->fieldStorageDefinition = array(
+    $this->fieldStorageDefinition = [
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => 'list_integer',
       'cardinality' => 1,
-      'settings' => array(
-        'allowed_values' => array(1 => 'One', 2 => 'Two', 3 => 'Three'),
-      ),
-    );
+      'settings' => [
+        'allowed_values' => [1 => 'One', 2 => 'Two', 3 => 'Three'],
+      ],
+    ];
     $this->fieldStorage = FieldStorageConfig::create($this->fieldStorageDefinition);
     $this->fieldStorage->save();
 
@@ -72,9 +72,9 @@ protected function setUp() {
     $this->field->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'options_buttons',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/options/tests/src/Kernel/OptionsFormattersTest.php b/core/modules/options/tests/src/Kernel/OptionsFormattersTest.php
index 632900e..93607f6 100644
--- a/core/modules/options/tests/src/Kernel/OptionsFormattersTest.php
+++ b/core/modules/options/tests/src/Kernel/OptionsFormattersTest.php
@@ -33,7 +33,7 @@ public function testFormatter() {
     $this->assertEqual($build['#formatter'], 'list_default', 'Ensure to fall back to the default formatter.');
     $this->assertEqual($build[0]['#markup'], 'One');
 
-    $build = $items->view(array('type' => 'list_key'));
+    $build = $items->view(['type' => 'list_key']);
     $this->assertEqual($build['#formatter'], 'list_key', 'The chosen formatter is used.');
     $this->assertEqual((string) $build[0]['#markup'], 1);
   }
diff --git a/core/modules/options/tests/src/Kernel/Views/FileViewsDataTest.php b/core/modules/options/tests/src/Kernel/Views/FileViewsDataTest.php
index 060c05e..c5f2902 100644
--- a/core/modules/options/tests/src/Kernel/Views/FileViewsDataTest.php
+++ b/core/modules/options/tests/src/Kernel/Views/FileViewsDataTest.php
@@ -19,7 +19,7 @@ class FileViewsDataTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'views', 'entity_test', 'user', 'field');
+  public static $modules = ['file', 'views', 'entity_test', 'user', 'field'];
 
   /**
    * Tests views data generated for file field relationship.
@@ -29,16 +29,16 @@ class FileViewsDataTest extends ViewsKernelTestBase {
    */
   public function testRelationshipViewsData() {
     // Create file field to entity_test.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_base_file',
       'type' => 'file',
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_base_file',
       'bundle' => 'entity_test',
-    ))->save();
+    ])->save();
     // Check the generated views data.
     $views_data = Views::viewsData()->get('entity_test__field_base_file');
     $relationship = $views_data['field_base_file_target_id']['relationship'];
@@ -59,16 +59,16 @@ public function testRelationshipViewsData() {
     $this->assertEqual($relationship['join_extra'][0], ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE]);
 
     // Create file field to entity_test_mul.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test_mul',
       'field_name' => 'field_data_file',
       'type' => 'file',
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test_mul',
       'field_name' => 'field_data_file',
       'bundle' => 'entity_test_mul',
-    ))->save();
+    ])->save();
     // Check the generated views data.
     $views_data = Views::viewsData()->get('entity_test_mul__field_data_file');
     $relationship = $views_data['field_data_file_target_id']['relationship'];
diff --git a/core/modules/outside_in/src/Form/SystemMenuOffCanvasForm.php b/core/modules/outside_in/src/Form/SystemMenuOffCanvasForm.php
index b1dd9ac..d8ba9f4 100644
--- a/core/modules/outside_in/src/Form/SystemMenuOffCanvasForm.php
+++ b/core/modules/outside_in/src/Form/SystemMenuOffCanvasForm.php
@@ -81,7 +81,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
 
     $form['entity_form'] = [
       '#type' => 'details',
-      '#title' => $this->t('Edit menu %label', array('%label' => $this->entity->label())),
+      '#title' => $this->t('Edit menu %label', ['%label' => $this->entity->label()]),
       '#open' => TRUE,
     ];
     $form['entity_form'] += $this->getEntityForm($this->entity)->buildForm([], $form_state);
diff --git a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
index 8cdeec0..325aec7 100644
--- a/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
+++ b/core/modules/outside_in/tests/src/FunctionalJavascript/OutsideInJavascriptTestBase.php
@@ -12,7 +12,7 @@
   /**
    * {@inheritdoc}
    */
-  protected function drupalGet($path, array $options = array(), array $headers = array()) {
+  protected function drupalGet($path, array $options = [], array $headers = []) {
     $return = parent::drupalGet($path, $options, $headers);
 
     // After the page loaded we need to additionally wait until the settings
diff --git a/core/modules/page_cache/page_cache.module b/core/modules/page_cache/page_cache.module
index 3b8baf4..ff72861 100644
--- a/core/modules/page_cache/page_cache.module
+++ b/core/modules/page_cache/page_cache.module
@@ -15,7 +15,7 @@ function page_cache_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.page_cache':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Internal Page Cache module caches pages for anonymous users in the database. For more information, see the <a href=":pagecache-documentation">online documentation for the Internal Page Cache module</a>.', array(':pagecache-documentation' => 'https://www.drupal.org/documentation/modules/internal_page_cache')) . '</p>';
+      $output .= '<p>' . t('The Internal Page Cache module caches pages for anonymous users in the database. For more information, see the <a href=":pagecache-documentation">online documentation for the Internal Page Cache module</a>.', [':pagecache-documentation' => 'https://www.drupal.org/documentation/modules/internal_page_cache']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Speeding up your site') . '</dt>';
@@ -23,7 +23,7 @@ function page_cache_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<dd>' . t('Pages are usually identical for all anonymous users, while they can be personalized for each authenticated user. This is why entire pages can be cached for anonymous users, whereas they will have to be rebuilt for every authenticated user.') . '</dd>';
       $output .= '<dd>' . t('To speed up your site for authenticated users, see the <a href=":dynamic_page_cache-help">Dynamic Page Cache module</a>.', [':dynamic_page_cache-help' => (\Drupal::moduleHandler()->moduleExists('dynamic_page_cache')) ? Url::fromRoute('help.page', ['name' => 'dynamic_page_cache'])->toString() : '#']) . '</p>';
       $output .= '<dt>' . t('Configuring the internal page cache') . '</dt>';
-      $output .= '<dd>' . t('On the <a href=":cache-settings">Performance page</a>, you can configure how long browsers and proxies may cache pages; that setting is also respected by the Internal Page Cache module. There is no other configuration.', array(':cache-settings' => \Drupal::url('system.performance_settings'))) . '</dd>';
+      $output .= '<dd>' . t('On the <a href=":cache-settings">Performance page</a>, you can configure how long browsers and proxies may cache pages; that setting is also respected by the Internal Page Cache module. There is no other configuration.', [':cache-settings' => \Drupal::url('system.performance_settings')]) . '</dd>';
       $output .= '</dl>';
 
       return $output;
diff --git a/core/modules/page_cache/src/StackMiddleware/PageCache.php b/core/modules/page_cache/src/StackMiddleware/PageCache.php
index 3a031db..97d53c6 100644
--- a/core/modules/page_cache/src/StackMiddleware/PageCache.php
+++ b/core/modules/page_cache/src/StackMiddleware/PageCache.php
@@ -168,7 +168,7 @@ protected function lookup(Request $request, $type = self::MASTER_REQUEST, $catch
         // In the case of a 304 response, certain headers must be sent, and the
         // remaining may not (see RFC 2616, section 10.3.5).
         foreach (array_keys($response->headers->all()) as $name) {
-          if (!in_array($name, array('content-location', 'expires', 'cache-control', 'vary'))) {
+          if (!in_array($name, ['content-location', 'expires', 'cache-control', 'vary'])) {
             $response->headers->remove($name);
           }
         }
@@ -357,10 +357,10 @@ protected function set(Request $request, Response $response, $expire, array $tag
    *   The cache ID for this request.
    */
   protected function getCacheId(Request $request) {
-    $cid_parts = array(
+    $cid_parts = [
       $request->getUri(),
       $request->getRequestFormat(),
-    );
+    ];
     return implode(':', $cid_parts);
   }
 
diff --git a/core/modules/page_cache/src/Tests/PageCacheTagsIntegrationTest.php b/core/modules/page_cache/src/Tests/PageCacheTagsIntegrationTest.php
index 2c945fd..c3aeb84 100644
--- a/core/modules/page_cache/src/Tests/PageCacheTagsIntegrationTest.php
+++ b/core/modules/page_cache/src/Tests/PageCacheTagsIntegrationTest.php
@@ -39,32 +39,32 @@ protected function setUp() {
   function testPageCacheTags() {
     // Create two nodes.
     $author_1 = $this->drupalCreateUser();
-    $node_1 = $this->drupalCreateNode(array(
+    $node_1 = $this->drupalCreateNode([
       'uid' => $author_1->id(),
       'title' => 'Node 1',
-      'body' => array(
-        0 => array('value' => 'Body 1', 'format' => 'basic_html'),
-      ),
+      'body' => [
+        0 => ['value' => 'Body 1', 'format' => 'basic_html'],
+      ],
       'promote' => NodeInterface::PROMOTED,
-    ));
+    ]);
     $author_2 = $this->drupalCreateUser();
-    $node_2 = $this->drupalCreateNode(array(
+    $node_2 = $this->drupalCreateNode([
       'uid' => $author_2->id(),
       'title' => 'Node 2',
-      'body' => array(
-        0 => array('value' => 'Body 2', 'format' => 'full_html'),
-      ),
+      'body' => [
+        0 => ['value' => 'Body 2', 'format' => 'full_html'],
+      ],
       'promote' => NodeInterface::PROMOTED,
-    ));
+    ]);
 
     // Place a block, but only make it visible on full node page 2.
-    $block = $this->drupalPlaceBlock('views_block:comments_recent-block_1', array(
-      'visibility' => array(
-        'request_path' => array(
+    $block = $this->drupalPlaceBlock('views_block:comments_recent-block_1', [
+      'visibility' => [
+        'request_path' => [
           'pages' => '/node/' . $node_2->id(),
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $cache_contexts = [
       'languages:' . LanguageInterface::TYPE_INTERFACE,
@@ -79,7 +79,7 @@ function testPageCacheTags() {
     ];
 
     // Full node page 1.
-    $this->assertPageCacheContextsAndTags($node_1->urlInfo(), $cache_contexts, array(
+    $this->assertPageCacheContextsAndTags($node_1->urlInfo(), $cache_contexts, [
       'http_response',
       'rendered',
       'block_view',
@@ -114,13 +114,13 @@ function testPageCacheTags() {
       // FinishResponseSubscriber adds this cache tag to responses that have the
       // 'user.permissions' cache context for anonymous users.
       'config:user.role.anonymous',
-    ));
+    ]);
 
     // Render the view block adds the languages cache context.
     $cache_contexts[] = 'languages:' . LanguageInterface::TYPE_CONTENT;
 
     // Full node page 2.
-    $this->assertPageCacheContextsAndTags($node_2->urlInfo(), $cache_contexts, array(
+    $this->assertPageCacheContextsAndTags($node_2->urlInfo(), $cache_contexts, [
       'http_response',
       'rendered',
       'block_view',
@@ -158,7 +158,7 @@ function testPageCacheTags() {
       // 'user.permissions' cache context for anonymous users.
       'config:user.role.anonymous',
       'user:0',
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/page_cache/src/Tests/PageCacheTest.php b/core/modules/page_cache/src/Tests/PageCacheTest.php
index d4fae54..aec0451 100644
--- a/core/modules/page_cache/src/Tests/PageCacheTest.php
+++ b/core/modules/page_cache/src/Tests/PageCacheTest.php
@@ -24,7 +24,7 @@ class PageCacheTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('test_page_test', 'system_test', 'entity_test');
+  public static $modules = ['test_page_test', 'system_test', 'entity_test'];
 
   /**
    * {@inheritdoc}
@@ -50,24 +50,24 @@ function testPageCacheTags() {
     $config->save();
 
     $path = 'system-test/cache_tags_page';
-    $tags = array('system_test_cache_tags_page');
+    $tags = ['system_test_cache_tags_page'];
     $this->drupalGet($path);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags.
     $this->drupalGet($path);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('system_test.cache_tags_page', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = [\Drupal::url('system_test.cache_tags_page', [], ['absolute' => TRUE]), 'html'];
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
     sort($cache_entry->tags);
-    $expected_tags = array(
+    $expected_tags = [
       'config:user.role.anonymous',
       'http_response',
       'pre_render',
       'rendered',
       'system_test_cache_tags_page',
-    );
+    ];
     $this->assertIdentical($cache_entry->tags, $expected_tags);
 
     Cache::invalidateTags($tags);
@@ -82,24 +82,24 @@ function testPageCacheTagsIndependentFromCacheabilityHeaders() {
     $this->setHttpResponseDebugCacheabilityHeaders(FALSE);
 
     $path = 'system-test/cache_tags_page';
-    $tags = array('system_test_cache_tags_page');
+    $tags = ['system_test_cache_tags_page'];
     $this->drupalGet($path);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS');
 
     // Verify a cache hit, but also the presence of the correct cache tags.
     $this->drupalGet($path);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-    $cid_parts = array(\Drupal::url('system_test.cache_tags_page', array(), array('absolute' => TRUE)), 'html');
+    $cid_parts = [\Drupal::url('system_test.cache_tags_page', [], ['absolute' => TRUE]), 'html'];
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
     sort($cache_entry->tags);
-    $expected_tags = array(
+    $expected_tags = [
       'config:user.role.anonymous',
       'http_response',
       'pre_render',
       'rendered',
       'system_test_cache_tags_page',
-    );
+    ];
     $this->assertIdentical($cache_entry->tags, $expected_tags);
 
     Cache::invalidateTags($tags);
@@ -190,28 +190,28 @@ function testConditionalRequests() {
     $etag = $this->drupalGetHeader('ETag');
     $last_modified = $this->drupalGetHeader('Last-Modified');
 
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . $last_modified, 'If-None-Match: ' . $etag));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . $last_modified, 'If-None-Match: ' . $etag]);
     $this->assertResponse(304, 'Conditional request returned 304 Not Modified.');
 
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . gmdate(DATE_RFC822, strtotime($last_modified)), 'If-None-Match: ' . $etag));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . gmdate(DATE_RFC822, strtotime($last_modified)), 'If-None-Match: ' . $etag]);
     $this->assertResponse(304, 'Conditional request with obsolete If-Modified-Since date returned 304 Not Modified.');
 
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . gmdate(DATE_RFC850, strtotime($last_modified)), 'If-None-Match: ' . $etag));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . gmdate(DATE_RFC850, strtotime($last_modified)), 'If-None-Match: ' . $etag]);
     $this->assertResponse(304, 'Conditional request with obsolete If-Modified-Since date returned 304 Not Modified.');
 
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . $last_modified));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . $last_modified]);
     // Verify the page is not printed twice when the cache is warm.
     $this->assertNoPattern('#<html.*<html#');
     $this->assertResponse(200, 'Conditional request without If-None-Match returned 200 OK.');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
 
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . gmdate(DateTimePlus::RFC7231, strtotime($last_modified) + 1), 'If-None-Match: ' . $etag));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . gmdate(DateTimePlus::RFC7231, strtotime($last_modified) + 1), 'If-None-Match: ' . $etag]);
     $this->assertResponse(200, 'Conditional request with new a If-Modified-Since date newer than Last-Modified returned 200 OK.');
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
 
     $user = $this->drupalCreateUser();
     $this->drupalLogin($user);
-    $this->drupalGet('', array(), array('If-Modified-Since: ' . $last_modified, 'If-None-Match: ' . $etag));
+    $this->drupalGet('', [], ['If-Modified-Since: ' . $last_modified, 'If-None-Match: ' . $etag]);
     $this->assertResponse(200, 'Conditional request returned 200 OK for authenticated user.');
     $this->assertFalse($this->drupalGetHeader('X-Drupal-Cache'), 'Absence of Page was not cached.');
   }
@@ -226,7 +226,7 @@ function testPageCache() {
     $config->save();
 
     // Fill the cache.
-    $this->drupalGet('system-test/set-header', array('query' => array('name' => 'Foo', 'value' => 'bar')));
+    $this->drupalGet('system-test/set-header', ['query' => ['name' => 'Foo', 'value' => 'bar']]);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'MISS', 'Page was not cached.');
     $this->assertEqual(strtolower($this->drupalGetHeader('Vary')), 'cookie,accept-encoding', 'Vary header was sent.');
     // Symfony's Response logic determines a specific order for the subvalues
@@ -237,7 +237,7 @@ function testPageCache() {
     $this->assertEqual($this->drupalGetHeader('Foo'), 'bar', 'Custom header was sent.');
 
     // Check cache.
-    $this->drupalGet('system-test/set-header', array('query' => array('name' => 'Foo', 'value' => 'bar')));
+    $this->drupalGet('system-test/set-header', ['query' => ['name' => 'Foo', 'value' => 'bar']]);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
     $this->assertEqual(strtolower($this->drupalGetHeader('Vary')), 'cookie,accept-encoding', 'Vary: Cookie header was sent.');
     $this->assertEqual($this->drupalGetHeader('Cache-Control'), 'max-age=300, public', 'Cache-Control header was sent.');
@@ -245,15 +245,15 @@ function testPageCache() {
     $this->assertEqual($this->drupalGetHeader('Foo'), 'bar', 'Custom header was sent.');
 
     // Check replacing default headers.
-    $this->drupalGet('system-test/set-header', array('query' => array('name' => 'Expires', 'value' => 'Fri, 19 Nov 2008 05:00:00 GMT')));
+    $this->drupalGet('system-test/set-header', ['query' => ['name' => 'Expires', 'value' => 'Fri, 19 Nov 2008 05:00:00 GMT']]);
     $this->assertEqual($this->drupalGetHeader('Expires'), 'Fri, 19 Nov 2008 05:00:00 GMT', 'Default header was replaced.');
-    $this->drupalGet('system-test/set-header', array('query' => array('name' => 'Vary', 'value' => 'User-Agent')));
+    $this->drupalGet('system-test/set-header', ['query' => ['name' => 'Vary', 'value' => 'User-Agent']]);
     $this->assertEqual(strtolower($this->drupalGetHeader('Vary')), 'user-agent,accept-encoding', 'Default header was replaced.');
 
     // Check that authenticated users bypass the cache.
     $user = $this->drupalCreateUser();
     $this->drupalLogin($user);
-    $this->drupalGet('system-test/set-header', array('query' => array('name' => 'Foo', 'value' => 'bar')));
+    $this->drupalGet('system-test/set-header', ['query' => ['name' => 'Foo', 'value' => 'bar']]);
     $this->assertFalse($this->drupalGetHeader('X-Drupal-Cache'), 'Caching was bypassed.');
     $this->assertTrue(strpos(strtolower($this->drupalGetHeader('Vary')), 'cookie') === FALSE, 'Vary: Cookie header was not sent.');
     $this->assertEqual($this->drupalGetHeader('Cache-Control'), 'must-revalidate, no-cache, private', 'Cache-Control header was sent.');
@@ -349,16 +349,16 @@ function testPageCacheAnonymous403404() {
       $this->drupalGet($content_url);
       $this->assertResponse($code);
       $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT');
-      $entity_values = array(
+      $entity_values = [
         'name' => $this->randomMachineName(),
         'user_id' => 1,
-        'field_test_text' => array(
-          0 => array(
+        'field_test_text' => [
+          0 => [
             'value' => $this->randomString(),
             'format' => 'plain_text',
-          )
-        ),
-      );
+          ]
+        ],
+      ];
       $entity = EntityTest::create($entity_values);
       $entity->save();
       // Saving an entity clears 4xx cache tag.
@@ -389,10 +389,10 @@ function testPageCacheAnonymous403404() {
     }
 
     // Disable 403 and 404 caching.
-    $settings['settings']['cache_ttl_4xx'] = (object) array(
+    $settings['settings']['cache_ttl_4xx'] = (object) [
       'value' => 0,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
     \Drupal::service('cache.render')->deleteAll();
 
@@ -413,10 +413,10 @@ public function testPageCacheWithoutVaryCookie() {
     $config->set('cache.page.max_age', 300);
     $config->save();
 
-    $settings['settings']['omit_vary_cookie'] = (object) array(
+    $settings['settings']['omit_vary_cookie'] = (object) [
       'value' => TRUE,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
 
     // Fill the cache.
diff --git a/core/modules/path/path.api.php b/core/modules/path/path.api.php
index 04e1fb3..df20b95 100644
--- a/core/modules/path/path.api.php
+++ b/core/modules/path/path.api.php
@@ -21,10 +21,10 @@
  */
 function hook_path_insert($path) {
   db_insert('mytable')
-    ->fields(array(
+    ->fields([
       'alias' => $path['alias'],
       'pid' => $path['pid'],
-    ))
+    ])
     ->execute();
 }
 
@@ -40,7 +40,7 @@ function hook_path_insert($path) {
 function hook_path_update($path) {
   if ($path['alias'] != $path['original']['alias']) {
     db_update('mytable')
-      ->fields(array('alias' => $path['alias']))
+      ->fields(['alias' => $path['alias']])
       ->condition('pid', $path['pid'])
       ->execute();
   }
diff --git a/core/modules/path/path.module b/core/modules/path/path.module
index 182c6a9..a724b77 100644
--- a/core/modules/path/path.module
+++ b/core/modules/path/path.module
@@ -18,13 +18,13 @@ function path_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.path':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Path module allows you to specify an alias, or custom URL, for any existing internal system path. Aliases should not be confused with URL redirects, which allow you to forward a changed or inactive URL to a new URL. In addition to making URLs more readable, aliases also help search engines index content more effectively. Multiple aliases may be used for a single internal system path. To automate the aliasing of paths, you can install the contributed module <a href=":pathauto">Pathauto</a>. For more information, see the <a href=":path">online documentation for the Path module</a>.', array(':path' => 'https://www.drupal.org/documentation/modules/path', ':pathauto' => 'https://www.drupal.org/project/pathauto')) . '</p>';
+      $output .= '<p>' . t('The Path module allows you to specify an alias, or custom URL, for any existing internal system path. Aliases should not be confused with URL redirects, which allow you to forward a changed or inactive URL to a new URL. In addition to making URLs more readable, aliases also help search engines index content more effectively. Multiple aliases may be used for a single internal system path. To automate the aliasing of paths, you can install the contributed module <a href=":pathauto">Pathauto</a>. For more information, see the <a href=":path">online documentation for the Path module</a>.', [':path' => 'https://www.drupal.org/documentation/modules/path', ':pathauto' => 'https://www.drupal.org/project/pathauto']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating aliases') . '</dt>';
-      $output .= '<dd>' . t('If you create or edit a taxonomy term you can add an alias (for example <em>music/jazz</em>) in the field "URL alias". When creating or editing content you can add an alias (for example <em>about-us/team</em>) under the section "URL path settings" in the field "URL alias". Aliases for any other path can be added through the page <a href=":aliases">URL aliases</a>. To add aliases a user needs the permission <a href=":permissions">Create and edit URL aliases</a>.', array(':aliases' => \Drupal::url('path.admin_overview'), ':permissions' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-path')))) . '</dd>';
+      $output .= '<dd>' . t('If you create or edit a taxonomy term you can add an alias (for example <em>music/jazz</em>) in the field "URL alias". When creating or editing content you can add an alias (for example <em>about-us/team</em>) under the section "URL path settings" in the field "URL alias". Aliases for any other path can be added through the page <a href=":aliases">URL aliases</a>. To add aliases a user needs the permission <a href=":permissions">Create and edit URL aliases</a>.', [':aliases' => \Drupal::url('path.admin_overview'), ':permissions' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-path'])]) . '</dd>';
       $output .= '<dt>' . t('Managing aliases') . '</dt>';
-      $output .= '<dd>' . t('The Path module provides a way to search and view a <a href=":aliases">list of all aliases</a> that are in use on your website. Aliases can be added, edited and deleted through this list.', array(':aliases' => \Drupal::url('path.admin_overview'))) . '</dd>';
+      $output .= '<dd>' . t('The Path module provides a way to search and view a <a href=":aliases">list of all aliases</a> that are in use on your website. Aliases can be added, edited and deleted through this list.', [':aliases' => \Drupal::url('path.admin_overview')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -41,20 +41,20 @@ function path_help($route_name, RouteMatchInterface $route_match) {
  */
 function path_form_node_form_alter(&$form, FormStateInterface $form_state) {
   $node = $form_state->getFormObject()->getEntity();
-  $form['path_settings'] = array(
+  $form['path_settings'] = [
     '#type' => 'details',
     '#title' => t('URL path settings'),
     '#open' => !empty($form['path']['widget'][0]['alias']['#value']),
     '#group' => 'advanced',
     '#access' => !empty($form['path']['#access']) && $node->hasField('path') && $node->get('path')->access('edit'),
-    '#attributes' => array(
-      'class' => array('path-form'),
-    ),
-    '#attached' => array(
-      'library' => array('path/drupal.path'),
-    ),
+    '#attributes' => [
+      'class' => ['path-form'],
+    ],
+    '#attached' => [
+      'library' => ['path/drupal.path'],
+    ],
     '#weight' => 30,
-  );
+  ];
   $form['path']['#group'] = 'path_settings';
 }
 
@@ -66,10 +66,10 @@ function path_entity_base_field_info(EntityTypeInterface $entity_type) {
     $fields['path'] = BaseFieldDefinition::create('path')
       ->setLabel(t('URL alias'))
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'path',
         'weight' => 30,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE)
       ->setComputed(TRUE);
 
diff --git a/core/modules/path/src/Controller/PathController.php b/core/modules/path/src/Controller/PathController.php
index 26b5d76..51f88dd 100644
--- a/core/modules/path/src/Controller/PathController.php
+++ b/core/modules/path/src/Controller/PathController.php
@@ -69,63 +69,63 @@ public function adminOverview(Request $request) {
     // alias with a language.
     $multilanguage = ($this->moduleHandler()->moduleExists('language') || $this->aliasStorage->languageAliasExists());
 
-    $header = array();
-    $header[] = array('data' => $this->t('Alias'), 'field' => 'alias', 'sort' => 'asc');
-    $header[] = array('data' => $this->t('System'), 'field' => 'source');
+    $header = [];
+    $header[] = ['data' => $this->t('Alias'), 'field' => 'alias', 'sort' => 'asc'];
+    $header[] = ['data' => $this->t('System'), 'field' => 'source'];
     if ($multilanguage) {
-      $header[] = array('data' => $this->t('Language'), 'field' => 'langcode');
+      $header[] = ['data' => $this->t('Language'), 'field' => 'langcode'];
     }
     $header[] = $this->t('Operations');
 
-    $rows = array();
+    $rows = [];
     $destination = $this->getDestinationArray();
     foreach ($this->aliasStorage->getAliasesForAdminListing($header, $keys) as $data) {
-      $row = array();
+      $row = [];
       // @todo Should Path module store leading slashes? See
       //   https://www.drupal.org/node/2430593.
-      $row['data']['alias'] = $this->l(Unicode::truncate($data->alias, 50, FALSE, TRUE), Url::fromUserInput($data->source, array(
-        'attributes' => array('title' => $data->alias),
-      )));
-      $row['data']['source'] = $this->l(Unicode::truncate($data->source, 50, FALSE, TRUE), Url::fromUserInput($data->source, array(
+      $row['data']['alias'] = $this->l(Unicode::truncate($data->alias, 50, FALSE, TRUE), Url::fromUserInput($data->source, [
+        'attributes' => ['title' => $data->alias],
+      ]));
+      $row['data']['source'] = $this->l(Unicode::truncate($data->source, 50, FALSE, TRUE), Url::fromUserInput($data->source, [
         'alias' => TRUE,
-        'attributes' => array('title' => $data->source),
-      )));
+        'attributes' => ['title' => $data->source],
+      ]));
       if ($multilanguage) {
         $row['data']['language_name'] = $this->languageManager()->getLanguageName($data->langcode);
       }
 
-      $operations = array();
-      $operations['edit'] = array(
+      $operations = [];
+      $operations['edit'] = [
         'title' => $this->t('Edit'),
         'url' => Url::fromRoute('path.admin_edit', ['pid' => $data->pid], ['query' => $destination]),
-      );
-      $operations['delete'] = array(
+      ];
+      $operations['delete'] = [
         'title' => $this->t('Delete'),
         'url' => Url::fromRoute('path.delete', ['pid' => $data->pid], ['query' => $destination]),
-      );
-      $row['data']['operations'] = array(
-        'data' => array(
+      ];
+      $row['data']['operations'] = [
+        'data' => [
           '#type' => 'operations',
           '#links' => $operations,
-        ),
-      );
+        ],
+      ];
 
       // If the system path maps to a different URL alias, highlight this table
       // row to let the user know of old aliases.
       if ($data->alias != $this->aliasManager->getAliasByPath($data->source, $data->langcode)) {
-        $row['class'] = array('warning');
+        $row['class'] = ['warning'];
       }
 
       $rows[] = $row;
     }
 
-    $build['path_table'] = array(
+    $build['path_table'] = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
-      '#empty' => $this->t('No URL aliases available. <a href=":link">Add URL alias</a>.', array(':link' => $this->url('path.admin_add'))),
-    );
-    $build['path_pager'] = array('#type' => 'pager');
+      '#empty' => $this->t('No URL aliases available. <a href=":link">Add URL alias</a>.', [':link' => $this->url('path.admin_add')]),
+    ];
+    $build['path_pager'] = ['#type' => 'pager'];
 
     return $build;
   }
diff --git a/core/modules/path/src/Form/AddForm.php b/core/modules/path/src/Form/AddForm.php
index 5b7acef..8f8d4f6 100644
--- a/core/modules/path/src/Form/AddForm.php
+++ b/core/modules/path/src/Form/AddForm.php
@@ -20,12 +20,12 @@ public function getFormId() {
    * {@inheritdoc}
    */
   protected function buildPath($pid) {
-    return array(
+    return [
       'source' => '',
       'alias' => '',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
       'pid' => NULL,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/path/src/Form/DeleteForm.php b/core/modules/path/src/Form/DeleteForm.php
index 45cd9a2..b28fdc0 100644
--- a/core/modules/path/src/Form/DeleteForm.php
+++ b/core/modules/path/src/Form/DeleteForm.php
@@ -57,7 +57,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return t('Are you sure you want to delete path alias %title?', array('%title' => $this->pathAlias['alias']));
+    return t('Are you sure you want to delete path alias %title?', ['%title' => $this->pathAlias['alias']]);
   }
 
   /**
@@ -71,7 +71,7 @@ public function getCancelUrl() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $pid = NULL) {
-    $this->pathAlias = $this->aliasStorage->load(array('pid' => $pid));
+    $this->pathAlias = $this->aliasStorage->load(['pid' => $pid]);
 
     $form = parent::buildForm($form, $form_state);
 
@@ -82,7 +82,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $pid = NU
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $this->aliasStorage->delete(array('pid' => $this->pathAlias['pid']));
+    $this->aliasStorage->delete(['pid' => $this->pathAlias['pid']]);
 
     $form_state->setRedirect('path.admin_overview');
   }
diff --git a/core/modules/path/src/Form/EditForm.php b/core/modules/path/src/Form/EditForm.php
index aeb285d..7d4a369 100644
--- a/core/modules/path/src/Form/EditForm.php
+++ b/core/modules/path/src/Form/EditForm.php
@@ -21,7 +21,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   protected function buildPath($pid) {
-    return $this->aliasStorage->load(array('pid' => $pid));
+    return $this->aliasStorage->load(['pid' => $pid]);
   }
 
   /**
@@ -31,27 +31,27 @@ public function buildForm(array $form, FormStateInterface $form_state, $pid = NU
     $form = parent::buildForm($form, $form_state, $pid);
 
     $form['#title'] = $this->path['alias'];
-    $form['pid'] = array(
+    $form['pid'] = [
       '#type' => 'hidden',
       '#value' => $this->path['pid'],
-    );
+    ];
 
-    $url = new Url('path.delete', array(
+    $url = new Url('path.delete', [
       'pid' => $this->path['pid'],
-    ));
+    ]);
 
     if ($this->getRequest()->query->has('destination')) {
       $url->setOption('query', $this->getDestinationArray());
     }
 
-    $form['actions']['delete'] = array(
+    $form['actions']['delete'] = [
       '#type' => 'link',
       '#title' => $this->t('Delete'),
       '#url' => $url,
-      '#attributes' => array(
-        'class' => array('button', 'button--danger'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['button', 'button--danger'],
+      ],
+    ];
 
     return $form;
   }
diff --git a/core/modules/path/src/Form/PathFilterForm.php b/core/modules/path/src/Form/PathFilterForm.php
index 6ac1585..f782906 100644
--- a/core/modules/path/src/Form/PathFilterForm.php
+++ b/core/modules/path/src/Form/PathFilterForm.php
@@ -21,31 +21,31 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $keys = NULL) {
-    $form['#attributes'] = array('class' => array('search-form'));
-    $form['basic'] = array(
+    $form['#attributes'] = ['class' => ['search-form']];
+    $form['basic'] = [
       '#type' => 'details',
       '#title' => $this->t('Filter aliases'),
       '#open' => TRUE,
-      '#attributes' => array('class' => array('container-inline')),
-    );
-    $form['basic']['filter'] = array(
+      '#attributes' => ['class' => ['container-inline']],
+    ];
+    $form['basic']['filter'] = [
       '#type' => 'search',
       '#title' => 'Path alias',
       '#title_display' => 'invisible',
       '#default_value' => $keys,
       '#maxlength' => 128,
       '#size' => 25,
-    );
-    $form['basic']['submit'] = array(
+    ];
+    $form['basic']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Filter'),
-    );
+    ];
     if ($keys) {
-      $form['basic']['reset'] = array(
+      $form['basic']['reset'] = [
         '#type' => 'submit',
         '#value' => $this->t('Reset'),
-        '#submit' => array('::resetForm'),
-      );
+        '#submit' => ['::resetForm'],
+      ];
     }
     return $form;
   }
@@ -54,9 +54,9 @@ public function buildForm(array $form, FormStateInterface $form_state, $keys = N
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $form_state->setRedirect('path.admin_overview_filter', array(), array(
-      'query' => array('search' => trim($form_state->getValue('filter'))),
-    ));
+    $form_state->setRedirect('path.admin_overview_filter', [], [
+      'query' => ['search' => trim($form_state->getValue('filter'))],
+    ]);
   }
 
   /**
diff --git a/core/modules/path/src/Form/PathFormBase.php b/core/modules/path/src/Form/PathFormBase.php
index dba3a3f..884d24f 100644
--- a/core/modules/path/src/Form/PathFormBase.php
+++ b/core/modules/path/src/Form/PathFormBase.php
@@ -95,7 +95,7 @@ public static function create(ContainerInterface $container) {
    */
   public function buildForm(array $form, FormStateInterface $form_state, $pid = NULL) {
     $this->path = $this->buildPath($pid);
-    $form['source'] = array(
+    $form['source'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Existing system path'),
       '#default_value' => $this->path['source'],
@@ -104,8 +104,8 @@ public function buildForm(array $form, FormStateInterface $form_state, $pid = NU
       '#description' => $this->t('Specify the existing path you wish to alias. For example: /node/28, /forum/1, /taxonomy/term/1.'),
       '#field_prefix' => $this->requestContext->getCompleteBaseUrl(),
       '#required' => TRUE,
-    );
-    $form['alias'] = array(
+    ];
+    $form['alias'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Path alias'),
       '#default_value' => $this->path['alias'],
@@ -114,17 +114,17 @@ public function buildForm(array $form, FormStateInterface $form_state, $pid = NU
       '#description' => $this->t('Specify an alternative path by which this data can be accessed. For example, type "/about" when writing an about page.'),
       '#field_prefix' => $this->requestContext->getCompleteBaseUrl(),
       '#required' => TRUE,
-    );
+    ];
 
     // A hidden value unless language.module is enabled.
     if (\Drupal::moduleHandler()->moduleExists('language')) {
       $languages = \Drupal::languageManager()->getLanguages();
-      $language_options = array();
+      $language_options = [];
       foreach ($languages as $langcode => $language) {
         $language_options[$langcode] = $language->getName();
       }
 
-      $form['langcode'] = array(
+      $form['langcode'] = [
         '#type' => 'select',
         '#title' => $this->t('Language'),
         '#options' => $language_options,
@@ -133,21 +133,21 @@ public function buildForm(array $form, FormStateInterface $form_state, $pid = NU
         '#default_value' => $this->path['langcode'],
         '#weight' => -10,
         '#description' => $this->t('A path alias set for a specific language will always be used when displaying this page in that language, and takes precedence over path aliases set as <em>- None -</em>.'),
-      );
+      ];
     }
     else {
-      $form['langcode'] = array(
+      $form['langcode'] = [
         '#type' => 'value',
         '#value' => $this->path['langcode']
-      );
+      ];
     }
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
       '#button_type' => 'primary',
-    );
+    ];
 
     return $form;
   }
@@ -193,7 +193,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
 
 
     if (!$this->pathValidator->isValid(trim($source, '/'))) {
-      $form_state->setErrorByName('source', t("The path '@link_path' is either invalid or you do not have access to it.", array('@link_path' => $source)));
+      $form_state->setErrorByName('source', t("The path '@link_path' is either invalid or you do not have access to it.", ['@link_path' => $source]));
     }
   }
 
diff --git a/core/modules/path/src/Plugin/Field/FieldType/PathItem.php b/core/modules/path/src/Plugin/Field/FieldType/PathItem.php
index 239588f..4d8da7a 100644
--- a/core/modules/path/src/Plugin/Field/FieldType/PathItem.php
+++ b/core/modules/path/src/Plugin/Field/FieldType/PathItem.php
@@ -37,7 +37,7 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array();
+    return [];
   }
 
   /**
@@ -62,7 +62,7 @@ public function postSave($update) {
     else {
       // Delete old alias if user erased it.
       if ($this->pid && !$this->alias) {
-        \Drupal::service('path.alias_storage')->delete(array('pid' => $this->pid));
+        \Drupal::service('path.alias_storage')->delete(['pid' => $this->pid]);
       }
       // Only save a non-empty alias.
       elseif ($this->alias) {
diff --git a/core/modules/path/src/Plugin/Field/FieldWidget/PathWidget.php b/core/modules/path/src/Plugin/Field/FieldWidget/PathWidget.php
index 366db88..b31af46 100644
--- a/core/modules/path/src/Plugin/Field/FieldWidget/PathWidget.php
+++ b/core/modules/path/src/Plugin/Field/FieldWidget/PathWidget.php
@@ -26,47 +26,47 @@ class PathWidget extends WidgetBase {
    */
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
     $entity = $items->getEntity();
-    $path = array();
+    $path = [];
     if (!$entity->isNew()) {
-      $conditions = array('source' => '/' . $entity->urlInfo()->getInternalPath());
+      $conditions = ['source' => '/' . $entity->urlInfo()->getInternalPath()];
       if ($items->getLangcode() != LanguageInterface::LANGCODE_NOT_SPECIFIED) {
         $conditions['langcode'] = $items->getLangcode();
       }
       $path = \Drupal::service('path.alias_storage')->load($conditions);
       if ($path === FALSE) {
-        $path = array();
+        $path = [];
       }
     }
-    $path += array(
+    $path += [
       'pid' => NULL,
       'source' => !$entity->isNew() ? '/' . $entity->urlInfo()->getInternalPath() : NULL,
       'alias' => '',
       'langcode' => $items->getLangcode(),
-    );
+    ];
 
-    $element += array(
-      '#element_validate' => array(array(get_class($this), 'validateFormElement')),
-    );
-    $element['alias'] = array(
+    $element += [
+      '#element_validate' => [[get_class($this), 'validateFormElement']],
+    ];
+    $element['alias'] = [
       '#type' => 'textfield',
       '#title' => $element['#title'],
       '#default_value' => $path['alias'],
       '#required' => $element['#required'],
       '#maxlength' => 255,
       '#description' => $this->t('Specify an alternative path by which this data can be accessed. For example, type "/about" when writing an about page.'),
-    );
-    $element['pid'] = array(
+    ];
+    $element['pid'] = [
       '#type' => 'value',
       '#value' => $path['pid'],
-    );
-    $element['source'] = array(
+    ];
+    $element['source'] = [
       '#type' => 'value',
       '#value' => $path['source'],
-    );
-    $element['langcode'] = array(
+    ];
+    $element['langcode'] = [
       '#type' => 'value',
       '#value' => $path['langcode'],
-    );
+    ];
     return $element;
   }
 
diff --git a/core/modules/path/src/Plugin/migrate/destination/UrlAlias.php b/core/modules/path/src/Plugin/migrate/destination/UrlAlias.php
index a71bcc9..385ee4b 100644
--- a/core/modules/path/src/Plugin/migrate/destination/UrlAlias.php
+++ b/core/modules/path/src/Plugin/migrate/destination/UrlAlias.php
@@ -58,7 +58,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $source = $row->getDestinationProperty('source');
     $alias = $row->getDestinationProperty('alias');
     $langcode = $row->getDestinationProperty('langcode');
@@ -75,7 +75,7 @@ public function import(Row $row, array $old_destination_id_values = array()) {
 
     $path = $this->aliasStorage->save($source, $alias, $langcode, $pid);
 
-    return array($path['pid']);
+    return [$path['pid']];
   }
 
   /**
diff --git a/core/modules/path/src/Plugin/migrate/source/UrlAliasBase.php b/core/modules/path/src/Plugin/migrate/source/UrlAliasBase.php
index 3529ce2..7714cbd 100644
--- a/core/modules/path/src/Plugin/migrate/source/UrlAliasBase.php
+++ b/core/modules/path/src/Plugin/migrate/source/UrlAliasBase.php
@@ -24,10 +24,10 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'pid' => $this->t('The numeric identifier of the path alias.'),
       'language' => $this->t('The language code of the URL alias.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/path/src/Tests/PathAdminTest.php b/core/modules/path/src/Tests/PathAdminTest.php
index 906ce64..67f41bd 100644
--- a/core/modules/path/src/Tests/PathAdminTest.php
+++ b/core/modules/path/src/Tests/PathAdminTest.php
@@ -14,13 +14,13 @@ class PathAdminTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path');
+  public static $modules = ['path'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create test user and log in.
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit own page content', 'administer url aliases', 'create url aliases'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit own page content', 'administer url aliases', 'create url aliases']);
     $this->drupalLogin($web_user);
   }
 
@@ -35,63 +35,63 @@ public function testPathFiltering() {
 
     // Create aliases.
     $alias1 = '/' . $this->randomMachineName(8);
-    $edit = array(
+    $edit = [
       'source' => '/node/' . $node1->id(),
       'alias' => $alias1,
-    );
+    ];
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
 
     $alias2 = '/' . $this->randomMachineName(8);
-    $edit = array(
+    $edit = [
       'source' => '/node/' . $node2->id(),
       'alias' => $alias2,
-    );
+    ];
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
 
     $alias3 = '/' . $this->randomMachineName(4) . '/' . $this->randomMachineName(4);
-    $edit = array(
+    $edit = [
       'source' => '/node/' . $node3->id(),
       'alias' => $alias3,
-    );
+    ];
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
 
     // Filter by the first alias.
-    $edit = array(
+    $edit = [
       'filter' => $alias1,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Filter'));
     $this->assertLinkByHref($alias1);
     $this->assertNoLinkByHref($alias2);
     $this->assertNoLinkByHref($alias3);
 
     // Filter by the second alias.
-    $edit = array(
+    $edit = [
       'filter' => $alias2,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Filter'));
     $this->assertNoLinkByHref($alias1);
     $this->assertLinkByHref($alias2);
     $this->assertNoLinkByHref($alias3);
 
     // Filter by the third alias which has a slash.
-    $edit = array(
+    $edit = [
       'filter' => $alias3,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Filter'));
     $this->assertNoLinkByHref($alias1);
     $this->assertNoLinkByHref($alias2);
     $this->assertLinkByHref($alias3);
 
     // Filter by a random string with a different length.
-    $edit = array(
+    $edit = [
       'filter' => $this->randomMachineName(10),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Filter'));
     $this->assertNoLinkByHref($alias1);
     $this->assertNoLinkByHref($alias2);
 
     // Reset the filter.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm(NULL, $edit, t('Reset'));
     $this->assertLinkByHref($alias1);
     $this->assertLinkByHref($alias2);
diff --git a/core/modules/path/src/Tests/PathNodeFormTest.php b/core/modules/path/src/Tests/PathNodeFormTest.php
index 79b43a7..016ae04 100644
--- a/core/modules/path/src/Tests/PathNodeFormTest.php
+++ b/core/modules/path/src/Tests/PathNodeFormTest.php
@@ -14,13 +14,13 @@ class PathNodeFormTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'path');
+  public static $modules = ['node', 'path'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create test user and log in.
-    $web_user = $this->drupalCreateUser(array('create page content', 'create url aliases'));
+    $web_user = $this->drupalCreateUser(['create page content', 'create url aliases']);
     $this->drupalLogin($web_user);
   }
 
diff --git a/core/modules/path/src/Tests/PathTaxonomyTermTest.php b/core/modules/path/src/Tests/PathTaxonomyTermTest.php
index f62fb6c..b6a853e 100644
--- a/core/modules/path/src/Tests/PathTaxonomyTermTest.php
+++ b/core/modules/path/src/Tests/PathTaxonomyTermTest.php
@@ -16,7 +16,7 @@ class PathTaxonomyTermTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   protected function setUp() {
     parent::setUp();
@@ -29,7 +29,7 @@ protected function setUp() {
     $vocabulary->save();
 
     // Create and log in user.
-    $web_user = $this->drupalCreateUser(array('administer url aliases', 'administer taxonomy', 'access administration pages'));
+    $web_user = $this->drupalCreateUser(['administer url aliases', 'administer taxonomy', 'access administration pages']);
     $this->drupalLogin($web_user);
   }
 
@@ -40,13 +40,13 @@ function testTermAlias() {
     // Create a term in the default 'Tags' vocabulary with URL alias.
     $vocabulary = Vocabulary::load('tags');
     $description = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'name[0][value]' => $this->randomMachineName(),
       'description[0][value]' => $description,
       'path[0][alias]' => '/' . $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $vocabulary->id() . '/add', $edit, t('Save'));
-    $tid = db_query("SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1", array(':name' => $edit['name[0][value]']))->fetchField();
+    $tid = db_query("SELECT tid FROM {taxonomy_term_field_data} WHERE name = :name AND default_langcode = 1", [':name' => $edit['name[0][value]']])->fetchField();
 
     // Confirm that the alias works.
     $this->drupalGet($edit['path[0][alias]']);
@@ -59,7 +59,7 @@ function testTermAlias() {
     $this->assertTrue(!empty($elements), 'Term page contains shortlink URL.');
 
     // Change the term's URL alias.
-    $edit2 = array();
+    $edit2 = [];
     $edit2['path[0][alias]'] = '/' . $this->randomMachineName();
     $this->drupalPostForm('taxonomy/term/' . $tid . '/edit', $edit2, t('Save'));
 
@@ -73,7 +73,7 @@ function testTermAlias() {
     $this->assertResponse(404, 'Old URL alias returns 404.');
 
     // Remove the term's URL alias.
-    $edit3 = array();
+    $edit3 = [];
     $edit3['path[0][alias]'] = '';
     $this->drupalPostForm('taxonomy/term/' . $tid . '/edit', $edit3, t('Save'));
 
diff --git a/core/modules/path/src/Tests/PathTestBase.php b/core/modules/path/src/Tests/PathTestBase.php
index 5349676..33cf5ab 100644
--- a/core/modules/path/src/Tests/PathTestBase.php
+++ b/core/modules/path/src/Tests/PathTestBase.php
@@ -17,15 +17,15 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'path');
+  public static $modules = ['node', 'path'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
diff --git a/core/modules/path/tests/src/Functional/PathAliasTest.php b/core/modules/path/tests/src/Functional/PathAliasTest.php
index 5127853..9684aa9 100644
--- a/core/modules/path/tests/src/Functional/PathAliasTest.php
+++ b/core/modules/path/tests/src/Functional/PathAliasTest.php
@@ -19,13 +19,13 @@ class PathAliasTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path');
+  public static $modules = ['path'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create test user and log in.
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit own page content', 'administer url aliases', 'create url aliases'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit own page content', 'administer url aliases', 'create url aliases']);
     $this->drupalLogin($web_user);
   }
 
@@ -37,7 +37,7 @@ function testPathCache() {
     $node1 = $this->drupalCreateNode();
 
     // Create alias.
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/node/' . $node1->id();
     $edit['alias'] = '/' . $this->randomMachineName(8);
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
@@ -51,7 +51,7 @@ function testPathCache() {
     // created.
     \Drupal::cache('data')->deleteAll();
     // Make sure the path is not converted to the alias.
-    $this->drupalGet(trim($edit['source'], '/'), array('alias' => TRUE));
+    $this->drupalGet(trim($edit['source'], '/'), ['alias' => TRUE]);
     $this->assertTrue(\Drupal::cache('data')->get('preload-paths:' . $edit['source']), 'Cache entry was created.');
 
     // Visit the alias for the node and confirm a cache entry is created.
@@ -70,7 +70,7 @@ function testAdminAlias() {
     $node1 = $this->drupalCreateNode();
 
     // Create alias.
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/node/' . $node1->id();
     $edit['alias'] = '/' . $this->getRandomGenerator()->word(8);
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
@@ -129,7 +129,7 @@ function testAdminAlias() {
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
 
     // Confirm no duplicate was created.
-    $this->assertRaw(t('The alias %alias is already in use in this language.', array('%alias' => $edit['alias'])), 'Attempt to move alias was rejected.');
+    $this->assertRaw(t('The alias %alias is already in use in this language.', ['%alias' => $edit['alias']]), 'Attempt to move alias was rejected.');
 
     $edit_upper = $edit;
     $edit_upper['alias'] = Unicode::strtoupper($edit['alias']);
@@ -142,8 +142,8 @@ function testAdminAlias() {
     // Delete alias.
     $this->drupalGet('admin/config/search/path/edit/' . $pid);
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete path alias %name?', array('%name' => $edit['alias'])));
-    $this->drupalPostForm(NULL, array(), t('Confirm'));
+    $this->assertRaw(t('Are you sure you want to delete path alias %name?', ['%name' => $edit['alias']]));
+    $this->drupalPostForm(NULL, [], t('Confirm'));
 
     // Confirm that the alias no longer works.
     $this->drupalGet($edit['alias']);
@@ -151,7 +151,7 @@ function testAdminAlias() {
     $this->assertResponse(404);
 
     // Create a really long alias.
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/node/' . $node1->id();
     $alias = '/' . $this->randomMachineName(128);
     $edit['alias'] = $alias;
@@ -166,7 +166,7 @@ function testAdminAlias() {
     $node3 = $this->drupalCreateNode();
 
     // Create absolute path alias.
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/node/' . $node3->id();
     $node3_alias = '/' . $this->randomMachineName(8);
     $edit['alias'] = $node3_alias;
@@ -176,7 +176,7 @@ function testAdminAlias() {
     $node4 = $this->drupalCreateNode();
 
     // Create alias with trailing slash.
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/node/' . $node4->id();
     $node4_alias = '/' . $this->randomMachineName(8);
     $edit['alias'] = $node4_alias . '/';
@@ -205,12 +205,12 @@ function testAdminAlias() {
     $edit['alias'] = $node4_alias;
     $edit['source'] = '/node/' . $node3->id();
     $this->drupalPostForm('admin/config/search/path/edit/' . $pid, $edit, t('Save'));
-    $this->assertRaw(t('The alias %alias is already in use in this language.', array('%alias' => $edit['alias'])));
+    $this->assertRaw(t('The alias %alias is already in use in this language.', ['%alias' => $edit['alias']]));
 
     // Create an alias without a starting slash.
     $node5 = $this->drupalCreateNode();
 
-    $edit = array();
+    $edit = [];
     $edit['source'] = 'node/' . $node5->id();
     $node5_alias = $this->randomMachineName(8);
     $edit['alias'] = $node5_alias . '/';
@@ -229,7 +229,7 @@ function testNodeAlias() {
     $node1 = $this->drupalCreateNode();
 
     // Create alias.
-    $edit = array();
+    $edit = [];
     $edit['path[0][alias]'] = '/' . $this->randomMachineName(8);
     $this->drupalPostForm('node/' . $node1->id() . '/edit', $edit, t('Save'));
 
@@ -284,7 +284,7 @@ function testNodeAlias() {
     $this->assertText(t('The alias is already in use.'), 'Attempt to moved alias was rejected.');
 
     // Delete alias.
-    $this->drupalPostForm('node/' . $node1->id() . '/edit', array('path[0][alias]' => ''), t('Save'));
+    $this->drupalPostForm('node/' . $node1->id() . '/edit', ['path[0][alias]' => ''], t('Save'));
 
     // Confirm that the alias no longer works.
     $this->drupalGet($edit['path[0][alias]']);
@@ -295,7 +295,7 @@ function testNodeAlias() {
     $node3 = $this->drupalCreateNode();
 
     // Set its path alias to an absolute path.
-    $edit = array('path[0][alias]' => '/' . $this->randomMachineName(8));
+    $edit = ['path[0][alias]' => '/' . $this->randomMachineName(8)];
     $this->drupalPostForm('node/' . $node3->id() . '/edit', $edit, t('Save'));
 
     // Confirm that the alias was converted to a relative path.
@@ -307,7 +307,7 @@ function testNodeAlias() {
     $node4 = $this->drupalCreateNode();
 
     // Set its path alias to have a trailing slash.
-    $edit = array('path[0][alias]' => '/' . $this->randomMachineName(8) . '/');
+    $edit = ['path[0][alias]' => '/' . $this->randomMachineName(8) . '/'];
     $this->drupalPostForm('node/' . $node4->id() . '/edit', $edit, t('Save'));
 
     // Confirm that the alias was converted to a relative path.
@@ -319,7 +319,7 @@ function testNodeAlias() {
     $node5 = $this->drupalCreateNode();
 
     // Set a path alias.
-    $edit = array('path[0][alias]' => '/' . $this->randomMachineName(8));
+    $edit = ['path[0][alias]' => '/' . $this->randomMachineName(8)];
     $this->drupalPostForm('node/' . $node5->id() . '/edit', $edit, t('Save'));
 
     // Delete the node and check that the path alias is also deleted.
@@ -338,7 +338,7 @@ function testNodeAlias() {
    *   Integer representing the path ID.
    */
   function getPID($alias) {
-    return db_query("SELECT pid FROM {url_alias} WHERE alias = :alias", array(':alias' => $alias))->fetchField();
+    return db_query("SELECT pid FROM {url_alias} WHERE alias = :alias", [':alias' => $alias])->fetchField();
   }
 
   /**
@@ -347,7 +347,7 @@ function getPID($alias) {
   function testDuplicateNodeAlias() {
     // Create one node with a random alias.
     $node_one = $this->drupalCreateNode();
-    $edit = array();
+    $edit = [];
     $edit['path[0][alias]'] = '/' . $this->randomMachineName();
     $this->drupalPostForm('node/' . $node_one->id() . '/edit', $edit, t('Save'));
 
diff --git a/core/modules/path/tests/src/Functional/PathLanguageTest.php b/core/modules/path/tests/src/Functional/PathLanguageTest.php
index 08fe7a4..cd56557 100644
--- a/core/modules/path/tests/src/Functional/PathLanguageTest.php
+++ b/core/modules/path/tests/src/Functional/PathLanguageTest.php
@@ -14,7 +14,7 @@ class PathLanguageTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'locale', 'locale_test', 'content_translation');
+  public static $modules = ['path', 'locale', 'locale_test', 'content_translation'];
 
   /**
    * An user with permissions to administer content types.
@@ -26,7 +26,7 @@ class PathLanguageTest extends PathTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $permissions = array(
+    $permissions = [
       'access administration pages',
       'administer content translation',
       'administer content types',
@@ -37,29 +37,29 @@ protected function setUp() {
       'create url aliases',
       'edit any page content',
       'translate any entity',
-    );
+    ];
     // Create and log in user.
     $this->webUser = $this->drupalCreateUser($permissions);
     $this->drupalLogin($this->webUser);
 
     // Enable French language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
 
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => 1);
+    $edit = ['language_interface[enabled][language-url]' => 1];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Enable translation for page node.
-    $edit = array(
+    $edit = [
       'entity_types[node]' => 1,
       'settings[node][page][translatable]' => 1,
       'settings[node][page][fields][path]' => 1,
       'settings[node][page][fields][body]' => 1,
       'settings[node][page][settings][language][language_alterable]' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     \Drupal::entityManager()->clearCachedDefinitions();
 
@@ -73,11 +73,11 @@ protected function setUp() {
    */
   function testAliasTranslation() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
-    $english_node = $this->drupalCreateNode(array('type' => 'page', 'langcode' => 'en'));
+    $english_node = $this->drupalCreateNode(['type' => 'page', 'langcode' => 'en']);
     $english_alias = $this->randomMachineName();
 
     // Edit the node to set language and path.
-    $edit = array();
+    $edit = [];
     $edit['path[0][alias]'] = '/' . $english_alias;
     $this->drupalPostForm('node/' . $english_node->id() . '/edit', $edit, t('Save'));
 
@@ -89,7 +89,7 @@ function testAliasTranslation() {
     $this->drupalGet('node/' . $english_node->id() . '/translations');
     $this->clickLink(t('Add'));
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['body[0][value]'] = $this->randomMachineName();
     $french_alias = $this->randomMachineName();
@@ -105,7 +105,7 @@ function testAliasTranslation() {
     $languages = $this->container->get('language_manager')->getLanguages();
 
     // Ensure the node was created.
-    $node_storage->resetCache(array($english_node->id()));
+    $node_storage->resetCache([$english_node->id()]);
     $english_node = $node_storage->load($english_node->id());
     $english_node_french_translation = $english_node->getTranslation('fr');
     $this->assertTrue($english_node->hasTranslation('fr'), 'Node found in database.');
@@ -118,22 +118,22 @@ function testAliasTranslation() {
     // many levels, and we need to clear those caches.
     $this->container->get('language_manager')->reset();
     $languages = $this->container->get('language_manager')->getLanguages();
-    $url = $english_node_french_translation->url('canonical', array('language' => $languages['fr']));
+    $url = $english_node_french_translation->url('canonical', ['language' => $languages['fr']]);
 
     $this->assertTrue(strpos($url, $edit['path[0][alias]']), 'URL contains the path alias.');
 
     // Confirm that the alias works even when changing language negotiation
     // options. Enable User language detection and selection over URL one.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-user]' => 1,
       'language_interface[weight][language-user]' => -9,
       'language_interface[enabled][language-url]' => 1,
       'language_interface[weight][language-url]' => -8,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Change user language preference.
-    $edit = array('preferred_langcode' => 'fr');
+    $edit = ['preferred_langcode' => 'fr'];
     $this->drupalPostForm("user/" . $this->webUser->id() . "/edit", $edit, t('Save'));
 
     // Check that the English alias works. In this situation French is the
@@ -152,7 +152,7 @@ function testAliasTranslation() {
     $this->assertText($english_node_french_translation->body->value, 'Alias for French translation works.');
 
     // Disable URL language negotiation.
-    $edit = array('language_interface[enabled][language-url]' => FALSE);
+    $edit = ['language_interface[enabled][language-url]' => FALSE];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
 
     // Check that the English alias still works.
diff --git a/core/modules/path/tests/src/Functional/PathLanguageUiTest.php b/core/modules/path/tests/src/Functional/PathLanguageUiTest.php
index f17bb60..9bad348 100644
--- a/core/modules/path/tests/src/Functional/PathLanguageUiTest.php
+++ b/core/modules/path/tests/src/Functional/PathLanguageUiTest.php
@@ -14,23 +14,23 @@ class PathLanguageUiTest extends PathTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'locale', 'locale_test');
+  public static $modules = ['path', 'locale', 'locale_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $web_user = $this->drupalCreateUser(array('edit any page content', 'create page content', 'administer url aliases', 'create url aliases', 'administer languages', 'access administration pages'));
+    $web_user = $this->drupalCreateUser(['edit any page content', 'create page content', 'administer url aliases', 'create url aliases', 'administer languages', 'access administration pages']);
     $this->drupalLogin($web_user);
 
     // Enable French language.
-    $edit = array();
+    $edit = [];
     $edit['predefined_langcode'] = 'fr';
 
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
 
     // Enable URL language detection and selection.
-    $edit = array('language_interface[enabled][language-url]' => 1);
+    $edit = ['language_interface[enabled][language-url]' => 1];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
   }
 
@@ -39,7 +39,7 @@ protected function setUp() {
    */
   function testLanguageNeutralUrl() {
     $name = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/admin/config/search/path';
     $edit['alias'] = '/' . $name;
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
@@ -53,7 +53,7 @@ function testLanguageNeutralUrl() {
    */
   function testDefaultLanguageUrl() {
     $name = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/admin/config/search/path';
     $edit['alias'] = '/' . $name;
     $edit['langcode'] = 'en';
@@ -68,7 +68,7 @@ function testDefaultLanguageUrl() {
    */
   function testNonDefaultUrl() {
     $name = $this->randomMachineName(8);
-    $edit = array();
+    $edit = [];
     $edit['source'] = '/admin/config/search/path';
     $edit['alias'] = '/' . $name;
     $edit['langcode'] = 'fr';
diff --git a/core/modules/path/tests/src/Functional/PathTestBase.php b/core/modules/path/tests/src/Functional/PathTestBase.php
index ef83396..d4b8826 100644
--- a/core/modules/path/tests/src/Functional/PathTestBase.php
+++ b/core/modules/path/tests/src/Functional/PathTestBase.php
@@ -14,15 +14,15 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'path');
+  public static $modules = ['node', 'path'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
diff --git a/core/modules/path/tests/src/Kernel/Migrate/d6/MigrateUrlAliasTest.php b/core/modules/path/tests/src/Kernel/Migrate/d6/MigrateUrlAliasTest.php
index 8df5392..0580b83 100644
--- a/core/modules/path/tests/src/Kernel/Migrate/d6/MigrateUrlAliasTest.php
+++ b/core/modules/path/tests/src/Kernel/Migrate/d6/MigrateUrlAliasTest.php
@@ -61,46 +61,46 @@ private function assertPath($pid, $conditions, $path) {
   public function testUrlAlias() {
     $id_map = $this->getMigration('d6_url_alias')->getIdMap();
     // Test that the field exists.
-    $conditions = array(
+    $conditions = [
       'source' => '/node/1',
       'alias' => '/alias-one',
       'langcode' => 'af',
-    );
+    ];
     $path = \Drupal::service('path.alias_storage')->load($conditions);
     $this->assertPath('1', $conditions, $path);
-    $this->assertIdentical($id_map->lookupDestinationID(array($path['pid'])), array('1'), "Test IdMap");
+    $this->assertIdentical($id_map->lookupDestinationID([$path['pid']]), ['1'], "Test IdMap");
 
-    $conditions = array(
+    $conditions = [
       'source' => '/node/2',
       'alias' => '/alias-two',
       'langcode' => 'en',
-    );
+    ];
     $path = \Drupal::service('path.alias_storage')->load($conditions);
     $this->assertPath('2', $conditions, $path);
 
     // Test that we can re-import using the UrlAlias destination.
     Database::getConnection('default', 'migrate')
       ->update('url_alias')
-      ->fields(array('dst' => 'new-url-alias'))
+      ->fields(['dst' => 'new-url-alias'])
       ->condition('src', 'node/2')
       ->execute();
 
     \Drupal::database()
       ->update($id_map->mapTableName())
-      ->fields(array('source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE))
+      ->fields(['source_row_status' => MigrateIdMapInterface::STATUS_NEEDS_UPDATE])
       ->execute();
     $migration = $this->getMigration('d6_url_alias');
     $this->executeMigration($migration);
 
-    $path = \Drupal::service('path.alias_storage')->load(array('pid' => $path['pid']));
+    $path = \Drupal::service('path.alias_storage')->load(['pid' => $path['pid']]);
     $conditions['alias'] = '/new-url-alias';
     $this->assertPath('2', $conditions, $path);
 
-    $conditions = array(
+    $conditions = [
       'source' => '/node/3',
       'alias' => '/alias-three',
       'langcode' => 'und',
-    );
+    ];
     $path = \Drupal::service('path.alias_storage')->load($conditions);
     $this->assertPath('3', $conditions, $path);
   }
diff --git a/core/modules/path/tests/src/Kernel/PathNoCanonicalLinkTest.php b/core/modules/path/tests/src/Kernel/PathNoCanonicalLinkTest.php
index df64a5c..602e84f 100644
--- a/core/modules/path/tests/src/Kernel/PathNoCanonicalLinkTest.php
+++ b/core/modules/path/tests/src/Kernel/PathNoCanonicalLinkTest.php
@@ -18,7 +18,7 @@ class PathNoCanonicalLinkTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'content_translation_test', 'language', 'entity_test', 'user', 'system');
+  public static $modules = ['path', 'content_translation_test', 'language', 'entity_test', 'user', 'system'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/path/tests/src/Unit/Field/PathFieldDefinitionTest.php b/core/modules/path/tests/src/Unit/Field/PathFieldDefinitionTest.php
index 0bb55ae..7ef7c2f 100644
--- a/core/modules/path/tests/src/Unit/Field/PathFieldDefinitionTest.php
+++ b/core/modules/path/tests/src/Unit/Field/PathFieldDefinitionTest.php
@@ -21,7 +21,7 @@ protected function getPluginId() {
    * {@inheritdoc}
    */
   protected function getModuleAndPath() {
-    return array('path', dirname(dirname(dirname(dirname(__DIR__)))));
+    return ['path', dirname(dirname(dirname(dirname(__DIR__))))];
   }
 
   /**
@@ -29,7 +29,7 @@ protected function getModuleAndPath() {
    * @covers ::getSchema
    */
   public function testGetColumns() {
-    $this->assertSame(array(), $this->definition->getColumns());
+    $this->assertSame([], $this->definition->getColumns());
   }
 
 }
diff --git a/core/modules/quickedit/quickedit.api.php b/core/modules/quickedit/quickedit.api.php
index 8e6a2a8..581b561 100644
--- a/core/modules/quickedit/quickedit.api.php
+++ b/core/modules/quickedit/quickedit.api.php
@@ -70,11 +70,11 @@ function hook_quickedit_editor_alter(&$editors) {
  * @see \Drupal\Core\Field\FieldItemListInterface::view()
  */
 function hook_quickedit_render_field(Drupal\Core\Entity\EntityInterface $entity, $field_name, $view_mode_id, $langcode) {
-  return array(
+  return [
     '#prefix' => '<div class="example-markup">',
     'field' => $entity->getTranslation($langcode)->get($field_name)->view($view_mode_id),
     '#suffix' => '</div>',
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/quickedit/quickedit.module b/core/modules/quickedit/quickedit.module
index be40115..051b948 100644
--- a/core/modules/quickedit/quickedit.module
+++ b/core/modules/quickedit/quickedit.module
@@ -22,12 +22,12 @@ function quickedit_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.quickedit':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Quick Edit module allows users with the <a href=":quickedit_permission">Access in-place editing</a> and <a href=":contextual_permission">Use contextual links</a> permissions to edit field content without visiting a separate page. For more information, see the <a href=":handbook_url">online documentation for the Quick Edit module</a>.', array(':handbook_url' => 'https://www.drupal.org/documentation/modules/edit', ':quickedit_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-quickedit')), ':contextual_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-contextual')))) . '</p>';
+      $output .= '<p>' . t('The Quick Edit module allows users with the <a href=":quickedit_permission">Access in-place editing</a> and <a href=":contextual_permission">Use contextual links</a> permissions to edit field content without visiting a separate page. For more information, see the <a href=":handbook_url">online documentation for the Quick Edit module</a>.', [':handbook_url' => 'https://www.drupal.org/documentation/modules/edit', ':quickedit_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-quickedit']), ':contextual_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-contextual'])]) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Editing content in-place') . '</dt>';
       $output .= '<dd>';
-      $output .= '<p>' . t('To edit content in place, you need to activate quick edit mode for a content item. Activate quick edit mode by choosing Quick edit from the contextual links for an area displaying the content (see the <a href=":contextual">Contextual Links module help</a> for more information about how to use contextual links).', array(':contextual' => \Drupal::url('help.page', array('name' => 'contextual')))) . '</p>';
+      $output .= '<p>' . t('To edit content in place, you need to activate quick edit mode for a content item. Activate quick edit mode by choosing Quick edit from the contextual links for an area displaying the content (see the <a href=":contextual">Contextual Links module help</a> for more information about how to use contextual links).', [':contextual' => \Drupal::url('help.page', ['name' => 'contextual'])]) . '</p>';
       $output .= '<p>' . t('Once quick edit mode is activated, you will be able to edit the individual fields of your content. In the default theme, with a JavaScript-enabled browser and a mouse, the output of different fields in your content is outlined in blue, a pop-up gives the field name as you hover over the field output, and clicking on a field activates the editor. Closing the pop-up window ends quick edit mode.') . '</p>';
       $output .= '</dd>';
       $output .= '</dl>';
@@ -108,7 +108,7 @@ function quickedit_field_formatter_info_alter(&$info) {
   foreach ($info as $key => $settings) {
     // Set in-place editor to 'form' if none is supplied.
     if (empty($settings['quickedit'])) {
-      $info[$key]['quickedit'] = array('editor' => 'form');
+      $info[$key]['quickedit'] = ['editor' => 'form'];
     }
   }
 }
diff --git a/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php b/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php
index 7ea42b4..1e84b0e 100644
--- a/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php
+++ b/core/modules/quickedit/src/Ajax/FieldFormSavedCommand.php
@@ -27,7 +27,7 @@ class FieldFormSavedCommand extends BaseCommand {
    *   The same re-rendered edited field, but in different view modes, for other
    *   instances of the same field on the user's page. Keyed by view mode.
    */
-  public function __construct($data, $other_view_modes = array()) {
+  public function __construct($data, $other_view_modes = []) {
     parent::__construct('quickeditFieldFormSaved', $data);
 
     $this->other_view_modes = $other_view_modes;
@@ -37,11 +37,11 @@ public function __construct($data, $other_view_modes = array()) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => $this->command,
       'data' => $this->data,
       'other_view_modes' => $this->other_view_modes,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/quickedit/src/EditorSelector.php b/core/modules/quickedit/src/EditorSelector.php
index a531b1a..9149786 100644
--- a/core/modules/quickedit/src/EditorSelector.php
+++ b/core/modules/quickedit/src/EditorSelector.php
@@ -65,7 +65,7 @@ public function getEditor($formatter_type, FieldItemListInterface $items) {
     }
 
     // No early return, so create a list of all choices.
-    $editor_choices = array($editor_id);
+    $editor_choices = [$editor_id];
     if (isset($this->alternatives[$editor_id])) {
       $editor_choices = array_merge($editor_choices, $this->alternatives[$editor_id]);
     }
@@ -86,7 +86,7 @@ public function getEditor($formatter_type, FieldItemListInterface $items) {
    * {@inheritdoc}
    */
   public function getEditorAttachments(array $editor_ids) {
-    $attachments = array();
+    $attachments = [];
     $editor_ids = array_unique($editor_ids);
 
     // Editor plugins' attachments.
diff --git a/core/modules/quickedit/src/Form/QuickEditFieldForm.php b/core/modules/quickedit/src/Form/QuickEditFieldForm.php
index e64f3f2..ba2dac3 100644
--- a/core/modules/quickedit/src/Form/QuickEditFieldForm.php
+++ b/core/modules/quickedit/src/Form/QuickEditFieldForm.php
@@ -100,19 +100,19 @@ public function buildForm(array $form, FormStateInterface $form_state, EntityInt
 
     // Add a dummy changed timestamp field to attach form errors to.
     if ($entity instanceof EntityChangedInterface) {
-      $form['changed_field'] = array(
+      $form['changed_field'] = [
         '#type' => 'hidden',
         '#value' => $entity->getChangedTime(),
-      );
+      ];
     }
 
     // Add a submit button. Give it a class for easy JavaScript targeting.
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Save'),
-      '#attributes' => array('class' => array('quickedit-form-submit')),
-    );
+      '#attributes' => ['class' => ['quickedit-form-submit']],
+    ];
 
     // Simplify it for optimal in-place use.
     $this->simplify($form, $form_state);
@@ -183,7 +183,7 @@ protected function buildEntity(array $form, FormStateInterface $form_state) {
     // @todo Refine automated log messages and abstract them to all entity
     //   types: https://www.drupal.org/node/1678002.
     if ($entity->getEntityTypeId() == 'node' && $entity->isNewRevision() && $entity->revision_log->isEmpty()) {
-      $entity->revision_log = t('Updated the %field-name field through in-place editing.', array('%field-name' => $entity->get($field_name)->getFieldDefinition()->getLabel()));
+      $entity->revision_log = t('Updated the %field-name field through in-place editing.', ['%field-name' => $entity->get($field_name)->getFieldDefinition()->getLabel()]);
     }
 
     return $entity;
diff --git a/core/modules/quickedit/src/MetadataGenerator.php b/core/modules/quickedit/src/MetadataGenerator.php
index 06f0daf..f01256f 100644
--- a/core/modules/quickedit/src/MetadataGenerator.php
+++ b/core/modules/quickedit/src/MetadataGenerator.php
@@ -54,9 +54,9 @@ public function __construct(QuickEditEntityFieldAccessCheckInterface $access_che
    * {@inheritdoc}
    */
   public function generateEntityMetadata(EntityInterface $entity) {
-    return array(
+    return [
       'label' => $entity->label(),
-    );
+    ];
   }
 
   /**
@@ -69,24 +69,24 @@ public function generateFieldMetadata(FieldItemListInterface $items, $view_mode)
     // Early-return if user does not have access.
     $access = $this->accessChecker->accessEditEntityField($entity, $field_name);
     if (!$access) {
-      return array('access' => FALSE);
+      return ['access' => FALSE];
     }
 
     // Early-return if no editor is available.
     $formatter_id = EntityViewDisplay::collectRenderDisplay($entity, $view_mode)->getRenderer($field_name)->getPluginId();
     $editor_id = $this->editorSelector->getEditor($formatter_id, $items);
     if (!isset($editor_id)) {
-      return array('access' => FALSE);
+      return ['access' => FALSE];
     }
 
     // Gather metadata, allow the editor to add additional metadata of its own.
     $label = $items->getFieldDefinition()->getLabel();
     $editor = $this->editorManager->createInstance($editor_id);
-    $metadata = array(
+    $metadata = [
       'label' => $label,
       'access' => TRUE,
       'editor' => $editor_id,
-    );
+    ];
     $custom_metadata = $editor->getMetadata($items);
     if (count($custom_metadata)) {
       $metadata['custom'] = $custom_metadata;
diff --git a/core/modules/quickedit/src/Plugin/InPlaceEditor/FormEditor.php b/core/modules/quickedit/src/Plugin/InPlaceEditor/FormEditor.php
index 6a99070..83ab1b4 100644
--- a/core/modules/quickedit/src/Plugin/InPlaceEditor/FormEditor.php
+++ b/core/modules/quickedit/src/Plugin/InPlaceEditor/FormEditor.php
@@ -25,11 +25,11 @@ public function isCompatible(FieldItemListInterface $items) {
    * {@inheritdoc}
    */
   public function getAttachments() {
-    return array(
-      'library' => array(
+    return [
+      'library' => [
         'quickedit/quickedit.inPlaceEditor.form',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/quickedit/src/Plugin/InPlaceEditor/PlainTextEditor.php b/core/modules/quickedit/src/Plugin/InPlaceEditor/PlainTextEditor.php
index 1f61a56..5217c20 100644
--- a/core/modules/quickedit/src/Plugin/InPlaceEditor/PlainTextEditor.php
+++ b/core/modules/quickedit/src/Plugin/InPlaceEditor/PlainTextEditor.php
@@ -28,11 +28,11 @@ public function isCompatible(FieldItemListInterface $items) {
    * {@inheritdoc}
    */
   public function getAttachments() {
-    return array(
-      'library' => array(
+    return [
+      'library' => [
         'quickedit/quickedit.inPlaceEditor.plainText',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/quickedit/src/Plugin/InPlaceEditorBase.php b/core/modules/quickedit/src/Plugin/InPlaceEditorBase.php
index d09c38e..c7b54aa 100644
--- a/core/modules/quickedit/src/Plugin/InPlaceEditorBase.php
+++ b/core/modules/quickedit/src/Plugin/InPlaceEditorBase.php
@@ -19,7 +19,7 @@
    * {@inheritdoc}
    */
   function getMetadata(FieldItemListInterface $items) {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/quickedit/src/QuickEditController.php b/core/modules/quickedit/src/QuickEditController.php
index a42bcd0..2b1e4b2 100644
--- a/core/modules/quickedit/src/QuickEditController.php
+++ b/core/modules/quickedit/src/QuickEditController.php
@@ -98,7 +98,7 @@ public function metadata(Request $request) {
     }
     $entities = $request->request->get('entities');
 
-    $metadata = array();
+    $metadata = [];
     foreach ($fields as $field) {
       list($entity_type, $entity_id, $field_name, $langcode, $view_mode) = explode('/', $field);
 
@@ -205,7 +205,7 @@ public function fieldForm(EntityInterface $entity, $field_name, $langcode, $view
 
       // Re-render the updated field for other view modes (i.e. for other
       // instances of the same logical field on the user's page).
-      $other_view_mode_ids = $request->request->get('other_view_modes') ?: array();
+      $other_view_mode_ids = $request->request->get('other_view_modes') ?: [];
       $other_view_modes = array_map($render_field_in_view_mode, array_combine($other_view_mode_ids, $other_view_mode_ids));
 
       $response->addCommand(new FieldFormSavedCommand($output, $other_view_modes));
@@ -220,9 +220,9 @@ public function fieldForm(EntityInterface $entity, $field_name, $langcode, $view
 
       $errors = $form_state->getErrors();
       if (count($errors)) {
-        $status_messages = array(
+        $status_messages = [
           '#type' => 'status_messages'
-        );
+        ];
         $response->addCommand(new FieldFormValidationErrorsCommand($this->renderer->renderRoot($status_messages)));
       }
     }
@@ -266,7 +266,7 @@ protected function renderField(EntityInterface $entity, $field_name, $langcode,
       // by a dash; the first part must be the module name.
       $mode_id_parts = explode('-', $view_mode_id, 2);
       $module = reset($mode_id_parts);
-      $args = array($entity, $field_name, $view_mode_id, $langcode);
+      $args = [$entity, $field_name, $view_mode_id, $langcode];
       $output = $this->moduleHandler()->invoke($module, 'quickedit_render_field', $args);
     }
 
@@ -291,10 +291,10 @@ public function entitySave(EntityInterface $entity) {
 
     // Return information about the entity that allows a front end application
     // to identify it.
-    $output = array(
+    $output = [
       'entity_type' => $entity->getEntityTypeId(),
       'entity_id' => $entity->id()
-    );
+    ];
 
     // Respond to client that the entity was saved properly.
     $response = new AjaxResponse();
diff --git a/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php b/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php
index 1eedb1c..a1ef6cd 100644
--- a/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php
+++ b/core/modules/quickedit/src/Tests/QuickEditAutocompleteTermTest.php
@@ -25,7 +25,7 @@ class QuickEditAutocompleteTermTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'taxonomy', 'quickedit');
+  public static $modules = ['node', 'taxonomy', 'quickedit'];
 
   /**
    * Stores the node used for the tests.
@@ -72,9 +72,9 @@ class QuickEditAutocompleteTermTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
-    ));
+    ]);
     // Create the vocabulary for the tag field.
     $this->vocabulary = Vocabulary::create([
       'name' => 'quickedit testing tags',
@@ -83,12 +83,12 @@ protected function setUp() {
     $this->vocabulary->save();
     $this->fieldName = 'field_' . $this->vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName, 'Tags', 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
@@ -114,7 +114,7 @@ protected function setUp() {
     $this->term1 = $this->createTerm();
     $this->term2 = $this->createTerm();
 
-    $node = array();
+    $node = [];
     $node['type'] = 'article';
     $node[$this->fieldName][]['target_id'] = $this->term1->id();
     $node[$this->fieldName][]['target_id'] = $this->term2->id();
@@ -130,7 +130,7 @@ public function testAutocompleteQuickEdit() {
     $this->drupalLogin($this->editorUser);
 
     $quickedit_uri = 'quickedit/form/node/' . $this->node->id() . '/' . $this->fieldName . '/' . $this->node->language()->getId() . '/full';
-    $post = array('nocssjs' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost($quickedit_uri, '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $ajax_commands = Json::decode($response);
 
@@ -140,13 +140,13 @@ public function testAutocompleteQuickEdit() {
     $this->assertTrue($form_tokens_found, 'Form tokens found in output.');
 
     if ($form_tokens_found) {
-      $post = array(
+      $post = [
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
         'form_build_id' => $build_id_match[1],
-        $this->fieldName . '[target_id]' => implode(', ', array($this->term1->getName(), 'new term', $this->term2->getName())),
+        $this->fieldName . '[target_id]' => implode(', ', [$this->term1->getName(), 'new term', $this->term2->getName()]),
         'op' => t('Save'),
-      );
+      ];
 
       // Submit field form and check response. Should render back all the terms.
       $response = $this->drupalPost($quickedit_uri, '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
@@ -161,7 +161,7 @@ public function testAutocompleteQuickEdit() {
       // Load the form again, which should now get it back from
       // PrivateTempStore.
       $quickedit_uri = 'quickedit/form/node/' . $this->node->id() . '/' . $this->fieldName . '/' . $this->node->language()->getId() . '/full';
-      $post = array('nocssjs' => 'true') + $this->getAjaxPageStatePostData();
+      $post = ['nocssjs' => 'true'] + $this->getAjaxPageStatePostData();
       $response = $this->drupalPost($quickedit_uri, '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
       $ajax_commands = Json::decode($response);
 
@@ -170,15 +170,15 @@ public function testAutocompleteQuickEdit() {
       // taxonomy terms, including the one that has just been newly created and
       // which is not yet stored.
       $this->setRawContent($ajax_commands[0]['data']);
-      $expected = array(
+      $expected = [
         $this->term1->getName() . ' (' . $this->term1->id() . ')',
         'new term',
         $this->term2->getName() . ' (' . $this->term2->id() . ')',
-      );
+      ];
       $this->assertFieldByName($this->fieldName . '[target_id]', implode(', ', $expected));
 
       // Save the entity.
-      $post = array('nocssjs' => 'true');
+      $post = ['nocssjs' => 'true'];
       $response = $this->drupalPostWithFormat('quickedit/entity/node/' . $this->node->id(), 'json', $post);
       $this->assertResponse(200);
 
diff --git a/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php b/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
index 1570a27..41f26a8 100644
--- a/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
+++ b/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
@@ -27,13 +27,13 @@ class QuickEditLoadingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'contextual',
     'quickedit',
     'filter',
     'node',
     'image',
-  );
+  ];
 
   /**
    * An user with permissions to create and edit articles.
@@ -53,19 +53,19 @@ protected function setUp() {
     parent::setUp();
 
     // Create a text format.
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
       'weight' => 0,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $filtered_html_format->save();
 
     // Create a node type.
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
       'name' => 'Article',
-    ));
+    ]);
 
     // Set the node type to initially not have revisions.
     // Testing with revisions will be done later.
@@ -74,22 +74,22 @@ protected function setUp() {
     $node_type->save();
 
     // Create one node of the above node type using the above text format.
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'type' => 'article',
-      'body' => array(
-        0 => array(
+      'body' => [
+        0 => [
           'value' => '<p>How are you?</p>',
           'format' => 'filtered_html',
-        )
-      ),
+        ]
+      ],
       'revision_log' => $this->randomString(),
-    ));
+    ]);
 
     // Create 2 users, the only difference being the ability to use in-place
     // editing
-    $basic_permissions = array('access content', 'create article content', 'edit any article content', 'use text format filtered_html', 'access contextual links');
+    $basic_permissions = ['access content', 'create article content', 'edit any article content', 'use text format filtered_html', 'access contextual links'];
     $this->authorUser = $this->drupalCreateUser($basic_permissions);
-    $this->editorUser = $this->drupalCreateUser(array_merge($basic_permissions, array('access in-place editing')));
+    $this->editorUser = $this->drupalCreateUser(array_merge($basic_permissions, ['access in-place editing']));
   }
 
   /**
@@ -110,7 +110,7 @@ public function testUserWithoutPermission() {
     $this->assertNoFieldByXPath('//h1[contains(@class, "js-quickedit-page-title")]');
 
     // Retrieving the metadata should result in an empty 403 response.
-    $post = array('fields[0]' => 'node/1/body/en/full');
+    $post = ['fields[0]' => 'node/1/body/en/full'];
     $response = $this->drupalPostWithFormat(Url::fromRoute('quickedit.metadata'), 'json', $post);
     $this->assertIdentical(Json::encode(['message' => "The 'access in-place editing' permission is required."]), $response);
     $this->assertResponse(403);
@@ -118,16 +118,16 @@ public function testUserWithoutPermission() {
     // Quick Edit's JavaScript would never hit these endpoints if the metadata
     // was empty as above, but we need to make sure that malicious users aren't
     // able to use any of the other endpoints either.
-    $post = array('editors[0]' => 'form') + $this->getAjaxPageStatePostData();
+    $post = ['editors[0]' => 'form'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/attachments', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $message = Json::encode(['message' => "The 'access in-place editing' permission is required."]);
     $this->assertIdentical($message, $response);
     $this->assertResponse(403);
-    $post = array('nocssjs' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertIdentical($message, $response);
     $this->assertResponse(403);
-    $edit = array();
+    $edit = [];
     $edit['form_id'] = 'quickedit_field_form';
     $edit['form_token'] = 'xIOzMjuc-PULKsRn_KxFn7xzNk5Bx7XKXLfQfw1qOnA';
     $edit['form_build_id'] = 'form-kVmovBpyX-SJfTT5kY0pjTV35TV-znor--a64dEnMR8';
@@ -138,7 +138,7 @@ public function testUserWithoutPermission() {
     $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $edit, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertIdentical($message, $response);
     $this->assertResponse(403);
-    $post = array('nocssjs' => 'true');
+    $post = ['nocssjs' => 'true'];
     $response = $this->drupalPostWithFormat('quickedit/entity/' . 'node/1', 'json', $post);
     $this->assertIdentical(Json::encode(['message' => "The 'access in-place editing' permission is required."]), $response);
     $this->assertResponse(403);
@@ -173,16 +173,16 @@ public function testUserWithPermission() {
 
     // Retrieving the metadata should result in a 200 JSON response.
     $htmlPageDrupalSettings = $this->drupalSettings;
-    $post = array('fields[0]' => 'node/1/body/en/full');
+    $post = ['fields[0]' => 'node/1/body/en/full'];
     $response = $this->drupalPostWithFormat('quickedit/metadata', 'json', $post);
     $this->assertResponse(200);
-    $expected = array(
-      'node/1/body/en/full' => array(
+    $expected = [
+      'node/1/body/en/full' => [
         'label' => 'Body',
         'access' => TRUE,
         'editor' => 'form',
-      )
-    );
+      ]
+    ];
     $this->assertIdentical(Json::decode($response), $expected, 'The metadata HTTP request answers with the correct JSON response.');
     // Restore drupalSettings to build the next requests; simpletest wipes them
     // after a JSON response.
@@ -191,7 +191,7 @@ public function testUserWithPermission() {
     // Retrieving the attachments should result in a 200 response, containing:
     //  1. a settings command with useless metadata: AjaxController is dumb
     //  2. an insert command that loads the required in-place editors
-    $post = array('editors[0]' => 'form') + $this->getAjaxPageStatePostData();
+    $post = ['editors[0]' => 'form'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/attachments', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $ajax_commands = Json::decode($response);
     $this->assertIdentical(2, count($ajax_commands), 'The attachments HTTP request results in two AJAX commands.');
@@ -203,7 +203,7 @@ public function testUserWithPermission() {
 
     // Retrieving the form for this field should result in a 200 response,
     // containing only a quickeditFieldForm command.
-    $post = array('nocssjs' => 'true', 'reset' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true', 'reset' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertResponse(200);
     $ajax_commands = Json::decode($response);
@@ -217,17 +217,17 @@ public function testUserWithPermission() {
     $this->assertTrue($form_tokens_found, 'Form tokens found in output.');
 
     if ($form_tokens_found) {
-      $edit = array(
+      $edit = [
         'body[0][summary]' => '',
         'body[0][value]' => '<p>Fine thanks.</p>',
         'body[0][format]' => 'filtered_html',
         'op' => t('Save'),
-      );
-      $post = array(
+      ];
+      $post = [
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
         'form_build_id' => $build_id_match[1],
-      );
+      ];
       $post += $edit + $this->getAjaxPageStatePostData();
 
       // Submit field form and check response. This should store the updated
@@ -238,14 +238,14 @@ public function testUserWithPermission() {
       $this->assertIdentical(1, count($ajax_commands), 'The field form HTTP request results in one AJAX command.');
       $this->assertIdentical('quickeditFieldFormSaved', $ajax_commands[0]['command'], 'The first AJAX command is a quickeditFieldFormSaved command.');
       $this->assertTrue(strpos($ajax_commands[0]['data'], 'Fine thanks.'), 'Form value saved and printed back.');
-      $this->assertIdentical($ajax_commands[0]['other_view_modes'], array(), 'Field was not rendered in any other view mode.');
+      $this->assertIdentical($ajax_commands[0]['other_view_modes'], [], 'Field was not rendered in any other view mode.');
 
       // Ensure the text on the original node did not change yet.
       $this->drupalGet('node/1');
       $this->assertText('How are you?');
 
       // Save the entity by moving the PrivateTempStore values to entity storage.
-      $post = array('nocssjs' => 'true');
+      $post = ['nocssjs' => 'true'];
       $response = $this->drupalPostWithFormat('quickedit/entity/' . 'node/1', 'json', $post);
       $this->assertResponse(200);
       $ajax_commands = Json::decode($response);
@@ -273,7 +273,7 @@ public function testUserWithPermission() {
       $node_type->save();
 
       // Retrieve field form.
-      $post = array('nocssjs' => 'true', 'reset' => 'true');
+      $post = ['nocssjs' => 'true', 'reset' => 'true'];
       $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
       $this->assertResponse(200);
       $ajax_commands = Json::decode($response);
@@ -285,11 +285,11 @@ public function testUserWithPermission() {
       preg_match('/\sname="form_token" value="([^"]+)"/', $ajax_commands[0]['data'], $token_match);
       preg_match('/\sname="form_build_id" value="([^"]+)"/', $ajax_commands[0]['data'], $build_id_match);
       $edit['body[0][value]'] = '<p>kthxbye</p>';
-      $post = array(
+      $post = [
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
         'form_build_id' => $build_id_match[1],
-      );
+      ];
       $post += $edit + $this->getAjaxPageStatePostData();
       $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
       $this->assertResponse(200);
@@ -299,7 +299,7 @@ public function testUserWithPermission() {
       $this->assertTrue(strpos($ajax_commands[0]['data'], 'kthxbye'), 'Form value saved and printed back.');
 
       // Save the entity.
-      $post = array('nocssjs' => 'true');
+      $post = ['nocssjs' => 'true'];
       $response = $this->drupalPostWithFormat('quickedit/entity/' . 'node/1', 'json', $post);
       $this->assertResponse(200);
       $ajax_commands = Json::decode($response);
@@ -326,21 +326,21 @@ public function testTitleBaseField() {
 
     // Ensure that the full page title is actually in-place editable
     $node = Node::load(1);
-    $elements = $this->xpath('//h1/span[@data-quickedit-field-id="node/1/title/en/full" and normalize-space(text())=:title]', array(':title' => $node->label()));
+    $elements = $this->xpath('//h1/span[@data-quickedit-field-id="node/1/title/en/full" and normalize-space(text())=:title]', [':title' => $node->label()]);
     $this->assertTrue(!empty($elements), 'Title with data-quickedit-field-id attribute found.');
 
     // Retrieving the metadata should result in a 200 JSON response.
     $htmlPageDrupalSettings = $this->drupalSettings;
-    $post = array('fields[0]' => 'node/1/title/en/full');
+    $post = ['fields[0]' => 'node/1/title/en/full'];
     $response = $this->drupalPostWithFormat('quickedit/metadata', 'json', $post);
     $this->assertResponse(200);
-    $expected = array(
-      'node/1/title/en/full' => array(
+    $expected = [
+      'node/1/title/en/full' => [
         'label' => 'Title',
         'access' => TRUE,
         'editor' => 'plain_text',
-      )
-    );
+      ]
+    ];
     $this->assertIdentical(Json::decode($response), $expected, 'The metadata HTTP request answers with the correct JSON response.');
     // Restore drupalSettings to build the next requests; simpletest wipes them
     // after a JSON response.
@@ -348,7 +348,7 @@ public function testTitleBaseField() {
 
     // Retrieving the form for this field should result in a 200 response,
     // containing only a quickeditFieldForm command.
-    $post = array('nocssjs' => 'true', 'reset' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true', 'reset' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/form/' . 'node/1/title/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertResponse(200);
     $ajax_commands = Json::decode($response);
@@ -363,15 +363,15 @@ public function testTitleBaseField() {
     $this->assertTrue($form_tokens_found, 'Form tokens found in output.');
 
     if ($form_tokens_found) {
-      $edit = array(
+      $edit = [
         'title[0][value]' => 'Obligatory question',
         'op' => t('Save'),
-      );
-      $post = array(
+      ];
+      $post = [
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
         'form_build_id' => $build_id_match[1],
-      );
+      ];
       $post += $edit + $this->getAjaxPageStatePostData();
 
       // Submit field form and check response. This should store the
@@ -388,7 +388,7 @@ public function testTitleBaseField() {
       $this->assertNoText('Obligatory question');
 
       // Save the entity by moving the PrivateTempStore values to entity storage.
-      $post = array('nocssjs' => 'true');
+      $post = ['nocssjs' => 'true'];
       $response = $this->drupalPostWithFormat('quickedit/entity/' . 'node/1', 'json', $post);
       $this->assertResponse(200);
       $ajax_commands = Json::decode($response);
@@ -409,9 +409,9 @@ public function testTitleBaseField() {
    */
   public function testDisplayOptions() {
     $node = Node::load('1');
-    $display_settings = array(
+    $display_settings = [
       'label' => 'inline',
-    );
+    ];
     $build = $node->body->view($display_settings);
     $output = \Drupal::service('renderer')->renderRoot($build);
     $this->assertFalse(strpos($output, 'data-quickedit-field-id'), 'data-quickedit-field-id attribute not added when rendering field using dynamic display options.');
@@ -421,13 +421,13 @@ public function testDisplayOptions() {
    * Tests that Quick Edit works with custom render pipelines.
    */
   public function testCustomPipeline() {
-    \Drupal::service('module_installer')->install(array('quickedit_test'));
+    \Drupal::service('module_installer')->install(['quickedit_test']);
 
     $custom_render_url = 'quickedit/form/node/1/body/en/quickedit_test-custom-render-data';
     $this->drupalLogin($this->editorUser);
 
     // Request editing to render results with the custom render pipeline.
-    $post = array('nocssjs' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost($custom_render_url, '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $ajax_commands = Json::decode($response);
 
@@ -437,7 +437,7 @@ public function testCustomPipeline() {
     $this->assertTrue($form_tokens_found, 'Form tokens found in output.');
 
     if ($form_tokens_found) {
-      $post = array(
+      $post = [
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
         'form_build_id' => $build_id_match[1],
@@ -445,10 +445,10 @@ public function testCustomPipeline() {
         'body[0][value]' => '<p>Fine thanks.</p>',
         'body[0][format]' => 'filtered_html',
         'op' => t('Save'),
-      );
+      ];
       // Assume there is another field on this page, which doesn't use a custom
       // render pipeline, but the default one, and it uses the "full" view mode.
-      $post += array('other_view_modes[]' => 'full');
+      $post += ['other_view_modes[]' => 'full'];
 
       // Submit field form and check response. Should render with the custom
       // render pipeline.
@@ -459,7 +459,7 @@ public function testCustomPipeline() {
       $this->assertIdentical('quickeditFieldFormSaved', $ajax_commands[0]['command'], 'The first AJAX command is a quickeditFieldFormSaved command.');
       $this->assertTrue(strpos($ajax_commands[0]['data'], 'Fine thanks.'), 'Form value saved and printed back.');
       $this->assertTrue(strpos($ajax_commands[0]['data'], '<div class="quickedit-test-wrapper">') !== FALSE, 'Custom render pipeline used to render the value.');
-      $this->assertIdentical(array_keys($ajax_commands[0]['other_view_modes']), array('full'), 'Field was also rendered in the "full" view mode.');
+      $this->assertIdentical(array_keys($ajax_commands[0]['other_view_modes']), ['full'], 'Field was also rendered in the "full" view mode.');
       $this->assertTrue(strpos($ajax_commands[0]['other_view_modes']['full'], 'Fine thanks.'), '"full" version of field contains the form value.');
     }
   }
@@ -471,7 +471,7 @@ public function testCustomPipeline() {
   public function testConcurrentEdit() {
     $this->drupalLogin($this->editorUser);
 
-    $post = array('nocssjs' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['nocssjs' => 'true'] + $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('quickedit/form/' . 'node/1/body/en/full', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $this->assertResponse(200);
     $ajax_commands = Json::decode($response);
@@ -482,7 +482,7 @@ public function testConcurrentEdit() {
     $this->assertTrue($form_tokens_found, 'Form tokens found in output.');
 
     if ($form_tokens_found) {
-      $post = array(
+      $post = [
         'nocssjs' => 'true',
         'form_id' => 'quickedit_field_form',
         'form_token' => $token_match[1],
@@ -491,10 +491,10 @@ public function testConcurrentEdit() {
         'body[0][value]' => '<p>Fine thanks.</p>',
         'body[0][format]' => 'filtered_html',
         'op' => t('Save'),
-      );
+      ];
 
       // Save the node on the regular node edit form.
-      $this->drupalPostForm('node/1/edit', array(), t('Save'));
+      $this->drupalPostForm('node/1/edit', [], t('Save'));
       // Ensure different save timestamps for field editing.
       sleep(2);
 
@@ -513,7 +513,7 @@ public function testConcurrentEdit() {
    * Tests that Quick Edit's data- attributes are present for content blocks.
    */
   public function testContentBlock() {
-    \Drupal::service('module_installer')->install(array('block_content'));
+    \Drupal::service('module_installer')->install(['block_content']);
 
     // Create and place a content_block block.
     $block = BlockContent::create([
diff --git a/core/modules/quickedit/tests/modules/quickedit_test.module b/core/modules/quickedit/tests/modules/quickedit_test.module
index 3d2106d..b6199a6 100644
--- a/core/modules/quickedit/tests/modules/quickedit_test.module
+++ b/core/modules/quickedit/tests/modules/quickedit_test.module
@@ -12,11 +12,11 @@
  */
 function quickedit_test_quickedit_render_field(EntityInterface $entity, $field_name, $view_mode_id, $langcode) {
   $entity = \Drupal::entityManager()->getTranslationFromContext($entity, $langcode);
-  return array(
+  return [
     '#prefix' => '<div class="quickedit-test-wrapper">',
     'field' => $entity->get($field_name)->view($view_mode_id),
     '#suffix' => '</div>',
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/quickedit/tests/modules/src/Plugin/InPlaceEditor/WysiwygEditor.php b/core/modules/quickedit/tests/modules/src/Plugin/InPlaceEditor/WysiwygEditor.php
index 596df75..c26bf90 100644
--- a/core/modules/quickedit/tests/modules/src/Plugin/InPlaceEditor/WysiwygEditor.php
+++ b/core/modules/quickedit/tests/modules/src/Plugin/InPlaceEditor/WysiwygEditor.php
@@ -42,11 +42,11 @@ public function getMetadata(FieldItemListInterface $items) {
    * {@inheritdoc}
    */
   public function getAttachments() {
-    return array(
-      'library' => array(
+    return [
+      'library' => [
         'quickedit_test/not-existing-wysiwyg',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/quickedit/tests/src/Kernel/EditorSelectionTest.php b/core/modules/quickedit/tests/src/Kernel/EditorSelectionTest.php
index 0b3820c..08a8fe0 100644
--- a/core/modules/quickedit/tests/src/Kernel/EditorSelectionTest.php
+++ b/core/modules/quickedit/tests/src/Kernel/EditorSelectionTest.php
@@ -53,13 +53,13 @@ public function testText() {
     $this->createFieldWithStorage(
       $field_name, 'string', 1, 'Simple text field',
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'string_textfield',
-      array('size' => 42),
+      ['size' => 42],
       // 'default' formatter type & settings.
       'string',
-      array()
+      []
     );
 
     // Create an entity with values for this text field.
@@ -84,7 +84,7 @@ public function testText() {
    */
   public function testTextWysiwyg() {
     // Enable edit_test module so that the 'wysiwyg' editor becomes available.
-    $this->enableModules(array('quickedit_test'));
+    $this->enableModules(['quickedit_test']);
     $this->editorManager = $this->container->get('plugin.manager.quickedit.editor');
     $this->editorSelector = new EditorSelector($this->editorManager, $this->container->get('plugin.manager.field.formatter'));
 
@@ -92,13 +92,13 @@ public function testTextWysiwyg() {
     $this->createFieldWithStorage(
       $field_name, 'text', 1, 'Long text field',
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'text_textarea',
-      array('size' => 42),
+      ['size' => 42],
       // 'default' formatter type & settings.
       'text_default',
-      array()
+      []
     );
 
     // Create an entity with values for this text field.
@@ -129,13 +129,13 @@ public function testNumber() {
     $this->createFieldWithStorage(
       $field_name, 'integer', 1, 'Simple number field',
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'number',
-      array(),
+      [],
       // 'default' formatter type & settings.
       'number_integer',
-      array()
+      []
     );
 
     // Create an entity with values for this text field.
diff --git a/core/modules/quickedit/tests/src/Kernel/MetadataGeneratorTest.php b/core/modules/quickedit/tests/src/Kernel/MetadataGeneratorTest.php
index 28480f4..9a453fb 100644
--- a/core/modules/quickedit/tests/src/Kernel/MetadataGeneratorTest.php
+++ b/core/modules/quickedit/tests/src/Kernel/MetadataGeneratorTest.php
@@ -18,7 +18,7 @@ class MetadataGeneratorTest extends QuickEditTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('quickedit_test');
+  public static $modules = ['quickedit_test'];
 
   /**
    * The manager for editor plugins.
@@ -66,26 +66,26 @@ public function testSimpleEntityType() {
     $this->createFieldWithStorage(
       $field_1_name, 'string', 1, $field_1_label,
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'string_textfield',
-      array('size' => 42),
+      ['size' => 42],
       // 'default' formatter type & settings.
       'string',
-      array()
+      []
     );
     $field_2_name = 'field_nr';
     $field_2_label = 'Simple number field';
     $this->createFieldWithStorage(
       $field_2_name, 'integer', 1, $field_2_label,
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'number',
-      array(),
+      [],
       // 'default' formatter type & settings.
       'number_integer',
-      array()
+      []
     );
 
     // Create an entity with values for this text field.
@@ -98,21 +98,21 @@ public function testSimpleEntityType() {
     // Verify metadata for field 1.
     $items_1 = $entity->get($field_1_name);
     $metadata_1 = $this->metadataGenerator->generateFieldMetadata($items_1, 'default');
-    $expected_1 = array(
+    $expected_1 = [
       'access' => TRUE,
       'label' => 'Plain text field',
       'editor' => 'plain_text',
-    );
+    ];
     $this->assertEqual($expected_1, $metadata_1, 'The correct metadata is generated for the first field.');
 
     // Verify metadata for field 2.
     $items_2 = $entity->get($field_2_name);
     $metadata_2 = $this->metadataGenerator->generateFieldMetadata($items_2, 'default');
-    $expected_2 = array(
+    $expected_2 = [
       'access' => TRUE,
       'label' => 'Simple number field',
       'editor' => 'form',
-    );
+    ];
     $this->assertEqual($expected_2, $metadata_2, 'The correct metadata is generated for the second field.');
   }
 
@@ -134,24 +134,24 @@ public function testEditorWithCustomMetadata() {
     $this->createFieldWithStorage(
       $field_name, 'text', 1, $field_label,
       // Instance settings.
-      array(),
+      [],
       // Widget type & settings.
       'text_textfield',
-      array('size' => 42),
+      ['size' => 42],
       // 'default' formatter type & settings.
       'text_default',
-      array()
+      []
     );
 
     // Create a text format.
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(
-        'filter_htmlcorrector' => array('status' => 1),
-      ),
-    ));
+      'filters' => [
+        'filter_htmlcorrector' => ['status' => 1],
+      ],
+    ]);
     $full_html_format->save();
 
     // Create an entity with values for this rich text field.
@@ -164,14 +164,14 @@ public function testEditorWithCustomMetadata() {
     // Verify metadata.
     $items = $entity->get($field_name);
     $metadata = $this->metadataGenerator->generateFieldMetadata($items, 'default');
-    $expected = array(
+    $expected = [
       'access' => TRUE,
       'label' => 'Rich text field',
       'editor' => 'wysiwyg',
-      'custom' => array(
+      'custom' => [
         'format' => 'full_html'
-      ),
-    );
+      ],
+    ];
     $this->assertEqual($expected, $metadata); //, 'The correct metadata (including custom metadata) is generated.');
   }
 
diff --git a/core/modules/quickedit/tests/src/Kernel/QuickEditTestBase.php b/core/modules/quickedit/tests/src/Kernel/QuickEditTestBase.php
index bfdb229..2943748 100644
--- a/core/modules/quickedit/tests/src/Kernel/QuickEditTestBase.php
+++ b/core/modules/quickedit/tests/src/Kernel/QuickEditTestBase.php
@@ -37,11 +37,11 @@
   protected function setUp() {
     parent::setUp();
 
-    $this->fields = new \ArrayObject(array(), \ArrayObject::ARRAY_AS_PROPS);
+    $this->fields = new \ArrayObject([], \ArrayObject::ARRAY_AS_PROPS);
 
     $this->installEntitySchema('user');
     $this->installEntitySchema('entity_test');
-    $this->installConfig(array('field', 'filter'));
+    $this->installConfig(['field', 'filter']);
   }
 
   /**
@@ -67,12 +67,12 @@ protected function setUp() {
    */
   protected function createFieldWithStorage($field_name, $type, $cardinality, $label, $field_settings, $widget_type, $widget_settings, $formatter_type, $formatter_settings) {
     $field_storage = $field_name . '_field_storage';
-    $this->fields->$field_storage = FieldStorageConfig::create(array(
+    $this->fields->$field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => $type,
       'cardinality' => $cardinality,
-    ));
+    ]);
     $this->fields->$field_storage->save();
 
     $field = $field_name . '_field';
@@ -87,18 +87,18 @@ protected function createFieldWithStorage($field_name, $type, $cardinality, $lab
     $this->fields->$field->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => $widget_type,
         'settings' => $widget_settings,
-      ))
+      ])
       ->save();
 
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'label' => 'above',
         'type' => $formatter_type,
         'settings' => $formatter_settings
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/quickedit/tests/src/Unit/Access/QuickEditEntityFieldAccessCheckTest.php b/core/modules/quickedit/tests/src/Unit/Access/QuickEditEntityFieldAccessCheckTest.php
index 9f35057..0827436 100644
--- a/core/modules/quickedit/tests/src/Unit/Access/QuickEditEntityFieldAccessCheckTest.php
+++ b/core/modules/quickedit/tests/src/Unit/Access/QuickEditEntityFieldAccessCheckTest.php
@@ -43,11 +43,11 @@ protected function setUp() {
    * @see \Drupal\Tests\edit\Unit\quickedit\Access\QuickEditEntityFieldAccessCheckTest::testAccess()
    */
   public function providerTestAccess() {
-    $data = array();
-    $data[] = array(TRUE, TRUE, AccessResult::allowed());
-    $data[] = array(FALSE, TRUE, AccessResult::neutral());
-    $data[] = array(TRUE, FALSE, AccessResult::neutral());
-    $data[] = array(FALSE, FALSE, AccessResult::neutral());
+    $data = [];
+    $data[] = [TRUE, TRUE, AccessResult::allowed()];
+    $data[] = [FALSE, TRUE, AccessResult::neutral()];
+    $data[] = [TRUE, FALSE, AccessResult::neutral()];
+    $data[] = [FALSE, FALSE, AccessResult::neutral()];
 
     return $data;
   }
@@ -108,15 +108,15 @@ public function testAccessForbidden($field_name, $langcode) {
    * Provides test data for testAccessForbidden.
    */
   public function providerTestAccessForbidden() {
-    $data = array();
+    $data = [];
     // Tests the access method without a field_name.
-    $data[] = array(NULL, LanguageInterface::LANGCODE_NOT_SPECIFIED);
+    $data[] = [NULL, LanguageInterface::LANGCODE_NOT_SPECIFIED];
     // Tests the access method with a non-existent field.
-    $data[] = array('not_valid', LanguageInterface::LANGCODE_NOT_SPECIFIED);
+    $data[] = ['not_valid', LanguageInterface::LANGCODE_NOT_SPECIFIED];
     // Tests the access method without a langcode.
-    $data[] = array('valid', NULL);
+    $data[] = ['valid', NULL];
     // Tests the access method with an invalid langcode.
-    $data[] = array('valid', 'xx-lolspeak');
+    $data[] = ['valid', 'xx-lolspeak'];
     return $data;
   }
 
@@ -132,16 +132,16 @@ protected function createMockEntity() {
 
     $entity->expects($this->any())
       ->method('hasTranslation')
-      ->will($this->returnValueMap(array(
-        array(LanguageInterface::LANGCODE_NOT_SPECIFIED, TRUE),
-        array('xx-lolspeak', FALSE),
-      )));
+      ->will($this->returnValueMap([
+        [LanguageInterface::LANGCODE_NOT_SPECIFIED, TRUE],
+        ['xx-lolspeak', FALSE],
+      ]));
     $entity->expects($this->any())
       ->method('hasField')
-      ->will($this->returnValueMap(array(
-        array('valid', TRUE),
-        array('not_valid', FALSE),
-      )));
+      ->will($this->returnValueMap([
+        ['valid', TRUE],
+        ['not_valid', FALSE],
+      ]));
 
     return $entity;
   }
diff --git a/core/modules/rdf/rdf.api.php b/core/modules/rdf/rdf.api.php
index 3dbe7d1..dd7ae22 100644
--- a/core/modules/rdf/rdf.api.php
+++ b/core/modules/rdf/rdf.api.php
@@ -25,7 +25,7 @@
  * @ingroup rdf
  */
 function hook_rdf_namespaces() {
-  return array(
+  return [
     'content'  => 'http://purl.org/rss/1.0/modules/content/',
     'dc'       => 'http://purl.org/dc/terms/',
     'foaf'     => 'http://xmlns.com/foaf/0.1/',
@@ -35,7 +35,7 @@ function hook_rdf_namespaces() {
     'sioct'    => 'http://rdfs.org/sioc/types#',
     'skos'     => 'http://www.w3.org/2004/02/skos/core#',
     'xsd'      => 'http://www.w3.org/2001/XMLSchema#',
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/rdf/rdf.module b/core/modules/rdf/rdf.module
index 3108ee1..0afcb09 100644
--- a/core/modules/rdf/rdf.module
+++ b/core/modules/rdf/rdf.module
@@ -17,7 +17,7 @@ function rdf_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.rdf':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The RDF module enriches your content with metadata to let other applications (e.g., search engines, aggregators, and so on) better understand its relationships and attributes. This semantically enriched, machine-readable output for your website uses the <a href=":rdfa">RDFa specification</a>, which allows RDF data to be embedded in HTML markup. Other modules can define mappings of their data to RDF terms, and the RDF module makes this RDF data available to the theme. The core modules define RDF mappings for their data model, and the core themes output this RDF metadata information along with the human-readable visual information. For more information, see the <a href=":rdf">online documentation for the RDF module</a>.', array(':rdfa' => 'http://www.w3.org/TR/xhtml-rdfa-primer/', ':rdf' => 'https://www.drupal.org/documentation/modules/rdf')) . '</p>';
+      $output .= '<p>' . t('The RDF module enriches your content with metadata to let other applications (e.g., search engines, aggregators, and so on) better understand its relationships and attributes. This semantically enriched, machine-readable output for your website uses the <a href=":rdfa">RDFa specification</a>, which allows RDF data to be embedded in HTML markup. Other modules can define mappings of their data to RDF terms, and the RDF module makes this RDF data available to the theme. The core modules define RDF mappings for their data model, and the core themes output this RDF metadata information along with the human-readable visual information. For more information, see the <a href=":rdf">online documentation for the RDF module</a>.', [':rdfa' => 'http://www.w3.org/TR/xhtml-rdfa-primer/', ':rdf' => 'https://www.drupal.org/documentation/modules/rdf']) . '</p>';
       return $output;
   }
 }
@@ -74,10 +74,10 @@ function rdf_get_mapping($entity_type, $bundle) {
 
   // If not found, create a fresh mapping object.
   if (!$mapping) {
-    $mapping = RdfMapping::create(array(
+    $mapping = RdfMapping::create([
       'targetEntityType' => $entity_type,
       'bundle' => $bundle,
-    ));
+    ]);
   }
 
   return $mapping;
@@ -87,7 +87,7 @@ function rdf_get_mapping($entity_type, $bundle) {
  * Implements hook_rdf_namespaces().
  */
 function rdf_rdf_namespaces() {
-  return array(
+  return [
     'content'  => 'http://purl.org/rss/1.0/modules/content/',
     'dc'       => 'http://purl.org/dc/terms/',
     'foaf'     => 'http://xmlns.com/foaf/0.1/',
@@ -98,7 +98,7 @@ function rdf_rdf_namespaces() {
     'sioct'    => 'http://rdfs.org/sioc/types#',
     'skos'     => 'http://www.w3.org/2004/02/skos/core#',
     'xsd'      => 'http://www.w3.org/2001/XMLSchema#',
-  );
+  ];
 }
 
 /**
@@ -108,14 +108,14 @@ function rdf_rdf_namespaces() {
  * implement it.
  */
 function rdf_get_namespaces() {
-  $namespaces = array();
+  $namespaces = [];
   // In order to resolve duplicate namespaces by using the earliest defined
   // namespace, do not use \Drupal::moduleHandler()->invokeAll().
   foreach (\Drupal::moduleHandler()->getImplementations('rdf_namespaces') as $module) {
     $function = $module . '_rdf_namespaces';
     foreach ($function() as $prefix => $namespace) {
       if (array_key_exists($prefix, $namespaces) && $namespace !== $namespaces[$prefix]) {
-        throw new Exception(t('Tried to map @prefix to @namespace, but @prefix is already mapped to @orig_namespace.', array('@prefix' => $prefix, '@namespace' => $namespace, '@orig_namespace' => $namespaces[$prefix])));
+        throw new Exception(t('Tried to map @prefix to @namespace, but @prefix is already mapped to @orig_namespace.', ['@prefix' => $prefix, '@namespace' => $namespace, '@orig_namespace' => $namespaces[$prefix]]));
       }
       else {
         $namespaces[$prefix] = $namespace;
@@ -165,7 +165,7 @@ function rdf_get_namespaces() {
  *   RDFa attributes suitable for Drupal\Core\Template\Attribute.
  */
 function rdf_rdfa_attributes($mapping, $data = NULL) {
-  $attributes = array();
+  $attributes = [];
 
   // The type of mapping defaults to 'property'.
   $type = isset($mapping['mapping_type']) ? $mapping['mapping_type'] : 'property';
@@ -249,14 +249,14 @@ function rdf_comment_storage_load($comments) {
  * Implements hook_theme().
  */
 function rdf_theme() {
-  return array(
-    'rdf_wrapper' => array(
-      'variables' => array('attributes' => array(), 'content' => NULL),
-    ),
-    'rdf_metadata' => array(
-      'variables' => array('metadata' => array()),
-    ),
-  );
+  return [
+    'rdf_wrapper' => [
+      'variables' => ['attributes' => [], 'content' => NULL],
+    ],
+    'rdf_metadata' => [
+      'variables' => ['metadata' => []],
+    ],
+  ];
 }
 
 /**
@@ -266,7 +266,7 @@ function rdf_preprocess_html(&$variables) {
   // Adds RDF namespace prefix bindings in the form of an RDFa 1.1 prefix
   // attribute inside the html element.
   if (!isset($variables['html_attributes']['prefix'])) {
-    $variables['html_attributes']['prefix'] = array();
+    $variables['html_attributes']['prefix'] = [];
   }
   foreach (rdf_get_namespaces() as $prefix => $uri) {
     $variables['html_attributes']['prefix'][] = $prefix . ': ' . $uri . " ";
@@ -315,20 +315,20 @@ function rdf_preprocess_node(&$variables) {
   if ($title_mapping) {
     $title_attributes['property'] = empty($title_mapping['properties']) ? NULL : $title_mapping['properties'];
     $title_attributes['content'] = $variables['node']->label();
-    $variables['title_suffix']['rdf_meta_title'] = array(
+    $variables['title_suffix']['rdf_meta_title'] = [
       '#theme' => 'rdf_metadata',
-      '#metadata' => array($title_attributes),
-    );
+      '#metadata' => [$title_attributes],
+    ];
   }
 
   // Adds RDFa markup for the date.
   $created_mapping = $mapping->getPreparedFieldMapping('created');
   if (!empty($created_mapping) && $variables['display_submitted']) {
     $date_attributes = rdf_rdfa_attributes($created_mapping, $variables['node']->get('created')->first()->toArray());
-    $rdf_metadata = array(
+    $rdf_metadata = [
       '#theme' => 'rdf_metadata',
-      '#metadata' => array($date_attributes),
-    );
+      '#metadata' => [$date_attributes],
+    ];
     $variables['metadata'] = drupal_render($rdf_metadata);
   }
 
@@ -345,10 +345,10 @@ function rdf_preprocess_node(&$variables) {
         // Adds RDFa markup for the comment count near the node title as
         // metadata.
         $comment_count_attributes = rdf_rdfa_attributes($comment_count_mapping, $variables['node']->get($field_name)->comment_count);
-        $variables['title_suffix']['rdf_meta_comment_count'] = array(
+        $variables['title_suffix']['rdf_meta_comment_count'] = [
           '#theme' => 'rdf_metadata',
-          '#metadata' => array($comment_count_attributes),
-        );
+          '#metadata' => [$comment_count_attributes],
+        ];
       }
     }
   }
@@ -377,15 +377,15 @@ function rdf_preprocess_user(&$variables) {
     // rdf_preprocess_username().
     $name_mapping = $mapping->getPreparedFieldMapping('name');
     if (!empty($name_mapping['properties'])) {
-      $username_meta = array(
+      $username_meta = [
         '#tag' => 'meta',
-        '#attributes' => array(
+        '#attributes' => [
           'about' => $account->url(),
           'property' => $name_mapping['properties'],
           'content' => $account->getDisplayName(),
           'lang' => '',
-        ),
-      );
+        ],
+      ];
       $variables['#attached']['html_head'][] = [$username_meta, 'rdf_user_username'];
     }
   }
@@ -482,10 +482,10 @@ function rdf_preprocess_comment(&$variables) {
     // cached as part of the entity.
     $date_attributes = $comment->rdf_data['date'];
 
-    $rdf_metadata = array(
+    $rdf_metadata = [
       '#theme' => 'rdf_metadata',
-      '#metadata' => array($date_attributes),
-    );
+      '#metadata' => [$date_attributes],
+    ];
     // Ensure the original variable is represented as a render array.
     $created = !is_array($variables['created']) ? ['#markup' => $variables['created']] : $variables['created'];
     $submitted = !is_array($variables['submitted']) ? ['#markup' => $variables['submitted']] : $variables['submitted'];
@@ -527,10 +527,10 @@ function rdf_preprocess_comment(&$variables) {
   }
   // Adds RDF metadata markup above comment body if any.
   if (!empty($variables['rdf_metadata_attributes']) && isset($variables['content']['comment_body'])) {
-    $rdf_metadata = array(
+    $rdf_metadata = [
       '#theme' => 'rdf_metadata',
       '#metadata' => $variables['rdf_metadata_attributes'],
-    );
+    ];
     if (!empty($variables['content']['comment_body']['#prefix'])) {
       $rdf_metadata['#suffix'] = $variables['content']['comment_body']['#prefix'];
     }
@@ -555,14 +555,14 @@ function rdf_preprocess_taxonomy_term(&$variables) {
   // Add RDFa markup for the taxonomy term name as metadata, if present.
   $name_field_mapping = $mapping->getPreparedFieldMapping('name');
   if (!empty($name_field_mapping) && !empty($name_field_mapping['properties'])) {
-    $name_attributes = array(
+    $name_attributes = [
       'property' => $name_field_mapping['properties'],
       'content' => $term->getName(),
-    );
-    $variables['title_suffix']['taxonomy_term_rdfa'] = array(
+    ];
+    $variables['title_suffix']['taxonomy_term_rdfa'] = [
       '#theme' => 'rdf_metadata',
-      '#metadata' => array($name_attributes),
-    );
+      '#metadata' => [$name_attributes],
+    ];
   }
 }
 
@@ -573,7 +573,7 @@ function rdf_preprocess_image(&$variables) {
   // Adds the RDF type for image.  We cannot use the usual entity-based mapping
   // to get 'foaf:Image' because image does not have its own entity type or
   // bundle.
-  $variables['attributes']['typeof'] = array('foaf:Image');
+  $variables['attributes']['typeof'] = ['foaf:Image'];
 }
 
 /**
diff --git a/core/modules/rdf/src/Entity/RdfMapping.php b/core/modules/rdf/src/Entity/RdfMapping.php
index 83fc476..076587f 100644
--- a/core/modules/rdf/src/Entity/RdfMapping.php
+++ b/core/modules/rdf/src/Entity/RdfMapping.php
@@ -59,20 +59,20 @@ class RdfMapping extends ConfigEntityBase implements RdfMappingInterface {
    *
    * @var array
    */
-  protected $types = array();
+  protected $types = [];
 
   /**
    * The mappings for fields on this bundle.
    *
    * @var array
    */
-  protected $fieldMappings = array();
+  protected $fieldMappings = [];
 
   /**
    * {@inheritdoc}
    */
   public function getPreparedBundleMapping() {
-    return array('types' => $this->types);
+    return ['types' => $this->types];
   }
 
   /**
@@ -80,9 +80,9 @@ public function getPreparedBundleMapping() {
    */
   public function getBundleMapping() {
     if (!empty($this->types)) {
-      return array('types' => $this->types);
+      return ['types' => $this->types];
     }
-    return array();
+    return [];
   }
 
   /**
@@ -100,16 +100,16 @@ public function setBundleMapping(array $mapping) {
    * {@inheritdoc}
    */
   public function getPreparedFieldMapping($field_name) {
-    $field_mapping = array(
+    $field_mapping = [
       'properties' => NULL,
       'datatype' => NULL,
       'datatype_callback' => NULL,
       'mapping_type' => NULL,
-    );
+    ];
     if (isset($this->fieldMappings[$field_name])) {
       $field_mapping = array_merge($field_mapping, $this->fieldMappings[$field_name]);
     }
-    return empty($field_mapping['properties']) ? array() : $field_mapping;
+    return empty($field_mapping['properties']) ? [] : $field_mapping;
   }
 
   /**
@@ -119,13 +119,13 @@ public function getFieldMapping($field_name) {
     if (isset($this->fieldMappings[$field_name])) {
       return $this->fieldMappings[$field_name];
     }
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function setFieldMapping($field_name, array $mapping = array()) {
+  public function setFieldMapping($field_name, array $mapping = []) {
     $this->fieldMappings[$field_name] = $mapping;
     return $this;
   }
diff --git a/core/modules/rdf/src/RdfMappingInterface.php b/core/modules/rdf/src/RdfMappingInterface.php
index fa8def2..ce01288 100644
--- a/core/modules/rdf/src/RdfMappingInterface.php
+++ b/core/modules/rdf/src/RdfMappingInterface.php
@@ -102,6 +102,6 @@ public function getFieldMapping($field_name);
    * @return \Drupal\rdf\Entity\RdfMapping
    *   The RdfMapping object.
    */
-  public function setFieldMapping($field_name, array $mapping = array());
+  public function setFieldMapping($field_name, array $mapping = []);
 
 }
diff --git a/core/modules/rdf/src/Tests/CommentAttributesTest.php b/core/modules/rdf/src/Tests/CommentAttributesTest.php
index 5febcb9..f05d9c1 100644
--- a/core/modules/rdf/src/Tests/CommentAttributesTest.php
+++ b/core/modules/rdf/src/Tests/CommentAttributesTest.php
@@ -20,7 +20,7 @@ class CommentAttributesTest extends CommentTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'node', 'comment', 'rdf');
+  public static $modules = ['views', 'node', 'comment', 'rdf'];
 
   /**
    * URI of the front page of the Drupal site.
@@ -40,11 +40,11 @@ protected function setUp() {
     parent::setUp();
 
     // Enables anonymous user comments.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
       'access comments' => TRUE,
       'post comments' => TRUE,
       'skip comment approval' => TRUE,
-    ));
+    ]);
     // Allows anonymous to leave their contact information.
     $this->setCommentAnonymous(COMMENT_ANONYMOUS_MAY_CONTACT);
     $this->setCommentPreview(DRUPAL_OPTIONAL);
@@ -58,53 +58,53 @@ protected function setUp() {
 
     // Set relation between node and comment.
     $article_mapping = rdf_get_mapping('node', 'article');
-    $comment_count_mapping = array(
-      'properties' => array('sioc:num_replies'),
+    $comment_count_mapping = [
+      'properties' => ['sioc:num_replies'],
       'datatype' => 'xsd:integer',
-      'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::rawValue'),
-    );
+      'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::rawValue'],
+    ];
     $article_mapping->setFieldMapping('comment_count', $comment_count_mapping)->save();
 
     // Save user mapping.
     $user_mapping = rdf_get_mapping('user', 'user');
-    $username_mapping = array(
-      'properties' => array('foaf:name'),
-    );
+    $username_mapping = [
+      'properties' => ['foaf:name'],
+    ];
     $user_mapping->setFieldMapping('name', $username_mapping)->save();
-    $user_mapping->setFieldMapping('homepage', array('properties' => array('foaf:page'), 'mapping_type' => 'rel'))->save();
+    $user_mapping->setFieldMapping('homepage', ['properties' => ['foaf:page'], 'mapping_type' => 'rel'])->save();
 
     // Save comment mapping.
     $mapping = rdf_get_mapping('comment', 'comment');
-    $mapping->setBundleMapping(array('types' => array('sioc:Post', 'sioct:Comment')))->save();
-    $field_mappings = array(
-      'subject' => array(
-        'properties' => array('dc:title'),
-      ),
-      'created' => array(
-        'properties' => array('dc:date', 'dc:created'),
+    $mapping->setBundleMapping(['types' => ['sioc:Post', 'sioct:Comment']])->save();
+    $field_mappings = [
+      'subject' => [
+        'properties' => ['dc:title'],
+      ],
+      'created' => [
+        'properties' => ['dc:date', 'dc:created'],
         'datatype' => 'xsd:dateTime',
-        'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'),
-      ),
-      'changed' => array(
-        'properties' => array('dc:modified'),
+        'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'],
+      ],
+      'changed' => [
+        'properties' => ['dc:modified'],
         'datatype' => 'xsd:dateTime',
-        'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'),
-      ),
-      'comment_body' => array(
-        'properties' => array('content:encoded'),
-      ),
-      'pid' => array(
-        'properties' => array('sioc:reply_of'),
+        'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'],
+      ],
+      'comment_body' => [
+        'properties' => ['content:encoded'],
+      ],
+      'pid' => [
+        'properties' => ['sioc:reply_of'],
         'mapping_type' => 'rel',
-      ),
-      'uid' => array(
-        'properties' => array('sioc:has_creator'),
+      ],
+      'uid' => [
+        'properties' => ['sioc:has_creator'],
         'mapping_type' => 'rel',
-      ),
-      'name' => array(
-        'properties' => array('foaf:name'),
-      ),
-    );
+      ],
+      'name' => [
+        'properties' => ['foaf:name'],
+      ],
+    ];
     // Iterate over shared field mappings and save.
     foreach ($field_mappings as $field_name => $field_mapping) {
       $mapping->setFieldMapping($field_name, $field_mapping)->save();
@@ -126,11 +126,11 @@ public function testNumberOfCommentsRdfaMarkup() {
     $parser->parse($graph, $this->drupalGet('node'), 'rdfa', $this->baseUri);
 
     // Number of comments.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => 2,
       'datatype' => 'http://www.w3.org/2001/XMLSchema#integer',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->nodeUri, 'http://rdfs.org/sioc/ns#num_replies', $expected_value), 'Number of comments found in RDF output of teaser view (sioc:num_replies).');
 
     // Tests number of comments in full node view, expected value is the same.
@@ -183,7 +183,7 @@ public function testCommentRdfaMarkup() {
     $this->_testBasicCommentRdfaMarkup($graph, $comment1);
 
     // Posts comment #2 as anonymous user.
-    $anonymous_user = array();
+    $anonymous_user = [];
     $anonymous_user['name'] = $this->randomMachineName();
     $anonymous_user['mail'] = 'tester@simpletest.org';
     $anonymous_user['homepage'] = 'http://example.org/';
@@ -222,22 +222,22 @@ public function testCommentReplyOfRdfaMarkup() {
     $parser->parse($graph, $this->drupalGet('node/' . $this->node->id()), 'rdfa', $this->baseUri);
 
     // Tests the reply_of relationship of a first level comment.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->nodeUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_1_uri, 'http://rdfs.org/sioc/ns#reply_of', $expected_value), 'Comment relation to its node found in RDF output (sioc:reply_of).');
 
     // Tests the reply_of relationship of a second level comment.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->nodeUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_2_uri, 'http://rdfs.org/sioc/ns#reply_of', $expected_value), 'Comment relation to its node found in RDF output (sioc:reply_of).');
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $comment_1_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_2_uri, 'http://rdfs.org/sioc/ns#reply_of', $expected_value), 'Comment relation to its parent comment found in RDF output (sioc:reply_of).');
   }
 
@@ -251,61 +251,61 @@ public function testCommentReplyOfRdfaMarkup() {
    * @param $account
    *   An array containing information about an anonymous user.
    */
-  function _testBasicCommentRdfaMarkup($graph, CommentInterface $comment, $account = array()) {
-    $comment_uri = $comment->url('canonical', array('absolute' => TRUE));
+  function _testBasicCommentRdfaMarkup($graph, CommentInterface $comment, $account = []) {
+    $comment_uri = $comment->url('canonical', ['absolute' => TRUE]);
 
     // Comment type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://rdfs.org/sioc/types#Comment',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Comment type found in RDF output (sioct:Comment).');
     // Comment type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://rdfs.org/sioc/ns#Post',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Comment type found in RDF output (sioc:Post).');
 
     // Comment title.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $comment->getSubject(),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://purl.org/dc/terms/title', $expected_value), 'Comment subject found in RDF output (dc:title).');
 
     // Comment date.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => format_date($comment->getCreatedTime(), 'custom', 'c', 'UTC'),
       'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://purl.org/dc/terms/date', $expected_value), 'Comment date found in RDF output (dc:date).');
     // Comment date.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => format_date($comment->getCreatedTime(), 'custom', 'c', 'UTC'),
       'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://purl.org/dc/terms/created', $expected_value), 'Comment date found in RDF output (dc:created).');
 
     // Comment body.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $comment->comment_body->value . "\n",
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($comment_uri, 'http://purl.org/rss/1.0/modules/content/encoded', $expected_value), 'Comment body found in RDF output (content:encoded).');
 
     // The comment author can be a registered user or an anonymous user.
     if ($comment->getOwnerId() > 0) {
-      $author_uri = \Drupal::url('entity.user.canonical', ['user' => $comment->getOwnerId()], array('absolute' => TRUE));
+      $author_uri = \Drupal::url('entity.user.canonical', ['user' => $comment->getOwnerId()], ['absolute' => TRUE]);
       // Comment relation to author.
-      $expected_value = array(
+      $expected_value = [
         'type' => 'uri',
         'value' => $author_uri,
-      );
+      ];
       $this->assertTrue($graph->hasProperty($comment_uri, 'http://rdfs.org/sioc/ns#has_creator', $expected_value), 'Comment relation to author found in RDF output (sioc:has_creator).');
     }
     else {
@@ -321,18 +321,18 @@ function _testBasicCommentRdfaMarkup($graph, CommentInterface $comment, $account
 
     // Author name.
     $name = empty($account["name"]) ? $this->webUser->getUsername() : $account["name"] . " (not verified)";
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $name,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($author_uri, 'http://xmlns.com/foaf/0.1/name', $expected_value), 'Comment author name found in RDF output (foaf:name).');
 
     // Comment author homepage (only for anonymous authors).
     if ($comment->getOwnerId() == 0) {
-      $expected_value = array(
+      $expected_value = [
         'type' => 'uri',
         'value' => 'http://example.org/',
-      );
+      ];
       $this->assertTrue($graph->hasProperty($author_uri, 'http://xmlns.com/foaf/0.1/page', $expected_value), 'Comment author link found in RDF output (foaf:page).');
     }
   }
@@ -354,7 +354,7 @@ function _testBasicCommentRdfaMarkup($graph, CommentInterface $comment, $account
    *   The saved comment.
    */
   function saveComment($nid, $uid, $contact = NULL, $pid = 0) {
-    $values = array(
+    $values = [
       'entity_id' => $nid,
       'entity_type' => 'node',
       'field_name' => 'comment',
@@ -363,7 +363,7 @@ function saveComment($nid, $uid, $contact = NULL, $pid = 0) {
       'subject' => $this->randomMachineName(),
       'comment_body' => $this->randomMachineName(),
       'status' => 1,
-    );
+    ];
     if ($contact) {
       $values += $contact;
     }
diff --git a/core/modules/rdf/src/Tests/GetNamespacesTest.php b/core/modules/rdf/src/Tests/GetNamespacesTest.php
index 8aeaf79..0b19277 100644
--- a/core/modules/rdf/src/Tests/GetNamespacesTest.php
+++ b/core/modules/rdf/src/Tests/GetNamespacesTest.php
@@ -17,7 +17,7 @@ class GetNamespacesTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'rdf_test_namespaces');
+  public static $modules = ['rdf', 'rdf_test_namespaces'];
 
   /**
    * Tests RDF namespaces.
@@ -26,24 +26,24 @@ function testGetRdfNamespaces() {
     // Fetches the front page and extracts RDFa 1.1 prefixes.
     $this->drupalGet('');
 
-    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', array(
+    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', [
       ':prefix_binding' => 'rdfs: http://www.w3.org/2000/01/rdf-schema#',
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'A prefix declared once is displayed.');
 
-    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', array(
+    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', [
       ':prefix_binding' => 'foaf: http://xmlns.com/foaf/0.1/',
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'The same prefix declared in several implementations of hook_rdf_namespaces() is valid as long as all the namespaces are the same.');
 
-    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', array(
+    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', [
       ':prefix_binding' => 'foaf1: http://xmlns.com/foaf/0.1/',
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'Two prefixes can be assigned the same namespace.');
 
-    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', array(
+    $element = $this->xpath('//html[contains(@prefix, :prefix_binding)]', [
       ':prefix_binding' => 'dc: http://purl.org/dc/terms/',
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'When a prefix has conflicting namespaces, the first declared one is used.');
   }
 
diff --git a/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php b/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
index cce663b..2944b8f 100644
--- a/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
+++ b/core/modules/rdf/src/Tests/ImageFieldAttributesTest.php
@@ -19,7 +19,7 @@ class ImageFieldAttributesTest extends ImageFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'image');
+  public static $modules = ['rdf', 'image'];
 
   /**
    * The name of the image field used in the test.
@@ -52,11 +52,11 @@ protected function setUp() {
 
     // Set the RDF mapping for the new field.
     rdf_get_mapping('node', 'article')
-      ->setFieldMapping($this->fieldName, array(
-        'properties' => array('og:image'),
+      ->setFieldMapping($this->fieldName, [
+        'properties' => ['og:image'],
         'mapping_type' => 'rel',
-      ))
-      ->setBundleMapping(array('types' => array()))
+      ])
+      ->setBundleMapping(['types' => []])
       ->save();
 
     // Get the test image that simpletest provides.
@@ -73,10 +73,10 @@ protected function setUp() {
    */
   function testNodeTeaser() {
     // Set the display options for the teaser.
-    $display_options = array(
+    $display_options = [
       'type' => 'image',
-      'settings' => array('image_style' => 'medium', 'image_link' => 'content'),
-    );
+      'settings' => ['image_style' => 'medium', 'image_link' => 'content'],
+    ];
     $display = entity_get_display('node', 'article', 'teaser');
     $display->setComponent($this->fieldName, $display_options)
       ->save();
@@ -96,17 +96,17 @@ function testNodeTeaser() {
     $image_uri = ImageStyle::load('medium')->buildUrl($this->file->getFileUri());
 
     // Test relations from node to image.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $image_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://ogp.me/ns#image', $expected_value), 'Node to file relation found in RDF output (og:image).');
 
     // Test image type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://xmlns.com/foaf/0.1/Image',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($image_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Image type found in RDF output (foaf:Image).');
   }
 
diff --git a/core/modules/rdf/tests/rdf_conflicting_namespaces/rdf_conflicting_namespaces.module b/core/modules/rdf/tests/rdf_conflicting_namespaces/rdf_conflicting_namespaces.module
index 2fbdba4..ddaf5cb 100644
--- a/core/modules/rdf/tests/rdf_conflicting_namespaces/rdf_conflicting_namespaces.module
+++ b/core/modules/rdf/tests/rdf_conflicting_namespaces/rdf_conflicting_namespaces.module
@@ -9,7 +9,7 @@
  * Implements hook_rdf_namespaces().
  */
 function rdf_conflicting_namespaces_rdf_namespaces() {
-  return array(
+  return [
     'dc' => 'http://purl.org/conflicting/namespace',
-  );
+  ];
 }
diff --git a/core/modules/rdf/tests/rdf_test_namespaces/rdf_test_namespaces.module b/core/modules/rdf/tests/rdf_test_namespaces/rdf_test_namespaces.module
index d44c519..327bd5b 100644
--- a/core/modules/rdf/tests/rdf_test_namespaces/rdf_test_namespaces.module
+++ b/core/modules/rdf/tests/rdf_test_namespaces/rdf_test_namespaces.module
@@ -9,8 +9,8 @@
  * Implements hook_rdf_namespaces().
  */
 function rdf_test_namespaces_rdf_namespaces() {
-  return array(
+  return [
     'foaf'     => 'http://xmlns.com/foaf/0.1/',
     'foaf1'    => 'http://xmlns.com/foaf/0.1/',
-  );
+  ];
 }
diff --git a/core/modules/rdf/tests/src/Functional/EntityReferenceFieldAttributesTest.php b/core/modules/rdf/tests/src/Functional/EntityReferenceFieldAttributesTest.php
index 4aaeb7e..82789d6 100644
--- a/core/modules/rdf/tests/src/Functional/EntityReferenceFieldAttributesTest.php
+++ b/core/modules/rdf/tests/src/Functional/EntityReferenceFieldAttributesTest.php
@@ -17,7 +17,7 @@ class EntityReferenceFieldAttributesTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'field_test', 'file', 'image');
+  public static $modules = ['rdf', 'field_test', 'file', 'image'];
 
   /**
    * The name of the taxonomy term reference field used in the test.
@@ -36,38 +36,38 @@ class EntityReferenceFieldAttributesTest extends TaxonomyTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array('bypass node access', 'administer taxonomy'));
+    $web_user = $this->drupalCreateUser(['bypass node access', 'administer taxonomy']);
     $this->drupalLogin($web_user);
     $this->vocabulary = $this->createVocabulary();
 
     // Create the field.
     $this->fieldName = 'field_taxonomy_test';
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName, 'Tags', 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName, array('type' => 'options_select'))
+      ->setComponent($this->fieldName, ['type' => 'options_select'])
       ->save();
     entity_get_display('node', 'article', 'full')
-      ->setComponent($this->fieldName, array('type' => 'entity_reference_label'))
+      ->setComponent($this->fieldName, ['type' => 'entity_reference_label'])
       ->save();
 
     // Set the RDF mapping for the new field.
     rdf_get_mapping('node', 'article')
-      ->setFieldMapping($this->fieldName, array(
-        'properties' => array('dc:subject'),
+      ->setFieldMapping($this->fieldName, [
+        'properties' => ['dc:subject'],
         'mapping_type' => 'rel',
-      ))
+      ])
       ->save();
 
     rdf_get_mapping('taxonomy_term', $this->vocabulary->id())
-      ->setBundleMapping(array('types' => array('skos:Concept')))
-      ->setFieldMapping('name', array('properties' => array('rdfs:label')))
+      ->setBundleMapping(['types' => ['skos:Concept']])
+      ->setFieldMapping('name', ['properties' => ['rdfs:label']])
       ->save();
   }
 
@@ -80,7 +80,7 @@ protected function setUp() {
   function testNodeTeaser() {
     // Set the teaser display to show this field.
     entity_get_display('node', 'article', 'teaser')
-      ->setComponent($this->fieldName, array('type' => 'entity_reference_label'))
+      ->setComponent($this->fieldName, ['type' => 'entity_reference_label'])
       ->save();
 
     // Create a term in each vocabulary.
@@ -90,14 +90,14 @@ function testNodeTeaser() {
     $taxonomy_term_2_uri = $term2->url('canonical', ['absolute' => TRUE]);
 
     // Create the node.
-    $node = $this->drupalCreateNode(array('type' => 'article'));
-    $node->set($this->fieldName, array(
-      array('target_id' => $term1->id()),
-      array('target_id' => $term2->id()),
-    ));
+    $node = $this->drupalCreateNode(['type' => 'article']);
+    $node->set($this->fieldName, [
+      ['target_id' => $term1->id()],
+      ['target_id' => $term2->id()],
+    ]);
 
     // Render the node.
-    $node_render_array = entity_view_multiple(array($node), 'teaser');
+    $node_render_array = entity_view_multiple([$node], 'teaser');
     $html = \Drupal::service('renderer')->renderRoot($node_render_array);
 
     // Parse the teaser.
@@ -108,39 +108,39 @@ function testNodeTeaser() {
 
     // Node relations to taxonomy terms.
     $node_uri = $node->url('canonical', ['absolute' => TRUE]);
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $taxonomy_term_1_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://purl.org/dc/terms/subject', $expected_value), 'Node to term relation found in RDF output (dc:subject).');
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $taxonomy_term_2_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://purl.org/dc/terms/subject', $expected_value), 'Node to term relation found in RDF output (dc:subject).');
     // Taxonomy terms triples.
     // Term 1.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://www.w3.org/2004/02/skos/core#Concept',
-    );
+    ];
     // @todo Enable with https://www.drupal.org/node/2072791.
     //$this->assertTrue($graph->hasProperty($taxonomy_term_1_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Taxonomy term type found in RDF output (skos:Concept).');
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $term1->getName(),
-    );
+    ];
     //$this->assertTrue($graph->hasProperty($taxonomy_term_1_uri, 'http://www.w3.org/2000/01/rdf-schema#label', $expected_value), 'Taxonomy term name found in RDF output (rdfs:label).');
     // Term 2.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://www.w3.org/2004/02/skos/core#Concept',
-    );
+    ];
     //$this->assertTrue($graph->hasProperty($taxonomy_term_2_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Taxonomy term type found in RDF output (skos:Concept).');
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $term2->getName(),
-    );
+    ];
     //$this->assertTrue($graph->hasProperty($taxonomy_term_2_uri, 'http://www.w3.org/2000/01/rdf-schema#label', $expected_value), 'Taxonomy term name found in RDF output (rdfs:label).');
   }
 
diff --git a/core/modules/rdf/tests/src/Functional/FileFieldAttributesTest.php b/core/modules/rdf/tests/src/Functional/FileFieldAttributesTest.php
index b0be922..e3e45ba 100644
--- a/core/modules/rdf/tests/src/Functional/FileFieldAttributesTest.php
+++ b/core/modules/rdf/tests/src/Functional/FileFieldAttributesTest.php
@@ -17,7 +17,7 @@ class FileFieldAttributesTest extends FileFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'file');
+  public static $modules = ['rdf', 'file'];
 
   /**
    * The name of the file field used in the test.
@@ -50,19 +50,19 @@ protected function setUp() {
 
     // Set the teaser display to show this field.
     entity_get_display('node', 'article', 'teaser')
-      ->setComponent($this->fieldName, array('type' => 'file_default'))
+      ->setComponent($this->fieldName, ['type' => 'file_default'])
       ->save();
 
     // Set the RDF mapping for the new field.
     $mapping = rdf_get_mapping('node', 'article');
-    $mapping->setFieldMapping($this->fieldName, array('properties' => array('rdfs:seeAlso'), 'mapping_type' => 'rel'))->save();
+    $mapping->setFieldMapping($this->fieldName, ['properties' => ['rdfs:seeAlso'], 'mapping_type' => 'rel'])->save();
 
     $test_file = $this->getTestFile('text');
 
     // Create a new node with the uploaded file.
     $nid = $this->uploadNodeFile($test_file, $this->fieldName, $type_name);
 
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $this->node = $node_storage->load($nid);
     $this->file = File::load($this->node->{$this->fieldName}->target_id);
   }
@@ -75,7 +75,7 @@ protected function setUp() {
    */
   function testNodeTeaser() {
     // Render the teaser.
-    $node_render_array = entity_view_multiple(array($this->node), 'teaser');
+    $node_render_array = entity_view_multiple([$this->node], 'teaser');
     $html = \Drupal::service('renderer')->renderRoot($node_render_array);
 
     // Parses front page where the node is displayed in its teaser form.
@@ -88,10 +88,10 @@ function testNodeTeaser() {
     $file_uri = file_create_url($this->file->getFileUri());
 
     // Node relation to attached file.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $file_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://www.w3.org/2000/01/rdf-schema#seeAlso', $expected_value), 'Node to file relation found in RDF output (rdfs:seeAlso).');
     $this->drupalGet('node');
   }
diff --git a/core/modules/rdf/tests/src/Functional/GetRdfNamespacesTest.php b/core/modules/rdf/tests/src/Functional/GetRdfNamespacesTest.php
index 544b598..c316f3f 100644
--- a/core/modules/rdf/tests/src/Functional/GetRdfNamespacesTest.php
+++ b/core/modules/rdf/tests/src/Functional/GetRdfNamespacesTest.php
@@ -16,7 +16,7 @@ class GetRdfNamespacesTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'rdf_test_namespaces');
+  public static $modules = ['rdf', 'rdf_test_namespaces'];
 
   /**
    * Tests getting RDF namespaces.
@@ -31,7 +31,7 @@ function testGetRdfNamespaces() {
 
     // Enable rdf_conflicting_namespaces to ensure that an exception is thrown
     // when RDF namespaces are conflicting.
-    \Drupal::service('module_installer')->install(array('rdf_conflicting_namespaces'), TRUE);
+    \Drupal::service('module_installer')->install(['rdf_conflicting_namespaces'], TRUE);
     try {
       $ns = rdf_get_namespaces();
       $this->fail('Expected exception not thrown for conflicting namespace declaration.');
diff --git a/core/modules/rdf/tests/src/Functional/NodeAttributesTest.php b/core/modules/rdf/tests/src/Functional/NodeAttributesTest.php
index e0b8bdf..bf65f1b 100644
--- a/core/modules/rdf/tests/src/Functional/NodeAttributesTest.php
+++ b/core/modules/rdf/tests/src/Functional/NodeAttributesTest.php
@@ -16,23 +16,23 @@ class NodeAttributesTest extends NodeTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf');
+  public static $modules = ['rdf'];
 
   protected function setUp() {
     parent::setUp();
 
     rdf_get_mapping('node', 'article')
-      ->setBundleMapping(array(
-        'types' => array('sioc:Item', 'foaf:Document'),
-      ))
-      ->setFieldMapping('title', array(
-        'properties' => array('dc:title'),
-      ))
-      ->setFieldMapping('created', array(
-        'properties' => array('dc:date', 'dc:created'),
+      ->setBundleMapping([
+        'types' => ['sioc:Item', 'foaf:Document'],
+      ])
+      ->setFieldMapping('title', [
+        'properties' => ['dc:title'],
+      ])
+      ->setFieldMapping('created', [
+        'properties' => ['dc:date', 'dc:created'],
         'datatype' => 'xsd:dateTime',
-        'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'),
-      ))
+        'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'],
+      ])
       ->save();
   }
 
@@ -42,10 +42,10 @@ protected function setUp() {
   function testNodeAttributes() {
     // Create node with single quotation mark title to ensure it does not get
     // escaped more than once.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'type' => 'article',
       'title' => $this->randomMachineName(8) . "'",
-    ));
+    ]);
 
     $node_uri = $node->url('canonical', ['absolute' => TRUE]);
     $base_uri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
@@ -57,37 +57,37 @@ function testNodeAttributes() {
 
     // Inspects RDF graph output.
     // Node type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://rdfs.org/sioc/ns#Item',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Node type found in RDF output (sioc:Item).');
     // Node type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://xmlns.com/foaf/0.1/Document',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Node type found in RDF output (foaf:Document).');
     // Node title.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $node->getTitle(),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://purl.org/dc/terms/title', $expected_value), 'Node title found in RDF output (dc:title).');
     // Node date (date format must be UTC).
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => \Drupal::service('date.formatter')->format($node->getCreatedTime(), 'custom', 'c', 'UTC'),
       'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://purl.org/dc/terms/date', $expected_value), 'Node date found in RDF output (dc:date).');
     // Node date (date format must be UTC).
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => \Drupal::service('date.formatter')->format($node->getCreatedTime(), 'custom', 'c', 'UTC'),
       'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($node_uri, 'http://purl.org/dc/terms/created', $expected_value), 'Node date found in RDF output (dc:created).');
   }
 
diff --git a/core/modules/rdf/tests/src/Functional/StandardProfileTest.php b/core/modules/rdf/tests/src/Functional/StandardProfileTest.php
index 7d29905..76ae39b 100644
--- a/core/modules/rdf/tests/src/Functional/StandardProfileTest.php
+++ b/core/modules/rdf/tests/src/Functional/StandardProfileTest.php
@@ -112,18 +112,18 @@ protected function setUp() {
     $this->baseUri = \Drupal::url('<front>', [], ['absolute' => TRUE]);
 
     // Create two test users.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer content types',
       'administer comments',
       'access comments',
       'access content',
-    ));
-    $this->webUser = $this->drupalCreateUser(array(
+    ]);
+    $this->webUser = $this->drupalCreateUser([
       'access comments',
       'post comments',
       'skip comment approval',
       'access content',
-    ));
+    ]);
 
     $this->drupalLogin($this->adminUser);
 
@@ -141,20 +141,20 @@ protected function setUp() {
     $this->image->save();
 
     // Create article.
-    $article_settings = array(
+    $article_settings = [
       'type' => 'article',
       'promote' => NodeInterface::PROMOTED,
-      'field_image' => array(
-        array(
+      'field_image' => [
+        [
           'target_id' => $this->image->id(),
-        ),
-      ),
-      'field_tags' => array(
-        array(
+        ],
+      ],
+      'field_tags' => [
+        [
           'target_id' => $this->term->id(),
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     $this->article = $this->drupalCreateNode($article_settings);
     // Create second article to test teaser list.
     $this->drupalCreateNode(['type' => 'article', 'promote' => NodeInterface::PROMOTED]);
@@ -163,24 +163,24 @@ protected function setUp() {
     $this->articleComment = $this->saveComment($this->article->id(), $this->webUser->id(), NULL, 0);
 
     // Create page.
-    $this->page = $this->drupalCreateNode(array('type' => 'page'));
+    $this->page = $this->drupalCreateNode(['type' => 'page']);
 
     // Set URIs.
     // Image.
     $image_file = $this->article->get('field_image')->entity;
     $this->imageUri = ImageStyle::load('large')->buildUrl($image_file->getFileUri());
     // Term.
-    $this->termUri = $this->term->url('canonical', array('absolute' => TRUE));
+    $this->termUri = $this->term->url('canonical', ['absolute' => TRUE]);
     // Article.
-    $this->articleUri = $this->article->url('canonical', array('absolute' => TRUE));
+    $this->articleUri = $this->article->url('canonical', ['absolute' => TRUE]);
     // Page.
-    $this->pageUri = $this->page->url('canonical', array('absolute' => TRUE));
+    $this->pageUri = $this->page->url('canonical', ['absolute' => TRUE]);
     // Author.
-    $this->authorUri = $this->adminUser->url('canonical', array('absolute' => TRUE));
+    $this->authorUri = $this->adminUser->url('canonical', ['absolute' => TRUE]);
     // Comment.
-    $this->articleCommentUri = $this->articleComment->url('canonical', array('absolute' => TRUE));
+    $this->articleCommentUri = $this->articleComment->url('canonical', ['absolute' => TRUE]);
     // Commenter.
-    $this->commenterUri = $this->webUser->url('canonical', array('absolute' => TRUE));
+    $this->commenterUri = $this->webUser->url('canonical', ['absolute' => TRUE]);
 
     $this->drupalLogout();
   }
@@ -211,11 +211,11 @@ protected function doFrontPageRdfaTests() {
     $this->assertEqual(2, count($graph->allOfType('http://schema.org/Article')), 'Two articles found on front page.');
 
     // Test interaction count.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => 'UserComments:1',
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleUri, 'http://schema.org/interactionCount', $expected_value), "Teaser comment count was found (schema:interactionCount).");
 
     // Test the properties that are common between pages and articles and are
@@ -228,10 +228,10 @@ protected function doFrontPageRdfaTests() {
     //   image, move this to testArticleProperties().
     $image_file = $this->article->get('field_image')->entity;
     $image_uri = ImageStyle::load('medium')->buildUrl($image_file->getFileUri());
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $image_uri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleUri, 'http://schema.org/image', $expected_value), "Teaser image was found (schema:image).");
   }
 
@@ -258,10 +258,10 @@ protected function doArticleRdfaTests() {
 
     // @todo Once the image points to the original instead of the processed
     //   image, move this to testArticleProperties().
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->imageUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleUri, 'http://schema.org/image', $expected_value), "Article image was found (schema:image).");
   }
 
@@ -303,10 +303,10 @@ protected function doUserRdfaTests() {
     $this->assertEqual($graph->type($this->authorUri), 'schema:Person', "User type was found (schema:Person) on user page.");
 
     // User name.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->adminUser->label(),
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->authorUri, 'http://schema.org/name', $expected_value), "User name was found (schema:name) on user page.");
 
     $this->drupalLogout();
@@ -323,11 +323,11 @@ protected function doTermRdfaTests() {
     $this->assertEqual($graph->type($this->termUri), 'schema:Thing', "Term type was found (schema:Thing) on term page.");
 
     // Term name.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->term->getName(),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->termUri, 'http://schema.org/name', $expected_value), "Term name was found (schema:name) on term page.");
 
     // @todo Add test for term description once it is a field:
@@ -345,47 +345,47 @@ protected function doTermRdfaTests() {
    *   The word to use in the test assertion message.
    */
   protected function assertRdfaCommonNodeProperties($graph, NodeInterface $node, $message_prefix) {
-    $uri = $node->url('canonical', array('absolute' => TRUE));
+    $uri = $node->url('canonical', ['absolute' => TRUE]);
 
     // Title.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $node->get('title')->value,
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($uri, 'http://schema.org/name', $expected_value), "$message_prefix title was found (schema:name).");
 
     // Created date.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => format_date($node->get('created')->value, 'custom', 'c', 'UTC'),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($uri, 'http://schema.org/dateCreated', $expected_value), "$message_prefix created date was found (schema:dateCreated) in teaser.");
 
     // Body.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $node->get('body')->value,
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($uri, 'http://schema.org/text', $expected_value), "$message_prefix body was found (schema:text) in teaser.");
 
     // Author.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->authorUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($uri, 'http://schema.org/author', $expected_value), "$message_prefix author was found (schema:author) in teaser.");
 
     // Author type.
     $this->assertEqual($graph->type($this->authorUri), 'schema:Person', "$message_prefix author type was found (schema:Person).");
 
     // Author name.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->adminUser->label(),
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->authorUri, 'http://schema.org/name', $expected_value), "$message_prefix author name was found (schema:name).");
   }
 
@@ -399,10 +399,10 @@ protected function assertRdfaCommonNodeProperties($graph, NodeInterface $node, $
    */
   protected function assertRdfaArticleProperties($graph, $message_prefix) {
     // Tags.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->termUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleUri, 'http://schema.org/about', $expected_value), "$message_prefix tag was found (schema:about).");
 
     // Tag type.
@@ -410,11 +410,11 @@ protected function assertRdfaArticleProperties($graph, $message_prefix) {
     //$this->assertEqual($graph->type($this->termUri), 'schema:Thing', 'Tag type was found (schema:Thing).');
 
     // Tag name.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->term->getName(),
       'lang' => 'en',
-    );
+    ];
     // @todo Enable with https://www.drupal.org/node/2072791.
     //$this->assertTrue($graph->hasProperty($this->termUri, 'http://schema.org/name', $expected_value), "$message_prefix name was found (schema:name).");
   }
@@ -427,58 +427,58 @@ protected function assertRdfaArticleProperties($graph, $message_prefix) {
    */
   protected function assertRdfaNodeCommentProperties($graph) {
     // Relationship between node and comment.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->articleCommentUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleUri, 'http://schema.org/comment', $expected_value), 'Relationship between node and comment found (schema:comment).');
 
     // Comment type.
     $this->assertEqual($graph->type($this->articleCommentUri), 'schema:Comment', 'Comment type was found (schema:Comment).');
 
     // Comment title.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->articleComment->get('subject')->value,
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleCommentUri, 'http://schema.org/name', $expected_value), 'Article comment title was found (schema:name).');
 
     // Comment created date.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => format_date($this->articleComment->get('created')->value, 'custom', 'c', 'UTC'),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleCommentUri, 'http://schema.org/dateCreated', $expected_value), 'Article comment created date was found (schema:dateCreated).');
 
     // Comment body.
     $text = $this->articleComment->get('comment_body')->value;
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       // There is an extra carriage return in the when parsing comments as
       // output by Bartik, so it must be added to the expected value.
       'value' => "$text
 ",
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleCommentUri, 'http://schema.org/text', $expected_value), 'Article comment body was found (schema:text).');
 
     // Comment uid.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => $this->commenterUri,
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->articleCommentUri, 'http://schema.org/author', $expected_value), 'Article comment author was found (schema:author).');
 
     // Comment author type.
     $this->assertEqual($graph->type($this->commenterUri), 'schema:Person', 'Comment author type was found (schema:Person).');
 
     // Comment author name.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $this->webUser->getUsername(),
-    );
+    ];
     $this->assertTrue($graph->hasProperty($this->commenterUri, 'http://schema.org/name', $expected_value), 'Comment author name was found (schema:name).');
   }
 
@@ -499,7 +499,7 @@ protected function assertRdfaNodeCommentProperties($graph) {
    *   The saved comment.
    */
   protected function saveComment($nid, $uid, $contact = NULL, $pid = 0) {
-    $values = array(
+    $values = [
       'entity_id' => $nid,
       'entity_type' => 'node',
       'field_name' => 'comment',
@@ -508,7 +508,7 @@ protected function saveComment($nid, $uid, $contact = NULL, $pid = 0) {
       'subject' => $this->randomMachineName(),
       'comment_body' => $this->randomMachineName(),
       'status' => 1,
-    );
+    ];
     if ($contact) {
       $values += $contact;
     }
diff --git a/core/modules/rdf/tests/src/Functional/TaxonomyAttributesTest.php b/core/modules/rdf/tests/src/Functional/TaxonomyAttributesTest.php
index 799b764..b21098e 100644
--- a/core/modules/rdf/tests/src/Functional/TaxonomyAttributesTest.php
+++ b/core/modules/rdf/tests/src/Functional/TaxonomyAttributesTest.php
@@ -16,7 +16,7 @@ class TaxonomyAttributesTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'views');
+  public static $modules = ['rdf', 'views'];
 
   /**
    * Vocabulary created for testing purposes.
@@ -32,10 +32,10 @@ protected function setUp() {
 
     // RDF mapping - term bundle.
     rdf_get_mapping('taxonomy_term', $this->vocabulary->id())
-      ->setBundleMapping(array('types' => array('skos:Concept')))
-      ->setFieldMapping('name', array(
-        'properties' => array('rdfs:label', 'skos:prefLabel'),
-      ))
+      ->setBundleMapping(['types' => ['skos:Concept']])
+      ->setFieldMapping('name', [
+        'properties' => ['rdfs:label', 'skos:prefLabel'],
+      ])
       ->save();
   }
 
@@ -54,24 +54,24 @@ function testTaxonomyTermRdfaAttributes() {
 
     // Inspects RDF graph output.
     // Term type.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'uri',
       'value' => 'http://www.w3.org/2004/02/skos/core#Concept',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($term_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'Term type found in RDF output (skos:Concept).');
     // Term label.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $term->getName(),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($term_uri, 'http://www.w3.org/2000/01/rdf-schema#label', $expected_value), 'Term label found in RDF output (rdfs:label).');
     // Term label.
-    $expected_value = array(
+    $expected_value = [
       'type' => 'literal',
       'value' => $term->getName(),
       'lang' => 'en',
-    );
+    ];
     $this->assertTrue($graph->hasProperty($term_uri, 'http://www.w3.org/2004/02/skos/core#prefLabel', $expected_value), 'Term label found in RDF output (skos:prefLabel).');
 
     // @todo Add test for term description once it is a field:
diff --git a/core/modules/rdf/tests/src/Functional/UserAttributesTest.php b/core/modules/rdf/tests/src/Functional/UserAttributesTest.php
index 82c70d9..7c16a18 100644
--- a/core/modules/rdf/tests/src/Functional/UserAttributesTest.php
+++ b/core/modules/rdf/tests/src/Functional/UserAttributesTest.php
@@ -16,17 +16,17 @@ class UserAttributesTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf', 'node');
+  public static $modules = ['rdf', 'node'];
 
   protected function setUp() {
     parent::setUp();
     rdf_get_mapping('user', 'user')
-      ->setBundleMapping(array(
-        'types' => array('sioc:UserAccount'),
-      ))
-      ->setFieldMapping('name', array(
-        'properties' => array('foaf:name'),
-      ))
+      ->setBundleMapping([
+        'types' => ['sioc:UserAccount'],
+      ])
+      ->setFieldMapping('name', [
+        'properties' => ['foaf:name'],
+      ])
       ->save();
   }
 
@@ -40,17 +40,17 @@ function testUserAttributesInMarkup() {
     // Creates users that should and should not be truncated
     // by template_preprocess_username (20 characters)
     // one of these users tests right on the cusp (20).
-    $user1 = $this->drupalCreateUser(array('access user profiles'));
+    $user1 = $this->drupalCreateUser(['access user profiles']);
 
-    $authors = array(
-      $this->drupalCreateUser(array(), $this->randomMachineName(30)),
-      $this->drupalCreateUser(array(), $this->randomMachineName(20)),
-      $this->drupalCreateUser(array(), $this->randomMachineName(5))
-    );
+    $authors = [
+      $this->drupalCreateUser([], $this->randomMachineName(30)),
+      $this->drupalCreateUser([], $this->randomMachineName(20)),
+      $this->drupalCreateUser([], $this->randomMachineName(5))
+    ];
 
     $this->drupalLogin($user1);
 
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
     /** @var \Drupal\user\UserInterface[] $authors */
     foreach ($authors as $author) {
@@ -65,21 +65,21 @@ function testUserAttributesInMarkup() {
 
       // Inspects RDF graph output.
       // User type.
-      $expected_value = array(
+      $expected_value = [
         'type' => 'uri',
         'value' => 'http://rdfs.org/sioc/ns#UserAccount',
-      );
+      ];
       $this->assertTrue($graph->hasProperty($account_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'User type found in RDF output (sioc:UserAccount).');
       // User name.
-      $expected_value = array(
+      $expected_value = [
         'type' => 'literal',
         'value' => $author->getUsername(),
-      );
+      ];
       $this->assertTrue($graph->hasProperty($account_uri, 'http://xmlns.com/foaf/0.1/name', $expected_value), 'User name found in RDF output (foaf:name).');
 
       // User creates a node.
       $this->drupalLogin($author);
-      $node = $this->drupalCreateNode(array('type' => 'article', 'promote' => 1));
+      $node = $this->drupalCreateNode(['type' => 'article', 'promote' => 1]);
       $this->drupalLogin($user1);
 
       // Parses the node created by the user.
@@ -90,16 +90,16 @@ function testUserAttributesInMarkup() {
 
       // Ensures the default bundle mapping for user is used on the Authored By
       // information on the node.
-      $expected_value = array(
+      $expected_value = [
         'type' => 'uri',
         'value' => 'http://rdfs.org/sioc/ns#UserAccount',
-      );
+      ];
       $this->assertTrue($graph->hasProperty($account_uri, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', $expected_value), 'User type found in RDF output (sioc:UserAccount).');
       // User name.
-      $expected_value = array(
+      $expected_value = [
         'type' => 'literal',
         'value' => $author->getUsername(),
-      );
+      ];
       $this->assertTrue($graph->hasProperty($account_uri, 'http://xmlns.com/foaf/0.1/name', $expected_value), 'User name found in RDF output (foaf:name).');
 
     }
diff --git a/core/modules/rdf/tests/src/Kernel/CrudTest.php b/core/modules/rdf/tests/src/Kernel/CrudTest.php
index 60b4208..1dbb505 100644
--- a/core/modules/rdf/tests/src/Kernel/CrudTest.php
+++ b/core/modules/rdf/tests/src/Kernel/CrudTest.php
@@ -16,7 +16,7 @@ class CrudTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'rdf', 'system');
+  public static $modules = ['entity_test', 'rdf', 'system'];
 
   /**
    * @var string
@@ -57,18 +57,18 @@ function testMappingCreation() {
    */
   function testBundleMapping() {
     // Test that the bundle mapping can be saved.
-    $types = array('sioc:Post', 'foaf:Document');
+    $types = ['sioc:Post', 'foaf:Document'];
     rdf_get_mapping($this->entityType, $this->bundle)
-      ->setBundleMapping(array('types' => $types))
+      ->setBundleMapping(['types' => $types])
       ->save();
     $bundle_mapping = rdf_get_mapping($this->entityType, $this->bundle)
       ->getBundleMapping();
     $this->assertEqual($types, $bundle_mapping['types'], 'Bundle mapping saved.');
 
     // Test that the bundle mapping can be edited.
-    $types = array('schema:BlogPosting');
+    $types = ['schema:BlogPosting'];
     rdf_get_mapping($this->entityType, $this->bundle)
-      ->setBundleMapping(array('types' => $types))
+      ->setBundleMapping(['types' => $types])
       ->save();
     $bundle_mapping = rdf_get_mapping($this->entityType, $this->bundle)
       ->getBundleMapping();
@@ -82,11 +82,11 @@ function testFieldMapping() {
     $field_name = 'created';
 
     // Test that the field mapping can be saved.
-    $mapping = array(
-      'properties' => array('dc:created'),
+    $mapping = [
+      'properties' => ['dc:created'],
       'datatype' => 'xsd:dateTime',
-      'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'),
-    );
+      'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'],
+    ];
     rdf_get_mapping($this->entityType, $this->bundle)
       ->setFieldMapping($field_name, $mapping)
       ->save();
@@ -95,11 +95,11 @@ function testFieldMapping() {
     $this->assertEqual($mapping, $field_mapping, 'Field mapping saved.');
 
     // Test that the field mapping can be edited.
-    $mapping = array(
-      'properties' => array('dc:date'),
+    $mapping = [
+      'properties' => ['dc:date'],
       'datatype' => 'foo:bar',
-      'datatype_callback' => array('callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'),
-    );
+      'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'],
+    ];
     rdf_get_mapping($this->entityType, $this->bundle)
       ->setFieldMapping($field_name, $mapping)
       ->save();
diff --git a/core/modules/rdf/tests/src/Kernel/Field/DateTimeFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/DateTimeFieldRdfaTest.php
index a35a9c4..fc78691 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/DateTimeFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/DateTimeFieldRdfaTest.php
@@ -26,7 +26,7 @@ class DateTimeFieldRdfaTest extends FieldRdfaTestBase {
   /**
   * {@inheritdoc}
   */
-  public static $modules = array('datetime');
+  public static $modules = ['datetime'];
 
   protected function setUp() {
     parent::setUp();
@@ -35,12 +35,12 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:dateCreated'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:dateCreated'],
+    ])->save();
 
     // Set up test entity.
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->value = $this->testValue;
   }
 
@@ -48,7 +48,7 @@ protected function setUp() {
    * Tests the default formatter.
    */
   public function testDefaultFormatter() {
-    $this->assertFormatterRdfa(array('type' => 'datetime_default'), 'http://schema.org/dateCreated', array('value' => $this->testValue . 'Z', 'type' => 'literal', 'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime'));
+    $this->assertFormatterRdfa(['type' => 'datetime_default'], 'http://schema.org/dateCreated', ['value' => $this->testValue . 'Z', 'type' => 'literal', 'datatype' => 'http://www.w3.org/2001/XMLSchema#dateTime']);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/EmailFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/EmailFieldRdfaTest.php
index c121751..85ae888 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/EmailFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/EmailFieldRdfaTest.php
@@ -19,7 +19,7 @@ class EmailFieldRdfaTest extends FieldRdfaTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('text');
+  public static $modules = ['text'];
 
   protected function setUp() {
     parent::setUp();
@@ -28,13 +28,13 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:email'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:email'],
+    ])->save();
 
     // Set up test values.
     $this->testValue = 'test@example.com';
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->value = $this->testValue;
   }
 
@@ -43,9 +43,9 @@ protected function setUp() {
    */
   public function testAllFormatters() {
     // Test the plain formatter.
-    $this->assertFormatterRdfa(array('type' => 'string'), 'http://schema.org/email', array('value' => $this->testValue));
+    $this->assertFormatterRdfa(['type' => 'string'], 'http://schema.org/email', ['value' => $this->testValue]);
     // Test the mailto formatter.
-    $this->assertFormatterRdfa(array('type' => 'email_mailto'), 'http://schema.org/email', array('value' => $this->testValue));
+    $this->assertFormatterRdfa(['type' => 'email_mailto'], 'http://schema.org/email', ['value' => $this->testValue]);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/EntityReferenceRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/EntityReferenceRdfaTest.php
index cefa7e0..9312fbc 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/EntityReferenceRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/EntityReferenceRdfaTest.php
@@ -52,7 +52,7 @@ protected function setUp() {
     $this->installEntitySchema('entity_test_rev');
 
     // Give anonymous users permission to view test entities.
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
     Role::load(RoleInterface::ANONYMOUS_ID)
       ->grantPermission('view test entity')
       ->save();
@@ -61,20 +61,20 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:knows'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:knows'],
+    ])->save();
 
     // Create the entity to be referenced.
     $this->targetEntity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
+      ->create(['name' => $this->randomMachineName()]);
     $this->targetEntity->save();
 
     // Create the entity that will have the entity reference field.
     $this->entity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
+      ->create(['name' => $this->randomMachineName()]);
     $this->entity->save();
     $this->entity->{$this->fieldName}->entity = $this->targetEntity;
     $this->uri = $this->getAbsoluteUri($this->entity);
@@ -87,9 +87,9 @@ public function testAllFormatters() {
     $entity_uri = $this->getAbsoluteUri($this->targetEntity);
 
     // Tests the label formatter.
-    $this->assertFormatterRdfa(array('type' => 'entity_reference_label'), 'http://schema.org/knows', array('value' => $entity_uri, 'type' => 'uri'));
+    $this->assertFormatterRdfa(['type' => 'entity_reference_label'], 'http://schema.org/knows', ['value' => $entity_uri, 'type' => 'uri']);
     // Tests the entity formatter.
-    $this->assertFormatterRdfa(array('type' => 'entity_reference_entity_view'), 'http://schema.org/knows', array('value' => $entity_uri, 'type' => 'uri'));
+    $this->assertFormatterRdfa(['type' => 'entity_reference_entity_view'], 'http://schema.org/knows', ['value' => $entity_uri, 'type' => 'uri']);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaDatatypeCallbackTest.php b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaDatatypeCallbackTest.php
index 1e1a809..94f7f24 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaDatatypeCallbackTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaDatatypeCallbackTest.php
@@ -19,23 +19,23 @@ class FieldRdfaDatatypeCallbackTest extends FieldRdfaTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('text', 'filter');
+  public static $modules = ['text', 'filter'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->createTestField();
 
-    $this->installConfig(array('filter'));
+    $this->installConfig(['filter']);
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:interactionCount'),
-      'datatype_callback' => array(
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:interactionCount'],
+      'datatype_callback' => [
         'callable' => 'Drupal\rdf\Tests\Field\TestDataConverter::convertFoo',
-      ),
-    ))->save();
+      ],
+    ])->save();
 
     // Set up test values.
     $this->testValue = $this->randomMachineName();
@@ -51,7 +51,7 @@ protected function setUp() {
    */
   public function testDefaultFormatter() {
     // Expected value is the output of the datatype callback, not the raw value.
-    $this->assertFormatterRdfa(array('type' => 'text_default'), 'http://schema.org/interactionCount', array('value' => 'foo' . $this->testValue));
+    $this->assertFormatterRdfa(['type' => 'text_default'], 'http://schema.org/interactionCount', ['value' => 'foo' . $this->testValue]);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
index 7431185..82ea9ef 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/FieldRdfaTestBase.php
@@ -48,7 +48,7 @@
    *
    * @var array
    */
-  public static $modules = array('rdf');
+  public static $modules = ['rdf'];
 
   /**
    * @var string
@@ -83,7 +83,7 @@ protected function setUp() {
    *   - datatype: (optional) The datatype of the value (e.g. xsd:dateTime).
    */
   protected function assertFormatterRdfa($formatter, $property, $expected_rdf_value) {
-    $expected_rdf_value += array('type' => 'literal');
+    $expected_rdf_value += ['type' => 'literal'];
 
     // The field formatter will be rendered inside the entity. Set the field
     // formatter in the entity display options before rendering the entity.
@@ -111,12 +111,12 @@ protected function assertFormatterRdfa($formatter, $property, $expected_rdf_valu
    * @param array $field_settings
    *   (optional) An array of field settings.
    */
-  protected function createTestField($field_settings = array()) {
-    FieldStorageConfig::create(array(
+  protected function createTestField($field_settings = []) {
+    FieldStorageConfig::create([
       'field_name' => $this->fieldName,
       'entity_type' => 'entity_test',
       'type' => $this->fieldType,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => $this->fieldName,
@@ -135,7 +135,7 @@ protected function createTestField($field_settings = array()) {
    *   The absolute URI.
    */
   protected function getAbsoluteUri($entity) {
-    return $entity->url('canonical', array('absolute' => TRUE));
+    return $entity->url('canonical', ['absolute' => TRUE]);
   }
 
   /**
@@ -172,14 +172,14 @@ protected function parseContent($content) {
    *   format and return values see the SimpleXML documentation,
    *   http://php.net/manual/function.simplexml-element-xpath.php.
    */
-  protected function xpathContent($content, $xpath, array $arguments = array()) {
+  protected function xpathContent($content, $xpath, array $arguments = []) {
     if ($elements = $this->parseContent($content)) {
       $xpath = $this->buildXPathQuery($xpath, $arguments);
       $result = $elements->xpath($xpath);
       // Some combinations of PHP / libxml versions return an empty array
       // instead of the documented FALSE. Forcefully convert any falsish values
       // to an empty array to allow foreach(...) constructions.
-      return $result ? $result : array();
+      return $result ? $result : [];
     }
     else {
       return FALSE;
diff --git a/core/modules/rdf/tests/src/Kernel/Field/LinkFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/LinkFieldRdfaTest.php
index d4e1cf0..30735e3 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/LinkFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/LinkFieldRdfaTest.php
@@ -19,7 +19,7 @@ class LinkFieldRdfaTest extends FieldRdfaTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('link', 'text');
+  public static $modules = ['link', 'text'];
 
   /**
    * {@inheritdoc}
@@ -31,9 +31,9 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:link'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:link'],
+    ])->save();
 
   }
 
@@ -43,14 +43,14 @@ protected function setUp() {
   public function testAllFormattersExternal() {
     // Set up test values.
     $this->testValue = 'http://test.me/foo/bar/neque/porro/quisquam/est/qui-dolorem?foo/bar/neque/porro/quisquam/est/qui-dolorem';
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->uri = $this->testValue;
 
     // Set up the expected result.
-    $expected_rdf = array(
+    $expected_rdf = [
       'value' => $this->testValue,
       'type' => 'uri',
-    );
+    ];
 
     $this->runTestAllFormatters($expected_rdf, 'external');
   }
@@ -61,15 +61,15 @@ public function testAllFormattersExternal() {
   public function testAllFormattersInternal() {
     // Set up test values.
     $this->testValue = 'admin';
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->uri = 'internal:/admin';
 
     // Set up the expected result.
     // AssertFormatterRdfa looks for a full path.
-    $expected_rdf = array(
+    $expected_rdf = [
       'value' => $this->uri . '/' . $this->testValue,
       'type' => 'uri',
-    );
+    ];
 
     $this->runTestAllFormatters($expected_rdf, 'internal');
   }
@@ -80,14 +80,14 @@ public function testAllFormattersInternal() {
   public function testAllFormattersFront() {
     // Set up test values.
     $this->testValue = '/';
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->uri = 'internal:/';
 
     // Set up the expected result.
-    $expected_rdf = array(
+    $expected_rdf = [
       'value' => $this->uri . '/',
       'type' => 'uri',
-    );
+    ];
 
     $this->runTestAllFormatters($expected_rdf, 'front');
   }
@@ -98,86 +98,86 @@ public function testAllFormattersFront() {
   public function runTestAllFormatters($expected_rdf, $type = NULL) {
 
     // Test the link formatter: trim at 80, no other settings.
-    $formatter = array(
+    $formatter = [
       'type' => 'link',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 80,
         'url_only' => FALSE,
         'url_plain' => FALSE,
         'rel' => '',
         'target' => '',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
 
     // Test the link formatter: trim at 40, nofollow, new window.
-    $formatter = array(
+    $formatter = [
       'type' => 'link',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 40,
         'url_only' => FALSE,
         'url_plain' => FALSE,
         'rel' => 'nofollow',
         'target' => '_blank',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
 
     // Test the link formatter: trim at 40, URL only (not plaintext) nofollow,
     // new window.
-    $formatter = array(
+    $formatter = [
       'type' => 'link',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 40,
         'url_only' => TRUE,
         'url_plain' => FALSE,
         'rel' => 'nofollow',
         'target' => '_blank',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
 
     // Test the link_separate formatter: trim at 40, nofollow, new window.
-    $formatter = array(
+    $formatter = [
       'type' => 'link_separate',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 40,
         'rel' => 'nofollow',
         'target' => '_blank',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
 
     // Change the expected value here to literal. When formatted as plaintext
     // then the RDF is expecting a 'literal' not a 'uri'.
-    $expected_rdf = array(
+    $expected_rdf = [
       'value' => $this->testValue,
       'type' => 'literal',
-    );
+    ];
     // Test the link formatter: trim at 20, url only (as plaintext.)
-    $formatter = array(
+    $formatter = [
       'type' => 'link',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 20,
         'url_only' => TRUE,
         'url_plain' => TRUE,
         'rel' => '0',
         'target' => '0',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
 
     // Test the link formatter: do not trim, url only (as plaintext.)
-    $formatter = array(
+    $formatter = [
       'type' => 'link',
-      'settings' => array(
+      'settings' => [
         'trim_length' => 0,
         'url_only' => TRUE,
         'url_plain' => TRUE,
         'rel' => '0',
         'target' => '0',
-      ),
-    );
+      ],
+    ];
     $this->assertFormatterRdfa($formatter, 'http://schema.org/link', $expected_rdf);
   }
 
diff --git a/core/modules/rdf/tests/src/Kernel/Field/NumberFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/NumberFieldRdfaTest.php
index c0652ec..5c7d385 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/NumberFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/NumberFieldRdfaTest.php
@@ -19,7 +19,7 @@ public function testIntegerFormatter() {
     $testValue = 3;
     $this->createTestField();
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa(array('type' => 'number_integer'), 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa(['type' => 'number_integer'], 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is not created.
     $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__items") and @content]');
@@ -33,24 +33,24 @@ public function testIntegerFormatterWithSettings() {
     \Drupal::service('theme_handler')->install(['classy']);
     $this->config('system.theme')->set('default', 'classy')->save();
     $this->fieldType = 'integer';
-    $formatter = array(
+    $formatter = [
       'type' => 'number_integer',
-      'settings' => array(
+      'settings' => [
         'thousand_separator' => '.',
         'prefix_suffix' => TRUE,
-      ),
-    );
+      ],
+    ];
     $testValue = 3333333.33;
-    $field_settings = array(
+    $field_settings = [
       'prefix' => '#',
       'suffix' => ' llamas.',
-    );
+    ];
     $this->createTestField($field_settings);
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is created.
-    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', array(':testValue' => $testValue));
+    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', [':testValue' => $testValue]);
     $this->assertTrue($result);
   }
 
@@ -62,7 +62,7 @@ public function testFloatFormatter() {
     $testValue = 3.33;
     $this->createTestField();
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa(array('type' => 'number_unformatted'), 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa(['type' => 'number_unformatted'], 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is not created.
     $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__items") and @content]');
@@ -76,25 +76,25 @@ public function testFloatFormatterWithSettings() {
     \Drupal::service('theme_handler')->install(['classy']);
     $this->config('system.theme')->set('default', 'classy')->save();
     $this->fieldType = 'float';
-    $formatter = array(
+    $formatter = [
       'type' => 'number_decimal',
-      'settings' => array(
+      'settings' => [
         'thousand_separator' => '.',
         'decimal_separator' => ',',
         'prefix_suffix' => TRUE,
-      ),
-    );
+      ],
+    ];
     $testValue = 3333333.33;
-    $field_settings = array(
+    $field_settings = [
       'prefix' => '$',
       'suffix' => ' more.',
-    );
+    ];
     $this->createTestField($field_settings);
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is created.
-    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', array(':testValue' => $testValue));
+    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', [':testValue' => $testValue]);
     $this->assertTrue($result);
   }
 
@@ -103,16 +103,16 @@ public function testFloatFormatterWithSettings() {
    */
   public function testFloatFormatterWithScale() {
     $this->fieldType = 'float';
-    $formatter = array(
+    $formatter = [
       'type' => 'number_decimal',
-      'settings' => array(
+      'settings' => [
         'scale' => 5,
-      ),
-    );
+      ],
+    ];
     $testValue = 3.33;
     $this->createTestField();
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is not created.
     $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__items") and @content]');
@@ -126,19 +126,19 @@ public function testFloatFormatterWithScaleExercised() {
     \Drupal::service('theme_handler')->install(['classy']);
     $this->config('system.theme')->set('default', 'classy')->save();
     $this->fieldType = 'float';
-    $formatter = array(
+    $formatter = [
       'type' => 'number_decimal',
-      'settings' => array(
+      'settings' => [
         'scale' => 5,
-      ),
-    );
+      ],
+    ];
     $testValue = 3.1234567;
     $this->createTestField();
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is created.
-    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', array(':testValue' => $testValue));
+    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', [':testValue' => $testValue]);
     $this->assertTrue($result);
   }
 
@@ -150,7 +150,7 @@ public function testDecimalFormatter() {
     $testValue = 3.33;
     $this->createTestField();
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa(array('type' => 'number_decimal'), 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa(['type' => 'number_decimal'], 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is not created.
     $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__items") and @content]');
@@ -164,25 +164,25 @@ public function testDecimalFormatterWithSettings() {
     \Drupal::service('theme_handler')->install(['classy']);
     $this->config('system.theme')->set('default', 'classy')->save();
     $this->fieldType = 'decimal';
-    $formatter = array(
+    $formatter = [
       'type' => 'number_decimal',
-      'settings' => array(
+      'settings' => [
         'thousand_separator' => 't',
         'decimal_separator' => '#',
         'prefix_suffix' => TRUE,
-      ),
-    );
+      ],
+    ];
     $testValue = 3333333.33;
-    $field_settings = array(
+    $field_settings = [
       'prefix' => '$',
       'suffix' => ' more.',
-    );
+    ];
     $this->createTestField($field_settings);
     $this->createTestEntity($testValue);
-    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', array('value' => $testValue));
+    $this->assertFormatterRdfa($formatter, 'http://schema.org/baseSalary', ['value' => $testValue]);
 
     // Test that the content attribute is created.
-    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', array(':testValue' => $testValue));
+    $result = $this->xpathContent($this->getRawContent(), '//div[contains(@class, "field__item") and @content=:testValue]', [':testValue' => $testValue]);
     $this->assertTrue($result);
   }
 
@@ -192,12 +192,12 @@ public function testDecimalFormatterWithSettings() {
   protected function createTestEntity($testValue) {
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:baseSalary'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:baseSalary'],
+    ])->save();
 
     // Set up test entity.
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->value = $testValue;
   }
 
diff --git a/core/modules/rdf/tests/src/Kernel/Field/StringFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/StringFieldRdfaTest.php
index a0b28e9..738e40c 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/StringFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/StringFieldRdfaTest.php
@@ -37,9 +37,9 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:text'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:text'],
+    ])->save();
 
     // Set up test entity.
     $this->entity = EntityTest::create();
@@ -52,7 +52,7 @@ protected function setUp() {
    */
   public function testStringFormatters() {
     // Tests the string formatter.
-    $this->assertFormatterRdfa(array('type' => 'string'), 'http://schema.org/text', array('value' => $this->testValue));
+    $this->assertFormatterRdfa(['type' => 'string'], 'http://schema.org/text', ['value' => $this->testValue]);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/TelephoneFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/TelephoneFieldRdfaTest.php
index 9741256..d705b21 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/TelephoneFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/TelephoneFieldRdfaTest.php
@@ -26,7 +26,7 @@ class TelephoneFieldRdfaTest extends FieldRdfaTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('telephone', 'text');
+  public static $modules = ['telephone', 'text'];
 
   protected function setUp() {
     parent::setUp();
@@ -35,13 +35,13 @@ protected function setUp() {
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:telephone'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:telephone'],
+    ])->save();
 
     // Set up test values.
     $this->testValue = '555-555-5555';
-    $this->entity = EntityTest::create(array());
+    $this->entity = EntityTest::create([]);
     $this->entity->{$this->fieldName}->value = $this->testValue;
   }
 
@@ -50,18 +50,18 @@ protected function setUp() {
    */
   public function testAllFormatters() {
     // Tests the plain formatter.
-    $this->assertFormatterRdfa(array('type' => 'string'), 'http://schema.org/telephone', array('value' => $this->testValue));
+    $this->assertFormatterRdfa(['type' => 'string'], 'http://schema.org/telephone', ['value' => $this->testValue]);
     // Tests the telephone link formatter.
-    $this->assertFormatterRdfa(array('type' => 'telephone_link'), 'http://schema.org/telephone', array('value' => 'tel:' . $this->testValue, 'type' => 'uri'));
+    $this->assertFormatterRdfa(['type' => 'telephone_link'], 'http://schema.org/telephone', ['value' => 'tel:' . $this->testValue, 'type' => 'uri']);
 
-    $formatter = array(
+    $formatter = [
       'type' => 'telephone_link',
-      'settings' => array('title' => 'Contact us'),
-    );
-    $expected_rdf_value = array(
+      'settings' => ['title' => 'Contact us'],
+    ];
+    $expected_rdf_value = [
       'value' => 'tel:' . $this->testValue,
       'type' => 'uri',
-    );
+    ];
     // Tests the telephone link formatter with custom title.
     $this->assertFormatterRdfa($formatter, 'http://schema.org/telephone', $expected_rdf_value);
   }
diff --git a/core/modules/rdf/tests/src/Kernel/Field/TextFieldRdfaTest.php b/core/modules/rdf/tests/src/Kernel/Field/TextFieldRdfaTest.php
index cce3499..48bc5b8 100644
--- a/core/modules/rdf/tests/src/Kernel/Field/TextFieldRdfaTest.php
+++ b/core/modules/rdf/tests/src/Kernel/Field/TextFieldRdfaTest.php
@@ -33,20 +33,20 @@ class TextFieldRdfaTest extends FieldRdfaTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('text', 'filter');
+  public static $modules = ['text', 'filter'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('filter'));
+    $this->installConfig(['filter']);
 
     $this->createTestField();
 
     // Add the mapping.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping($this->fieldName, array(
-      'properties' => array('schema:text'),
-    ))->save();
+    $mapping->setFieldMapping($this->fieldName, [
+      'properties' => ['schema:text'],
+    ])->save();
 
     // Set up test entity.
     $this->entity = EntityTest::create();
@@ -63,11 +63,11 @@ public function testAllFormatters() {
     $formatted_value = strip_tags($this->entity->{$this->fieldName}->processed);
 
     // Tests the default formatter.
-    $this->assertFormatterRdfa(array('type' => 'text_default'), 'http://schema.org/text', array('value' => $formatted_value));
+    $this->assertFormatterRdfa(['type' => 'text_default'], 'http://schema.org/text', ['value' => $formatted_value]);
     // Tests the summary formatter.
-    $this->assertFormatterRdfa(array('type' => 'text_summary_or_trimmed'), 'http://schema.org/text', array('value' => $formatted_value));
+    $this->assertFormatterRdfa(['type' => 'text_summary_or_trimmed'], 'http://schema.org/text', ['value' => $formatted_value]);
     // Tests the trimmed formatter.
-    $this->assertFormatterRdfa(array('type' => 'text_trimmed'), 'http://schema.org/text', array('value' => $formatted_value));
+    $this->assertFormatterRdfa(['type' => 'text_trimmed'], 'http://schema.org/text', ['value' => $formatted_value]);
   }
 
 }
diff --git a/core/modules/rdf/tests/src/Kernel/RdfaAttributesTest.php b/core/modules/rdf/tests/src/Kernel/RdfaAttributesTest.php
index 42a4dc4..e67e78b 100644
--- a/core/modules/rdf/tests/src/Kernel/RdfaAttributesTest.php
+++ b/core/modules/rdf/tests/src/Kernel/RdfaAttributesTest.php
@@ -16,16 +16,16 @@ class RdfaAttributesTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('rdf');
+  public static $modules = ['rdf'];
 
   /**
    * Test attribute creation for mappings which use 'property'.
    */
   function testProperty() {
-    $properties = array('dc:title');
+    $properties = ['dc:title'];
 
-    $mapping = array('properties' => $properties);
-    $expected_attributes = array('property' => $properties);
+    $mapping = ['properties' => $properties];
+    $expected_attributes = ['property' => $properties];
 
     $this->_testAttributes($expected_attributes, $mapping);
   }
@@ -34,17 +34,17 @@ function testProperty() {
    * Test attribute creation for mappings which use 'datatype'.
    */
   function testDatatype() {
-    $properties = array('foo:bar1');
+    $properties = ['foo:bar1'];
     $datatype = 'foo:bar1type';
 
-    $mapping = array(
+    $mapping = [
       'datatype' => $datatype,
       'properties' => $properties,
-    );
-    $expected_attributes = array(
+    ];
+    $expected_attributes = [
       'datatype' => $datatype,
       'property' => $properties,
-    );
+    ];
 
     $this->_testAttributes($expected_attributes, $mapping);
   }
@@ -53,22 +53,22 @@ function testDatatype() {
    * Test attribute creation for mappings which override human-readable content.
    */
   function testDatatypeCallback() {
-    $properties = array('dc:created');
+    $properties = ['dc:created'];
     $datatype = 'xsd:dateTime';
 
     $date = 1252750327;
     $iso_date = date('c', $date);
 
-    $mapping = array(
+    $mapping = [
       'datatype' => $datatype,
       'properties' => $properties,
-      'datatype_callback' => array('callable' => 'date_iso8601'),
-    );
-    $expected_attributes = array(
+      'datatype_callback' => ['callable' => 'date_iso8601'],
+    ];
+    $expected_attributes = [
       'datatype' => $datatype,
       'property' => $properties,
       'content' => $iso_date,
-    );
+    ];
 
     $this->_testAttributes($expected_attributes, $mapping, $date);
   }
@@ -78,22 +78,22 @@ function testDatatypeCallback() {
    * Test attribute creation for mappings which use data converters.
    */
   function testDatatypeCallbackWithConverter() {
-    $properties = array('schema:interactionCount');
+    $properties = ['schema:interactionCount'];
 
     $data = "23";
     $content = "UserComments:23";
 
-    $mapping = array(
+    $mapping = [
       'properties' => $properties,
-      'datatype_callback' => array(
+      'datatype_callback' => [
         'callable' => 'Drupal\rdf\SchemaOrgDataConverter::interactionCount',
-        'arguments' => array('interaction_type' => 'UserComments'),
-      ),
-    );
-    $expected_attributes = array(
+        'arguments' => ['interaction_type' => 'UserComments'],
+      ],
+    ];
+    $expected_attributes = [
       'property' => $properties,
       'content' => $content,
-    );
+    ];
 
     $this->_testAttributes($expected_attributes, $mapping, $data);
   }
@@ -102,13 +102,13 @@ function testDatatypeCallbackWithConverter() {
    * Test attribute creation for mappings which use 'rel'.
    */
   function testRel() {
-    $properties = array('sioc:has_creator', 'dc:creator');
+    $properties = ['sioc:has_creator', 'dc:creator'];
 
-    $mapping = array(
+    $mapping = [
       'properties' => $properties,
       'mapping_type' => 'rel',
-    );
-    $expected_attributes = array('rel' => $properties);
+    ];
+    $expected_attributes = ['rel' => $properties];
 
     $this->_testAttributes($expected_attributes, $mapping);
   }
diff --git a/core/modules/rdf/tests/src/Unit/RdfMappingConfigEntityUnitTest.php b/core/modules/rdf/tests/src/Unit/RdfMappingConfigEntityUnitTest.php
index d245a81..5908ee7 100644
--- a/core/modules/rdf/tests/src/Unit/RdfMappingConfigEntityUnitTest.php
+++ b/core/modules/rdf/tests/src/Unit/RdfMappingConfigEntityUnitTest.php
@@ -72,7 +72,7 @@ public function testCalculateDependencies() {
     $target_entity_type->expects($this->any())
       ->method('getProvider')
       ->will($this->returnValue('test_module'));
-    $values = array('targetEntityType' => $target_entity_type_id);
+    $values = ['targetEntityType' => $target_entity_type_id];
     $target_entity_type->expects($this->any())
       ->method('getBundleEntityType')
       ->will($this->returnValue(NULL));
@@ -102,11 +102,11 @@ public function testCalculateDependenciesWithEntityBundle() {
       ->method('getProvider')
       ->will($this->returnValue('test_module'));
     $bundle_id = $this->randomMachineName(10);
-    $values = array('targetEntityType' => $target_entity_type_id , 'bundle' => $bundle_id);
+    $values = ['targetEntityType' => $target_entity_type_id , 'bundle' => $bundle_id];
 
     $target_entity_type->expects($this->any())
       ->method('getBundleConfigDependency')
-      ->will($this->returnValue(array('type' => 'config', 'name' => 'test_module.type.' . $bundle_id)));
+      ->will($this->returnValue(['type' => 'config', 'name' => 'test_module.type.' . $bundle_id]));
 
     $this->entityManager->expects($this->at(0))
       ->method('getDefinition')
diff --git a/core/modules/responsive_image/responsive_image.module b/core/modules/responsive_image/responsive_image.module
index 359368d..4388e89 100644
--- a/core/modules/responsive_image/responsive_image.module
+++ b/core/modules/responsive_image/responsive_image.module
@@ -40,25 +40,25 @@ function responsive_image_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.responsive_image':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Responsive Image module provides an image formatter that allows browsers to select which image file to display based on media queries or which image file types the browser supports, using the HTML 5 picture and source elements and/or the sizes, srcset and type attributes. For more information, see the <a href=":responsive_image">online documentation for the Responsive Image module</a>.', array( ':responsive_image' => 'https://www.drupal.org/documentation/modules/responsive_image')) . '</p>';
+      $output .= '<p>' . t('The Responsive Image module provides an image formatter that allows browsers to select which image file to display based on media queries or which image file types the browser supports, using the HTML 5 picture and source elements and/or the sizes, srcset and type attributes. For more information, see the <a href=":responsive_image">online documentation for the Responsive Image module</a>.', [ ':responsive_image' => 'https://www.drupal.org/documentation/modules/responsive_image']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Defining responsive image styles') . '</dt>';
-      $output .= '<dd>' . t('By creating responsive image styles you define which options the browser has in selecting which image file to display. In most cases this means providing different image sizes based on the viewport size. On the <a href=":responsive_image_style">Responsive image styles</a> page, click <em>Add responsive image style</em> to create a new style. First choose a label, a fallback image style and a breakpoint group and click Save.', array(':responsive_image_style' => \Drupal::url('entity.responsive_image_style.collection'))) . '</dd>';
+      $output .= '<dd>' . t('By creating responsive image styles you define which options the browser has in selecting which image file to display. In most cases this means providing different image sizes based on the viewport size. On the <a href=":responsive_image_style">Responsive image styles</a> page, click <em>Add responsive image style</em> to create a new style. First choose a label, a fallback image style and a breakpoint group and click Save.', [':responsive_image_style' => \Drupal::url('entity.responsive_image_style.collection')]) . '</dd>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Fallback image style') . '</dt>';
       $output .= '<dd>' . t('The fallback image style is typically the smallest size image you expect to appear in this space. Because the responsive images module uses the Picturefill library so that responsive images can work in older browsers, the fallback image should only appear on a site if an error occurs.') . '</dd>';
       $output .= '<dt>' . t('Breakpoint groups: viewport sizing vs art direction') . '</dt>';
-      $output .= '<dd>' . t('The breakpoint group typically only needs a single breakpoint with an empty media query in order to do <em>viewport sizing.</em> Multiple breakpoints are used for changing the crop or aspect ratio of images at different viewport sizes, which is often referred to as <em>art direction.</em> Once you select a breakpoint group, you can choose which breakpoints to use for the responsive image style. By default, the option <em>do not use this breakpoint</em> is selected for each breakpoint. See the <a href=":breakpoint_help">help page of the Breakpoint module</a> for more information.', array(':breakpoint_help' => \Drupal::url('help.page', array('name' => 'breakpoint')))) . '</dd>';
+      $output .= '<dd>' . t('The breakpoint group typically only needs a single breakpoint with an empty media query in order to do <em>viewport sizing.</em> Multiple breakpoints are used for changing the crop or aspect ratio of images at different viewport sizes, which is often referred to as <em>art direction.</em> Once you select a breakpoint group, you can choose which breakpoints to use for the responsive image style. By default, the option <em>do not use this breakpoint</em> is selected for each breakpoint. See the <a href=":breakpoint_help">help page of the Breakpoint module</a> for more information.', [':breakpoint_help' => \Drupal::url('help.page', ['name' => 'breakpoint'])]) . '</dd>';
       $output .= '<dt>' . t('Breakpoint settings: sizes vs image styles') . '</dt>';
       $output .= '<dd>' . t('While you have the option to provide only one image style per breakpoint, the sizes option allows you to provide more options to browsers as to which image file it can display, even when using multiple breakpoints for art direction. Breakpoints are defined in the configuration files of the theme.') . '</dd>';
       $output .= '<dt>' . t('Sizes field') . '</dt>';
       $output .= '<dd>' . t('Once the sizes option is selected, you can let the browser know the size of this image in relation to the site layout, using the <em>Sizes</em> field. For a hero image that always fills the entire screen, you could simply enter 100vw, which means 100% of the viewport width. For an image that fills 90% of the screen for small viewports, but only fills 40% of the screen when the viewport is larger than 40em (typically 640px), you could enter "(min-width: 40em) 40vw, 90vw" in the Sizes field. The last item in the comma-separated list is the smallest viewport size: other items in the comma-separated list should have a media condition paired with an image width. <em>Media conditions</em> are similar to a media query, often a min-width paired with a viewport width using em or px units: e.g. (min-width: 640px) or (min-width: 40em). This is paired with the <em>image width</em> at that viewport size using px, em or vw units. The vw unit is viewport width and is used instead of a percentage because the percentage always refers to the width of the entire viewport.') . '</dd>';
       $output .= '<dt>' . t('Image styles for sizes') . '</dt>';
-      $output .= '<dd>' . t('Below the Sizes field you can choose multiple image styles so the browser can choose the best image file size to fill the space defined in the Sizes field. Typically you will want to use image styles that resize your image to have options that range from the smallest px width possible for the space the image will appear in to the largest px width possible, with a variety of widths in between. You may want to provide image styles with widths that are 1.5x to 2x the space available in the layout to account for high resolution screens. Image styles can be defined on the <a href=":image_styles">Image styles page</a> that is provided by the <a href=":image_help">Image module</a>.', array(':image_styles' => \Drupal::url('entity.image_style.collection'), ':image_help' => \Drupal::url('help.page', array('name' => 'image')))) . '</dd>';
+      $output .= '<dd>' . t('Below the Sizes field you can choose multiple image styles so the browser can choose the best image file size to fill the space defined in the Sizes field. Typically you will want to use image styles that resize your image to have options that range from the smallest px width possible for the space the image will appear in to the largest px width possible, with a variety of widths in between. You may want to provide image styles with widths that are 1.5x to 2x the space available in the layout to account for high resolution screens. Image styles can be defined on the <a href=":image_styles">Image styles page</a> that is provided by the <a href=":image_help">Image module</a>.', [':image_styles' => \Drupal::url('entity.image_style.collection'), ':image_help' => \Drupal::url('help.page', ['name' => 'image'])]) . '</dd>';
       $output .= '</dl></dd>';
       $output .= '<dt>' . t('Using responsive image styles in Image fields') . '</dt>';
-      $output .= '<dd>' . t('After defining responsive image styles, you can use them in the display settings for your Image fields, so that the site displays responsive images using the HTML5 picture tag. Open the Manage display page for the entity type (content type, taxonomy vocabulary, etc.) that the Image field is attached to. Choose the format <em>Responsive image</em>, click the Edit icon, and select one of the responsive image styles that you have created. For general information on how to manage fields and their display see the <a href=":field_ui">Field UI module help page</a>. For background information about entities and fields see the <a href=":field_help">Field module help page</a>.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':field_help' => \Drupal::url('help.page', array('name' => 'field')))) . '</dd>';
+      $output .= '<dd>' . t('After defining responsive image styles, you can use them in the display settings for your Image fields, so that the site displays responsive images using the HTML5 picture tag. Open the Manage display page for the entity type (content type, taxonomy vocabulary, etc.) that the Image field is attached to. Choose the format <em>Responsive image</em>, click the Edit icon, and select one of the responsive image styles that you have created. For general information on how to manage fields and their display see the <a href=":field_ui">Field UI module help page</a>. For background information about entities and fields see the <a href=":field_help">Field module help page</a>.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':field_help' => \Drupal::url('help.page', ['name' => 'field'])]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -71,25 +71,25 @@ function responsive_image_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function responsive_image_theme() {
-  return array(
-    'responsive_image' => array(
-      'variables' => array(
+  return [
+    'responsive_image' => [
+      'variables' => [
         'uri' => NULL,
-        'attributes' => array(),
-        'responsive_image_style_id' => array(),
+        'attributes' => [],
+        'responsive_image_style_id' => [],
         'height' => NULL,
         'width' => NULL,
-      ),
-    ),
-    'responsive_image_formatter' => array(
-      'variables' => array(
+      ],
+    ],
+    'responsive_image_formatter' => [
+      'variables' => [
         'item' => NULL,
         'item_attributes' => NULL,
         'url' => NULL,
         'responsive_image_style_id' => NULL,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
@@ -110,18 +110,18 @@ function template_preprocess_responsive_image_formatter(&$variables) {
   // provided in the responsive image formatter.
   $responsive_image_style = ResponsiveImageStyle::load($variables['responsive_image_style_id']);
   if ($responsive_image_style) {
-    $variables['responsive_image'] = array(
+    $variables['responsive_image'] = [
       '#type' => 'responsive_image',
       '#responsive_image_style_id' => $variables['responsive_image_style_id'],
-    );
+    ];
   }
   else {
-    $variables['responsive_image'] = array(
+    $variables['responsive_image'] = [
       '#theme' => 'image',
-    );
+    ];
   }
   $item = $variables['item'];
-  $attributes = array();
+  $attributes = [];
   // Do not output an empty 'title' attribute.
   if (Unicode::strlen($item->title) != 0) {
     $attributes['title'] = $item->title;
@@ -138,7 +138,7 @@ function template_preprocess_responsive_image_formatter(&$variables) {
     $variables['responsive_image']['#uri'] = $item->uri;
   }
 
-  foreach (array('width', 'height') as $key) {
+  foreach (['width', 'height'] as $key) {
     $variables['responsive_image']["#$key"] = $item->$key;
   }
   $variables['responsive_image']['#attributes'] = $attributes;
@@ -201,10 +201,10 @@ function template_preprocess_responsive_image(&$variables) {
         $variables['attributes'][$attribute] = $value;
       }
     }
-    $variables['img_element'] = array(
+    $variables['img_element'] = [
       '#theme' => 'image',
       '#uri' => _responsive_image_image_style_url($responsive_image_style->getFallbackImageStyle(), $variables['uri']),
-    );
+    ];
   }
   else {
     $variables['output_image_tag'] = FALSE;
@@ -212,10 +212,10 @@ function template_preprocess_responsive_image(&$variables) {
     // double downloads in browsers that don't support the picture tag (might,
     // because when picturefill kicks in, it cancels the download and triggers
     // the download for the correct image).
-    $variables['img_element'] = array(
+    $variables['img_element'] = [
       '#theme' => 'image',
       '#uri' => _responsive_image_image_style_url($responsive_image_style->getFallbackImageStyle(), $variables['uri']),
-    );
+    ];
   }
 
   if (isset($variables['attributes'])) {
@@ -405,9 +405,9 @@ function _responsive_image_build_source_attributes(array $variables, BreakpointI
     $height = $variables['height'];
   }
   $extension = pathinfo($variables['uri'], PATHINFO_EXTENSION);
-  $sizes = array();
-  $srcset = array();
-  $derivative_mime_types = array();
+  $sizes = [];
+  $srcset = [];
+  $derivative_mime_types = [];
   foreach ($multipliers as $multiplier => $image_style_mapping) {
     switch ($image_style_mapping['image_mapping_type']) {
       // Create a <source> tag with the 'sizes' attribute.
@@ -415,7 +415,7 @@ function _responsive_image_build_source_attributes(array $variables, BreakpointI
         // Loop through the image styles for this breakpoint and multiplier.
         foreach ($image_style_mapping['image_mapping']['sizes_image_styles'] as $image_style_name) {
           // Get the dimensions.
-          $dimensions = responsive_image_get_image_dimensions($image_style_name, array('width' => $width, 'height' => $height), $variables['uri']);
+          $dimensions = responsive_image_get_image_dimensions($image_style_name, ['width' => $width, 'height' => $height], $variables['uri']);
           // Get MIME type.
           $derivative_mime_type = responsive_image_get_mime_type($image_style_name, $extension);
           $derivative_mime_types[] = $derivative_mime_type;
@@ -451,9 +451,9 @@ function _responsive_image_build_source_attributes(array $variables, BreakpointI
   }
   // Sort the srcset from small to large image width or multiplier.
   ksort($srcset);
-  $source_attributes = new Attribute(array(
+  $source_attributes = new Attribute([
     'srcset' => implode(', ', array_unique($srcset)),
-  ));
+  ]);
   $media_query = trim($breakpoint->getMediaQuery());
   if (!empty($media_query)) {
     $source_attributes->setAttribute('media', $media_query);
@@ -486,10 +486,10 @@ function _responsive_image_build_source_attributes(array $variables, BreakpointI
 function responsive_image_get_image_dimensions($image_style_name, array $dimensions, $uri) {
   // Determine the dimensions of the styled image.
   if ($image_style_name == RESPONSIVE_IMAGE_EMPTY_IMAGE) {
-    $dimensions = array(
+    $dimensions = [
       'width' => 1,
       'height' => 1,
-    );
+    ];
   }
   elseif ($entity = ImageStyle::load($image_style_name)) {
     $entity->transformDimensions($dimensions, $uri);
diff --git a/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php b/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
index fabfc60..5ad9d95 100644
--- a/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
+++ b/core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php
@@ -68,7 +68,7 @@ class ResponsiveImageStyle extends ConfigEntityBase implements ResponsiveImageSt
    *
    * @var array
    */
-  protected $image_style_mappings = array();
+  protected $image_style_mappings = [];
 
   /**
    * @var array
@@ -103,18 +103,18 @@ public function addImageStyleMapping($breakpoint_id, $multiplier, array $image_s
     // If there is an existing mapping, overwrite it.
     foreach ($this->image_style_mappings as &$mapping) {
       if ($mapping['breakpoint_id'] === $breakpoint_id && $mapping['multiplier'] === $multiplier) {
-        $mapping = array(
+        $mapping = [
           'breakpoint_id' => $breakpoint_id,
           'multiplier' => $multiplier,
-        ) + $image_style_mapping;
+        ] + $image_style_mapping;
         $this->keyedImageStyleMappings = NULL;
         return $this;
       }
     }
-    $this->image_style_mappings[] = array(
+    $this->image_style_mappings[] = [
       'breakpoint_id' => $breakpoint_id,
       'multiplier' => $multiplier,
-    ) + $image_style_mapping;
+    ] + $image_style_mapping;
     $this->keyedImageStyleMappings = NULL;
     return $this;
   }
@@ -132,7 +132,7 @@ public function hasImageStyleMappings() {
    */
   public function getKeyedImageStyleMappings() {
     if (!$this->keyedImageStyleMappings) {
-      $this->keyedImageStyleMappings = array();
+      $this->keyedImageStyleMappings = [];
       foreach ($this->image_style_mappings as $mapping) {
         if (!static::isEmptyImageStyleMapping($mapping)) {
           $this->keyedImageStyleMappings[$mapping['breakpoint_id']][$mapping['multiplier']] = $mapping;
@@ -188,7 +188,7 @@ public function getFallbackImageStyle() {
    * {@inheritdoc}
    */
   public function removeImageStyleMappings() {
-    $this->image_style_mappings = array();
+    $this->image_style_mappings = [];
     $this->keyedImageStyleMappings = NULL;
     return $this;
   }
diff --git a/core/modules/responsive_image/src/Plugin/Field/FieldFormatter/ResponsiveImageFormatter.php b/core/modules/responsive_image/src/Plugin/Field/FieldFormatter/ResponsiveImageFormatter.php
index 3ec1a19..6d9b7fa 100644
--- a/core/modules/responsive_image/src/Plugin/Field/FieldFormatter/ResponsiveImageFormatter.php
+++ b/core/modules/responsive_image/src/Plugin/Field/FieldFormatter/ResponsiveImageFormatter.php
@@ -115,17 +115,17 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'responsive_image_style' => '',
       'image_link' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $responsive_image_options = array();
+    $responsive_image_options = [];
     $responsive_image_styles = $this->responsiveImageStyleStorage->loadMultiple();
     if ($responsive_image_styles && !empty($responsive_image_styles)) {
       foreach ($responsive_image_styles as $machine_name => $responsive_image_style) {
@@ -135,29 +135,29 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $elements['responsive_image_style'] = array(
+    $elements['responsive_image_style'] = [
       '#title' => t('Responsive image style'),
       '#type' => 'select',
       '#default_value' => $this->getSetting('responsive_image_style'),
       '#required' => TRUE,
       '#options' => $responsive_image_options,
-      '#description' => array(
+      '#description' => [
         '#markup' => $this->linkGenerator->generate($this->t('Configure Responsive Image Styles'), new Url('entity.responsive_image_style.collection')),
         '#access' => $this->currentUser->hasPermission('administer responsive image styles'),
-        ),
-    );
+        ],
+    ];
 
-    $link_types = array(
+    $link_types = [
       'content' => t('Content'),
       'file' => t('File'),
-    );
-    $elements['image_link'] = array(
+    ];
+    $elements['image_link'] = [
       '#title' => t('Link image to'),
       '#type' => 'select',
       '#default_value' => $this->getSetting('image_link'),
       '#empty_option' => t('Nothing'),
       '#options' => $link_types,
-    );
+    ];
 
     return $elements;
   }
@@ -166,16 +166,16 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
     $responsive_image_style = $this->responsiveImageStyleStorage->load($this->getSetting('responsive_image_style'));
     if ($responsive_image_style) {
-      $summary[] = t('Responsive image style: @responsive_image_style', array('@responsive_image_style' => $responsive_image_style->label()));
+      $summary[] = t('Responsive image style: @responsive_image_style', ['@responsive_image_style' => $responsive_image_style->label()]);
 
-      $link_types = array(
+      $link_types = [
         'content' => t('Linked to content'),
         'file' => t('Linked to file'),
-      );
+      ];
       // Display this setting only if image is linked.
       if (isset($link_types[$this->getSetting('image_link')])) {
         $summary[] = $link_types[$this->getSetting('image_link')];
@@ -192,7 +192,7 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
     $files = $this->getEntitiesToView($items, $langcode);
 
     // Early opt-out if the field is empty.
@@ -214,7 +214,7 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
 
     // Collect cache tags to be added for each item in the field.
     $responsive_image_style = $this->responsiveImageStyleStorage->load($this->getSetting('responsive_image_style'));
-    $image_styles_to_load = array();
+    $image_styles_to_load = [];
     $cache_tags = [];
     if ($responsive_image_style) {
       $cache_tags = Cache::mergeTags($cache_tags, $responsive_image_style->getCacheTags());
@@ -237,16 +237,16 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
       $item_attributes = $item->_attributes;
       unset($item->_attributes);
 
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#theme' => 'responsive_image_formatter',
         '#item' => $item,
         '#item_attributes' => $item_attributes,
         '#responsive_image_style_id' => $responsive_image_style ? $responsive_image_style->id() : '',
         '#url' => $url,
-        '#cache' => array(
+        '#cache' => [
           'tags' => $cache_tags,
-        ),
-      );
+        ],
+      ];
     }
     return $elements;
   }
diff --git a/core/modules/responsive_image/src/ResponsiveImageStyleForm.php b/core/modules/responsive_image/src/ResponsiveImageStyleForm.php
index 3e5b051..8ad0e6a 100644
--- a/core/modules/responsive_image/src/ResponsiveImageStyleForm.php
+++ b/core/modules/responsive_image/src/ResponsiveImageStyleForm.php
@@ -51,32 +51,32 @@ public function __construct(BreakpointManagerInterface $breakpoint_manager) {
    */
   public function form(array $form, FormStateInterface $form_state) {
     if ($this->operation == 'duplicate') {
-      $form['#title'] = $this->t('<em>Duplicate responsive image style</em> @label', array('@label' => $this->entity->label()));
+      $form['#title'] = $this->t('<em>Duplicate responsive image style</em> @label', ['@label' => $this->entity->label()]);
       $this->entity = $this->entity->createDuplicate();
     }
     if ($this->operation == 'edit') {
-      $form['#title'] = $this->t('<em>Edit responsive image style</em> @label', array('@label' => $this->entity->label()));
+      $form['#title'] = $this->t('<em>Edit responsive image style</em> @label', ['@label' => $this->entity->label()]);
     }
 
     /** @var \Drupal\responsive_image\ResponsiveImageStyleInterface $responsive_image_style */
     $responsive_image_style = $this->entity;
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#maxlength' => 255,
       '#default_value' => $responsive_image_style->label(),
       '#description' => $this->t("Example: 'Hero image' or 'Author image'."),
       '#required' => TRUE,
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $responsive_image_style->id(),
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\responsive_image\Entity\ResponsiveImageStyle::load',
-        'source' => array('label'),
-      ),
+        'source' => ['label'],
+      ],
       '#disabled' => (bool) $responsive_image_style->id() && $this->operation != 'duplicate',
-    );
+    ];
 
     $image_styles = image_style_options(TRUE);
     $image_styles[RESPONSIVE_IMAGE_ORIGINAL_IMAGE] = $this->t('- None (original image) -');
@@ -89,25 +89,25 @@ public function form(array $form, FormStateInterface $form_state) {
       $description = $this->t('Select a breakpoint group from the installed themes and modules.');
     }
 
-    $form['breakpoint_group'] = array(
+    $form['breakpoint_group'] = [
       '#type' => 'select',
       '#title' => $this->t('Breakpoint group'),
       '#default_value' => $responsive_image_style->getBreakpointGroup() ?: 'responsive_image',
       '#options' => $this->breakpointManager->getGroups(),
       '#required' => TRUE,
       '#description' => $description,
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::breakpointMappingFormAjax',
         'wrapper' => 'responsive-image-style-breakpoints-wrapper',
-      ),
-    );
+      ],
+    ];
 
-    $form['keyed_styles'] = array(
+    $form['keyed_styles'] = [
       '#type' => 'container',
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'responsive-image-style-breakpoints-wrapper',
-      ),
-    );
+      ],
+    ];
 
     // By default, breakpoints are ordered from smallest weight to largest:
     // the smallest weight is expected to have the smallest breakpoint width,
@@ -119,69 +119,69 @@ public function form(array $form, FormStateInterface $form_state) {
     foreach ($breakpoints as $breakpoint_id => $breakpoint) {
       foreach ($breakpoint->getMultipliers() as $multiplier) {
         $label = $multiplier . ' ' . $breakpoint->getLabel() . ' [' . $breakpoint->getMediaQuery() . ']';
-        $form['keyed_styles'][$breakpoint_id][$multiplier] = array(
+        $form['keyed_styles'][$breakpoint_id][$multiplier] = [
           '#type' => 'details',
           '#title' => $label,
-        );
+        ];
         $image_style_mapping = $responsive_image_style->getImageStyleMapping($breakpoint_id, $multiplier);
         if (\Drupal::moduleHandler()->moduleExists('help')) {
-          $description = $this->t('See the <a href=":responsive_image_help">Responsive Image help page</a> for information on the sizes attribute.', array(':responsive_image_help' => \Drupal::url('help.page', array('name' => 'responsive_image'))));
+          $description = $this->t('See the <a href=":responsive_image_help">Responsive Image help page</a> for information on the sizes attribute.', [':responsive_image_help' => \Drupal::url('help.page', ['name' => 'responsive_image'])]);
         }
         else {
           $description = $this->t('Enable the Help module for more information on the sizes attribute.');
         }
-        $form['keyed_styles'][$breakpoint_id][$multiplier]['image_mapping_type'] = array(
+        $form['keyed_styles'][$breakpoint_id][$multiplier]['image_mapping_type'] = [
           '#title' => $this->t('Type'),
           '#type' => 'radios',
-          '#options' => array(
+          '#options' => [
             'sizes' => $this->t('Select multiple image styles and use the sizes attribute.'),
             'image_style' => $this->t('Select a single image style.'),
             '_none' => $this->t('Do not use this breakpoint.'),
-          ),
+          ],
           '#default_value' => isset($image_style_mapping['image_mapping_type']) ? $image_style_mapping['image_mapping_type'] : '_none',
           '#description' => $description,
-        );
-        $form['keyed_styles'][$breakpoint_id][$multiplier]['image_style'] = array(
+        ];
+        $form['keyed_styles'][$breakpoint_id][$multiplier]['image_style'] = [
           '#type' => 'select',
           '#title' => $this->t('Image style'),
           '#options' => $image_styles,
           '#default_value' => isset($image_style_mapping['image_mapping']) && is_string($image_style_mapping['image_mapping']) ? $image_style_mapping['image_mapping'] : '',
           '#description' => $this->t('Select an image style for this breakpoint.'),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => array('value' => 'image_style'),
-            ),
-          ),
-        );
-        $form['keyed_styles'][$breakpoint_id][$multiplier]['sizes'] = array(
+          '#states' => [
+            'visible' => [
+              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => ['value' => 'image_style'],
+            ],
+          ],
+        ];
+        $form['keyed_styles'][$breakpoint_id][$multiplier]['sizes'] = [
           '#type' => 'textfield',
           '#title' => $this->t('Sizes'),
           '#default_value' => isset($image_style_mapping['image_mapping']['sizes']) ? $image_style_mapping['image_mapping']['sizes'] : '100vw',
           '#description' => $this->t('Enter the value for the sizes attribute, for example: %example_sizes.', ['%example_sizes' => '(min-width:700px) 700px, 100vw']),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => array('value' => 'sizes'),
-            ),
-            'required' => array(
-              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => array('value' => 'sizes'),
-            ),
-          ),
-        );
-        $form['keyed_styles'][$breakpoint_id][$multiplier]['sizes_image_styles'] = array(
+          '#states' => [
+            'visible' => [
+              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => ['value' => 'sizes'],
+            ],
+            'required' => [
+              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => ['value' => 'sizes'],
+            ],
+          ],
+        ];
+        $form['keyed_styles'][$breakpoint_id][$multiplier]['sizes_image_styles'] = [
           '#title' => $this->t('Image styles'),
           '#type' => 'checkboxes',
-          '#options' => array_diff_key($image_styles, array('' => '')),
+          '#options' => array_diff_key($image_styles, ['' => '']),
           '#description' => $this->t('Select image styles with widths that range from the smallest amount of space this image will take up in the layout to the largest, bearing in mind that high resolution screens will need images 1.5x to 2x larger.'),
-          '#default_value' => isset($image_style_mapping['image_mapping']['sizes_image_styles']) ? $image_style_mapping['image_mapping']['sizes_image_styles'] : array(),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => array('value' => 'sizes'),
-            ),
-            'required' => array(
-              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => array('value' => 'sizes'),
-            ),
-          ),
-        );
+          '#default_value' => isset($image_style_mapping['image_mapping']['sizes_image_styles']) ? $image_style_mapping['image_mapping']['sizes_image_styles'] : [],
+          '#states' => [
+            'visible' => [
+              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => ['value' => 'sizes'],
+            ],
+            'required' => [
+              ':input[name="keyed_styles[' . $breakpoint_id . '][' . $multiplier . '][image_mapping_type]"]' => ['value' => 'sizes'],
+            ],
+          ],
+        ];
 
         // Expand the details if "do not use this breakpoint" was not selected.
         if ($form['keyed_styles'][$breakpoint_id][$multiplier]['image_mapping_type']['#default_value'] != '_none') {
@@ -190,14 +190,14 @@ public function form(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $form['fallback_image_style'] = array(
+    $form['fallback_image_style'] = [
       '#title' => $this->t('Fallback image style'),
       '#type' => 'select',
       '#default_value' => $responsive_image_style->getFallbackImageStyle(),
       '#options' => $image_styles,
       '#required' => TRUE,
       '#description' => t('Select the smallest image style you expect to appear in this space. The fallback image style should only appear on the site if an error occurs.'),
-    );
+    ];
 
     $form['#tree'] = TRUE;
 
@@ -252,20 +252,20 @@ public function save(array $form, FormStateInterface $form_state) {
       foreach ($form_state->getValue('keyed_styles') as $breakpoint_id => $multipliers) {
         foreach ($multipliers as $multiplier => $image_style_mapping) {
           if ($image_style_mapping['image_mapping_type'] === 'sizes') {
-            $mapping = array(
+            $mapping = [
               'image_mapping_type' => 'sizes',
-              'image_mapping' => array(
+              'image_mapping' => [
                 'sizes' => $image_style_mapping['sizes'],
                 'sizes_image_styles' => array_keys(array_filter($image_style_mapping['sizes_image_styles'])),
-              )
-            );
+              ]
+            ];
             $responsive_image_style->addImageStyleMapping($breakpoint_id, $multiplier, $mapping);
           }
           elseif ($image_style_mapping['image_mapping_type'] === 'image_style') {
-            $mapping = array(
+            $mapping = [
               'image_mapping_type' => 'image_style',
               'image_mapping' => $image_style_mapping['image_style'],
-            );
+            ];
             $responsive_image_style->addImageStyleMapping($breakpoint_id, $multiplier, $mapping);
           }
         }
@@ -273,15 +273,15 @@ public function save(array $form, FormStateInterface $form_state) {
     }
     $responsive_image_style->save();
 
-    $this->logger('responsive_image')->notice('Responsive image style @label saved.', array('@label' => $responsive_image_style->label()));
-    drupal_set_message($this->t('Responsive image style %label saved.', array('%label' => $responsive_image_style->label())));
+    $this->logger('responsive_image')->notice('Responsive image style @label saved.', ['@label' => $responsive_image_style->label()]);
+    drupal_set_message($this->t('Responsive image style %label saved.', ['%label' => $responsive_image_style->label()]));
 
     // Redirect to edit form after creating a new responsive image style or
     // after selecting another breakpoint group.
     if (!$responsive_image_style->hasImageStyleMappings()) {
       $form_state->setRedirect(
         'entity.responsive_image_style.edit_form',
-        array('responsive_image_style' => $responsive_image_style->id())
+        ['responsive_image_style' => $responsive_image_style->id()]
       );
     }
     else {
diff --git a/core/modules/responsive_image/src/ResponsiveImageStyleListBuilder.php b/core/modules/responsive_image/src/ResponsiveImageStyleListBuilder.php
index 648a171b..1b4ded0 100644
--- a/core/modules/responsive_image/src/ResponsiveImageStyleListBuilder.php
+++ b/core/modules/responsive_image/src/ResponsiveImageStyleListBuilder.php
@@ -33,11 +33,11 @@ public function buildRow(EntityInterface $entity) {
    */
   public function getDefaultOperations(EntityInterface $entity) {
     $operations = parent::getDefaultOperations($entity);
-    $operations['duplicate'] = array(
+    $operations['duplicate'] = [
       'title' => t('Duplicate'),
       'weight' => 15,
       'url' => $entity->urlInfo('duplicate-form'),
-    );
+    ];
     return $operations;
   }
 
diff --git a/core/modules/responsive_image/src/Tests/ResponsiveImageAdminUITest.php b/core/modules/responsive_image/src/Tests/ResponsiveImageAdminUITest.php
index 8f8b505..0439771 100644
--- a/core/modules/responsive_image/src/Tests/ResponsiveImageAdminUITest.php
+++ b/core/modules/responsive_image/src/Tests/ResponsiveImageAdminUITest.php
@@ -16,7 +16,7 @@ class ResponsiveImageAdminUITest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('responsive_image', 'responsive_image_test_module');
+  public static $modules = ['responsive_image', 'responsive_image_test_module'];
 
   /**
    * Drupal\simpletest\WebTestBase\setUp().
@@ -43,12 +43,12 @@ public function testResponsiveImageAdmin() {
     $this->assertFieldByName('breakpoint_group', 'responsive_image');
 
     // Create a new group.
-    $edit = array(
+    $edit = [
       'label' => 'Style One',
       'id' => 'style_one',
       'breakpoint_group' => 'responsive_image_test_module',
       'fallback_image_style' => 'thumbnail',
-    );
+    ];
     $this->drupalPostForm('admin/config/media/responsive-image-style/add', $edit, t('Save'));
 
     // Check if the new group is created.
@@ -64,14 +64,14 @@ public function testResponsiveImageAdmin() {
     $this->assertFieldByName('breakpoint_group', 'responsive_image_test_module');
     $this->assertFieldByName('fallback_image_style', 'thumbnail');
 
-    $cases = array(
-      array('mobile', '1x'),
-      array('mobile', '2x'),
-      array('narrow', '1x'),
-      array('narrow', '2x'),
-      array('wide', '1x'),
-      array('wide', '2x'),
-    );
+    $cases = [
+      ['mobile', '1x'],
+      ['mobile', '2x'],
+      ['narrow', '1x'],
+      ['narrow', '2x'],
+      ['wide', '1x'],
+      ['wide', '2x'],
+    ];
     $image_styles = array_merge(
       [RESPONSIVE_IMAGE_EMPTY_IMAGE, RESPONSIVE_IMAGE_ORIGINAL_IMAGE],
       array_keys(image_style_options(FALSE))
@@ -99,7 +99,7 @@ public function testResponsiveImageAdmin() {
     }
 
     // Save styles for 1x variant only.
-    $edit = array(
+    $edit = [
       'label' => 'Style One',
       'breakpoint_group' => 'responsive_image_test_module',
       'fallback_image_style' => 'thumbnail',
@@ -111,7 +111,7 @@ public function testResponsiveImageAdmin() {
       'keyed_styles[responsive_image_test_module.narrow][1x][sizes_image_styles][medium]' => 'medium',
       'keyed_styles[responsive_image_test_module.wide][1x][image_mapping_type]' => 'image_style',
       'keyed_styles[responsive_image_test_module.wide][1x][image_style]' => 'large',
-    );
+    ];
     $this->drupalPostForm('admin/config/media/responsive-image-style/style_one', $edit, t('Save'));
     $this->drupalGet('admin/config/media/responsive-image-style/style_one');
 
@@ -135,7 +135,7 @@ public function testResponsiveImageAdmin() {
 
     // Delete the style.
     $this->drupalGet('admin/config/media/responsive-image-style/style_one/delete');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->drupalGet('admin/config/media/responsive-image-style');
     $this->assertText('There is no Responsive image style yet.');
   }
diff --git a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php
index aef5ec0..b50d71b 100644
--- a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php
+++ b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php
@@ -32,7 +32,7 @@ class ResponsiveImageFieldDisplayTest extends ImageFieldTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_ui', 'responsive_image', 'responsive_image_test_module');
+  public static $modules = ['field_ui', 'responsive_image', 'responsive_image_test_module'];
 
   /**
    * Drupal\simpletest\WebTestBase\setUp().
@@ -41,7 +41,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer responsive images',
       'access content',
       'access administration pages',
@@ -53,15 +53,15 @@ protected function setUp() {
       'edit any article content',
       'delete any article content',
       'administer image styles'
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
     // Add responsive image style.
-    $this->responsiveImgStyle = ResponsiveImageStyle::create(array(
+    $this->responsiveImgStyle = ResponsiveImageStyle::create([
       'id' => 'style_one',
       'label' => 'Style One',
       'breakpoint_group' => 'responsive_image_test_module',
       'fallback_image_style' => 'large',
-    ));
+    ]);
   }
 
   /**
@@ -78,7 +78,7 @@ public function testResponsiveImageFieldFormattersPublic() {
   public function testResponsiveImageFieldFormattersPrivate() {
     $this->addTestImageStyleMappings();
     // Remove access content permission from anonymous users.
-    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, array('access content' => FALSE));
+    user_role_change_permissions(RoleInterface::ANONYMOUS_ID, ['access content' => FALSE]);
     $this->doTestResponsiveImageFieldFormatters('private');
   }
 
@@ -99,56 +99,56 @@ public function testResponsiveImageFieldFormattersEmptyStyle() {
   protected function addTestImageStyleMappings($empty_styles = FALSE) {
     if ($empty_styles) {
       $this->responsiveImgStyle
-        ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', array(
+        ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => '',
-        ))
-        ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', array(
+        ])
+        ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', [
           'image_mapping_type' => 'sizes',
-          'image_mapping' => array(
+          'image_mapping' => [
             'sizes' => '(min-width: 700px) 700px, 100vw',
-            'sizes_image_styles' => array(),
-          ),
-        ))
-        ->addImageStyleMapping('responsive_image_test_module.wide', '1x', array(
+            'sizes_image_styles' => [],
+          ],
+        ])
+        ->addImageStyleMapping('responsive_image_test_module.wide', '1x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => '',
-        ))
+        ])
         ->save();
     }
     else {
       $this->responsiveImgStyle
         // Test the output of an empty image.
-        ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', array(
+        ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => RESPONSIVE_IMAGE_EMPTY_IMAGE,
-        ))
+        ])
         // Test the output with a 1.5x multiplier.
-        ->addImageStyleMapping('responsive_image_test_module.mobile', '1.5x', array(
+        ->addImageStyleMapping('responsive_image_test_module.mobile', '1.5x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => 'thumbnail',
-        ))
+        ])
         // Test the output of the 'sizes' attribute.
-        ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', array(
+        ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', [
           'image_mapping_type' => 'sizes',
-          'image_mapping' => array(
+          'image_mapping' => [
             'sizes' => '(min-width: 700px) 700px, 100vw',
-            'sizes_image_styles' => array(
+            'sizes_image_styles' => [
               'large',
               'medium',
-            ),
-          ),
-        ))
+            ],
+          ],
+        ])
         // Test the normal output of mapping to an image style.
-        ->addImageStyleMapping('responsive_image_test_module.wide', '1x', array(
+        ->addImageStyleMapping('responsive_image_test_module.wide', '1x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => 'large',
-        ))
+        ])
         // Test the output of the original image.
-        ->addImageStyleMapping('responsive_image_test_module.wide', '3x', array(
+        ->addImageStyleMapping('responsive_image_test_module.wide', '3x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => RESPONSIVE_IMAGE_ORIGINAL_IMAGE,
-        ))
+        ])
         ->save();
     }
   }
@@ -169,7 +169,7 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles =
     $renderer = $this->container->get('renderer');
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $this->createImageField($field_name, 'article', array('uri_scheme' => $scheme));
+    $this->createImageField($field_name, 'article', ['uri_scheme' => $scheme]);
     // Create a new node with an image attached. Make sure we use a large image
     // so the scale effects of the image styles always have an effect.
     $test_image = current($this->drupalGetTestFiles('image', 39325));
@@ -178,26 +178,26 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles =
     $alt = $this->randomMachineName();
 
     $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $alt);
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
     $node = $node_storage->load($nid);
 
     // Test that the default formatter is being used.
     $image_uri = File::load($node->{$field_name}->target_id)->getFileUri();
-    $image = array(
+    $image = [
       '#theme' => 'image',
       '#uri' => $image_uri,
       '#width' => 360,
       '#height' => 240,
       '#alt' => $alt,
-    );
+    ];
     $default_output = str_replace("\n", NULL, $renderer->renderRoot($image));
     $this->assertRaw($default_output, 'Default formatter displaying correctly on full node view.');
 
     // Test field not being configured. This should not cause a fatal error.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image_test',
       'settings' => ResponsiveImageFormatter::defaultSettings(),
-    );
+    ];
     $display = $this->container->get('entity.manager')
       ->getStorage('entity_view_display')
       ->load('node.article.default');
@@ -215,13 +215,13 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles =
     $this->drupalGet('node/' . $nid);
 
     // Test theme function for responsive image, but using the test formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image_test',
-      'settings' => array(
+      'settings' => [
         'image_link' => 'file',
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     $display = entity_get_display('node', 'article', 'default');
     $display->setComponent($field_name, $display_options)
       ->save();
@@ -229,13 +229,13 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles =
     $this->drupalGet('node/' . $nid);
 
     // Use the responsive image formatter linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image',
-      'settings' => array(
+      'settings' => [
         'image_link' => 'file',
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     $display = entity_get_display('node', 'article', 'default');
     $display->setComponent($field_name, $display_options)
       ->save();
@@ -312,11 +312,11 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles =
 
     // Test the fallback image style.
     $image = \Drupal::service('image.factory')->get($image_uri);
-    $fallback_image = array(
+    $fallback_image = [
       '#theme' => 'image',
       '#alt' => $alt,
       '#uri' => file_url_transform_relative($large_style->buildUrl($image->getSource())),
-    );
+    ];
     // The image.html.twig template has a newline after the <img> tag but
     // responsive-image.html.twig doesn't have one after the fallback image, so
     // we remove it here.
@@ -355,32 +355,32 @@ public function testResponsiveImageFieldFormattersLinkToNode() {
   public function testResponsiveImageFieldFormattersEmptyMediaQuery() {
     $this->responsiveImgStyle
       // Test the output of an empty media query.
-      ->addImageStyleMapping('responsive_image_test_module.empty', '1x', array(
+      ->addImageStyleMapping('responsive_image_test_module.empty', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => RESPONSIVE_IMAGE_EMPTY_IMAGE,
-      ))
+      ])
       // Test the output with a 1.5x multiplier.
-      ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', array(
+      ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'thumbnail',
-      ))
+      ])
       ->save();
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $this->createImageField($field_name, 'article', array('uri_scheme' => 'public'));
+    $this->createImageField($field_name, 'article', ['uri_scheme' => 'public']);
     // Create a new node with an image attached.
     $test_image = current($this->drupalGetTestFiles('image'));
     $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $this->randomMachineName());
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
 
     // Use the responsive image formatter linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image',
-      'settings' => array(
+      'settings' => [
         'image_link' => '',
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     $display = entity_get_display('node', 'article', 'default');
     $display->setComponent($field_name, $display_options)
       ->save();
@@ -404,31 +404,31 @@ public function testResponsiveImageFieldFormattersEmptyMediaQuery() {
   public function testResponsiveImageFieldFormattersOneSource() {
     $this->responsiveImgStyle
       // Test the output of an empty media query.
-      ->addImageStyleMapping('responsive_image_test_module.empty', '1x', array(
+      ->addImageStyleMapping('responsive_image_test_module.empty', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'medium',
-      ))
-      ->addImageStyleMapping('responsive_image_test_module.empty', '2x', array(
+      ])
+      ->addImageStyleMapping('responsive_image_test_module.empty', '2x', [
           'image_mapping_type' => 'image_style',
           'image_mapping' => 'large',
-        ))
+        ])
       ->save();
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $this->createImageField($field_name, 'article', array('uri_scheme' => 'public'));
+    $this->createImageField($field_name, 'article', ['uri_scheme' => 'public']);
     // Create a new node with an image attached.
     $test_image = current($this->drupalGetTestFiles('image'));
     $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $this->randomMachineName());
-    $node_storage->resetCache(array($nid));
+    $node_storage->resetCache([$nid]);
 
     // Use the responsive image formatter linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image',
-      'settings' => array(
+      'settings' => [
         'image_link' => '',
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     $display = entity_get_display('node', 'article', 'default');
     $display->setComponent($field_name, $display_options)
       ->save();
@@ -452,19 +452,19 @@ public function testResponsiveImageFieldFormattersOneSource() {
    */
   private function assertResponsiveImageFieldFormattersLink($link_type) {
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_settings = array('alt_field_required' => 0);
-    $this->createImageField($field_name, 'article', array('uri_scheme' => 'public'), $field_settings);
+    $field_settings = ['alt_field_required' => 0];
+    $this->createImageField($field_name, 'article', ['uri_scheme' => 'public'], $field_settings);
     // Create a new node with an image attached.
     $test_image = current($this->drupalGetTestFiles('image'));
 
     // Test the image linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image',
-      'settings' => array(
+      'settings' => [
         'image_link' => $link_type,
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     entity_get_display('node', 'article', 'default')
       ->setComponent($field_name, $display_options)
       ->save();
@@ -475,17 +475,17 @@ private function assertResponsiveImageFieldFormattersLink($link_type) {
     $this->assertPattern('/picture/');
 
     $nid = $this->uploadNodeImage($test_image, $field_name, 'article');
-    $this->container->get('entity.manager')->getStorage('node')->resetCache(array($nid));
+    $this->container->get('entity.manager')->getStorage('node')->resetCache([$nid]);
     $node = Node::load($nid);
 
     // Use the responsive image formatter linked to file formatter.
-    $display_options = array(
+    $display_options = [
       'type' => 'responsive_image',
-      'settings' => array(
+      'settings' => [
         'image_link' => $link_type,
         'responsive_image_style' => 'style_one',
-      ),
-    );
+      ],
+    ];
     entity_get_display('node', 'article', 'default')
       ->setComponent($field_name, $display_options)
       ->save();
diff --git a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUiTest.php b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUiTest.php
index 3d0e32e..a091504 100644
--- a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUiTest.php
+++ b/core/modules/responsive_image/src/Tests/ResponsiveImageFieldUiTest.php
@@ -21,7 +21,7 @@ class ResponsiveImageFieldUiTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'image', 'responsive_image', 'responsive_image_test_module', 'block');
+  public static $modules = ['node', 'field_ui', 'image', 'responsive_image', 'responsive_image_test_module', 'block'];
 
   /**
    * {@inheritdoc}
@@ -30,12 +30,12 @@ protected function setUp() {
     parent::setUp();
     $this->drupalPlaceBlock('system_breadcrumb_block');
     // Create a test user.
-    $admin_user = $this->drupalCreateUser(array('access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'bypass node access']);
     $this->drupalLogin($admin_user);
 
     // Create content type, with underscores.
     $type_name = strtolower($this->randomMachineName(8)) . '_test';
-    $type = $this->drupalCreateContentType(array('name' => $type_name, 'type' => $type_name));
+    $type = $this->drupalCreateContentType(['name' => $type_name, 'type' => $type_name]);
     $this->type = $type->id();
   }
 
@@ -52,39 +52,39 @@ function testResponsiveImageFormatterUI() {
     $this->drupalGet($manage_display);
 
     // Change the formatter and check that the summary is updated.
-    $edit = array(
+    $edit = [
       'fields[field_image][type]' => 'responsive_image',
       'fields[field_image][region]' => 'content',
       'refresh_rows' => 'field_image',
-    );
-    $this->drupalPostAjaxForm(NULL, $edit, array('op' => t('Refresh')));
+    ];
+    $this->drupalPostAjaxForm(NULL, $edit, ['op' => t('Refresh')]);
     $this->assertText("Select a responsive image style.", 'The expected summary is displayed.');
 
     // Submit the form.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText("Select a responsive image style.", 'The expected summary is displayed.');
 
     // Create responsive image styles.
-    $responsive_image_style = ResponsiveImageStyle::create(array(
+    $responsive_image_style = ResponsiveImageStyle::create([
       'id' => 'style_one',
       'label' => 'Style One',
       'breakpoint_group' => 'responsive_image_test_module',
       'fallback_image_style' => 'thumbnail',
-    ));
+    ]);
     $responsive_image_style
-      ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', array(
+      ->addImageStyleMapping('responsive_image_test_module.mobile', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'thumbnail',
-      ))
-      ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', array(
+      ])
+      ->addImageStyleMapping('responsive_image_test_module.narrow', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'medium'
-      ))
+      ])
       // Test the normal output of mapping to an image style.
-      ->addImageStyleMapping('responsive_image_test_module.wide', '1x', array(
+      ->addImageStyleMapping('responsive_image_test_module.wide', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'large',
-      ))
+      ])
       ->save();
     \Drupal::entityManager()->clearCachedFieldDefinitions();
     // Refresh the page.
@@ -93,38 +93,38 @@ function testResponsiveImageFormatterUI() {
 
     // Click on the formatter settings button to open the formatter settings
     // form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_image_settings_edit");
+    $this->drupalPostAjaxForm(NULL, [], "field_image_settings_edit");
 
     // Assert that the correct fields are present.
-    $fieldnames = array(
+    $fieldnames = [
       'fields[field_image][settings_edit_form][settings][responsive_image_style]',
       'fields[field_image][settings_edit_form][settings][image_link]',
-    );
+    ];
     foreach ($fieldnames as $fieldname) {
       $this->assertField($fieldname);
     }
-    $edit = array(
+    $edit = [
       'fields[field_image][settings_edit_form][settings][responsive_image_style]' => 'style_one',
       'fields[field_image][settings_edit_form][settings][image_link]' => 'content',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, "field_image_plugin_settings_update");
 
     // Save the form to save the settings.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText('Responsive image style: Style One');
     $this->assertText('Linked to content');
 
     // Click on the formatter settings button to open the formatter settings
     // form.
-    $this->drupalPostAjaxForm(NULL, array(), "field_image_settings_edit");
-    $edit = array(
+    $this->drupalPostAjaxForm(NULL, [], "field_image_settings_edit");
+    $edit = [
       'fields[field_image][settings_edit_form][settings][responsive_image_style]' => 'style_one',
       'fields[field_image][settings_edit_form][settings][image_link]' => 'file',
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, "field_image_plugin_settings_update");
 
     // Save the form to save the third party settings.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText('Responsive image style: Style One');
     $this->assertText('Linked to file');
   }
diff --git a/core/modules/responsive_image/tests/src/Unit/ResponsiveImageStyleConfigEntityUnitTest.php b/core/modules/responsive_image/tests/src/Unit/ResponsiveImageStyleConfigEntityUnitTest.php
index c3f45e9..bc9663d 100644
--- a/core/modules/responsive_image/tests/src/Unit/ResponsiveImageStyleConfigEntityUnitTest.php
+++ b/core/modules/responsive_image/tests/src/Unit/ResponsiveImageStyleConfigEntityUnitTest.php
@@ -101,7 +101,7 @@ public function testCalculateDependencies() {
     $this->breakpointManager->expects($this->any())
       ->method('getGroupProviders')
       ->with('test_group')
-      ->willReturn(array('bartik' => 'theme', 'toolbar' => 'module'));
+      ->willReturn(['bartik' => 'theme', 'toolbar' => 'module']);
 
     $dependencies = $entity->calculateDependencies()->getDependencies();
     $this->assertEquals(['toolbar'], $dependencies['module']);
@@ -114,49 +114,49 @@ public function testCalculateDependencies() {
    * @covers ::hasImageStyleMappings
    */
   public function testHasImageStyleMappings() {
-    $entity = new ResponsiveImageStyle(array());
+    $entity = new ResponsiveImageStyle([]);
     $this->assertFalse($entity->hasImageStyleMappings());
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => '',
-    ));
+    ]);
     $this->assertFalse($entity->hasImageStyleMappings());
     $entity->removeImageStyleMappings();
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
         'image_mapping_type' => 'sizes',
-        'image_mapping' => array(
+        'image_mapping' => [
           'sizes' => '(min-width:700px) 700px, 100vw',
-          'sizes_image_styles' => array(),
-        ),
-    ));
+          'sizes_image_styles' => [],
+        ],
+    ]);
     $this->assertFalse($entity->hasImageStyleMappings());
     $entity->removeImageStyleMappings();
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
         'image_mapping_type' => 'sizes',
-        'image_mapping' => array(
+        'image_mapping' => [
           'sizes' => '',
-          'sizes_image_styles' => array(
+          'sizes_image_styles' => [
             'large' => 'large',
-          ),
-        ),
-    ));
+          ],
+        ],
+    ]);
     $this->assertFalse($entity->hasImageStyleMappings());
     $entity->removeImageStyleMappings();
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'large',
-    ));
+    ]);
     $this->assertTrue($entity->hasImageStyleMappings());
     $entity->removeImageStyleMappings();
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
         'image_mapping_type' => 'sizes',
-        'image_mapping' => array(
+        'image_mapping' => [
           'sizes' => '(min-width:700px) 700px, 100vw',
-          'sizes_image_styles' => array(
+          'sizes_image_styles' => [
             'large' => 'large',
-          ),
-        ),
-    ));
+          ],
+        ],
+    ]);
     $this->assertTrue($entity->hasImageStyleMappings());
   }
 
@@ -165,17 +165,17 @@ public function testHasImageStyleMappings() {
    * @covers ::getImageStyleMapping
    */
   public function testGetImageStyleMapping() {
-    $entity = new ResponsiveImageStyle(array(''));
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity = new ResponsiveImageStyle(['']);
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $expected = array(
+    ]);
+    $expected = [
       'breakpoint_id' => 'test_breakpoint',
       'multiplier' => '1x',
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    );
+    ];
     $this->assertEquals($expected, $entity->getImageStyleMapping('test_breakpoint', '1x'));
     $this->assertNull($entity->getImageStyleMapping('test_unknown_breakpoint', '1x'));
   }
@@ -185,90 +185,90 @@ public function testGetImageStyleMapping() {
    * @covers ::getKeyedImageStyleMappings
    */
   public function testGetKeyedImageStyleMappings() {
-    $entity = new ResponsiveImageStyle(array(''));
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity = new ResponsiveImageStyle(['']);
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $entity->addImageStyleMapping('test_breakpoint', '2x', array(
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint', '2x', [
       'image_mapping_type' => 'sizes',
-      'image_mapping' => array(
+      'image_mapping' => [
         'sizes' => '(min-width:700px) 700px, 100vw',
-        'sizes_image_styles' => array(
+        'sizes_image_styles' => [
           'large' => 'large',
-        ),
-      ),
-    ));
-    $entity->addImageStyleMapping('test_breakpoint2', '1x', array(
+        ],
+      ],
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint2', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'thumbnail',
-    ));
-    $entity->addImageStyleMapping('test_breakpoint2', '2x', array(
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint2', '2x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => '_original image_',
-    ));
+    ]);
 
-    $expected = array(
-      'test_breakpoint' => array(
-        '1x' => array(
+    $expected = [
+      'test_breakpoint' => [
+        '1x' => [
           'breakpoint_id' => 'test_breakpoint',
           'multiplier' => '1x',
           'image_mapping_type' => 'image_style',
           'image_mapping' => 'large',
-        ),
-        '2x' => array(
+        ],
+        '2x' => [
           'breakpoint_id' => 'test_breakpoint',
           'multiplier' => '2x',
           'image_mapping_type' => 'sizes',
-          'image_mapping' => array(
+          'image_mapping' => [
             'sizes' => '(min-width:700px) 700px, 100vw',
-            'sizes_image_styles' => array(
+            'sizes_image_styles' => [
               'large' => 'large',
-            ),
-          ),
-        ),
-      ),
-      'test_breakpoint2' => array(
-        '1x' => array(
+            ],
+          ],
+        ],
+      ],
+      'test_breakpoint2' => [
+        '1x' => [
           'breakpoint_id' => 'test_breakpoint2',
           'multiplier' => '1x',
           'image_mapping_type' => 'image_style',
           'image_mapping' => 'thumbnail',
-        ),
-        '2x' => array(
+        ],
+        '2x' => [
           'breakpoint_id' => 'test_breakpoint2',
           'multiplier' => '2x',
           'image_mapping_type' => 'image_style',
           'image_mapping' => '_original image_',
-        ),
-      )
-    );
+        ],
+      ]
+    ];
     $this->assertEquals($expected, $entity->getKeyedImageStyleMappings());
 
     // Add another mapping to ensure keyed mapping static cache is rebuilt.
-    $entity->addImageStyleMapping('test_breakpoint2', '2x', array(
+    $entity->addImageStyleMapping('test_breakpoint2', '2x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'medium',
-    ));
-    $expected['test_breakpoint2']['2x'] = array(
+    ]);
+    $expected['test_breakpoint2']['2x'] = [
       'breakpoint_id' => 'test_breakpoint2',
       'multiplier' => '2x',
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'medium',
-    );
+    ];
     $this->assertEquals($expected, $entity->getKeyedImageStyleMappings());
 
     // Overwrite a mapping to ensure keyed mapping static cache is rebuilt.
-    $entity->addImageStyleMapping('test_breakpoint2', '2x', array(
+    $entity->addImageStyleMapping('test_breakpoint2', '2x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $expected['test_breakpoint2']['2x'] = array(
+    ]);
+    $expected['test_breakpoint2']['2x'] = [
       'breakpoint_id' => 'test_breakpoint2',
       'multiplier' => '2x',
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    );
+    ];
     $this->assertEquals($expected, $entity->getKeyedImageStyleMappings());
   }
 
@@ -277,50 +277,50 @@ public function testGetKeyedImageStyleMappings() {
    * @covers ::getImageStyleMappings
    */
   public function testGetImageStyleMappings() {
-    $entity = new ResponsiveImageStyle(array(''));
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity = new ResponsiveImageStyle(['']);
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $entity->addImageStyleMapping('test_breakpoint', '2x', array(
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint', '2x', [
       'image_mapping_type' => 'sizes',
-      'image_mapping' => array(
+      'image_mapping' => [
         'sizes' => '(min-width:700px) 700px, 100vw',
-        'sizes_image_styles' => array(
+        'sizes_image_styles' => [
           'large' => 'large',
-        ),
-      ),
-    ));
-    $entity->addImageStyleMapping('test_breakpoint2', '1x', array(
+        ],
+      ],
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint2', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'thumbnail',
-    ));
+    ]);
 
-    $expected = array(
-      array(
+    $expected = [
+      [
         'breakpoint_id' => 'test_breakpoint',
         'multiplier' => '1x',
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'large',
-      ),
-      array(
+      ],
+      [
         'breakpoint_id' => 'test_breakpoint',
         'multiplier' => '2x',
         'image_mapping_type' => 'sizes',
-        'image_mapping' => array(
+        'image_mapping' => [
           'sizes' => '(min-width:700px) 700px, 100vw',
-          'sizes_image_styles' => array(
+          'sizes_image_styles' => [
             'large' => 'large',
-          ),
-        ),
-      ),
-      array(
+          ],
+        ],
+      ],
+      [
         'breakpoint_id' => 'test_breakpoint2',
         'multiplier' => '1x',
         'image_mapping_type' => 'image_style',
         'image_mapping' => 'thumbnail',
-      ),
-    );
+      ],
+    ];
     $this->assertEquals($expected, $entity->getImageStyleMappings());
   }
 
@@ -329,24 +329,24 @@ public function testGetImageStyleMappings() {
    * @covers ::removeImageStyleMappings
    */
   public function testRemoveImageStyleMappings() {
-    $entity = new ResponsiveImageStyle(array(''));
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity = new ResponsiveImageStyle(['']);
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $entity->addImageStyleMapping('test_breakpoint', '2x', array(
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint', '2x', [
       'image_mapping_type' => 'sizes',
-      'image_mapping' => array(
+      'image_mapping' => [
         'sizes' => '(min-width:700px) 700px, 100vw',
-        'sizes_image_styles' => array(
+        'sizes_image_styles' => [
           'large' => 'large',
-        ),
-      ),
-    ));
-    $entity->addImageStyleMapping('test_breakpoint2', '1x', array(
+        ],
+      ],
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint2', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'thumbnail',
-    ));
+    ]);
 
     $this->assertTrue($entity->hasImageStyleMappings());
     $entity->removeImageStyleMappings();
@@ -360,24 +360,24 @@ public function testRemoveImageStyleMappings() {
    * @covers ::getBreakpointGroup
    */
   public function testSetBreakpointGroup() {
-    $entity = new ResponsiveImageStyle(array('breakpoint_group' => 'test_group'));
-    $entity->addImageStyleMapping('test_breakpoint', '1x', array(
+    $entity = new ResponsiveImageStyle(['breakpoint_group' => 'test_group']);
+    $entity->addImageStyleMapping('test_breakpoint', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'large',
-    ));
-    $entity->addImageStyleMapping('test_breakpoint', '2x', array(
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint', '2x', [
       'image_mapping_type' => 'sizes',
-      'image_mapping' => array(
+      'image_mapping' => [
         'sizes' => '(min-width:700px) 700px, 100vw',
-        'sizes_image_styles' => array(
+        'sizes_image_styles' => [
           'large' => 'large',
-        ),
-      ),
-    ));
-    $entity->addImageStyleMapping('test_breakpoint2', '1x', array(
+        ],
+      ],
+    ]);
+    $entity->addImageStyleMapping('test_breakpoint2', '1x', [
       'image_mapping_type' => 'image_style',
       'image_mapping' => 'thumbnail',
-    ));
+    ]);
 
     // Ensure that setting to same group does not remove mappings.
     $entity->setBreakpointGroup('test_group');
diff --git a/core/modules/rest/rest.api.php b/core/modules/rest/rest.api.php
index 9bf6921..ac60107 100644
--- a/core/modules/rest/rest.api.php
+++ b/core/modules/rest/rest.api.php
@@ -47,7 +47,7 @@ function hook_rest_resource_alter(&$definitions) {
  * @see \Symfony\Component\Serializer\NormalizerInterface::normalize()
  * @see \Symfony\Component\Serializer\DenormalizerInterface::denormalize()
  */
-function hook_rest_type_uri_alter(&$uri, $context = array()) {
+function hook_rest_type_uri_alter(&$uri, $context = []) {
   if ($context['mymodule'] == TRUE) {
     $base = \Drupal::config('serialization.settings')->get('link_domain');
     $uri = str_replace($base, 'http://mymodule.domain', $uri);
@@ -74,7 +74,7 @@ function hook_rest_type_uri_alter(&$uri, $context = array()) {
  * @see \Symfony\Component\Serializer\NormalizerInterface::normalize()
  * @see \Symfony\Component\Serializer\DenormalizerInterface::denormalize()
  */
-function hook_rest_relation_uri_alter(&$uri, $context = array()) {
+function hook_rest_relation_uri_alter(&$uri, $context = []) {
   if ($context['mymodule'] == TRUE) {
     $base = \Drupal::config('serialization.settings')->get('link_domain');
     $uri = str_replace($base, 'http://mymodule.domain', $uri);
diff --git a/core/modules/rest/rest.install b/core/modules/rest/rest.install
index e7b5394..ca507ce 100644
--- a/core/modules/rest/rest.install
+++ b/core/modules/rest/rest.install
@@ -12,15 +12,15 @@
  * Implements hook_requirements().
  */
 function rest_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   if (version_compare(PHP_VERSION, '5.6.0', '>=') && version_compare(PHP_VERSION, '7', '<') && ini_get('always_populate_raw_post_data') != -1) {
-    $requirements['always_populate_raw_post_data'] = array(
+    $requirements['always_populate_raw_post_data'] = [
       'title' => t('always_populate_raw_post_data PHP setting'),
       'value' => t('Not set to -1.'),
       'severity' => REQUIREMENT_ERROR,
       'description' => t('The always_populate_raw_post_data PHP setting should be set to -1 in PHP version 5.6. Please check the <a href="https://php.net/manual/en/ini.core.php#ini.always-populate-raw-post-data">PHP manual</a> for information on how to correct this.'),
-    );
+    ];
   }
   return $requirements;
 }
diff --git a/core/modules/rest/rest.module b/core/modules/rest/rest.module
index 24e1c5f..afdb9ff 100644
--- a/core/modules/rest/rest.module
+++ b/core/modules/rest/rest.module
@@ -15,13 +15,13 @@ function rest_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.rest':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The RESTful Web Services module provides a framework for exposing REST resources on your site. It provides support for content entities (see the <a href=":field">Field module help page</a> for more information about entities) such as content, users, taxonomy terms, etc.; REST support for content items of the Node module is enabled by default, and support for other types of content entities can be enabled. Other modules may add support for other types of REST resources. For more information, see the <a href=":rest">online documentation for the RESTful Web Services module</a>.', array(':rest' => 'https://www.drupal.org/documentation/modules/rest', ':field' => (\Drupal::moduleHandler()->moduleExists('field')) ? \Drupal::url('help.page', array('name' => 'field')) : '#')) . '</p>';
+      $output .= '<p>' . t('The RESTful Web Services module provides a framework for exposing REST resources on your site. It provides support for content entities (see the <a href=":field">Field module help page</a> for more information about entities) such as content, users, taxonomy terms, etc.; REST support for content items of the Node module is enabled by default, and support for other types of content entities can be enabled. Other modules may add support for other types of REST resources. For more information, see the <a href=":rest">online documentation for the RESTful Web Services module</a>.', [':rest' => 'https://www.drupal.org/documentation/modules/rest', ':field' => (\Drupal::moduleHandler()->moduleExists('field')) ? \Drupal::url('help.page', ['name' => 'field']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Installing supporting modules') . '</dt>';
-      $output .= '<dd>' . t('In order to use REST on a web site, you need to install modules that provide serialization and authentication services. You can use the Core module <a href=":hal">HAL</a> for serialization and <a href=":basic_auth">HTTP Basic Authentication</a> for authentication, or install a contributed or custom module.', array(':hal' => (\Drupal::moduleHandler()->moduleExists('hal')) ? \Drupal::url('help.page', array('name' => 'hal')) : '#', ':basic_auth' => (\Drupal::moduleHandler()->moduleExists('basic_auth')) ? \Drupal::url('help.page', array('name' => 'basic_auth')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('In order to use REST on a web site, you need to install modules that provide serialization and authentication services. You can use the Core module <a href=":hal">HAL</a> for serialization and <a href=":basic_auth">HTTP Basic Authentication</a> for authentication, or install a contributed or custom module.', [':hal' => (\Drupal::moduleHandler()->moduleExists('hal')) ? \Drupal::url('help.page', ['name' => 'hal']) : '#', ':basic_auth' => (\Drupal::moduleHandler()->moduleExists('basic_auth')) ? \Drupal::url('help.page', ['name' => 'basic_auth']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Enabling REST support for an entity type') . '</dt>';
-      $output .= '<dd>' . t('REST support for content items of the Node module is enabled by default, and support for other types of content entities can be enabled. To enable support, you can use a <a href=":config">process based on configuration editing</a> or the contributed <a href=":restui">Rest UI module</a>.', array(':config' => 'https://www.drupal.org/documentation/modules/rest', ':restui' => 'https://www.drupal.org/project/restui')) . '</dd>';
+      $output .= '<dd>' . t('REST support for content items of the Node module is enabled by default, and support for other types of content entities can be enabled. To enable support, you can use a <a href=":config">process based on configuration editing</a> or the contributed <a href=":restui">Rest UI module</a>.', [':config' => 'https://www.drupal.org/documentation/modules/rest', ':restui' => 'https://www.drupal.org/project/restui']) . '</dd>';
       $output .= '<dd>' . t('You will also need to grant anonymous users permission to perform each of the REST operations you want to be available, and set up authentication properly to authorize web requests.') . '</dd>';
       $output .= '</dl>';
       return $output;
diff --git a/core/modules/rest/src/Plugin/Deriver/EntityDeriver.php b/core/modules/rest/src/Plugin/Deriver/EntityDeriver.php
index 6a6ddae..010fad7 100644
--- a/core/modules/rest/src/Plugin/Deriver/EntityDeriver.php
+++ b/core/modules/rest/src/Plugin/Deriver/EntityDeriver.php
@@ -65,17 +65,17 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     if (!isset($this->derivatives)) {
       // Add in the default plugin configuration and the resource type.
       foreach ($this->entityManager->getDefinitions() as $entity_type_id => $entity_type) {
-        $this->derivatives[$entity_type_id] = array(
+        $this->derivatives[$entity_type_id] = [
           'id' => 'entity:' . $entity_type_id,
           'entity_type' => $entity_type_id,
           'serialization_class' => $entity_type->getClass(),
           'label' => $entity_type->getLabel(),
-        );
+        ];
 
-        $default_uris = array(
+        $default_uris = [
           'canonical' => "/entity/$entity_type_id/" . '{' . $entity_type_id . '}',
           'https://www.drupal.org/link-relations/create' => "/entity/$entity_type_id",
-        );
+        ];
 
         foreach ($default_uris as $link_relation => $default_uri) {
           // Check if there are link templates defined for the entity type and
diff --git a/core/modules/rest/src/Plugin/ResourceBase.php b/core/modules/rest/src/Plugin/ResourceBase.php
index 93684db..3062aa2 100644
--- a/core/modules/rest/src/Plugin/ResourceBase.php
+++ b/core/modules/rest/src/Plugin/ResourceBase.php
@@ -31,7 +31,7 @@
    *
    * @var array
    */
-  protected $serializerFormats = array();
+  protected $serializerFormats = [];
 
   /**
    * A logger instance.
@@ -81,13 +81,13 @@ public static function create(ContainerInterface $container, array $configuratio
    * resource".
    */
   public function permissions() {
-    $permissions = array();
+    $permissions = [];
     $definition = $this->getPluginDefinition();
     foreach ($this->availableMethods() as $method) {
       $lowered_method = strtolower($method);
-      $permissions["restful $lowered_method $this->pluginId"] = array(
-        'title' => $this->t('Access @method on %label resource', array('@method' => $method, '%label' => $definition['label'])),
-      );
+      $permissions["restful $lowered_method $this->pluginId"] = [
+        'title' => $this->t('Access @method on %label resource', ['@method' => $method, '%label' => $definition['label']]),
+      ];
     }
     return $permissions;
   }
@@ -113,14 +113,14 @@ public function routes() {
           $route->setPath($create_path);
           // Restrict the incoming HTTP Content-type header to the known
           // serialization formats.
-          $route->addRequirements(array('_content_type_format' => implode('|', $this->serializerFormats)));
+          $route->addRequirements(['_content_type_format' => implode('|', $this->serializerFormats)]);
           $collection->add("$route_name.$method", $route);
           break;
 
         case 'PATCH':
           // Restrict the incoming HTTP Content-type header to the known
           // serialization formats.
-          $route->addRequirements(array('_content_type_format' => implode('|', $this->serializerFormats)));
+          $route->addRequirements(['_content_type_format' => implode('|', $this->serializerFormats)]);
           $collection->add("$route_name.$method", $route);
           break;
 
@@ -131,7 +131,7 @@ public function routes() {
           foreach ($this->serializerFormats as $format_name) {
             // Expose one route per available format.
             $format_route = clone $route;
-            $format_route->addRequirements(array('_format' => $format_name));
+            $format_route->addRequirements(['_format' => $format_name]);
             $collection->add("$route_name.$method.$format_name", $format_route);
           }
           break;
@@ -155,7 +155,7 @@ public function routes() {
    *   The list of allowed HTTP request method strings.
    */
   protected function requestMethods() {
-    return array(
+    return [
       'HEAD',
       'GET',
       'POST',
@@ -165,7 +165,7 @@ protected function requestMethods() {
       'OPTIONS',
       'CONNECT',
       'PATCH',
-    );
+    ];
   }
 
   /**
@@ -173,7 +173,7 @@ protected function requestMethods() {
    */
   public function availableMethods() {
     $methods = $this->requestMethods();
-    $available = array();
+    $available = [];
     foreach ($methods as $method) {
       // Only expose methods where the HTTP request method exists on the plugin.
       if (method_exists($this, strtolower($method))) {
@@ -195,15 +195,15 @@ public function availableMethods() {
    *   The created base route.
    */
   protected function getBaseRoute($canonical_path, $method) {
-    return new Route($canonical_path, array(
+    return new Route($canonical_path, [
       '_controller' => 'Drupal\rest\RequestHandler::handle',
-    ),
+    ],
       $this->getBaseRouteRequirements($method),
-      array(),
+      [],
       '',
-      array(),
+      [],
       // The HTTP method is a requirement for this route.
-      array($method)
+      [$method]
     );
   }
 
diff --git a/core/modules/rest/src/Plugin/rest/resource/EntityResource.php b/core/modules/rest/src/Plugin/rest/resource/EntityResource.php
index a66d5ab..a4162b5 100644
--- a/core/modules/rest/src/Plugin/rest/resource/EntityResource.php
+++ b/core/modules/rest/src/Plugin/rest/resource/EntityResource.php
@@ -184,7 +184,7 @@ public function post(EntityInterface $entity = NULL) {
     $this->validate($entity);
     try {
       $entity->save();
-      $this->logger->notice('Created entity %type with ID %id.', array('%type' => $entity->getEntityTypeId(), '%id' => $entity->id()));
+      $this->logger->notice('Created entity %type with ID %id.', ['%type' => $entity->getEntityTypeId(), '%id' => $entity->id()]);
 
       // 201 Created responses return the newly created entity in the response
       // body. These responses are not cacheable, so we add no cacheability
@@ -296,7 +296,7 @@ public function patch(EntityInterface $original_entity, EntityInterface $entity
     $this->validate($original_entity);
     try {
       $original_entity->save();
-      $this->logger->notice('Updated entity %type with ID %id.', array('%type' => $original_entity->getEntityTypeId(), '%id' => $original_entity->id()));
+      $this->logger->notice('Updated entity %type with ID %id.', ['%type' => $original_entity->getEntityTypeId(), '%id' => $original_entity->id()]);
 
       // Return the updated entity in the response body.
       return new ModifiedResourceResponse($original_entity, 200);
@@ -324,7 +324,7 @@ public function delete(EntityInterface $entity) {
     }
     try {
       $entity->delete();
-      $this->logger->notice('Deleted entity %type with ID %id.', array('%type' => $entity->getEntityTypeId(), '%id' => $entity->id()));
+      $this->logger->notice('Deleted entity %type with ID %id.', ['%type' => $entity->getEntityTypeId(), '%id' => $entity->id()]);
 
       // DELETE responses have an empty body.
       return new ModifiedResourceResponse(NULL, 204);
@@ -376,7 +376,7 @@ protected function getBaseRoute($canonical_path, $method) {
     $route = parent::getBaseRoute($canonical_path, $method);
     $definition = $this->getPluginDefinition();
 
-    $parameters = $route->getOption('parameters') ?: array();
+    $parameters = $route->getOption('parameters') ?: [];
     $parameters[$definition['entity_type']]['type'] = 'entity:' . $definition['entity_type'];
     $route->setOption('parameters', $parameters);
 
diff --git a/core/modules/rest/src/Plugin/views/display/RestExport.php b/core/modules/rest/src/Plugin/views/display/RestExport.php
index 65bce23..cd96195 100644
--- a/core/modules/rest/src/Plugin/views/display/RestExport.php
+++ b/core/modules/rest/src/Plugin/views/display/RestExport.php
@@ -266,21 +266,21 @@ public function optionsSummary(&$categories, &$options) {
     // Hide some settings, as they aren't useful for pure data output.
     unset($options['show_admin_links'], $options['analyze-theme']);
 
-    $categories['path'] = array(
+    $categories['path'] = [
       'title' => $this->t('Path settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -10,
-      ),
-    );
+      ],
+    ];
 
     $options['path']['category'] = 'path';
     $options['path']['title'] = $this->t('Path');
-    $options['auth'] = array(
+    $options['auth'] = [
       'category' => 'path',
       'title' => $this->t('Authentication'),
       'value' => views_ui_truncate($auth, 24),
-    );
+    ];
 
     // Remove css/exposed form settings, as they are not used for the data
     // display.
@@ -296,13 +296,13 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     if ($form_state->get('section') === 'auth') {
       $form['#title'] .= $this->t('The supported authentication methods for this view');
-      $form['auth'] = array(
+      $form['auth'] = [
         '#type' => 'checkboxes',
         '#title' => $this->t('Authentication methods'),
         '#description' => $this->t('These are the supported authentication providers for this view. When this view is requested, the client will be forced to authenticate with one of the selected providers. Make sure you set the appropriate requirements at the <em>Access</em> section since the Authentication System will fallback to the anonymous user if it fails to authenticate. For example: require Access: Role | Authenticated User.'),
         '#options' => $this->getAuthOptions(),
         '#default_value' => $this->getOption('auth'),
-      );
+      ];
     }
   }
 
@@ -406,7 +406,7 @@ public function execute() {
    * {@inheritdoc}
    */
   public function render() {
-    $build = array();
+    $build = [];
     $build['#markup'] = $this->renderer->executeInRenderContext(new RenderContext(), function() {
       return $this->view->style_plugin->render();
     });
diff --git a/core/modules/rest/src/Plugin/views/row/DataFieldRow.php b/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
index 8cebb73..175db17 100644
--- a/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
+++ b/core/modules/rest/src/Plugin/views/row/DataFieldRow.php
@@ -31,14 +31,14 @@ class DataFieldRow extends RowPluginBase {
    *
    * @var array
    */
-  protected $replacementAliases = array();
+  protected $replacementAliases = [];
 
   /**
    * Stores an array of options to determine if the raw field output is used.
    *
    * @var array
    */
-  protected $rawOutputOptions = array();
+  protected $rawOutputOptions = [];
 
   /**
    * {@inheritdoc}
@@ -61,7 +61,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['field_options'] = array('default' => array());
+    $options['field_options'] = ['default' => []];
 
     return $options;
   }
@@ -72,12 +72,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['field_options'] = array(
+    $form['field_options'] = [
       '#type' => 'table',
-      '#header' => array($this->t('Field'), $this->t('Alias'), $this->t('Raw output')),
+      '#header' => [$this->t('Field'), $this->t('Alias'), $this->t('Raw output')],
       '#empty' => $this->t('You have no fields. Add some to your view.'),
       '#tree' => TRUE,
-    );
+    ];
 
     $options = $this->options['field_options'];
 
@@ -87,22 +87,22 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         if (!empty($field['exclude'])) {
           continue;
         }
-        $form['field_options'][$id]['field'] = array(
+        $form['field_options'][$id]['field'] = [
           '#markup' => $id,
-        );
-        $form['field_options'][$id]['alias'] = array(
-          '#title' => $this->t('Alias for @id', array('@id' => $id)),
+        ];
+        $form['field_options'][$id]['alias'] = [
+          '#title' => $this->t('Alias for @id', ['@id' => $id]),
           '#title_display' => 'invisible',
           '#type' => 'textfield',
           '#default_value' => isset($options[$id]['alias']) ? $options[$id]['alias'] : '',
-          '#element_validate' => array(array($this, 'validateAliasName')),
-        );
-        $form['field_options'][$id]['raw_output'] = array(
-          '#title' => $this->t('Raw output for @id', array('@id' => $id)),
+          '#element_validate' => [[$this, 'validateAliasName']],
+        ];
+        $form['field_options'][$id]['raw_output'] = [
+          '#title' => $this->t('Raw output for @id', ['@id' => $id]),
           '#title_display' => 'invisible',
           '#type' => 'checkbox',
           '#default_value' => isset($options[$id]['raw_output']) ? $options[$id]['raw_output'] : '',
-        );
+        ];
       }
     }
   }
@@ -121,7 +121,7 @@ public function validateAliasName($element, FormStateInterface $form_state) {
    */
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     // Collect an array of aliases to validate.
-    $aliases = static::extractFromOptionsArray('alias', $form_state->getValue(array('row_options', 'field_options')));
+    $aliases = static::extractFromOptionsArray('alias', $form_state->getValue(['row_options', 'field_options']));
 
     // If array filter returns empty, no values have been entered. Unique keys
     // should only be validated if we have some.
@@ -134,7 +134,7 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function render($row) {
-    $output = array();
+    $output = [];
 
     foreach ($this->view->field as $id => $field) {
       // If the raw output option has been set, just get the raw value.
diff --git a/core/modules/rest/src/Plugin/views/style/Serializer.php b/core/modules/rest/src/Plugin/views/style/Serializer.php
index 7e9b433..895b9fe 100644
--- a/core/modules/rest/src/Plugin/views/style/Serializer.php
+++ b/core/modules/rest/src/Plugin/views/style/Serializer.php
@@ -45,7 +45,7 @@ class Serializer extends StylePluginBase implements CacheableDependencyInterface
    *
    * @var array
    */
-  protected $formats = array();
+  protected $formats = [];
 
   /**
    * The serialization format providers, keyed by format.
@@ -85,7 +85,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['formats'] = array('default' => array());
+    $options['formats'] = ['default' => []];
 
     return $options;
   }
@@ -96,13 +96,13 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['formats'] = array(
+    $form['formats'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Accepted request formats'),
       '#description' => $this->t('Request formats that will be allowed in responses. If none are selected all formats will be allowed.'),
       '#options' => $this->getFormatOptions(),
       '#default_value' => $this->options['formats'],
-    );
+    ];
   }
 
   /**
@@ -111,15 +111,15 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
   public function submitOptionsForm(&$form, FormStateInterface $form_state) {
     parent::submitOptionsForm($form, $form_state);
 
-    $formats = $form_state->getValue(array('style_options', 'formats'));
-    $form_state->setValue(array('style_options', 'formats'), array_filter($formats));
+    $formats = $form_state->getValue(['style_options', 'formats']);
+    $form_state->setValue(['style_options', 'formats'], array_filter($formats));
   }
 
   /**
    * {@inheritdoc}
    */
   public function render() {
-    $rows = array();
+    $rows = [];
     // If the Data Entity row plugin is used, this will be an array of entities
     // which will pass through Serializer to one of the registered Normalizers,
     // which will transform it to arrays/scalars. If the Data field row plugin
diff --git a/core/modules/rest/src/RequestHandler.php b/core/modules/rest/src/RequestHandler.php
index 494b438..9f51379 100644
--- a/core/modules/rest/src/RequestHandler.php
+++ b/core/modules/rest/src/RequestHandler.php
@@ -131,7 +131,7 @@ public function handle(RouteMatchInterface $route_match, Request $request) {
     // Determine the request parameters that should be passed to the resource
     // plugin.
     $route_parameters = $route_match->getParameters();
-    $parameters = array();
+    $parameters = [];
     // Filter out all internal parameters starting with "_".
     foreach ($route_parameters as $key => $parameter) {
       if ($key{0} !== '_') {
@@ -140,7 +140,7 @@ public function handle(RouteMatchInterface $route_match, Request $request) {
     }
 
     // Invoke the operation on the resource plugin.
-    $response = call_user_func_array(array($resource, $method), array_merge($parameters, array($unserialized, $request)));
+    $response = call_user_func_array([$resource, $method], array_merge($parameters, [$unserialized, $request]));
 
     if ($response instanceof CacheableResponseInterface) {
       // Add rest config's cache tags.
diff --git a/core/modules/rest/src/ResourceResponse.php b/core/modules/rest/src/ResourceResponse.php
index d4279a4..eb955c2 100644
--- a/core/modules/rest/src/ResourceResponse.php
+++ b/core/modules/rest/src/ResourceResponse.php
@@ -31,7 +31,7 @@ class ResourceResponse extends Response implements CacheableResponseInterface, R
    * @param array $headers
    *   An array of response headers.
    */
-  public function __construct($data = NULL, $status = 200, $headers = array()) {
+  public function __construct($data = NULL, $status = 200, $headers = []) {
     $this->responseData = $data;
     parent::__construct('', $status, $headers);
   }
diff --git a/core/modules/rest/src/Routing/ResourceRoutes.php b/core/modules/rest/src/Routing/ResourceRoutes.php
index 8aedfba..3151420 100644
--- a/core/modules/rest/src/Routing/ResourceRoutes.php
+++ b/core/modules/rest/src/Routing/ResourceRoutes.php
@@ -95,13 +95,13 @@ protected function getRoutesForResourceConfig(RestResourceConfigInterface $rest_
 
         // Check that authentication providers are defined.
         if (empty($rest_resource_config->getAuthenticationProviders($method))) {
-          $this->logger->error('At least one authentication provider must be defined for resource @id', array(':id' => $rest_resource_config->id()));
+          $this->logger->error('At least one authentication provider must be defined for resource @id', [':id' => $rest_resource_config->id()]);
           continue;
         }
 
         // Check that formats are defined.
         if (empty($rest_resource_config->getFormats($method))) {
-          $this->logger->error('At least one format must be defined for resource @id', array(':id' => $rest_resource_config->id()));
+          $this->logger->error('At least one format must be defined for resource @id', [':id' => $rest_resource_config->id()]);
           continue;
         }
 
diff --git a/core/modules/rest/src/Tests/RESTTestBase.php b/core/modules/rest/src/Tests/RESTTestBase.php
index 405493b..40a9fe2 100644
--- a/core/modules/rest/src/Tests/RESTTestBase.php
+++ b/core/modules/rest/src/Tests/RESTTestBase.php
@@ -65,7 +65,7 @@
    *
    * @var array
    */
-  public static $modules = array('rest', 'entity_test');
+  public static $modules = ['rest', 'entity_test'];
 
   /**
    * The last response.
@@ -78,11 +78,11 @@ protected function setUp() {
     parent::setUp();
     $this->defaultFormat = 'hal_json';
     $this->defaultMimeType = 'application/hal+json';
-    $this->defaultAuth = array('cookie');
+    $this->defaultAuth = ['cookie'];
     $this->resourceConfigStorage = $this->container->get('entity_type.manager')->getStorage('rest_resource_config');
     // Create a test content type for node testing.
     if (in_array('node', static::$modules)) {
-      $this->drupalCreateContentType(array('name' => 'resttest', 'type' => 'resttest'));
+      $this->drupalCreateContentType(['name' => 'resttest', 'type' => 'resttest']);
     }
 
     $this->cookieFile = $this->publicFilesDirectory . '/cookie.jar';
@@ -142,7 +142,7 @@ protected function httpRequest($url, $method, $body = NULL, $mime_type = NULL, $
     if (!isset($mime_type)) {
       $mime_type = $this->defaultMimeType;
     }
-    if (!in_array($method, array('GET', 'HEAD', 'OPTIONS', 'TRACE'))) {
+    if (!in_array($method, ['GET', 'HEAD', 'OPTIONS', 'TRACE'])) {
       // GET the CSRF token first for writing requests.
       $requested_token = $this->drupalGet('session/token');
     }
@@ -303,28 +303,28 @@ protected function entityCreate($entity_type) {
   protected function entityValues($entity_type_id) {
     switch ($entity_type_id) {
       case 'entity_test':
-        return array(
+        return [
           'name' => $this->randomMachineName(),
           'user_id' => 1,
-          'field_test_text' => array(0 => array(
+          'field_test_text' => [0 => [
             'value' => $this->randomString(),
             'format' => 'plain_text',
-          )),
-        );
+          ]],
+        ];
       case 'config_test':
         return [
           'id' => $this->randomMachineName(),
           'label' => 'Test label',
         ];
       case 'node':
-        return array('title' => $this->randomString(), 'type' => 'resttest');
+        return ['title' => $this->randomString(), 'type' => 'resttest'];
       case 'node_type':
-        return array(
+        return [
           'type' => 'article',
           'name' => $this->randomMachineName(),
-        );
+        ];
       case 'user':
-        return array('name' => $this->randomMachineName());
+        return ['name' => $this->randomMachineName()];
 
       case 'comment':
         return [
@@ -353,7 +353,7 @@ protected function entityValues($entity_type_id) {
         if ($this->isConfigEntity($entity_type_id)) {
           return $this->configEntityValues($entity_type_id);
         }
-        return array();
+        return [];
     }
   }
 
@@ -460,22 +460,22 @@ protected function entityPermissions($entity_type_id, $operation) {
       case 'entity_test':
         switch ($operation) {
           case 'view':
-            return array('view test entity');
+            return ['view test entity'];
           case 'create':
           case 'update':
           case 'delete':
-            return array('administer entity_test content');
+            return ['administer entity_test content'];
         }
       case 'node':
         switch ($operation) {
           case 'view':
-            return array('access content');
+            return ['access content'];
           case 'create':
-            return array('create resttest content');
+            return ['create resttest content'];
           case 'update':
-            return array('edit any resttest content');
+            return ['edit any resttest content'];
           case 'delete':
-            return array('delete any resttest content');
+            return ['delete any resttest content'];
         }
 
       case 'comment':
@@ -573,7 +573,7 @@ protected function removeNodeFieldsForNonAdminUsers(NodeInterface $node) {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertResponseBody($expected, $message = '', $group = 'REST Response') {
-    return $this->assertIdentical($expected, $this->responseBody, $message ? $message : strtr('Response body @expected (expected) is equal to @response (actual).', array('@expected' => var_export($expected, TRUE), '@response' => var_export($this->responseBody, TRUE))), $group);
+    return $this->assertIdentical($expected, $this->responseBody, $message ? $message : strtr('Response body @expected (expected) is equal to @response (actual).', ['@expected' => var_export($expected, TRUE), '@response' => var_export($this->responseBody, TRUE)]), $group);
   }
 
   /**
diff --git a/core/modules/rest/src/Tests/ResourceTest.php b/core/modules/rest/src/Tests/ResourceTest.php
index 72bed0f..baf91e9 100644
--- a/core/modules/rest/src/Tests/ResourceTest.php
+++ b/core/modules/rest/src/Tests/ResourceTest.php
@@ -19,7 +19,7 @@ class ResourceTest extends RESTTestBase {
    *
    * @var array
    */
-  public static $modules = array('hal', 'rest', 'entity_test', 'rest_test');
+  public static $modules = ['hal', 'rest', 'entity_test', 'rest_test'];
 
   /**
    * The entity.
diff --git a/core/modules/rest/src/Tests/Views/StyleSerializerTest.php b/core/modules/rest/src/Tests/Views/StyleSerializerTest.php
index 4c004fc..3c751b6 100644
--- a/core/modules/rest/src/Tests/Views/StyleSerializerTest.php
+++ b/core/modules/rest/src/Tests/Views/StyleSerializerTest.php
@@ -40,14 +40,14 @@ class StyleSerializerTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'entity_test', 'hal', 'rest_test_views', 'node', 'text', 'field', 'language', 'basic_auth');
+  public static $modules = ['views_ui', 'entity_test', 'hal', 'rest_test_views', 'node', 'text', 'field', 'language', 'basic_auth'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_serializer_display_field', 'test_serializer_display_entity', 'test_serializer_display_entity_translated', 'test_serializer_node_display_field', 'test_serializer_node_exposed_filter');
+  public static $testViews = ['test_serializer_display_field', 'test_serializer_display_entity', 'test_serializer_display_entity_translated', 'test_serializer_node_display_field', 'test_serializer_node_exposed_filter'];
 
   /**
    * A user with administrative privileges to look at test entity and configure views.
@@ -57,13 +57,13 @@ class StyleSerializerTest extends PluginTestBase {
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('rest_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['rest_test_views']);
 
-    $this->adminUser = $this->drupalCreateUser(array('administer views', 'administer entity_test content', 'access user profiles', 'view test entity'));
+    $this->adminUser = $this->drupalCreateUser(['administer views', 'administer entity_test content', 'access user profiles', 'view test entity']);
 
     // Save some entity_test entities.
     for ($i = 1; $i <= 10; $i++) {
-      EntityTest::create(array('name' => 'test_' . $i, 'user_id' => $this->adminUser->id()))->save();
+      EntityTest::create(['name' => 'test_' . $i, 'user_id' => $this->adminUser->id()])->save();
     }
 
     $this->enableViewsTestModule();
@@ -122,9 +122,9 @@ public function testSerializerResponses() {
     $headers = $this->drupalGetHeaders();
     $this->assertEqual($headers['content-type'], 'application/json', 'The header Content-type is correct.');
 
-    $expected = array();
+    $expected = [];
     foreach ($view->result as $row) {
-      $expected_row = array();
+      $expected_row = [];
       foreach ($view->field as $id => $field) {
         $expected_row[$id] = $field->render($row);
       }
@@ -154,7 +154,7 @@ public function testSerializerResponses() {
     // Get the serializer service.
     $serializer = $this->container->get('serializer');
 
-    $entities = array();
+    $entities = [];
     foreach ($view->result as $row) {
       $entities[] = $row->_entity;
     }
@@ -180,15 +180,15 @@ public function testSerializerResponses() {
 
     // Change the default format to xml.
     $view->setDisplay('rest_export_1');
-    $view->getDisplay()->setOption('style', array(
+    $view->getDisplay()->setOption('style', [
       'type' => 'serializer',
-      'options' => array(
+      'options' => [
         'uses_fields' => FALSE,
-        'formats' => array(
+        'formats' => [
           'xml' => 'xml',
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $view->save();
     $expected = $serializer->serialize($entities, 'xml');
     $actual_xml = $this->drupalGet('test/serialize/entity');
@@ -197,16 +197,16 @@ public function testSerializerResponses() {
 
     // Allow multiple formats.
     $view->setDisplay('rest_export_1');
-    $view->getDisplay()->setOption('style', array(
+    $view->getDisplay()->setOption('style', [
       'type' => 'serializer',
-      'options' => array(
+      'options' => [
         'uses_fields' => FALSE,
-        'formats' => array(
+        'formats' => [
           'xml' => 'xml',
           'json' => 'json',
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $view->save();
     $expected = $serializer->serialize($entities, 'json');
     $actual_json = $this->drupalGetWithFormat('test/serialize/entity', 'json');
@@ -346,8 +346,8 @@ public function testResponseFormatConfiguration() {
     $style_options = 'admin/structure/views/nojs/display/test_serializer_display_field/rest_export_1/style_options';
 
     // Select only 'xml' as an accepted format.
-    $this->drupalPostForm($style_options, array('style_options[formats][xml]' => 'xml'), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($style_options, ['style_options[formats][xml]' => 'xml'], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Should return a 406.
     $this->drupalGetWithFormat('test/serialize/field', 'json');
@@ -359,8 +359,8 @@ public function testResponseFormatConfiguration() {
     $this->assertResponse(200, 'A 200 response was returned when XML was requested.');
 
     // Add 'json' as an accepted format, so we have multiple.
-    $this->drupalPostForm($style_options, array('style_options[formats][json]' => 'json'), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($style_options, ['style_options[formats][json]' => 'json'], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Should return a 200.
     // @todo This should be fixed when we have better content negotiation.
@@ -369,7 +369,7 @@ public function testResponseFormatConfiguration() {
     $this->assertResponse(200, 'A 200 response was returned when any format was requested.');
 
     // Should return a 200. Emulates a sample Firefox header.
-    $this->drupalGet('test/serialize/field', array(), array('Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'));
+    $this->drupalGet('test/serialize/field', [], ['Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8']);
     $this->assertHeader('content-type', 'application/json');
     $this->assertResponse(200, 'A 200 response was returned when a browser accept header was requested.');
 
@@ -393,7 +393,7 @@ public function testResponseFormatConfiguration() {
     $this->assertResponse(200, 'A 200 response was returned when HTML was requested.');
 
     // Now configure now format, so all of them should be allowed.
-    $this->drupalPostForm($style_options, array('style_options[formats][json]' => '0', 'style_options[formats][xml]' => '0'), t('Apply'));
+    $this->drupalPostForm($style_options, ['style_options[formats][json]' => '0', 'style_options[formats][xml]' => '0'], t('Apply'));
 
     // Should return a 200.
     $this->drupalGetWithFormat('test/serialize/field', 'json');
@@ -424,16 +424,16 @@ public function testUIFieldAlias() {
 
     // Test an empty string for an alias, this should not be used. This also
     // tests that the form can be submitted with no aliases.
-    $this->drupalPostForm($row_options, array('row_options[field_options][name][alias]' => ''), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($row_options, ['row_options[field_options][name][alias]' => ''], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView('test_serializer_display_field');
     $view->setDisplay('rest_export_1');
     $this->executeView($view);
 
-    $expected = array();
+    $expected = [];
     foreach ($view->result as $row) {
-      $expected_row = array();
+      $expected_row = [];
       foreach ($view->field as $id => $field) {
         $expected_row[$id] = $field->render($row);
       }
@@ -443,32 +443,32 @@ public function testUIFieldAlias() {
     $this->assertIdentical($this->drupalGetJSON('test/serialize/field'), $this->castSafeStrings($expected));
 
     // Test a random aliases for fields, they should be replaced.
-    $alias_map = array(
+    $alias_map = [
       'name' => $this->randomMachineName(),
       // Use # to produce an invalid character for the validation.
       'nothing' => '#' . $this->randomMachineName(),
       'created' => 'created',
-    );
+    ];
 
-    $edit = array('row_options[field_options][name][alias]' => $alias_map['name'], 'row_options[field_options][nothing][alias]' => $alias_map['nothing']);
+    $edit = ['row_options[field_options][name][alias]' => $alias_map['name'], 'row_options[field_options][nothing][alias]' => $alias_map['nothing']];
     $this->drupalPostForm($row_options, $edit, t('Apply'));
     $this->assertText(t('The machine-readable name must contain only letters, numbers, dashes and underscores.'));
 
     // Change the map alias value to a valid one.
     $alias_map['nothing'] = $this->randomMachineName();
 
-    $edit = array('row_options[field_options][name][alias]' => $alias_map['name'], 'row_options[field_options][nothing][alias]' => $alias_map['nothing']);
+    $edit = ['row_options[field_options][name][alias]' => $alias_map['name'], 'row_options[field_options][nothing][alias]' => $alias_map['nothing']];
     $this->drupalPostForm($row_options, $edit, t('Apply'));
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView('test_serializer_display_field');
     $view->setDisplay('rest_export_1');
     $this->executeView($view);
 
-    $expected = array();
+    $expected = [];
     foreach ($view->result as $row) {
-      $expected_row = array();
+      $expected_row = [];
       foreach ($view->field as $id => $field) {
         $expected_row[$alias_map[$id]] = $field->render($row);
       }
@@ -491,12 +491,12 @@ public function testFieldRawOutput() {
 
     // Test an empty string for an alias, this should not be used. This also
     // tests that the form can be submitted with no aliases.
-    $values = array(
+    $values = [
       'row_options[field_options][created][raw_output]' => '1',
       'row_options[field_options][name][raw_output]' => '1',
-    );
+    ];
     $this->drupalPostForm($row_options, $values, t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView('test_serializer_display_field');
     $view->setDisplay('rest_export_1');
@@ -562,7 +562,7 @@ public function testLivePreview() {
     // Get the serializer service.
     $serializer = $this->container->get('serializer');
 
-    $entities = array();
+    $entities = [];
     foreach ($view->result as $row) {
       $entities[] = $row->_entity;
     }
@@ -580,15 +580,15 @@ public function testLivePreview() {
 
     // Change the request format to xml.
     $view->setDisplay('rest_export_1');
-    $view->getDisplay()->setOption('style', array(
+    $view->getDisplay()->setOption('style', [
       'type' => 'serializer',
-      'options' => array(
+      'options' => [
         'uses_fields' => FALSE,
-        'formats' => array(
+        'formats' => [
           'xml' => 'xml',
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->executeView($view);
     $build = $view->preview();
@@ -602,7 +602,7 @@ public function testLivePreview() {
   public function testSerializerViewsUI() {
     $this->drupalLogin($this->adminUser);
     // Click the "Update preview button".
-    $this->drupalPostForm('admin/structure/views/view/test_serializer_display_field/edit/rest_export_1', $edit = array(), t('Update preview'));
+    $this->drupalPostForm('admin/structure/views/view/test_serializer_display_field/edit/rest_export_1', $edit = [], t('Update preview'));
     $this->assertResponse(200);
     // Check if we receive the expected result.
     $result = $this->xpath('//div[@id="views-live-preview"]/pre');
@@ -613,7 +613,7 @@ public function testSerializerViewsUI() {
    * Tests the field row style using fieldapi fields.
    */
   public function testFieldapiField() {
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $node = $this->drupalCreateNode();
 
     $result = $this->drupalGetJSON('test/serialize/node-field');
@@ -749,44 +749,44 @@ public function testGroupRows() {
    * the value provided.
    */
   public function testRestViewExposedFilter() {
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $node0 = $this->drupalCreateNode(array('title' => 'Node 1'));
-    $node1 = $this->drupalCreateNode(array('title' => 'Node 11'));
-    $node2 = $this->drupalCreateNode(array('title' => 'Node 111'));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $node0 = $this->drupalCreateNode(['title' => 'Node 1']);
+    $node1 = $this->drupalCreateNode(['title' => 'Node 11']);
+    $node2 = $this->drupalCreateNode(['title' => 'Node 111']);
 
     // Test that no filter brings back all three nodes.
     $result = $this->drupalGetJSON('test/serialize/node-exposed-filter');
 
-    $expected = array(
-      0 => array(
+    $expected = [
+      0 => [
         'nid' => $node0->id(),
         'body' => $node0->body->processed,
-      ),
-      1 => array(
+      ],
+      1 => [
         'nid' => $node1->id(),
         'body' => $node1->body->processed,
-      ),
-      2 => array(
+      ],
+      2 => [
         'nid' => $node2->id(),
         'body' => $node2->body->processed,
-      ),
-    );
+      ],
+    ];
 
     $this->assertEqual($result, $expected, 'Querying a view with no exposed filter returns all nodes.');
 
     // Test that title starts with 'Node 11' query finds 2 of the 3 nodes.
     $result = $this->drupalGetJSON('test/serialize/node-exposed-filter', ['query' => ['title' => 'Node 11']]);
 
-    $expected = array(
-      0 => array(
+    $expected = [
+      0 => [
         'nid' => $node1->id(),
         'body' => $node1->body->processed,
-      ),
-      1 => array(
+      ],
+      1 => [
         'nid' => $node2->id(),
         'body' => $node2->body->processed,
-      ),
-    );
+      ],
+    ];
 
     $cache_contexts = [
       'languages:language_content',
diff --git a/core/modules/rest/tests/src/Functional/EntityResource/Comment/CommentResourceTestBase.php b/core/modules/rest/tests/src/Functional/EntityResource/Comment/CommentResourceTestBase.php
index 8b3ea64..b46eec9 100644
--- a/core/modules/rest/tests/src/Functional/EntityResource/Comment/CommentResourceTestBase.php
+++ b/core/modules/rest/tests/src/Functional/EntityResource/Comment/CommentResourceTestBase.php
@@ -87,10 +87,10 @@ protected function createEntity() {
     $this->addDefaultCommentField('entity_test', 'bar', 'comment');
 
     // Create a "Camelids" test entity that the comment will be assigned to.
-    $commented_entity = EntityTest::create(array(
+    $commented_entity = EntityTest::create([
       'name' => 'Camelids',
       'type' => 'bar',
-    ));
+    ]);
     $commented_entity->save();
 
     // Create a "Llama" comment.
diff --git a/core/modules/rest/tests/src/Unit/CollectRoutesTest.php b/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
index c55ea3b..3ed6545 100644
--- a/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
+++ b/core/modules/rest/tests/src/Unit/CollectRoutesTest.php
@@ -39,18 +39,18 @@ protected function setUp() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    $this->view = $this->getMock('\Drupal\views\Entity\View', array('initHandlers'), array(
-      array('id' => 'test_view'),
+    $this->view = $this->getMock('\Drupal\views\Entity\View', ['initHandlers'], [
+      ['id' => 'test_view'],
       'view',
-    ));
+    ]);
 
-    $view_executable = $this->getMock('\Drupal\views\ViewExecutable', array('initHandlers', 'getTitle'), array(), '', FALSE);
+    $view_executable = $this->getMock('\Drupal\views\ViewExecutable', ['initHandlers', 'getTitle'], [], '', FALSE);
     $view_executable->expects($this->any())
       ->method('getTitle')
       ->willReturn('View title');
 
     $view_executable->storage = $this->view;
-    $view_executable->argument = array();
+    $view_executable->argument = [];
 
     $display_manager = $this->getMockBuilder('\Drupal\views\Plugin\ViewsPluginManager')
       ->disableOriginalConstructor()
@@ -86,21 +86,21 @@ protected function setUp() {
 
     \Drupal::setContainer($container);
 
-    $this->restExport = RestExport::create($container, array(), "test_routes", array());
+    $this->restExport = RestExport::create($container, [], "test_routes", []);
     $this->restExport->view = $view_executable;
 
     // Initialize a display.
-    $this->restExport->display = array('id' => 'page_1');
+    $this->restExport->display = ['id' => 'page_1'];
 
     // Set the style option.
-    $this->restExport->setOption('style', array('type' => 'serializer'));
+    $this->restExport->setOption('style', ['type' => 'serializer']);
 
     // Set the auth option.
     $this->restExport->setOption('auth', ['basic_auth']);
 
     $display_manager->expects($this->once())
       ->method('getDefinition')
-      ->will($this->returnValue(array('id' => 'test', 'provider' => 'test')));
+      ->will($this->returnValue(['id' => 'test', 'provider' => 'test']));
 
     $none = $this->getMockBuilder('\Drupal\views\Plugin\views\access\None')
       ->disableOriginalConstructor()
@@ -110,11 +110,11 @@ protected function setUp() {
       ->method('createInstance')
       ->will($this->returnValue($none));
 
-    $style_plugin = $this->getMock('\Drupal\rest\Plugin\views\style\Serializer', array('getFormats', 'init'), array(), '', FALSE);
+    $style_plugin = $this->getMock('\Drupal\rest\Plugin\views\style\Serializer', ['getFormats', 'init'], [], '', FALSE);
 
     $style_plugin->expects($this->once())
       ->method('getFormats')
-      ->will($this->returnValue(array('json')));
+      ->will($this->returnValue(['json']));
 
     $style_plugin->expects($this->once())
       ->method('init')
diff --git a/core/modules/search/search.install b/core/modules/search/search.install
index f920aa5..d55c4d2 100644
--- a/core/modules/search/search.install
+++ b/core/modules/search/search.install
@@ -9,116 +9,116 @@
  * Implements hook_schema().
  */
 function search_schema() {
-  $schema['search_dataset'] = array(
+  $schema['search_dataset'] = [
     'description' => 'Stores items that will be searched.',
-    'fields' => array(
-      'sid' => array(
+    'fields' => [
+      'sid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Search item ID, e.g. node ID for nodes.',
-      ),
-      'langcode' => array(
+      ],
+      'langcode' => [
         'type' => 'varchar_ascii',
         'length' => '12',
         'not null' => TRUE,
         'description' => 'The {languages}.langcode of the item variant.',
         'default' => '',
-      ),
-      'type' => array(
+      ],
+      'type' => [
         'type' => 'varchar_ascii',
         'length' => 64,
         'not null' => TRUE,
         'description' => 'Type of item, e.g. node.',
-      ),
-      'data' => array(
+      ],
+      'data' => [
         'type' => 'text',
         'not null' => TRUE,
         'size' => 'big',
         'description' => 'List of space-separated words from the item.',
-      ),
-      'reindex' => array(
+      ],
+      'reindex' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Set to force node reindexing.',
-      ),
-    ),
-    'primary key' => array('sid', 'langcode', 'type'),
-  );
+      ],
+    ],
+    'primary key' => ['sid', 'langcode', 'type'],
+  ];
 
-  $schema['search_index'] = array(
+  $schema['search_index'] = [
     'description' => 'Stores the search index, associating words, items and scores.',
-    'fields' => array(
-      'word' => array(
+    'fields' => [
+      'word' => [
         'type' => 'varchar',
         'length' => 50,
         'not null' => TRUE,
         'default' => '',
         'description' => 'The {search_total}.word that is associated with the search item.',
-      ),
-      'sid' => array(
+      ],
+      'sid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {search_dataset}.sid of the searchable item to which the word belongs.',
-      ),
-      'langcode' => array(
+      ],
+      'langcode' => [
         'type' => 'varchar_ascii',
         'length' => '12',
         'not null' => TRUE,
         'description' => 'The {languages}.langcode of the item variant.',
         'default' => '',
-      ),
-      'type' => array(
+      ],
+      'type' => [
         'type' => 'varchar_ascii',
         'length' => 64,
         'not null' => TRUE,
         'description' => 'The {search_dataset}.type of the searchable item to which the word belongs.',
-      ),
-      'score' => array(
+      ],
+      'score' => [
         'type' => 'float',
         'not null' => FALSE,
         'description' => 'The numeric score of the word, higher being more important.',
-      ),
-    ),
-    'indexes' => array(
-      'sid_type' => array('sid', 'langcode', 'type'),
-    ),
-    'foreign keys' => array(
-      'search_dataset' => array(
+      ],
+    ],
+    'indexes' => [
+      'sid_type' => ['sid', 'langcode', 'type'],
+    ],
+    'foreign keys' => [
+      'search_dataset' => [
         'table' => 'search_dataset',
-        'columns' => array(
+        'columns' => [
           'sid' => 'sid',
           'langcode' => 'langcode',
           'type' => 'type',
-        ),
-      ),
-    ),
-    'primary key' => array('word', 'sid', 'langcode', 'type'),
-  );
+        ],
+      ],
+    ],
+    'primary key' => ['word', 'sid', 'langcode', 'type'],
+  ];
 
-  $schema['search_total'] = array(
+  $schema['search_total'] = [
     'description' => 'Stores search totals for words.',
-    'fields' => array(
-      'word' => array(
+    'fields' => [
+      'word' => [
         'description' => 'Primary Key: Unique word in the search index.',
         'type' => 'varchar',
         'length' => 50,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'count' => array(
+      ],
+      'count' => [
         'description' => "The count of the word in the index using Zipf's law to equalize the probability distribution.",
         'type' => 'float',
         'not null' => FALSE,
-      ),
-    ),
-    'primary key' => array('word'),
-  );
+      ],
+    ],
+    'primary key' => ['word'],
+  ];
 
   return $schema;
 }
@@ -129,7 +129,7 @@ function search_schema() {
  * For the Status Report, return information about search index status.
  */
 function search_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   if ($phase == 'runtime') {
     $remaining = 0;
@@ -145,11 +145,11 @@ function search_requirements($phase) {
     // Use floor() to calculate the percentage, so if it is not quite 100%, it
     // will show as 99%, to indicate "almost done".
     $percent = ($total > 0 ? floor(100 * $done / $total) : 100);
-    $requirements['search_status'] = array(
+    $requirements['search_status'] = [
       'title' => t('Search index progress'),
-      'value' => t('@percent% (@remaining remaining)', array('@percent' => $percent, '@remaining' => $remaining)),
+      'value' => t('@percent% (@remaining remaining)', ['@percent' => $percent, '@remaining' => $remaining]),
       'severity' => REQUIREMENT_INFO,
-    );
+    ];
   }
 
   return $requirements;
diff --git a/core/modules/search/search.module b/core/modules/search/search.module
index 215a6c8..ae99a87 100644
--- a/core/modules/search/search.module
+++ b/core/modules/search/search.module
@@ -75,20 +75,20 @@ function search_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.search':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Search module provides the ability to set up search pages based on plugins provided by other modules. In Drupal core, there are two page-type plugins: the Content page type provides keyword searching for content managed by the Node module, and the Users page type provides keyword searching for registered users. Contributed modules may provide other page-type plugins. For more information, see the <a href=":search-module">online documentation for the Search module</a>.', array(':search-module' => 'https://www.drupal.org/documentation/modules/search')) . '</p>';
+      $output .= '<p>' . t('The Search module provides the ability to set up search pages based on plugins provided by other modules. In Drupal core, there are two page-type plugins: the Content page type provides keyword searching for content managed by the Node module, and the Users page type provides keyword searching for registered users. Contributed modules may provide other page-type plugins. For more information, see the <a href=":search-module">online documentation for the Search module</a>.', [':search-module' => 'https://www.drupal.org/documentation/modules/search']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Configuring search pages') . '</dt>';
-      $output .= '<dd>' . t('To configure search pages, visit the <a href=":search-settings">Search pages page</a>. In the Search pages section, you can add a new search page, edit the configuration of existing search pages, enable and disable search pages, and choose the default search page. Each enabled search page has a URL path starting with <em>search</em>, and each will appear as a tab or local task link on the <a href=":search-url">search page</a>; you can configure the text that is shown in the tab. In addition, some search page plugins have additional settings that you can configure for each search page.', array(':search-settings' => \Drupal::url('entity.search_page.collection'), ':search-url' => \Drupal::url('search.view'))) . '</dd>';
+      $output .= '<dd>' . t('To configure search pages, visit the <a href=":search-settings">Search pages page</a>. In the Search pages section, you can add a new search page, edit the configuration of existing search pages, enable and disable search pages, and choose the default search page. Each enabled search page has a URL path starting with <em>search</em>, and each will appear as a tab or local task link on the <a href=":search-url">search page</a>; you can configure the text that is shown in the tab. In addition, some search page plugins have additional settings that you can configure for each search page.', [':search-settings' => \Drupal::url('entity.search_page.collection'), ':search-url' => \Drupal::url('search.view')]) . '</dd>';
       $output .= '<dt>' . t('Managing the search index') . '</dt>';
-      $output .= '<dd>' . t('Some search page plugins, such as the core Content search page, index searchable text using the Drupal core search index, and will not work unless content is indexed. Indexing is done during <em>cron</em> runs, so it requires a <a href=":cron">cron maintenance task</a> to be set up. There are also several settings affecting indexing that can be configured on the <a href=":search-settings">Search pages page</a>: the number of items to index per cron run, the minimum word length to index, and how to handle Chinese, Japanese, and Korean characters.', array(':cron' => \Drupal::url('system.cron_settings'), ':search-settings' => \Drupal::url('entity.search_page.collection'))) . '</dd>';
-      $output .= '<dd>' . t('Modules providing search page plugins generally ensure that content-related actions on your site (creating, editing, or deleting content and comments) automatically cause affected content items to be marked for indexing or reindexing at the next cron run. When content is marked for reindexing, the previous content remains in the index until cron runs, at which time it is replaced by the new content. However, there are some actions related to the structure of your site that do not cause affected content to be marked for reindexing. Examples of structure-related actions that affect content include deleting or editing taxonomy terms, enabling or disabling modules that add text to content (such as Taxonomy, Comment, and field-providing modules), and modifying the fields or display parameters of your content types. If you take one of these actions and you want to ensure that the search index is updated to reflect your changed site structure, you can mark all content for reindexing by clicking the "Re-index site" button on the <a href=":search-settings">Search pages page</a>. If you have a lot of content on your site, it may take several cron runs for the content to be reindexed.', array(':search-settings' => \Drupal::url('entity.search_page.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Some search page plugins, such as the core Content search page, index searchable text using the Drupal core search index, and will not work unless content is indexed. Indexing is done during <em>cron</em> runs, so it requires a <a href=":cron">cron maintenance task</a> to be set up. There are also several settings affecting indexing that can be configured on the <a href=":search-settings">Search pages page</a>: the number of items to index per cron run, the minimum word length to index, and how to handle Chinese, Japanese, and Korean characters.', [':cron' => \Drupal::url('system.cron_settings'), ':search-settings' => \Drupal::url('entity.search_page.collection')]) . '</dd>';
+      $output .= '<dd>' . t('Modules providing search page plugins generally ensure that content-related actions on your site (creating, editing, or deleting content and comments) automatically cause affected content items to be marked for indexing or reindexing at the next cron run. When content is marked for reindexing, the previous content remains in the index until cron runs, at which time it is replaced by the new content. However, there are some actions related to the structure of your site that do not cause affected content to be marked for reindexing. Examples of structure-related actions that affect content include deleting or editing taxonomy terms, enabling or disabling modules that add text to content (such as Taxonomy, Comment, and field-providing modules), and modifying the fields or display parameters of your content types. If you take one of these actions and you want to ensure that the search index is updated to reflect your changed site structure, you can mark all content for reindexing by clicking the "Re-index site" button on the <a href=":search-settings">Search pages page</a>. If you have a lot of content on your site, it may take several cron runs for the content to be reindexed.', [':search-settings' => \Drupal::url('entity.search_page.collection')]) . '</dd>';
       $output .= '<dt>' . t('Displaying the Search block') . '</dt>';
-      $output .= '<dd>' . t('The Search module includes a block, which can be enabled and configured on the <a href=":blocks">Block layout page</a>, if you have the Block module enabled; the default block title is Search, and it is the Search form block in the Forms category, if you wish to add another instance. The block is available to users with the <a href=":search_permission">Use search</a> permission, and it performs a search using the configured default search page.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':search_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-search')))) . '</dd>';
+      $output .= '<dd>' . t('The Search module includes a block, which can be enabled and configured on the <a href=":blocks">Block layout page</a>, if you have the Block module enabled; the default block title is Search, and it is the Search form block in the Forms category, if you wish to add another instance. The block is available to users with the <a href=":search_permission">Use search</a> permission, and it performs a search using the configured default search page.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':search_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-search'])]) . '</dd>';
       $output .= '<dt>' . t('Searching your site') . '</dt>';
-      $output .= '<dd>' . t('Users with <a href=":search_permission">Use search</a> permission can use the Search block and <a href=":search">Search page</a>. Users with the <a href=":node_permission">View published content</a> permission can use configured search pages of type <em>Content</em> to search for content containing exact keywords; in addition, users with <a href=":search_permission">Use advanced search</a> permission can use more complex search filtering. Users with the <a href=":user_permission">View user information</a> permission can use configured search pages of type <em>Users</em> to search for active users containing the keyword anywhere in the username, and users with the <a href=":user_permission">Administer users</a> permission can search for active and blocked users, by email address or username keyword.', array(':search' => \Drupal::url('search.view'), ':search_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-search')), ':node_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-node')), ':user_permission' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-user')))) . '</dd>';
+      $output .= '<dd>' . t('Users with <a href=":search_permission">Use search</a> permission can use the Search block and <a href=":search">Search page</a>. Users with the <a href=":node_permission">View published content</a> permission can use configured search pages of type <em>Content</em> to search for content containing exact keywords; in addition, users with <a href=":search_permission">Use advanced search</a> permission can use more complex search filtering. Users with the <a href=":user_permission">View user information</a> permission can use configured search pages of type <em>Users</em> to search for active users containing the keyword anywhere in the username, and users with the <a href=":user_permission">Administer users</a> permission can search for active and blocked users, by email address or username keyword.', [':search' => \Drupal::url('search.view'), ':search_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-search']), ':node_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-node']), ':user_permission' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-user'])]) . '</dd>';
       $output .= '<dt>' . t('Extending the Search module') . '</dt>';
-      $output .= '<dd>' . t('By default, the Search module only supports exact keyword matching in content searches. You can modify this behavior by installing a language-specific stemming module for your language (such as <a href=":porterstemmer_url">Porter Stemmer</a> for American English), which allows words such as walk, walking, and walked to be matched in the Search module. Another approach is to use a third-party search technology with stemming or partial word matching features built in, such as <a href=":solr_url">Apache Solr</a> or <a href=":sphinx_url">Sphinx</a>. There are also contributed modules that provide additional search pages. These and other <a href=":contrib-search">search-related contributed modules</a> can be downloaded by visiting Drupal.org.', array(':contrib-search' => 'https://www.drupal.org/project/project_module?f[2]=im_vid_3%3A105', ':porterstemmer_url' => 'https://www.drupal.org/project/porterstemmer', ':solr_url' => 'https://www.drupal.org/project/apachesolr', ':sphinx_url' => 'https://www.drupal.org/project/sphinx')) . '</dd>';
+      $output .= '<dd>' . t('By default, the Search module only supports exact keyword matching in content searches. You can modify this behavior by installing a language-specific stemming module for your language (such as <a href=":porterstemmer_url">Porter Stemmer</a> for American English), which allows words such as walk, walking, and walked to be matched in the Search module. Another approach is to use a third-party search technology with stemming or partial word matching features built in, such as <a href=":solr_url">Apache Solr</a> or <a href=":sphinx_url">Sphinx</a>. There are also contributed modules that provide additional search pages. These and other <a href=":contrib-search">search-related contributed modules</a> can be downloaded by visiting Drupal.org.', [':contrib-search' => 'https://www.drupal.org/project/project_module?f[2]=im_vid_3%3A105', ':porterstemmer_url' => 'https://www.drupal.org/project/porterstemmer', ':solr_url' => 'https://www.drupal.org/project/apachesolr', ':sphinx_url' => 'https://www.drupal.org/project/sphinx']) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -98,12 +98,12 @@ function search_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function search_theme() {
-  return array(
-    'search_result' => array(
-      'variables' => array('result' => NULL, 'plugin_id' => NULL),
+  return [
+    'search_result' => [
+      'variables' => ['result' => NULL, 'plugin_id' => NULL],
       'file' => 'search.pages.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -168,7 +168,7 @@ function search_index_clear($type = NULL, $sid = NULL, $langcode = NULL) {
  * total counts in the search_total table, and need to be recounted.
  */
 function search_dirty($word = NULL) {
-  $dirty = &drupal_static(__FUNCTION__, array());
+  $dirty = &drupal_static(__FUNCTION__, []);
   if ($word !== NULL) {
     $dirty[$word] = TRUE;
   }
@@ -207,18 +207,18 @@ function search_update_totals() {
   // Update word IDF (Inverse Document Frequency) counts for new/changed words.
   foreach (search_dirty() as $word => $dummy) {
     // Get total count
-    $total = db_query("SELECT SUM(score) FROM {search_index} WHERE word = :word", array(':word' => $word), array('target' => 'replica'))->fetchField();
+    $total = db_query("SELECT SUM(score) FROM {search_index} WHERE word = :word", [':word' => $word], ['target' => 'replica'])->fetchField();
     // Apply Zipf's law to equalize the probability distribution.
     $total = log10(1 + 1 / (max(1, $total)));
     db_merge('search_total')
       ->key('word', $word)
-      ->fields(array('count' => $total))
+      ->fields(['count' => $total])
       ->execute();
   }
   // Find words that were deleted from search_index, but are still in
   // search_total. We use a LEFT JOIN between the two tables and keep only the
   // rows which fail to join.
-  $result = db_query("SELECT t.word AS realword, i.word FROM {search_total} t LEFT JOIN {search_index} i ON t.word = i.word WHERE i.word IS NULL", array(), array('target' => 'replica'));
+  $result = db_query("SELECT t.word AS realword, i.word FROM {search_total} t LEFT JOIN {search_index} i ON t.word = i.word WHERE i.word IS NULL", [], ['target' => 'replica']);
   $or = new Condition('OR');
   foreach ($result as $word) {
     $or->condition('word', $word->realword);
@@ -330,7 +330,7 @@ function search_expand_cjk($matches) {
   }
   $tokens = ' ';
   // Build a FIFO queue of characters.
-  $chars = array();
+  $chars = [];
   for ($i = 0; $i < $length; $i++) {
     // Add the next character off the beginning of the string to the queue.
     $current = Unicode::substr($str, 0, 1);
@@ -383,7 +383,7 @@ function search_index_split($text, $langcode = NULL) {
 function _search_index_truncate(&$text) {
   // Use a static array to avoid re-truncating text we've done before.
   // The same words may often be passed in during excerpt generation.
-  static $truncated = array();
+  static $truncated = [];
   if (isset($truncated[$text])) {
     $text = $truncated[$text];
     return;
@@ -409,7 +409,7 @@ function _search_index_truncate(&$text) {
  */
 function search_invoke_preprocess(&$text, $langcode = NULL) {
   foreach (\Drupal::moduleHandler()->getImplementations('search_preprocess') as $module) {
-    $text = \Drupal::moduleHandler()->invoke($module, 'search_preprocess', array($text, $langcode));
+    $text = \Drupal::moduleHandler()->invoke($module, 'search_preprocess', [$text, $langcode]);
   }
 }
 
@@ -438,7 +438,7 @@ function search_index($type, $sid, $langcode, $text) {
 
   // Strip off all ignored tags to speed up processing, but insert space before
   // and after them to keep word boundaries.
-  $text = str_replace(array('<', '>'), array(' <', '> '), $text);
+  $text = str_replace(['<', '>'], [' <', '> '], $text);
   $text = strip_tags($text, '<' . implode('><', array_keys($tags)) . '>');
 
   // Split HTML tags from plain text.
@@ -449,11 +449,11 @@ function search_index($type, $sid, $langcode, $text) {
   $tag = FALSE; // Odd/even counter. Tag or no tag.
   $score = 1; // Starting score per word
   $accum = ' '; // Accumulator for cleaned up data
-  $tagstack = array(); // Stack with open tags
+  $tagstack = []; // Stack with open tags
   $tagwords = 0; // Counter for consecutive words
   $focus = 1; // Focus state
 
-  $scored_words = array(); // Accumulator for words for index
+  $scored_words = []; // Accumulator for words for index
 
   foreach ($split as $value) {
     if ($tag) {
@@ -465,7 +465,7 @@ function search_index($type, $sid, $langcode, $text) {
         $tagname = substr($tagname, 1);
         // If we encounter unexpected tags, reset score to avoid incorrect boosting.
         if (!count($tagstack) || $tagstack[0] != $tagname) {
-          $tagstack = array();
+          $tagstack = [];
           $score = 1;
         }
         else {
@@ -477,7 +477,7 @@ function search_index($type, $sid, $langcode, $text) {
         if (isset($tagstack[0]) && $tagstack[0] == $tagname) {
           // None of the tags we look for make sense when nested identically.
           // If they are, it's probably broken HTML.
-          $tagstack = array();
+          $tagstack = [];
           $score = 1;
         }
         else {
@@ -509,7 +509,7 @@ function search_index($type, $sid, $langcode, $text) {
           $tagwords++;
           // Too many words inside a single tag probably mean a tag was accidentally left open.
           if (count($tagstack) && $tagwords >= 15) {
-            $tagstack = array();
+            $tagstack = [];
             $score = 1;
           }
         }
@@ -524,13 +524,13 @@ function search_index($type, $sid, $langcode, $text) {
 
   // Insert cleaned up data into dataset
   db_insert('search_dataset')
-    ->fields(array(
+    ->fields([
       'sid' => $sid,
       'langcode' => $langcode,
       'type' => $type,
       'data' => $accum,
       'reindex' => 0,
-    ))
+    ])
     ->execute();
 
   // Insert results into search index
@@ -539,14 +539,14 @@ function search_index($type, $sid, $langcode, $text) {
     // appropriately. If not, we create a new record with the appropriate
     // starting score.
     db_merge('search_index')
-      ->keys(array(
+      ->keys([
         'word' => $word,
         'sid' => $sid,
         'langcode' => $langcode,
         'type' => $type,
-      ))
-      ->fields(array('score' => $score))
-      ->expression('score', 'score + :score', array(':score' => $score))
+      ])
+      ->fields(['score' => $score])
+      ->expression('score', 'score + :score', [':score' => $score])
       ->execute();
     search_dirty($word);
   }
@@ -572,7 +572,7 @@ function search_index($type, $sid, $langcode, $text) {
  */
 function search_mark_for_reindex($type = NULL, $sid = NULL, $langcode = NULL) {
   $query = db_update('search_dataset')
-    ->fields(array('reindex' => REQUEST_TIME))
+    ->fields(['reindex' => REQUEST_TIME])
     // Only mark items that were not previously marked for reindex, so that
     // marked items maintain their priority by request time.
     ->condition('reindex', 0);
@@ -651,14 +651,14 @@ function search_excerpt($keys, $text, $langcode = NULL) {
   $keys = array_merge($matches[2], $matches[3]);
 
   // Prepare text by stripping HTML tags and decoding HTML entities.
-  $text = strip_tags(str_replace(array('<', '>'), array(' <', '> '), $text));
+  $text = strip_tags(str_replace(['<', '>'], [' <', '> '], $text));
   $text = Html::decodeEntities($text);
   $text_length = strlen($text);
 
   // Make a list of unique keywords that are actually found in the text,
   // which could be items in $keys or replacements that are equivalent through
   // search_simplify().
-  $temp_keys = array();
+  $temp_keys = [];
   foreach ($keys as $key) {
     $key = _search_find_match_with_simplify($key, $text, $boundary_character, $langcode);
     if (isset($key)) {
@@ -673,13 +673,13 @@ function search_excerpt($keys, $text, $langcode = NULL) {
   // Extract fragments of about 60 characters around keywords, bounded by word
   // boundary characters. Try to reach 256 characters, using second occurrences
   // if necessary.
-  $ranges = array();
+  $ranges = [];
   $length = 0;
-  $look_start = array();
+  $look_start = [];
   $remaining_keys = $keys;
 
   while ($length < 256 && !empty($remaining_keys)) {
-    $found_keys = array();
+    $found_keys = [];
     foreach ($remaining_keys as $key) {
       if ($length >= 256) {
         break;
@@ -694,7 +694,7 @@ function search_excerpt($keys, $text, $langcode = NULL) {
       // See if we can find $key after where we found it the last time. Since
       // we are requiring a match on a word boundary, make sure $text starts
       // and ends with a space.
-      $matches = array();
+      $matches = [];
       if (preg_match('/' . $preceded_by_boundary . $key . $followed_by_boundary . '/iu', ' ' . $text . ' ', $matches, PREG_OFFSET_CAPTURE, $look_start[$key])) {
         $found_position = $matches[0][1];
         $look_start[$key] = $found_position + 1;
@@ -742,7 +742,7 @@ function search_excerpt($keys, $text, $langcode = NULL) {
   ksort($ranges);
 
   // Collapse overlapping text ranges into one. The sorting makes it O(n).
-  $new_ranges = array();
+  $new_ranges = [];
   $max_end = 0;
   foreach ($ranges as $this_from => $this_to) {
     $max_end = max($max_end, $this_to);
@@ -767,7 +767,7 @@ function search_excerpt($keys, $text, $langcode = NULL) {
   $new_ranges[$working_from] = $working_to;
 
   // Fetch text within the combined ranges we found.
-  $out = array();
+  $out = [];
   foreach ($new_ranges as $from => $to) {
     $out[] = substr($text, $from, $to - $from);
   }
@@ -847,7 +847,7 @@ function _search_find_match_with_simplify($key, $text, $boundary, $langcode = NU
   // Split $text into words, keeping track of where the word boundaries are.
   $words = preg_split('/' . $boundary . '+/u', $text, NULL, PREG_SPLIT_OFFSET_CAPTURE);
   // Add an entry pointing to the end of the string, for the loop below.
-  $words[] = array('', strlen($text));
+  $words[] = ['', strlen($text)];
 
   // Using a binary search, find the earliest possible ending position in
   // $text where it will still match the keyword after applying
diff --git a/core/modules/search/search.pages.inc b/core/modules/search/search.pages.inc
index a161a9b..9467dd8 100644
--- a/core/modules/search/search.pages.inc
+++ b/core/modules/search/search.pages.inc
@@ -12,7 +12,7 @@
  * Implements hook_theme_suggestions_HOOK().
  */
 function search_theme_suggestions_search_result(array $variables) {
-  return array('search_result__' . $variables['plugin_id']);
+  return ['search_result__' . $variables['plugin_id']];
 }
 
 /**
@@ -42,7 +42,7 @@ function template_preprocess_search_result(&$variables) {
     $variables['content_attributes']['lang'] = $result['language'];
   }
 
-  $info = array();
+  $info = [];
   if (!empty($result['plugin_id'])) {
     $info['plugin_id'] = $result['plugin_id'];
   }
@@ -59,9 +59,9 @@ function template_preprocess_search_result(&$variables) {
   $variables['snippet'] = isset($result['snippet']) ? $result['snippet'] : '';
   // Provide separated and grouped meta information..
   $variables['info_split'] = $info;
-  $variables['info'] = array(
+  $variables['info'] = [
     '#type' => 'inline_template',
     '#template' => '{{ info|safe_join(" - ") }}',
-    '#context' => array('info' => $info),
-  );
+    '#context' => ['info' => $info],
+  ];
 }
diff --git a/core/modules/search/src/Controller/SearchController.php b/core/modules/search/src/Controller/SearchController.php
index 3460c32..ac078e1 100644
--- a/core/modules/search/src/Controller/SearchController.php
+++ b/core/modules/search/src/Controller/SearchController.php
@@ -72,7 +72,7 @@ public static function create(ContainerInterface $container) {
    *   The search form and search results build array.
    */
   public function view(Request $request, SearchPageInterface $entity) {
-    $build = array();
+    $build = [];
     $plugin = $entity->getPlugin();
 
     // Build the form first, because it may redirect during the submit,
@@ -89,12 +89,12 @@ public function view(Request $request, SearchPageInterface $entity) {
     // Build search results, if keywords or other search parameters are in the
     // GET parameters. Note that we need to try the search if 'keys' is in
     // there at all, vs. being empty, due to advanced search.
-    $results = array();
+    $results = [];
     if ($request->query->has('keys')) {
       if ($plugin->isSearchExecutable()) {
         // Log the search.
         if ($this->config('search.settings')->get('logging')) {
-          $this->logger->notice('Searched %type for %keys.', array('%keys' => $keys, '%type' => $entity->label()));
+          $this->logger->notice('Searched %type for %keys.', ['%keys' => $keys, '%type' => $entity->label()]);
         }
 
         // Collect the search results.
@@ -108,22 +108,22 @@ public function view(Request $request, SearchPageInterface $entity) {
     }
 
     if (count($results)) {
-      $build['search_results_title'] = array(
+      $build['search_results_title'] = [
         '#markup' => '<h2>' . $this->t('Search results') . '</h2>',
-      );
+      ];
     }
 
-    $build['search_results'] = array(
-      '#theme' => array('item_list__search_results__' . $plugin->getPluginId(), 'item_list__search_results'),
+    $build['search_results'] = [
+      '#theme' => ['item_list__search_results__' . $plugin->getPluginId(), 'item_list__search_results'],
       '#items' => $results,
-      '#empty' => array(
+      '#empty' => [
         '#markup' => '<h3>' . $this->t('Your search yielded no results.') . '</h3>',
-      ),
+      ],
       '#list_type' => 'ol',
-      '#context' => array(
+      '#context' => [
         'plugin' => $plugin->getPluginId(),
-      ),
-    );
+      ],
+    ];
 
     $this->renderer->addCacheableDependency($build, $entity);
     if ($plugin instanceof CacheableDependencyInterface) {
@@ -138,9 +138,9 @@ public function view(Request $request, SearchPageInterface $entity) {
       $build['search_results']['#cache']['tags'][] = 'search_index:' . $plugin->getType();
     }
 
-    $build['pager'] = array(
+    $build['pager'] = [
       '#type' => 'pager',
-    );
+    ];
 
     return $build;
   }
@@ -157,7 +157,7 @@ public function view(Request $request, SearchPageInterface $entity) {
    *   The search help page.
    */
   public function searchHelp(SearchPageInterface $entity) {
-    $build = array();
+    $build = [];
 
     $build['search_help'] = $entity->getPlugin()->getHelp();
 
@@ -189,7 +189,7 @@ public function redirectSearchPage(SearchPageInterface $entity) {
    *   The title for the search page edit form.
    */
   public function editTitle(SearchPageInterface $search_page) {
-    return $this->t('Edit %label search page', array('%label' => $search_page->label()));
+    return $this->t('Edit %label search page', ['%label' => $search_page->label()]);
   }
 
   /**
@@ -207,10 +207,10 @@ public function performOperation(SearchPageInterface $search_page, $op) {
     $search_page->$op()->save();
 
     if ($op == 'enable') {
-      drupal_set_message($this->t('The %label search page has been enabled.', array('%label' => $search_page->label())));
+      drupal_set_message($this->t('The %label search page has been enabled.', ['%label' => $search_page->label()]));
     }
     elseif ($op == 'disable') {
-      drupal_set_message($this->t('The %label search page has been disabled.', array('%label' => $search_page->label())));
+      drupal_set_message($this->t('The %label search page has been disabled.', ['%label' => $search_page->label()]));
     }
 
     $url = $search_page->urlInfo('collection');
@@ -230,7 +230,7 @@ public function setAsDefault(SearchPageInterface $search_page) {
     // Set the default page to this search page.
     $this->searchPageRepository->setDefaultSearchPage($search_page);
 
-    drupal_set_message($this->t('The default search page is now %label. Be sure to check the ordering of your search pages.', array('%label' => $search_page->label())));
+    drupal_set_message($this->t('The default search page is now %label. Be sure to check the ordering of your search pages.', ['%label' => $search_page->label()]));
     return $this->redirect('entity.search_page.collection');
   }
 
diff --git a/core/modules/search/src/Entity/SearchPage.php b/core/modules/search/src/Entity/SearchPage.php
index 1cb2f89..298331f 100644
--- a/core/modules/search/src/Entity/SearchPage.php
+++ b/core/modules/search/src/Entity/SearchPage.php
@@ -73,7 +73,7 @@ class SearchPage extends ConfigEntityBase implements SearchPageInterface, Entity
    *
    * @var array
    */
-  protected $configuration = array();
+  protected $configuration = [];
 
   /**
    * The search plugin ID.
@@ -129,7 +129,7 @@ protected function getPluginCollection() {
    * {@inheritdoc}
    */
   public function getPluginCollections() {
-    return array('configuration' => $this->getPluginCollection());
+    return ['configuration' => $this->getPluginCollection()];
   }
 
   /**
diff --git a/core/modules/search/src/Form/SearchBlockForm.php b/core/modules/search/src/Form/SearchBlockForm.php
index cd198fd..5d77b7c 100644
--- a/core/modules/search/src/Form/SearchBlockForm.php
+++ b/core/modules/search/src/Form/SearchBlockForm.php
@@ -76,9 +76,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Set up the form to submit using GET to the correct search page.
     $entity_id = $this->searchPageRepository->getDefaultSearchPage();
     if (!$entity_id) {
-      $form['message'] = array(
+      $form['message'] = [
         '#markup' => $this->t('Search is currently disabled'),
-      );
+      ];
       return $form;
     }
 
@@ -86,22 +86,22 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $form['#action'] = $this->url($route);
     $form['#method'] = 'get';
 
-    $form['keys'] = array(
+    $form['keys'] = [
       '#type' => 'search',
       '#title' => $this->t('Search'),
       '#title_display' => 'invisible',
       '#size' => 15,
       '#default_value' => '',
-      '#attributes' => array('title' => $this->t('Enter the terms you wish to search for.')),
-    );
+      '#attributes' => ['title' => $this->t('Enter the terms you wish to search for.')],
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Search'),
       // Prevent op from showing up in the query string.
       '#name' => '',
-    );
+    ];
 
     // SearchPageRepository::getDefaultSearchPage() depends on search.settings.
     $this->renderer->addCacheableDependency($form, $this->configFactory->get('search.settings'));
diff --git a/core/modules/search/src/Form/SearchPageAddForm.php b/core/modules/search/src/Form/SearchPageAddForm.php
index a97f1fa..d5bc785 100644
--- a/core/modules/search/src/Form/SearchPageAddForm.php
+++ b/core/modules/search/src/Form/SearchPageAddForm.php
@@ -39,7 +39,7 @@ public function save(array $form, FormStateInterface $form_state) {
 
     parent::save($form, $form_state);
 
-    drupal_set_message($this->t('The %label search page has been added.', array('%label' => $this->entity->label())));
+    drupal_set_message($this->t('The %label search page has been added.', ['%label' => $this->entity->label()]));
   }
 
 }
diff --git a/core/modules/search/src/Form/SearchPageEditForm.php b/core/modules/search/src/Form/SearchPageEditForm.php
index 694b856..9d082eb 100644
--- a/core/modules/search/src/Form/SearchPageEditForm.php
+++ b/core/modules/search/src/Form/SearchPageEditForm.php
@@ -24,7 +24,7 @@ protected function actions(array $form, FormStateInterface $form_state) {
   public function save(array $form, FormStateInterface $form_state) {
     parent::save($form, $form_state);
 
-    drupal_set_message($this->t('The %label search page has been updated.', array('%label' => $this->entity->label())));
+    drupal_set_message($this->t('The %label search page has been updated.', ['%label' => $this->entity->label()]));
   }
 
 }
diff --git a/core/modules/search/src/Form/SearchPageForm.php b/core/modules/search/src/Form/SearchPageForm.php
index 1521beb..88b99e5 100644
--- a/core/modules/search/src/Form/SearchPageForm.php
+++ b/core/modules/search/src/Form/SearchPageForm.php
@@ -38,37 +38,37 @@ public function form(array $form, FormStateInterface $form_state) {
     $plugin = $this->entity->getPlugin();
     $form_state->set('search_page_id', $this->entity->id());
 
-    $form['basic'] = array(
+    $form['basic'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('container-inline'),
-      ),
-    );
-    $form['basic']['keys'] = array(
+      '#attributes' => [
+        'class' => ['container-inline'],
+      ],
+    ];
+    $form['basic']['keys'] = [
       '#type' => 'search',
       '#title' => $this->t('Enter your keywords'),
       '#default_value' => $plugin->getKeywords(),
       '#size' => 30,
       '#maxlength' => 255,
-    );
+    ];
 
     // processed_keys is used to coordinate keyword passing between other forms
     // that hook into the basic search form.
-    $form['basic']['processed_keys'] = array(
+    $form['basic']['processed_keys'] = [
       '#type' => 'value',
       '#value' => '',
-    );
-    $form['basic']['submit'] = array(
+    ];
+    $form['basic']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Search'),
-    );
+    ];
 
-    $form['help_link'] = array(
+    $form['help_link'] = [
       '#type' => 'link',
       '#url' => new Url('search.help_' . $this->entity->id()),
       '#title' => $this->t('Search help'),
-      '#options' => array('attributes' => array('class' => 'search-help-link')),
-    );
+      '#options' => ['attributes' => ['class' => 'search-help-link']],
+    ];
 
     // Allow the plugin to add to or alter the search form.
     $plugin->searchFormAlter($form, $form_state);
@@ -81,7 +81,7 @@ public function form(array $form, FormStateInterface $form_state) {
    */
   protected function actions(array $form, FormStateInterface $form_state) {
     // The submit button is added in the form directly.
-    return array();
+    return [];
   }
 
   /**
@@ -97,8 +97,8 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $route = 'search.view_' . $form_state->get('search_page_id');
     $form_state->setRedirect(
       $route,
-      array(),
-      array('query' => $query)
+      [],
+      ['query' => $query]
     );
   }
 
diff --git a/core/modules/search/src/Form/SearchPageFormBase.php b/core/modules/search/src/Form/SearchPageFormBase.php
index bc7032f..1638f90 100644
--- a/core/modules/search/src/Form/SearchPageFormBase.php
+++ b/core/modules/search/src/Form/SearchPageFormBase.php
@@ -72,35 +72,35 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function form(array $form, FormStateInterface $form_state) {
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#description' => $this->t('The label for this search page.'),
       '#default_value' => $this->entity->label(),
       '#maxlength' => '255',
-    );
+    ];
 
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $this->entity->id(),
       '#disabled' => !$this->entity->isNew(),
       '#maxlength' => 64,
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
-      ),
-    );
-    $form['path'] = array(
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
+      ],
+    ];
+    $form['path'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Path'),
       '#field_prefix' => 'search/',
       '#default_value' => $this->entity->getPath(),
       '#maxlength' => '255',
       '#required' => TRUE,
-    );
-    $form['plugin'] = array(
+    ];
+    $form['plugin'] = [
       '#type' => 'value',
       '#value' => $this->entity->get('plugin'),
-    );
+    ];
 
     if ($this->plugin instanceof PluginFormInterface) {
       $form += $this->plugin->buildConfigurationForm($form, $form_state);
diff --git a/core/modules/search/src/Plugin/ConfigurableSearchPluginBase.php b/core/modules/search/src/Plugin/ConfigurableSearchPluginBase.php
index 4f25983..7ad95f1 100644
--- a/core/modules/search/src/Plugin/ConfigurableSearchPluginBase.php
+++ b/core/modules/search/src/Plugin/ConfigurableSearchPluginBase.php
@@ -30,7 +30,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array();
+    return [];
   }
 
   /**
@@ -57,7 +57,7 @@ public function validateConfigurationForm(array &$form, FormStateInterface $form
    * {@inheritdoc}
    */
   public function calculateDependencies() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/search/src/Plugin/Derivative/SearchLocalTask.php b/core/modules/search/src/Plugin/Derivative/SearchLocalTask.php
index adc356e..9f62a37 100644
--- a/core/modules/search/src/Plugin/Derivative/SearchLocalTask.php
+++ b/core/modules/search/src/Plugin/Derivative/SearchLocalTask.php
@@ -42,17 +42,17 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $this->derivatives = array();
+    $this->derivatives = [];
 
     if ($default = $this->searchPageRepository->getDefaultSearchPage()) {
       $active_search_pages = $this->searchPageRepository->getActiveSearchPages();
       foreach ($this->searchPageRepository->sortSearchPages($active_search_pages) as $entity_id => $entity) {
-        $this->derivatives[$entity_id] = array(
+        $this->derivatives[$entity_id] = [
           'title' => $entity->label(),
           'route_name' => 'search.view_' . $entity_id,
           'base_route' => 'search.plugins:' . $default,
           'weight' => $entity->getWeight(),
-        );
+        ];
       }
     }
     return $this->derivatives;
diff --git a/core/modules/search/src/Plugin/SearchPluginBase.php b/core/modules/search/src/Plugin/SearchPluginBase.php
index d253972..7bf4f0f 100644
--- a/core/modules/search/src/Plugin/SearchPluginBase.php
+++ b/core/modules/search/src/Plugin/SearchPluginBase.php
@@ -97,13 +97,13 @@ public function getType() {
   public function buildResults() {
     $results = $this->execute();
 
-    $built = array();
+    $built = [];
     foreach ($results as $result) {
-      $built[] = array(
+      $built[] = [
         '#theme' => 'search_result',
         '#result' => $result,
         '#plugin_id' => $this->getPluginId(),
-      );
+      ];
     }
 
     return $built;
@@ -123,7 +123,7 @@ public function suggestedTitle() {
     // If the user entered a search string, truncate it and append it to the
     // title.
     if (!empty($this->keywords)) {
-      return $this->t('Search for @keywords', array('@keywords' => Unicode::truncate($this->keywords, 60, TRUE, TRUE)));
+      return $this->t('Search for @keywords', ['@keywords' => Unicode::truncate($this->keywords, 60, TRUE, TRUE)]);
     }
     // Use the default 'Search' title.
     return $this->t('Search');
@@ -135,7 +135,7 @@ public function suggestedTitle() {
   public function buildSearchUrlQuery(FormStateInterface $form_state) {
     // Grab the keywords entered in the form and put them as 'keys' in the GET.
     $keys = trim($form_state->getValue('keys'));
-    $query = array('keys' => $keys);
+    $query = ['keys' => $keys];
 
     return $query;
   }
@@ -146,16 +146,16 @@ public function buildSearchUrlQuery(FormStateInterface $form_state) {
   public function getHelp() {
     // This default search help is appropriate for plugins like NodeSearch
     // that use the SearchQuery class.
-    $help = array('list' => array(
+    $help = ['list' => [
       '#theme' => 'item_list',
-      '#items' => array(
+      '#items' => [
         $this->t('Search looks for exact, case-insensitive keywords; keywords shorter than a minimum length are ignored.'),
         $this->t('Use upper-case OR to get more results. Example: cat OR dog (content contains either "cat" or "dog").'),
         $this->t('You can use upper-case AND to require all words, but this is the same as the default behavior. Example: cat AND dog (same as cat dog, content must contain both "cat" and "dog").'),
         $this->t('Use quotes to search for a phrase. Example: "the cat eats mice".'),
         $this->t('You can precede keywords by - to exclude them; you must still have at least one "positive" keyword. Example: cat -dog (content must contain cat and cannot contain dog).'),
-      ),
-    ));
+      ],
+    ]];
 
     return $help;
   }
diff --git a/core/modules/search/src/Plugin/migrate/process/SearchConfigurationRankings.php b/core/modules/search/src/Plugin/migrate/process/SearchConfigurationRankings.php
index f021df6..8199215 100644
--- a/core/modules/search/src/Plugin/migrate/process/SearchConfigurationRankings.php
+++ b/core/modules/search/src/Plugin/migrate/process/SearchConfigurationRankings.php
@@ -21,7 +21,7 @@ class SearchConfigurationRankings extends ProcessPluginBase {
    * Generate the configuration rankings.
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
-    $return = array();
+    $return = [];
     foreach ($row->getSource() as $name => $rank) {
       if (substr($name, 0, 10) == 'node_rank_' && is_numeric($rank)) {
         $return[substr($name, 10)] = $rank;
diff --git a/core/modules/search/src/Plugin/migrate/process/d6/SearchConfigurationRankings.php b/core/modules/search/src/Plugin/migrate/process/d6/SearchConfigurationRankings.php
index 6c1d16b..206f1f8 100644
--- a/core/modules/search/src/Plugin/migrate/process/d6/SearchConfigurationRankings.php
+++ b/core/modules/search/src/Plugin/migrate/process/d6/SearchConfigurationRankings.php
@@ -21,7 +21,7 @@ class SearchConfigurationRankings extends ProcessPluginBase {
    * Generate the configuration rankings.
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
-    $return = array();
+    $return = [];
     foreach ($row->getSource() as $name => $rank) {
       if (substr($name, 0, 10) == 'node_rank_' && $rank) {
         $return[substr($name, 10)] = $rank;
diff --git a/core/modules/search/src/Plugin/views/argument/Search.php b/core/modules/search/src/Plugin/views/argument/Search.php
index c56cd09..7e9f00d 100644
--- a/core/modules/search/src/Plugin/views/argument/Search.php
+++ b/core/modules/search/src/Plugin/views/argument/Search.php
@@ -48,7 +48,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function queryParseSearchExpression($input) {
     if (!isset($this->searchQuery)) {
-      $this->searchQuery = db_select('search_index', 'i', array('target' => 'replica'))->extend('Drupal\search\ViewsSearchQuery');
+      $this->searchQuery = db_select('search_index', 'i', ['target' => 'replica'])->extend('Drupal\search\ViewsSearchQuery');
       $this->searchQuery->searchExpression($input, $this->searchType);
       $this->searchQuery->publicParseSearchExpression();
     }
@@ -80,17 +80,17 @@ public function query($group_by = FALSE) {
       $search_condition = new Condition('AND');
 
       // Create a new join to relate the 'search_total' table to our current 'search_index' table.
-      $definition = array(
+      $definition = [
         'table' => 'search_total',
         'field' => 'word',
         'left_table' => $search_index,
         'left_field' => 'word',
-      );
+      ];
       $join = Views::pluginManager('join')->createInstance('standard', $definition);
       $search_total = $this->query->addRelationship('search_total', $join, $search_index);
 
       // Add the search score field to the query.
-      $this->search_score = $this->query->addField('', "$search_index.score * $search_total.count", 'score', array('function' => 'sum'));
+      $this->search_score = $this->query->addField('', "$search_index.score * $search_total.count", 'score', ['function' => 'sum']);
 
       // Add the conditions set up by the search query to the views query.
       $search_condition->condition("$search_index.type", $this->searchType);
@@ -121,7 +121,7 @@ public function query($group_by = FALSE) {
       $this->query->addGroupBy("$search_index.sid");
       $matches = $this->searchQuery->matches();
       $placeholder = $this->placeholder();
-      $this->query->addHavingExpression(0, "COUNT(*) >= $placeholder", array($placeholder => $matches));
+      $this->query->addHavingExpression(0, "COUNT(*) >= $placeholder", [$placeholder => $matches]);
     }
 
     // Set to NULL to prevent PDO exception when views object is cached
diff --git a/core/modules/search/src/Plugin/views/filter/Search.php b/core/modules/search/src/Plugin/views/filter/Search.php
index 14b14da..ac0f671 100644
--- a/core/modules/search/src/Plugin/views/filter/Search.php
+++ b/core/modules/search/src/Plugin/views/filter/Search.php
@@ -68,28 +68,28 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   protected function operatorForm(&$form, FormStateInterface $form_state) {
-    $form['operator'] = array(
+    $form['operator'] = [
       '#type' => 'radios',
       '#title' => $this->t('On empty input'),
       '#default_value' => $this->operator,
-      '#options' => array(
+      '#options' => [
         'optional' => $this->t('Show All'),
         'required' => $this->t('Show None'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   protected function valueForm(&$form, FormStateInterface $form_state) {
-    $form['value'] = array(
+    $form['value'] = [
       '#type' => 'textfield',
       '#size' => 15,
       '#default_value' => $this->value,
-      '#attributes' => array('title' => $this->t('Search keywords')),
+      '#attributes' => ['title' => $this->t('Search keywords')],
       '#title' => !$form_state->get('exposed') ? $this->t('Keywords') : '',
-    );
+    ];
   }
 
   /**
@@ -118,7 +118,7 @@ public function validateExposed(&$form, FormStateInterface $form_state) {
   protected function queryParseSearchExpression($input) {
     if (!isset($this->searchQuery)) {
       $this->parsed = TRUE;
-      $this->searchQuery = db_select('search_index', 'i', array('target' => 'replica'))->extend('Drupal\search\ViewsSearchQuery');
+      $this->searchQuery = db_select('search_index', 'i', ['target' => 'replica'])->extend('Drupal\search\ViewsSearchQuery');
       $this->searchQuery->searchExpression($input, $this->searchType);
       $this->searchQuery->publicParseSearchExpression();
     }
@@ -155,17 +155,17 @@ public function query() {
 
       // Create a new join to relate the 'search_total' table to our current
       // 'search_index' table.
-      $definition = array(
+      $definition = [
         'table' => 'search_total',
         'field' => 'word',
         'left_table' => $search_index,
         'left_field' => 'word',
-      );
+      ];
       $join = Views::pluginManager('join')->createInstance('standard', $definition);
       $search_total = $this->query->addRelationship('search_total', $join, $search_index);
 
       // Add the search score field to the query.
-      $this->search_score = $this->query->addField('', "$search_index.score * $search_total.count", 'score', array('function' => 'sum'));
+      $this->search_score = $this->query->addField('', "$search_index.score * $search_total.count", 'score', ['function' => 'sum']);
 
       // Add the conditions set up by the search query to the views query.
       $search_condition->condition("$search_index.type", $this->searchType);
@@ -197,7 +197,7 @@ public function query() {
       $this->query->addGroupBy("$search_index.sid");
       $matches = $this->searchQuery->matches();
       $placeholder = $this->placeholder();
-      $this->query->addHavingExpression($this->options['group'], "COUNT(*) >= $placeholder", array($placeholder => $matches));
+      $this->query->addHavingExpression($this->options['group'], "COUNT(*) >= $placeholder", [$placeholder => $matches]);
     }
     // Set to NULL to prevent PDO exception when views object is cached.
     $this->searchQuery = NULL;
diff --git a/core/modules/search/src/Plugin/views/row/SearchRow.php b/core/modules/search/src/Plugin/views/row/SearchRow.php
index 51f7853..29e150d 100644
--- a/core/modules/search/src/Plugin/views/row/SearchRow.php
+++ b/core/modules/search/src/Plugin/views/row/SearchRow.php
@@ -22,7 +22,7 @@ class SearchRow extends RowPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['score'] = array('default' => TRUE);
+    $options['score'] = ['default' => TRUE];
 
     return $options;
   }
@@ -31,23 +31,23 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['score'] = array(
+    $form['score'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Display score'),
       '#default_value' => $this->options['score'],
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function render($row) {
-    return array(
+    return [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $row,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/search/src/Plugin/views/sort/Score.php b/core/modules/search/src/Plugin/views/sort/Score.php
index 7a7bbf0..f5910f0 100644
--- a/core/modules/search/src/Plugin/views/sort/Score.php
+++ b/core/modules/search/src/Plugin/views/sort/Score.php
@@ -21,7 +21,7 @@ public function query() {
     // Our filter stores it as $handler->search_score -- and we also
     // need to check its relationship to make sure that we're using the same
     // one or obviously this won't work.
-    foreach (array('filter', 'argument') as $type) {
+    foreach (['filter', 'argument'] as $type) {
       foreach ($this->view->{$type} as $handler) {
         if (isset($handler->search_score) && $handler->relationship == $this->relationship) {
           $this->query->addOrderBy(NULL, NULL, $this->options['order'], $handler->search_score);
diff --git a/core/modules/search/src/Routing/SearchPageRoutes.php b/core/modules/search/src/Routing/SearchPageRoutes.php
index b85cbe8..6e199d3 100644
--- a/core/modules/search/src/Routing/SearchPageRoutes.php
+++ b/core/modules/search/src/Routing/SearchPageRoutes.php
@@ -45,70 +45,70 @@ public static function create(ContainerInterface $container) {
    *   An array of route objects.
    */
   public function routes() {
-    $routes = array();
+    $routes = [];
     // @todo Decide if /search should continue to redirect to /search/$default,
     //   or just perform the appropriate search.
     if ($default_page = $this->searchPageRepository->getDefaultSearchPage()) {
       $routes['search.view'] = new Route(
         '/search',
-        array(
+        [
           '_controller' => 'Drupal\search\Controller\SearchController::redirectSearchPage',
           '_title' => 'Search',
           'entity' => $default_page,
-        ),
-        array(
+        ],
+        [
           '_entity_access' => 'entity.view',
           '_permission' => 'search content',
-        ),
-        array(
-          'parameters' => array(
-            'entity' => array(
+        ],
+        [
+          'parameters' => [
+            'entity' => [
               'type' => 'entity:search_page',
-            ),
-          ),
-        )
+            ],
+          ],
+        ]
       );
     }
     $active_pages = $this->searchPageRepository->getActiveSearchPages();
     foreach ($active_pages as $entity_id => $entity) {
       $routes["search.view_$entity_id"] = new Route(
         '/search/' . $entity->getPath(),
-        array(
+        [
           '_controller' => 'Drupal\search\Controller\SearchController::view',
           '_title' => 'Search',
           'entity' => $entity_id,
-        ),
-        array(
+        ],
+        [
           '_entity_access' => 'entity.view',
           '_permission' => 'search content',
-        ),
-        array(
-          'parameters' => array(
-            'entity' => array(
+        ],
+        [
+          'parameters' => [
+            'entity' => [
               'type' => 'entity:search_page',
-            ),
-          ),
-        )
+            ],
+          ],
+        ]
       );
 
       $routes["search.help_$entity_id"] = new Route(
         '/search/' . $entity->getPath() . '/help',
-        array(
+        [
           '_controller' => 'Drupal\search\Controller\SearchController::searchHelp',
           '_title' => 'Search help',
           'entity' => $entity_id,
-        ),
-        array(
+        ],
+        [
           '_entity_access' => 'entity.view',
           '_permission' => 'search content',
-        ),
-        array(
-          'parameters' => array(
-            'entity' => array(
+        ],
+        [
+          'parameters' => [
+            'entity' => [
               'type' => 'entity:search_page',
-            ),
-          ),
-        )
+            ],
+          ],
+        ]
       );
     }
     return $routes;
diff --git a/core/modules/search/src/SearchPageAccessControlHandler.php b/core/modules/search/src/SearchPageAccessControlHandler.php
index be135bc..2627f51 100644
--- a/core/modules/search/src/SearchPageAccessControlHandler.php
+++ b/core/modules/search/src/SearchPageAccessControlHandler.php
@@ -20,7 +20,7 @@ class SearchPageAccessControlHandler extends EntityAccessControlHandler {
    */
   protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account) {
     /** @var $entity \Drupal\search\SearchPageInterface */
-    if (in_array($operation, array('delete', 'disable'))) {
+    if (in_array($operation, ['delete', 'disable'])) {
       if ($entity->isDefaultSearch()) {
         return AccessResult::forbidden()->addCacheableDependency($entity);
       }
diff --git a/core/modules/search/src/SearchPageListBuilder.php b/core/modules/search/src/SearchPageListBuilder.php
index c76a999..9a8f6de 100644
--- a/core/modules/search/src/SearchPageListBuilder.php
+++ b/core/modules/search/src/SearchPageListBuilder.php
@@ -26,7 +26,7 @@ class SearchPageListBuilder extends DraggableListBuilder implements FormInterfac
    *
    * @var \Drupal\search\SearchPageInterface[]
    */
-  protected $entities = array();
+  protected $entities = [];
 
   /**
    * Stores the configuration factory.
@@ -90,24 +90,24 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function buildHeader() {
-    $header['label'] = array(
+    $header['label'] = [
       'data' => $this->t('Label'),
-    );
-    $header['url'] = array(
+    ];
+    $header['url'] = [
       'data' => $this->t('URL'),
-      'class' => array(RESPONSIVE_PRIORITY_LOW),
-    );
-    $header['plugin'] = array(
+      'class' => [RESPONSIVE_PRIORITY_LOW],
+    ];
+    $header['plugin'] = [
       'data' => $this->t('Type'),
-      'class' => array(RESPONSIVE_PRIORITY_LOW),
-    );
-    $header['status'] = array(
+      'class' => [RESPONSIVE_PRIORITY_LOW],
+    ];
+    $header['status'] = [
       'data' => $this->t('Status'),
-    );
-    $header['progress'] = array(
+    ];
+    $header['progress'] = [
       'data' => $this->t('Indexing progress'),
-      'class' => array(RESPONSIVE_PRIORITY_MEDIUM),
-    );
+      'class' => [RESPONSIVE_PRIORITY_MEDIUM],
+    ];
     return $header + parent::buildHeader();
   }
 
@@ -120,11 +120,11 @@ public function buildRow(EntityInterface $entity) {
     $row['url']['#markup'] = 'search/' . $entity->getPath();
     // If the search page is active, link to it.
     if ($entity->status()) {
-      $row['url'] = array(
+      $row['url'] = [
         '#type' => 'link',
         '#title' => $row['url'],
         '#url' => Url::fromRoute('search.view_' . $entity->id()),
-      );
+      ];
     }
 
     $definition = $entity->getPlugin()->getPluginDefinition();
@@ -143,10 +143,10 @@ public function buildRow(EntityInterface $entity) {
 
     if ($entity->isIndexable()) {
       $status = $entity->getPlugin()->indexStatus();
-      $row['progress']['#markup'] = $this->t('%num_indexed of %num_total indexed', array(
+      $row['progress']['#markup'] = $this->t('%num_indexed of %num_total indexed', [
         '%num_indexed' => $status['total'] - $status['remaining'],
         '%num_total' => $status['total']
-      ));
+      ]);
     }
     else {
       $row['progress']['#markup'] = $this->t('Does not use index');
@@ -178,102 +178,102 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // will show as 99%, to indicate "almost done".
     $percentage = $total > 0 ? floor(100 * $done / $total) : 100;
     $percentage .= '%';
-    $status = '<p><strong>' . $this->t('%percentage of the site has been indexed.', array('%percentage' => $percentage)) . ' ' . $count . '</strong></p>';
-    $form['status'] = array(
+    $status = '<p><strong>' . $this->t('%percentage of the site has been indexed.', ['%percentage' => $percentage]) . ' ' . $count . '</strong></p>';
+    $form['status'] = [
       '#type' => 'details',
       '#title' => $this->t('Indexing progress'),
       '#open' => TRUE,
-      '#description' => $this->t('Only items in the index will appear in search results. To build and maintain the index, a correctly configured <a href=":cron">cron maintenance task</a> is required.', array(':cron' => \Drupal::url('system.cron_settings'))),
-    );
-    $form['status']['status'] = array('#markup' => $status);
-    $form['status']['wipe'] = array(
+      '#description' => $this->t('Only items in the index will appear in search results. To build and maintain the index, a correctly configured <a href=":cron">cron maintenance task</a> is required.', [':cron' => \Drupal::url('system.cron_settings')]),
+    ];
+    $form['status']['status'] = ['#markup' => $status];
+    $form['status']['wipe'] = [
       '#type' => 'submit',
       '#value' => $this->t('Re-index site'),
-      '#submit' => array('::searchAdminReindexSubmit'),
-    );
+      '#submit' => ['::searchAdminReindexSubmit'],
+    ];
 
-    $items = array(10, 20, 50, 100, 200, 500);
+    $items = [10, 20, 50, 100, 200, 500];
     $items = array_combine($items, $items);
 
     // Indexing throttle:
-    $form['indexing_throttle'] = array(
+    $form['indexing_throttle'] = [
       '#type' => 'details',
       '#title' => $this->t('Indexing throttle'),
       '#open' => TRUE,
-    );
-    $form['indexing_throttle']['cron_limit'] = array(
+    ];
+    $form['indexing_throttle']['cron_limit'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of items to index per cron run'),
       '#default_value' => $search_settings->get('index.cron_limit'),
       '#options' => $items,
-      '#description' => $this->t('The maximum number of items indexed in each run of the <a href=":cron">cron maintenance task</a>. If necessary, reduce the number of items to prevent timeouts and memory errors while indexing. Some search page types may have their own setting for this.', array(':cron' => \Drupal::url('system.cron_settings'))),
-    );
+      '#description' => $this->t('The maximum number of items indexed in each run of the <a href=":cron">cron maintenance task</a>. If necessary, reduce the number of items to prevent timeouts and memory errors while indexing. Some search page types may have their own setting for this.', [':cron' => \Drupal::url('system.cron_settings')]),
+    ];
     // Indexing settings:
-    $form['indexing_settings'] = array(
+    $form['indexing_settings'] = [
       '#type' => 'details',
       '#title' => $this->t('Default indexing settings'),
       '#open' => TRUE,
-    );
-    $form['indexing_settings']['info'] = array(
+    ];
+    $form['indexing_settings']['info'] = [
       '#markup' => $this->t("<p>Search pages that use an index may use the default index provided by the Search module, or they may use a different indexing mechanism. These settings are for the default index. <em>Changing these settings will cause the default search index to be rebuilt to reflect the new settings. Searching will continue to work, based on the existing index, but new content won't be indexed until all existing content has been re-indexed.</em></p><p><em>The default settings should be appropriate for the majority of sites.</em></p>")
-    );
-    $form['indexing_settings']['minimum_word_size'] = array(
+    ];
+    $form['indexing_settings']['minimum_word_size'] = [
       '#type' => 'number',
       '#title' => $this->t('Minimum word length to index'),
       '#default_value' => $search_settings->get('index.minimum_word_size'),
       '#min' => 1,
       '#max' => 1000,
       '#description' => $this->t('The minimum character length for a word to be added to the index. Searches must include a keyword of at least this length.'),
-    );
-    $form['indexing_settings']['overlap_cjk'] = array(
+    ];
+    $form['indexing_settings']['overlap_cjk'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Simple CJK handling'),
       '#default_value' => $search_settings->get('index.overlap_cjk'),
       '#description' => $this->t('Whether to apply a simple Chinese/Japanese/Korean tokenizer based on overlapping sequences. Turn this off if you want to use an external preprocessor for this instead. Does not affect other languages.')
-    );
+    ];
 
     // Indexing settings:
-    $form['logging'] = array(
+    $form['logging'] = [
       '#type' => 'details',
       '#title' => $this->t('Logging'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['logging']['logging'] = array(
+    $form['logging']['logging'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Log searches'),
       '#default_value' => $search_settings->get('logging'),
       '#description' => $this->t('If checked, all searches will be logged. Uncheck to skip logging. Logging may affect performance.'),
-    );
+    ];
 
-    $form['search_pages'] = array(
+    $form['search_pages'] = [
       '#type' => 'details',
       '#title' => $this->t('Search pages'),
       '#open' => TRUE,
-    );
-    $form['search_pages']['add_page'] = array(
+    ];
+    $form['search_pages']['add_page'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('container-inline'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['container-inline'],
+      ],
+    ];
     // In order to prevent validation errors for the parent form, this cannot be
     // required, see self::validateAddSearchPage().
-    $form['search_pages']['add_page']['search_type'] = array(
+    $form['search_pages']['add_page']['search_type'] = [
       '#type' => 'select',
       '#title' => $this->t('Search page type'),
       '#empty_option' => $this->t('- Choose page type -'),
       '#options' => array_map(function ($definition) {
         return $definition['title'];
       }, $this->searchManager->getDefinitions()),
-    );
-    $form['search_pages']['add_page']['add_search_submit'] = array(
+    ];
+    $form['search_pages']['add_page']['add_search_submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Add search page'),
-      '#validate' => array('::validateAddSearchPage'),
-      '#submit' => array('::submitAddSearchPage'),
-      '#limit_validation_errors' => array(array('search_type')),
-    );
+      '#validate' => ['::validateAddSearchPage'],
+      '#submit' => ['::submitAddSearchPage'],
+      '#limit_validation_errors' => [['search_type']],
+    ];
 
     // Move the listing into the search_pages element.
     $form['search_pages'][$this->entitiesKey] = $form[$this->entitiesKey];
@@ -281,11 +281,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     unset($form[$this->entitiesKey]);
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save configuration'),
       '#button_type' => 'primary',
-    );
+    ];
 
     return $form;
   }
@@ -302,13 +302,13 @@ public function getDefaultOperations(EntityInterface $entity) {
       unset($operations['disable'], $operations['delete']);
     }
     else {
-      $operations['default'] = array(
+      $operations['default'] = [
         'title' => $this->t('Set as default'),
         'url' => Url::fromRoute('entity.search_page.set_default', [
           'search_page' => $entity->id(),
         ]),
         'weight' => 50,
-      );
+      ];
     }
 
     return $operations;
@@ -369,7 +369,7 @@ public function validateAddSearchPage(array &$form, FormStateInterface $form_sta
   public function submitAddSearchPage(array &$form, FormStateInterface $form_state) {
     $form_state->setRedirect(
       'search.add_type',
-      array('search_plugin_id' => $form_state->getValue('search_type'))
+      ['search_plugin_id' => $form_state->getValue('search_type')]
     );
   }
 
diff --git a/core/modules/search/src/SearchPageRepository.php b/core/modules/search/src/SearchPageRepository.php
index 459ea57..6f4dc64 100644
--- a/core/modules/search/src/SearchPageRepository.php
+++ b/core/modules/search/src/SearchPageRepository.php
@@ -105,7 +105,7 @@ public function setDefaultSearchPage(SearchPageInterface $search_page) {
    */
   public function sortSearchPages($search_pages) {
     $entity_type = $this->storage->getEntityType();
-    uasort($search_pages, array($entity_type->getClass(), 'sort'));
+    uasort($search_pages, [$entity_type->getClass(), 'sort']);
     return $search_pages;
   }
 
diff --git a/core/modules/search/src/SearchQuery.php b/core/modules/search/src/SearchQuery.php
index 77ae8ff..dbd0534 100644
--- a/core/modules/search/src/SearchQuery.php
+++ b/core/modules/search/src/SearchQuery.php
@@ -97,7 +97,7 @@ class SearchQuery extends SelectExtender {
    *
    * @var array
    */
-  protected $keys = array('positive' => array(), 'negative' => array());
+  protected $keys = ['positive' => [], 'negative' => []];
 
   /**
    * Indicates whether the query conditions are simple or complex (LIKE).
@@ -130,7 +130,7 @@ class SearchQuery extends SelectExtender {
    *
    * @var array
    */
-  protected $words = array();
+  protected $words = [];
 
   /**
    * Multiplier to normalize the keyword score.
@@ -165,14 +165,14 @@ class SearchQuery extends SelectExtender {
    *
    * @see SearchQuery::addScore()
    */
-  protected $scores = array();
+  protected $scores = [];
 
   /**
    * Arguments for the score expressions.
    *
    * @var array
    */
-  protected $scoresArguments = array();
+  protected $scoresArguments = [];
 
   /**
    * The number of 'i.relevance' occurrences in score expressions.
@@ -186,7 +186,7 @@ class SearchQuery extends SelectExtender {
    *
    * @var array
    */
-  protected $multiply = array();
+  protected $multiply = [];
 
   /**
    * Sets the search query expression.
@@ -259,7 +259,7 @@ protected function parseSearchExpression() {
       $words = search_simplify($match[2]);
       // Re-explode in case simplification added more words, except when
       // matching a phrase.
-      $words = $phrase ? array($words) : preg_split('/ /', $words, -1, PREG_SPLIT_NO_EMPTY);
+      $words = $phrase ? [$words] : preg_split('/ /', $words, -1, PREG_SPLIT_NO_EMPTY);
       // Negative matches.
       if ($match[1] == '-') {
         $this->keys['negative'] = array_merge($this->keys['negative'], $words);
@@ -270,7 +270,7 @@ protected function parseSearchExpression() {
         $last = array_pop($this->keys['positive']);
         // Starting a new OR?
         if (!is_array($last)) {
-          $last = array($last);
+          $last = [$last];
         }
         $this->keys['positive'][] = $last;
         $in_or = TRUE;
@@ -374,7 +374,7 @@ protected function parseWord($word) {
     }
 
     // Return matching snippet and number of added words.
-    return array($num_new_scores, $num_valid_words);
+    return [$num_new_scores, $num_valid_words];
   }
 
   /**
@@ -420,7 +420,7 @@ public function prepareAndNormalize() {
     // simple queries, this condition could lead to incorrectly deciding not
     // to continue with the full query.
     if ($this->simple) {
-      $this->having('COUNT(*) >= :matches', array(':matches' => $this->matches));
+      $this->having('COUNT(*) >= :matches', [':matches' => $this->matches]);
     }
 
     // Clone the query object to calculate normalization.
@@ -499,7 +499,7 @@ public function preExecute(SelectInterface $query = NULL) {
    *
    * @return $this
    */
-  public function addScore($score, $arguments = array(), $multiply = FALSE) {
+  public function addScore($score, $arguments = [], $multiply = FALSE) {
     if ($multiply) {
       $i = count($this->multiply);
       // Modify the score expression so it is multiplied by the multiplier,
@@ -590,7 +590,7 @@ public function execute() {
     // Add query metadata.
     $this
       ->addMetaData('normalize', $this->normalize)
-      ->fields('i', array('type', 'sid'));
+      ->fields('i', ['type', 'sid']);
     return $this->query->execute();
   }
 
@@ -618,12 +618,12 @@ public function countQuery() {
     // Remove existing fields and expressions, they are not needed for a count
     // query.
     $fields =& $inner->getFields();
-    $fields = array();
+    $fields = [];
     $expressions =& $inner->getExpressions();
-    $expressions = array();
+    $expressions = [];
 
     // Add sid as the only field and count them as a subquery.
-    $count = db_select($inner->fields('i', array('sid')), NULL, array('target' => 'replica'));
+    $count = db_select($inner->fields('i', ['sid']), NULL, ['target' => 'replica']);
 
     // Add the COUNT() expression.
     $count->addExpression('COUNT(*)');
diff --git a/core/modules/search/src/Tests/SearchAdvancedSearchFormTest.php b/core/modules/search/src/Tests/SearchAdvancedSearchFormTest.php
index 9bd13bd..af12df6 100644
--- a/core/modules/search/src/Tests/SearchAdvancedSearchFormTest.php
+++ b/core/modules/search/src/Tests/SearchAdvancedSearchFormTest.php
@@ -19,7 +19,7 @@ class SearchAdvancedSearchFormTest extends SearchTestBase {
   protected function setUp() {
     parent::setUp();
     // Create and log in user.
-    $test_user = $this->drupalCreateUser(array('access content', 'search content', 'use advanced search', 'administer nodes'));
+    $test_user = $this->drupalCreateUser(['access content', 'search content', 'use advanced search', 'administer nodes']);
     $this->drupalLogin($test_user);
 
     // Create initial node.
@@ -44,23 +44,23 @@ function testNodeType() {
     $this->assertNotEqual($dummy_title, $this->node->label(), "Dummy title doesn't equal node title.");
 
     // Search for the dummy title with a GET query.
-    $this->drupalGet('search/node', array('query' => array('keys' => $dummy_title)));
+    $this->drupalGet('search/node', ['query' => ['keys' => $dummy_title]]);
     $this->assertNoText($this->node->label(), 'Basic page node is not found with dummy title.');
 
     // Search for the title of the node with a GET query.
-    $this->drupalGet('search/node', array('query' => array('keys' => $this->node->label())));
+    $this->drupalGet('search/node', ['query' => ['keys' => $this->node->label()]]);
     $this->assertText($this->node->label(), 'Basic page node is found with GET query.');
 
     // Search for the title of the node with a POST query.
-    $edit = array('or' => $this->node->label());
+    $edit = ['or' => $this->node->label()];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
     $this->assertText($this->node->label(), 'Basic page node is found with POST query.');
 
     // Search by node type.
-    $this->drupalPostForm('search/node', array_merge($edit, array('type[page]' => 'page')), t('Advanced search'));
+    $this->drupalPostForm('search/node', array_merge($edit, ['type[page]' => 'page']), t('Advanced search'));
     $this->assertText($this->node->label(), 'Basic page node is found with POST query and type:page.');
 
-    $this->drupalPostForm('search/node', array_merge($edit, array('type[article]' => 'article')), t('Advanced search'));
+    $this->drupalPostForm('search/node', array_merge($edit, ['type[article]' => 'article']), t('Advanced search'));
     $this->assertText('search yielded no results', 'Article node is not found with POST query and type:article.');
   }
 
@@ -68,13 +68,13 @@ function testNodeType() {
    * Tests that after submitting the advanced search form, the form is refilled.
    */
   function testFormRefill() {
-    $edit = array(
+    $edit = [
       'keys' => 'cat',
       'or' => 'dog gerbil',
       'phrase' => 'pets are nice',
       'negative' => 'fish snake',
       'type[page]' => 'page',
-    );
+    ];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
 
     // Test that the encoded query appears in the page title. Only test the
@@ -85,11 +85,11 @@ function testFormRefill() {
     // Verify that all of the form fields are filled out.
     foreach ($edit as $key => $value) {
       if ($key != 'type[page]') {
-        $elements = $this->xpath('//input[@name=:name]', array(':name' => $key));
+        $elements = $this->xpath('//input[@name=:name]', [':name' => $key]);
         $this->assertTrue(isset($elements[0]) && $elements[0]['value'] == $value, "Field $key is set to $value");
       }
       else {
-        $elements = $this->xpath('//input[@name=:name]', array(':name' => $key));
+        $elements = $this->xpath('//input[@name=:name]', [':name' => $key]);
         $this->assertTrue(isset($elements[0]) && !empty($elements[0]['checked']), "Field $key is checked");
       }
     }
@@ -97,12 +97,12 @@ function testFormRefill() {
     // Now test by submitting the or/not part of the query in the main
     // search box, and verify that the advanced form is not filled out.
     // (It shouldn't be filled out unless you submit values in those fields.)
-    $edit2 = array('keys' => 'cat dog OR gerbil -fish -snake');
+    $edit2 = ['keys' => 'cat dog OR gerbil -fish -snake'];
     $this->drupalPostForm('search/node', $edit2, t('Advanced search'));
     $this->assertText('Search for cat dog OR gerbil -fish -snake');
     foreach ($edit as $key => $value) {
       if ($key != 'type[page]') {
-        $elements = $this->xpath('//input[@name=:name]', array(':name' => $key));
+        $elements = $this->xpath('//input[@name=:name]', [':name' => $key]);
         $this->assertFalse(isset($elements[0]) && $elements[0]['value'] == $value, "Field $key is not set to $value");
       }
     }
diff --git a/core/modules/search/src/Tests/SearchBlockTest.php b/core/modules/search/src/Tests/SearchBlockTest.php
index 7d42a85..21afda7 100644
--- a/core/modules/search/src/Tests/SearchBlockTest.php
+++ b/core/modules/search/src/Tests/SearchBlockTest.php
@@ -14,13 +14,13 @@ class SearchBlockTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $admin_user = $this->drupalCreateUser(array('administer blocks', 'search content'));
+    $admin_user = $this->drupalCreateUser(['administer blocks', 'search content']);
     $this->drupalLogin($admin_user);
   }
 
@@ -46,7 +46,7 @@ public function testSearchFormBlock() {
     $this->assertTrue(empty($elements), 'The search input field does not have empty name attribute.');
 
     // Test a normal search via the block form, from the front page.
-    $terms = array('keys' => 'test');
+    $terms = ['keys' => 'test'];
     $this->submitGetForm('', $terms, t('Search'));
     $this->assertResponse(200);
     $this->assertText('Your search yielded no results');
@@ -72,12 +72,12 @@ public function testSearchFormBlock() {
     $entity_id = $search_page_repository->getDefaultSearchPage();
     $this->assertEqual(
       $this->getUrl(),
-      \Drupal::url('search.view_' . $entity_id, array(), array('query' => array('keys' => $terms['keys']), 'absolute' => TRUE)),
+      \Drupal::url('search.view_' . $entity_id, [], ['query' => ['keys' => $terms['keys']], 'absolute' => TRUE]),
       'Submitted to correct URL.'
     );
 
     // Test an empty search via the block form, from the front page.
-    $terms = array('keys' => '');
+    $terms = ['keys' => ''];
     $this->submitGetForm('', $terms, t('Search'));
     $this->assertResponse(200);
     $this->assertText('Please enter some keywords');
@@ -86,22 +86,22 @@ public function testSearchFormBlock() {
     // submitted empty.
     $this->assertEqual(
       $this->getUrl(),
-      \Drupal::url('search.view_' . $entity_id, array(), array('query' => array('keys' => ''), 'absolute' => TRUE)),
+      \Drupal::url('search.view_' . $entity_id, [], ['query' => ['keys' => ''], 'absolute' => TRUE]),
       'Redirected to correct URL.'
     );
 
     // Test that after entering a too-short keyword in the form, you can then
     // search again with a longer keyword. First test using the block form.
-    $this->submitGetForm('node', array('keys' => $this->randomMachineName(1)), t('Search'));
+    $this->submitGetForm('node', ['keys' => $this->randomMachineName(1)], t('Search'));
     $this->assertText('You must include at least one keyword to match in the content', 'Keyword message is displayed when searching for short word');
     $this->assertNoText(t('Please enter some keywords'), 'With short word entered, no keywords message is not displayed');
-    $this->submitGetForm(NULL, array('keys' => $this->randomMachineName()), t('Search'), 'search-block-form');
+    $this->submitGetForm(NULL, ['keys' => $this->randomMachineName()], t('Search'), 'search-block-form');
     $this->assertNoText('You must include at least one keyword to match in the content', 'Keyword message is not displayed when searching for long word after short word search');
 
     // Same test again, using the search page form for the second search this
     // time.
-    $this->submitGetForm('node', array('keys' => $this->randomMachineName(1)), t('Search'));
-    $this->drupalPostForm(NULL, array('keys' => $this->randomMachineName()), t('Search'), array(), array(), 'search-form');
+    $this->submitGetForm('node', ['keys' => $this->randomMachineName(1)], t('Search'));
+    $this->drupalPostForm(NULL, ['keys' => $this->randomMachineName()], t('Search'), [], [], 'search-form');
     $this->assertNoText('You must include at least one keyword to match in the content', 'Keyword message is not displayed when searching for long word after short word search');
 
   }
diff --git a/core/modules/search/src/Tests/SearchCommentTest.php b/core/modules/search/src/Tests/SearchCommentTest.php
index f67637f..b0377b7 100644
--- a/core/modules/search/src/Tests/SearchCommentTest.php
+++ b/core/modules/search/src/Tests/SearchCommentTest.php
@@ -22,7 +22,7 @@ class SearchCommentTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'node', 'comment');
+  public static $modules = ['filter', 'node', 'comment'];
 
   /**
    * Test subject for comments.
@@ -55,17 +55,17 @@ class SearchCommentTest extends SearchTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
       'weight' => 1,
-      'filters' => array(),
-    ));
+      'filters' => [],
+    ]);
     $full_html_format->save();
 
     // Create and log in an administrative user having access to the Full HTML
     // text format.
-    $permissions = array(
+    $permissions = [
       'administer filters',
       $full_html_format->getPermissionName(),
       'administer permissions',
@@ -73,7 +73,7 @@ protected function setUp() {
       'post comments',
       'skip comment approval',
       'access comments',
-    );
+    ];
     $this->adminUser = $this->drupalCreateUser($permissions);
     $this->drupalLogin($this->adminUser);
     // Add a comment field.
@@ -86,15 +86,15 @@ protected function setUp() {
   function testSearchResultsComment() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     // Create basic_html format that escapes all HTML.
-    $basic_html_format = FilterFormat::create(array(
+    $basic_html_format = FilterFormat::create([
       'format' => 'basic_html',
       'name' => 'Basic HTML',
       'weight' => 1,
-      'filters' => array(
-        'filter_html_escape' => array('status' => 1),
-      ),
-      'roles' => array(RoleInterface::AUTHENTICATED_ID),
-    ));
+      'filters' => [
+        'filter_html_escape' => ['status' => 1],
+      ],
+      'roles' => [RoleInterface::AUTHENTICATED_ID],
+    ]);
     $basic_html_format->save();
 
     $comment_body = 'Test comment body';
@@ -105,17 +105,17 @@ function testSearchResultsComment() {
     $field->save();
 
     // Allow anonymous users to search content.
-    $edit = array(
+    $edit = [
       RoleInterface::ANONYMOUS_ID . '[search content]' => 1,
       RoleInterface::ANONYMOUS_ID . '[access comments]' => 1,
       RoleInterface::ANONYMOUS_ID . '[post comments]' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/people/permissions', $edit, t('Save permissions'));
 
     // Create a node.
-    $node = $this->drupalCreateNode(array('type' => 'article'));
+    $node = $this->drupalCreateNode(['type' => 'article']);
     // Post a comment using 'Full HTML' text format.
-    $edit_comment = array();
+    $edit_comment = [];
     $edit_comment['subject[0][value]'] = 'Test comment subject';
     $edit_comment['comment_body[0][value]'] = '<h1>' . $comment_body . '</h1>';
     $full_html_format_id = 'full_html';
@@ -125,7 +125,7 @@ function testSearchResultsComment() {
     // Post a comment with an evil script tag in the comment subject and a
     // script tag nearby a keyword in the comment body. Use the 'FULL HTML' text
     // format so the script tag stored.
-    $edit_comment2 = array();
+    $edit_comment2 = [];
     $edit_comment2['subject[0][value]'] = "<script>alert('subjectkeyword');</script>";
     $edit_comment2['comment_body[0][value]'] = "nearbykeyword<script>alert('somethinggeneric');</script>";
     $edit_comment2['comment_body[0][format]'] = $full_html_format_id;
@@ -133,7 +133,7 @@ function testSearchResultsComment() {
 
     // Post a comment with a keyword inside an evil script tag in the comment
     // body. Use the 'FULL HTML' text format so the script tag is stored.
-    $edit_comment3 = array();
+    $edit_comment3 = [];
     $edit_comment3['subject[0][value]'] = 'asubject';
     $edit_comment3['comment_body[0][value]'] = "<script>alert('insidekeyword');</script>";
     $edit_comment3['comment_body[0][format]'] = $full_html_format_id;
@@ -144,19 +144,19 @@ function testSearchResultsComment() {
     $this->cronRun();
 
     // Search for the comment subject.
-    $edit = array(
+    $edit = [
       'keys' => "'" . $edit_comment['subject[0][value]'] . "'",
-    );
+    ];
     $this->drupalPostForm('search/node', $edit, t('Search'));
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node2 = $node_storage->load($node->id());
     $this->assertText($node2->label(), 'Node found in search results.');
     $this->assertText($edit_comment['subject[0][value]'], 'Comment subject found in search results.');
 
     // Search for the comment body.
-    $edit = array(
+    $edit = [
       'keys' => "'" . $comment_body . "'",
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Search'));
     $this->assertText($node2->label(), 'Node found in search results.');
 
@@ -166,9 +166,9 @@ function testSearchResultsComment() {
     $this->assertNoEscaped($edit_comment['comment_body[0][value]'], 'HTML in comment body is not escaped.');
 
     // Search for the evil script comment subject.
-    $edit = array(
+    $edit = [
       'keys' => 'subjectkeyword',
-    );
+    ];
     $this->drupalPostForm('search/node', $edit, t('Search'));
 
     // Verify the evil comment subject is escaped in search results.
@@ -226,10 +226,10 @@ function testSearchResultsCommentAccess() {
     $field = FieldConfig::loadByName('node', 'article', 'comment');
     $field->setSetting('preview', DRUPAL_OPTIONAL);
     $field->save();
-    $this->node = $this->drupalCreateNode(array('type' => 'article'));
+    $this->node = $this->drupalCreateNode(['type' => 'article']);
 
     // Post a comment using 'Full HTML' text format.
-    $edit_comment = array();
+    $edit_comment = [];
     $edit_comment['subject[0][value]'] = $this->commentSubject;
     $edit_comment['comment_body[0][value]'] = '<h1>' . $comment_body . '</h1>';
     $this->drupalPostForm('comment/reply/node/' . $this->node->id() . '/comment', $edit_comment, t('Save'));
@@ -277,10 +277,10 @@ function testSearchResultsCommentAccess() {
    * Set permissions for role.
    */
   function setRolePermissions($rid, $access_comments = FALSE, $search_content = TRUE) {
-    $permissions = array(
+    $permissions = [
       'access comments' => $access_comments,
       'search content' => $search_content,
-    );
+    ];
     user_role_change_permissions($rid, $permissions);
   }
 
@@ -293,9 +293,9 @@ function assertCommentAccess($assume_access, $message) {
     $this->cronRun();
 
     // Search for the comment subject.
-    $edit = array(
+    $edit = [
       'keys' => "'" . $this->commentSubject . "'",
-    );
+    ];
     $this->drupalPostForm('search/node', $edit, t('Search'));
 
     if ($assume_access) {
@@ -314,19 +314,19 @@ function assertCommentAccess($assume_access, $message) {
    */
   function testAddNewComment() {
     // Create a node with a short body.
-    $settings = array(
+    $settings = [
       'type' => 'article',
       'title' => 'short title',
-      'body' => array(array('value' => 'short body text')),
-    );
+      'body' => [['value' => 'short body text']],
+    ];
 
-    $user = $this->drupalCreateUser(array(
+    $user = $this->drupalCreateUser([
       'search content',
       'create article content',
       'access content',
       'post comments',
       'access comments',
-    ));
+    ]);
     $this->drupalLogin($user);
 
     $node = $this->drupalCreateNode($settings);
@@ -341,12 +341,12 @@ function testAddNewComment() {
 
     // Search for 'comment'. Should be no results.
     $this->drupalLogin($user);
-    $this->drupalPostForm('search/node', array('keys' => 'comment'), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => 'comment'], t('Search'));
     $this->assertText(t('Your search yielded no results'));
 
     // Search for the node title. Should be found, and 'Add new comment' should
     // not be part of the search snippet.
-    $this->drupalPostForm('search/node', array('keys' => 'short'), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => 'short'], t('Search'));
     $this->assertText($node->label(), 'Search for keyword worked');
     $this->assertNoText(t('Add new comment'));
   }
diff --git a/core/modules/search/src/Tests/SearchConfigSettingsFormTest.php b/core/modules/search/src/Tests/SearchConfigSettingsFormTest.php
index 9ca87d6..c95b609 100644
--- a/core/modules/search/src/Tests/SearchConfigSettingsFormTest.php
+++ b/core/modules/search/src/Tests/SearchConfigSettingsFormTest.php
@@ -17,7 +17,7 @@ class SearchConfigSettingsFormTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'search_extra_type', 'test_page_test');
+  public static $modules = ['block', 'search_extra_type', 'test_page_test'];
 
   /**
    * User who can search and administer search.
@@ -37,7 +37,7 @@ protected function setUp() {
     parent::setUp();
 
     // Log in as a user that can create and search content.
-    $this->searchUser = $this->drupalCreateUser(array('search content', 'administer search', 'administer nodes', 'bypass node access', 'access user profiles', 'administer users', 'administer blocks', 'access site reports'));
+    $this->searchUser = $this->drupalCreateUser(['search content', 'administer search', 'administer nodes', 'bypass node access', 'access user profiles', 'administer users', 'administer blocks', 'access site reports']);
     $this->drupalLogin($this->searchUser);
 
     // Add a single piece of content and index it.
@@ -65,38 +65,38 @@ function testSearchSettingsPage() {
 
     // Test that the settings form displays the correct count of items left to index.
     $this->drupalGet('admin/config/search/pages');
-    $this->assertText(t('There are @count items left to index.', array('@count' => 0)));
+    $this->assertText(t('There are @count items left to index.', ['@count' => 0]));
 
     // Test the re-index button.
-    $this->drupalPostForm('admin/config/search/pages', array(), t('Re-index site'));
+    $this->drupalPostForm('admin/config/search/pages', [], t('Re-index site'));
     $this->assertText(t('Are you sure you want to re-index the site'));
-    $this->drupalPostForm('admin/config/search/pages/reindex', array(), t('Re-index site'));
+    $this->drupalPostForm('admin/config/search/pages/reindex', [], t('Re-index site'));
     $this->assertText(t('All search indexes will be rebuilt'));
     $this->drupalGet('admin/config/search/pages');
     $this->assertText(t('There is 1 item left to index.'));
 
     // Test that the form saves with the default values.
-    $this->drupalPostForm('admin/config/search/pages', array(), t('Save configuration'));
+    $this->drupalPostForm('admin/config/search/pages', [], t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'), 'Form saves with the default values.');
 
     // Test that the form does not save with an invalid word length.
-    $edit = array(
+    $edit = [
       'minimum_word_size' => $this->randomMachineName(3),
-    );
+    ];
     $this->drupalPostForm('admin/config/search/pages', $edit, t('Save configuration'));
     $this->assertNoText(t('The configuration options have been saved.'), 'Form does not save with an invalid word length.');
 
     // Test logging setting. It should be off by default.
     $text = $this->randomMachineName(5);
-    $this->drupalPostForm('search/node', array('keys' => $text), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => $text], t('Search'));
     $this->drupalGet('admin/reports/dblog');
     $this->assertNoLink('Searched Content for ' . $text . '.', 'Search was not logged');
 
     // Turn on logging.
-    $edit = array('logging' => TRUE);
+    $edit = ['logging' => TRUE];
     $this->drupalPostForm('admin/config/search/pages', $edit, t('Save configuration'));
     $text = $this->randomMachineName(5);
-    $this->drupalPostForm('search/node', array('keys' => $text), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => $text], t('Search'));
     $this->drupalGet('admin/reports/dblog');
     $this->assertLink('Searched Content for ' . $text . '.', 0, 'Search was logged');
 
@@ -113,13 +113,13 @@ function testSearchModuleSettingsPage() {
     $this->assertTrue($this->xpath('//select[@id="edit-extra-type-settings-boost"]//option[@value="bi" and @selected="selected"]'), 'Module specific settings are picked up from the default config');
 
     // Change extra type setting and also modify a common search setting.
-    $edit = array(
+    $edit = [
       'extra_type_settings[boost]' => 'ii',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save search page'));
 
     // Ensure that the modifications took effect.
-    $this->assertRaw(t('The %label search page has been updated.', array('%label' => 'Dummy search type')));
+    $this->assertRaw(t('The %label search page has been updated.', ['%label' => 'Dummy search type']));
     $this->drupalGet('admin/config/search/pages/manage/dummy_search_type');
     $this->assertTrue($this->xpath('//select[@id="edit-extra-type-settings-boost"]//option[@value="ii" and @selected="selected"]'), 'Module specific settings can be changed');
   }
@@ -130,20 +130,20 @@ function testSearchModuleSettingsPage() {
   function testSearchModuleDisabling() {
     // Array of search plugins to test: 'keys' are the keywords to search for,
     // and 'text' is the text to assert is on the results page.
-    $plugin_info = array(
-      'node_search' => array(
+    $plugin_info = [
+      'node_search' => [
         'keys' => 'pizza',
         'text' => $this->searchNode->label(),
-      ),
-      'user_search' => array(
+      ],
+      'user_search' => [
         'keys' => $this->searchUser->getUsername(),
         'text' => $this->searchUser->getEmail(),
-      ),
-      'dummy_search_type' => array(
+      ],
+      'dummy_search_type' => [
         'keys' => 'foo',
         'text' => 'Dummy search snippet to display',
-      ),
-    );
+      ],
+    ];
     $plugins = array_keys($plugin_info);
     /** @var $entities \Drupal\search\SearchPageInterface[] */
     $entities = SearchPage::loadMultiple();
@@ -159,7 +159,7 @@ function testSearchModuleDisabling() {
 
       // Run a search from the correct search URL.
       $info = $plugin_info[$entity_id];
-      $this->drupalGet('search/' . $entity->getPath(), array('query' => array('keys' => $info['keys'])));
+      $this->drupalGet('search/' . $entity->getPath(), ['query' => ['keys' => $info['keys']]]);
       $this->assertResponse(200);
       $this->assertNoText('no results', $entity->label() . ' search found results');
       $this->assertText($info['text'], 'Correct search text found');
@@ -174,10 +174,10 @@ function testSearchModuleDisabling() {
 
       // Run a search from the search block on the node page. Verify you get
       // to this plugin's search results page.
-      $terms = array('keys' => $info['keys']);
+      $terms = ['keys' => $info['keys']];
       $this->submitGetForm('node', $terms, t('Search'));
       $current = $this->getURL();
-      $expected = \Drupal::url('search.view_' . $entity->id(), array(), array('query' => array('keys' => $info['keys']), 'absolute' => TRUE));
+      $expected = \Drupal::url('search.view_' . $entity->id(), [], ['query' => ['keys' => $info['keys']], 'absolute' => TRUE]);
       $this->assertEqual( $current, $expected, 'Block redirected to right search page');
 
       // Try an invalid search path, which should 404.
@@ -195,16 +195,16 @@ function testSearchModuleDisabling() {
     // Set the node search as default.
     $this->drupalGet('admin/config/search/pages/manage/node_search/set-default');
 
-    $paths = array(
-      array('path' => 'search/node', 'options' => array('query' => array('keys' => 'pizza'))),
-      array('path' => 'search/node', 'options' => array()),
-    );
+    $paths = [
+      ['path' => 'search/node', 'options' => ['query' => ['keys' => 'pizza']]],
+      ['path' => 'search/node', 'options' => []],
+    ];
 
     foreach ($paths as $item) {
       $this->drupalGet($item['path'], $item['options']);
       foreach ($plugins as $entity_id) {
         $label = $entities[$entity_id]->label();
-        $this->assertText($label, format_string('%label search tab is shown', array('%label' => $label)));
+        $this->assertText($label, format_string('%label search tab is shown', ['%label' => $label]));
       }
     }
   }
@@ -214,7 +214,7 @@ function testSearchModuleDisabling() {
    */
   public function testDefaultSearchPageOrdering() {
     $this->drupalGet('search');
-    $elements = $this->xpath('//*[contains(@class, :class)]//a', array(':class' => 'tabs primary'));
+    $elements = $this->xpath('//*[contains(@class, :class)]//a', [':class' => 'tabs primary']);
     $this->assertIdentical((string) $elements[0]['href'], \Drupal::url('search.view_node_search'));
     $this->assertIdentical((string) $elements[1]['href'], \Drupal::url('search.view_dummy_search_type'));
     $this->assertIdentical((string) $elements[2]['href'], \Drupal::url('search.view_user_search'));
@@ -235,24 +235,24 @@ public function testMultipleSearchPages() {
     $this->assertText(t('No search pages have been configured.'));
 
     // Add a search page.
-    $edit = array();
+    $edit = [];
     $edit['search_type'] = 'search_extra_type_search';
     $this->drupalPostForm(NULL, $edit, t('Add search page'));
     $this->assertTitle('Add new search page | Drupal');
 
-    $first = array();
+    $first = [];
     $first['label'] = $this->randomString();
     $first_id = $first['id'] = strtolower($this->randomMachineName(8));
     $first['path'] = strtolower($this->randomMachineName(8));
     $this->drupalPostForm(NULL, $first, t('Save'));
     $this->assertDefaultSearch($first_id, 'The default page matches the only search page.');
-    $this->assertRaw(t('The %label search page has been added.', array('%label' => $first['label'])));
+    $this->assertRaw(t('The %label search page has been added.', ['%label' => $first['label']]));
 
     // Attempt to add a search page with an existing path.
-    $edit = array();
+    $edit = [];
     $edit['search_type'] = 'search_extra_type_search';
     $this->drupalPostForm(NULL, $edit, t('Add search page'));
-    $edit = array();
+    $edit = [];
     $edit['label'] = $this->randomString();
     $edit['id'] = strtolower($this->randomMachineName(8));
     $edit['path'] = $first['path'];
@@ -260,7 +260,7 @@ public function testMultipleSearchPages() {
     $this->assertText(t('The search page path must be unique.'));
 
     // Add a second search page.
-    $second = array();
+    $second = [];
     $second['label'] = $this->randomString();
     $second_id = $second['id'] = strtolower($this->randomMachineName(8));
     $second['path'] = strtolower($this->randomMachineName(8));
@@ -269,18 +269,18 @@ public function testMultipleSearchPages() {
 
     // Ensure both search pages have their tabs displayed.
     $this->drupalGet('search');
-    $elements = $this->xpath('//*[contains(@class, :class)]//a', array(':class' => 'tabs primary'));
+    $elements = $this->xpath('//*[contains(@class, :class)]//a', [':class' => 'tabs primary']);
     $this->assertIdentical((string) $elements[0]['href'], Url::fromRoute('search.view_' . $first_id)->toString());
     $this->assertIdentical((string) $elements[1]['href'], Url::fromRoute('search.view_' . $second_id)->toString());
 
     // Switch the weight of the search pages and check the order of the tabs.
-    $edit = array(
+    $edit = [
       'entities[' . $first_id . '][weight]' => 10,
       'entities[' . $second_id . '][weight]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/config/search/pages', $edit, t('Save configuration'));
     $this->drupalGet('search');
-    $elements = $this->xpath('//*[contains(@class, :class)]//a', array(':class' => 'tabs primary'));
+    $elements = $this->xpath('//*[contains(@class, :class)]//a', [':class' => 'tabs primary']);
     $this->assertIdentical((string) $elements[0]['href'], Url::fromRoute('search.view_' . $second_id)->toString());
     $this->assertIdentical((string) $elements[1]['href'], Url::fromRoute('search.view_' . $first_id)->toString());
 
@@ -291,7 +291,7 @@ public function testMultipleSearchPages() {
 
     // Change the default search page.
     $this->clickLink(t('Set as default'));
-    $this->assertRaw(t('The default search page is now %label. Be sure to check the ordering of your search pages.', array('%label' => $second['label'])));
+    $this->assertRaw(t('The default search page is now %label. Be sure to check the ordering of your search pages.', ['%label' => $second['label']]));
     $this->verifySearchPageOperations($first_id, TRUE, TRUE, TRUE, FALSE);
     $this->verifySearchPageOperations($second_id, TRUE, FALSE, FALSE, FALSE);
 
@@ -310,9 +310,9 @@ public function testMultipleSearchPages() {
 
     // Test deleting.
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete the search page %label?', array('%label' => $first['label'])));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
-    $this->assertRaw(t('The search page %label has been deleted.', array('%label' => $first['label'])));
+    $this->assertRaw(t('Are you sure you want to delete the search page %label?', ['%label' => $first['label']]));
+    $this->drupalPostForm(NULL, [], t('Delete'));
+    $this->assertRaw(t('The search page %label has been deleted.', ['%label' => $first['label']]));
     $this->verifySearchPageOperations($first_id, FALSE, FALSE, FALSE, FALSE);
   }
 
diff --git a/core/modules/search/src/Tests/SearchEmbedFormTest.php b/core/modules/search/src/Tests/SearchEmbedFormTest.php
index 22da9b6..df5fdfc 100644
--- a/core/modules/search/src/Tests/SearchEmbedFormTest.php
+++ b/core/modules/search/src/Tests/SearchEmbedFormTest.php
@@ -14,7 +14,7 @@ class SearchEmbedFormTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('search_embedded_form');
+  public static $modules = ['search_embedded_form'];
 
   /**
    * Node used for testing.
@@ -34,7 +34,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create a user and a node, and update the search index.
-    $test_user = $this->drupalCreateUser(array('access content', 'search content', 'administer nodes'));
+    $test_user = $this->drupalCreateUser(['access content', 'search content', 'administer nodes']);
     $this->drupalLogin($test_user);
 
     $this->node = $this->drupalCreateNode();
@@ -53,7 +53,7 @@ protected function setUp() {
   function testEmbeddedForm() {
     // First verify we can submit the form from the module's page.
     $this->drupalPostForm('search_embedded_form',
-      array('name' => 'John'),
+      ['name' => 'John'],
       t('Send away'));
     $this->assertText(t('Test form was submitted'), 'Form message appears');
     $count = \Drupal::state()->get('search_embedded_form.submit_count');
@@ -61,10 +61,10 @@ function testEmbeddedForm() {
     $this->submitCount = $count;
 
     // Now verify that we can see and submit the form from the search results.
-    $this->drupalGet('search/node', array('query' => array('keys' => $this->node->label())));
+    $this->drupalGet('search/node', ['query' => ['keys' => $this->node->label()]]);
     $this->assertText(t('Your name'), 'Form is visible');
     $this->drupalPostForm(NULL,
-      array('name' => 'John'),
+      ['name' => 'John'],
       t('Send away'));
     $this->assertText(t('Test form was submitted'), 'Form message appears');
     $count = \Drupal::state()->get('search_embedded_form.submit_count');
@@ -74,7 +74,7 @@ function testEmbeddedForm() {
     // Now verify that if we submit the search form, it doesn't count as
     // our form being submitted.
     $this->drupalPostForm('search',
-      array('keys' => 'foo'),
+      ['keys' => 'foo'],
       t('Search'));
     $this->assertNoText(t('Test form was submitted'), 'Form message does not appear');
     $count = \Drupal::state()->get('search_embedded_form.submit_count');
diff --git a/core/modules/search/src/Tests/SearchLanguageTest.php b/core/modules/search/src/Tests/SearchLanguageTest.php
index cdd0bd4..25f269d 100644
--- a/core/modules/search/src/Tests/SearchLanguageTest.php
+++ b/core/modules/search/src/Tests/SearchLanguageTest.php
@@ -17,7 +17,7 @@ class SearchLanguageTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Array of nodes available to search.
@@ -30,7 +30,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $test_user = $this->drupalCreateUser(array('access content', 'search content', 'use advanced search', 'administer nodes', 'administer languages', 'access administration pages', 'administer site configuration'));
+    $test_user = $this->drupalCreateUser(['access content', 'search content', 'use advanced search', 'administer nodes', 'administer languages', 'access administration pages', 'administer site configuration']);
     $this->drupalLogin($test_user);
 
     // Add a new language.
@@ -45,38 +45,38 @@ protected function setUp() {
 
     // Create a few page nodes with multilingual body values.
     $default_format = filter_default_format();
-    $nodes = array(
-      array(
+    $nodes = [
+      [
         'title' => 'First node en',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'en',
-      ),
-      array(
+      ],
+      [
         'title' => 'Second node this is the Spanish title',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'es',
-      ),
-      array(
+      ],
+      [
         'title' => 'Third node en',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'en',
-      ),
-    );
+      ],
+    ];
     $this->searchableNodes = [];
     foreach ($nodes as $setting) {
       $this->searchableNodes[] = $this->drupalCreateNode($setting);
     }
 
     // Add English translation to the second node.
-    $translation = $this->searchableNodes[1]->addTranslation('en', array('title' => 'Second node en'));
+    $translation = $this->searchableNodes[1]->addTranslation('en', ['title' => 'Second node en']);
     $translation->body->value = $this->randomMachineName(32);
     $this->searchableNodes[1]->save();
 
     // Add Spanish translation to the third node.
-    $translation = $this->searchableNodes[2]->addTranslation('es', array('title' => 'Third node es'));
+    $translation = $this->searchableNodes[2]->addTranslation('es', ['title' => 'Third node es']);
     $translation->body->value = $this->randomMachineName(32);
     $this->searchableNodes[2]->save();
 
@@ -88,7 +88,7 @@ protected function setUp() {
 
   function testLanguages() {
     // Add predefined language.
-    $edit = array('predefined_langcode' => 'fr');
+    $edit = ['predefined_langcode' => 'fr'];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add language'));
     $this->assertText('French', 'Language added successfully.');
 
@@ -99,11 +99,11 @@ function testLanguages() {
     $this->assertText(t('French'), 'French is a possible choice.');
 
     // Ensure selecting no language does not make the query different.
-    $this->drupalPostForm('search/node', array(), t('Advanced search'));
+    $this->drupalPostForm('search/node', [], t('Advanced search'));
     $this->assertUrl(\Drupal::url('search.view_node_search', [], ['query' => ['keys' => ''], 'absolute' => TRUE]), [], 'Correct page redirection, no language filtering.');
 
     // Pick French and ensure it is selected.
-    $edit = array('language[fr]' => TRUE);
+    $edit = ['language[fr]' => TRUE];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
     // Get the redirected URL.
     $url = $this->getUrl();
@@ -112,7 +112,7 @@ function testLanguages() {
     $this->assertTrue(strpos($query_string, '=language:fr') !== FALSE, 'Language filter language:fr add to the query string.');
 
     // Search for keyword node and language filter as Spanish.
-    $edit = array('keys' => 'node', 'language[es]' => TRUE);
+    $edit = ['keys' => 'node', 'language[es]' => TRUE];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
     // Check for Spanish results.
     $this->assertLink('Second node this is the Spanish title', 0, 'Second node Spanish title found in search results');
@@ -126,12 +126,12 @@ function testLanguages() {
     $path = 'admin/config/regional/language';
     $this->drupalGet($path);
     $this->assertFieldChecked('edit-site-default-language-en', 'Default language updated.');
-    $edit = array(
+    $edit = [
       'site_default_language' => 'fr',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save configuration'));
     $this->assertNoFieldChecked('edit-site-default-language-en', 'Default language updated.');
-    $this->drupalPostForm('admin/config/regional/language/delete/en', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/language/delete/en', [], t('Delete'));
   }
 
 }
diff --git a/core/modules/search/src/Tests/SearchNodeUpdateAndDeletionTest.php b/core/modules/search/src/Tests/SearchNodeUpdateAndDeletionTest.php
index e73ca86..0f053d2 100644
--- a/core/modules/search/src/Tests/SearchNodeUpdateAndDeletionTest.php
+++ b/core/modules/search/src/Tests/SearchNodeUpdateAndDeletionTest.php
@@ -14,7 +14,7 @@ class SearchNodeUpdateAndDeletionTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array();
+  public static $modules = [];
 
   /**
    * A user with permission to access and search content.
@@ -27,7 +27,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create a test user and log in.
-    $this->testUser = $this->drupalCreateUser(array('access content', 'search content'));
+    $this->testUser = $this->drupalCreateUser(['access content', 'search content']);
     $this->drupalLogin($this->testUser);
   }
 
@@ -36,10 +36,10 @@ protected function setUp() {
    */
   function testSearchIndexUpdateOnNodeChange() {
     // Create a node.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'title' => 'Someone who says Ni!',
-      'body' => array(array('value' => "We are the knights who say Ni!")),
-      'type' => 'page'));
+      'body' => [['value' => "We are the knights who say Ni!"]],
+      'type' => 'page']);
 
     $node_search_plugin = $this->container->get('plugin.manager.search')->createInstance('node_search');
     // Update the search index.
@@ -47,7 +47,7 @@ function testSearchIndexUpdateOnNodeChange() {
     search_update_totals();
 
     // Search the node to verify it appears in search results
-    $edit = array('keys' => 'knights');
+    $edit = ['keys' => 'knights'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText($node->label());
 
@@ -60,7 +60,7 @@ function testSearchIndexUpdateOnNodeChange() {
     search_update_totals();
 
     // Search again to verify the new text appears in test results.
-    $edit = array('keys' => 'shrubbery');
+    $edit = ['keys' => 'shrubbery'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText($node->label());
   }
@@ -70,10 +70,10 @@ function testSearchIndexUpdateOnNodeChange() {
    */
   function testSearchIndexUpdateOnNodeDeletion() {
     // Create a node.
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'title' => 'No dragons here',
-      'body' => array(array('value' => 'Again: No dragons here')),
-      'type' => 'page'));
+      'body' => [['value' => 'Again: No dragons here']],
+      'type' => 'page']);
 
     $node_search_plugin = $this->container->get('plugin.manager.search')->createInstance('node_search');
     // Update the search index.
@@ -81,12 +81,12 @@ function testSearchIndexUpdateOnNodeDeletion() {
     search_update_totals();
 
     // Search the node to verify it appears in search results
-    $edit = array('keys' => 'dragons');
+    $edit = ['keys' => 'dragons'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText($node->label());
 
     // Get the node info from the search index tables.
-    $search_index_dataset = db_query("SELECT sid FROM {search_index} WHERE type = 'node_search' AND  word = :word", array(':word' => 'dragons'))
+    $search_index_dataset = db_query("SELECT sid FROM {search_index} WHERE type = 'node_search' AND  word = :word", [':word' => 'dragons'])
       ->fetchField();
     $this->assertNotEqual($search_index_dataset, FALSE, t('Node info found on the search_index'));
 
@@ -94,7 +94,7 @@ function testSearchIndexUpdateOnNodeDeletion() {
     $node->delete();
 
     // Check if the node info is gone from the search table.
-    $search_index_dataset = db_query("SELECT sid FROM {search_index} WHERE type = 'node_search' AND  word = :word", array(':word' => 'dragons'))
+    $search_index_dataset = db_query("SELECT sid FROM {search_index} WHERE type = 'node_search' AND  word = :word", [':word' => 'dragons'])
       ->fetchField();
     $this->assertFalse($search_index_dataset, t('Node info successfully removed from search_index'));
 
diff --git a/core/modules/search/src/Tests/SearchNumberMatchingTest.php b/core/modules/search/src/Tests/SearchNumberMatchingTest.php
index a6ad057..de627e8 100644
--- a/core/modules/search/src/Tests/SearchNumberMatchingTest.php
+++ b/core/modules/search/src/Tests/SearchNumberMatchingTest.php
@@ -27,7 +27,7 @@ class SearchNumberMatchingTest extends SearchTestBase {
    *
    * @var string[]
    */
-  protected $numbers = array(
+  protected $numbers = [
     '123456789',
     '12/34/56789',
     '12.3456789',
@@ -35,7 +35,7 @@ class SearchNumberMatchingTest extends SearchTestBase {
     '123,456,789',
     '-123456789',
     '0123456789',
-  );
+  ];
 
   /**
    * An array of nodes created for testing purposes.
@@ -47,15 +47,15 @@ class SearchNumberMatchingTest extends SearchTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->testUser = $this->drupalCreateUser(array('search content', 'access content', 'administer nodes', 'access site reports'));
+    $this->testUser = $this->drupalCreateUser(['search content', 'access content', 'administer nodes', 'access site reports']);
     $this->drupalLogin($this->testUser);
 
     foreach ($this->numbers as $num) {
-      $info = array(
-        'body' => array(array('value' => $num)),
+      $info = [
+        'body' => [['value' => $num]],
         'type' => 'page',
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      );
+      ];
       $this->nodes[] = $this->drupalCreateNode($info);
     }
 
@@ -75,9 +75,9 @@ function testNumberSearching() {
       // Verify that the node title does not appear on the search page
       // with a dummy search.
       $this->drupalPostForm('search/node',
-        array('keys' => 'foo'),
+        ['keys' => 'foo'],
         t('Search'));
-      $this->assertNoText($node->label(), format_string('%number: node title not shown in dummy search', array('%number' => $i)));
+      $this->assertNoText($node->label(), format_string('%number: node title not shown in dummy search', ['%number' => $i]));
 
       // Now verify that we can find node i by searching for any of the
       // numbers.
@@ -88,9 +88,9 @@ function testNumberSearching() {
         $number = ltrim($number, '-');
 
         $this->drupalPostForm('search/node',
-          array('keys' => $number),
+          ['keys' => $number],
           t('Search'));
-        $this->assertText($node->label(), format_string('%i: node title shown (search found the node) in search for number %number', array('%i' => $i, '%number' => $number)));
+        $this->assertText($node->label(), format_string('%i: node title shown (search found the node) in search for number %number', ['%i' => $i, '%number' => $number]));
       }
     }
 
diff --git a/core/modules/search/src/Tests/SearchNumbersTest.php b/core/modules/search/src/Tests/SearchNumbersTest.php
index 30d3906..7034c5e 100644
--- a/core/modules/search/src/Tests/SearchNumbersTest.php
+++ b/core/modules/search/src/Tests/SearchNumbersTest.php
@@ -26,7 +26,7 @@ class SearchNumbersTest extends SearchTestBase {
    *
    * @var string[]
    */
-  protected $numbers = array(
+  protected $numbers = [
     'ISBN' => '978-0446365383',
     'UPC' => '036000 291452',
     'EAN bar code' => '5901234123457',
@@ -41,7 +41,7 @@ class SearchNumbersTest extends SearchTestBase {
     'over fifty characters' => '666666666666666666666666666666666666666666666666666666666666',
     'date' => '01/02/2009',
     'commas' => '987,654,321',
-  );
+  ];
 
   /**
    * An array of nodes created for testing purposes.
@@ -53,16 +53,16 @@ class SearchNumbersTest extends SearchTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->testUser = $this->drupalCreateUser(array('search content', 'access content', 'administer nodes', 'access site reports'));
+    $this->testUser = $this->drupalCreateUser(['search content', 'access content', 'administer nodes', 'access site reports']);
     $this->drupalLogin($this->testUser);
 
     foreach ($this->numbers as $doc => $num) {
-      $info = array(
-        'body' => array(array('value' => $num)),
+      $info = [
+        'body' => [['value' => $num]],
         'type' => 'page',
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
         'title' => $doc . ' number',
-      );
+      ];
       $this->nodes[$doc] = $this->drupalCreateNode($info);
     }
 
@@ -88,16 +88,16 @@ function testNumberSearching() {
       // Verify that the node title does not appear on the search page
       // with a dummy search.
       $this->drupalPostForm('search/node',
-        array('keys' => 'foo'),
+        ['keys' => 'foo'],
         t('Search'));
       $this->assertNoText($node->label(), $type . ': node title not shown in dummy search');
 
       // Verify that the node title does appear as a link on the search page
       // when searching for the number.
       $this->drupalPostForm('search/node',
-        array('keys' => $number),
+        ['keys' => $number],
         t('Search'));
-      $this->assertText($node->label(), format_string('%type: node title shown (search found the node) in search for number %number.', array('%type' => $type, '%number' => $number)));
+      $this->assertText($node->label(), format_string('%type: node title shown (search found the node) in search for number %number.', ['%type' => $type, '%number' => $number]));
     }
   }
 
diff --git a/core/modules/search/src/Tests/SearchPageCacheTagsTest.php b/core/modules/search/src/Tests/SearchPageCacheTagsTest.php
index 667b213..5eafa27 100644
--- a/core/modules/search/src/Tests/SearchPageCacheTagsTest.php
+++ b/core/modules/search/src/Tests/SearchPageCacheTagsTest.php
@@ -37,7 +37,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $this->searchingUser = $this->drupalCreateUser(array('search content', 'access user profiles'));
+    $this->searchingUser = $this->drupalCreateUser(['search content', 'access user profiles']);
 
     // Create a node and update the search index.
     $this->node = $this->drupalCreateNode(['title' => 'bike shed shop']);
@@ -60,7 +60,7 @@ function testSearchText() {
     $this->assertCacheTag('node_list');
 
     // Node search results.
-    $edit = array();
+    $edit = [];
     $edit['keys'] = 'bike shed';
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('bike shed shop');
@@ -182,7 +182,7 @@ public function testSearchTagsBubbling() {
     // Node search results for shop, should return node:1 (bike shed shop) and
     // node:2 (Llama shop). The related authors cache tags should be visible as
     // well.
-    $edit = array();
+    $edit = [];
     $edit['keys'] = 'shop';
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('bike shed shop');
@@ -200,7 +200,7 @@ public function testSearchTagsBubbling() {
     // Only get the new node in the search results, should result in node:1,
     // node:2 and user:3 as cache tags even though only node:1 is shown. This is
     // because node:2 is reference in node:1 as an entity reference.
-    $edit = array();
+    $edit = [];
     $edit['keys'] = 'Llama';
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('Llama shop');
diff --git a/core/modules/search/src/Tests/SearchPageTextTest.php b/core/modules/search/src/Tests/SearchPageTextTest.php
index db33d85..9815e30 100644
--- a/core/modules/search/src/Tests/SearchPageTextTest.php
+++ b/core/modules/search/src/Tests/SearchPageTextTest.php
@@ -32,7 +32,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create user.
-    $this->searchingUser = $this->drupalCreateUser(array('search content', 'access user profiles', 'use advanced search'));
+    $this->searchingUser = $this->drupalCreateUser(['search content', 'access user profiles', 'use advanced search']);
     $this->drupalPlaceBlock('local_tasks_block');
     $this->drupalPlaceBlock('page_title_block');
   }
@@ -43,7 +43,7 @@ protected function setUp() {
    * This is a regression test for https://www.drupal.org/node/2338081
    */
   function testSearchLabelXSS() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer search')));
+    $this->drupalLogin($this->drupalCreateUser(['administer search']));
 
     $keys['label'] = '<script>alert("Dont Panic");</script>';
     $this->drupalPostForm('admin/config/search/pages/manage/node_search', $keys, t('Save search page'));
@@ -63,14 +63,14 @@ function testSearchText() {
     $this->assertText(t('Search'));
     $this->assertTitle(t('Search') . ' | Drupal', 'Search page title is correct');
 
-    $edit = array();
+    $edit = [];
     $search_terms = 'bike shed ' . $this->randomMachineName();
     $edit['keys'] = $search_terms;
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText('search yielded no results');
     $this->assertText(t('Search'));
     $title_source = 'Search for @keywords | Drupal';
-    $this->assertTitle(t($title_source, array('@keywords' => Unicode::truncate($search_terms, 60, TRUE, TRUE))), 'Search page title is correct');
+    $this->assertTitle(t($title_source, ['@keywords' => Unicode::truncate($search_terms, 60, TRUE, TRUE)]), 'Search page title is correct');
     $this->assertNoText('Node', 'Erroneous tab and breadcrumb text is not present');
     $this->assertNoText(t('Node'), 'Erroneous translated tab and breadcrumb text is not present');
     $this->assertText(t('Content'), 'Tab and breadcrumb text is present');
@@ -80,23 +80,23 @@ function testSearchText() {
     $this->assertText('Use upper-case OR to get more results', 'Correct text is on content search help page');
 
     // Search for a longer text, and see that it is in the title, truncated.
-    $edit = array();
+    $edit = [];
     $search_terms = 'Every word is like an unnecessary stain on silence and nothingness.';
     $edit['keys'] = $search_terms;
     $this->drupalPostForm('search/node', $edit, t('Search'));
-    $this->assertTitle(t($title_source, array('@keywords' => 'Every word is like an unnecessary stain on silence and…')), 'Search page title is correct');
+    $this->assertTitle(t($title_source, ['@keywords' => 'Every word is like an unnecessary stain on silence and…']), 'Search page title is correct');
 
     // Search for a string with a lot of special characters.
     $search_terms = 'Hear nothing > "see nothing" `feel' . " '1982.";
     $edit['keys'] = $search_terms;
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $actual_title = (string) current($this->xpath('//title'));
-    $this->assertEqual($actual_title, Html::decodeEntities(t($title_source, array('@keywords' => Unicode::truncate($search_terms, 60, TRUE, TRUE)))), 'Search page title is correct');
+    $this->assertEqual($actual_title, Html::decodeEntities(t($title_source, ['@keywords' => Unicode::truncate($search_terms, 60, TRUE, TRUE)])), 'Search page title is correct');
 
     $edit['keys'] = $this->searchingUser->getUsername();
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText(t('Search'));
-    $this->assertTitle(t($title_source, array('@keywords' => Unicode::truncate($this->searchingUser->getUsername(), 60, TRUE, TRUE))));
+    $this->assertTitle(t($title_source, ['@keywords' => Unicode::truncate($this->searchingUser->getUsername(), 60, TRUE, TRUE)]));
 
     $this->clickLink('Search help');
     $this->assertText('Search help', 'Correct title is on search help page');
@@ -105,14 +105,14 @@ function testSearchText() {
     // Test that search keywords containing slashes are correctly loaded
     // from the GET params and displayed in the search form.
     $arg = $this->randomMachineName() . '/' . $this->randomMachineName();
-    $this->drupalGet('search/node', array('query' => array('keys' => $arg)));
+    $this->drupalGet('search/node', ['query' => ['keys' => $arg]]);
     $input = $this->xpath("//input[@id='edit-keys' and @value='{$arg}']");
     $this->assertFalse(empty($input), 'Search keys with a / are correctly set as the default value in the search box.');
 
     // Test a search input exceeding the limit of AND/OR combinations to test
     // the Denial-of-Service protection.
     $limit = $this->config('search.settings')->get('and_or_limit');
-    $keys = array();
+    $keys = [];
     for ($i = 0; $i < $limit + 1; $i++) {
       // Use a key of 4 characters to ensure we never generate 'AND' or 'OR'.
       $keys[] = $this->randomMachineName(4);
@@ -122,40 +122,40 @@ function testSearchText() {
     }
     $edit['keys'] = implode(' ', $keys);
     $this->drupalPostForm('search/node', $edit, t('Search'));
-    $this->assertRaw(t('Your search used too many AND/OR expressions. Only the first @count terms were included in this search.', array('@count' => $limit)));
+    $this->assertRaw(t('Your search used too many AND/OR expressions. Only the first @count terms were included in this search.', ['@count' => $limit]));
 
     // Test that a search on Node or User with no keywords entered generates
     // the "Please enter some keywords" message.
-    $this->drupalPostForm('search/node', array(), t('Search'));
+    $this->drupalPostForm('search/node', [], t('Search'));
     $this->assertText(t('Please enter some keywords'), 'With no keywords entered, message is displayed on node page');
-    $this->drupalPostForm('search/user', array(), t('Search'));
+    $this->drupalPostForm('search/user', [], t('Search'));
     $this->assertText(t('Please enter some keywords'), 'With no keywords entered, message is displayed on user page');
 
     // Make sure the "Please enter some keywords" message is NOT displayed if
     // you use "or" words or phrases in Advanced Search.
-    $this->drupalPostForm('search/node', array('or' => $this->randomMachineName() . ' ' . $this->randomMachineName()), t('Advanced search'));
+    $this->drupalPostForm('search/node', ['or' => $this->randomMachineName() . ' ' . $this->randomMachineName()], t('Advanced search'));
     $this->assertNoText(t('Please enter some keywords'), 'With advanced OR keywords entered, no keywords message is not displayed on node page');
-    $this->drupalPostForm('search/node', array('phrase' => '"' . $this->randomMachineName() . '" "' . $this->randomMachineName() . '"'), t('Advanced search'));
+    $this->drupalPostForm('search/node', ['phrase' => '"' . $this->randomMachineName() . '" "' . $this->randomMachineName() . '"'], t('Advanced search'));
     $this->assertNoText(t('Please enter some keywords'), 'With advanced phrase entered, no keywords message is not displayed on node page');
 
     // Verify that if you search for a too-short keyword, you get the right
     // message, and that if after that you search for a longer keyword, you
     // do not still see the message.
-    $this->drupalPostForm('search/node', array('keys' => $this->randomMachineName(1)), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => $this->randomMachineName(1)], t('Search'));
     $this->assertText('You must include at least one keyword', 'Keyword message is displayed when searching for short word');
     $this->assertNoText(t('Please enter some keywords'), 'With short word entered, no keywords message is not displayed');
-    $this->drupalPostForm(NULL, array('keys' => $this->randomMachineName()), t('Search'));
+    $this->drupalPostForm(NULL, ['keys' => $this->randomMachineName()], t('Search'));
     $this->assertNoText('You must include at least one keyword', 'Keyword message is not displayed when searching for long word after short word search');
 
     // Test that if you search for a URL with .. in it, you still end up at
     // the search page. See issue https://www.drupal.org/node/890058.
-    $this->drupalPostForm('search/node', array('keys' => '../../admin'), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => '../../admin'], t('Search'));
     $this->assertResponse(200, 'Searching for ../../admin with non-admin user does not lead to a 403 error');
     $this->assertText('no results', 'Searching for ../../admin with non-admin user gives you a no search results page');
 
     // Test that if you search for a URL starting with "./", you still end up
     // at the search page. See issue https://www.drupal.org/node/1421560.
-    $this->drupalPostForm('search/node', array('keys' => '.something'), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => '.something'], t('Search'));
     $this->assertResponse(200, 'Searching for .something does not lead to a 403 error');
     $this->assertText('no results', 'Searching for .something gives you a no search results page');
   }
diff --git a/core/modules/search/src/Tests/SearchPreprocessLangcodeTest.php b/core/modules/search/src/Tests/SearchPreprocessLangcodeTest.php
index 38cb350..322ba22 100644
--- a/core/modules/search/src/Tests/SearchPreprocessLangcodeTest.php
+++ b/core/modules/search/src/Tests/SearchPreprocessLangcodeTest.php
@@ -14,7 +14,7 @@ class SearchPreprocessLangcodeTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('search_langcode_test');
+  public static $modules = ['search_langcode_test'];
 
   /**
    * Test node for searching.
@@ -26,12 +26,12 @@ class SearchPreprocessLangcodeTest extends SearchTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $web_user = $this->drupalCreateUser(array(
+    $web_user = $this->drupalCreateUser([
       'create page content',
       'edit own page content',
       'search content',
       'use advanced search',
-    ));
+    ]);
     $this->drupalLogin($web_user);
   }
 
@@ -40,7 +40,7 @@ protected function setUp() {
    */
   function testPreprocessLangcode() {
     // Create a node.
-    $this->node = $this->drupalCreateNode(array('body' => array(array()), 'langcode' => 'en'));
+    $this->node = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'en']);
 
     // First update the index. This does the initial processing.
     $this->container->get('plugin.manager.search')->createInstance('node_search')->updateIndex();
@@ -53,7 +53,7 @@ function testPreprocessLangcode() {
     // Search for the additional text that is added by the preprocess
     // function. If you search for text that is in the node, preprocess is
     // not invoked on the node during the search excerpt generation.
-    $edit = array('or' => 'Additional text');
+    $edit = ['or' => 'Additional text'];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
 
     // Checks if the langcode message has been set by hook_search_preprocess().
@@ -65,11 +65,11 @@ function testPreprocessLangcode() {
    */
   function testPreprocessStemming() {
     // Create a node.
-    $this->node = $this->drupalCreateNode(array(
+    $this->node = $this->drupalCreateNode([
       'title' => 'we are testing',
-      'body' => array(array()),
+      'body' => [[]],
       'langcode' => 'en',
-    ));
+    ]);
 
     // First update the index. This does the initial processing.
     $this->container->get('plugin.manager.search')->createInstance('node_search')->updateIndex();
@@ -80,7 +80,7 @@ function testPreprocessStemming() {
     search_update_totals();
 
     // Search for the title of the node with a POST query.
-    $edit = array('or' => 'testing');
+    $edit = ['or' => 'testing'];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
 
     // Check if the node has been found.
@@ -88,7 +88,7 @@ function testPreprocessStemming() {
     $this->assertText('we are testing');
 
     // Search for the same node using a different query.
-    $edit = array('or' => 'test');
+    $edit = ['or' => 'test'];
     $this->drupalPostForm('search/node', $edit, t('Advanced search'));
 
     // Check if the node has been found.
diff --git a/core/modules/search/src/Tests/SearchQueryAlterTest.php b/core/modules/search/src/Tests/SearchQueryAlterTest.php
index 0cb473f..133b0f3 100644
--- a/core/modules/search/src/Tests/SearchQueryAlterTest.php
+++ b/core/modules/search/src/Tests/SearchQueryAlterTest.php
@@ -13,22 +13,22 @@ class SearchQueryAlterTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('search_query_alter');
+  public static $modules = ['search_query_alter'];
 
   /**
    * Tests that the query alter works.
    */
   function testQueryAlter() {
     // Log in with sufficient privileges.
-    $this->drupalLogin($this->drupalCreateUser(array('create page content', 'search content')));
+    $this->drupalLogin($this->drupalCreateUser(['create page content', 'search content']));
 
     // Create a node and an article with the same keyword. The query alter
     // test module will alter the query so only articles should be returned.
-    $data = array(
+    $data = [
       'type' => 'page',
       'title' => 'test page',
-      'body' => array(array('value' => 'pizza')),
-    );
+      'body' => [['value' => 'pizza']],
+    ];
     $this->drupalCreateNode($data);
 
     $data['type'] = 'article';
@@ -40,7 +40,7 @@ function testQueryAlter() {
     search_update_totals();
 
     // Search for the body keyword 'pizza'.
-    $this->drupalPostForm('search/node', array('keys' => 'pizza'), t('Search'));
+    $this->drupalPostForm('search/node', ['keys' => 'pizza'], t('Search'));
     // The article should be there but not the page.
     $this->assertText('article', 'Article is in search results');
     $this->assertNoText('page', 'Page is not in search results');
diff --git a/core/modules/search/src/Tests/SearchRankingTest.php b/core/modules/search/src/Tests/SearchRankingTest.php
index 2045233..28241d2 100644
--- a/core/modules/search/src/Tests/SearchRankingTest.php
+++ b/core/modules/search/src/Tests/SearchRankingTest.php
@@ -29,7 +29,7 @@ class SearchRankingTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('statistics', 'comment');
+  public static $modules = ['statistics', 'comment'];
 
   protected function setUp() {
     parent::setUp();
@@ -38,7 +38,7 @@ protected function setUp() {
     $this->nodeSearch = SearchPage::load('node_search');
 
     // Log in with sufficient privileges.
-    $this->drupalLogin($this->drupalCreateUser(array('post comments', 'skip comment approval', 'create page content', 'administer search')));
+    $this->drupalLogin($this->drupalCreateUser(['post comments', 'skip comment approval', 'create page content', 'administer search']));
   }
 
   public function testRankings() {
@@ -46,24 +46,24 @@ public function testRankings() {
     $this->addDefaultCommentField('node', 'page');
 
     // Build a list of the rankings to test.
-    $node_ranks = array('sticky', 'promote', 'relevance', 'recent', 'comments', 'views');
+    $node_ranks = ['sticky', 'promote', 'relevance', 'recent', 'comments', 'views'];
 
     // Create nodes for testing.
-    $nodes = array();
+    $nodes = [];
     foreach ($node_ranks as $node_rank) {
-      $settings = array(
+      $settings = [
         'type' => 'page',
-        'comment' => array(array(
+        'comment' => [[
           'status' => CommentItemInterface::HIDDEN,
-        )),
+        ]],
         'title' => 'Drupal rocks',
-        'body' => array(array('value' => "Drupal's search rocks")),
+        'body' => [['value' => "Drupal's search rocks"]],
         // Node is one day old.
         'created' => REQUEST_TIME - 24 * 3600,
         'sticky' => 0,
         'promote' => 0,
-      );
-      foreach (array(0, 1) as $num) {
+      ];
+      foreach ([0, 1] as $num) {
         if ($num == 1) {
           switch ($node_rank) {
             case 'sticky':
@@ -87,7 +87,7 @@ public function testRankings() {
     }
 
     // Add a comment to one of the nodes.
-    $edit = array();
+    $edit = [];
     $edit['subject[0][value]'] = 'my comment title';
     $edit['comment_body[0][value]'] = 'some random comment';
     $this->drupalGet('comment/reply/node/' . $nodes['comments'][1]->id() . '/comment');
@@ -102,7 +102,7 @@ public function testRankings() {
     // counter for this node.
     $nid = $nodes['views'][1]->id();
     db_insert('node_counter')
-      ->fields(array('totalcount' => 5, 'daycount' => 5, 'timestamp' => REQUEST_TIME, 'nid' => $nid))
+      ->fields(['totalcount' => 5, 'daycount' => 5, 'timestamp' => REQUEST_TIME, 'nid' => $nid])
       ->execute();
 
     // Run cron to update the search index and comment/statistics totals.
@@ -118,7 +118,7 @@ public function testRankings() {
     }
 
     // Test each of the possible rankings.
-    $edit = array();
+    $edit = [];
     foreach ($node_ranks as $node_rank) {
       // Enable the ranking we are testing.
       $edit['rankings[' . $node_rank . '][value]'] = 10;
@@ -129,7 +129,7 @@ public function testRankings() {
       // Reload the plugin to get the up-to-date values.
       $this->nodeSearch = SearchPage::load('node_search');
       // Do the search and assert the results.
-      $this->nodeSearch->getPlugin()->setSearch('rocks', array(), array());
+      $this->nodeSearch->getPlugin()->setSearch('rocks', [], []);
       $set = $this->nodeSearch->getPlugin()->execute();
       $this->assertEqual($set[0]['node']->id(), $nodes[$node_rank][1]->id(), 'Search ranking "' . $node_rank . '" order.');
 
@@ -147,14 +147,14 @@ public function testRankings() {
 
     // Try with sticky, then promoted. This is a test for issue
     // https://www.drupal.org/node/771596.
-    $node_ranks = array(
+    $node_ranks = [
       'sticky' => 10,
       'promote' => 1,
       'relevance' => 0,
       'recent' => 0,
       'comments' => 0,
       'views' => 0,
-    );
+    ];
     $configuration = $this->nodeSearch->getPlugin()->getConfiguration();
     foreach ($node_ranks as $var => $value) {
       $configuration['rankings'][$var] = $value;
@@ -164,7 +164,7 @@ public function testRankings() {
 
     // Do the search and assert the results. The sticky node should show up
     // first, then the promoted node, then all the rest.
-    $this->nodeSearch->getPlugin()->setSearch('rocks', array(), array());
+    $this->nodeSearch->getPlugin()->setSearch('rocks', [], []);
     $set = $this->nodeSearch->getPlugin()->execute();
     $this->assertEqual($set[0]['node']->id(), $nodes['sticky'][1]->id(), 'Search ranking for sticky first worked.');
     $this->assertEqual($set[1]['node']->id(), $nodes['promote'][1]->id(), 'Search ranking for promoted second worked.');
@@ -172,14 +172,14 @@ public function testRankings() {
     // Try with recent, then comments. This is a test for issues
     // https://www.drupal.org/node/771596 and
     // https://www.drupal.org/node/303574.
-    $node_ranks = array(
+    $node_ranks = [
       'sticky' => 0,
       'promote' => 0,
       'relevance' => 0,
       'recent' => 10,
       'comments' => 1,
       'views' => 0,
-    );
+    ];
     $configuration = $this->nodeSearch->getPlugin()->getConfiguration();
     foreach ($node_ranks as $var => $value) {
       $configuration['rankings'][$var] = $value;
@@ -189,7 +189,7 @@ public function testRankings() {
 
     // Do the search and assert the results. The recent node should show up
     // first, then the commented node, then all the rest.
-    $this->nodeSearch->getPlugin()->setSearch('rocks', array(), array());
+    $this->nodeSearch->getPlugin()->setSearch('rocks', [], []);
     $set = $this->nodeSearch->getPlugin()->execute();
     $this->assertEqual($set[0]['node']->id(), $nodes['recent'][1]->id(), 'Search ranking for recent first worked.');
     $this->assertEqual($set[1]['node']->id(), $nodes['comments'][1]->id(), 'Search ranking for comments second worked.');
@@ -200,33 +200,33 @@ public function testRankings() {
    * Test rankings of HTML tags.
    */
   public function testHTMLRankings() {
-    $full_html_format = FilterFormat::create(array(
+    $full_html_format = FilterFormat::create([
       'format' => 'full_html',
       'name' => 'Full HTML',
-    ));
+    ]);
     $full_html_format->save();
 
     // Test HTML tags with different weights.
-    $sorted_tags = array('h1', 'h2', 'h3', 'h4', 'a', 'h5', 'h6', 'notag');
+    $sorted_tags = ['h1', 'h2', 'h3', 'h4', 'a', 'h5', 'h6', 'notag'];
     $shuffled_tags = $sorted_tags;
 
     // Shuffle tags to ensure HTML tags are ranked properly.
     shuffle($shuffled_tags);
-    $settings = array(
+    $settings = [
       'type' => 'page',
       'title' => 'Simple node',
-    );
-    $nodes = array();
+    ];
+    $nodes = [];
     foreach ($shuffled_tags as $tag) {
       switch ($tag) {
         case 'a':
-          $settings['body'] = array(array('value' => \Drupal::l('Drupal Rocks', new Url('<front>')), 'format' => 'full_html'));
+          $settings['body'] = [['value' => \Drupal::l('Drupal Rocks', new Url('<front>')), 'format' => 'full_html']];
           break;
         case 'notag':
-          $settings['body'] = array(array('value' => 'Drupal Rocks'));
+          $settings['body'] = [['value' => 'Drupal Rocks']];
           break;
         default:
-          $settings['body'] = array(array('value' => "<$tag>Drupal Rocks</$tag>", 'format' => 'full_html'));
+          $settings['body'] = [['value' => "<$tag>Drupal Rocks</$tag>", 'format' => 'full_html']];
           break;
       }
       $nodes[$tag] = $this->drupalCreateNode($settings);
@@ -236,7 +236,7 @@ public function testHTMLRankings() {
     $this->nodeSearch->getPlugin()->updateIndex();
     search_update_totals();
 
-    $this->nodeSearch->getPlugin()->setSearch('rocks', array(), array());
+    $this->nodeSearch->getPlugin()->setSearch('rocks', [], []);
     // Do the search and assert the results.
     $set = $this->nodeSearch->getPlugin()->execute();
 
@@ -252,16 +252,16 @@ public function testHTMLRankings() {
     }
 
     // Test tags with the same weight against the sorted tags.
-    $unsorted_tags = array('u', 'b', 'i', 'strong', 'em');
+    $unsorted_tags = ['u', 'b', 'i', 'strong', 'em'];
     foreach ($unsorted_tags as $tag) {
-      $settings['body'] = array(array('value' => "<$tag>Drupal Rocks</$tag>", 'format' => 'full_html'));
+      $settings['body'] = [['value' => "<$tag>Drupal Rocks</$tag>", 'format' => 'full_html']];
       $node = $this->drupalCreateNode($settings);
 
       // Update the search index.
       $this->nodeSearch->getPlugin()->updateIndex();
       search_update_totals();
 
-      $this->nodeSearch->getPlugin()->setSearch('rocks', array(), array());
+      $this->nodeSearch->getPlugin()->setSearch('rocks', [], []);
       // Do the search and assert the results.
       $set = $this->nodeSearch->getPlugin()->execute();
 
diff --git a/core/modules/search/src/Tests/SearchTestBase.php b/core/modules/search/src/Tests/SearchTestBase.php
index 59f6c45..1c157b6 100644
--- a/core/modules/search/src/Tests/SearchTestBase.php
+++ b/core/modules/search/src/Tests/SearchTestBase.php
@@ -18,15 +18,15 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'search', 'dblog');
+  public static $modules = ['node', 'search', 'dblog'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
@@ -71,13 +71,13 @@ protected function submitGetForm($path, $edit, $submit, $form_html_id = NULL) {
       foreach ($forms as $form) {
         // Try to set the fields of this form as specified in $edit.
         $edit = $edit_save;
-        $post = array();
-        $upload = array();
+        $post = [];
+        $upload = [];
         $submit_matches = $this->handleForm($post, $edit, $upload, $submit, $form);
         if (!$edit && $submit_matches) {
           // Everything matched, so "submit" the form.
           $action = isset($form['action']) ? $this->getAbsoluteUrl((string) $form['action']) : NULL;
-          $this->drupalGet($action, array('query' => $post));
+          $this->drupalGet($action, ['query' => $post]);
           return;
         }
       }
@@ -85,10 +85,10 @@ protected function submitGetForm($path, $edit, $submit, $form_html_id = NULL) {
       // We have not found a form which contained all fields of $edit and
       // the submit button.
       foreach ($edit as $name => $value) {
-        $this->fail(SafeMarkup::format('Failed to set field @name to @value', array('@name' => $name, '@value' => $value)));
+        $this->fail(SafeMarkup::format('Failed to set field @name to @value', ['@name' => $name, '@value' => $value]));
       }
-      $this->assertTrue($submit_matches, format_string('Found the @submit button', array('@submit' => $submit)));
-      $this->fail(format_string('Found the requested form fields at @path', array('@path' => $path)));
+      $this->assertTrue($submit_matches, format_string('Found the @submit button', ['@submit' => $submit]));
+      $this->fail(format_string('Found the requested form fields at @path', ['@path' => $path]));
     }
   }
 
diff --git a/core/modules/search/tests/modules/search_embedded_form/src/Form/SearchEmbeddedForm.php b/core/modules/search/tests/modules/search_embedded_form/src/Form/SearchEmbeddedForm.php
index 29c047d..64d9418 100644
--- a/core/modules/search/tests/modules/search_embedded_form/src/Form/SearchEmbeddedForm.php
+++ b/core/modules/search/tests/modules/search_embedded_form/src/Form/SearchEmbeddedForm.php
@@ -23,20 +23,20 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $count = \Drupal::state()->get('search_embedded_form.submit_count');
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Your name'),
       '#maxlength' => 255,
       '#default_value' => '',
       '#required' => TRUE,
-      '#description' => $this->t('Times form has been submitted: %count', array('%count' => $count)),
-    );
+      '#description' => $this->t('Times form has been submitted: %count', ['%count' => $count]),
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Send away'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/search/tests/modules/search_extra_type/src/Plugin/Search/SearchExtraTypeSearch.php b/core/modules/search/tests/modules/search_extra_type/src/Plugin/Search/SearchExtraTypeSearch.php
index d02fd81..d18ff1c 100644
--- a/core/modules/search/tests/modules/search_extra_type/src/Plugin/Search/SearchExtraTypeSearch.php
+++ b/core/modules/search/tests/modules/search_extra_type/src/Plugin/Search/SearchExtraTypeSearch.php
@@ -50,18 +50,18 @@ public function isSearchExecutable() {
    *   A structured list of search results
    */
   public function execute() {
-    $results = array();
+    $results = [];
     if (!$this->isSearchExecutable()) {
       return $results;
     }
-    return array(
-      array(
+    return [
+      [
         'link' => Url::fromRoute('test_page_test.test_page')->toString(),
         'type' => 'Dummy result type',
         'title' => 'Dummy title',
         'snippet' => SafeMarkup::format("Dummy search snippet to display. Keywords: @keywords\n\nConditions: @search_parameters", ['@keywords' => $this->keywords, '@search_parameters' => print_r($this->searchParameters, TRUE)]),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -72,15 +72,15 @@ public function buildResults() {
     $output['prefix']['#markup'] = '<h2>Test page text is here</h2> <ol class="search-results">';
 
     foreach ($results as $entry) {
-      $output[] = array(
+      $output[] = [
         '#theme' => 'search_result',
         '#result' => $entry,
         '#plugin_id' => 'search_extra_type_search',
-      );
+      ];
     }
-    $pager = array(
+    $pager = [
       '#type' => 'pager',
-    );
+    ];
     $output['suffix']['#markup'] = '</ol>' . drupal_render($pager);
 
     return $output;
@@ -91,21 +91,21 @@ public function buildResults() {
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     // Output form for defining rank factor weights.
-    $form['extra_type_settings'] = array(
+    $form['extra_type_settings'] = [
       '#type' => 'fieldset',
       '#title' => t('Extra type settings'),
       '#tree' => TRUE,
-    );
+    ];
 
-    $form['extra_type_settings']['boost'] = array(
+    $form['extra_type_settings']['boost'] = [
       '#type' => 'select',
       '#title' => t('Boost method'),
-      '#options' => array(
+      '#options' => [
         'bi' => t('Bistromathic'),
         'ii' => t('Infinite Improbability'),
-      ),
+      ],
       '#default_value' => $this->configuration['boost'],
-    );
+    ];
     return $form;
   }
 
@@ -113,16 +113,16 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
    * {@inheritdoc}
    */
   public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
-    $this->configuration['boost'] = $form_state->getValue(array('extra_type_settings', 'boost'));
+    $this->configuration['boost'] = $form_state->getValue(['extra_type_settings', 'boost']);
   }
 
   /**
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'boost' => 'bi',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/search/tests/src/Functional/SearchCommentCountToggleTest.php b/core/modules/search/tests/src/Functional/SearchCommentCountToggleTest.php
index a6bf35e..14ae557 100644
--- a/core/modules/search/tests/src/Functional/SearchCommentCountToggleTest.php
+++ b/core/modules/search/tests/src/Functional/SearchCommentCountToggleTest.php
@@ -26,7 +26,7 @@ class SearchCommentCountToggleTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment');
+  public static $modules = ['node', 'comment'];
 
   /**
    * A user with permission to search and post comments.
@@ -46,7 +46,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create searching user.
-    $this->searchingUser = $this->drupalCreateUser(array('search content', 'access content', 'access comments', 'post comments', 'skip comment approval'));
+    $this->searchingUser = $this->drupalCreateUser(['search content', 'access content', 'access comments', 'post comments', 'skip comment approval']);
 
     // Log in with sufficient privileges.
     $this->drupalLogin($this->searchingUser);
@@ -54,13 +54,13 @@ protected function setUp() {
     // Add a comment field.
     $this->addDefaultCommentField('node', 'article');
     // Create initial nodes.
-    $node_params = array('type' => 'article', 'body' => array(array('value' => 'SearchCommentToggleTestCase')));
+    $node_params = ['type' => 'article', 'body' => [['value' => 'SearchCommentToggleTestCase']]];
 
     $this->searchableNodes['1 comment'] = $this->drupalCreateNode($node_params);
     $this->searchableNodes['0 comments'] = $this->drupalCreateNode($node_params);
 
     // Create a comment array
-    $edit_comment = array();
+    $edit_comment = [];
     $edit_comment['subject[0][value]'] = $this->randomMachineName();
     $edit_comment['comment_body[0][value]'] = $this->randomMachineName();
 
@@ -81,9 +81,9 @@ protected function setUp() {
    */
   function testSearchCommentCountToggle() {
     // Search for the nodes by string in the node body.
-    $edit = array(
+    $edit = [
       'keys' => "'SearchCommentToggleTestCase'",
-    );
+    ];
     $this->drupalGet('search/node');
 
     // Test comment count display for nodes with comment status set to Open
diff --git a/core/modules/search/tests/src/Functional/SearchExactTest.php b/core/modules/search/tests/src/Functional/SearchExactTest.php
index 6280364..ca876ae 100644
--- a/core/modules/search/tests/src/Functional/SearchExactTest.php
+++ b/core/modules/search/tests/src/Functional/SearchExactTest.php
@@ -13,25 +13,25 @@ class SearchExactTest extends SearchTestBase {
    */
   function testExactQuery() {
     // Log in with sufficient privileges.
-    $user = $this->drupalCreateUser(array('create page content', 'search content'));
+    $user = $this->drupalCreateUser(['create page content', 'search content']);
     $this->drupalLogin($user);
 
-    $settings = array(
+    $settings = [
       'type' => 'page',
       'title' => 'Simple Node',
-    );
+    ];
     // Create nodes with exact phrase.
     for ($i = 0; $i <= 17; $i++) {
-      $settings['body'] = array(array('value' => 'love pizza'));
+      $settings['body'] = [['value' => 'love pizza']];
       $this->drupalCreateNode($settings);
     }
     // Create nodes containing keywords.
     for ($i = 0; $i <= 17; $i++) {
-      $settings['body'] = array(array('value' => 'love cheesy pizza'));
+      $settings['body'] = [['value' => 'love cheesy pizza']];
       $this->drupalCreateNode($settings);
     }
     // Create another node and save it for later.
-    $settings['body'] = array(array('value' => 'Druplicon'));
+    $settings['body'] = [['value' => 'Druplicon']];
     $node = $this->drupalCreateNode($settings);
 
     // Update the search index.
@@ -42,7 +42,7 @@ function testExactQuery() {
     $this->refreshVariables();
 
     // Test that the correct number of pager links are found for keyword search.
-    $edit = array('keys' => 'love pizza');
+    $edit = ['keys' => 'love pizza'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertLinkByHref('page=1', 0, '2nd page link is found for keyword search.');
     $this->assertLinkByHref('page=2', 0, '3rd page link is found for keyword search.');
@@ -50,7 +50,7 @@ function testExactQuery() {
     $this->assertNoLinkByHref('page=4', '5th page link is not found for keyword search.');
 
     // Test that the correct number of pager links are found for exact phrase search.
-    $edit = array('keys' => '"love pizza"');
+    $edit = ['keys' => '"love pizza"'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertLinkByHref('page=1', 0, '2nd page link is found for exact phrase search.');
     $this->assertNoLinkByHref('page=2', '3rd page link is not found for exact phrase search.');
@@ -60,7 +60,7 @@ function testExactQuery() {
     $node_type_config->set('display_submitted', TRUE);
     $node_type_config->save();
 
-    $edit = array('keys' => 'Druplicon');
+    $edit = ['keys' => 'Druplicon'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText($user->getUsername(), 'Basic page node displays author name when post settings are on.');
     $this->assertText(format_date($node->getChangedTime(), 'short'), 'Basic page node displays post date when post settings are on.');
@@ -69,7 +69,7 @@ function testExactQuery() {
     // information is not displayed.
     $node_type_config->set('display_submitted', FALSE);
     $node_type_config->save();
-    $edit = array('keys' => 'Druplicon');
+    $edit = ['keys' => 'Druplicon'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertNoText($user->getUsername(), 'Basic page node does not display author name when post settings are off.');
     $this->assertNoText(format_date($node->getChangedTime(), 'short'), 'Basic page node does not display post date when post settings are off.');
diff --git a/core/modules/search/tests/src/Functional/SearchKeywordsConditionsTest.php b/core/modules/search/tests/src/Functional/SearchKeywordsConditionsTest.php
index a75fcb5..287596a 100644
--- a/core/modules/search/tests/src/Functional/SearchKeywordsConditionsTest.php
+++ b/core/modules/search/tests/src/Functional/SearchKeywordsConditionsTest.php
@@ -20,7 +20,7 @@ class SearchKeywordsConditionsTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment', 'search_extra_type', 'test_page_test');
+  public static $modules = ['comment', 'search_extra_type', 'test_page_test'];
 
   /**
    * A user with permission to search and post comments.
@@ -33,7 +33,7 @@ protected function setUp() {
     parent::setUp();
 
     // Create searching user.
-    $this->searchingUser = $this->drupalCreateUser(array('search content', 'access content', 'access comments', 'skip comment approval'));
+    $this->searchingUser = $this->drupalCreateUser(['search content', 'access content', 'access comments', 'skip comment approval']);
     // Log in with sufficient privileges.
     $this->drupalLogin($this->searchingUser);
   }
@@ -47,16 +47,16 @@ function testSearchKeywordsConditions() {
     $this->assertNoText('Dummy search snippet to display');
     // With keys - get results.
     $keys = 'bike shed ' . $this->randomMachineName();
-    $this->drupalGet("search/dummy_path", array('query' => array('keys' => $keys)));
+    $this->drupalGet("search/dummy_path", ['query' => ['keys' => $keys]]);
     $this->assertText("Dummy search snippet to display. Keywords: {$keys}");
     $keys = 'blue drop ' . $this->randomMachineName();
-    $this->drupalGet("search/dummy_path", array('query' => array('keys' => $keys)));
+    $this->drupalGet("search/dummy_path", ['query' => ['keys' => $keys]]);
     $this->assertText("Dummy search snippet to display. Keywords: {$keys}");
     // Add some conditions and keys.
     $keys = 'moving drop ' . $this->randomMachineName();
-    $this->drupalGet("search/dummy_path", array('query' => array('keys' => 'bike', 'search_conditions' => $keys)));
+    $this->drupalGet("search/dummy_path", ['query' => ['keys' => 'bike', 'search_conditions' => $keys]]);
     $this->assertText("Dummy search snippet to display.");
-    $this->assertRaw(Html::escape(print_r(array('keys' => 'bike', 'search_conditions' => $keys), TRUE)));
+    $this->assertRaw(Html::escape(print_r(['keys' => 'bike', 'search_conditions' => $keys], TRUE)));
   }
 
 }
diff --git a/core/modules/search/tests/src/Functional/SearchMultilingualEntityTest.php b/core/modules/search/tests/src/Functional/SearchMultilingualEntityTest.php
index faaa93f..717ffc5 100644
--- a/core/modules/search/tests/src/Functional/SearchMultilingualEntityTest.php
+++ b/core/modules/search/tests/src/Functional/SearchMultilingualEntityTest.php
@@ -17,7 +17,7 @@ class SearchMultilingualEntityTest extends SearchTestBase {
    *
    * @var \Drupal\node\NodeInterface[]
    */
-  protected $searchableNodes = array();
+  protected $searchableNodes = [];
 
   /**
    * Node search plugin.
@@ -26,14 +26,14 @@ class SearchMultilingualEntityTest extends SearchTestBase {
    */
   protected $plugin;
 
-  public static $modules = array('language', 'locale', 'comment');
+  public static $modules = ['language', 'locale', 'comment'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a user who can administer search, do searches, see the status
     // report, and administer cron. Log in.
-    $user = $this->drupalCreateUser(array('administer search', 'search content', 'use advanced search', 'access content', 'access site reports', 'administer site configuration'));
+    $user = $this->drupalCreateUser(['administer search', 'search content', 'use advanced search', 'access content', 'access site reports', 'administer site configuration']);
     $this->drupalLogin($user);
 
     // Set up the search plugin.
@@ -56,53 +56,53 @@ protected function setUp() {
 
     // Create a few page nodes with multilingual body values.
     $default_format = filter_default_format();
-    $nodes = array(
-      array(
+    $nodes = [
+      [
         'title' => 'First node en',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'en',
-      ),
-      array(
+      ],
+      [
         'title' => 'Second node this is the English title',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'en',
-      ),
-      array(
+      ],
+      [
         'title' => 'Third node en',
         'type' => 'page',
-        'body' => array(array('value' => $this->randomMachineName(32), 'format' => $default_format)),
+        'body' => [['value' => $this->randomMachineName(32), 'format' => $default_format]],
         'langcode' => 'en',
-      ),
+      ],
       // After the third node, we don't care what the settings are. But we
       // need to have at least 5 to make sure the throttling is working
       // correctly. So, let's make 8 total.
-      array(
-      ),
-      array(
-      ),
-      array(
-      ),
-      array(
-      ),
-      array(
-      ),
-    );
-    $this->searchableNodes = array();
+      [
+      ],
+      [
+      ],
+      [
+      ],
+      [
+      ],
+      [
+      ],
+    ];
+    $this->searchableNodes = [];
     foreach ($nodes as $setting) {
       $this->searchableNodes[] = $this->drupalCreateNode($setting);
     }
 
     // Add a single translation to the second node.
-    $translation = $this->searchableNodes[1]->addTranslation('hu', array('title' => 'Second node hu'));
+    $translation = $this->searchableNodes[1]->addTranslation('hu', ['title' => 'Second node hu']);
     $translation->body->value = $this->randomMachineName(32);
     $this->searchableNodes[1]->save();
 
     // Add two translations to the third node.
-    $translation = $this->searchableNodes[2]->addTranslation('hu', array('title' => 'Third node this is the Hungarian title'));
+    $translation = $this->searchableNodes[2]->addTranslation('hu', ['title' => 'Third node this is the Hungarian title']);
     $translation->body->value = $this->randomMachineName(32);
-    $translation = $this->searchableNodes[2]->addTranslation('sv', array('title' => 'Third node sv'));
+    $translation = $this->searchableNodes[2]->addTranslation('sv', ['title' => 'Third node sv']);
     $translation->body->value = $this->randomMachineName(32);
     $this->searchableNodes[2]->save();
 
@@ -132,7 +132,7 @@ function testMultilingualSearch() {
 
     // Now index the rest of the nodes.
     // Make sure index throttle is high enough, via the UI.
-    $this->drupalPostForm('admin/config/search/pages', array('cron_limit' => 20), t('Save configuration'));
+    $this->drupalPostForm('admin/config/search/pages', ['cron_limit' => 20], t('Save configuration'));
     $this->assertEqual(20, $this->config('search.settings')->get('index.cron_limit', 100), 'Config setting was saved correctly');
     // Get a new search plugin, to make sure it has this setting.
     $this->plugin = $this->container->get('plugin.manager.search')->createInstance('node_search');
@@ -143,8 +143,8 @@ function testMultilingualSearch() {
     $this->assertDatabaseCounts(8, 0, 'after updating fully');
 
     // Click the reindex button on the admin page, verify counts, and reindex.
-    $this->drupalPostForm('admin/config/search/pages', array(), t('Re-index site'));
-    $this->drupalPostForm(NULL, array(), t('Re-index site'));
+    $this->drupalPostForm('admin/config/search/pages', [], t('Re-index site'));
+    $this->drupalPostForm(NULL, [], t('Re-index site'));
     $this->assertIndexCounts(8, 8, 'after reindex');
     $this->assertDatabaseCounts(8, 0, 'after reindex');
     $this->plugin->updateIndex();
@@ -153,30 +153,30 @@ function testMultilingualSearch() {
     // Test search results.
 
     // This should find two results for the second and third node.
-    $this->plugin->setSearch('English OR Hungarian', array(), array());
+    $this->plugin->setSearch('English OR Hungarian', [], []);
     $search_result = $this->plugin->execute();
     $this->assertEqual(count($search_result), 2, 'Found two results.');
     // Nodes are saved directly after each other and have the same created time
     // so testing for the order is not possible.
-    $results = array($search_result[0]['title'], $search_result[1]['title']);
+    $results = [$search_result[0]['title'], $search_result[1]['title']];
     $this->assertTrue(in_array('Third node this is the Hungarian title', $results), 'The search finds the correct Hungarian title.');
     $this->assertTrue(in_array('Second node this is the English title', $results), 'The search finds the correct English title.');
 
     // Now filter for Hungarian results only.
-    $this->plugin->setSearch('English OR Hungarian', array('f' => array('language:hu')), array());
+    $this->plugin->setSearch('English OR Hungarian', ['f' => ['language:hu']], []);
     $search_result = $this->plugin->execute();
 
     $this->assertEqual(count($search_result), 1, 'The search found only one result');
     $this->assertEqual($search_result[0]['title'], 'Third node this is the Hungarian title', 'The search finds the correct Hungarian title.');
 
     // Test for search with common key word across multiple languages.
-    $this->plugin->setSearch('node', array(), array());
+    $this->plugin->setSearch('node', [], []);
     $search_result = $this->plugin->execute();
 
     $this->assertEqual(count($search_result), 6, 'The search found total six results');
 
     // Test with language filters and common key word.
-    $this->plugin->setSearch('node', array('f' => array('language:hu')), array());
+    $this->plugin->setSearch('node', ['f' => ['language:hu']], []);
     $search_result = $this->plugin->execute();
 
     $this->assertEqual(count($search_result), 2, 'The search found 2 results');
@@ -207,14 +207,14 @@ function testMultilingualSearch() {
     $current = REQUEST_TIME;
     $old = $current - 10;
     db_update('search_dataset')
-      ->fields(array('reindex' => $old))
+      ->fields(['reindex' => $old])
       ->condition('reindex', $current, '>=')
       ->execute();
 
     // Save the node again. Verify that the request time on it is not updated.
     $this->searchableNodes[1]->save();
     $result = db_select('search_dataset', 'd')
-      ->fields('d', array('reindex'))
+      ->fields('d', ['reindex'])
       ->condition('type', 'node_search')
       ->condition('sid', $this->searchableNodes[1]->id())
       ->execute()
@@ -302,7 +302,7 @@ protected function assertIndexCounts($remaining, $total, $message) {
   protected function assertDatabaseCounts($count_node, $count_foo, $message) {
     // Count number of distinct nodes by ID.
     $results = db_select('search_dataset', 'i')
-      ->fields('i', array('sid'))
+      ->fields('i', ['sid'])
       ->condition('type', 'node_search')
       ->groupBy('sid')
       ->execute()
@@ -311,7 +311,7 @@ protected function assertDatabaseCounts($count_node, $count_foo, $message) {
 
     // Count number of "foo" records.
     $results = db_select('search_dataset', 'i')
-      ->fields('i', array('sid'))
+      ->fields('i', ['sid'])
       ->condition('type', 'foo')
       ->execute()
       ->fetchCol();
diff --git a/core/modules/search/tests/src/Functional/SearchNodeDiacriticsTest.php b/core/modules/search/tests/src/Functional/SearchNodeDiacriticsTest.php
index 27baa4b..32aa102 100644
--- a/core/modules/search/tests/src/Functional/SearchNodeDiacriticsTest.php
+++ b/core/modules/search/tests/src/Functional/SearchNodeDiacriticsTest.php
@@ -21,7 +21,7 @@ protected function setUp() {
     node_access_rebuild();
 
     // Create a test user and log in.
-    $this->testUser = $this->drupalCreateUser(array('access content', 'search content', 'use advanced search', 'access user profiles'));
+    $this->testUser = $this->drupalCreateUser(['access content', 'search content', 'use advanced search', 'access user profiles']);
     $this->drupalLogin($this->testUser);
   }
 
@@ -31,7 +31,7 @@ protected function setUp() {
   function testPhraseSearchPunctuation() {
     $body_text = 'The Enricþment Center is cómmīŦŧęđ to the well BɆĬŇĜ of æll påŔťıçȉpǎǹţș. ';
     $body_text .= 'Also meklēt (see #731298)';
-    $this->drupalCreateNode(array('body' => array(array('value' => $body_text))));
+    $this->drupalCreateNode(['body' => [['value' => $body_text]]]);
 
     // Update the search index.
     $this->container->get('plugin.manager.search')->createInstance('node_search')->updateIndex();
@@ -40,39 +40,39 @@ function testPhraseSearchPunctuation() {
     // Refresh variables after the treatment.
     $this->refreshVariables();
 
-    $edit = array('keys' => 'meklet');
+    $edit = ['keys' => 'meklet'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>meklēt</strong>');
 
-    $edit = array('keys' => 'meklēt');
+    $edit = ['keys' => 'meklēt'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>meklēt</strong>');
 
-    $edit = array('keys' => 'cómmīŦŧęđ BɆĬŇĜ påŔťıçȉpǎǹţș');
+    $edit = ['keys' => 'cómmīŦŧęđ BɆĬŇĜ påŔťıçȉpǎǹţș'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>cómmīŦŧęđ</strong>');
     $this->assertRaw('<strong>BɆĬŇĜ</strong>');
     $this->assertRaw('<strong>påŔťıçȉpǎǹţș</strong>');
 
-    $edit = array('keys' => 'committed being participants');
+    $edit = ['keys' => 'committed being participants'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>cómmīŦŧęđ</strong>');
     $this->assertRaw('<strong>BɆĬŇĜ</strong>');
     $this->assertRaw('<strong>påŔťıçȉpǎǹţș</strong>');
 
-    $edit = array('keys' => 'Enricþment');
+    $edit = ['keys' => 'Enricþment'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>Enricþment</strong>');
 
-    $edit = array('keys' => 'Enritchment');
+    $edit = ['keys' => 'Enritchment'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertNoRaw('<strong>Enricþment</strong>');
 
-    $edit = array('keys' => 'æll');
+    $edit = ['keys' => 'æll'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertRaw('<strong>æll</strong>');
 
-    $edit = array('keys' => 'all');
+    $edit = ['keys' => 'all'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertNoRaw('<strong>æll</strong>');
   }
diff --git a/core/modules/search/tests/src/Functional/SearchNodePunctuationTest.php b/core/modules/search/tests/src/Functional/SearchNodePunctuationTest.php
index 0d0a129..8c8958c 100644
--- a/core/modules/search/tests/src/Functional/SearchNodePunctuationTest.php
+++ b/core/modules/search/tests/src/Functional/SearchNodePunctuationTest.php
@@ -21,7 +21,7 @@ protected function setUp() {
     node_access_rebuild();
 
     // Create a test user and log in.
-    $this->testUser = $this->drupalCreateUser(array('access content', 'search content', 'use advanced search', 'access user profiles'));
+    $this->testUser = $this->drupalCreateUser(['access content', 'search content', 'use advanced search', 'access user profiles']);
     $this->drupalLogin($this->testUser);
   }
 
@@ -29,8 +29,8 @@ protected function setUp() {
    * Tests that search works with punctuation and HTML entities.
    */
   function testPhraseSearchPunctuation() {
-    $node = $this->drupalCreateNode(array('body' => array(array('value' => "The bunny's ears were fluffy."))));
-    $node2 = $this->drupalCreateNode(array('body' => array(array('value' => 'Dignissim Aliquam &amp; Quieligo meus natu quae quia te. Damnum&copy; erat&mdash; neo pneum. Facilisi feugiat ibidem ratis.'))));
+    $node = $this->drupalCreateNode(['body' => [['value' => "The bunny's ears were fluffy."]]]);
+    $node2 = $this->drupalCreateNode(['body' => [['value' => 'Dignissim Aliquam &amp; Quieligo meus natu quae quia te. Damnum&copy; erat&mdash; neo pneum. Facilisi feugiat ibidem ratis.']]]);
 
     // Update the search index.
     $this->container->get('plugin.manager.search')->createInstance('node_search')->updateIndex();
@@ -40,7 +40,7 @@ function testPhraseSearchPunctuation() {
     $this->refreshVariables();
 
     // Submit a phrase wrapped in double quotes to include the punctuation.
-    $edit = array('keys' => '"bunny\'s"');
+    $edit = ['keys' => '"bunny\'s"'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertText($node->label());
 
@@ -49,12 +49,12 @@ function testPhraseSearchPunctuation() {
     $this->assertLink($username);
 
     // Search for "&" and verify entities are not broken up in the output.
-    $edit = array('keys' => '&');
+    $edit = ['keys' => '&'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertNoRaw('<strong>&</strong>amp;');
     $this->assertText('You must include at least one keyword');
 
-    $edit = array('keys' => '&amp;');
+    $edit = ['keys' => '&amp;'];
     $this->drupalPostForm('search/node', $edit, t('Search'));
     $this->assertNoRaw('<strong>&</strong>amp;');
     $this->assertText('You must include at least one keyword');
diff --git a/core/modules/search/tests/src/Functional/SearchPageOverrideTest.php b/core/modules/search/tests/src/Functional/SearchPageOverrideTest.php
index 88edab1..fe6e980 100644
--- a/core/modules/search/tests/src/Functional/SearchPageOverrideTest.php
+++ b/core/modules/search/tests/src/Functional/SearchPageOverrideTest.php
@@ -17,7 +17,7 @@ class SearchPageOverrideTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('search_extra_type');
+  public static $modules = ['search_extra_type'];
 
   /**
    * A user with permission to administer search.
@@ -30,13 +30,13 @@ protected function setUp() {
     parent::setUp();
 
     // Log in as a user that can create and search content.
-    $this->searchUser = $this->drupalCreateUser(array('search content', 'administer search'));
+    $this->searchUser = $this->drupalCreateUser(['search content', 'administer search']);
     $this->drupalLogin($this->searchUser);
   }
 
   function testSearchPageHook() {
     $keys = 'bike shed ' . $this->randomMachineName();
-    $this->drupalGet("search/dummy_path", array('query' => array('keys' => $keys)));
+    $this->drupalGet("search/dummy_path", ['query' => ['keys' => $keys]]);
     $this->assertText('Dummy search snippet', 'Dummy search snippet is shown');
     $this->assertText('Test page text is here', 'Page override is working');
   }
diff --git a/core/modules/search/tests/src/Functional/SearchSetLocaleTest.php b/core/modules/search/tests/src/Functional/SearchSetLocaleTest.php
index 4291598..f6923f4 100644
--- a/core/modules/search/tests/src/Functional/SearchSetLocaleTest.php
+++ b/core/modules/search/tests/src/Functional/SearchSetLocaleTest.php
@@ -14,7 +14,7 @@ class SearchSetLocaleTest extends SearchTestBase {
    *
    * @var array
    */
-  public static $modules = array('comment');
+  public static $modules = ['comment'];
 
   /**
    * A node search plugin instance.
@@ -29,7 +29,7 @@ protected function setUp() {
     // Create a plugin instance.
     $this->nodeSearchPlugin = $this->container->get('plugin.manager.search')->createInstance('node_search');
     // Create a node with a very simple body.
-    $this->drupalCreateNode(array('body' => array(array('value' => 'tapir'))));
+    $this->drupalCreateNode(['body' => [['value' => 'tapir']]]);
     // Update the search index.
     $this->nodeSearchPlugin->updateIndex();
     search_update_totals();
@@ -41,7 +41,7 @@ protected function setUp() {
   public function testSearchWithNumericLocale() {
     // French decimal point is comma.
     setlocale(LC_NUMERIC, 'fr_FR');
-    $this->nodeSearchPlugin->setSearch('tapir', array(), array());
+    $this->nodeSearchPlugin->setSearch('tapir', [], []);
     // The call to execute will throw an exception if a float in the wrong
     // format is passed in the query to the database, so an assertion is not
     // necessary here.
diff --git a/core/modules/search/tests/src/Functional/SearchSimplifyTest.php b/core/modules/search/tests/src/Functional/SearchSimplifyTest.php
index 6e7bb84..a70b65e 100644
--- a/core/modules/search/tests/src/Functional/SearchSimplifyTest.php
+++ b/core/modules/search/tests/src/Functional/SearchSimplifyTest.php
@@ -22,7 +22,7 @@ function testSearchSimplifyUnicode() {
     // verify that simplification doesn't lose any characters.
     $input = file_get_contents(\Drupal::root() . '/core/modules/search/tests/UnicodeTest.txt');
     $basestrings = explode(chr(10), $input);
-    $strings = array();
+    $strings = [];
     foreach ($basestrings as $key => $string) {
       if ($key % 2) {
         // Even line - should simplify down to a space.
@@ -65,12 +65,12 @@ function testSearchSimplifyUnicode() {
    * Tests that search_simplify() does the right thing with punctuation.
    */
   function testSearchSimplifyPunctuation() {
-    $cases = array(
-      array('20.03/94-28,876', '20039428876', 'Punctuation removed from numbers'),
-      array('great...drupal--module', 'great drupal module', 'Multiple dot and dashes are word boundaries'),
-      array('very_great-drupal.module', 'verygreatdrupalmodule', 'Single dot, dash, underscore are removed'),
-      array('regular,punctuation;word', 'regular punctuation word', 'Punctuation is a word boundary'),
-    );
+    $cases = [
+      ['20.03/94-28,876', '20039428876', 'Punctuation removed from numbers'],
+      ['great...drupal--module', 'great drupal module', 'Multiple dot and dashes are word boundaries'],
+      ['very_great-drupal.module', 'verygreatdrupalmodule', 'Single dot, dash, underscore are removed'],
+      ['regular,punctuation;word', 'regular punctuation word', 'Punctuation is a word boundary'],
+    ];
 
     foreach ($cases as $case) {
       $out = trim(search_simplify($case[0]));
diff --git a/core/modules/search/tests/src/Functional/SearchTestBase.php b/core/modules/search/tests/src/Functional/SearchTestBase.php
index 93e0ee2..3739b57 100644
--- a/core/modules/search/tests/src/Functional/SearchTestBase.php
+++ b/core/modules/search/tests/src/Functional/SearchTestBase.php
@@ -15,15 +15,15 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'search', 'dblog');
+  public static $modules = ['node', 'search', 'dblog'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
@@ -68,13 +68,13 @@ protected function submitGetForm($path, $edit, $submit, $form_html_id = NULL) {
       foreach ($forms as $form) {
         // Try to set the fields of this form as specified in $edit.
         $edit = $edit_save;
-        $post = array();
-        $upload = array();
+        $post = [];
+        $upload = [];
         $submit_matches = $this->handleForm($post, $edit, $upload, $submit, $form);
         if (!$edit && $submit_matches) {
           // Everything matched, so "submit" the form.
           $action = isset($form['action']) ? $this->getAbsoluteUrl((string) $form['action']) : NULL;
-          $this->drupalGet($action, array('query' => $post));
+          $this->drupalGet($action, ['query' => $post]);
           return;
         }
       }
@@ -82,10 +82,10 @@ protected function submitGetForm($path, $edit, $submit, $form_html_id = NULL) {
       // We have not found a form which contained all fields of $edit and
       // the submit button.
       foreach ($edit as $name => $value) {
-        $this->fail(SafeMarkup::format('Failed to set field @name to @value', array('@name' => $name, '@value' => $value)));
+        $this->fail(SafeMarkup::format('Failed to set field @name to @value', ['@name' => $name, '@value' => $value]));
       }
-      $this->assertTrue($submit_matches, format_string('Found the @submit button', array('@submit' => $submit)));
-      $this->fail(format_string('Found the requested form fields at @path', array('@path' => $path)));
+      $this->assertTrue($submit_matches, format_string('Found the @submit button', ['@submit' => $submit]));
+      $this->fail(format_string('Found the requested form fields at @path', ['@path' => $path]));
     }
   }
 
diff --git a/core/modules/search/tests/src/Functional/SearchTokenizerTest.php b/core/modules/search/tests/src/Functional/SearchTokenizerTest.php
index e25bfc4..03667bc 100644
--- a/core/modules/search/tests/src/Functional/SearchTokenizerTest.php
+++ b/core/modules/search/tests/src/Functional/SearchTokenizerTest.php
@@ -31,7 +31,7 @@ function testTokenizer() {
     // the Unicode tables.
 
     // Beginnings of the character ranges.
-    $starts = array(
+    $starts = [
       'CJK unified' => 0x4e00,
       'CJK Ext A' => 0x3400,
       'CJK Compat' => 0xf900,
@@ -52,10 +52,10 @@ function testTokenizer() {
       'Bomofo Ext' => 0x31a0,
       'Lisu' => 0xa4d0,
       'Yi' => 0xa000,
-    );
+    ];
 
     // Ends of the character ranges.
-    $ends = array(
+    $ends = [
       'CJK unified' => 0x9fcf,
       'CJK Ext A' => 0x4dbf,
       'CJK Compat' => 0xfaff,
@@ -76,11 +76,11 @@ function testTokenizer() {
       'Bomofo Ext' => 0x31b7,
       'Lisu' => 0xa4fd,
       'Yi' => 0xa48f,
-    );
+    ];
 
     // Generate characters consisting of starts, midpoints, and ends.
-    $chars = array();
-    $charcodes = array();
+    $chars = [];
+    $charcodes = [];
     foreach ($starts as $key => $value) {
       $charcodes[] = $starts[$key];
       $chars[] = $this->code2utf($starts[$key]);
diff --git a/core/modules/search/tests/src/Kernel/Migrate/d6/MigrateSearchPageTest.php b/core/modules/search/tests/src/Kernel/Migrate/d6/MigrateSearchPageTest.php
index bcbc40e..a70114a 100644
--- a/core/modules/search/tests/src/Kernel/Migrate/d6/MigrateSearchPageTest.php
+++ b/core/modules/search/tests/src/Kernel/Migrate/d6/MigrateSearchPageTest.php
@@ -35,20 +35,20 @@ public function testSearchPage() {
     $search_page = SearchPage::load($id);
     $this->assertIdentical($id, $search_page->id());
     $configuration = $search_page->getPlugin()->getConfiguration();
-    $this->assertIdentical($configuration['rankings'], array(
+    $this->assertIdentical($configuration['rankings'], [
       'comments' => 5,
       'promote' => 0,
       'recent' => 0,
       'relevance' => 2,
       'sticky' => 8,
       'views' => 1,
-    ));
+    ]);
     $this->assertIdentical('node', $search_page->getPath());
 
     // Test that we can re-import using the EntitySearchPage destination.
     Database::getConnection('default', 'migrate')
       ->update('variable')
-      ->fields(array('value' => serialize(4)))
+      ->fields(['value' => serialize(4)])
       ->condition('name', 'node_rank_comments')
       ->execute();
 
diff --git a/core/modules/search/tests/src/Kernel/Migrate/d7/MigrateSearchPageTest.php b/core/modules/search/tests/src/Kernel/Migrate/d7/MigrateSearchPageTest.php
index d7dae3e..86d3b22 100644
--- a/core/modules/search/tests/src/Kernel/Migrate/d7/MigrateSearchPageTest.php
+++ b/core/modules/search/tests/src/Kernel/Migrate/d7/MigrateSearchPageTest.php
@@ -18,7 +18,7 @@ class MigrateSearchPageTest extends MigrateDrupal7TestBase {
    *
    * {@inheritdoc}
    */
-  public static $modules = array('node', 'search');
+  public static $modules = ['node', 'search'];
 
   /**
    * {@inheritdoc}
@@ -37,20 +37,20 @@ public function testSearchPage() {
     $search_page = SearchPage::load($id);
     $this->assertIdentical($id, $search_page->id());
     $configuration = $search_page->getPlugin()->getConfiguration();
-    $expected_rankings = array(
+    $expected_rankings = [
       'comments' => 0,
       'promote' => 0,
       'relevance' => 2,
       'sticky' => 0,
       'views' => 0,
-    );
+    ];
     $this->assertIdentical($expected_rankings, $configuration['rankings']);
     $this->assertIdentical('node', $search_page->getPath());
 
     // Test that we can re-import using the EntitySearchPage destination.
     Database::getConnection('default', 'migrate')
       ->update('variable')
-      ->fields(array('value' => serialize(4)))
+      ->fields(['value' => serialize(4)])
       ->condition('name', 'node_rank_comments')
       ->execute();
 
diff --git a/core/modules/search/tests/src/Kernel/SearchExcerptTest.php b/core/modules/search/tests/src/Kernel/SearchExcerptTest.php
index 85c0917..02844b0 100644
--- a/core/modules/search/tests/src/Kernel/SearchExcerptTest.php
+++ b/core/modules/search/tests/src/Kernel/SearchExcerptTest.php
@@ -16,7 +16,7 @@ class SearchExcerptTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('search', 'search_langcode_test');
+  public static $modules = ['search', 'search_langcode_test'];
 
   /**
    * Tests search_excerpt() with several simulated search keywords.
diff --git a/core/modules/search/tests/src/Kernel/SearchMatchTest.php b/core/modules/search/tests/src/Kernel/SearchMatchTest.php
index 0a17f71..13c9267 100644
--- a/core/modules/search/tests/src/Kernel/SearchMatchTest.php
+++ b/core/modules/search/tests/src/Kernel/SearchMatchTest.php
@@ -55,11 +55,11 @@ function _setup() {
       search_index(static::SEARCH_TYPE_2, $i + 7, LanguageInterface::LANGCODE_NOT_SPECIFIED, $this->getText2($i));
     }
     // No getText builder function for Japanese text; just a simple array.
-    foreach (array(
+    foreach ([
       13 => '以呂波耳・ほへとち。リヌルヲ。',
       14 => 'ドルーパルが大好きよ！',
       15 => 'コーヒーとケーキ',
-    ) as $i => $jpn) {
+    ] as $i => $jpn) {
       search_index(static::SEARCH_TYPE_JPN, $i, LanguageInterface::LANGCODE_NOT_SPECIFIED, $jpn);
     }
     search_update_totals();
@@ -108,106 +108,106 @@ function _testQueries() {
     // is good, and
     //   dolore OR ut = (dolore) OR (ut)
     // is bad. This is a design limitation to avoid full table scans.
-    $queries = array(
+    $queries = [
       // Simple AND queries.
-      'ipsum' => array(1),
-      'enim' => array(4, 5, 6),
-      'xxxxx' => array(),
-      'enim minim' => array(5, 6),
-      'enim xxxxx' => array(),
-      'dolore eu' => array(7),
-      'dolore xx' => array(),
-      'ut minim' => array(5),
-      'xx minim' => array(),
-      'enim veniam am minim ut' => array(5),
+      'ipsum' => [1],
+      'enim' => [4, 5, 6],
+      'xxxxx' => [],
+      'enim minim' => [5, 6],
+      'enim xxxxx' => [],
+      'dolore eu' => [7],
+      'dolore xx' => [],
+      'ut minim' => [5],
+      'xx minim' => [],
+      'enim veniam am minim ut' => [5],
       // Simple OR and AND/OR queries.
-      'dolore OR ipsum' => array(1, 2, 7),
-      'dolore OR xxxxx' => array(2, 7),
-      'dolore OR ipsum OR enim' => array(1, 2, 4, 5, 6, 7),
-      'ipsum OR dolore sit OR cillum' => array(2, 7),
-      'minim dolore OR ipsum' => array(7),
-      'dolore OR ipsum veniam' => array(7),
-      'minim dolore OR ipsum OR enim' => array(5, 6, 7),
-      'dolore xx OR yy' => array(),
-      'xxxxx dolore OR ipsum' => array(),
+      'dolore OR ipsum' => [1, 2, 7],
+      'dolore OR xxxxx' => [2, 7],
+      'dolore OR ipsum OR enim' => [1, 2, 4, 5, 6, 7],
+      'ipsum OR dolore sit OR cillum' => [2, 7],
+      'minim dolore OR ipsum' => [7],
+      'dolore OR ipsum veniam' => [7],
+      'minim dolore OR ipsum OR enim' => [5, 6, 7],
+      'dolore xx OR yy' => [],
+      'xxxxx dolore OR ipsum' => [],
       // Sequence of OR queries.
-      'minim' => array(5, 6, 7),
-      'minim OR xxxx' => array(5, 6, 7),
-      'minim OR xxxx OR minim' => array(5, 6, 7),
-      'minim OR xxxx minim' => array(5, 6, 7),
-      'minim OR xxxx minim OR yyyy' => array(5, 6, 7),
-      'minim OR xxxx minim OR cillum' => array(6, 7, 5),
-      'minim OR xxxx minim OR xxxx' => array(5, 6, 7),
+      'minim' => [5, 6, 7],
+      'minim OR xxxx' => [5, 6, 7],
+      'minim OR xxxx OR minim' => [5, 6, 7],
+      'minim OR xxxx minim' => [5, 6, 7],
+      'minim OR xxxx minim OR yyyy' => [5, 6, 7],
+      'minim OR xxxx minim OR cillum' => [6, 7, 5],
+      'minim OR xxxx minim OR xxxx' => [5, 6, 7],
       // Negative queries.
-      'dolore -sit' => array(7),
-      'dolore -eu' => array(2),
-      'dolore -xxxxx' => array(2, 7),
-      'dolore -xx' => array(2, 7),
+      'dolore -sit' => [7],
+      'dolore -eu' => [2],
+      'dolore -xxxxx' => [2, 7],
+      'dolore -xx' => [2, 7],
       // Phrase queries.
-      '"dolore sit"' => array(2),
-      '"sit dolore"' => array(),
-      '"am minim veniam es"' => array(6, 7),
-      '"minim am veniam es"' => array(),
+      '"dolore sit"' => [2],
+      '"sit dolore"' => [],
+      '"am minim veniam es"' => [6, 7],
+      '"minim am veniam es"' => [],
       // Mixed queries.
-      '"am minim veniam es" OR dolore' => array(2, 6, 7),
-      '"minim am veniam es" OR "dolore sit"' => array(2),
-      '"minim am veniam es" OR "sit dolore"' => array(),
-      '"am minim veniam es" -eu' => array(6),
-      '"am minim veniam" -"cillum dolore"' => array(5, 6),
-      '"am minim veniam" -"dolore cillum"' => array(5, 6, 7),
-      'xxxxx "minim am veniam es" OR dolore' => array(),
-      'xx "minim am veniam es" OR dolore' => array()
-    );
+      '"am minim veniam es" OR dolore' => [2, 6, 7],
+      '"minim am veniam es" OR "dolore sit"' => [2],
+      '"minim am veniam es" OR "sit dolore"' => [],
+      '"am minim veniam es" -eu' => [6],
+      '"am minim veniam" -"cillum dolore"' => [5, 6],
+      '"am minim veniam" -"dolore cillum"' => [5, 6, 7],
+      'xxxxx "minim am veniam es" OR dolore' => [],
+      'xx "minim am veniam es" OR dolore' => []
+    ];
     foreach ($queries as $query => $results) {
       $result = db_select('search_index', 'i')
         ->extend('Drupal\search\SearchQuery')
         ->searchExpression($query, static::SEARCH_TYPE)
         ->execute();
 
-      $set = $result ? $result->fetchAll() : array();
+      $set = $result ? $result->fetchAll() : [];
       $this->_testQueryMatching($query, $set, $results);
       $this->_testQueryScores($query, $set, $results);
     }
 
     // These queries are run against the second index type, SEARCH_TYPE_2.
-    $queries = array(
+    $queries = [
       // Simple AND queries.
-      'ipsum' => array(),
-      'enim' => array(),
-      'enim minim' => array(),
-      'dear' => array(8),
-      'germany' => array(11, 12),
-    );
+      'ipsum' => [],
+      'enim' => [],
+      'enim minim' => [],
+      'dear' => [8],
+      'germany' => [11, 12],
+    ];
     foreach ($queries as $query => $results) {
       $result = db_select('search_index', 'i')
         ->extend('Drupal\search\SearchQuery')
         ->searchExpression($query, static::SEARCH_TYPE_2)
         ->execute();
 
-      $set = $result ? $result->fetchAll() : array();
+      $set = $result ? $result->fetchAll() : [];
       $this->_testQueryMatching($query, $set, $results);
       $this->_testQueryScores($query, $set, $results);
     }
 
     // These queries are run against the third index type, SEARCH_TYPE_JPN.
-    $queries = array(
+    $queries = [
       // Simple AND queries.
-      '呂波耳' => array(13),
-      '以呂波耳' => array(13),
-      'ほへと　ヌルヲ' => array(13),
-      'とちリ' => array(),
-      'ドルーパル' => array(14),
-      'パルが大' => array(14),
-      'コーヒー' => array(15),
-      'ヒーキ' => array(),
-    );
+      '呂波耳' => [13],
+      '以呂波耳' => [13],
+      'ほへと　ヌルヲ' => [13],
+      'とちリ' => [],
+      'ドルーパル' => [14],
+      'パルが大' => [14],
+      'コーヒー' => [15],
+      'ヒーキ' => [],
+    ];
     foreach ($queries as $query => $results) {
       $result = db_select('search_index', 'i')
         ->extend('Drupal\search\SearchQuery')
         ->searchExpression($query, static::SEARCH_TYPE_JPN)
         ->execute();
 
-      $set = $result ? $result->fetchAll() : array();
+      $set = $result ? $result->fetchAll() : [];
       $this->_testQueryMatching($query, $set, $results);
       $this->_testQueryScores($query, $set, $results);
     }
@@ -220,7 +220,7 @@ function _testQueries() {
    */
   function _testQueryMatching($query, $set, $results) {
     // Get result IDs.
-    $found = array();
+    $found = [];
     foreach ($set as $item) {
       $found[] = $item->sid;
     }
@@ -238,7 +238,7 @@ function _testQueryMatching($query, $set, $results) {
    */
   function _testQueryScores($query, $set, $results) {
     // Get result scores.
-    $scores = array();
+    $scores = [];
     foreach ($set as $item) {
       $scores[] = $item->calculated_score;
     }
diff --git a/core/modules/search/tests/src/Unit/SearchPageRepositoryTest.php b/core/modules/search/tests/src/Unit/SearchPageRepositoryTest.php
index d634207..69dffd8 100644
--- a/core/modules/search/tests/src/Unit/SearchPageRepositoryTest.php
+++ b/core/modules/search/tests/src/Unit/SearchPageRepositoryTest.php
@@ -75,14 +75,14 @@ public function testGetActiveSearchPages() {
       ->will($this->returnValue($this->query));
     $this->query->expects($this->once())
       ->method('execute')
-      ->will($this->returnValue(array('test' => 'test', 'other_test' => 'other_test')));
+      ->will($this->returnValue(['test' => 'test', 'other_test' => 'other_test']));
 
-    $entities = array();
+    $entities = [];
     $entities['test'] = $this->getMock('Drupal\search\SearchPageInterface');
     $entities['other_test'] = $this->getMock('Drupal\search\SearchPageInterface');
     $this->storage->expects($this->once())
       ->method('loadMultiple')
-      ->with(array('test' => 'test', 'other_test' => 'other_test'))
+      ->with(['test' => 'test', 'other_test' => 'other_test'])
       ->will($this->returnValue($entities));
 
     $result = $this->searchPageRepository->getActiveSearchPages();
@@ -103,7 +103,7 @@ public function testIsSearchActive() {
       ->will($this->returnValue($this->query));
     $this->query->expects($this->once())
       ->method('execute')
-      ->will($this->returnValue(array('test' => 'test')));
+      ->will($this->returnValue(['test' => 'test']));
 
     $this->assertSame(TRUE, $this->searchPageRepository->isSearchActive());
   }
@@ -118,9 +118,9 @@ public function testGetIndexableSearchPages() {
       ->will($this->returnValue($this->query));
     $this->query->expects($this->once())
       ->method('execute')
-      ->will($this->returnValue(array('test' => 'test', 'other_test' => 'other_test')));
+      ->will($this->returnValue(['test' => 'test', 'other_test' => 'other_test']));
 
-    $entities = array();
+    $entities = [];
     $entities['test'] = $this->getMock('Drupal\search\SearchPageInterface');
     $entities['test']->expects($this->once())
       ->method('isIndexable')
@@ -131,7 +131,7 @@ public function testGetIndexableSearchPages() {
       ->will($this->returnValue(FALSE));
     $this->storage->expects($this->once())
       ->method('loadMultiple')
-      ->with(array('test' => 'test', 'other_test' => 'other_test'))
+      ->with(['test' => 'test', 'other_test' => 'other_test'])
       ->will($this->returnValue($entities));
 
     $result = $this->searchPageRepository->getIndexableSearchPages();
@@ -167,7 +167,7 @@ public function testGetDefaultSearchPageWithActiveDefault() {
       ->will($this->returnValue($this->query));
     $this->query->expects($this->once())
       ->method('execute')
-      ->will($this->returnValue(array('test' => 'test', 'other_test' => 'other_test')));
+      ->will($this->returnValue(['test' => 'test', 'other_test' => 'other_test']));
 
     $config = $this->getMockBuilder('Drupal\Core\Config\Config')
       ->disableOriginalConstructor()
@@ -194,7 +194,7 @@ public function testGetDefaultSearchPageWithInactiveDefault() {
       ->will($this->returnValue($this->query));
     $this->query->expects($this->once())
       ->method('execute')
-      ->will($this->returnValue(array('test' => 'test')));
+      ->will($this->returnValue(['test' => 'test']));
 
     $config = $this->getMockBuilder('Drupal\Core\Config\Config')
       ->disableOriginalConstructor()
@@ -259,10 +259,10 @@ public function testSortSearchPages() {
     // Declare entities out of their expected order so we can be sure they were
     // sorted. We cannot mock these because of uasort(), see
     // https://bugs.php.net/bug.php?id=50688.
-    $unsorted_entities['test4'] = new TestSearchPage(array('weight' => 0, 'status' => FALSE, 'label' => 'Test4'));
-    $unsorted_entities['test3'] = new TestSearchPage(array('weight' => 10, 'status' => TRUE, 'label' => 'Test3'));
-    $unsorted_entities['test2'] = new TestSearchPage(array('weight' => 0, 'status' => TRUE, 'label' => 'Test2'));
-    $unsorted_entities['test1'] = new TestSearchPage(array('weight' => 0, 'status' => TRUE, 'label' => 'Test1'));
+    $unsorted_entities['test4'] = new TestSearchPage(['weight' => 0, 'status' => FALSE, 'label' => 'Test4']);
+    $unsorted_entities['test3'] = new TestSearchPage(['weight' => 10, 'status' => TRUE, 'label' => 'Test3']);
+    $unsorted_entities['test2'] = new TestSearchPage(['weight' => 0, 'status' => TRUE, 'label' => 'Test2']);
+    $unsorted_entities['test1'] = new TestSearchPage(['weight' => 0, 'status' => TRUE, 'label' => 'Test1']);
     $expected = $unsorted_entities;
     ksort($expected);
 
diff --git a/core/modules/search/tests/src/Unit/SearchPluginCollectionTest.php b/core/modules/search/tests/src/Unit/SearchPluginCollectionTest.php
index 19221f2..25ab873 100644
--- a/core/modules/search/tests/src/Unit/SearchPluginCollectionTest.php
+++ b/core/modules/search/tests/src/Unit/SearchPluginCollectionTest.php
@@ -37,7 +37,7 @@ class SearchPluginCollectionTest extends UnitTestCase {
    */
   protected function setUp() {
     $this->pluginManager = $this->getMock('Drupal\Component\Plugin\PluginManagerInterface');
-    $this->searchPluginCollection = new SearchPluginCollection($this->pluginManager, 'banana', array('id' => 'banana', 'color' => 'yellow'), 'fruit_stand');
+    $this->searchPluginCollection = new SearchPluginCollection($this->pluginManager, 'banana', ['id' => 'banana', 'color' => 'yellow'], 'fruit_stand');
   }
 
   /**
diff --git a/core/modules/serialization/serialization.install b/core/modules/serialization/serialization.install
index 9f7c71e..6d45f3c 100644
--- a/core/modules/serialization/serialization.install
+++ b/core/modules/serialization/serialization.install
@@ -12,10 +12,10 @@ function serialization_requirements($phase) {
   $requirements = [];
 
   if ($phase == 'runtime') {
-    $requirements['serialization_as_strings'] = array(
+    $requirements['serialization_as_strings'] = [
       'title' => t('Serialized data types'),
       'severity' => REQUIREMENT_INFO,
-    );
+    ];
 
     if (\Drupal::config('serialization.settings')->get('bc_primitives_as_strings')) {
       $requirements['serialization_as_strings']['value'] = t('Enabled');
diff --git a/core/modules/serialization/serialization.module b/core/modules/serialization/serialization.module
index 39c5fbf..4b2db10 100644
--- a/core/modules/serialization/serialization.module
+++ b/core/modules/serialization/serialization.module
@@ -18,8 +18,8 @@ function serialization_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<p>' . t('The Serialization module provides a service for serializing and deserializing data to and from formats such as JSON and XML.') . '</p>';
       $output .= '<p>' . t('Serialization is the process of converting data structures like arrays and objects into a string. This allows the data to be represented in a way that is easy to exchange and store (for example, for transmission over the Internet or for storage in a local file system). These representations can then be deserialized to get back to the original data structures.') . '</p>';
       $output .= '<p>' . t('The serializer splits this process into two parts. Normalization converts an object to a normalized array structure. Encoding takes that array and converts it to a string.') . '</p>';
-      $output .= '<p>' . t('This module does not have a user interface. It is used by other modules which need to serialize data, such as <a href=":rest">REST</a>.', array(':rest' => (\Drupal::moduleHandler()->moduleExists('rest')) ? \Drupal::url('help.page', array('name' => 'rest')) : '#')) . '</p>';
-      $output .= '<p>' . t('For more information, see the <a href=":doc_url">online documentation for the Serialization module</a>.', array(':doc_url' => 'https://www.drupal.org/documentation/modules/serialization')) . '</p>';
+      $output .= '<p>' . t('This module does not have a user interface. It is used by other modules which need to serialize data, such as <a href=":rest">REST</a>.', [':rest' => (\Drupal::moduleHandler()->moduleExists('rest')) ? \Drupal::url('help.page', ['name' => 'rest']) : '#']) . '</p>';
+      $output .= '<p>' . t('For more information, see the <a href=":doc_url">online documentation for the Serialization module</a>.', [':doc_url' => 'https://www.drupal.org/documentation/modules/serialization']) . '</p>';
       return $output;
   }
 }
diff --git a/core/modules/serialization/src/Encoder/JsonEncoder.php b/core/modules/serialization/src/Encoder/JsonEncoder.php
index 4a16a97..ad085ac 100644
--- a/core/modules/serialization/src/Encoder/JsonEncoder.php
+++ b/core/modules/serialization/src/Encoder/JsonEncoder.php
@@ -18,7 +18,7 @@ class JsonEncoder extends BaseJsonEncoder implements EncoderInterface, DecoderIn
    *
    * @var array
    */
-  protected static $format = array('json', 'ajax');
+  protected static $format = ['json', 'ajax'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/serialization/src/Encoder/XmlEncoder.php b/core/modules/serialization/src/Encoder/XmlEncoder.php
index abd7896..5582713 100644
--- a/core/modules/serialization/src/Encoder/XmlEncoder.php
+++ b/core/modules/serialization/src/Encoder/XmlEncoder.php
@@ -19,7 +19,7 @@ class XmlEncoder implements EncoderInterface, DecoderInterface {
    *
    * @var array
    */
-  static protected $format = array('xml');
+  static protected $format = ['xml'];
 
   /**
    * An instance of the Symfony XmlEncoder to perform the actual encoding.
@@ -54,7 +54,7 @@ public function setBaseEncoder($encoder) {
   /**
    * {@inheritdoc}
    */
-  public function encode($data, $format, array $context = array()){
+  public function encode($data, $format, array $context = []){
     return $this->getBaseEncoder()->encode($data, $format, $context);
   }
 
@@ -68,7 +68,7 @@ public function supportsEncoding($format) {
   /**
    * {@inheritdoc}
    */
-  public function decode($data, $format, array $context = array()){
+  public function decode($data, $format, array $context = []){
     return $this->getBaseEncoder()->decode($data, $format, $context);
   }
 
diff --git a/core/modules/serialization/src/EntityResolver/ChainEntityResolver.php b/core/modules/serialization/src/EntityResolver/ChainEntityResolver.php
index 6ab8794..7f24901 100644
--- a/core/modules/serialization/src/EntityResolver/ChainEntityResolver.php
+++ b/core/modules/serialization/src/EntityResolver/ChainEntityResolver.php
@@ -14,7 +14,7 @@ class ChainEntityResolver implements ChainEntityResolverInterface {
    *
    * @var \Drupal\serialization\EntityResolver\EntityResolverInterface[]
    */
-  protected $resolvers = array();
+  protected $resolvers = [];
 
   /**
    * Constructs a ChainEntityResolver object.
@@ -22,7 +22,7 @@ class ChainEntityResolver implements ChainEntityResolverInterface {
    * @param \Drupal\serialization\EntityResolver\EntityResolverInterface[] $resolvers
    *   The array of concrete resolvers.
    */
-  public function __construct(array $resolvers = array()) {
+  public function __construct(array $resolvers = []) {
     $this->resolvers = $resolvers;
   }
 
diff --git a/core/modules/serialization/src/Normalizer/ComplexDataNormalizer.php b/core/modules/serialization/src/Normalizer/ComplexDataNormalizer.php
index ef07d11..3d20312 100644
--- a/core/modules/serialization/src/Normalizer/ComplexDataNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/ComplexDataNormalizer.php
@@ -24,8 +24,8 @@ class ComplexDataNormalizer extends NormalizerBase {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
-    $attributes = array();
+  public function normalize($object, $format = NULL, array $context = []) {
+    $attributes = [];
     /** @var \Drupal\Core\TypedData\TypedDataInterface $field */
     foreach ($object as $name => $field) {
       $attributes[$name] = $this->serializer->normalize($field, $format, $context);
diff --git a/core/modules/serialization/src/Normalizer/ConfigEntityNormalizer.php b/core/modules/serialization/src/Normalizer/ConfigEntityNormalizer.php
index d17005c..344bcc3 100644
--- a/core/modules/serialization/src/Normalizer/ConfigEntityNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/ConfigEntityNormalizer.php
@@ -12,12 +12,12 @@ class ConfigEntityNormalizer extends EntityNormalizer {
    *
    * @var array
    */
-  protected $supportedInterfaceOrClass = array('Drupal\Core\Config\Entity\ConfigEntityInterface');
+  protected $supportedInterfaceOrClass = ['Drupal\Core\Config\Entity\ConfigEntityInterface'];
 
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     return $object->toArray();
   }
 
diff --git a/core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php b/core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php
index b47eeef..f1ca82d 100644
--- a/core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/ContentEntityNormalizer.php
@@ -15,10 +15,10 @@ class ContentEntityNormalizer extends EntityNormalizer {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
-    $context += array(
+  public function normalize($object, $format = NULL, array $context = []) {
+    $context += [
       'account' => NULL,
-    );
+    ];
 
     $attributes = [];
     foreach ($object as $name => $field) {
diff --git a/core/modules/serialization/src/Normalizer/FieldItemNormalizer.php b/core/modules/serialization/src/Normalizer/FieldItemNormalizer.php
index a3cfcf2..decca43 100644
--- a/core/modules/serialization/src/Normalizer/FieldItemNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/FieldItemNormalizer.php
@@ -19,7 +19,7 @@ class FieldItemNormalizer extends ComplexDataNormalizer implements DenormalizerI
   /**
    * {@inheritdoc}
    */
-  public function denormalize($data, $class, $format = NULL, array $context = array()) {
+  public function denormalize($data, $class, $format = NULL, array $context = []) {
     if (!isset($context['target_instance'])) {
       throw new InvalidArgumentException('$context[\'target_instance\'] must be set to denormalize with the FieldItemNormalizer');
     }
diff --git a/core/modules/serialization/src/Normalizer/FieldNormalizer.php b/core/modules/serialization/src/Normalizer/FieldNormalizer.php
index 6a0ad8f..a5051cf 100644
--- a/core/modules/serialization/src/Normalizer/FieldNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/FieldNormalizer.php
@@ -26,7 +26,7 @@ class FieldNormalizer extends ListNormalizer implements DenormalizerInterface {
   /**
    * {@inheritdoc}
    */
-  public function denormalize($data, $class, $format = NULL, array $context = array()) {
+  public function denormalize($data, $class, $format = NULL, array $context = []) {
     if (!isset($context['target_instance'])) {
       throw new InvalidArgumentException('$context[\'target_instance\'] must be set to denormalize with the FieldNormalizer');
     }
diff --git a/core/modules/serialization/src/Normalizer/ListNormalizer.php b/core/modules/serialization/src/Normalizer/ListNormalizer.php
index 1729cfc..471886e 100644
--- a/core/modules/serialization/src/Normalizer/ListNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/ListNormalizer.php
@@ -23,8 +23,8 @@ class ListNormalizer extends NormalizerBase {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
-    $attributes = array();
+  public function normalize($object, $format = NULL, array $context = []) {
+    $attributes = [];
     foreach ($object as $fieldItem) {
       $attributes[] = $this->serializer->normalize($fieldItem, $format, $context);
     }
diff --git a/core/modules/serialization/src/Normalizer/MarkupNormalizer.php b/core/modules/serialization/src/Normalizer/MarkupNormalizer.php
index 9cb3cd9..f4c197b 100644
--- a/core/modules/serialization/src/Normalizer/MarkupNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/MarkupNormalizer.php
@@ -12,12 +12,12 @@ class MarkupNormalizer extends NormalizerBase {
    *
    * @var array
    */
-  protected $supportedInterfaceOrClass = array('Drupal\Component\Render\MarkupInterface');
+  protected $supportedInterfaceOrClass = ['Drupal\Component\Render\MarkupInterface'];
 
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     return (string) $object;
   }
 
diff --git a/core/modules/serialization/src/Normalizer/NullNormalizer.php b/core/modules/serialization/src/Normalizer/NullNormalizer.php
index c6a8de5..dbc61f7 100644
--- a/core/modules/serialization/src/Normalizer/NullNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/NullNormalizer.php
@@ -20,7 +20,7 @@ public function __construct($supported_interface_of_class) {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     return NULL;
   }
 
diff --git a/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php b/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php
index 53a62df..60ce7d0 100644
--- a/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php
+++ b/core/modules/serialization/src/Normalizer/TypedDataNormalizer.php
@@ -17,7 +17,7 @@ class TypedDataNormalizer extends NormalizerBase {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     return $object->getValue();
   }
 
diff --git a/core/modules/serialization/src/RegisterEntityResolversCompilerPass.php b/core/modules/serialization/src/RegisterEntityResolversCompilerPass.php
index 90a2c26..47c2be0 100644
--- a/core/modules/serialization/src/RegisterEntityResolversCompilerPass.php
+++ b/core/modules/serialization/src/RegisterEntityResolversCompilerPass.php
@@ -19,7 +19,7 @@ class RegisterEntityResolversCompilerPass implements CompilerPassInterface {
    */
   public function process(ContainerBuilder $container) {
     $definition = $container->getDefinition('serializer.entity_resolver');
-    $resolvers = array();
+    $resolvers = [];
 
     // Retrieve registered Normalizers and Encoders from the container.
     foreach ($container->findTaggedServiceIds('entity_resolver') as $id => $attributes) {
@@ -29,7 +29,7 @@ public function process(ContainerBuilder $container) {
 
     // Add the registered concrete EntityResolvers to the ChainEntityResolver.
     foreach ($this->sort($resolvers) as $resolver) {
-      $definition->addMethodCall('addResolver', array($resolver));
+      $definition->addMethodCall('addResolver', [$resolver]);
     }
   }
 
@@ -48,7 +48,7 @@ public function process(ContainerBuilder $container) {
    *   to low priority.
    */
   protected function sort($services) {
-    $sorted = array();
+    $sorted = [];
     krsort($services);
 
     // Flatten the array.
diff --git a/core/modules/serialization/src/RegisterSerializationClassesCompilerPass.php b/core/modules/serialization/src/RegisterSerializationClassesCompilerPass.php
index 7110056..10474d1 100644
--- a/core/modules/serialization/src/RegisterSerializationClassesCompilerPass.php
+++ b/core/modules/serialization/src/RegisterSerializationClassesCompilerPass.php
@@ -46,7 +46,7 @@ public function process(ContainerBuilder $container) {
     }
 
     // Find all serialization formats known.
-    $formats = array();
+    $formats = [];
     $format_providers = [];
     foreach ($container->findTaggedServiceIds('encoder') as $service_id => $attributes) {
       $format = $attributes[0]['format'];
@@ -87,7 +87,7 @@ protected function normalizerBcSettingIsEnabled($key, $config_name) {
    *   to low priority.
    */
   protected function sort($services) {
-    $sorted = array();
+    $sorted = [];
     krsort($services);
 
     // Flatten the array.
diff --git a/core/modules/serialization/tests/modules/field_normalization_test/src/Normalization/TextItemSillyNormalizer.php b/core/modules/serialization/tests/modules/field_normalization_test/src/Normalization/TextItemSillyNormalizer.php
index 7187bdf..45438f4 100644
--- a/core/modules/serialization/tests/modules/field_normalization_test/src/Normalization/TextItemSillyNormalizer.php
+++ b/core/modules/serialization/tests/modules/field_normalization_test/src/Normalization/TextItemSillyNormalizer.php
@@ -18,7 +18,7 @@ class TextItemSillyNormalizer extends FieldItemNormalizer {
   /**
    * {@inheritdoc}
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     $data = parent::normalize($object, $format, $context);
     $data['value'] .= '::silly_suffix';
     return $data;
diff --git a/core/modules/serialization/tests/serialization_test/src/SerializationTestEncoder.php b/core/modules/serialization/tests/serialization_test/src/SerializationTestEncoder.php
index 0eb9aa5..165e978 100644
--- a/core/modules/serialization/tests/serialization_test/src/SerializationTestEncoder.php
+++ b/core/modules/serialization/tests/serialization_test/src/SerializationTestEncoder.php
@@ -16,7 +16,7 @@ class SerializationTestEncoder implements EncoderInterface {
   /**
    * {@inheritdoc}
    */
-  public function encode($data, $format, array $context = array()) {
+  public function encode($data, $format, array $context = []) {
     // @see \Drupal\serialization_test\SerializationTestNormalizer::normalize().
     return 'Normalized by ' . $data['normalized_by'] . ', Encoded by SerializationTestEncoder';
   }
diff --git a/core/modules/serialization/tests/serialization_test/src/SerializationTestNormalizer.php b/core/modules/serialization/tests/serialization_test/src/SerializationTestNormalizer.php
index 1677553..2105adf 100644
--- a/core/modules/serialization/tests/serialization_test/src/SerializationTestNormalizer.php
+++ b/core/modules/serialization/tests/serialization_test/src/SerializationTestNormalizer.php
@@ -25,7 +25,7 @@ class SerializationTestNormalizer implements NormalizerInterface {
    *   An array containing a normalized representation of $object, appropriate
    *   for encoding to the requested format.
    */
-  public function normalize($object, $format = NULL, array $context = array()) {
+  public function normalize($object, $format = NULL, array $context = []) {
     $normalized = (array) $object;
     // Add identifying value that can be used to verify that the expected
     // normalizer was invoked.
diff --git a/core/modules/serialization/tests/src/Kernel/EntityResolverTest.php b/core/modules/serialization/tests/src/Kernel/EntityResolverTest.php
index ec94028..a470d98 100644
--- a/core/modules/serialization/tests/src/Kernel/EntityResolverTest.php
+++ b/core/modules/serialization/tests/src/Kernel/EntityResolverTest.php
@@ -34,14 +34,14 @@ protected function setUp() {
     \Drupal::service('router.builder')->rebuild();
 
     // Create the test field storage.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test_mulrev',
       'field_name' => 'field_test_entity_reference',
       'type' => 'entity_reference',
-      'settings' => array(
+      'settings' => [
         'target_type' => 'entity_test_mulrev',
-      ),
-    ))->save();
+      ],
+    ])->save();
 
     // Create the test field.
     FieldConfig::create([
@@ -56,39 +56,39 @@ protected function setUp() {
    */
   function testUuidEntityResolver() {
     // Create an entity to get the UUID from.
-    $entity = EntityTestMulRev::create(array('type' => 'entity_test_mulrev'));
+    $entity = EntityTestMulRev::create(['type' => 'entity_test_mulrev']);
     $entity->set('name', 'foobar');
-    $entity->set('field_test_entity_reference', array(array('target_id' => 1)));
+    $entity->set('field_test_entity_reference', [['target_id' => 1]]);
     $entity->save();
 
-    $field_uri = Url::fromUri('base:rest/relation/entity_test_mulrev/entity_test_mulrev/field_test_entity_reference', array('absolute' => TRUE))->toString();
+    $field_uri = Url::fromUri('base:rest/relation/entity_test_mulrev/entity_test_mulrev/field_test_entity_reference', ['absolute' => TRUE])->toString();
 
-    $data = array(
-      '_links' => array(
-        'type' => array(
-          'href' => Url::fromUri('base:rest/type/entity_test_mulrev/entity_test_mulrev', array('absolute' => TRUE))->toString(),
-        ),
-        $field_uri => array(
-          array(
+    $data = [
+      '_links' => [
+        'type' => [
+          'href' => Url::fromUri('base:rest/type/entity_test_mulrev/entity_test_mulrev', ['absolute' => TRUE])->toString(),
+        ],
+        $field_uri => [
+          [
             'href' => $entity->url(),
-          ),
-        ),
-      ),
-      '_embedded' => array(
-        $field_uri => array(
-          array(
-            '_links' => array(
+          ],
+        ],
+      ],
+      '_embedded' => [
+        $field_uri => [
+          [
+            '_links' => [
               'self' => $entity->url(),
-            ),
-            'uuid' => array(
-              array(
+            ],
+            'uuid' => [
+              [
                 'value' => $entity->uuid(),
-              ),
-            ),
-          ),
-        ),
-      ),
-    );
+              ],
+            ],
+          ],
+        ],
+      ],
+    ];
 
     $denormalized = $this->container->get('serializer')->denormalize($data, 'Drupal\entity_test\Entity\EntityTestMulRev', $this->format);
     $field_value = $denormalized->get('field_test_entity_reference')->getValue();
diff --git a/core/modules/serialization/tests/src/Kernel/EntitySerializationTest.php b/core/modules/serialization/tests/src/Kernel/EntitySerializationTest.php
index d29f493..71fa6b3 100644
--- a/core/modules/serialization/tests/src/Kernel/EntitySerializationTest.php
+++ b/core/modules/serialization/tests/src/Kernel/EntitySerializationTest.php
@@ -17,7 +17,7 @@ class EntitySerializationTest extends NormalizerTestBase {
    *
    * @var array
    */
-  public static $modules = array('serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user', 'entity_serialization_test');
+  public static $modules = ['serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user', 'entity_serialization_test'];
 
   /**
    * The test values.
@@ -58,7 +58,7 @@ protected function setUp() {
     parent::setUp();
 
     // User create needs sequence table.
-    $this->installSchema('system', array('sequences'));
+    $this->installSchema('system', ['sequences']);
 
     // Create a test user to use as the entity owner.
     $this->user = \Drupal::entityManager()->getStorage('user')->create([
@@ -69,75 +69,75 @@ protected function setUp() {
     $this->user->save();
 
     // Create a test entity to serialize.
-    $this->values = array(
+    $this->values = [
       'name' => $this->randomMachineName(),
       'user_id' => $this->user->id(),
-      'field_test_text' => array(
+      'field_test_text' => [
         'value' => $this->randomMachineName(),
         'format' => 'full_html',
-      ),
-    );
+      ],
+    ];
     $this->entity = EntityTestMulRev::create($this->values);
     $this->entity->save();
 
     $this->serializer = $this->container->get('serializer');
 
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
   }
 
   /**
    * Test the normalize function.
    */
   public function testNormalize() {
-    $expected = array(
-      'id' => array(
-        array('value' => 1),
-      ),
-      'uuid' => array(
-        array('value' => $this->entity->uuid()),
-      ),
-      'langcode' => array(
-        array('value' => 'en'),
-      ),
-      'name' => array(
-        array('value' => $this->values['name']),
-      ),
-      'type' => array(
-        array('value' => 'entity_test_mulrev'),
-      ),
-      'created' => array(
-        array('value' => $this->entity->created->value),
-      ),
-      'user_id' => array(
-        array(
+    $expected = [
+      'id' => [
+        ['value' => 1],
+      ],
+      'uuid' => [
+        ['value' => $this->entity->uuid()],
+      ],
+      'langcode' => [
+        ['value' => 'en'],
+      ],
+      'name' => [
+        ['value' => $this->values['name']],
+      ],
+      'type' => [
+        ['value' => 'entity_test_mulrev'],
+      ],
+      'created' => [
+        ['value' => $this->entity->created->value],
+      ],
+      'user_id' => [
+        [
           // id() will return the string value as it comes from the database.
           'target_id' => (int) $this->user->id(),
           'target_type' => $this->user->getEntityTypeId(),
           'target_uuid' => $this->user->uuid(),
           'url' => $this->user->url(),
-        ),
-      ),
-      'revision_id' => array(
-        array('value' => 1),
-      ),
-      'default_langcode' => array(
-        array('value' => TRUE),
-      ),
-      'non_rev_field' => array(),
-      'field_test_text' => array(
-        array(
+        ],
+      ],
+      'revision_id' => [
+        ['value' => 1],
+      ],
+      'default_langcode' => [
+        ['value' => TRUE],
+      ],
+      'non_rev_field' => [],
+      'field_test_text' => [
+        [
           'value' => $this->values['field_test_text']['value'],
           'format' => $this->values['field_test_text']['format'],
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     $normalized = $this->serializer->normalize($this->entity);
 
     foreach (array_keys($expected) as $fieldName) {
       $this->assertSame($expected[$fieldName], $normalized[$fieldName], "Normalization produces expected array for $fieldName.");
     }
-    $this->assertEqual(array_diff_key($normalized, $expected), array(), 'No unexpected data is added to the normalized array.');
+    $this->assertEqual(array_diff_key($normalized, $expected), [], 'No unexpected data is added to the normalized array.');
   }
 
   /**
@@ -182,7 +182,7 @@ public function testSerialize() {
 
     // Generate the expected xml in a way that allows changes to entity property
     // order.
-    $expected = array(
+    $expected = [
       'id' => '<id><value>' . $this->entity->id() . '</value></id>',
       'uuid' => '<uuid><value>' . $this->entity->uuid() . '</value></uuid>',
       'langcode' => '<langcode><value>en</value></langcode>',
@@ -194,7 +194,7 @@ public function testSerialize() {
       'default_langcode' => '<default_langcode><value>1</value></default_langcode>',
       'non_rev_field' => '<non_rev_field/>',
       'field_test_text' => '<field_test_text><value>' . $this->values['field_test_text']['value'] . '</value><format>' . $this->values['field_test_text']['format'] . '</format></field_test_text>',
-    );
+    ];
     // Sort it in the same order as normalised.
     $expected = array_merge($normalized, $expected);
     // Add header and footer.
@@ -215,9 +215,9 @@ public function testSerialize() {
   public function testDenormalize() {
     $normalized = $this->serializer->normalize($this->entity);
 
-    foreach (array('json', 'xml') as $type) {
-      $denormalized = $this->serializer->denormalize($normalized, $this->entityClass, $type, array('entity_type' => 'entity_test_mulrev'));
-      $this->assertTrue($denormalized instanceof $this->entityClass, SafeMarkup::format('Denormalized entity is an instance of @class', array('@class' => $this->entityClass)));
+    foreach (['json', 'xml'] as $type) {
+      $denormalized = $this->serializer->denormalize($normalized, $this->entityClass, $type, ['entity_type' => 'entity_test_mulrev']);
+      $this->assertTrue($denormalized instanceof $this->entityClass, SafeMarkup::format('Denormalized entity is an instance of @class', ['@class' => $this->entityClass]));
       $this->assertIdentical($denormalized->getEntityTypeId(), $this->entity->getEntityTypeId(), 'Expected entity type found.');
       $this->assertIdentical($denormalized->bundle(), $this->entity->bundle(), 'Expected entity bundle found.');
       $this->assertIdentical($denormalized->uuid(), $this->entity->uuid(), 'Expected entity UUID found.');
diff --git a/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php b/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
index b9f0425..3e41d63 100644
--- a/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
+++ b/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
@@ -17,7 +17,7 @@ class FieldItemSerializationTest extends NormalizerTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user', 'field_normalization_test');
+  public static $modules = ['serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user', 'field_normalization_test'];
 
   /**
    * The class name of the test class.
@@ -54,14 +54,14 @@ protected function setUp() {
     parent::setUp();
 
     // Auto-create a field for testing default field values.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test_mulrev',
       'field_name' => 'field_test_text_default',
       'type' => 'text',
       'cardinality' => 1,
       'translatable' => FALSE,
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test_mulrev',
       'field_name' => 'field_test_text_default',
       'bundle' => 'entity_test_mulrev',
@@ -72,26 +72,26 @@ protected function setUp() {
           'format' => 'full_html',
         ],
       ],
-      'widget' => array(
+      'widget' => [
         'type' => 'text_textfield',
         'weight' => 0,
-      ),
-    ))->save();
+      ],
+    ])->save();
 
     // Create a test entity to serialize.
-    $this->values = array(
+    $this->values = [
       'name' => $this->randomMachineName(),
-      'field_test_text' => array(
+      'field_test_text' => [
         'value' => $this->randomMachineName(),
         'format' => 'full_html',
-      ),
-    );
+      ],
+    ];
     $this->entity = EntityTestMulRev::create($this->values);
     $this->entity->save();
 
     $this->serializer = $this->container->get('serializer');
 
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
   }
 
   /**
diff --git a/core/modules/serialization/tests/src/Kernel/NormalizerTestBase.php b/core/modules/serialization/tests/src/Kernel/NormalizerTestBase.php
index 7706b6d..25299b1 100644
--- a/core/modules/serialization/tests/src/Kernel/NormalizerTestBase.php
+++ b/core/modules/serialization/tests/src/Kernel/NormalizerTestBase.php
@@ -16,35 +16,35 @@
    *
    * @var array
    */
-  public static $modules = array('serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user');
+  public static $modules = ['serialization', 'system', 'field', 'entity_test', 'text', 'filter', 'user'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->installEntitySchema('entity_test_mulrev');
     $this->installEntitySchema('user');
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
     \Drupal::service('router.builder')->rebuild();
     \Drupal::moduleHandler()->invoke('rest', 'install');
 
     // Auto-create a field for testing.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'entity_test_mulrev',
       'field_name' => 'field_test_text',
       'type' => 'text',
       'cardinality' => 1,
       'translatable' => FALSE,
-    ))->save();
-    FieldConfig::create(array(
+    ])->save();
+    FieldConfig::create([
       'entity_type' => 'entity_test_mulrev',
       'field_name' => 'field_test_text',
       'bundle' => 'entity_test_mulrev',
       'label' => 'Test text-field',
-      'widget' => array(
+      'widget' => [
         'type' => 'text_textfield',
         'weight' => 0,
-      ),
-    ))->save();
+      ],
+    ])->save();
   }
 
 }
diff --git a/core/modules/serialization/tests/src/Kernel/SerializationTest.php b/core/modules/serialization/tests/src/Kernel/SerializationTest.php
index 8b700a3..a7ad145 100644
--- a/core/modules/serialization/tests/src/Kernel/SerializationTest.php
+++ b/core/modules/serialization/tests/src/Kernel/SerializationTest.php
@@ -17,7 +17,7 @@ class SerializationTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('serialization', 'serialization_test');
+  public static $modules = ['serialization', 'serialization_test'];
 
   /**
    * The serializer service to test.
diff --git a/core/modules/serialization/tests/src/Unit/Encoder/XmlEncoderTest.php b/core/modules/serialization/tests/src/Unit/Encoder/XmlEncoderTest.php
index ea38aa9..88c7a1d 100644
--- a/core/modules/serialization/tests/src/Unit/Encoder/XmlEncoderTest.php
+++ b/core/modules/serialization/tests/src/Unit/Encoder/XmlEncoderTest.php
@@ -28,7 +28,7 @@ class XmlEncoderTest extends UnitTestCase {
    *
    * @var array
    */
-  protected $testArray = array('test' => 'test');
+  protected $testArray = ['test' => 'test'];
 
   protected function setUp() {
     $this->baseEncoder = $this->getMock('Symfony\Component\Serializer\Encoder\XmlEncoder');
@@ -58,7 +58,7 @@ public function testSupportsDecoding() {
   public function testEncode() {
     $this->baseEncoder->expects($this->once())
       ->method('encode')
-      ->with($this->testArray, 'test', array())
+      ->with($this->testArray, 'test', [])
       ->will($this->returnValue('test'));
 
     $this->assertEquals('test', $this->encoder->encode($this->testArray, 'test'));
@@ -70,7 +70,7 @@ public function testEncode() {
   public function testDecode() {
     $this->baseEncoder->expects($this->once())
       ->method('decode')
-      ->with('test', 'test', array())
+      ->with('test', 'test', [])
       ->will($this->returnValue($this->testArray));
 
     $this->assertEquals($this->testArray, $this->encoder->decode('test', 'test'));
diff --git a/core/modules/serialization/tests/src/Unit/EntityResolver/ChainEntityResolverTest.php b/core/modules/serialization/tests/src/Unit/EntityResolver/ChainEntityResolverTest.php
index 38819e1..64e73b6 100644
--- a/core/modules/serialization/tests/src/Unit/EntityResolver/ChainEntityResolverTest.php
+++ b/core/modules/serialization/tests/src/Unit/EntityResolver/ChainEntityResolverTest.php
@@ -47,10 +47,10 @@ protected function setUp() {
    * @covers ::resolve
    */
   public function testResolverWithNoneResolved() {
-    $resolvers = array(
+    $resolvers = [
       $this->createEntityResolverMock(),
       $this->createEntityResolverMock(),
-    );
+    ];
 
     $resolver = new ChainEntityResolver($resolvers);
 
@@ -78,10 +78,10 @@ public function testResolverWithNoneResolvedUsingAddResolver() {
    * @covers ::resolve
    */
   public function testResolverWithFirstResolved() {
-    $resolvers = array(
+    $resolvers = [
       $this->createEntityResolverMock(10),
       $this->createEntityResolverMock(NULL, FALSE),
-    );
+    ];
 
     $resolver = new ChainEntityResolver($resolvers);
 
@@ -95,10 +95,10 @@ public function testResolverWithFirstResolved() {
    * @covers ::resolve
    */
   public function testResolverWithLastResolved() {
-    $resolvers = array(
+    $resolvers = [
       $this->createEntityResolverMock(),
       $this->createEntityResolverMock(10),
-    );
+    ];
 
     $resolver = new ChainEntityResolver($resolvers);
 
@@ -112,10 +112,10 @@ public function testResolverWithLastResolved() {
    * @covers ::resolve
    */
   public function testResolverWithResolvedToZero() {
-    $resolvers = array(
+    $resolvers = [
       $this->createEntityResolverMock(0),
       $this->createEntityResolverMock(NULL, FALSE),
-    );
+    ];
 
     $resolver = new ChainEntityResolver($resolvers);
 
diff --git a/core/modules/serialization/tests/src/Unit/EntityResolver/UuidResolverTest.php b/core/modules/serialization/tests/src/Unit/EntityResolver/UuidResolverTest.php
index a05d417..8123925 100644
--- a/core/modules/serialization/tests/src/Unit/EntityResolver/UuidResolverTest.php
+++ b/core/modules/serialization/tests/src/Unit/EntityResolver/UuidResolverTest.php
@@ -44,7 +44,7 @@ public function testResolveNotInInterface() {
       ->method('loadEntityByUuid');
 
     $normalizer = $this->getMock('Symfony\Component\Serializer\Normalizer\NormalizerInterface');
-    $this->assertNull($this->resolver->resolve($normalizer, array(), 'test_type'));
+    $this->assertNull($this->resolver->resolve($normalizer, [], 'test_type'));
   }
 
   /**
@@ -57,9 +57,9 @@ public function testResolveNoUuid() {
     $normalizer = $this->getMock('Drupal\serialization\EntityResolver\UuidReferenceInterface');
     $normalizer->expects($this->once())
       ->method('getUuid')
-      ->with(array())
+      ->with([])
       ->will($this->returnValue(NULL));
-    $this->assertNull($this->resolver->resolve($normalizer, array(), 'test_type'));
+    $this->assertNull($this->resolver->resolve($normalizer, [], 'test_type'));
   }
 
   /**
@@ -76,10 +76,10 @@ public function testResolveNoEntity() {
     $normalizer = $this->getMock('Drupal\serialization\EntityResolver\UuidReferenceInterface');
     $normalizer->expects($this->once())
       ->method('getUuid')
-      ->with(array())
+      ->with([])
       ->will($this->returnValue($uuid));
 
-    $this->assertNull($this->resolver->resolve($normalizer, array(), 'test_type'));
+    $this->assertNull($this->resolver->resolve($normalizer, [], 'test_type'));
   }
 
   /**
@@ -101,9 +101,9 @@ public function testResolveWithEntity() {
     $normalizer = $this->getMock('Drupal\serialization\EntityResolver\UuidReferenceInterface');
     $normalizer->expects($this->once())
       ->method('getUuid')
-      ->with(array())
+      ->with([])
       ->will($this->returnValue($uuid));
-    $this->assertSame(1, $this->resolver->resolve($normalizer, array(), 'test_type'));
+    $this->assertSame(1, $this->resolver->resolve($normalizer, [], 'test_type'));
   }
 
 }
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/ConfigEntityNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/ConfigEntityNormalizerTest.php
index ec9a4d0..371450a 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/ConfigEntityNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/ConfigEntityNormalizerTest.php
@@ -17,7 +17,7 @@ class ConfigEntityNormalizerTest extends UnitTestCase {
    * @covers ::normalize
    */
   public function testNormalize() {
-    $test_export_properties = array('test' => 'test');
+    $test_export_properties = ['test' => 'test'];
 
     $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
     $normalizer = new ConfigEntityNormalizer($entity_manager);
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/ContentEntityNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/ContentEntityNormalizerTest.php
index 9613fdb..4beecf4 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/ContentEntityNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/ContentEntityNormalizerTest.php
@@ -40,7 +40,7 @@ protected function setUp() {
     $this->contentEntityNormalizer = new ContentEntityNormalizer($this->entityManager);
     $this->serializer = $this->getMockBuilder('Symfony\Component\Serializer\Serializer')
       ->disableOriginalConstructor()
-      ->setMethods(array('normalize'))
+      ->setMethods(['normalize'])
       ->getMock();
     $this->contentEntityNormalizer->setSerializer($this->serializer);
   }
@@ -66,10 +66,10 @@ public function testNormalize() {
       ->with($this->containsOnlyInstancesOf('Drupal\Core\Field\FieldItemListInterface'), 'test_format', ['account' => NULL])
       ->will($this->returnValue('test'));
 
-    $definitions = array(
+    $definitions = [
       'field_1' => $this->createMockFieldListItem(),
       'field_2' => $this->createMockFieldListItem(FALSE),
-    );
+    ];
     $content_entity_mock = $this->createMockForContentEntity($definitions);
 
     $normalized = $this->contentEntityNormalizer->normalize($content_entity_mock, 'test_format');
@@ -98,10 +98,10 @@ public function testNormalizeWithAccountContext() {
 
     // The mock account should get passed directly into the access() method on
     // field items from $context['account'].
-    $definitions = array(
+    $definitions = [
       'field_1' => $this->createMockFieldListItem(TRUE, $mock_account),
       'field_2' => $this->createMockFieldListItem(FALSE, $mock_account),
-    );
+    ];
     $content_entity_mock = $this->createMockForContentEntity($definitions);
 
     $normalized = $this->contentEntityNormalizer->normalize($content_entity_mock, 'test_format', $context);
@@ -121,7 +121,7 @@ public function testNormalizeWithAccountContext() {
   public function createMockForContentEntity($definitions) {
     $content_entity_mock = $this->getMockBuilder('Drupal\Core\Entity\ContentEntityBase')
       ->disableOriginalConstructor()
-      ->setMethods(array('getFields'))
+      ->setMethods(['getFields'])
       ->getMockForAbstractClass();
     $content_entity_mock->expects($this->once())
       ->method('getFields')
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/EntityNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/EntityNormalizerTest.php
index b3b2780..eb894ca 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/EntityNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/EntityNormalizerTest.php
@@ -51,14 +51,14 @@ public function testNormalize() {
     $list_item_1 = $this->getMock('Drupal\Core\TypedData\TypedDataInterface');
     $list_item_2 = $this->getMock('Drupal\Core\TypedData\TypedDataInterface');
 
-    $definitions = array(
+    $definitions = [
       'field_1' => $list_item_1,
       'field_2' => $list_item_2,
-    );
+    ];
 
     $content_entity = $this->getMockBuilder('Drupal\Core\Entity\ContentEntityBase')
       ->disableOriginalConstructor()
-      ->setMethods(array('getFields'))
+      ->setMethods(['getFields'])
       ->getMockForAbstractClass();
     $content_entity->expects($this->once())
       ->method('getFields')
@@ -66,7 +66,7 @@ public function testNormalize() {
 
     $serializer = $this->getMockBuilder('Symfony\Component\Serializer\Serializer')
       ->disableOriginalConstructor()
-      ->setMethods(array('normalize'))
+      ->setMethods(['normalize'])
       ->getMock();
     $serializer->expects($this->at(0))
       ->method('normalize')
@@ -88,7 +88,7 @@ public function testNormalize() {
    * @expectedException \Symfony\Component\Serializer\Exception\UnexpectedValueException
    */
   public function testDenormalizeWithNoEntityType() {
-    $this->entityNormalizer->denormalize(array(), 'Drupal\Core\Entity\ContentEntityBase');
+    $this->entityNormalizer->denormalize([], 'Drupal\Core\Entity\ContentEntityBase');
   }
 
   /**
@@ -180,9 +180,9 @@ public function testDenormalizeWithValidBundle() {
 
     $storage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
     // Create should only be called with the bundle property at first.
-    $expected_test_data = array(
+    $expected_test_data = [
       'test_type' => 'test_bundle',
-    );
+    ];
 
     $storage->expects($this->once())
       ->method('create')
@@ -198,7 +198,7 @@ public function testDenormalizeWithValidBundle() {
     // item.
     $serializer = $this->getMockBuilder('Symfony\Component\Serializer\Serializer')
       ->disableOriginalConstructor()
-      ->setMethods(array('denormalize'))
+      ->setMethods(['denormalize'])
       ->getMock();
     $serializer->expects($this->at(0))
       ->method('denormalize')
@@ -297,10 +297,10 @@ public function testDenormalizeWithInvalidBundle() {
    * @covers ::denormalize
    */
   public function testDenormalizeWithNoBundle() {
-    $test_data = array(
+    $test_data = [
       'key_1' => 'value_1',
       'key_2' => 'value_2',
-    );
+    ];
 
     $entity_type = $this->getMock('Drupal\Core\Entity\EntityTypeInterface');
     $entity_type->expects($this->once())
@@ -329,7 +329,7 @@ public function testDenormalizeWithNoBundle() {
     $this->entityManager->expects($this->never())
       ->method('getBaseFieldDefinitions');
 
-    $this->assertNotNull($this->entityNormalizer->denormalize($test_data, 'Drupal\Core\Entity\ContentEntityBase', NULL, array('entity_type' => 'test')));
+    $this->assertNotNull($this->entityNormalizer->denormalize($test_data, 'Drupal\Core\Entity\ContentEntityBase', NULL, ['entity_type' => 'test']));
   }
 
 }
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/ListNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/ListNormalizerTest.php
index bbc7c11..fccc6db 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/ListNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/ListNormalizerTest.php
@@ -34,7 +34,7 @@ class ListNormalizerTest extends UnitTestCase {
    *
    * @var array
    */
-  protected $expectedListValues = array('test', 'test', 'test');
+  protected $expectedListValues = ['test', 'test', 'test'];
 
   /**
    * The mocked typed data.
@@ -54,7 +54,7 @@ protected function setUp() {
     // Set up a mock container as ItemList() will call for the 'typed_data_manager'
     // service.
     $container = $this->getMockBuilder('Symfony\Component\DependencyInjection\ContainerBuilder')
-      ->setMethods(array('get'))
+      ->setMethods(['get'])
       ->getMock();
     $container->expects($this->any())
       ->method('get')
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
index e77882a..f5e8f0f 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
@@ -45,20 +45,20 @@ public function testSupportsNormalization($expected_return, $data, $supported_in
    *   An array of provider data for testSupportsNormalization.
    */
   public function providerTestSupportsNormalization() {
-    return array(
+    return [
       // Something that is not an object should return FALSE immediately.
-      array(FALSE, array()),
+      [FALSE, []],
       // An object with no class set should return FALSE.
-      array(FALSE, new \stdClass()),
+      [FALSE, new \stdClass()],
       // Set a supported Class.
-      array(TRUE, new \stdClass(), 'stdClass'),
+      [TRUE, new \stdClass(), 'stdClass'],
       // Set a supported interface.
-      array(TRUE, new \RecursiveArrayIterator(), 'RecursiveIterator'),
+      [TRUE, new \RecursiveArrayIterator(), 'RecursiveIterator'],
       // Set a different class.
-      array(FALSE, new \stdClass(), 'ArrayIterator'),
+      [FALSE, new \stdClass(), 'ArrayIterator'],
       // Set a different interface.
-      array(FALSE, new \stdClass(), 'RecursiveIterator'),
-    );
+      [FALSE, new \stdClass(), 'RecursiveIterator'],
+    ];
   }
 
 }
diff --git a/core/modules/shortcut/shortcut.install b/core/modules/shortcut/shortcut.install
index 8df408f..21ebf51 100644
--- a/core/modules/shortcut/shortcut.install
+++ b/core/modules/shortcut/shortcut.install
@@ -9,39 +9,39 @@
  * Implements hook_schema().
  */
 function shortcut_schema() {
-  $schema['shortcut_set_users'] = array(
+  $schema['shortcut_set_users'] = [
     'description' => 'Maps users to shortcut sets.',
-    'fields' => array(
-      'uid' => array(
+    'fields' => [
+      'uid' => [
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'description' => 'The {users}.uid for this set.',
-      ),
-      'set_name' => array(
+      ],
+      'set_name' => [
         'type' => 'varchar_ascii',
         'length' => 32,
         'not null' => TRUE,
         'default' => '',
         'description' => "The {shortcut_set}.set_name that will be displayed for this user.",
-      ),
-    ),
-    'primary key' => array('uid'),
-    'indexes' => array(
-      'set_name' => array('set_name'),
-    ),
-    'foreign keys' => array(
-      'set_user' => array(
+      ],
+    ],
+    'primary key' => ['uid'],
+    'indexes' => [
+      'set_name' => ['set_name'],
+    ],
+    'foreign keys' => [
+      'set_user' => [
         'table' => 'users',
-        'columns' => array('uid' => 'uid'),
-      ),
-      'set_name' => array(
+        'columns' => ['uid' => 'uid'],
+      ],
+      'set_name' => [
         'table' => 'shortcut_set',
-        'columns' => array('set_name' => 'set_name'),
-      ),
-    ),
-  );
+        'columns' => ['set_name' => 'set_name'],
+      ],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/shortcut/shortcut.module b/core/modules/shortcut/shortcut.module
index b7294ad..156b491 100644
--- a/core/modules/shortcut/shortcut.module
+++ b/core/modules/shortcut/shortcut.module
@@ -20,16 +20,16 @@ function shortcut_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.shortcut':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Shortcut module allows users to create sets of <em>shortcut</em> links to commonly-visited pages of the site. Shortcuts are contained within <em>sets</em>. Each user with <em>Select any shortcut set</em> permission can select a shortcut set created by anyone at the site. For more information, see the <a href=":shortcut">online documentation for the Shortcut module</a>.', array(':shortcut' => 'https://www.drupal.org/documentation/modules/shortcut')) . '</p>';
+      $output .= '<p>' . t('The Shortcut module allows users to create sets of <em>shortcut</em> links to commonly-visited pages of the site. Shortcuts are contained within <em>sets</em>. Each user with <em>Select any shortcut set</em> permission can select a shortcut set created by anyone at the site. For more information, see the <a href=":shortcut">online documentation for the Shortcut module</a>.', [':shortcut' => 'https://www.drupal.org/documentation/modules/shortcut']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl><dt>' . t('Administering shortcuts') . '</dt>';
-      $output .= '<dd>' . t('Users with the <em>Administer shortcuts</em> permission can manage shortcut sets and edit the shortcuts within sets from the <a href=":shortcuts">Shortcuts administration page</a>.', array(':shortcuts' => \Drupal::url('entity.shortcut_set.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>Administer shortcuts</em> permission can manage shortcut sets and edit the shortcuts within sets from the <a href=":shortcuts">Shortcuts administration page</a>.', [':shortcuts' => \Drupal::url('entity.shortcut_set.collection')]) . '</dd>';
       $output .= '<dt>' . t('Choosing shortcut sets') . '</dt>';
       $output .= '<dd>' . t('Users with permission to switch shortcut sets can choose a shortcut set to use from the Shortcuts tab of their user account page.') . '</dd>';
       $output .= '<dt>' . t('Adding and removing shortcuts') . '</dt>';
       $output .= '<dd>' . t('The Shortcut module creates an add/remove link for each page on your site; the link lets you add or remove the current page from the currently-enabled set of shortcuts (if your theme displays it and you have permission to edit your shortcut set). The core Seven administration theme displays this link next to the page title, as a grey or yellow star. If you click on the grey star, you will add that page to your preferred set of shortcuts. If the page is already part of your shortcut set, the link will be a yellow star, and will allow you to remove the current page from your shortcut set.') . '</dd>';
       $output .= '<dt>' . t('Displaying shortcuts') . '</dt>';
-      $output .= '<dd>' . t('You can display your shortcuts by enabling the <em>Shortcuts</em> block on the <a href=":blocks">Blocks administration page</a>. Certain administrative modules also display your shortcuts; for example, the core <a href=":toolbar-help">Toolbar module</a> provides a corresponding menu item.', array(':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':toolbar-help' => (\Drupal::moduleHandler()->moduleExists('toolbar')) ? \Drupal::url('help.page', array('name' => 'toolbar')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('You can display your shortcuts by enabling the <em>Shortcuts</em> block on the <a href=":blocks">Blocks administration page</a>. Certain administrative modules also display your shortcuts; for example, the core <a href=":toolbar-help">Toolbar module</a> provides a corresponding menu item.', [':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#', ':toolbar-help' => (\Drupal::moduleHandler()->moduleExists('toolbar')) ? \Drupal::url('help.page', ['name' => 'toolbar']) : '#']) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -38,7 +38,7 @@ function shortcut_help($route_name, RouteMatchInterface $route_match) {
     case 'entity.shortcut_set.edit_form':
       $user = \Drupal::currentUser();
       if ($user->hasPermission('access shortcuts') && $user->hasPermission('switch shortcut sets')) {
-        $output = '<p>' . t('Define which shortcut set you are using on the <a href=":shortcut-link">Shortcuts tab</a> of your account page.', array(':shortcut-link' => \Drupal::url('shortcut.set_switch', array('user' => $user->id())))) . '</p>';
+        $output = '<p>' . t('Define which shortcut set you are using on the <a href=":shortcut-link">Shortcuts tab</a> of your account page.', [':shortcut-link' => \Drupal::url('shortcut.set_switch', ['user' => $user->id()])]) . '</p>';
         return $output;
       }
   }
@@ -162,7 +162,7 @@ function shortcut_set_unassign_user($account) {
  *   the default set is returned.
  */
 function shortcut_current_displayed_set($account = NULL) {
-  $shortcut_sets = &drupal_static(__FUNCTION__, array());
+  $shortcut_sets = &drupal_static(__FUNCTION__, []);
   $user = \Drupal::currentUser();
   if (!isset($account)) {
     $account = $user;
@@ -209,7 +209,7 @@ function shortcut_default_set($account = NULL) {
   // have one, we allow the last module which returns a valid result to take
   // precedence. If no module returns a valid set, fall back on the site-wide
   // default, which is the lowest-numbered shortcut set.
-  $suggestions = array_reverse(\Drupal::moduleHandler()->invokeAll('shortcut_default_set', array($account)));
+  $suggestions = array_reverse(\Drupal::moduleHandler()->invokeAll('shortcut_default_set', [$account]));
   $suggestions[] = 'default';
   foreach ($suggestions as $name) {
     if ($shortcut_set = ShortcutSet::load($name)) {
@@ -252,37 +252,37 @@ function shortcut_set_title_exists($title) {
  *   An array of shortcut links, in the format returned by the menu system.
  */
 function shortcut_renderable_links($shortcut_set = NULL) {
-  $shortcut_links = array();
+  $shortcut_links = [];
 
   if (!isset($shortcut_set)) {
     $shortcut_set = shortcut_current_displayed_set();
   }
 
-  $cache_tags = array();
+  $cache_tags = [];
   foreach ($shortcut_set->getShortcuts() as $shortcut) {
     $shortcut = \Drupal::entityManager()->getTranslationFromContext($shortcut);
     $url = $shortcut->getUrl();
     if ($url->access()) {
-      $links[$shortcut->id()] = array(
+      $links[$shortcut->id()] = [
         'type' => 'link',
         'title' => $shortcut->label(),
         'url' => $shortcut->getUrl(),
-      );
+      ];
       $cache_tags = Cache::mergeTags($cache_tags, $shortcut->getCacheTags());
     }
   }
 
   if (!empty($links)) {
-    $shortcut_links = array(
+    $shortcut_links = [
       '#theme' => 'links__toolbar_shortcuts',
       '#links' => $links,
-      '#attributes' => array(
-        'class' => array('toolbar-menu'),
-      ),
-      '#cache' => array(
+      '#attributes' => [
+        'class' => ['toolbar-menu'],
+      ],
+      '#cache' => [
         'tags' => $cache_tags,
-      ),
-    );
+      ],
+    ];
   }
 
   return $shortcut_links;
@@ -313,15 +313,15 @@ function shortcut_preprocess_page_title(&$variables) {
     // string form, so we can set the default name for the shortcut.
     // Strip HTML tags from the title.
     $name = trim(strip_tags(render($variables['title'])));
-    $query = array(
+    $query = [
       'link' => $link,
       'name' => $name,
-    );
+    ];
 
     $shortcut_set = shortcut_current_displayed_set();
 
     // Check if $link is already a shortcut and set $link_mode accordingly.
-    $shortcuts = \Drupal::entityManager()->getStorage('shortcut')->loadByProperties(array('shortcut_set' => $shortcut_set->id()));
+    $shortcuts = \Drupal::entityManager()->getStorage('shortcut')->loadByProperties(['shortcut_set' => $shortcut_set->id()]);
     /** @var \Drupal\shortcut\ShortcutInterface $shortcut */
     foreach ($shortcuts as $shortcut) {
       if (($shortcut_url = $shortcut->getUrl()) && $shortcut_url->isRouted() && $shortcut_url->getRouteName() == $route_match->getRouteName() && $shortcut_url->getRouteParameters() == $route_match->getRawParameters()->all()) {
@@ -332,36 +332,36 @@ function shortcut_preprocess_page_title(&$variables) {
     $link_mode = isset($shortcut_id) ? "remove" : "add";
 
     if ($link_mode == "add") {
-      $link_text = shortcut_set_switch_access()->isAllowed() ? t('Add to %shortcut_set shortcuts', array('%shortcut_set' => $shortcut_set->label())) : t('Add to shortcuts');
+      $link_text = shortcut_set_switch_access()->isAllowed() ? t('Add to %shortcut_set shortcuts', ['%shortcut_set' => $shortcut_set->label()]) : t('Add to shortcuts');
       $route_name = 'shortcut.link_add_inline';
-      $route_parameters = array('shortcut_set' => $shortcut_set->id());
+      $route_parameters = ['shortcut_set' => $shortcut_set->id()];
     }
     else {
       $query['id'] = $shortcut_id;
-      $link_text = shortcut_set_switch_access()->isAllowed() ? t('Remove from %shortcut_set shortcuts', array('%shortcut_set' => $shortcut_set->label())) : t('Remove from shortcuts');
+      $link_text = shortcut_set_switch_access()->isAllowed() ? t('Remove from %shortcut_set shortcuts', ['%shortcut_set' => $shortcut_set->label()]) : t('Remove from shortcuts');
       $route_name = 'entity.shortcut.link_delete_inline';
-      $route_parameters = array('shortcut' => $shortcut_id);
+      $route_parameters = ['shortcut' => $shortcut_id];
     }
 
     if (theme_get_setting('third_party_settings.shortcut.module_link')) {
       $query += \Drupal::destination()->getAsArray();
-      $variables['title_suffix']['add_or_remove_shortcut'] = array(
-        '#attached' => array(
-          'library' => array(
+      $variables['title_suffix']['add_or_remove_shortcut'] = [
+        '#attached' => [
+          'library' => [
             'shortcut/drupal.shortcut',
-          ),
-        ),
+          ],
+        ],
         '#type' => 'link',
-        '#title' => SafeMarkup::format('<span class="shortcut-action__icon"></span><span class="shortcut-action__message">@text</span>', array('@text' => $link_text)),
+        '#title' => SafeMarkup::format('<span class="shortcut-action__icon"></span><span class="shortcut-action__message">@text</span>', ['@text' => $link_text]),
         '#url' => Url::fromRoute($route_name, $route_parameters),
-        '#options' => array('query' => $query),
-        '#attributes' => array(
-          'class' => array(
+        '#options' => ['query' => $query],
+        '#attributes' => [
+          'class' => [
             'shortcut-action',
             'shortcut-action--' . $link_mode,
-          ),
-        ),
-      );
+          ],
+        ],
+      ];
     }
   }
 }
@@ -390,37 +390,37 @@ function shortcut_toolbar() {
     \Drupal::service('renderer')->addCacheableDependency($items['shortcuts'], $shortcut_set);
     $configure_link = NULL;
     if (shortcut_set_edit_access($shortcut_set)->isAllowed()) {
-      $configure_link = array(
+      $configure_link = [
         '#type' => 'link',
         '#title' => t('Edit shortcuts'),
         '#url' => Url::fromRoute('entity.shortcut_set.customize_form', ['shortcut_set' => $shortcut_set->id()]),
-        '#options' => array('attributes' => array('class' => array('edit-shortcuts'))),
-      );
+        '#options' => ['attributes' => ['class' => ['edit-shortcuts']]],
+      ];
     }
     if (!empty($links) || !empty($configure_link)) {
-      $items['shortcuts'] += array(
+      $items['shortcuts'] += [
         '#type' => 'toolbar_item',
-        'tab' => array(
+        'tab' => [
           '#type' => 'link',
           '#title' => t('Shortcuts'),
           '#url' => $shortcut_set->urlInfo('collection'),
-          '#attributes' => array(
+          '#attributes' => [
             'title' => t('Shortcuts'),
-            'class' => array('toolbar-icon', 'toolbar-icon-shortcut'),
-          ),
-        ),
-        'tray' => array(
+            'class' => ['toolbar-icon', 'toolbar-icon-shortcut'],
+          ],
+        ],
+        'tray' => [
           '#heading' => t('User-defined shortcuts'),
           'shortcuts' => $links,
           'configure' => $configure_link,
-        ),
+        ],
         '#weight' => -10,
-        '#attached' => array(
-          'library' => array(
+        '#attached' => [
+          'library' => [
             'shortcut/drupal.shortcut',
-          ),
-        ),
-      );
+          ],
+        ],
+      ];
     }
   }
 
diff --git a/core/modules/shortcut/src/Controller/ShortcutController.php b/core/modules/shortcut/src/Controller/ShortcutController.php
index ff0e184..4f33b0b 100644
--- a/core/modules/shortcut/src/Controller/ShortcutController.php
+++ b/core/modules/shortcut/src/Controller/ShortcutController.php
@@ -21,7 +21,7 @@ class ShortcutController extends ControllerBase {
    *   The shortcut add form.
    */
   public function addForm(ShortcutSetInterface $shortcut_set) {
-    $shortcut = $this->entityManager()->getStorage('shortcut')->create(array('shortcut_set' => $shortcut_set->id()));
+    $shortcut = $this->entityManager()->getStorage('shortcut')->create(['shortcut_set' => $shortcut_set->id()]);
     return $this->entityFormBuilder()->getForm($shortcut, 'add');
   }
 
@@ -40,10 +40,10 @@ public function deleteShortcutLinkInline(ShortcutInterface $shortcut) {
 
     try {
       $shortcut->delete();
-      drupal_set_message($this->t('The shortcut %title has been deleted.', array('%title' => $label)));
+      drupal_set_message($this->t('The shortcut %title has been deleted.', ['%title' => $label]));
     }
     catch (\Exception $e) {
-      drupal_set_message($this->t('Unable to delete the shortcut for %title.', array('%title' => $label)), 'error');
+      drupal_set_message($this->t('Unable to delete the shortcut for %title.', ['%title' => $label]), 'error');
     }
 
     return $this->redirect('<front>');
diff --git a/core/modules/shortcut/src/Controller/ShortcutSetController.php b/core/modules/shortcut/src/Controller/ShortcutSetController.php
index 8d84f9a..58a68d7 100644
--- a/core/modules/shortcut/src/Controller/ShortcutSetController.php
+++ b/core/modules/shortcut/src/Controller/ShortcutSetController.php
@@ -55,20 +55,20 @@ public function addShortcutLinkInline(ShortcutSetInterface $shortcut_set, Reques
     $link = $request->query->get('link');
     $name = $request->query->get('name');
     if (parse_url($link, PHP_URL_SCHEME) === NULL && $this->pathValidator->isValid($link)) {
-      $shortcut = $this->entityManager()->getStorage('shortcut')->create(array(
+      $shortcut = $this->entityManager()->getStorage('shortcut')->create([
         'title' => $name,
         'shortcut_set' => $shortcut_set->id(),
-        'link' => array(
+        'link' => [
           'uri' => 'internal:/' . $link,
-        ),
-      ));
+        ],
+      ]);
 
       try {
         $shortcut->save();
-        drupal_set_message($this->t('Added a shortcut for %title.', array('%title' => $shortcut->label())));
+        drupal_set_message($this->t('Added a shortcut for %title.', ['%title' => $shortcut->label()]));
       }
       catch (\Exception $e) {
-        drupal_set_message($this->t('Unable to add a shortcut for %title.', array('%title' => $shortcut->label())), 'error');
+        drupal_set_message($this->t('Unable to add a shortcut for %title.', ['%title' => $shortcut->label()]), 'error');
       }
 
       return $this->redirect('<front>');
diff --git a/core/modules/shortcut/src/Entity/Shortcut.php b/core/modules/shortcut/src/Entity/Shortcut.php
index 6ddaf05..87e2ccb 100644
--- a/core/modules/shortcut/src/Entity/Shortcut.php
+++ b/core/modules/shortcut/src/Entity/Shortcut.php
@@ -123,13 +123,13 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setRequired(TRUE)
       ->setTranslatable(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -10,
-        'settings' => array(
+        'settings' => [
           'size' => 40,
-        ),
-      ));
+        ],
+      ]);
 
     $fields['weight'] = BaseFieldDefinition::create('integer')
       ->setLabel(t('Weight'))
@@ -139,14 +139,14 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Path'))
       ->setDescription(t('The location this shortcut points to.'))
       ->setRequired(TRUE)
-      ->setSettings(array(
+      ->setSettings([
         'link_type' => LinkItemInterface::LINK_INTERNAL,
         'title' => DRUPAL_DISABLED,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'link_default',
         'weight' => 0,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     return $fields;
diff --git a/core/modules/shortcut/src/Entity/ShortcutSet.php b/core/modules/shortcut/src/Entity/ShortcutSet.php
index 7b42310..3d3815d 100644
--- a/core/modules/shortcut/src/Entity/ShortcutSet.php
+++ b/core/modules/shortcut/src/Entity/ShortcutSet.php
@@ -116,8 +116,8 @@ public function resetLinkWeights() {
    * {@inheritdoc}
    */
   public function getShortcuts() {
-    $shortcuts = \Drupal::entityManager()->getStorage('shortcut')->loadByProperties(array('shortcut_set' => $this->id()));
-    uasort($shortcuts, array('\Drupal\shortcut\Entity\Shortcut', 'sort'));
+    $shortcuts = \Drupal::entityManager()->getStorage('shortcut')->loadByProperties(['shortcut_set' => $this->id()]);
+    uasort($shortcuts, ['\Drupal\shortcut\Entity\Shortcut', 'sort']);
     return $shortcuts;
   }
 
diff --git a/core/modules/shortcut/src/Form/SetCustomize.php b/core/modules/shortcut/src/Form/SetCustomize.php
index 89e5123..6c97577 100644
--- a/core/modules/shortcut/src/Form/SetCustomize.php
+++ b/core/modules/shortcut/src/Form/SetCustomize.php
@@ -23,24 +23,24 @@ class SetCustomize extends EntityForm {
    */
   public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
-    $form['shortcuts'] = array(
+    $form['shortcuts'] = [
       '#tree' => TRUE,
       '#weight' => -20,
-    );
+    ];
 
-    $form['shortcuts']['links'] = array(
+    $form['shortcuts']['links'] = [
       '#type' => 'table',
-      '#header' => array(t('Name'), t('Weight'), t('Operations')),
-      '#empty' => $this->t('No shortcuts available. <a href=":link">Add a shortcut</a>', array(':link' => $this->url('shortcut.link_add', array('shortcut_set' => $this->entity->id())))),
-      '#attributes' => array('id' => 'shortcuts'),
-      '#tabledrag' => array(
-        array(
+      '#header' => [t('Name'), t('Weight'), t('Operations')],
+      '#empty' => $this->t('No shortcuts available. <a href=":link">Add a shortcut</a>', [':link' => $this->url('shortcut.link_add', ['shortcut_set' => $this->entity->id()])]),
+      '#attributes' => ['id' => 'shortcuts'],
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'shortcut-weight',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     foreach ($this->entity->getShortcuts() as $shortcut) {
       $id = $shortcut->id();
@@ -49,33 +49,33 @@ public function form(array $form, FormStateInterface $form_state) {
         continue;
       }
       $form['shortcuts']['links'][$id]['#attributes']['class'][] = 'draggable';
-      $form['shortcuts']['links'][$id]['name'] = array(
+      $form['shortcuts']['links'][$id]['name'] = [
         '#type' => 'link',
         '#title' => $shortcut->getTitle(),
-      ) + $url->toRenderArray();
+      ] + $url->toRenderArray();
       unset($form['shortcuts']['links'][$id]['name']['#access_callback']);
       $form['shortcuts']['links'][$id]['#weight'] = $shortcut->getWeight();
-      $form['shortcuts']['links'][$id]['weight'] = array(
+      $form['shortcuts']['links'][$id]['weight'] = [
         '#type' => 'weight',
-        '#title' => t('Weight for @title', array('@title' => $shortcut->getTitle())),
+        '#title' => t('Weight for @title', ['@title' => $shortcut->getTitle()]),
         '#title_display' => 'invisible',
         '#default_value' => $shortcut->getWeight(),
-        '#attributes' => array('class' => array('shortcut-weight')),
-      );
+        '#attributes' => ['class' => ['shortcut-weight']],
+      ];
 
-      $links['edit'] = array(
+      $links['edit'] = [
         'title' => t('Edit'),
         'url' => $shortcut->urlInfo(),
-      );
-      $links['delete'] = array(
+      ];
+      $links['delete'] = [
         'title' => t('Delete'),
         'url' => $shortcut->urlInfo('delete-form'),
-      );
-      $form['shortcuts']['links'][$id]['operations'] = array(
+      ];
+      $form['shortcuts']['links'][$id]['operations'] = [
         '#type' => 'operations',
         '#links' => $links,
         '#access' => $url->access(),
-      );
+      ];
     }
     return $form;
   }
@@ -85,14 +85,14 @@ public function form(array $form, FormStateInterface $form_state) {
    */
   protected function actions(array $form, FormStateInterface $form_state) {
     // Only includes a Save action for the entity, no direct Delete button.
-    return array(
-      'submit' => array(
+    return [
+      'submit' => [
         '#type' => 'submit',
         '#value' => t('Save'),
         '#access' => (bool) Element::getVisibleChildren($form['shortcuts']['links']),
-        '#submit' => array('::submitForm', '::save'),
-      ),
-    );
+        '#submit' => ['::submitForm', '::save'],
+      ],
+    ];
   }
 
   /**
@@ -100,7 +100,7 @@ protected function actions(array $form, FormStateInterface $form_state) {
    */
   public function save(array $form, FormStateInterface $form_state) {
     foreach ($this->entity->getShortcuts() as $shortcut) {
-      $weight = $form_state->getValue(array('shortcuts', 'links', $shortcut->id(), 'weight'));
+      $weight = $form_state->getValue(['shortcuts', 'links', $shortcut->id(), 'weight']);
       $shortcut->setWeight($weight);
       $shortcut->save();
     }
diff --git a/core/modules/shortcut/src/Form/ShortcutDeleteForm.php b/core/modules/shortcut/src/Form/ShortcutDeleteForm.php
index aee6788..fcabeec 100644
--- a/core/modules/shortcut/src/Form/ShortcutDeleteForm.php
+++ b/core/modules/shortcut/src/Form/ShortcutDeleteForm.php
@@ -21,9 +21,9 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('entity.shortcut_set.customize_form', array(
+    return new Url('entity.shortcut_set.customize_form', [
       'shortcut_set' => $this->entity->bundle(),
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/shortcut/src/Form/ShortcutSetDeleteForm.php b/core/modules/shortcut/src/Form/ShortcutSetDeleteForm.php
index 3c732d6..c383627 100644
--- a/core/modules/shortcut/src/Form/ShortcutSetDeleteForm.php
+++ b/core/modules/shortcut/src/Form/ShortcutSetDeleteForm.php
@@ -65,9 +65,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $info .= '<p>' . t('If you have chosen this shortcut set as the default for some or all users, they may also be affected by deleting it.') . '</p>';
     }
 
-    $form['info'] = array(
+    $form['info'] = [
       '#markup' => $info,
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/shortcut/src/Form/SwitchShortcutSet.php b/core/modules/shortcut/src/Form/SwitchShortcutSet.php
index 220f49b..649cef7 100644
--- a/core/modules/shortcut/src/Form/SwitchShortcutSet.php
+++ b/core/modules/shortcut/src/Form/SwitchShortcutSet.php
@@ -77,60 +77,60 @@ public function buildForm(array $form, FormStateInterface $form_state, UserInter
 
     $account_is_user = $this->user->id() == $account->id();
     if (count($options) > 1) {
-      $form['set'] = array(
+      $form['set'] = [
         '#type' => 'radios',
         '#title' => $account_is_user ? $this->t('Choose a set of shortcuts to use') : $this->t('Choose a set of shortcuts for this user'),
         '#options' => $options,
         '#default_value' => $current_set->id(),
-      );
+      ];
 
-      $form['label'] = array(
+      $form['label'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Label'),
         '#description' => $this->t('The new set is created by copying items from your default shortcut set.'),
         '#access' => $add_access,
-        '#states' => array(
-          'visible' => array(
-            ':input[name="set"]' => array('value' => 'new'),
-          ),
-          'required' => array(
-            ':input[name="set"]' => array('value' => 'new'),
-          ),
-        ),
-      );
-      $form['id'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="set"]' => ['value' => 'new'],
+          ],
+          'required' => [
+            ':input[name="set"]' => ['value' => 'new'],
+          ],
+        ],
+      ];
+      $form['id'] = [
         '#type' => 'machine_name',
-        '#machine_name' => array(
-          'exists' => array($this, 'exists'),
+        '#machine_name' => [
+          'exists' => [$this, 'exists'],
           'replace_pattern' => '[^a-z0-9-]+',
           'replace' => '-',
-        ),
+        ],
         // This ID could be used for menu name.
         '#maxlength' => 23,
-        '#states' => array(
-          'required' => array(
-            ':input[name="set"]' => array('value' => 'new'),
-          ),
-        ),
+        '#states' => [
+          'required' => [
+            ':input[name="set"]' => ['value' => 'new'],
+          ],
+        ],
         '#required' => FALSE,
-      );
+      ];
 
       if (!$account_is_user) {
         $default_set = $this->shortcutSetStorage->getDefaultSet($this->user);
-        $form['new']['#description'] = $this->t('The new set is created by copying items from the %default set.', array('%default' => $default_set->label()));
+        $form['new']['#description'] = $this->t('The new set is created by copying items from the %default set.', ['%default' => $default_set->label()]);
       }
 
-      $form['actions'] = array('#type' => 'actions');
-      $form['actions']['submit'] = array(
+      $form['actions'] = ['#type' => 'actions'];
+      $form['actions']['submit'] = [
         '#type' => 'submit',
         '#value' => $this->t('Change set'),
-      );
+      ];
     }
     else {
       // There is only 1 option, so output a message in the $form array.
-      $form['info'] = array(
-        '#markup' => '<p>' . $this->t('You are currently using the %set-name shortcut set.', array('%set-name' => $current_set->label())) . '</p>',
-      );
+      $form['info'] = [
+        '#markup' => '<p>' . $this->t('You are currently using the %set-name shortcut set.', ['%set-name' => $current_set->label()]) . '</p>',
+      ];
     }
 
     return $form;
@@ -173,16 +173,16 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form_state->getValue('set') == 'new') {
       // Save a new shortcut set with links copied from the user's default set.
       /* @var \Drupal\shortcut\Entity\ShortcutSet $set */
-      $set = $this->shortcutSetStorage->create(array(
+      $set = $this->shortcutSetStorage->create([
         'id' => $form_state->getValue('id'),
         'label' => $form_state->getValue('label'),
-      ));
+      ]);
       $set->save();
-      $replacements = array(
+      $replacements = [
         '%user' => $this->user->label(),
         '%set_name' => $set->label(),
         ':switch-url' => $this->url('<current>'),
-      );
+      ];
       if ($account_is_user) {
         // Only administrators can create new shortcut sets, so we know they have
         // access to switch back.
@@ -193,17 +193,17 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       }
       $form_state->setRedirect(
         'entity.shortcut_set.customize_form',
-        array('shortcut_set' => $set->id())
+        ['shortcut_set' => $set->id()]
       );
     }
     else {
       // Switch to a different shortcut set.
       /* @var \Drupal\shortcut\Entity\ShortcutSet $set */
       $set = $this->shortcutSetStorage->load($form_state->getValue('set'));
-      $replacements = array(
+      $replacements = [
         '%user' => $this->user->getDisplayName(),
         '%set_name' => $set->label(),
-      );
+      ];
       drupal_set_message($account_is_user ? $this->t('You are now using the %set_name shortcut set.', $replacements) : $this->t('%user is now using the %set_name shortcut set.', $replacements));
     }
 
diff --git a/core/modules/shortcut/src/Plugin/Block/ShortcutsBlock.php b/core/modules/shortcut/src/Plugin/Block/ShortcutsBlock.php
index 1678f6a..ab2d57e 100644
--- a/core/modules/shortcut/src/Plugin/Block/ShortcutsBlock.php
+++ b/core/modules/shortcut/src/Plugin/Block/ShortcutsBlock.php
@@ -21,9 +21,9 @@ class ShortcutsBlock extends BlockBase {
    * {@inheritdoc}
    */
   public function build() {
-    return array(
+    return [
       shortcut_renderable_links(shortcut_current_displayed_set()),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/shortcut/src/Plugin/migrate/destination/ShortcutSetUsers.php b/core/modules/shortcut/src/Plugin/migrate/destination/ShortcutSetUsers.php
index cd86f0f..0cb843b 100644
--- a/core/modules/shortcut/src/Plugin/migrate/destination/ShortcutSetUsers.php
+++ b/core/modules/shortcut/src/Plugin/migrate/destination/ShortcutSetUsers.php
@@ -60,14 +60,14 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'set_name' => array(
+    return [
+      'set_name' => [
         'type' => 'string',
-      ),
-      'uid' => array(
+      ],
+      'uid' => [
         'type' => 'integer',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -83,14 +83,14 @@ public function fields(MigrationInterface $migration = NULL) {
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     /** @var \Drupal\shortcut\ShortcutSetInterface $set */
     $set = $this->shortcutSetStorage->load($row->getDestinationProperty('set_name'));
     /** @var \Drupal\user\UserInterface $account */
     $account = User::load($row->getDestinationProperty('uid'));
     $this->shortcutSetStorage->assignUser($set, $account);
 
-    return array($set->id(), $account->id());
+    return [$set->id(), $account->id()];
   }
 
 }
diff --git a/core/modules/shortcut/src/Plugin/migrate/source/d7/Shortcut.php b/core/modules/shortcut/src/Plugin/migrate/source/d7/Shortcut.php
index c964e5c..444c38f 100644
--- a/core/modules/shortcut/src/Plugin/migrate/source/d7/Shortcut.php
+++ b/core/modules/shortcut/src/Plugin/migrate/source/d7/Shortcut.php
@@ -19,7 +19,7 @@ class Shortcut extends DrupalSqlBase {
    */
   public function query() {
     return $this->select('menu_links', 'ml')
-      ->fields('ml', array('mlid', 'menu_name', 'link_path', 'link_title', 'weight'))
+      ->fields('ml', ['mlid', 'menu_name', 'link_path', 'link_title', 'weight'])
       ->condition('hidden', '0')
       ->condition('menu_name', 'shortcut-set-%', 'LIKE')
       ->orderBy('ml.mlid');
@@ -29,13 +29,13 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'mlid' => $this->t("The menu.mlid primary key for this menu item (= shortcut link)."),
       'menu_name' => $this->t("The menu_name (= set name) for this shortcut link."),
       'link_path' => $this->t("The link for this shortcut."),
       'link_title' => $this->t("The title for this shortcut."),
       'weight' => $this->t("The weight for this shortcut"),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSet.php b/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSet.php
index 75f1454..a088ca8 100644
--- a/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSet.php
+++ b/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSet.php
@@ -25,10 +25,10 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'set_name' => $this->t("The name under which the set's links are stored."),
       'title' => $this->t("The title of the set."),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSetUsers.php b/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSetUsers.php
index dd5a13f..b86dccd 100644
--- a/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSetUsers.php
+++ b/core/modules/shortcut/src/Plugin/migrate/source/d7/ShortcutSetUsers.php
@@ -25,24 +25,24 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'uid' => $this->t('The users.uid for this set.'),
       'set_name' => $this->t('The shortcut_set.set_name that will be displayed for this user.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'set_name' => array(
+    return [
+      'set_name' => [
         'type' => 'string',
-      ),
-      'uid' => array(
+      ],
+      'uid' => [
         'type' => 'integer',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/shortcut/src/ShortcutForm.php b/core/modules/shortcut/src/ShortcutForm.php
index b87db1b..bfe3133 100644
--- a/core/modules/shortcut/src/ShortcutForm.php
+++ b/core/modules/shortcut/src/ShortcutForm.php
@@ -35,16 +35,16 @@ public function save(array $form, FormStateInterface $form_state) {
     }
 
     if ($status == SAVED_UPDATED) {
-      $message = $this->t('The shortcut %link has been updated.', array('%link' => $view_link));
+      $message = $this->t('The shortcut %link has been updated.', ['%link' => $view_link]);
     }
     else {
-      $message = $this->t('Added a shortcut for %title.', array('%title' => $view_link));
+      $message = $this->t('Added a shortcut for %title.', ['%title' => $view_link]);
     }
     drupal_set_message($message);
 
     $form_state->setRedirect(
       'entity.shortcut_set.customize_form',
-      array('shortcut_set' => $entity->bundle())
+      ['shortcut_set' => $entity->bundle()]
     );
   }
 
diff --git a/core/modules/shortcut/src/ShortcutSetForm.php b/core/modules/shortcut/src/ShortcutSetForm.php
index 012de5f..721d251 100644
--- a/core/modules/shortcut/src/ShortcutSetForm.php
+++ b/core/modules/shortcut/src/ShortcutSetForm.php
@@ -17,25 +17,25 @@ public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
 
     $entity = $this->entity;
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => t('Set name'),
       '#description' => t('The new set is created by copying items from your default shortcut set.'),
       '#required' => TRUE,
       '#default_value' => $entity->label(),
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\shortcut\Entity\ShortcutSet::load',
-        'source' => array('label'),
+        'source' => ['label'],
         'replace_pattern' => '[^a-z0-9-]+',
         'replace' => '-',
-      ),
+      ],
       '#default_value' => $entity->id(),
       // This id could be used for menu name.
       '#maxlength' => 23,
-    );
+    ];
 
     $form['actions']['submit']['#value'] = t('Create new set');
 
@@ -51,10 +51,10 @@ public function save(array $form, FormStateInterface $form_state) {
     $entity->save();
 
     if ($is_new) {
-      drupal_set_message(t('The %set_name shortcut set has been created. You can edit it from this page.', array('%set_name' => $entity->label())));
+      drupal_set_message(t('The %set_name shortcut set has been created. You can edit it from this page.', ['%set_name' => $entity->label()]));
     }
     else {
-      drupal_set_message(t('Updated set name to %set-name.', array('%set-name' => $entity->label())));
+      drupal_set_message(t('Updated set name to %set-name.', ['%set-name' => $entity->label()]));
     }
     $form_state->setRedirectUrl($this->entity->urlInfo('customize-form'));
   }
diff --git a/core/modules/shortcut/src/ShortcutSetListBuilder.php b/core/modules/shortcut/src/ShortcutSetListBuilder.php
index 0e5d81d..2cc582e 100644
--- a/core/modules/shortcut/src/ShortcutSetListBuilder.php
+++ b/core/modules/shortcut/src/ShortcutSetListBuilder.php
@@ -30,10 +30,10 @@ public function getDefaultOperations(EntityInterface $entity) {
       $operations['edit']['title'] = t('Edit shortcut set');
     }
 
-    $operations['list'] = array(
+    $operations['list'] = [
       'title' => t('List links'),
       'url' => $entity->urlInfo('customize-form'),
-    );
+    ];
     return $operations;
   }
 
diff --git a/core/modules/shortcut/src/ShortcutSetStorage.php b/core/modules/shortcut/src/ShortcutSetStorage.php
index d76c0c4..b136c2f 100644
--- a/core/modules/shortcut/src/ShortcutSetStorage.php
+++ b/core/modules/shortcut/src/ShortcutSetStorage.php
@@ -73,7 +73,7 @@ public function deleteAssignedShortcutSets(ShortcutSetInterface $entity) {
   public function assignUser(ShortcutSetInterface $shortcut_set, $account) {
     db_merge('shortcut_set_users')
       ->key('uid', $account->id())
-      ->fields(array('set_name' => $shortcut_set->id()))
+      ->fields(['set_name' => $shortcut_set->id()])
       ->execute();
     drupal_static_reset('shortcut_current_displayed_set');
   }
@@ -93,7 +93,7 @@ public function unassignUser($account) {
    */
   public function getAssignedToUser($account) {
     $query = db_select('shortcut_set_users', 'ssu');
-    $query->fields('ssu', array('set_name'));
+    $query->fields('ssu', ['set_name']);
     $query->condition('ssu.uid', $account->id());
     return $query->execute()->fetchField();
   }
@@ -102,7 +102,7 @@ public function getAssignedToUser($account) {
    * {@inheritdoc}
    */
   public function countAssignedUsers(ShortcutSetInterface $shortcut_set) {
-    return db_query('SELECT COUNT(*) FROM {shortcut_set_users} WHERE set_name = :name', array(':name' => $shortcut_set->id()))->fetchField();
+    return db_query('SELECT COUNT(*) FROM {shortcut_set_users} WHERE set_name = :name', [':name' => $shortcut_set->id()])->fetchField();
   }
 
   /**
@@ -113,7 +113,7 @@ public function getDefaultSet(AccountInterface $account) {
     // have one, we allow the last module which returns a valid result to take
     // precedence. If no module returns a valid set, fall back on the site-wide
     // default, which is the lowest-numbered shortcut set.
-    $suggestions = array_reverse($this->moduleHandler->invokeAll('shortcut_default_set', array($account)));
+    $suggestions = array_reverse($this->moduleHandler->invokeAll('shortcut_default_set', [$account]));
     $suggestions[] = 'default';
     $shortcut_set = NULL;
     foreach ($suggestions as $name) {
diff --git a/core/modules/shortcut/src/Tests/ShortcutLinksTest.php b/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
index 679f89b..cf4ae0f 100644
--- a/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
+++ b/core/modules/shortcut/src/Tests/ShortcutLinksTest.php
@@ -22,7 +22,7 @@ class ShortcutLinksTest extends ShortcutTestBase {
    *
    * @var array
    */
-  public static $modules = array('router_test', 'views', 'block');
+  public static $modules = ['router_test', 'views', 'block'];
 
   /**
    * {@inheritdoc}
@@ -40,10 +40,10 @@ public function testShortcutLinkAdd() {
     $set = $this->set;
 
     // Create an alias for the node so we can test aliases.
-    $path = array(
+    $path = [
       'source' => '/node/' . $this->node->id(),
       'alias' => '/' . $this->randomMachineName(8),
-    );
+    ];
     $this->container->get('path.alias_storage')->save($path['source'], $path['alias']);
 
     // Create some paths to test.
@@ -65,13 +65,13 @@ public function testShortcutLinkAdd() {
     // Check that each new shortcut links where it should.
     foreach ($test_cases as $test_path) {
       $title = $this->randomMachineName();
-      $form_data = array(
+      $form_data = [
         'title[0][value]' => $title,
         'link[0][uri]' => $test_path,
-      );
+      ];
       $this->drupalPostForm('admin/config/user-interface/shortcut/manage/' . $set->id() . '/add-link', $form_data, t('Save'));
       $this->assertResponse(200);
-      $this->assertText(t('Added a shortcut for @title.', array('@title' => $title)));
+      $this->assertText(t('Added a shortcut for @title.', ['@title' => $title]));
       $saved_set = ShortcutSet::load($set->id());
       $paths = $this->getShortcutInformation($saved_set, 'link');
       $this->assertTrue(in_array('internal:' . $test_path, $paths), 'Shortcut created: ' . $test_path);
@@ -115,10 +115,10 @@ public function testShortcutLinkAdd() {
 
     // Create a new shortcut set and add a link to it.
     $this->drupalLogin($this->adminUser);
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(),
       'id' => strtolower($this->randomMachineName()),
-    );
+    ];
     $this->drupalPostForm('admin/config/user-interface/shortcut/add-set', $edit, t('Save'));
     $title = $this->randomMachineName();
     $form_data = [
@@ -133,7 +133,7 @@ public function testShortcutLinkAdd() {
    * Tests that the "add to shortcut" and "remove from shortcut" links work.
    */
   public function testShortcutQuickLink() {
-    \Drupal::service('theme_handler')->install(array('seven'));
+    \Drupal::service('theme_handler')->install(['seven']);
     $this->config('system.theme')->set('admin', 'seven')->save();
     $this->config('node.settings')->set('use_admin_theme', '1')->save();
     $this->container->get('router.builder')->rebuild();
@@ -177,7 +177,7 @@ public function testShortcutQuickLink() {
     $this->assertText('Added a shortcut for Create Basic page.');
     // Assure that Article does not have its shortcut indicated as set.
     $this->drupalGet('node/add/article');
-    $link = $this->xpath('//a[normalize-space()=:label]', array(':label' => 'Remove from Default shortcuts'));
+    $link = $this->xpath('//a[normalize-space()=:label]', [':label' => 'Remove from Default shortcuts']);
     $this->assertTrue(empty($link), 'Link Remove to Default shortcuts not found for Create Article page.');
     // Add Shortcut for Article.
     $this->clickLink('Add to Default shortcuts');
@@ -198,11 +198,11 @@ public function testShortcutQuickLink() {
     $this->assertShortcutQuickLink('Add to Default shortcuts');
 
     \Drupal::service('module_installer')->install(['block_content']);
-    BlockContentType::create(array(
+    BlockContentType::create([
       'id' => 'basic',
       'label' => 'Basic block',
       'revision' => FALSE,
-    ))->save();
+    ])->save();
     // Test page with HTML tags in title.
     $this->drupalGet('admin/structure/block/block-content/manage/basic');
     $page_title = new FormattableMarkup('Edit %label custom block type', ['%label' => 'Basic block']);
@@ -226,12 +226,12 @@ public function testShortcutLinkRename() {
 
     $shortcuts = $set->getShortcuts();
     $shortcut = reset($shortcuts);
-    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id(), array('title[0][value]' => $new_link_name), t('Save'));
+    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id(), ['title[0][value]' => $new_link_name], t('Save'));
     $saved_set = ShortcutSet::load($set->id());
     $titles = $this->getShortcutInformation($saved_set, 'title');
     $this->assertTrue(in_array($new_link_name, $titles), 'Shortcut renamed: ' . $new_link_name);
     $this->assertLink($new_link_name, 0, 'Renamed shortcut link appears on the page.');
-    $this->assertText(t('The shortcut @link has been updated.', array('@link' => $new_link_name)));
+    $this->assertText(t('The shortcut @link has been updated.', ['@link' => $new_link_name]));
   }
 
   /**
@@ -245,12 +245,12 @@ public function testShortcutLinkChangePath() {
 
     $shortcuts = $set->getShortcuts();
     $shortcut = reset($shortcuts);
-    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id(), array('title[0][value]' => $shortcut->getTitle(), 'link[0][uri]' => $new_link_path), t('Save'));
+    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id(), ['title[0][value]' => $shortcut->getTitle(), 'link[0][uri]' => $new_link_path], t('Save'));
     $saved_set = ShortcutSet::load($set->id());
     $paths = $this->getShortcutInformation($saved_set, 'link');
     $this->assertTrue(in_array('internal:' . $new_link_path, $paths), 'Shortcut path changed: ' . $new_link_path);
     $this->assertLinkByHref($new_link_path, 0, 'Shortcut with new path appears on the page.');
-    $this->assertText(t('The shortcut @link has been updated.', array('@link' => $shortcut->getTitle())));
+    $this->assertText(t('The shortcut @link has been updated.', ['@link' => $shortcut->getTitle()]));
   }
 
   /**
@@ -277,7 +277,7 @@ public function testShortcutLinkDelete() {
 
     $shortcuts = $set->getShortcuts();
     $shortcut = reset($shortcuts);
-    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id() . '/delete', array(), 'Delete');
+    $this->drupalPostForm('admin/config/user-interface/shortcut/link/' . $shortcut->id() . '/delete', [], 'Delete');
     $saved_set = ShortcutSet::load($set->id());
     $ids = $this->getShortcutInformation($saved_set, 'id');
     $this->assertFalse(in_array($shortcut->id(), $ids), 'Successfully deleted a shortcut.');
@@ -297,7 +297,7 @@ public function testShortcutLinkDelete() {
    */
   public function testNoShortcutLink() {
     // Change to a theme that displays shortcuts.
-    \Drupal::service('theme_handler')->install(array('seven'));
+    \Drupal::service('theme_handler')->install(['seven']);
     $this->config('system.theme')
       ->set('default', 'seven')
       ->save();
@@ -328,7 +328,7 @@ public function testNoShortcutLink() {
    */
   public function testAccessShortcutsPermission() {
     // Change to a theme that displays shortcuts.
-    \Drupal::service('theme_handler')->install(array('seven'));
+    \Drupal::service('theme_handler')->install(['seven']);
     $this->config('system.theme')
       ->set('default', 'seven')
       ->save();
@@ -340,20 +340,20 @@ public function testAccessShortcutsPermission() {
 
     // Verify that users without the 'access shortcuts' permission can't see the
     // shortcuts.
-    $this->drupalLogin($this->drupalCreateUser(array('access toolbar')));
+    $this->drupalLogin($this->drupalCreateUser(['access toolbar']));
     $this->assertNoLink('Shortcuts', 'Shortcut link not found on page.');
 
     // Verify that users without the 'administer site configuration' permission
     // can't see the cron shortcuts.
-    $this->drupalLogin($this->drupalCreateUser(array('access toolbar', 'access shortcuts')));
+    $this->drupalLogin($this->drupalCreateUser(['access toolbar', 'access shortcuts']));
     $this->assertNoLink('Shortcuts', 'Shortcut link not found on page.');
     $this->assertNoLink('Cron', 'Cron shortcut link not found on page.');
 
     // Verify that users with the 'access shortcuts' permission can see the
     // shortcuts.
-    $this->drupalLogin($this->drupalCreateUser(array(
+    $this->drupalLogin($this->drupalCreateUser([
       'access toolbar', 'access shortcuts', 'administer site configuration',
-    )));
+    ]));
     $this->clickLink('Shortcuts', 0, 'Shortcut link found on page.');
     $this->assertLink('Cron', 0, 'Cron shortcut link found on page.');
 
@@ -365,7 +365,7 @@ public function testAccessShortcutsPermission() {
    */
   public function testShortcutLinkOrder() {
     // Ensure to give permissions to access the shortcuts.
-    $this->drupalLogin($this->drupalCreateUser(array('access toolbar', 'access shortcuts', 'access content overview', 'administer content types')));
+    $this->drupalLogin($this->drupalCreateUser(['access toolbar', 'access shortcuts', 'access content overview', 'administer content types']));
     $this->drupalGet(Url::fromRoute('<front>'));
     $shortcuts = $this->cssSelect('#toolbar-item-shortcuts-tray .toolbar-menu a');
     $this->assertEqual((string) $shortcuts[0], 'Add content');
@@ -386,24 +386,24 @@ public function testShortcutLinkOrder() {
   private function verifyAccessShortcutsPermissionForEditPages() {
     // Create a user with customize links and switch sets permissions  but
     // without the 'access shortcuts' permission.
-    $test_permissions = array(
+    $test_permissions = [
       'customize shortcut links',
       'switch shortcut sets',
-    );
+    ];
     $noaccess_user = $this->drupalCreateUser($test_permissions);
     $this->drupalLogin($noaccess_user);
 
     // Verify that set administration pages are inaccessible without the
     // 'access shortcuts' permission.
-    $edit_paths = array(
+    $edit_paths = [
       'admin/config/user-interface/shortcut/manage/default/customize',
       'admin/config/user-interface/shortcut/manage/default',
       'user/' . $noaccess_user->id() . '/shortcuts',
-    );
+    ];
 
     foreach ($edit_paths as $path) {
       $this->drupalGet($path);
-      $message = format_string('Access is denied on %s', array('%s' => $path));
+      $message = format_string('Access is denied on %s', ['%s' => $path]);
       $this->assertResponse(403, $message);
     }
   }
@@ -426,7 +426,7 @@ public function testShortcutBlockAccess() {
 
     // Verify that users without the 'access shortcuts' permission can see the
     // shortcut block.
-    $this->drupalLogin($this->drupalCreateUser(array()));
+    $this->drupalLogin($this->drupalCreateUser([]));
     $this->drupalGet('');
     $this->assertNoBlockAppears($block);
   }
@@ -454,8 +454,8 @@ public function testShortcutBlockAccess() {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertShortcutQuickLink($label, $index = 0, $message = '', $group = 'Other') {
-    $links = $this->xpath('//a[normalize-space()=:label]', array(':label' => $label));
-    $message = ($message ? $message : SafeMarkup::format('Shortcut quick link with label %label found.', array('%label' => $label)));
+    $links = $this->xpath('//a[normalize-space()=:label]', [':label' => $label]);
+    $message = ($message ? $message : SafeMarkup::format('Shortcut quick link with label %label found.', ['%label' => $label]));
     return $this->assert(isset($links[$index]), $message, $group);
   }
 
diff --git a/core/modules/shortcut/src/Tests/ShortcutSetsTest.php b/core/modules/shortcut/src/Tests/ShortcutSetsTest.php
index 3a04757..e4c7fb7 100644
--- a/core/modules/shortcut/src/Tests/ShortcutSetsTest.php
+++ b/core/modules/shortcut/src/Tests/ShortcutSetsTest.php
@@ -33,10 +33,10 @@ protected function setUp() {
   function testShortcutSetAdd() {
     $this->drupalGet('admin/config/user-interface/shortcut');
     $this->clickLink(t('Add shortcut set'));
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(),
       'id' => strtolower($this->randomMachineName()),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $new_set = $this->container->get('entity.manager')->getStorage('shortcut_set')->load($edit['id']);
     $this->assertIdentical($new_set->id(), $edit['id'], 'Successfully created a shortcut set.');
@@ -66,14 +66,14 @@ function testShortcutSetEdit() {
     $this->assertEqual(count($elements), 3, 'Correct number of table header cells found.');
 
     // Test the contents of each th cell.
-    $expected_items = array(t('Name'), t('Weight'), t('Operations'));
+    $expected_items = [t('Name'), t('Weight'), t('Operations')];
     foreach ($elements as $key => $element) {
       $this->assertEqual((string) $element[0], $expected_items[$key]);
     }
 
     // Look for test shortcuts in the table.
     $weight = count($shortcuts);
-    $edit = array();
+    $edit = [];
     foreach ($shortcuts as $shortcut) {
       $title = $shortcut->getTitle();
 
@@ -105,7 +105,7 @@ function testShortcutSetSwitchOwn() {
 
     // Attempt to switch the default shortcut set to the newly created shortcut
     // set.
-    $this->drupalPostForm('user/' . $this->adminUser->id() . '/shortcuts', array('set' => $new_set->id()), t('Change set'));
+    $this->drupalPostForm('user/' . $this->adminUser->id() . '/shortcuts', ['set' => $new_set->id()], t('Change set'));
     $this->assertResponse(200);
     $current_set = shortcut_current_displayed_set($this->adminUser);
     $this->assertTrue($new_set->id() == $current_set->id(), 'Successfully switched own shortcut set.');
@@ -126,11 +126,11 @@ function testShortcutSetAssign() {
    * Tests switching a user's shortcut set and creating one at the same time.
    */
   function testShortcutSetSwitchCreate() {
-    $edit = array(
+    $edit = [
       'set' => 'new',
       'id' => strtolower($this->randomMachineName()),
       'label' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm('user/' . $this->adminUser->id() . '/shortcuts', $edit, t('Change set'));
     $current_set = shortcut_current_displayed_set($this->adminUser);
     $this->assertNotEqual($current_set->id(), $this->set->id(), 'A shortcut set can be switched to at the same time as it is created.');
@@ -141,7 +141,7 @@ function testShortcutSetSwitchCreate() {
    * Tests switching a user's shortcut set without providing a new set name.
    */
   function testShortcutSetSwitchNoSetName() {
-    $edit = array('set' => 'new');
+    $edit = ['set' => 'new'];
     $this->drupalPostForm('user/' . $this->adminUser->id() . '/shortcuts', $edit, t('Change set'));
     $this->assertText(t('The new set label is required.'));
     $current_set = shortcut_current_displayed_set($this->adminUser);
@@ -158,7 +158,7 @@ function testShortcutSetRename() {
     $new_label = $this->randomMachineName();
     $this->drupalGet('admin/config/user-interface/shortcut');
     $this->clickLink(t('Edit shortcut set'));
-    $this->drupalPostForm(NULL, array('label' => $new_label), t('Save'));
+    $this->drupalPostForm(NULL, ['label' => $new_label], t('Save'));
     $set = ShortcutSet::load($set->id());
     $this->assertTrue($set->label() == $new_label, 'Shortcut set has been successfully renamed.');
   }
@@ -183,7 +183,7 @@ function testShortcutSetUnassign() {
   function testShortcutSetDelete() {
     $new_set = $this->generateShortcutSet($this->randomMachineName());
 
-    $this->drupalPostForm('admin/config/user-interface/shortcut/manage/' . $new_set->id() . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/user-interface/shortcut/manage/' . $new_set->id() . '/delete', [], t('Delete'));
     $sets = ShortcutSet::loadMultiple();
     $this->assertFalse(isset($sets[$new_set->id()]), 'Successfully deleted a shortcut set.');
   }
diff --git a/core/modules/shortcut/src/Tests/ShortcutTestBase.php b/core/modules/shortcut/src/Tests/ShortcutTestBase.php
index b32afb2..7fd5a45 100644
--- a/core/modules/shortcut/src/Tests/ShortcutTestBase.php
+++ b/core/modules/shortcut/src/Tests/ShortcutTestBase.php
@@ -17,7 +17,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'toolbar', 'shortcut');
+  public static $modules = ['node', 'toolbar', 'shortcut'];
 
   /**
    * User with permission to administer shortcuts.
@@ -52,37 +52,37 @@ protected function setUp() {
 
     if ($this->profile != 'standard') {
       // Create Basic page and Article node types.
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
       // Populate the default shortcut set.
-      $shortcut = Shortcut::create(array(
+      $shortcut = Shortcut::create([
         'shortcut_set' => 'default',
         'title' => t('Add content'),
         'weight' => -20,
-        'link' => array(
+        'link' => [
           'uri' => 'internal:/node/add',
-        ),
-      ));
+        ],
+      ]);
       $shortcut->save();
 
-      $shortcut = Shortcut::create(array(
+      $shortcut = Shortcut::create([
         'shortcut_set' => 'default',
         'title' => t('All content'),
         'weight' => -19,
-        'link' => array(
+        'link' => [
           'uri' => 'internal:/admin/content',
-        ),
-      ));
+        ],
+      ]);
       $shortcut->save();
     }
 
     // Create users.
-    $this->adminUser = $this->drupalCreateUser(array('access toolbar', 'administer shortcuts', 'view the administration theme', 'create article content', 'create page content', 'access content overview', 'administer users', 'link to any page', 'edit any article content'));
-    $this->shortcutUser = $this->drupalCreateUser(array('customize shortcut links', 'switch shortcut sets', 'access shortcuts', 'access content'));
+    $this->adminUser = $this->drupalCreateUser(['access toolbar', 'administer shortcuts', 'view the administration theme', 'create article content', 'create page content', 'access content overview', 'administer users', 'link to any page', 'edit any article content']);
+    $this->shortcutUser = $this->drupalCreateUser(['customize shortcut links', 'switch shortcut sets', 'access shortcuts', 'access content']);
 
     // Create a node.
-    $this->node = $this->drupalCreateNode(array('type' => 'article'));
+    $this->node = $this->drupalCreateNode(['type' => 'article']);
 
     // Log in as admin and grab the default shortcut set.
     $this->drupalLogin($this->adminUser);
@@ -94,10 +94,10 @@ protected function setUp() {
    * Creates a generic shortcut set.
    */
   function generateShortcutSet($label = '', $id = NULL) {
-    $set = ShortcutSet::create(array(
+    $set = ShortcutSet::create([
       'id' => isset($id) ? $id : strtolower($this->randomMachineName()),
       'label' => empty($label) ? $this->randomString() : $label,
-    ));
+    ]);
     $set->save();
     return $set;
   }
@@ -117,7 +117,7 @@ function generateShortcutSet($label = '', $id = NULL) {
    *   Array of the requested information from each link.
    */
   function getShortcutInformation(ShortcutSetInterface $set, $key) {
-    $info = array();
+    $info = [];
     \Drupal::entityManager()->getStorage('shortcut')->resetCache();
     foreach ($set->getShortcuts() as $shortcut) {
       if ($key == 'link') {
diff --git a/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php b/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
index 4be41c3..300ca3b 100644
--- a/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
+++ b/core/modules/shortcut/src/Tests/ShortcutTranslationUITest.php
@@ -23,13 +23,13 @@ class ShortcutTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'language',
     'content_translation',
     'link',
     'shortcut',
     'toolbar'
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -44,7 +44,7 @@ protected function setUp() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('access shortcuts', 'administer shortcuts', 'access toolbar'));
+    return array_merge(parent::getTranslatorPermissions(), ['access shortcuts', 'administer shortcuts', 'access toolbar']);
   }
 
   /**
@@ -59,7 +59,7 @@ protected function createEntity($values, $langcode, $bundle_name = NULL) {
    * {@inheritdoc}
    */
   protected function getNewEntityValues($langcode) {
-    return array('title' => array(array('value' => $this->randomMachineName()))) + parent::getNewEntityValues($langcode);
+    return ['title' => [['value' => $this->randomMachineName()]]] + parent::getNewEntityValues($langcode);
   }
 
   protected function doTestBasicTranslation() {
@@ -71,14 +71,14 @@ protected function doTestBasicTranslation() {
     $entity = $storage->load($this->entityId);
     foreach ($this->langcodes as $langcode) {
       if ($entity->hasTranslation($langcode)) {
-        $language = new Language(array('id' => $langcode));
+        $language = new Language(['id' => $langcode]);
         // Request the front page in this language and assert that the right
         // translation shows up in the shortcut list with the right path.
-        $this->drupalGet('<front>', array('language' => $language));
-        $expected_path = \Drupal::urlGenerator()->generateFromRoute('user.page', array(), array('language' => $language));
+        $this->drupalGet('<front>', ['language' => $language]);
+        $expected_path = \Drupal::urlGenerator()->generateFromRoute('user.page', [], ['language' => $language]);
         $label = $entity->getTranslation($langcode)->label();
-        $elements = $this->xpath('//nav[contains(@class, "toolbar-lining")]/ul[@class="toolbar-menu"]/li/a[contains(@href, :href) and normalize-space(text())=:label]', array(':href' => $expected_path, ':label' => $label));
-        $this->assertTrue(!empty($elements), format_string('Translated @language shortcut link @label found.', array('@label' => $label, '@language' => $language->getName())));
+        $elements = $this->xpath('//nav[contains(@class, "toolbar-lining")]/ul[@class="toolbar-menu"]/li/a[contains(@href, :href) and normalize-space(text())=:label]', [':href' => $expected_path, ':label' => $label]);
+        $this->assertTrue(!empty($elements), format_string('Translated @language shortcut link @label found.', ['@label' => $label, '@language' => $language->getName()]));
       }
     }
   }
@@ -96,14 +96,14 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('@title [%language translation]', array(
+        $title = t('@title [%language translation]', [
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
@@ -120,7 +120,7 @@ protected function doTestTranslationChanged() {
 
     $this->assertFalse(
       $entity instanceof EntityChangedInterface,
-      format_string('%entity is not implementing EntityChangedInterface.', array('%entity' => $this->entityTypeId))
+      format_string('%entity is not implementing EntityChangedInterface.', ['%entity' => $this->entityTypeId])
     );
   }
 
diff --git a/core/modules/shortcut/tests/src/Functional/ShortcutCacheTagsTest.php b/core/modules/shortcut/tests/src/Functional/ShortcutCacheTagsTest.php
index 23f0145..e2d6a22 100644
--- a/core/modules/shortcut/tests/src/Functional/ShortcutCacheTagsTest.php
+++ b/core/modules/shortcut/tests/src/Functional/ShortcutCacheTagsTest.php
@@ -18,7 +18,7 @@ class ShortcutCacheTagsTest extends EntityCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('shortcut');
+  public static $modules = ['shortcut'];
 
   /**
    * {@inheritdoc}
@@ -39,12 +39,12 @@ protected function setUp() {
    */
   protected function createEntity() {
     // Create a "Llama" shortcut.
-    $shortcut = Shortcut::create(array(
+    $shortcut = Shortcut::create([
       'shortcut_set' => 'default',
       'title' => t('Llama'),
       'weight' => 0,
       'link' => [['uri' => 'internal:/admin']],
-    ));
+    ]);
     $shortcut->save();
 
     return $shortcut;
diff --git a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetTest.php b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetTest.php
index 8658286..b654372 100644
--- a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetTest.php
@@ -18,12 +18,12 @@ class MigrateShortcutSetTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'link',
     'field',
     'shortcut',
     'menu_link_content',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetUsersTest.php b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetUsersTest.php
index 1b15dcd..ae93956 100644
--- a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetUsersTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutSetUsersTest.php
@@ -17,12 +17,12 @@ class MigrateShortcutSetUsersTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'link',
     'field',
     'shortcut',
     'menu_link_content',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutTest.php b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutTest.php
index 18f5517..e685151 100644
--- a/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Migrate/d7/MigrateShortcutTest.php
@@ -18,12 +18,12 @@ class MigrateShortcutTest extends MigrateDrupal7TestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'link',
     'field',
     'shortcut',
     'menu_link_content',
-  );
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php b/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
index f85a2cf..ee9a655 100644
--- a/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
+++ b/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
@@ -12,10 +12,10 @@
 class ShortcutLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array(
+    $this->directoryList = [
       'shortcut' => 'core/modules/shortcut',
       'user' => 'core/modules/user',
-    );
+    ];
     parent::setUp();
   }
 
@@ -25,9 +25,9 @@ protected function setUp() {
    * @dataProvider getShortcutPageRoutes
    */
   public function testShortcutPageLocalTasks($route) {
-    $tasks = array(
-      0 => array('shortcut.set_switch', 'entity.user.canonical', 'entity.user.edit_form',),
-    );
+    $tasks = [
+      0 => ['shortcut.set_switch', 'entity.user.canonical', 'entity.user.edit_form',],
+    ];
     $this->assertLocalTasks($route, $tasks);
   }
 
@@ -35,11 +35,11 @@ public function testShortcutPageLocalTasks($route) {
    * Provides a list of routes to test.
    */
   public function getShortcutPageRoutes() {
-    return array(
-      array('entity.user.canonical'),
-      array('entity.user.edit_form'),
-      array('shortcut.set_switch'),
-    );
+    return [
+      ['entity.user.canonical'],
+      ['entity.user.edit_form'],
+      ['shortcut.set_switch'],
+    ];
   }
 
 }
diff --git a/core/modules/simpletest/simpletest.install b/core/modules/simpletest/simpletest.install
index 9b3ad90..b6cfc80 100644
--- a/core/modules/simpletest/simpletest.install
+++ b/core/modules/simpletest/simpletest.install
@@ -16,25 +16,25 @@
  * Implements hook_requirements().
  */
 function simpletest_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   $has_phpunit = class_exists('\PHPUnit_Framework_TestCase');
   $has_curl = function_exists('curl_init');
   $open_basedir = ini_get('open_basedir');
 
-  $requirements['phpunit'] = array(
+  $requirements['phpunit'] = [
     'title' => t('PHPUnit dependency'),
     'value' => $has_phpunit ? t('Found') : t('Not found'),
-  );
+  ];
   if (!$has_phpunit) {
     $requirements['phpunit']['severity'] = REQUIREMENT_ERROR;
     $requirements['phpunit']['description'] = t("The testing framework requires the PHPUnit package. Please run 'composer install --dev' to ensure it is present.");
   }
 
-  $requirements['curl'] = array(
+  $requirements['curl'] = [
     'title' => t('cURL'),
     'value' => $has_curl ? t('Enabled') : t('Not found'),
-  );
+  ];
   if (!$has_curl) {
     $requirements['curl']['severity'] = REQUIREMENT_ERROR;
     $requirements['curl']['description'] = t('The testing framework requires the <a href="https://secure.php.net/manual/en/curl.setup.php">PHP cURL library</a>. For more information, see the <a href="https://www.drupal.org/requirements/php/curl">online information on installing the PHP cURL extension</a>.');
@@ -43,10 +43,10 @@ function simpletest_requirements($phase) {
   // SimpleTest currently needs 2 cURL options which are incompatible with
   // having PHP's open_basedir restriction set.
   // See https://www.drupal.org/node/674304.
-  $requirements['php_open_basedir'] = array(
+  $requirements['php_open_basedir'] = [
     'title' => t('PHP open_basedir restriction'),
     'value' => $open_basedir ? t('Enabled') : t('Disabled'),
-  );
+  ];
   if ($open_basedir) {
     $requirements['php_open_basedir']['severity'] = REQUIREMENT_ERROR;
     $requirements['php_open_basedir']['description'] = t('The testing framework requires the PHP <a href="http://php.net/manual/ini.core.php#ini.open-basedir">open_basedir</a> restriction to be disabled. Check your webserver configuration or contact your web host.');
@@ -57,29 +57,29 @@ function simpletest_requirements($phase) {
   $memory_limit = ini_get('memory_limit');
   if (!Environment::checkMemoryLimit(SIMPLETEST_MINIMUM_PHP_MEMORY_LIMIT, $memory_limit)) {
     $requirements['php_memory_limit']['severity'] = REQUIREMENT_WARNING;
-    $requirements['php_memory_limit']['description'] = t('The testing framework requires the PHP memory limit to be at least %memory_minimum_limit. The current value is %memory_limit. <a href=":url">Follow these steps to continue</a>.', array('%memory_limit' => $memory_limit, '%memory_minimum_limit' => SIMPLETEST_MINIMUM_PHP_MEMORY_LIMIT, ':url' => 'https://www.drupal.org/node/207036'));
+    $requirements['php_memory_limit']['description'] = t('The testing framework requires the PHP memory limit to be at least %memory_minimum_limit. The current value is %memory_limit. <a href=":url">Follow these steps to continue</a>.', ['%memory_limit' => $memory_limit, '%memory_minimum_limit' => SIMPLETEST_MINIMUM_PHP_MEMORY_LIMIT, ':url' => 'https://www.drupal.org/node/207036']);
   }
 
   $site_directory = 'sites/simpletest';
   if (!drupal_verify_install_file(\Drupal::root() . '/' . $site_directory, FILE_EXIST | FILE_READABLE | FILE_WRITABLE | FILE_EXECUTABLE, 'dir')) {
-    $requirements['simpletest_site_directory'] = array(
+    $requirements['simpletest_site_directory'] = [
       'title' => t('Simpletest site directory'),
       'value' => is_dir(\Drupal::root() . '/' . $site_directory) ? t('Not writable') : t('Missing'),
       'severity' => REQUIREMENT_ERROR,
-      'description' => t('The testing framework requires the %sites-simpletest directory to exist and be writable in order to run tests.', array(
+      'description' => t('The testing framework requires the %sites-simpletest directory to exist and be writable in order to run tests.', [
         '%sites-simpletest' => $site_directory,
-      )),
-    );
+      ]),
+    ];
   }
   elseif (!file_save_htaccess(\Drupal::root() . '/' . $site_directory, FALSE)) {
-    $requirements['simpletest_site_directory'] = array(
+    $requirements['simpletest_site_directory'] = [
       'title' => t('Simpletest site directory'),
       'value' => t('Not protected'),
       'severity' => REQUIREMENT_ERROR,
-      'description' => t('The file %file does not exist and could not be created automatically, which poses a security risk. Ensure that the directory is writable.', array(
+      'description' => t('The file %file does not exist and could not be created automatically, which poses a security risk. Ensure that the directory is writable.', [
         '%file' => $site_directory . '/.htaccess',
-      )),
-    );
+      ]),
+    ];
   }
 
   return $requirements;
@@ -89,91 +89,91 @@ function simpletest_requirements($phase) {
  * Implements hook_schema().
  */
 function simpletest_schema() {
-  $schema['simpletest'] = array(
+  $schema['simpletest'] = [
     'description' => 'Stores simpletest messages',
-    'fields' => array(
-      'message_id'  => array(
+    'fields' => [
+      'message_id'  => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Primary Key: Unique simpletest message ID.',
-      ),
-      'test_id' => array(
+      ],
+      'test_id' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Test ID, messages belonging to the same ID are reported together',
-      ),
-      'test_class' => array(
+      ],
+      'test_class' => [
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'The name of the class that created this message.',
-      ),
-      'status' => array(
+      ],
+      'status' => [
         'type' => 'varchar',
         'length' => 9,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Message status. Core understands pass, fail, exception.',
-      ),
-      'message' => array(
+      ],
+      'message' => [
         'type' => 'text',
         'not null' => TRUE,
         'description' => 'The message itself.',
-      ),
-      'message_group' => array(
+      ],
+      'message_group' => [
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'The message group this message belongs to. For example: warning, browser, user.',
-      ),
-      'function' => array(
+      ],
+      'function' => [
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Name of the assertion function or method that created this message.',
-      ),
-      'line' => array(
+      ],
+      'line' => [
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
         'description' => 'Line number on which the function is called.',
-      ),
-      'file' => array(
+      ],
+      'file' => [
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'Name of the file where the function is called.',
-      ),
-    ),
-    'primary key' => array('message_id'),
-    'indexes' => array(
-      'reporter' => array('test_class', 'message_id'),
-    ),
-  );
-  $schema['simpletest_test_id'] = array(
+      ],
+    ],
+    'primary key' => ['message_id'],
+    'indexes' => [
+      'reporter' => ['test_class', 'message_id'],
+    ],
+  ];
+  $schema['simpletest_test_id'] = [
     'description' => 'Stores simpletest test IDs, used to auto-increment the test ID so that a fresh test ID is used.',
-    'fields' => array(
-      'test_id'  => array(
+    'fields' => [
+      'test_id'  => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Primary Key: Unique simpletest ID used to group test results together. Each time a set of tests
                             are run a new test ID is used.',
-      ),
-      'last_prefix' => array(
+      ],
+      'last_prefix' => [
         'type' => 'varchar',
         'length' => 60,
         'not null' => FALSE,
         'default' => '',
         'description' => 'The last database prefix used during testing.',
-      ),
-    ),
-    'primary key' => array('test_id'),
-  );
+      ],
+    ],
+    'primary key' => ['test_id'],
+  ];
   return $schema;
 }
 
diff --git a/core/modules/simpletest/simpletest.module b/core/modules/simpletest/simpletest.module
index c9eed3b..aa1088f 100644
--- a/core/modules/simpletest/simpletest.module
+++ b/core/modules/simpletest/simpletest.module
@@ -24,11 +24,11 @@ function simpletest_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.simpletest':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Testing module provides a framework for running automated tests. It can be used to verify a working state of Drupal before and after any code changes, or as a means for developers to write and execute tests for their modules. For more information, see the <a href=":simpletest">online documentation for the Testing module</a>.', array(':simpletest' => 'https://www.drupal.org/documentation/modules/simpletest')) . '</p>';
+      $output .= '<p>' . t('The Testing module provides a framework for running automated tests. It can be used to verify a working state of Drupal before and after any code changes, or as a means for developers to write and execute tests for their modules. For more information, see the <a href=":simpletest">online documentation for the Testing module</a>.', [':simpletest' => 'https://www.drupal.org/documentation/modules/simpletest']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Running tests') . '</dt>';
-      $output .= '<dd><p>' . t('Visit the <a href=":admin-simpletest">Testing page</a> to display a list of available tests. For comprehensive testing, select <em>all</em> tests, or individually select tests for more targeted testing. Note that it might take several minutes for all tests to complete.', array(':admin-simpletest' => \Drupal::url('simpletest.test_form'))) . '</p>';
+      $output .= '<dd><p>' . t('Visit the <a href=":admin-simpletest">Testing page</a> to display a list of available tests. For comprehensive testing, select <em>all</em> tests, or individually select tests for more targeted testing. Note that it might take several minutes for all tests to complete.', [':admin-simpletest' => \Drupal::url('simpletest.test_form')]) . '</p>';
       $output .= '<p>' . t('After the tests run, a message will be displayed next to each test group indicating whether tests within it passed, failed, or had exceptions. A pass means that the test returned the expected results, while fail means that it did not. An exception normally indicates an error outside of the test, such as a PHP warning or notice. If there were failures or exceptions, the results will be expanded to show details, and the tests that had failures or exceptions will be indicated in red or pink rows. You can then use these results to refine your code and tests, until all tests pass.') . '</p></dd>';
       $output .= '</dl>';
       return $output;
@@ -43,11 +43,11 @@ function simpletest_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function simpletest_theme() {
-  return array(
-    'simpletest_result_summary' => array(
-      'variables' => array('label' => NULL, 'items' => array(), 'pass' => 0, 'fail' => 0, 'exception' => 0, 'debug' => 0),
-    ),
-  );
+  return [
+    'simpletest_result_summary' => [
+      'variables' => ['label' => NULL, 'items' => [], 'pass' => 0, 'fail' => 0, 'exception' => 0, 'debug' => 0],
+    ],
+  ];
 }
 
 /**
@@ -138,7 +138,7 @@ function simpletest_run_tests($test_list) {
   }
 
   $test_id = db_insert('simpletest_test_id')
-    ->useDefaults(array('test_id'))
+    ->useDefaults(['test_id'])
     ->execute();
 
   // Clear out the previous verbose files.
@@ -148,16 +148,16 @@ function simpletest_run_tests($test_list) {
   $first_test = reset($test_list);
   $info = TestDiscovery::getTestInfo($first_test);
 
-  $batch = array(
+  $batch = [
     'title' => t('Running tests'),
-    'operations' => array(
-      array('_simpletest_batch_operation', array($test_list, $test_id)),
-    ),
+    'operations' => [
+      ['_simpletest_batch_operation', [$test_list, $test_id]],
+    ],
     'finished' => '_simpletest_batch_finished',
     'progress_message' => '',
-    'library' => array('simpletest/drupal.simpletest'),
-    'init_message' => t('Processing test @num of @max - %test.', array('%test' => $info['name'], '@num' => '1', '@max' => count($test_list))),
-  );
+    'library' => ['simpletest/drupal.simpletest'],
+    'init_message' => t('Processing test @num of @max - %test.', ['%test' => $info['name'], '@num' => '1', '@max' => count($test_list)]),
+  ];
   batch_set($batch);
 
   \Drupal::moduleHandler()->invokeAll('test_group_started');
@@ -237,12 +237,12 @@ function simpletest_summarize_phpunit_result($results) {
   $summaries = [];
   foreach ($results as $result) {
     if (!isset($summaries[$result['test_class']])) {
-      $summaries[$result['test_class']] = array(
+      $summaries[$result['test_class']] = [
         '#pass' => 0,
         '#fail' => 0,
         '#exception' => 0,
         '#debug' => 0,
-      );
+      ];
     }
 
     switch ($result['status']) {
@@ -322,13 +322,13 @@ function simpletest_phpunit_run_command(array $unescaped_test_classnames, $phpun
   }
   $phpunit_bin = simpletest_phpunit_command();
 
-  $command = array(
+  $command = [
     $phpunit_bin,
     '--log-junit',
     escapeshellarg($phpunit_file),
     '--printer',
     escapeshellarg(SimpletestUiPrinter::class),
-  );
+  ];
 
   // Optimized for running a single test.
   if (count($unescaped_test_classnames) == 1) {
@@ -342,10 +342,10 @@ function simpletest_phpunit_run_command(array $unescaped_test_classnames, $phpun
     }, $unescaped_test_classnames);
 
     $filter_string = implode("|", $escaped_test_classnames);
-    $command = array_merge($command, array(
+    $command = array_merge($command, [
       '--filter',
       escapeshellarg($filter_string),
-    ));
+    ]);
   }
 
   // Need to change directories before running the command so that we can use
@@ -401,7 +401,7 @@ function _simpletest_batch_operation($test_list_init, $test_id, &$context) {
     // First iteration: initialize working values.
     $test_list = $test_list_init;
     $context['sandbox']['max'] = count($test_list);
-    $test_results = array('#pass' => 0, '#fail' => 0, '#exception' => 0, '#debug' => 0);
+    $test_results = ['#pass' => 0, '#fail' => 0, '#exception' => 0, '#debug' => 0];
   }
   else {
     // Nth iteration: get the current values where we last stored them.
@@ -420,7 +420,7 @@ function _simpletest_batch_operation($test_list_init, $test_id, &$context) {
   else {
     $test = new $test_class($test_id);
     $test->run();
-    \Drupal::moduleHandler()->invokeAll('test_finished', array($test->results));
+    \Drupal::moduleHandler()->invokeAll('test_finished', [$test->results]);
     $test_results[$test_class] = $test->results;
   }
   $size = count($test_list);
@@ -431,25 +431,25 @@ function _simpletest_batch_operation($test_list_init, $test_id, &$context) {
     $test_results[$key] += $value;
   }
   $test_results[$test_class]['#name'] = $info['name'];
-  $items = array();
+  $items = [];
   foreach (Element::children($test_results) as $class) {
-    $class_test_result = $test_results[$class] + array(
+    $class_test_result = $test_results[$class] + [
       '#theme' => 'simpletest_result_summary',
       '#label' => t($test_results[$class]['#name'] . ':'),
-    );
+    ];
     array_unshift($items, drupal_render($class_test_result));
   }
-  $context['message'] = t('Processed test @num of @max - %test.', array('%test' => $info['name'], '@num' => $max - $size, '@max' => $max));
-  $overall_results = $test_results + array(
+  $context['message'] = t('Processed test @num of @max - %test.', ['%test' => $info['name'], '@num' => $max - $size, '@max' => $max]);
+  $overall_results = $test_results + [
     '#theme' => 'simpletest_result_summary',
     '#label' => t('Overall results:'),
-  );
+  ];
   $context['message'] .= drupal_render($overall_results);
 
-  $item_list = array(
+  $item_list = [
     '#theme' => 'item_list',
     '#items' => $items,
-  );
+  ];
   $context['message'] .= drupal_render($item_list);
 
   // Save working values for the next iteration.
@@ -467,7 +467,7 @@ function _simpletest_batch_operation($test_list_init, $test_id, &$context) {
  */
 function _simpletest_batch_finished($success, $results, $operations, $elapsed) {
   if ($success) {
-    drupal_set_message(t('The test run finished in @elapsed.', array('@elapsed' => $elapsed)));
+    drupal_set_message(t('The test run finished in @elapsed.', ['@elapsed' => $elapsed]));
   }
   else {
     // Use the test_id passed as a parameter to _simpletest_batch_operation().
@@ -496,16 +496,16 @@ function _simpletest_batch_finished($success, $results, $operations, $elapsed) {
  */
 function simpletest_last_test_get($test_id) {
   $last_prefix = TestDatabase::getConnection()
-    ->queryRange('SELECT last_prefix FROM {simpletest_test_id} WHERE test_id = :test_id', 0, 1, array(
+    ->queryRange('SELECT last_prefix FROM {simpletest_test_id} WHERE test_id = :test_id', 0, 1, [
       ':test_id' => $test_id,
-    ))
+    ])
     ->fetchField();
   $last_test_class = TestDatabase::getConnection()
-    ->queryRange('SELECT test_class FROM {simpletest} WHERE test_id = :test_id ORDER BY message_id DESC', 0, 1, array(
+    ->queryRange('SELECT test_class FROM {simpletest} WHERE test_id = :test_id ORDER BY message_id DESC', 0, 1, [
       ':test_id' => $test_id,
-    ))
+    ])
     ->fetchField();
-  return array($last_prefix, $last_test_class);
+  return [$last_prefix, $last_test_class];
 }
 
 /**
@@ -533,10 +533,10 @@ function simpletest_log_read($test_id, $database_prefix, $test_class) {
       if (preg_match('/\[.*?\] (.*?): (.*?) in (.*) on line (\d+)/', $line, $match)) {
         // Parse PHP fatal errors for example: PHP Fatal error: Call to
         // undefined function break_me() in /path/to/file.php on line 17
-        $caller = array(
+        $caller = [
           'line' => $match[4],
           'file' => $match[3],
-        );
+        ];
         TestBase::insertAssert($test_id, $test_class, FALSE, $match[2], $match[1], $caller);
       }
       else {
@@ -692,7 +692,7 @@ function simpletest_clean_temporary_directories() {
     foreach ($files as $file) {
       if ($file[0] != '.') {
         $path = DRUPAL_ROOT . '/sites/simpletest/' . $file;
-        file_unmanaged_delete_recursive($path, array('Drupal\simpletest\TestBase', 'filePreDeleteCallback'));
+        file_unmanaged_delete_recursive($path, ['Drupal\simpletest\TestBase', 'filePreDeleteCallback']);
         $count++;
       }
     }
@@ -719,7 +719,7 @@ function simpletest_clean_results_table($test_id = NULL) {
   if (\Drupal::config('simpletest.settings')->get('clear_results')) {
     $connection = TestDatabase::getConnection();
     if ($test_id) {
-      $count = $connection->query('SELECT COUNT(test_id) FROM {simpletest_test_id} WHERE test_id = :test_id', array(':test_id' => $test_id))->fetchField();
+      $count = $connection->query('SELECT COUNT(test_id) FROM {simpletest_test_id} WHERE test_id = :test_id', [':test_id' => $test_id])->fetchField();
 
       $connection->delete('simpletest')
         ->condition('test_id', $test_id)
@@ -771,7 +771,7 @@ function simpletest_phpunit_xml_to_rows($test_id, $phpunit_xml_file) {
   if (!$contents) {
     return;
   }
-  $records = array();
+  $records = [];
   $testcases = simpletest_phpunit_find_testcases(new SimpleXMLElement($contents));
   foreach ($testcases as $testcase) {
     $records[] = simpletest_phpunit_testcase_to_row($test_id, $testcase);
@@ -791,7 +791,7 @@ function simpletest_phpunit_xml_to_rows($test_id, $phpunit_xml_file) {
  *   A list of all test cases.
  */
 function simpletest_phpunit_find_testcases(\SimpleXMLElement $element, \SimpleXMLElement $parent = NULL) {
-  $testcases = array();
+  $testcases = [];
 
   if (!isset($parent)) {
     $parent = $element;
@@ -845,7 +845,7 @@ function simpletest_phpunit_testcase_to_row($test_id, \SimpleXMLElement $testcas
 
   $attributes = $testcase->attributes();
 
-  $record = array(
+  $record = [
     'test_id' => $test_id,
     'test_class' => (string) $attributes->class,
     'status' => $pass ? 'pass' : 'fail',
@@ -855,6 +855,6 @@ function simpletest_phpunit_testcase_to_row($test_id, \SimpleXMLElement $testcas
     'function' => $attributes->class . '->' . $attributes->name . '()',
     'line' => $attributes->line ?: 0,
     'file' => $attributes->file,
-  );
+  ];
   return $record;
 }
diff --git a/core/modules/simpletest/src/AssertContentTrait.php b/core/modules/simpletest/src/AssertContentTrait.php
index e19f319..5a6c8c0 100644
--- a/core/modules/simpletest/src/AssertContentTrait.php
+++ b/core/modules/simpletest/src/AssertContentTrait.php
@@ -61,7 +61,7 @@ protected function setRawContent($content) {
     $this->content = $content;
     $this->plainTextContent = NULL;
     $this->elements = NULL;
-    $this->drupalSettings = array();
+    $this->drupalSettings = [];
     if (preg_match('@<script type="application/json" data-drupal-selector="drupal-settings-json">([^<]*)</script>@', $content, $matches)) {
       $this->drupalSettings = Json::decode($matches[1]);
     }
@@ -75,7 +75,7 @@ protected function getTextContent() {
       $raw_content = $this->getRawContent();
       // Strip everything between the HEAD tags.
       $raw_content = preg_replace('@<head>(.+?)</head>@si', '', $raw_content);
-      $this->plainTextContent = Xss::filter($raw_content, array());
+      $this->plainTextContent = Xss::filter($raw_content, []);
     }
     return $this->plainTextContent;
   }
@@ -127,7 +127,7 @@ protected function parse() {
       $html_dom = new \DOMDocument();
       @$html_dom->loadHTML('<?xml encoding="UTF-8">' . $this->getRawContent());
       if ($html_dom) {
-        $this->pass(SafeMarkup::format('Valid HTML found on "@path"', array('@path' => $this->getUrl())), 'Browser');
+        $this->pass(SafeMarkup::format('Valid HTML found on "@path"', ['@path' => $this->getUrl()]), 'Browser');
         // It's much easier to work with simplexml than DOM, luckily enough
         // we can just simply import our DOM tree.
         $this->elements = simplexml_import_dom($html_dom);
@@ -170,7 +170,7 @@ protected function getUrl() {
    * @return string
    *   An XPath query with arguments replaced.
    */
-  protected function buildXPathQuery($xpath, array $args = array()) {
+  protected function buildXPathQuery($xpath, array $args = []) {
     // Replace placeholders.
     foreach ($args as $placeholder => $value) {
       // Cast MarkupInterface objects to string.
@@ -260,7 +260,7 @@ protected function cssSelect($selector) {
    *   Option elements in select.
    */
   protected function getAllOptions(\SimpleXMLElement $element) {
-    $options = array();
+    $options = [];
     // Add all options items.
     foreach ($element->option as $option) {
       $options[] = $option;
@@ -300,8 +300,8 @@ protected function getAllOptions(\SimpleXMLElement $element) {
   protected function assertLink($label, $index = 0, $message = '', $group = 'Other') {
     // Cast MarkupInterface objects to string.
     $label = (string) $label;
-    $links = $this->xpath('//a[normalize-space(text())=:label]', array(':label' => $label));
-    $message = ($message ? $message : strtr('Link with label %label found.', array('%label' => $label)));
+    $links = $this->xpath('//a[normalize-space(text())=:label]', [':label' => $label]);
+    $message = ($message ? $message : strtr('Link with label %label found.', ['%label' => $label]));
     return $this->assert(isset($links[$index]), $message, $group);
   }
 
@@ -327,8 +327,8 @@ protected function assertLink($label, $index = 0, $message = '', $group = 'Other
   protected function assertNoLink($label, $message = '', $group = 'Other') {
     // Cast MarkupInterface objects to string.
     $label = (string) $label;
-    $links = $this->xpath('//a[normalize-space(text())=:label]', array(':label' => $label));
-    $message = ($message ? $message : SafeMarkup::format('Link with label %label not found.', array('%label' => $label)));
+    $links = $this->xpath('//a[normalize-space(text())=:label]', [':label' => $label]);
+    $message = ($message ? $message : SafeMarkup::format('Link with label %label not found.', ['%label' => $label]));
     return $this->assert(empty($links), $message, $group);
   }
 
@@ -354,8 +354,8 @@ protected function assertNoLink($label, $message = '', $group = 'Other') {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertLinkByHref($href, $index = 0, $message = '', $group = 'Other') {
-    $links = $this->xpath('//a[contains(@href, :href)]', array(':href' => $href));
-    $message = ($message ? $message : SafeMarkup::format('Link containing href %href found.', array('%href' => $href)));
+    $links = $this->xpath('//a[contains(@href, :href)]', [':href' => $href]);
+    $message = ($message ? $message : SafeMarkup::format('Link containing href %href found.', ['%href' => $href]));
     return $this->assert(isset($links[$index]), $message, $group);
   }
 
@@ -379,8 +379,8 @@ protected function assertLinkByHref($href, $index = 0, $message = '', $group = '
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertNoLinkByHref($href, $message = '', $group = 'Other') {
-    $links = $this->xpath('//a[contains(@href, :href)]', array(':href' => $href));
-    $message = ($message ? $message : SafeMarkup::format('No link containing href %href found.', array('%href' => $href)));
+    $links = $this->xpath('//a[contains(@href, :href)]', [':href' => $href]);
+    $message = ($message ? $message : SafeMarkup::format('No link containing href %href found.', ['%href' => $href]));
     return $this->assert(empty($links), $message, $group);
   }
 
@@ -404,8 +404,8 @@ protected function assertNoLinkByHref($href, $message = '', $group = 'Other') {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertNoLinkByHrefInMainRegion($href, $message = '', $group = 'Other') {
-    $links = $this->xpath('//main//a[contains(@href, :href)]', array(':href' => $href));
-    $message = ($message ? $message : SafeMarkup::format('No link containing href %href found.', array('%href' => $href)));
+    $links = $this->xpath('//main//a[contains(@href, :href)]', [':href' => $href]);
+    $message = ($message ? $message : SafeMarkup::format('No link containing href %href found.', ['%href' => $href]));
     return $this->assert(empty($links), $message, $group);
   }
 
@@ -604,7 +604,7 @@ protected function assertNoText($text, $message = '', $group = 'Other') {
    */
   protected function assertTextHelper($text, $message = '', $group = 'Other', $not_exists = TRUE) {
     if (!$message) {
-      $message = !$not_exists ? SafeMarkup::format('"@text" found', array('@text' => $text)) : SafeMarkup::format('"@text" not found', array('@text' => $text));
+      $message = !$not_exists ? SafeMarkup::format('"@text" found', ['@text' => $text]) : SafeMarkup::format('"@text" not found', ['@text' => $text]);
     }
     return $this->assert($not_exists == (strpos($this->getTextContent(), (string) $text) === FALSE), $message, $group);
   }
@@ -723,7 +723,7 @@ protected function assertUniqueTextHelper($text, $message = '', $group = 'Other'
    */
   protected function assertPattern($pattern, $message = '', $group = 'Other') {
     if (!$message) {
-      $message = SafeMarkup::format('Pattern "@pattern" found', array('@pattern' => $pattern));
+      $message = SafeMarkup::format('Pattern "@pattern" found', ['@pattern' => $pattern]);
     }
     return $this->assert((bool) preg_match($pattern, $this->getRawContent()), $message, $group);
   }
@@ -749,7 +749,7 @@ protected function assertPattern($pattern, $message = '', $group = 'Other') {
    */
   protected function assertNoPattern($pattern, $message = '', $group = 'Other') {
     if (!$message) {
-      $message = SafeMarkup::format('Pattern "@pattern" not found', array('@pattern' => $pattern));
+      $message = SafeMarkup::format('Pattern "@pattern" not found', ['@pattern' => $pattern]);
     }
     return $this->assert(!preg_match($pattern, $this->getRawContent()), $message, $group);
   }
@@ -772,7 +772,7 @@ protected function assertNoPattern($pattern, $message = '', $group = 'Other') {
    */
   protected function assertTextPattern($pattern, $message = NULL, $group = 'Other') {
     if (!isset($message)) {
-      $message = SafeMarkup::format('Pattern "@pattern" found', array('@pattern' => $pattern));
+      $message = SafeMarkup::format('Pattern "@pattern" found', ['@pattern' => $pattern]);
     }
     return $this->assert((bool) preg_match($pattern, $this->getTextContent()), $message, $group);
   }
@@ -804,10 +804,10 @@ protected function assertTitle($title, $message = '', $group = 'Other') {
       $actual = $this->castSafeStrings($actual);
       $title = $this->castSafeStrings($title);
       if (!$message) {
-        $message = SafeMarkup::format('Page title @actual is equal to @expected.', array(
+        $message = SafeMarkup::format('Page title @actual is equal to @expected.', [
           '@actual' => var_export($actual, TRUE),
           '@expected' => var_export($title, TRUE),
-        ));
+        ]);
       }
       return $this->assertEqual($actual, $title, $message, $group);
     }
@@ -836,10 +836,10 @@ protected function assertTitle($title, $message = '', $group = 'Other') {
   protected function assertNoTitle($title, $message = '', $group = 'Other') {
     $actual = (string) current($this->xpath('//title'));
     if (!$message) {
-      $message = SafeMarkup::format('Page title @actual is not equal to @unexpected.', array(
+      $message = SafeMarkup::format('Page title @actual is not equal to @unexpected.', [
         '@actual' => var_export($actual, TRUE),
         '@unexpected' => var_export($title, TRUE),
-      ));
+      ]);
     }
     return $this->assertNotEqual($actual, $title, $message, $group);
   }
@@ -867,7 +867,7 @@ protected function assertNoTitle($title, $message = '', $group = 'Other') {
    * @return bool
    *   TRUE on pass, FALSE on fail.
    */
-  protected function assertThemeOutput($callback, array $variables = array(), $expected = '', $message = '', $group = 'Other') {
+  protected function assertThemeOutput($callback, array $variables = [], $expected = '', $message = '', $group = 'Other') {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = \Drupal::service('renderer');
 
@@ -885,7 +885,7 @@ protected function assertThemeOutput($callback, array $variables = array(), $exp
     if (!$message) {
       $message = '%callback rendered correctly.';
     }
-    $message = format_string($message, array('%callback' => 'theme_' . $callback . '()'));
+    $message = format_string($message, ['%callback' => 'theme_' . $callback . '()']);
     return $this->assertIdentical($output, $expected, $message, $group);
   }
 
@@ -1064,15 +1064,15 @@ protected function assertNoFieldByXPath($xpath, $value = NULL, $message = '', $g
   protected function assertFieldByName($name, $value = NULL, $message = NULL, $group = 'Browser') {
     if (!isset($message)) {
       if (!isset($value)) {
-        $message = SafeMarkup::format('Found field with name @name', array(
+        $message = SafeMarkup::format('Found field with name @name', [
           '@name' => var_export($name, TRUE),
-        ));
+        ]);
       }
       else {
-        $message = SafeMarkup::format('Found field with name @name and value @value', array(
+        $message = SafeMarkup::format('Found field with name @name and value @value', [
           '@name' => var_export($name, TRUE),
           '@value' => var_export($value, TRUE),
-        ));
+        ]);
       }
     }
     return $this->assertFieldByXPath($this->constructFieldXpath('name', $name), $value, $message, $group);
@@ -1103,7 +1103,7 @@ protected function assertFieldByName($name, $value = NULL, $message = NULL, $gro
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertNoFieldByName($name, $value = '', $message = '', $group = 'Browser') {
-    return $this->assertNoFieldByXPath($this->constructFieldXpath('name', $name), $value, $message ? $message : SafeMarkup::format('Did not find field by name @name', array('@name' => $name)), $group);
+    return $this->assertNoFieldByXPath($this->constructFieldXpath('name', $name), $value, $message ? $message : SafeMarkup::format('Did not find field by name @name', ['@name' => $name]), $group);
   }
 
   /**
@@ -1136,7 +1136,7 @@ protected function assertFieldById($id, $value = '', $message = '', $group = 'Br
       $value = (string) $value;
     }
     $message = (string) $message;
-    return $this->assertFieldByXPath($this->constructFieldXpath('id', $id), $value, $message ? $message : SafeMarkup::format('Found field by id @id', array('@id' => $id)), $group);
+    return $this->assertFieldByXPath($this->constructFieldXpath('id', $id), $value, $message ? $message : SafeMarkup::format('Found field by id @id', ['@id' => $id]), $group);
   }
 
   /**
@@ -1164,7 +1164,7 @@ protected function assertFieldById($id, $value = '', $message = '', $group = 'Br
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertNoFieldById($id, $value = '', $message = '', $group = 'Browser') {
-    return $this->assertNoFieldByXPath($this->constructFieldXpath('id', $id), $value, $message ? $message : SafeMarkup::format('Did not find field by id @id', array('@id' => $id)), $group);
+    return $this->assertNoFieldByXPath($this->constructFieldXpath('id', $id), $value, $message ? $message : SafeMarkup::format('Did not find field by id @id', ['@id' => $id]), $group);
   }
 
   /**
@@ -1187,8 +1187,8 @@ protected function assertNoFieldById($id, $value = '', $message = '', $group = '
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertFieldChecked($id, $message = '', $group = 'Browser') {
-    $elements = $this->xpath('//input[@id=:id]', array(':id' => $id));
-    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['checked']), $message ? $message : SafeMarkup::format('Checkbox field @id is checked.', array('@id' => $id)), $group);
+    $elements = $this->xpath('//input[@id=:id]', [':id' => $id]);
+    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['checked']), $message ? $message : SafeMarkup::format('Checkbox field @id is checked.', ['@id' => $id]), $group);
   }
 
   /**
@@ -1211,8 +1211,8 @@ protected function assertFieldChecked($id, $message = '', $group = 'Browser') {
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertNoFieldChecked($id, $message = '', $group = 'Browser') {
-    $elements = $this->xpath('//input[@id=:id]', array(':id' => $id));
-    return $this->assertTrue(isset($elements[0]) && empty($elements[0]['checked']), $message ? $message : SafeMarkup::format('Checkbox field @id is not checked.', array('@id' => $id)), $group);
+    $elements = $this->xpath('//input[@id=:id]', [':id' => $id]);
+    return $this->assertTrue(isset($elements[0]) && empty($elements[0]['checked']), $message ? $message : SafeMarkup::format('Checkbox field @id is not checked.', ['@id' => $id]), $group);
   }
 
   /**
@@ -1237,8 +1237,8 @@ protected function assertNoFieldChecked($id, $message = '', $group = 'Browser')
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertOption($id, $option, $message = '', $group = 'Browser') {
-    $options = $this->xpath('//select[@id=:id]//option[@value=:option]', array(':id' => $id, ':option' => $option));
-    return $this->assertTrue(isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @id exists.', array('@option' => $option, '@id' => $id)), $group);
+    $options = $this->xpath('//select[@id=:id]//option[@value=:option]', [':id' => $id, ':option' => $option]);
+    return $this->assertTrue(isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @id exists.', ['@option' => $option, '@id' => $id]), $group);
   }
 
   /**
@@ -1281,8 +1281,8 @@ protected function assertOptionByText($id, $text, $message = '') {
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertOptionWithDrupalSelector($drupal_selector, $option, $message = '', $group = 'Browser') {
-    $options = $this->xpath('//select[@data-drupal-selector=:data_drupal_selector]//option[@value=:option]', array(':data_drupal_selector' => $drupal_selector, ':option' => $option));
-    return $this->assertTrue(isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @data_drupal_selector exists.', array('@option' => $option, '@data_drupal_selector' => $drupal_selector)), $group);
+    $options = $this->xpath('//select[@data-drupal-selector=:data_drupal_selector]//option[@value=:option]', [':data_drupal_selector' => $drupal_selector, ':option' => $option]);
+    return $this->assertTrue(isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @data_drupal_selector exists.', ['@option' => $option, '@data_drupal_selector' => $drupal_selector]), $group);
   }
 
   /**
@@ -1307,9 +1307,9 @@ protected function assertOptionWithDrupalSelector($drupal_selector, $option, $me
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertNoOption($id, $option, $message = '', $group = 'Browser') {
-    $selects = $this->xpath('//select[@id=:id]', array(':id' => $id));
-    $options = $this->xpath('//select[@id=:id]//option[@value=:option]', array(':id' => $id, ':option' => $option));
-    return $this->assertTrue(isset($selects[0]) && !isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @id does not exist.', array('@option' => $option, '@id' => $id)), $group);
+    $selects = $this->xpath('//select[@id=:id]', [':id' => $id]);
+    $options = $this->xpath('//select[@id=:id]//option[@value=:option]', [':id' => $id, ':option' => $option]);
+    return $this->assertTrue(isset($selects[0]) && !isset($options[0]), $message ? $message : SafeMarkup::format('Option @option for field @id does not exist.', ['@option' => $option, '@id' => $id]), $group);
   }
 
   /**
@@ -1336,8 +1336,8 @@ protected function assertNoOption($id, $option, $message = '', $group = 'Browser
    * @todo $id is unusable. Replace with $name.
    */
   protected function assertOptionSelected($id, $option, $message = '', $group = 'Browser') {
-    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', array(':id' => $id, ':option' => $option));
-    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @id is selected.', array('@option' => $option, '@id' => $id)), $group);
+    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', [':id' => $id, ':option' => $option]);
+    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @id is selected.', ['@option' => $option, '@id' => $id]), $group);
   }
 
   /**
@@ -1364,8 +1364,8 @@ protected function assertOptionSelected($id, $option, $message = '', $group = 'B
    * @todo $id is unusable. Replace with $name.
    */
   protected function assertOptionSelectedWithDrupalSelector($drupal_selector, $option, $message = '', $group = 'Browser') {
-    $elements = $this->xpath('//select[@data-drupal-selector=:data_drupal_selector]//option[@value=:option]', array(':data_drupal_selector' => $drupal_selector, ':option' => $option));
-    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @data_drupal_selector is selected.', array('@option' => $option, '@data_drupal_selector' => $drupal_selector)), $group);
+    $elements = $this->xpath('//select[@data-drupal-selector=:data_drupal_selector]//option[@value=:option]', [':data_drupal_selector' => $drupal_selector, ':option' => $option]);
+    return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @data_drupal_selector is selected.', ['@option' => $option, '@data_drupal_selector' => $drupal_selector]), $group);
   }
 
   /**
@@ -1390,8 +1390,8 @@ protected function assertOptionSelectedWithDrupalSelector($drupal_selector, $opt
    *   TRUE on pass, FALSE on fail.
    */
   protected function assertNoOptionSelected($id, $option, $message = '', $group = 'Browser') {
-    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', array(':id' => $id, ':option' => $option));
-    return $this->assertTrue(isset($elements[0]) && empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @id is not selected.', array('@option' => $option, '@id' => $id)), $group);
+    $elements = $this->xpath('//select[@id=:id]//option[@value=:option]', [':id' => $id, ':option' => $option]);
+    return $this->assertTrue(isset($elements[0]) && empty($elements[0]['selected']), $message ? $message : SafeMarkup::format('Option @option for field @id is not selected.', ['@option' => $option, '@id' => $id]), $group);
   }
 
   /**
@@ -1464,12 +1464,12 @@ protected function assertNoField($field, $message = '', $group = 'Other') {
    * @return bool
    *   TRUE on pass, FALSE on fail.
    */
-  protected function assertNoDuplicateIds($message = '', $group = 'Other', $ids_to_skip = array()) {
+  protected function assertNoDuplicateIds($message = '', $group = 'Other', $ids_to_skip = []) {
     $status = TRUE;
     foreach ($this->xpath('//*[@id]') as $element) {
       $id = (string) $element['id'];
       if (isset($seen_ids[$id]) && !in_array($id, $ids_to_skip)) {
-        $this->fail(SafeMarkup::format('The HTML ID %id is unique.', array('%id' => $id)), $group);
+        $this->fail(SafeMarkup::format('The HTML ID %id is unique.', ['%id' => $id]), $group);
         $status = FALSE;
       }
       $seen_ids[$id] = TRUE;
@@ -1490,7 +1490,7 @@ protected function assertNoDuplicateIds($message = '', $group = 'Other', $ids_to
    */
   protected function constructFieldXpath($attribute, $value) {
     $xpath = '//textarea[@' . $attribute . '=:value]|//input[@' . $attribute . '=:value]|//select[@' . $attribute . '=:value]';
-    return $this->buildXPathQuery($xpath, array(':value' => $value));
+    return $this->buildXPathQuery($xpath, [':value' => $value]);
   }
 
 }
diff --git a/core/modules/simpletest/src/BlockCreationTrait.php b/core/modules/simpletest/src/BlockCreationTrait.php
index 4b36f78..b252d9e 100644
--- a/core/modules/simpletest/src/BlockCreationTrait.php
+++ b/core/modules/simpletest/src/BlockCreationTrait.php
@@ -38,19 +38,19 @@
    * @todo
    *   Add support for creating custom block instances.
    */
-  protected function placeBlock($plugin_id, array $settings = array()) {
+  protected function placeBlock($plugin_id, array $settings = []) {
     $config = \Drupal::configFactory();
-    $settings += array(
+    $settings += [
       'plugin' => $plugin_id,
       'region' => 'sidebar_first',
       'id' => strtolower($this->randomMachineName(8)),
       'theme' => $config->get('system.theme')->get('default'),
       'label' => $this->randomMachineName(8),
-      'visibility' => array(),
+      'visibility' => [],
       'weight' => 0,
-    );
+    ];
     $values = [];
-    foreach (array('region', 'id', 'theme', 'plugin', 'weight', 'visibility') as $key) {
+    foreach (['region', 'id', 'theme', 'plugin', 'weight', 'visibility'] as $key) {
       $values[$key] = $settings[$key];
       // Remove extra values that do not belong in the settings array.
       unset($settings[$key]);
diff --git a/core/modules/simpletest/src/ContentTypeCreationTrait.php b/core/modules/simpletest/src/ContentTypeCreationTrait.php
index 54712df..9ad0a21 100644
--- a/core/modules/simpletest/src/ContentTypeCreationTrait.php
+++ b/core/modules/simpletest/src/ContentTypeCreationTrait.php
@@ -22,7 +22,7 @@
    * @return \Drupal\node\Entity\NodeType
    *   Created content type.
    */
-  protected function createContentType(array $values = array()) {
+  protected function createContentType(array $values = []) {
     // Find a non-existent random type name.
     if (!isset($values['type'])) {
       do {
@@ -32,19 +32,19 @@ protected function createContentType(array $values = array()) {
     else {
       $id = $values['type'];
     }
-    $values += array(
+    $values += [
       'type' => $id,
       'name' => $id,
-    );
+    ];
     $type = NodeType::create($values);
     $status = $type->save();
     node_add_body_field($type);
 
     if ($this instanceof \PHPUnit_Framework_TestCase) {
-      $this->assertSame($status, SAVED_NEW, (new FormattableMarkup('Created content type %type.', array('%type' => $type->id())))->__toString());
+      $this->assertSame($status, SAVED_NEW, (new FormattableMarkup('Created content type %type.', ['%type' => $type->id()]))->__toString());
     }
     else {
-      $this->assertEqual($status, SAVED_NEW, (new FormattableMarkup('Created content type %type.', array('%type' => $type->id())))->__toString());
+      $this->assertEqual($status, SAVED_NEW, (new FormattableMarkup('Created content type %type.', ['%type' => $type->id()]))->__toString());
     }
 
     return $type;
diff --git a/core/modules/simpletest/src/Form/SimpletestResultsForm.php b/core/modules/simpletest/src/Form/SimpletestResultsForm.php
index c22c0a7..090ae02 100644
--- a/core/modules/simpletest/src/Form/SimpletestResultsForm.php
+++ b/core/modules/simpletest/src/Form/SimpletestResultsForm.php
@@ -59,40 +59,40 @@ public function __construct(Connection $database) {
    * Builds the status image map.
    */
   protected static function buildStatusImageMap() {
-    $image_pass = array(
+    $image_pass = [
       '#theme' => 'image',
       '#uri' => 'core/misc/icons/73b355/check.svg',
       '#width' => 18,
       '#height' => 18,
       '#alt' => 'Pass',
-    );
-    $image_fail = array(
+    ];
+    $image_fail = [
       '#theme' => 'image',
       '#uri' => 'core/misc/icons/e32700/error.svg',
       '#width' => 18,
       '#height' => 18,
       '#alt' => 'Fail',
-    );
-    $image_exception = array(
+    ];
+    $image_exception = [
       '#theme' => 'image',
       '#uri' => 'core/misc/icons/e29700/warning.svg',
       '#width' => 18,
       '#height' => 18,
       '#alt' => 'Exception',
-    );
-    $image_debug = array(
+    ];
+    $image_debug = [
       '#theme' => 'image',
       '#uri' => 'core/misc/icons/e29700/warning.svg',
       '#width' => 18,
       '#height' => 18,
       '#alt' => 'Debug',
-    );
-    return array(
+    ];
+    return [
       'pass' => $image_pass,
       'fail' => $image_fail,
       'exception' => $image_exception,
       'debug' => $image_debug,
-    );
+    ];
   }
 
   /**
@@ -108,10 +108,10 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, $test_id = NULL) {
     // Make sure there are test results to display and a re-run is not being
     // performed.
-    $results = array();
+    $results = [];
     if (is_numeric($test_id) && !$results = $this->getResults($test_id)) {
       drupal_set_message($this->t('No test results to display.'), 'error');
-      return new RedirectResponse($this->url('simpletest.test_form', array(), array('absolute' => TRUE)));
+      return new RedirectResponse($this->url('simpletest.test_form', [], ['absolute' => TRUE]));
     }
 
     // Load all classes and include CSS.
@@ -120,45 +120,45 @@ public function buildForm(array $form, FormStateInterface $form_state, $test_id
     $filter = static::addResultForm($form, $results, $this->getStringTranslation());
 
     // Actions.
-    $form['#action'] = $this->url('simpletest.result_form', array('test_id' => 're-run'));
-    $form['action'] = array(
+    $form['#action'] = $this->url('simpletest.result_form', ['test_id' => 're-run']);
+    $form['action'] = [
       '#type' => 'fieldset',
       '#title' => $this->t('Actions'),
-      '#attributes' => array('class' => array('container-inline')),
+      '#attributes' => ['class' => ['container-inline']],
       '#weight' => -11,
-    );
+    ];
 
-    $form['action']['filter'] = array(
+    $form['action']['filter'] = [
       '#type' => 'select',
       '#title' => 'Filter',
-      '#options' => array(
-        'all' => $this->t('All (@count)', array('@count' => count($filter['pass']) + count($filter['fail']))),
-        'pass' => $this->t('Pass (@count)', array('@count' => count($filter['pass']))),
-        'fail' => $this->t('Fail (@count)', array('@count' => count($filter['fail']))),
-      ),
-    );
+      '#options' => [
+        'all' => $this->t('All (@count)', ['@count' => count($filter['pass']) + count($filter['fail'])]),
+        'pass' => $this->t('Pass (@count)', ['@count' => count($filter['pass'])]),
+        'fail' => $this->t('Fail (@count)', ['@count' => count($filter['fail'])]),
+      ],
+    ];
     $form['action']['filter']['#default_value'] = ($filter['fail'] ? 'fail' : 'all');
 
     // Categorized test classes for to be used with selected filter value.
-    $form['action']['filter_pass'] = array(
+    $form['action']['filter_pass'] = [
       '#type' => 'hidden',
       '#default_value' => implode(',', $filter['pass']),
-    );
-    $form['action']['filter_fail'] = array(
+    ];
+    $form['action']['filter_fail'] = [
       '#type' => 'hidden',
       '#default_value' => implode(',', $filter['fail']),
-    );
+    ];
 
-    $form['action']['op'] = array(
+    $form['action']['op'] = [
       '#type' => 'submit',
       '#value' => $this->t('Run tests'),
-    );
+    ];
 
-    $form['action']['return'] = array(
+    $form['action']['return'] = [
       '#type' => 'link',
       '#title' => $this->t('Return to list'),
       '#url' => Url::fromRoute('simpletest.test_form'),
-    );
+    ];
 
     if (is_numeric($test_id)) {
       simpletest_clean_results_table($test_id);
@@ -171,8 +171,8 @@ public function buildForm(array $form, FormStateInterface $form_state, $test_id
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $pass = $form_state->getValue('filter_pass') ? explode(',', $form_state->getValue('filter_pass')) : array();
-    $fail = $form_state->getValue('filter_fail') ? explode(',', $form_state->getValue('filter_fail')) : array();
+    $pass = $form_state->getValue('filter_pass') ? explode(',', $form_state->getValue('filter_pass')) : [];
+    $fail = $form_state->getValue('filter_fail') ? explode(',', $form_state->getValue('filter_fail')) : [];
 
     if ($form_state->getValue('filter') == 'all') {
       $classes = array_merge($pass, $fail);
@@ -189,7 +189,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       return;
     }
 
-    $form_execute = array();
+    $form_execute = [];
     $form_state_execute = new FormState();
     foreach ($classes as $class) {
       $form_state_execute->setValue(['tests', $class], $class);
@@ -247,10 +247,10 @@ protected function getResults($test_id) {
    */
   public static function addResultForm(array &$form, array $results) {
     // Transform the test results to be grouped by test class.
-    $test_results = array();
+    $test_results = [];
     foreach ($results as $result) {
       if (!isset($test_results[$result->test_class])) {
-        $test_results[$result->test_class] = array();
+        $test_results[$result->test_class] = [];
       }
       $test_results[$result->test_class][] = $result;
     }
@@ -258,55 +258,55 @@ public static function addResultForm(array &$form, array $results) {
     $image_status_map = static::buildStatusImageMap();
 
     // Keep track of which test cases passed or failed.
-    $filter = array(
-      'pass' => array(),
-      'fail' => array(),
-    );
+    $filter = [
+      'pass' => [],
+      'fail' => [],
+    ];
 
     // Summary result widget.
-    $form['result'] = array(
+    $form['result'] = [
       '#type' => 'fieldset',
       '#title' => 'Results',
       // Because this is used in a theme-less situation need to provide a
       // default.
-      '#attributes' => array(),
-    );
-    $form['result']['summary'] = $summary = array(
+      '#attributes' => [],
+    ];
+    $form['result']['summary'] = $summary = [
       '#theme' => 'simpletest_result_summary',
       '#pass' => 0,
       '#fail' => 0,
       '#exception' => 0,
       '#debug' => 0,
-    );
+    ];
 
     \Drupal::service('test_discovery')->registerTestNamespaces();
 
     // Cycle through each test group.
-    $header = array(
+    $header = [
       'Message',
       'Group',
       'Filename',
       'Line',
       'Function',
-      array('colspan' => 2, 'data' => 'Status')
-    );
-    $form['result']['results'] = array();
+      ['colspan' => 2, 'data' => 'Status']
+    ];
+    $form['result']['results'] = [];
     foreach ($test_results as $group => $assertions) {
       // Create group details with summary information.
       $info = TestDiscovery::getTestInfo($group);
-      $form['result']['results'][$group] = array(
+      $form['result']['results'][$group] = [
         '#type' => 'details',
         '#title' => $info['name'],
         '#open' => TRUE,
         '#description' => $info['description'],
-      );
+      ];
       $form['result']['results'][$group]['summary'] = $summary;
       $group_summary =& $form['result']['results'][$group]['summary'];
 
       // Create table of assertions for the group.
-      $rows = array();
+      $rows = [];
       foreach ($assertions as $assertion) {
-        $row = array();
+        $row = [];
         $row[] = ['data' => ['#markup' => $assertion->message]];
         $row[] = $assertion->message_group;
         $row[] = \Drupal::service('file_system')->basename(($assertion->file));
@@ -318,16 +318,16 @@ public static function addResultForm(array &$form, array $results) {
         if ($assertion->message_group == 'Debug') {
           $class = 'simpletest-debug';
         }
-        $rows[] = array('data' => $row, 'class' => array($class));
+        $rows[] = ['data' => $row, 'class' => [$class]];
 
         $group_summary['#' . $assertion->status]++;
         $form['result']['summary']['#' . $assertion->status]++;
       }
-      $form['result']['results'][$group]['table'] = array(
+      $form['result']['results'][$group]['table'] = [
         '#type' => 'table',
         '#header' => $header,
         '#rows' => $rows,
-      );
+      ];
 
       // Set summary information.
       $group_summary['#ok'] = $group_summary['#fail'] + $group_summary['#exception'] == 0;
diff --git a/core/modules/simpletest/src/Form/SimpletestSettingsForm.php b/core/modules/simpletest/src/Form/SimpletestSettingsForm.php
index 744915f..d1ee436 100644
--- a/core/modules/simpletest/src/Form/SimpletestSettingsForm.php
+++ b/core/modules/simpletest/src/Form/SimpletestSettingsForm.php
@@ -29,56 +29,56 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('simpletest.settings');
-    $form['general'] = array(
+    $form['general'] = [
       '#type' => 'details',
       '#title' => $this->t('General'),
       '#open' => TRUE,
-    );
-    $form['general']['simpletest_clear_results'] = array(
+    ];
+    $form['general']['simpletest_clear_results'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Clear results after each complete test suite run'),
       '#description' => $this->t('By default SimpleTest will clear the results after they have been viewed on the results page, but in some cases it may be useful to leave the results in the database. The results can then be viewed at <em>admin/config/development/testing/results/[test_id]</em>. The test ID can be found in the database, simpletest table, or kept track of when viewing the results the first time. Additionally, some modules may provide more analysis or features that require this setting to be disabled.'),
       '#default_value' => $config->get('clear_results'),
-    );
-    $form['general']['simpletest_verbose'] = array(
+    ];
+    $form['general']['simpletest_verbose'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Provide verbose information when running tests'),
       '#description' => $this->t('The verbose data will be printed along with the standard assertions and is useful for debugging. The verbose data will be erased between each test suite run. The verbose data output is very detailed and should only be used when debugging.'),
       '#default_value' => $config->get('verbose'),
-    );
+    ];
 
-    $form['httpauth'] = array(
+    $form['httpauth'] = [
       '#type' => 'details',
       '#title' => $this->t('HTTP authentication'),
       '#description' => $this->t('HTTP auth settings to be used by the SimpleTest browser during testing. Useful when the site requires basic HTTP authentication.'),
-    );
-    $form['httpauth']['simpletest_httpauth_method'] = array(
+    ];
+    $form['httpauth']['simpletest_httpauth_method'] = [
       '#type' => 'select',
       '#title' => $this->t('Method'),
-      '#options' => array(
+      '#options' => [
         CURLAUTH_BASIC => $this->t('Basic'),
         CURLAUTH_DIGEST => $this->t('Digest'),
         CURLAUTH_GSSNEGOTIATE => $this->t('GSS negotiate'),
         CURLAUTH_NTLM => $this->t('NTLM'),
         CURLAUTH_ANY => $this->t('Any'),
         CURLAUTH_ANYSAFE => $this->t('Any safe'),
-      ),
+      ],
       '#default_value' => $config->get('httpauth.method'),
-    );
+    ];
     $username = $config->get('httpauth.username');
     $password = $config->get('httpauth.password');
-    $form['httpauth']['simpletest_httpauth_username'] = array(
+    $form['httpauth']['simpletest_httpauth_username'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Username'),
       '#default_value' => $username,
-    );
+    ];
     if (!empty($username) && !empty($password)) {
       $form['httpauth']['simpletest_httpauth_username']['#description'] = $this->t('Leave this blank to delete both the existing username and password.');
     }
-    $form['httpauth']['simpletest_httpauth_password'] = array(
+    $form['httpauth']['simpletest_httpauth_password'] = [
       '#type' => 'password',
       '#title' => $this->t('Password'),
-    );
+    ];
     if ($password) {
       $form['httpauth']['simpletest_httpauth_password']['#description'] = $this->t('To change the password, enter the new password here.');
     }
diff --git a/core/modules/simpletest/src/Form/SimpletestTestForm.php b/core/modules/simpletest/src/Form/SimpletestTestForm.php
index ccd8fe8..f954546 100644
--- a/core/modules/simpletest/src/Form/SimpletestTestForm.php
+++ b/core/modules/simpletest/src/Form/SimpletestTestForm.php
@@ -61,24 +61,24 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Run tests'),
       '#tableselect' => TRUE,
       '#button_type' => 'primary',
-    );
-    $form['clean'] = array(
+    ];
+    $form['clean'] = [
       '#type' => 'fieldset',
       '#title' => $this->t('Clean test environment'),
       '#description' => $this->t('Remove tables with the prefix "simpletest" and temporary directories that are left over from tests that crashed. This is intended for developers when creating tests.'),
       '#weight' => 200,
-    );
-    $form['clean']['op'] = array(
+    ];
+    $form['clean']['op'] = [
       '#type' => 'submit',
       '#value' => $this->t('Clean environment'),
-      '#submit' => array('simpletest_clean_environment'),
-    );
+      '#submit' => ['simpletest_clean_environment'],
+    ];
 
     // Do not needlessly re-execute a full test discovery if the user input
     // already contains an explicit list of test classes to run.
@@ -88,43 +88,43 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // JavaScript-only table filters.
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('table-filter', 'js-show'),
-      ),
-    );
-    $form['filters']['text'] = array(
+      '#attributes' => [
+        'class' => ['table-filter', 'js-show'],
+      ],
+    ];
+    $form['filters']['text'] = [
       '#type' => 'search',
       '#title' => $this->t('Search'),
       '#size' => 30,
       '#placeholder' => $this->t('Enter test name…'),
-      '#attributes' => array(
-        'class' => array('table-filter-text'),
+      '#attributes' => [
+        'class' => ['table-filter-text'],
         'data-table' => '#simpletest-test-form',
         'autocomplete' => 'off',
         'title' => $this->t('Enter at least 3 characters of the test name or description to filter by.'),
-      ),
-    );
+      ],
+    ];
 
-    $form['tests'] = array(
+    $form['tests'] = [
       '#type' => 'table',
       '#id' => 'simpletest-form-table',
       '#tableselect' => TRUE,
-      '#header' => array(
-        array('data' => $this->t('Test'), 'class' => array('simpletest-test-label')),
-        array('data' => $this->t('Description'), 'class' => array('simpletest-test-description')),
-      ),
+      '#header' => [
+        ['data' => $this->t('Test'), 'class' => ['simpletest-test-label']],
+        ['data' => $this->t('Description'), 'class' => ['simpletest-test-description']],
+      ],
       '#empty' => $this->t('No tests to display.'),
-      '#attached' => array(
-        'library' => array(
+      '#attached' => [
+        'library' => [
           'simpletest/drupal.simpletest',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // Define the images used to expand/collapse the test groups.
-    $image_collapsed = array(
+    $image_collapsed = [
       '#theme' => 'image',
       '#uri' => 'core/misc/menu-collapsed.png',
       '#width' => '7',
@@ -132,8 +132,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       '#alt' => $this->t('Expand'),
       '#title' => $this->t('Expand'),
       '#suffix' => '<a href="#" class="simpletest-collapse">(' . $this->t('Expand') . ')</a>',
-    );
-    $image_extended = array(
+    ];
+    $image_extended = [
       '#theme' => 'image',
       '#uri' => 'core/misc/menu-expanded.png',
       '#width' => '7',
@@ -141,7 +141,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       '#alt' => $this->t('Collapse'),
       '#title' => $this->t('Collapse'),
       '#suffix' => '<a href="#" class="simpletest-collapse">(' . $this->t('Collapse') . ')</a>',
-    );
+    ];
     $form['tests']['#attached']['drupalSettings']['simpleTest']['images'] = [
       (string) $this->renderer->renderPlain($image_collapsed),
       (string) $this->renderer->renderPlain($image_extended),
@@ -150,9 +150,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Generate the list of tests arranged by group.
     $groups = $this->testDiscovery->getTestClasses();
     foreach ($groups as $group => $tests) {
-      $form['tests'][$group] = array(
-        '#attributes' => array('class' => array('simpletest-group')),
-      );
+      $form['tests'][$group] = [
+        '#attributes' => ['class' => ['simpletest-group']],
+      ];
 
       // Make the class name safe for output on the page by replacing all
       // non-word/decimal characters with a dash (-).
@@ -160,47 +160,47 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
       // Override tableselect column with custom selector for this group.
       // This group-select-all checkbox is injected via JavaScript.
-      $form['tests'][$group]['select'] = array(
-        '#wrapper_attributes' => array(
+      $form['tests'][$group]['select'] = [
+        '#wrapper_attributes' => [
           'id' => $group_class,
-          'class' => array('simpletest-group-select-all'),
-        ),
-      );
-      $form['tests'][$group]['title'] = array(
+          'class' => ['simpletest-group-select-all'],
+        ],
+      ];
+      $form['tests'][$group]['title'] = [
         // Expand/collapse image.
         '#prefix' => '<div class="simpletest-image" id="simpletest-test-group-' . $group_class . '"></div>',
         '#markup' => '<label for="' . $group_class . '-group-select-all">' . $group . '</label>',
-        '#wrapper_attributes' => array(
-          'class' => array('simpletest-group-label'),
-        ),
-      );
-      $form['tests'][$group]['description'] = array(
+        '#wrapper_attributes' => [
+          'class' => ['simpletest-group-label'],
+        ],
+      ];
+      $form['tests'][$group]['description'] = [
         '#markup' => '&nbsp;',
-        '#wrapper_attributes' => array(
-          'class' => array('simpletest-group-description'),
-        ),
-      );
+        '#wrapper_attributes' => [
+          'class' => ['simpletest-group-description'],
+        ],
+      ];
 
       // Cycle through each test within the current group.
       foreach ($tests as $class => $info) {
-        $form['tests'][$class] = array(
-          '#attributes' => array('class' => array($group_class . '-test', 'js-hide')),
-        );
-        $form['tests'][$class]['title'] = array(
+        $form['tests'][$class] = [
+          '#attributes' => ['class' => [$group_class . '-test', 'js-hide']],
+        ];
+        $form['tests'][$class]['title'] = [
           '#type' => 'label',
           '#title' => '\\' . $info['name'],
-          '#wrapper_attributes' => array(
-            'class' => array('simpletest-test-label', 'table-filter-text-source'),
-          ),
-        );
-        $form['tests'][$class]['description'] = array(
+          '#wrapper_attributes' => [
+            'class' => ['simpletest-test-label', 'table-filter-text-source'],
+          ],
+        ];
+        $form['tests'][$class]['description'] = [
           '#prefix' => '<div class="description">',
           '#plain_text' => $info['description'],
           '#suffix' => '</div>',
-          '#wrapper_attributes' => array(
-            'class' => array('simpletest-test-description', 'table-filter-text-source'),
-          ),
-        );
+          '#wrapper_attributes' => [
+            'class' => ['simpletest-test-description', 'table-filter-text-source'],
+          ],
+        ];
       }
     }
 
@@ -233,7 +233,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $test_id = simpletest_run_tests($tests_list, 'drupal');
       $form_state->setRedirect(
         'simpletest.result_form',
-        array('test_id' => $test_id)
+        ['test_id' => $test_id]
       );
     }
   }
diff --git a/core/modules/simpletest/src/InstallerTestBase.php b/core/modules/simpletest/src/InstallerTestBase.php
index f1f3a11..92f33dc 100644
--- a/core/modules/simpletest/src/InstallerTestBase.php
+++ b/core/modules/simpletest/src/InstallerTestBase.php
@@ -23,7 +23,7 @@
    *   An array of settings to write out, in the format expected by
    *   drupal_rewrite_settings().
    */
-  protected $settings = array();
+  protected $settings = [];
 
   /**
    * The language code in which to install Drupal.
@@ -46,7 +46,7 @@
    *
    * @var array
    */
-  protected $parameters = array();
+  protected $parameters = [];
 
   /**
    * A string translation map used for translated installer screens.
@@ -55,9 +55,9 @@
    *
    * @var array
    */
-  protected $translations = array(
+  protected $translations = [
     'Save and continue' => 'Save and continue',
-  );
+  ];
 
   /**
    * Whether the installer has completed.
@@ -73,12 +73,12 @@ protected function setUp() {
     $this->isInstalled = FALSE;
 
     // Define information about the user 1 account.
-    $this->rootUser = new UserSession(array(
+    $this->rootUser = new UserSession([
       'uid' => 1,
       'name' => 'admin',
       'mail' => 'admin@example.com',
       'pass_raw' => $this->randomMachineName(),
-    ));
+    ]);
 
     // If any $settings are defined for this test, copy and prepare an actual
     // settings.php, so as to resemble a regular installation.
@@ -171,9 +171,9 @@ protected function visitInstaller() {
    * Installer step: Select language.
    */
   protected function setUpLanguage() {
-    $edit = array(
+    $edit = [
       'langcode' => $this->langcode,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, $this->translations['Save and continue']);
   }
 
@@ -181,9 +181,9 @@ protected function setUpLanguage() {
    * Installer step: Select installation profile.
    */
   protected function setUpProfile() {
-    $edit = array(
+    $edit = [
       'profile' => $this->profile,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, $this->translations['Save and continue']);
   }
 
diff --git a/core/modules/simpletest/src/KernelTestBase.php b/core/modules/simpletest/src/KernelTestBase.php
index c804218..9b7495a 100644
--- a/core/modules/simpletest/src/KernelTestBase.php
+++ b/core/modules/simpletest/src/KernelTestBase.php
@@ -61,7 +61,7 @@
    *
    * @var array
    */
-  public static $modules = array();
+  public static $modules = [];
 
   private $moduleFiles;
   private $themeFiles;
@@ -71,7 +71,7 @@
    *
    * @var array
    */
-  protected $configDirectories = array();
+  protected $configDirectories = [];
 
   /**
    * A KeyValueMemoryFactory instance to use when building the container.
@@ -85,7 +85,7 @@
    *
    * @var array
    */
-  protected $streamWrappers = array();
+  protected $streamWrappers = [];
 
   /**
    * {@inheritdoc}
@@ -101,8 +101,8 @@ function __construct($test_id = NULL) {
   protected function beforePrepareEnvironment() {
     // Copy/prime extension file lists once to avoid filesystem scans.
     if (!isset($this->moduleFiles)) {
-      $this->moduleFiles = \Drupal::state()->get('system.module.files') ?: array();
-      $this->themeFiles = \Drupal::state()->get('system.theme.files') ?: array();
+      $this->moduleFiles = \Drupal::state()->get('system.module.files') ?: [];
+      $this->themeFiles = \Drupal::state()->get('system.theme.files') ?: [];
     }
   }
 
@@ -115,7 +115,7 @@ protected function beforePrepareEnvironment() {
    *   Thrown when CONFIG_SYNC_DIRECTORY cannot be created or made writable.
    */
   protected function prepareConfigDirectories() {
-    $this->configDirectories = array();
+    $this->configDirectories = [];
     include_once DRUPAL_ROOT . '/core/includes/install.inc';
     // Assign the relative path to the global variable.
     $path = $this->siteDirectory . '/config_' . CONFIG_SYNC_DIRECTORY;
@@ -232,11 +232,11 @@ protected function setUp() {
     // \Drupal\Core\Config\ConfigInstaller::installDefaultConfig() to work.
     // Write directly to active storage to avoid early instantiation of
     // the event dispatcher which can prevent modules from registering events.
-    \Drupal::service('config.storage')->write('core.extension', array('module' => array(), 'theme' => array(), 'profile' => ''));
+    \Drupal::service('config.storage')->write('core.extension', ['module' => [], 'theme' => [], 'profile' => '']);
 
     // Collect and set a fixed module list.
     $class = get_class($this);
-    $modules = array();
+    $modules = [];
     while ($class) {
       if (property_exists($class, 'modules')) {
         // Only add the modules, if the $modules property was not inherited.
@@ -262,7 +262,7 @@ protected function setUp() {
     // @see https://www.drupal.org/node/2028109
     file_prepare_directory($this->publicFilesDirectory, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);
     $this->settingsSet('file_public_path', $this->publicFilesDirectory);
-    $this->streamWrappers = array();
+    $this->streamWrappers = [];
     $this->registerStreamWrapper('public', 'Drupal\Core\StreamWrapper\PublicStream');
     // The temporary stream wrapper is able to operate both with and without
     // configuration.
@@ -328,7 +328,7 @@ public function containerBuild(ContainerBuilder $container) {
         ->addTag('event_subscriber');
     }
 
-    $keyvalue_options = $container->getParameter('factory.keyvalue') ?: array();
+    $keyvalue_options = $container->getParameter('factory.keyvalue') ?: [];
     $keyvalue_options['default'] = 'keyvalue.memory';
     $container->setParameter('factory.keyvalue', $keyvalue_options);
     $container->set('keyvalue.memory', $this->keyValueFactory);
@@ -366,14 +366,14 @@ public function containerBuild(ContainerBuilder $container) {
     }
 
     if ($container->hasDefinition('password')) {
-      $container->getDefinition('password')->setArguments(array(1));
+      $container->getDefinition('password')->setArguments([1]);
     }
 
     // Register the stream wrapper manager.
     $container
       ->register('stream_wrapper_manager', 'Drupal\Core\StreamWrapper\StreamWrapperManager')
       ->addArgument(new Reference('module_handler'))
-      ->addMethodCall('setContainer', array(new Reference('service_container')));
+      ->addMethodCall('setContainer', [new Reference('service_container')]);
 
     $request = Request::create('/');
     $container->get('request_stack')->push($request);
@@ -405,9 +405,9 @@ protected function installConfig(array $modules) {
       }
       \Drupal::service('config.installer')->installDefaultConfig('module', $module);
     }
-    $this->pass(format_string('Installed default config: %modules.', array(
+    $this->pass(format_string('Installed default config: %modules.', [
       '%modules' => implode(', ', $modules),
-    )));
+    ]));
   }
 
   /**
@@ -447,10 +447,10 @@ protected function installSchema($module, $tables) {
       }
       $this->container->get('database')->schema()->createTable($table, $schema);
     }
-    $this->pass(format_string('Installed %module tables: %tables.', array(
+    $this->pass(format_string('Installed %module tables: %tables.', [
       '%tables' => '{' . implode('}, {', $tables) . '}',
       '%module' => $module,
-    )));
+    ]));
   }
 
 
@@ -476,18 +476,18 @@ protected function installEntitySchema($entity_type_id) {
       $all_tables_exist = TRUE;
       foreach ($tables as $table) {
         if (!$db_schema->tableExists($table)) {
-          $this->fail(SafeMarkup::format('Installed entity type table for the %entity_type entity type: %table', array(
+          $this->fail(SafeMarkup::format('Installed entity type table for the %entity_type entity type: %table', [
             '%entity_type' => $entity_type_id,
             '%table' => $table,
-          )));
+          ]));
           $all_tables_exist = FALSE;
         }
       }
       if ($all_tables_exist) {
-        $this->pass(SafeMarkup::format('Installed entity type tables for the %entity_type entity type: %tables', array(
+        $this->pass(SafeMarkup::format('Installed entity type tables for the %entity_type entity type: %tables', [
           '%entity_type' => $entity_type_id,
           '%tables' => '{' . implode('}, {', $tables) . '}',
-        )));
+        ]));
       }
     }
   }
@@ -539,9 +539,9 @@ protected function enableModules(array $modules) {
     // Note that the kernel has rebuilt the container; this $module_handler is
     // no longer the $module_handler instance from above.
     $this->container->get('module_handler')->reload();
-    $this->pass(format_string('Enabled modules: %modules.', array(
+    $this->pass(format_string('Enabled modules: %modules.', [
       '%modules' => implode(', ', $modules),
-    )));
+    ]));
   }
 
   /**
@@ -574,9 +574,9 @@ protected function disableModules(array $modules) {
     // no longer the $module_handler instance from above.
     $module_handler = $this->container->get('module_handler');
     $module_handler->reload();
-    $this->pass(format_string('Disabled modules: %modules.', array(
+    $this->pass(format_string('Disabled modules: %modules.', [
       '%modules' => implode(', ', $modules),
-    )));
+    ]));
   }
 
   /**
diff --git a/core/modules/simpletest/src/NodeCreationTrait.php b/core/modules/simpletest/src/NodeCreationTrait.php
index 9ed55d8..86321a2 100644
--- a/core/modules/simpletest/src/NodeCreationTrait.php
+++ b/core/modules/simpletest/src/NodeCreationTrait.php
@@ -64,17 +64,17 @@ function getNodeByTitle($title, $reset = FALSE) {
    * @return \Drupal\node\NodeInterface
    *   The created node entity.
    */
-  protected function createNode(array $settings = array()) {
+  protected function createNode(array $settings = []) {
     // Populate defaults array.
-    $settings += array(
-      'body'      => array(array(
+    $settings += [
+      'body'      => [[
         'value' => $this->randomMachineName(32),
         'format' => filter_default_format(),
-      )),
+      ]],
       'title'     => $this->randomMachineName(8),
       'type'      => 'page',
       'uid'       => \Drupal::currentUser()->id(),
-    );
+    ];
     $node = Node::create($settings);
     $node->save();
 
diff --git a/core/modules/simpletest/src/TestBase.php b/core/modules/simpletest/src/TestBase.php
index 14d7909..1491cc2 100644
--- a/core/modules/simpletest/src/TestBase.php
+++ b/core/modules/simpletest/src/TestBase.php
@@ -50,19 +50,19 @@
    *
    * @var Array
    */
-  public $results = array(
+  public $results = [
     '#pass' => 0,
     '#fail' => 0,
     '#exception' => 0,
     '#debug' => 0,
-  );
+  ];
 
   /**
    * Assertions thrown in that test case.
    *
    * @var Array
    */
-  protected $assertions = array();
+  protected $assertions = [];
 
   /**
    * This class is skipped when looking for the source of an assertion.
@@ -72,7 +72,7 @@
    * that called it. So we need to skip the classes defining these helper
    * methods.
    */
-  protected $skipClasses = array(__CLASS__ => TRUE);
+  protected $skipClasses = [__CLASS__ => TRUE];
 
   /**
    * TRUE if verbose debugging is enabled.
@@ -255,7 +255,7 @@ public function __construct($test_id = NULL) {
    *   Array of errors containing a list of unmet requirements.
    */
   protected function checkRequirements() {
-    return array();
+    return [];
   }
 
   /**
@@ -319,7 +319,7 @@ protected function assert($status, $message = '', $group = 'Other', array $calle
     }
 
     // Creation assertion array that can be displayed while tests are running.
-    $assertion = array(
+    $assertion = [
       'test_id' => $this->testId,
       'test_class' => get_class($this),
       'status' => $status,
@@ -328,7 +328,7 @@ protected function assert($status, $message = '', $group = 'Other', array $calle
       'function' => $caller['function'],
       'line' => $caller['line'],
       'file' => $caller['file'],
-    );
+    ];
 
     // Store assertion for display after the test has completed.
     $message_id = $this->storeAssertion($assertion);
@@ -364,19 +364,19 @@ protected function assert($status, $message = '', $group = 'Other', array $calle
    * @see \Drupal\simpletest\TestBase::assert()
    * @see \Drupal\simpletest\TestBase::deleteAssert()
    */
-  public static function insertAssert($test_id, $test_class, $status, $message = '', $group = 'Other', array $caller = array()) {
+  public static function insertAssert($test_id, $test_class, $status, $message = '', $group = 'Other', array $caller = []) {
     // Convert boolean status to string status.
     if (is_bool($status)) {
       $status = $status ? 'pass' : 'fail';
     }
 
-    $caller += array(
+    $caller += [
       'function' => 'Unknown',
       'line' => 0,
       'file' => 'Unknown',
-    );
+    ];
 
-    $assertion = array(
+    $assertion = [
       'test_id' => $test_id,
       'test_class' => $test_class,
       'status' => $status,
@@ -385,7 +385,7 @@ public static function insertAssert($test_id, $test_class, $status, $message = '
       'function' => $caller['function'],
       'line' => $caller['line'],
       'file' => $caller['file'],
-    );
+    ];
 
     // We can't use storeAssertion() because this method is static.
     return self::getDatabaseConnection()
@@ -457,7 +457,7 @@ protected function getAssertionCall() {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertTrue($value, $message = '', $group = 'Other') {
-    return $this->assert((bool) $value, $message ? $message : SafeMarkup::format('Value @value is TRUE.', array('@value' => var_export($value, TRUE))), $group);
+    return $this->assert((bool) $value, $message ? $message : SafeMarkup::format('Value @value is TRUE.', ['@value' => var_export($value, TRUE)]), $group);
   }
 
   /**
@@ -482,7 +482,7 @@ protected function assertTrue($value, $message = '', $group = 'Other') {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertFalse($value, $message = '', $group = 'Other') {
-    return $this->assert(!$value, $message ? $message : SafeMarkup::format('Value @value is FALSE.', array('@value' => var_export($value, TRUE))), $group);
+    return $this->assert(!$value, $message ? $message : SafeMarkup::format('Value @value is FALSE.', ['@value' => var_export($value, TRUE)]), $group);
   }
 
   /**
@@ -505,7 +505,7 @@ protected function assertFalse($value, $message = '', $group = 'Other') {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertNull($value, $message = '', $group = 'Other') {
-    return $this->assert(!isset($value), $message ? $message : SafeMarkup::format('Value @value is NULL.', array('@value' => var_export($value, TRUE))), $group);
+    return $this->assert(!isset($value), $message ? $message : SafeMarkup::format('Value @value is NULL.', ['@value' => var_export($value, TRUE)]), $group);
   }
 
   /**
@@ -528,7 +528,7 @@ protected function assertNull($value, $message = '', $group = 'Other') {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertNotNull($value, $message = '', $group = 'Other') {
-    return $this->assert(isset($value), $message ? $message : SafeMarkup::format('Value @value is not NULL.', array('@value' => var_export($value, TRUE))), $group);
+    return $this->assert(isset($value), $message ? $message : SafeMarkup::format('Value @value is not NULL.', ['@value' => var_export($value, TRUE)]), $group);
   }
 
   /**
@@ -560,7 +560,7 @@ protected function assertEqual($first, $second, $message = '', $group = 'Other')
     $second = $this->castSafeStrings($second);
     $is_equal = $first == $second;
     if (!$is_equal || !$message) {
-      $default_message = SafeMarkup::format('Value @first is equal to value @second.', array('@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)));
+      $default_message = SafeMarkup::format('Value @first is equal to value @second.', ['@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)]);
       $message = $message ? $message . PHP_EOL . $default_message : $default_message;
     }
     return $this->assert($is_equal, $message, $group);
@@ -595,7 +595,7 @@ protected function assertNotEqual($first, $second, $message = '', $group = 'Othe
     $second = $this->castSafeStrings($second);
     $not_equal = $first != $second;
     if (!$not_equal || !$message) {
-      $default_message = SafeMarkup::format('Value @first is not equal to value @second.', array('@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)));
+      $default_message = SafeMarkup::format('Value @first is not equal to value @second.', ['@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)]);
       $message = $message ? $message . PHP_EOL . $default_message : $default_message;
     }
     return $this->assert($not_equal, $message, $group);
@@ -625,7 +625,7 @@ protected function assertNotEqual($first, $second, $message = '', $group = 'Othe
   protected function assertIdentical($first, $second, $message = '', $group = 'Other') {
     $is_identical = $first === $second;
     if (!$is_identical || !$message) {
-      $default_message = SafeMarkup::format('Value @first is identical to value @second.', array('@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)));
+      $default_message = SafeMarkup::format('Value @first is identical to value @second.', ['@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)]);
       $message = $message ? $message . PHP_EOL . $default_message : $default_message;
     }
     return $this->assert($is_identical, $message, $group);
@@ -655,7 +655,7 @@ protected function assertIdentical($first, $second, $message = '', $group = 'Oth
   protected function assertNotIdentical($first, $second, $message = '', $group = 'Other') {
     $not_identical = $first !== $second;
     if (!$not_identical || !$message) {
-      $default_message = SafeMarkup::format('Value @first is not identical to value @second.', array('@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)));
+      $default_message = SafeMarkup::format('Value @first is not identical to value @second.', ['@first' => var_export($first, TRUE), '@second' => var_export($second, TRUE)]);
       $message = $message ? $message . PHP_EOL . $default_message : $default_message;
     }
     return $this->assert($not_identical, $message, $group);
@@ -683,10 +683,10 @@ protected function assertNotIdentical($first, $second, $message = '', $group = '
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertIdenticalObject($object1, $object2, $message = '', $group = 'Other') {
-    $message = $message ?: SafeMarkup::format('@object1 is identical to @object2', array(
+    $message = $message ?: SafeMarkup::format('@object1 is identical to @object2', [
       '@object1' => var_export($object1, TRUE),
       '@object2' => var_export($object2, TRUE),
-    ));
+    ]);
     $identical = TRUE;
     foreach ($object1 as $key => $value) {
       $identical = $identical && isset($object2->$key) && $object2->$key === $value;
@@ -858,14 +858,14 @@ protected function verbose($message) {
    *   taken into account, but it can be useful to only run a few selected test
    *   methods during debugging.
    */
-  public function run(array $methods = array()) {
+  public function run(array $methods = []) {
     $class = get_class($this);
 
     if ($missing_requirements = $this->checkRequirements()) {
       $object_info = new \ReflectionObject($this);
-      $caller = array(
+      $caller = [
         'file' => $object_info->getFileName(),
-      );
+      ];
       foreach ($missing_requirements as $missing_requirement) {
         TestBase::insertAssert($this->testId, $class, FALSE, $missing_requirement, 'Requirements check', $caller);
       }
@@ -903,7 +903,7 @@ public function run(array $methods = array()) {
     // compatibility.
     Handle::register();
 
-    set_error_handler(array($this, 'errorHandler'));
+    set_error_handler([$this, 'errorHandler']);
     // Iterate through all the methods in this class, unless a specific list of
     // methods to run was passed.
     $test_methods = array_filter(get_class_methods($class), function ($method) {
@@ -912,7 +912,7 @@ public function run(array $methods = array()) {
     if (empty($test_methods)) {
       // Call $this->assert() here because we need to pass along custom caller
       // information, lest the wrong originating code file/line be identified.
-      $this->assert(FALSE, 'No test methods found.', 'Requirements', array('function' => __METHOD__ . '()', 'file' => __FILE__, 'line' => __LINE__));
+      $this->assert(FALSE, 'No test methods found.', 'Requirements', ['function' => __METHOD__ . '()', 'file' => __FILE__, 'line' => __LINE__]);
     }
     if ($methods) {
       $test_methods = array_intersect($test_methods, $methods);
@@ -921,11 +921,11 @@ public function run(array $methods = array()) {
       // Insert a fail record. This will be deleted on completion to ensure
       // that testing completed.
       $method_info = new \ReflectionMethod($class, $method);
-      $caller = array(
+      $caller = [
         'file' => $method_info->getFileName(),
         'line' => $method_info->getStartLine(),
         'function' => $class . '->' . $method . '()',
-      );
+      ];
       $test_completion_check_id = TestBase::insertAssert($this->testId, $class, FALSE, 'The test did not complete due to a fatal error.', 'Completion check', $caller);
 
       try {
@@ -1014,7 +1014,7 @@ private function prepareDatabasePrefix() {
     // All assertions as well as the SimpleTest batch operations are associated
     // with the testId, so the database prefix has to be associated with it.
     $affected_rows = self::getDatabaseConnection()->update('simpletest_test_id')
-      ->fields(array('last_prefix' => $this->databasePrefix))
+      ->fields(['last_prefix' => $this->databasePrefix])
       ->condition('test_id', $this->testId)
       ->execute();
     if (!$affected_rows) {
@@ -1103,7 +1103,7 @@ private function prepareEnvironment() {
     // handlers defined by the original one.
     $callbacks = &drupal_register_shutdown_function();
     $this->originalShutdownCallbacks = $callbacks;
-    $callbacks = array();
+    $callbacks = [];
 
     // Create test directory ahead of installation so fatal errors and debug
     // information can be logged during installation process.
@@ -1153,11 +1153,11 @@ private function prepareEnvironment() {
     drupal_valid_test_ua($this->databasePrefix);
 
     // Reset settings.
-    new Settings(array(
+    new Settings([
       // For performance, simply use the database prefix as hash salt.
       'hash_salt' => $this->databasePrefix,
       'container_yamls' => [],
-    ));
+    ]);
 
     drupal_set_time_limit($this->timeLimit);
   }
@@ -1181,7 +1181,7 @@ protected function tearDown() {
    */
   private function restoreEnvironment() {
     // Destroy the session if one was started during the test-run.
-    $_SESSION = array();
+    $_SESSION = [];
     if (PHP_SAPI !== 'cli' && session_status() === PHP_SESSION_ACTIVE) {
       session_destroy();
       $params = session_get_cookie_params();
@@ -1197,7 +1197,7 @@ private function restoreEnvironment() {
     drupal_static_reset();
 
     if ($this->container && $this->container->has('state') && $state = $this->container->get('state')) {
-      $captured_emails = $state->get('system.test_mail_collector') ?: array();
+      $captured_emails = $state->get('system.test_mail_collector') ?: [];
       $emailCount = count($captured_emails);
       if ($emailCount) {
         $message = $emailCount == 1 ? '1 email was sent during this test.' : $emailCount . ' emails were sent during this test.';
@@ -1232,7 +1232,7 @@ private function restoreEnvironment() {
     \Drupal::setContainer($this->originalContainer);
 
     // Delete test site directory.
-    file_unmanaged_delete_recursive($this->siteDirectory, array($this, 'filePreDeleteCallback'));
+    file_unmanaged_delete_recursive($this->siteDirectory, [$this, 'filePreDeleteCallback']);
 
     // Restore original database connection.
     Database::removeConnection('default');
@@ -1278,7 +1278,7 @@ private function restoreEnvironment() {
    */
   public function errorHandler($severity, $message, $file = NULL, $line = NULL) {
     if ($severity & error_reporting()) {
-      $error_map = array(
+      $error_map = [
         E_STRICT => 'Run-time notice',
         E_WARNING => 'Warning',
         E_NOTICE => 'Notice',
@@ -1290,7 +1290,7 @@ public function errorHandler($severity, $message, $file = NULL, $line = NULL) {
         E_RECOVERABLE_ERROR => 'Recoverable error',
         E_DEPRECATED => 'Deprecated',
         E_USER_DEPRECATED => 'User deprecated',
-      );
+      ];
 
       $backtrace = debug_backtrace();
 
@@ -1315,15 +1315,15 @@ protected function exceptionHandler($exception) {
     $backtrace = $exception->getTrace();
     $verbose_backtrace = $backtrace;
     // Push on top of the backtrace the call that generated the exception.
-    array_unshift($backtrace, array(
+    array_unshift($backtrace, [
       'line' => $exception->getLine(),
       'file' => $exception->getFile(),
-    ));
+    ]);
     $decoded_exception = Error::decodeException($exception);
     unset($decoded_exception['backtrace']);
-    $message = SafeMarkup::format('%type: @message in %function (line %line of %file). <pre class="backtrace">@backtrace</pre>', $decoded_exception + array(
+    $message = SafeMarkup::format('%type: @message in %function (line %line of %file). <pre class="backtrace">@backtrace</pre>', $decoded_exception + [
       '@backtrace' => Error::formatBacktrace($verbose_backtrace),
-    ));
+    ]);
     $this->error($message, 'Uncaught exception', Error::getLastCaller($backtrace));
   }
 
@@ -1375,15 +1375,15 @@ protected function settingsSet($name, $value) {
    *   single value only.
    */
   public static function generatePermutations($parameters) {
-    $all_permutations = array(array());
+    $all_permutations = [[]];
     foreach ($parameters as $parameter => $values) {
-      $new_permutations = array();
+      $new_permutations = [];
       // Iterate over all values of the parameter.
       foreach ($values as $value) {
         // Iterate over all existing permutations.
         foreach ($all_permutations as $permutation) {
           // Add the new parameter value to existing permutations.
-          $new_permutations[] = $permutation + array($parameter => $value);
+          $new_permutations[] = $permutation + [$parameter => $value];
         }
       }
       // Replace the old permutations with the new permutations.
diff --git a/core/modules/simpletest/src/TestDiscovery.php b/core/modules/simpletest/src/TestDiscovery.php
index 02bf707..d5d7d8a 100644
--- a/core/modules/simpletest/src/TestDiscovery.php
+++ b/core/modules/simpletest/src/TestDiscovery.php
@@ -91,7 +91,7 @@ public function registerTestNamespaces() {
     if (isset($this->testNamespaces)) {
       return $this->testNamespaces;
     }
-    $this->testNamespaces = array();
+    $this->testNamespaces = [];
 
     $existing = $this->classLoader->getPrefixesPsr4();
 
@@ -101,7 +101,7 @@ public function registerTestNamespaces() {
     $this->testNamespaces['Drupal\\FunctionalTests\\'] = [$this->root . '/core/tests/Drupal/FunctionalTests'];
     $this->testNamespaces['Drupal\\FunctionalJavascriptTests\\'] = [$this->root . '/core/tests/Drupal/FunctionalJavascriptTests'];
 
-    $this->availableExtensions = array();
+    $this->availableExtensions = [];
     foreach ($this->getExtensions() as $name => $extension) {
       $this->availableExtensions[$extension->getType()][$name] = $name;
 
@@ -164,7 +164,7 @@ public function getTestClasses($extension = NULL, array $types = []) {
         return $cache->data;
       }
     }
-    $list = array();
+    $list = [];
 
     $classmap = $this->findAllClassFiles($extension);
 
@@ -238,7 +238,7 @@ public function getTestClasses($extension = NULL, array $types = []) {
    *   fully-qualified classnames to pathnames.
    */
   public function findAllClassFiles($extension = NULL) {
-    $classmap = array();
+    $classmap = [];
     $namespaces = $this->registerTestNamespaces();
     if (isset($extension)) {
       // Include tests in the \Drupal\Tests\{$extension} namespace.
@@ -294,7 +294,7 @@ public static function scanDirectory($namespace_prefix, $path) {
       return $current->isFile() && $current->getExtension() === 'php';
     });
     $files = new \RecursiveIteratorIterator($filter);
-    $classes = array();
+    $classes = [];
     foreach ($files as $fileinfo) {
       $class = $namespace_prefix;
       if ('' !== $subpath = $fileinfo->getSubPath()) {
@@ -332,10 +332,10 @@ public static function getTestInfo($classname, $doc_comment = NULL) {
       $reflection = new \ReflectionClass($classname);
       $doc_comment = $reflection->getDocComment();
     }
-    $info = array(
+    $info = [
       'name' => $classname,
-    );
-    $annotations = array();
+    ];
+    $annotations = [];
     // Look for annotations, allow an arbitrary amount of spaces before the
     // * but nothing else.
     preg_match_all('/^[ ]*\* \@([^\s]*) (.*$)/m', $doc_comment, $matches);
@@ -479,7 +479,7 @@ public static function getPhpunitTestSuite($classname) {
   protected function getExtensions() {
     $listing = new ExtensionDiscovery($this->root);
     // Ensure that tests in all profiles are discovered.
-    $listing->setProfileDirectories(array());
+    $listing->setProfileDirectories([]);
     $extensions = $listing->scan('module', TRUE);
     $extensions += $listing->scan('profile', TRUE);
     $extensions += $listing->scan('theme', TRUE);
diff --git a/core/modules/simpletest/src/Tests/BrokenSetUpTest.php b/core/modules/simpletest/src/Tests/BrokenSetUpTest.php
index e988f4d..673d5b9 100644
--- a/core/modules/simpletest/src/Tests/BrokenSetUpTest.php
+++ b/core/modules/simpletest/src/Tests/BrokenSetUpTest.php
@@ -22,7 +22,7 @@ class BrokenSetUpTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest');
+  public static $modules = ['simpletest'];
 
   /**
    * The path to the shared trigger file.
@@ -39,7 +39,7 @@ protected function setUp() {
       $this->sharedTriggerFile = $this->publicFilesDirectory . '/trigger';
 
       // Create and log in user.
-      $admin_user = $this->drupalCreateUser(array('administer unit tests'));
+      $admin_user = $this->drupalCreateUser(['administer unit tests']);
       $this->drupalLogin($admin_user);
     }
     // If the test is being run from within simpletest, set up the broken test.
diff --git a/core/modules/simpletest/src/Tests/BrowserTest.php b/core/modules/simpletest/src/Tests/BrowserTest.php
index f98fe48..be9e006 100644
--- a/core/modules/simpletest/src/Tests/BrowserTest.php
+++ b/core/modules/simpletest/src/Tests/BrowserTest.php
@@ -41,16 +41,16 @@ function testGetAbsoluteUrl() {
     $url = 'user/login';
 
     $this->drupalGet($url);
-    $absolute = \Drupal::url('user.login', array(), array('absolute' => TRUE));
+    $absolute = \Drupal::url('user.login', [], ['absolute' => TRUE]);
     $this->assertEqual($absolute, $this->url, 'Passed and requested URL are equal.');
     $this->assertEqual($this->url, $this->getAbsoluteUrl($this->url), 'Requested and returned absolute URL are equal.');
 
-    $this->drupalPostForm(NULL, array(), t('Log in'));
+    $this->drupalPostForm(NULL, [], t('Log in'));
     $this->assertEqual($absolute, $this->url, 'Passed and requested URL are equal.');
     $this->assertEqual($this->url, $this->getAbsoluteUrl($this->url), 'Requested and returned absolute URL are equal.');
 
     $this->clickLink('Create new account');
-    $absolute = \Drupal::url('user.register', array(), array('absolute' => TRUE));
+    $absolute = \Drupal::url('user.register', [], ['absolute' => TRUE]);
     $this->assertEqual($absolute, $this->url, 'Passed and requested URL are equal.');
     $this->assertEqual($this->url, $this->getAbsoluteUrl($this->url), 'Requested and returned absolute URL are equal.');
   }
@@ -72,16 +72,16 @@ function testXPathEscaping() {
     $this->setRawContent($testpage);
 
     // Matches the first link.
-    $urls = $this->xpath('//a[text()=:text]', array(':text' => 'A "weird" link, just to bother the dumb "XPath 1.0"'));
+    $urls = $this->xpath('//a[text()=:text]', [':text' => 'A "weird" link, just to bother the dumb "XPath 1.0"']);
     $this->assertEqual($urls[0]['href'], 'link1', 'Match with quotes.');
 
-    $urls = $this->xpath('//a[text()=:text]', array(':text' => 'A second "even more weird" link, in memory of George O\'Malley'));
+    $urls = $this->xpath('//a[text()=:text]', [':text' => 'A second "even more weird" link, in memory of George O\'Malley']);
     $this->assertEqual($urls[0]['href'], 'link2', 'Match with mixed single and double quotes.');
 
-    $urls = $this->xpath('//a[text()=:text]', array(':text' => 'A $third$ link, so weird it\'s worth $1 million'));
+    $urls = $this->xpath('//a[text()=:text]', [':text' => 'A $third$ link, so weird it\'s worth $1 million']);
     $this->assertEqual($urls[0]['href'], 'link3', 'Match with a regular expression back reference symbol (dollar sign).');
 
-    $urls = $this->xpath('//a[text()=:text]', array(':text' => 'A fourth link, containing alternative \\1 regex backreferences \\2'));
+    $urls = $this->xpath('//a[text()=:text]', [':text' => 'A fourth link, containing alternative \\1 regex backreferences \\2']);
     $this->assertEqual($urls[0]['href'], 'link4', 'Match with another regular expression back reference symbol (double backslash).');
   }
 
diff --git a/core/modules/simpletest/src/Tests/InstallationProfileModuleTestsTest.php b/core/modules/simpletest/src/Tests/InstallationProfileModuleTestsTest.php
index a1063e7..a4365f8 100644
--- a/core/modules/simpletest/src/Tests/InstallationProfileModuleTestsTest.php
+++ b/core/modules/simpletest/src/Tests/InstallationProfileModuleTestsTest.php
@@ -16,7 +16,7 @@ class InstallationProfileModuleTestsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest');
+  public static $modules = ['simpletest'];
 
   /**
    * An administrative user with permission to adminsiter unit tests.
@@ -42,7 +42,7 @@ class InstallationProfileModuleTestsTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer unit tests'));
+    $this->adminUser = $this->drupalCreateUser(['administer unit tests']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -52,9 +52,9 @@ protected function setUp() {
   function testInstallationProfileTests() {
     $this->drupalGet('admin/config/development/testing');
     $this->assertText('Drupal\drupal_system_listing_compatible_test\Tests\SystemListingCompatibleTest');
-    $edit = array(
+    $edit = [
       'tests[Drupal\drupal_system_listing_compatible_test\Tests\SystemListingCompatibleTest]' => TRUE,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Run tests'));
     $this->assertText('SystemListingCompatibleTest test executed.');
   }
diff --git a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php
index 472fdf9..2ed63b3 100644
--- a/core/modules/simpletest/src/Tests/KernelTestBaseTest.php
+++ b/core/modules/simpletest/src/Tests/KernelTestBaseTest.php
@@ -20,7 +20,7 @@ class KernelTestBaseTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test');
+  public static $modules = ['entity_test'];
 
   /**
    * {@inheritdoc}
@@ -51,7 +51,7 @@ function simpletest_test_stub_settings_function() {}
    * Tests expected behavior of setUp().
    */
   function testSetUp() {
-    $modules = array('entity_test');
+    $modules = ['entity_test'];
     $table = 'entity_test';
 
     // Verify that specified $modules have been loaded.
@@ -90,7 +90,7 @@ function testEnableModulesLoad() {
     $this->assertFalse(in_array($module, $list), "{$module}_entity_display_build_alter() in \Drupal::moduleHandler()->getImplementations() not found.");
 
     // Enable the module.
-    $this->enableModules(array($module));
+    $this->enableModules([$module]);
 
     // Verify that the module exists.
     $this->assertTrue(\Drupal::moduleHandler()->moduleExists($module), "$module module found.");
@@ -117,7 +117,7 @@ function testEnableModulesInstall() {
     $this->assertFalse(db_table_exists($table), "'$table' database table not found.");
 
     // Install the module.
-    \Drupal::service('module_installer')->install(array($module));
+    \Drupal::service('module_installer')->install([$module]);
 
     // Verify that the enabled module exists.
     $this->assertTrue(\Drupal::moduleHandler()->moduleExists($module), "$module module found.");
@@ -136,9 +136,9 @@ function testEnableModulesInstall() {
    */
   function testEnableModulesInstallContainer() {
     // Install Node module.
-    $this->enableModules(array('user', 'field', 'node'));
+    $this->enableModules(['user', 'field', 'node']);
 
-    $this->installEntitySchema('node', array('node', 'node_field_data'));
+    $this->installEntitySchema('node', ['node', 'node_field_data']);
     // Perform an entity query against node.
     $query = \Drupal::entityQuery('node');
     // Disable node access checks, since User module is not enabled.
@@ -190,7 +190,7 @@ function testInstallSchema() {
     $this->assertTrue($schema, "'$table' table schema found.");
 
     // Verify that the same table can be installed after enabling the module.
-    $this->enableModules(array($module));
+    $this->enableModules([$module]);
     $this->installSchema($module, $table);
     $this->assertTrue(db_table_exists($table), "'$table' database table found.");
     $schema = drupal_get_module_schema($module, $table);
@@ -203,7 +203,7 @@ function testInstallSchema() {
   function testInstallEntitySchema() {
     $entity = 'entity_test';
     // The entity_test Entity has a field that depends on the User module.
-    $this->enableModules(array('user'));
+    $this->enableModules(['user']);
     // Verity that the entity schema is created properly.
     $this->installEntitySchema($entity);
     $this->assertTrue(db_table_exists($entity), "'$entity' database table found.");
@@ -214,12 +214,12 @@ function testInstallEntitySchema() {
    */
   function testInstallConfig() {
     // The user module has configuration that depends on system.
-    $this->enableModules(array('system'));
+    $this->enableModules(['system']);
     $module = 'user';
 
     // Verify that default config can only be installed for enabled modules.
     try {
-      $this->installConfig(array($module));
+      $this->installConfig([$module]);
       $this->fail('Exception for non-enabled module found.');
     }
     catch (\Exception $e) {
@@ -228,8 +228,8 @@ function testInstallConfig() {
     $this->assertFalse($this->container->get('config.storage')->exists('user.settings'));
 
     // Verify that default config can be installed.
-    $this->enableModules(array('user'));
-    $this->installConfig(array('user'));
+    $this->enableModules(['user']);
+    $this->installConfig(['user']);
     $this->assertTrue($this->container->get('config.storage')->exists('user.settings'));
     $this->assertTrue($this->config('user.settings')->get('register'));
   }
@@ -239,7 +239,7 @@ function testInstallConfig() {
    */
   function testEnableModulesFixedList() {
     // Install system module.
-    $this->container->get('module_installer')->install(array('system', 'menu_link_content'));
+    $this->container->get('module_installer')->install(['system', 'menu_link_content']);
     $entity_manager = \Drupal::entityManager();
 
     // entity_test is loaded via $modules; its entity type should exist.
@@ -247,17 +247,17 @@ function testEnableModulesFixedList() {
     $this->assertTrue(TRUE == $entity_manager->getDefinition('entity_test'));
 
     // Load some additional modules; entity_test should still exist.
-    $this->enableModules(array('field', 'text', 'entity_test'));
+    $this->enableModules(['field', 'text', 'entity_test']);
     $this->assertEqual($this->container->get('module_handler')->moduleExists('entity_test'), TRUE);
     $this->assertTrue(TRUE == $entity_manager->getDefinition('entity_test'));
 
     // Install some other modules; entity_test should still exist.
-    $this->container->get('module_installer')->install(array('user', 'field', 'field_test'), FALSE);
+    $this->container->get('module_installer')->install(['user', 'field', 'field_test'], FALSE);
     $this->assertEqual($this->container->get('module_handler')->moduleExists('entity_test'), TRUE);
     $this->assertTrue(TRUE == $entity_manager->getDefinition('entity_test'));
 
     // Uninstall one of those modules; entity_test should still exist.
-    $this->container->get('module_installer')->uninstall(array('field_test'));
+    $this->container->get('module_installer')->uninstall(['field_test']);
     $this->assertEqual($this->container->get('module_handler')->moduleExists('entity_test'), TRUE);
     $this->assertTrue(TRUE == $entity_manager->getDefinition('entity_test'));
 
@@ -267,19 +267,19 @@ function testEnableModulesFixedList() {
     $this->assertTrue(TRUE == $entity_manager->getDefinition('entity_test'));
 
     // Reactivate the previously uninstalled module.
-    $this->enableModules(array('field_test'));
+    $this->enableModules(['field_test']);
 
     // Create a field.
-    $display = EntityViewDisplay::create(array(
+    $display = EntityViewDisplay::create([
       'targetEntityType' => 'entity_test',
       'bundle' => 'entity_test',
       'mode' => 'default',
-    ));
-    $field_storage = FieldStorageConfig::create(array(
+    ]);
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'test_field',
       'entity_type' => 'entity_test',
       'type' => 'test_field'
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -293,18 +293,18 @@ function testEnableModulesFixedList() {
   function testEnableModulesTheme() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = $this->container->get('renderer');
-    $original_element = $element = array(
+    $original_element = $element = [
       '#type' => 'container',
       '#markup' => 'Foo',
-      '#attributes' => array(),
-    );
-    $this->enableModules(array('system'));
+      '#attributes' => [],
+    ];
+    $this->enableModules(['system']);
     // \Drupal\Core\Theme\ThemeManager::render() throws an exception if modules
     // are not loaded yet.
     $this->assertTrue($renderer->renderRoot($element));
 
     $element = $original_element;
-    $this->disableModules(array('entity_test'));
+    $this->disableModules(['entity_test']);
     $this->assertTrue($renderer->renderRoot($element));
   }
 
@@ -313,10 +313,10 @@ function testEnableModulesTheme() {
    */
   function testNoThemeByDefault() {
     $themes = $this->config('core.extension')->get('theme');
-    $this->assertEqual($themes, array());
+    $this->assertEqual($themes, []);
 
     $extensions = $this->container->get('config.storage')->read('core.extension');
-    $this->assertEqual($extensions['theme'], array());
+    $this->assertEqual($extensions['theme'], []);
 
     $active_theme = $this->container->get('theme.manager')->getActiveTheme();
     $this->assertEqual($active_theme->getName(), 'core');
@@ -335,7 +335,7 @@ public function testDrupalGetProfile() {
   /**
    * {@inheritdoc}
    */
-  public function run(array $methods = array()) {
+  public function run(array $methods = []) {
     parent::run($methods);
 
     // Check that all tables of the test instance have been deleted. At this
@@ -357,11 +357,11 @@ public function run(array $methods = array()) {
         ':prefix' => $this->databasePrefix
       ]);
 
-      $result = $connection->query("SELECT name FROM " . $this->databasePrefix . ".sqlite_master WHERE type = :type AND name LIKE :table_name AND name NOT LIKE :pattern", array(
+      $result = $connection->query("SELECT name FROM " . $this->databasePrefix . ".sqlite_master WHERE type = :type AND name LIKE :table_name AND name NOT LIKE :pattern", [
         ':type' => 'table',
         ':table_name' => '%',
         ':pattern' => 'sqlite_%',
-      ))->fetchAllKeyed(0, 0);
+      ])->fetchAllKeyed(0, 0);
 
       $this->assertTrue(empty($result), 'All test tables have been removed.');
     }
diff --git a/core/modules/simpletest/src/Tests/MissingCheckedRequirementsTest.php b/core/modules/simpletest/src/Tests/MissingCheckedRequirementsTest.php
index 0b21d54..d62cc48 100644
--- a/core/modules/simpletest/src/Tests/MissingCheckedRequirementsTest.php
+++ b/core/modules/simpletest/src/Tests/MissingCheckedRequirementsTest.php
@@ -16,11 +16,11 @@ class MissingCheckedRequirementsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest');
+  public static $modules = ['simpletest'];
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer unit tests'));
+    $admin_user = $this->drupalCreateUser(['administer unit tests']);
     $this->drupalLogin($admin_user);
   }
 
@@ -29,9 +29,9 @@ protected function setUp() {
    */
   protected function checkRequirements() {
     if ($this->isInChildSite()) {
-      return array(
+      return [
         'Test is not allowed to run.'
-      );
+      ];
     }
     return parent::checkRequirements();
   }
diff --git a/core/modules/simpletest/src/Tests/SimpleTestBrowserTest.php b/core/modules/simpletest/src/Tests/SimpleTestBrowserTest.php
index 3b2061e..7e4f912 100644
--- a/core/modules/simpletest/src/Tests/SimpleTestBrowserTest.php
+++ b/core/modules/simpletest/src/Tests/SimpleTestBrowserTest.php
@@ -18,12 +18,12 @@ class SimpleTestBrowserTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest', 'test_page_test');
+  public static $modules = ['simpletest', 'test_page_test'];
 
   protected function setUp() {
     parent::setUp();
     // Create and log in an admin user.
-    $this->drupalLogin($this->drupalCreateUser(array('administer unit tests')));
+    $this->drupalLogin($this->drupalCreateUser(['administer unit tests']));
   }
 
   /**
@@ -33,9 +33,9 @@ public function testInternalBrowser() {
     // Retrieve the test page and check its title and headers.
     $this->drupalGet('test-page');
     $this->assertTrue($this->drupalGetHeader('Date'), 'An HTTP header was received.');
-    $this->assertTitle(t('Test page | @site-name', array(
+    $this->assertTitle(t('Test page | @site-name', [
       '@site-name' => $this->config('system.site')->get('name'),
-    )));
+    ]));
     $this->assertNoTitle('Foo');
 
     $old_user_id = $this->container->get('current_user')->id();
@@ -57,13 +57,13 @@ public function testInternalBrowser() {
 
     // Test the maximum redirection option.
     $this->maximumRedirects = 1;
-    $edit = array(
+    $edit = [
       'name' => $user->getUsername(),
       'pass' => $user->pass_raw
-    );
-    $this->drupalPostForm('user/login', $edit, t('Log in'), array(
-      'query' => array('destination' => 'user/logout'),
-    ));
+    ];
+    $this->drupalPostForm('user/login', $edit, t('Log in'), [
+      'query' => ['destination' => 'user/logout'],
+    ]);
     $headers = $this->drupalGetHeaders(TRUE);
     $this->assertEqual(count($headers), 2, 'Simpletest stopped following redirects after the first one.');
 
@@ -73,7 +73,7 @@ public function testInternalBrowser() {
     // @see drupal_valid_test_ua()
     // Not using File API; a potential error must trigger a PHP warning.
     unlink($this->siteDirectory . '/.htkey');
-    $this->drupalGet(Url::fromUri('base:core/install.php', array('external' => TRUE, 'absolute' => TRUE))->toString());
+    $this->drupalGet(Url::fromUri('base:core/install.php', ['external' => TRUE, 'absolute' => TRUE])->toString());
     $this->assertResponse(403, 'Cannot access install.php.');
   }
 
@@ -92,7 +92,7 @@ public function testUserAgentValidation() {
     // Generate a valid simpletest User-Agent to pass validation.
     $this->assertTrue(preg_match('/test\d+/', $this->databasePrefix, $matches), 'Database prefix contains test prefix.');
     $test_ua = drupal_generate_test_ua($matches[0]);
-    $this->additionalCurlOptions = array(CURLOPT_USERAGENT => $test_ua);
+    $this->additionalCurlOptions = [CURLOPT_USERAGENT => $test_ua];
 
     // Test pages only available for testing.
     $this->drupalGet($HTTP_path);
@@ -101,7 +101,7 @@ public function testUserAgentValidation() {
     $this->assertResponse(200, 'Requesting https.php with a legitimate simpletest User-Agent returns OK.');
 
     // Now slightly modify the HMAC on the header, which should not validate.
-    $this->additionalCurlOptions = array(CURLOPT_USERAGENT => $test_ua . 'X');
+    $this->additionalCurlOptions = [CURLOPT_USERAGENT => $test_ua . 'X'];
     $this->drupalGet($HTTP_path);
     $this->assertResponse(403, 'Requesting http.php with a bad simpletest User-Agent fails.');
     $this->drupalGet($https_path);
@@ -109,7 +109,7 @@ public function testUserAgentValidation() {
 
     // Use a real User-Agent and verify that the special files http.php and
     // https.php can't be accessed.
-    $this->additionalCurlOptions = array(CURLOPT_USERAGENT => 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12');
+    $this->additionalCurlOptions = [CURLOPT_USERAGENT => 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12'];
     $this->drupalGet($HTTP_path);
     $this->assertResponse(403, 'Requesting http.php with a normal User-Agent fails.');
     $this->drupalGet($https_path);
@@ -126,20 +126,20 @@ public function testTestingThroughUI() {
     // to be created. However this scenario is covered by the testception of
     // \Drupal\simpletest\Tests\SimpleTestTest.
 
-    $tests = array(
+    $tests = [
       // A KernelTestBase test.
       'Drupal\KernelTests\KernelTestBaseTest',
       // A PHPUnit unit test.
       'Drupal\Tests\action\Unit\Menu\ActionLocalTasksTest',
       // A PHPUnit functional test.
       ThroughUITest::class,
-    );
+    ];
 
     foreach ($tests as $test) {
       $this->drupalGet('admin/config/development/testing');
-      $edit = array(
+      $edit = [
         "tests[$test]" => TRUE,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Run tests'));
       $this->assertText('0 fails, 0 exceptions');
     }
diff --git a/core/modules/simpletest/src/Tests/SimpleTestInstallBatchTest.php b/core/modules/simpletest/src/Tests/SimpleTestInstallBatchTest.php
index 72cb74c..5663ad9 100644
--- a/core/modules/simpletest/src/Tests/SimpleTestInstallBatchTest.php
+++ b/core/modules/simpletest/src/Tests/SimpleTestInstallBatchTest.php
@@ -20,7 +20,7 @@ class SimpleTestInstallBatchTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest', 'simpletest_test', 'entity_test');
+  public static $modules = ['simpletest', 'simpletest_test', 'entity_test'];
 
   /**
    * Tests loading entities created in a batch in simpletest_test_install().
diff --git a/core/modules/simpletest/src/Tests/SimpleTestTest.php b/core/modules/simpletest/src/Tests/SimpleTestTest.php
index ff20f5e..d1f2a20 100644
--- a/core/modules/simpletest/src/Tests/SimpleTestTest.php
+++ b/core/modules/simpletest/src/Tests/SimpleTestTest.php
@@ -34,7 +34,7 @@ class SimpleTestTest extends WebTestBase {
    *
    * Used to ensure they are incrementing.
    */
-  protected $testIds = array();
+  protected $testIds = [];
 
   /**
    * Translated fail message.
@@ -97,12 +97,12 @@ class: Drupal\Core\Cache\MemoryBackendFactory
       parent::setUp();
       $this->assertNotIdentical(\Drupal::getContainer(), $original_container, 'WebTestBase test creates a new container.');
       // Create and log in an admin user.
-      $this->drupalLogin($this->drupalCreateUser(array('administer unit tests')));
+      $this->drupalLogin($this->drupalCreateUser(['administer unit tests']));
     }
     else {
       // This causes three of the five fails that are asserted in
       // confirmStubResults().
-      self::$modules = array('non_existent_module');
+      self::$modules = ['non_existent_module'];
       parent::setUp();
     }
   }
@@ -127,7 +127,7 @@ function testWebTestRunner() {
         // Run this test from web interface.
         $this->drupalGet('admin/config/development/testing');
 
-        $edit = array();
+        $edit = [];
         $edit['tests[Drupal\simpletest\Tests\SimpleTestTest]'] = TRUE;
         $this->drupalPostForm(NULL, $edit, t('Run tests'));
 
@@ -192,10 +192,10 @@ function stubTest() {
 
     // This causes the third to fifth of the sixteen passes asserted in
     // confirmStubResults().
-    $user = $this->drupalCreateUser(array($this->validPermission), 'SimpleTestTest');
+    $user = $this->drupalCreateUser([$this->validPermission], 'SimpleTestTest');
 
     // This causes the fifth of the five fails asserted in confirmStubResults().
-    $this->drupalCreateUser(array($this->invalidPermission));
+    $this->drupalCreateUser([$this->invalidPermission]);
 
     // Test logging in as a user.
     // This causes the sixth to tenth of the sixteen passes asserted in
@@ -204,7 +204,7 @@ function stubTest() {
 
     // This causes the eleventh of the sixteen passes asserted in
     // confirmStubResults().
-    $this->pass(t('Test ID is @id.', array('@id' => $this->testId)));
+    $this->pass(t('Test ID is @id.', ['@id' => $this->testId]));
 
     // These cause the twelfth to fifteenth of the sixteen passes asserted in
     // confirmStubResults().
@@ -240,13 +240,13 @@ function assertNothing() {
    * Confirm that the stub test produced the desired results.
    */
   function confirmStubTestResults() {
-    $this->assertAssertion(t('Unable to install modules %modules due to missing modules %missing.', array('%modules' => 'non_existent_module', '%missing' => 'non_existent_module')), 'Other', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->setUp()');
+    $this->assertAssertion(t('Unable to install modules %modules due to missing modules %missing.', ['%modules' => 'non_existent_module', '%missing' => 'non_existent_module']), 'Other', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->setUp()');
 
     $this->assertAssertion($this->passMessage, 'Other', 'Pass', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
     $this->assertAssertion($this->failMessage, 'Other', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
 
-    $this->assertAssertion(t('Created permissions: @perms', array('@perms' => $this->validPermission)), 'Role', 'Pass', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
-    $this->assertAssertion(t('Invalid permission %permission.', array('%permission' => $this->invalidPermission)), 'Role', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
+    $this->assertAssertion(t('Created permissions: @perms', ['@perms' => $this->validPermission]), 'Role', 'Pass', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
+    $this->assertAssertion(t('Invalid permission %permission.', ['%permission' => $this->invalidPermission]), 'Role', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
 
     // Check that the user was logged in successfully.
     $this->assertAssertion('User SimpleTestTest successfully logged in.', 'User login', 'Pass', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
@@ -312,24 +312,24 @@ function assertAssertion($message, $type, $status, $file, $function) {
         break;
       }
     }
-    return $this->assertTrue($found, format_string('Found assertion {"@message", "@type", "@status", "@file", "@function"}.', array('@message' => $message, '@type' => $type, '@status' => $status, "@file" => $file, "@function" => $function)));
+    return $this->assertTrue($found, format_string('Found assertion {"@message", "@type", "@status", "@file", "@function"}.', ['@message' => $message, '@type' => $type, '@status' => $status, "@file" => $file, "@function" => $function]));
   }
 
   /**
    * Get the results from a test and store them in the class array $results.
    */
   function getTestResults() {
-    $results = array();
+    $results = [];
     if ($this->parse()) {
       if ($details = $this->getResultFieldSet()) {
         // Code assumes this is the only test in group.
         $results['summary'] = $this->asText($details->div->div[1]);
         $results['name'] = $this->asText($details->summary);
 
-        $results['assertions'] = array();
+        $results['assertions'] = [];
         $tbody = $details->div->table->tbody;
         foreach ($tbody->tr as $row) {
-          $assertion = array();
+          $assertion = [];
           $assertion['message'] = $this->asText($row->td[0]);
           $assertion['type'] = $this->asText($row->td[1]);
           $assertion['file'] = $this->asText($row->td[2]);
diff --git a/core/modules/simpletest/src/UserCreationTrait.php b/core/modules/simpletest/src/UserCreationTrait.php
index f6665b4..4b4d0ec 100644
--- a/core/modules/simpletest/src/UserCreationTrait.php
+++ b/core/modules/simpletest/src/UserCreationTrait.php
@@ -43,7 +43,7 @@ protected function setCurrentUser(AccountInterface $account) {
    *   A fully loaded user object with pass_raw property, or FALSE if account
    *   creation fails.
    */
-  protected function createUser(array $permissions = array(), $name = NULL, $admin = FALSE) {
+  protected function createUser(array $permissions = [], $name = NULL, $admin = FALSE) {
     // Create a role with the given permission set, if any.
     $rid = FALSE;
     if ($permissions) {
@@ -54,13 +54,13 @@ protected function createUser(array $permissions = array(), $name = NULL, $admin
     }
 
     // Create a user assigned to that role.
-    $edit = array();
+    $edit = [];
     $edit['name'] = !empty($name) ? $name : $this->randomMachineName();
     $edit['mail'] = $edit['name'] . '@example.com';
     $edit['pass'] = user_password();
     $edit['status'] = 1;
     if ($rid) {
-      $edit['roles'] = array($rid);
+      $edit['roles'] = [$rid];
     }
 
     if ($admin) {
@@ -70,7 +70,7 @@ protected function createUser(array $permissions = array(), $name = NULL, $admin
     $account = User::create($edit);
     $account->save();
 
-    $this->assertTrue($account->id(), SafeMarkup::format('User created with name %name and pass %pass', array('%name' => $edit['name'], '%pass' => $edit['pass'])), 'User login');
+    $this->assertTrue($account->id(), SafeMarkup::format('User created with name %name and pass %pass', ['%name' => $edit['name'], '%pass' => $edit['pass']]), 'User login');
     if (!$account->id()) {
       return FALSE;
     }
@@ -141,19 +141,19 @@ protected function createRole(array $permissions, $rid = NULL, $name = NULL, $we
     }
 
     // Create new role.
-    $role = Role::create(array(
+    $role = Role::create([
       'id' => $rid,
       'label' => $name,
-    ));
+    ]);
     if (isset($weight)) {
       $role->set('weight', $weight);
     }
     $result = $role->save();
 
-    $this->assertIdentical($result, SAVED_NEW, SafeMarkup::format('Created role ID @rid with name @name.', array(
+    $this->assertIdentical($result, SAVED_NEW, SafeMarkup::format('Created role ID @rid with name @name.', [
       '@name' => var_export($role->label(), TRUE),
       '@rid' => var_export($role->id(), TRUE),
-    )), 'Role');
+    ]), 'Role');
 
     if ($result === SAVED_NEW) {
       // Grant the specified permissions to the role, if any.
@@ -162,10 +162,10 @@ protected function createRole(array $permissions, $rid = NULL, $name = NULL, $we
         $assigned_permissions = Role::load($role->id())->getPermissions();
         $missing_permissions = array_diff($permissions, $assigned_permissions);
         if (!$missing_permissions) {
-          $this->pass(SafeMarkup::format('Created permissions: @perms', array('@perms' => implode(', ', $permissions))), 'Role');
+          $this->pass(SafeMarkup::format('Created permissions: @perms', ['@perms' => implode(', ', $permissions)]), 'Role');
         }
         else {
-          $this->fail(SafeMarkup::format('Failed to create permissions: @perms', array('@perms' => implode(', ', $missing_permissions))), 'Role');
+          $this->fail(SafeMarkup::format('Failed to create permissions: @perms', ['@perms' => implode(', ', $missing_permissions)]), 'Role');
         }
       }
       return $role->id();
@@ -189,7 +189,7 @@ protected function checkPermissions(array $permissions) {
     $valid = TRUE;
     foreach ($permissions as $permission) {
       if (!in_array($permission, $available)) {
-        $this->fail(SafeMarkup::format('Invalid permission %permission.', array('%permission' => $permission)), 'Role');
+        $this->fail(SafeMarkup::format('Invalid permission %permission.', ['%permission' => $permission]), 'Role');
         $valid = FALSE;
       }
     }
diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php
index 6ff76ae..b1a0258 100644
--- a/core/modules/simpletest/src/WebTestBase.php
+++ b/core/modules/simpletest/src/WebTestBase.php
@@ -100,7 +100,7 @@
    *
    * @var array
    */
-  protected $cookies = array();
+  protected $cookies = [];
 
   /**
    * Indicates that headers should be dumped if verbose output is enabled.
@@ -133,7 +133,7 @@
    * \Drupal\simpletest\WebTestBase itself never sets this but always obeys what
    * is set.
    */
-  protected $additionalCurlOptions = array();
+  protected $additionalCurlOptions = [];
 
   /**
    * The original batch, before it was changed for testing purposes.
@@ -154,7 +154,7 @@
    *
    * @var array
    */
-  protected $originalShutdownCallbacks = array();
+  protected $originalShutdownCallbacks = [];
 
   /**
    * The current session ID, if available.
@@ -191,7 +191,7 @@
    *
    * @var array
    */
-  protected $curlCookies = array();
+  protected $curlCookies = [];
 
   /**
    * An array of custom translations suitable for drupal_rewrite_settings().
@@ -259,7 +259,7 @@ protected function drupalBuildEntityView(EntityInterface $entity, $view_mode = '
 
     $render_controller = $this->container->get('entity.manager')->getViewBuilder($entity->getEntityTypeId());
     if ($reset) {
-      $render_controller->resetCache(array($entity->id()));
+      $render_controller->resetCache([$entity->id()]);
     }
     $build = $render_controller->view($entity, $view_mode, $langcode);
     $ensure_fully_built($build);
@@ -275,7 +275,7 @@ protected function drupalBuildEntityView(EntityInterface $entity, $view_mode = '
    */
   protected function assertBlockAppears(Block $block) {
     $result = $this->findBlockInstance($block);
-    $this->assertTrue(!empty($result), format_string('Ensure the block @id appears on the page', array('@id' => $block->id())));
+    $this->assertTrue(!empty($result), format_string('Ensure the block @id appears on the page', ['@id' => $block->id()]));
   }
 
   /**
@@ -286,7 +286,7 @@ protected function assertBlockAppears(Block $block) {
    */
   protected function assertNoBlockAppears(Block $block) {
     $result = $this->findBlockInstance($block);
-    $this->assertFalse(!empty($result), format_string('Ensure the block @id does not appear on the page', array('@id' => $block->id())));
+    $this->assertFalse(!empty($result), format_string('Ensure the block @id does not appear on the page', ['@id' => $block->id()]));
   }
 
   /**
@@ -299,7 +299,7 @@ protected function assertNoBlockAppears(Block $block) {
    *   The result from the xpath query.
    */
   protected function findBlockInstance(Block $block) {
-    return $this->xpath('//div[@id = :id]', array(':id' => 'block-' . $block->id()));
+    return $this->xpath('//div[@id = :id]', [':id' => 'block-' . $block->id()]);
   }
 
   /**
@@ -334,17 +334,17 @@ protected function drupalLogin(AccountInterface $account) {
       $this->drupalLogout();
     }
 
-    $edit = array(
+    $edit = [
       'name' => $account->getUsername(),
       'pass' => $account->pass_raw
-    );
+    ];
     $this->drupalPostForm('user/login', $edit, t('Log in'));
 
     // @see WebTestBase::drupalUserIsLoggedIn()
     if (isset($this->sessionId)) {
       $account->session_id = $this->sessionId;
     }
-    $pass = $this->assert($this->drupalUserIsLoggedIn($account), format_string('User %name successfully logged in.', array('%name' => $account->getUsername())), 'User login');
+    $pass = $this->assert($this->drupalUserIsLoggedIn($account), format_string('User %name successfully logged in.', ['%name' => $account->getUsername()]), 'User login');
     if ($pass) {
       $this->loggedInUser = $account;
       $this->container->get('current_user')->setAccount($account);
@@ -377,7 +377,7 @@ protected function drupalLogout() {
     // Make a request to the logout page, and redirect to the user page, the
     // idea being if you were properly logged out you should be seeing a login
     // screen.
-    $this->drupalGet('user/logout', array('query' => array('destination' => 'user/login')));
+    $this->drupalGet('user/logout', ['query' => ['destination' => 'user/login']]);
     $this->assertResponse(200, 'User was logged out.');
     $pass = $this->assertField('name', 'Username field found.', 'Logout');
     $pass = $pass && $this->assertField('pass', 'Password field found.', 'Logout');
@@ -469,36 +469,36 @@ protected function installParameters() {
       unset($connection_info['default']['host']);
       unset($connection_info['default']['port']);
     }
-    $parameters = array(
+    $parameters = [
       'interactive' => FALSE,
-      'parameters' => array(
+      'parameters' => [
         'profile' => $this->profile,
         'langcode' => 'en',
-      ),
-      'forms' => array(
-        'install_settings_form' => array(
+      ],
+      'forms' => [
+        'install_settings_form' => [
           'driver' => $driver,
           $driver => $connection_info['default'],
-        ),
-        'install_configure_form' => array(
+        ],
+        'install_configure_form' => [
           'site_name' => 'Drupal',
           'site_mail' => 'simpletest@example.com',
-          'account' => array(
+          'account' => [
             'name' => $this->rootUser->name,
             'mail' => $this->rootUser->getEmail(),
-            'pass' => array(
+            'pass' => [
               'pass1' => $this->rootUser->pass_raw,
               'pass2' => $this->rootUser->pass_raw,
-            ),
-          ),
+            ],
+          ],
           // \Drupal\Core\Render\Element\Checkboxes::valueCallback() requires
           // NULL instead of FALSE values for programmatic form submissions to
           // disable a checkbox.
           'enable_update_status_module' => NULL,
           'enable_update_status_emails' => NULL,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // If we only have one db driver available, we cannot set the driver.
     include_once DRUPAL_ROOT . '/core/includes/install.inc';
@@ -574,7 +574,7 @@ protected function addCustomTranslations($langcode, array $values) {
     // If $values is empty, then the test expects all custom translations to be
     // cleared.
     if (empty($values)) {
-      $this->customTranslations[$langcode] = array();
+      $this->customTranslations[$langcode] = [];
     }
     // Otherwise, $values are expected to be merged into previously passed
     // values, while retaining keys that are not explicitly set.
@@ -594,17 +594,17 @@ protected function addCustomTranslations($langcode, array $values) {
    * calling this method.
    */
   protected function writeCustomTranslations() {
-    $settings = array();
+    $settings = [];
     foreach ($this->customTranslations as $langcode => $values) {
       $settings_key = 'locale_custom_strings_' . $langcode;
 
       // Update in-memory settings directly.
       $this->settingsSet($settings_key, $values);
 
-      $settings['settings'][$settings_key] = (object) array(
+      $settings['settings'][$settings_key] = (object) [
         'value' => $values,
         'required' => TRUE,
-      );
+      ];
     }
     // Only rewrite settings if there are any translation changes to write.
     if (!empty($settings)) {
@@ -630,13 +630,13 @@ protected function tearDown() {
 
     // Ensure that internal logged in variable and cURL options are reset.
     $this->loggedInUser = FALSE;
-    $this->additionalCurlOptions = array();
+    $this->additionalCurlOptions = [];
 
     // Close the CURL handler and reset the cookies array used for upgrade
     // testing so test classes containing multiple tests are not polluted.
     $this->curlClose();
-    $this->curlCookies = array();
-    $this->cookies = array();
+    $this->curlCookies = [];
+    $this->cookies = [];
   }
 
   /**
@@ -659,7 +659,7 @@ protected function curlInitialize() {
         $this->cookieFile = $this->publicFilesDirectory . '/cookie.jar';
       }
 
-      $curl_options = array(
+      $curl_options = [
         CURLOPT_COOKIEJAR => $this->cookieFile,
         CURLOPT_URL => $base_url,
         CURLOPT_FOLLOWLOCATION => FALSE,
@@ -668,11 +668,11 @@ protected function curlInitialize() {
         CURLOPT_SSL_VERIFYPEER => FALSE,
         // Required to make the tests run on HTTPS.
         CURLOPT_SSL_VERIFYHOST => FALSE,
-        CURLOPT_HEADERFUNCTION => array(&$this, 'curlHeaderCallback'),
+        CURLOPT_HEADERFUNCTION => [&$this, 'curlHeaderCallback'],
         CURLOPT_USERAGENT => $this->databasePrefix,
         // Disable support for the @ prefix for uploading files.
         CURLOPT_SAFE_UPLOAD => TRUE,
-      );
+      ];
       if (isset($this->httpAuthCredentials)) {
         $curl_options[CURLOPT_HTTPAUTH] = $this->httpAuthMethod;
         $curl_options[CURLOPT_USERPWD] = $this->httpAuthCredentials;
@@ -731,7 +731,7 @@ protected function curlExec($curl_options, $redirect = FALSE) {
       $curl_options[CURLOPT_HTTPHEADER][] = 'Expect:';
     }
 
-    $cookies = array();
+    $cookies = [];
     if (!empty($this->curlCookies)) {
       $cookies = $this->curlCookies;
     }
@@ -744,9 +744,9 @@ protected function curlExec($curl_options, $redirect = FALSE) {
 
     // Merge additional cookies in.
     if (!empty($cookies)) {
-      $curl_options += array(
+      $curl_options += [
         CURLOPT_COOKIE => '',
-      );
+      ];
       // Ensure any existing cookie data string ends with the correct separator.
       if (!empty($curl_options[CURLOPT_COOKIE])) {
         $curl_options[CURLOPT_COOKIE] = rtrim($curl_options[CURLOPT_COOKIE], '; ') . '; ';
@@ -759,7 +759,7 @@ protected function curlExec($curl_options, $redirect = FALSE) {
     if (!$redirect) {
       // Reset headers, the session ID and the redirect counter.
       $this->sessionId = NULL;
-      $this->headers = array();
+      $this->headers = [];
       $this->redirectCount = 0;
     }
 
@@ -771,10 +771,10 @@ protected function curlExec($curl_options, $redirect = FALSE) {
     // to prevent fragments being sent to the web server as part
     // of the request.
     // TODO: Remove this for Drupal 8, since fixed in curl 7.20.0.
-    if (in_array($status, array(300, 301, 302, 303, 305, 307)) && $this->redirectCount < $this->maximumRedirects) {
+    if (in_array($status, [300, 301, 302, 303, 305, 307]) && $this->redirectCount < $this->maximumRedirects) {
       if ($this->drupalGetHeader('location')) {
         $this->redirectCount++;
-        $curl_options = array();
+        $curl_options = [];
         $curl_options[CURLOPT_URL] = $this->drupalGetHeader('location');
         $curl_options[CURLOPT_HTTPGET] = TRUE;
         return $this->curlExec($curl_options, TRUE);
@@ -784,12 +784,12 @@ protected function curlExec($curl_options, $redirect = FALSE) {
     $this->setRawContent($content);
     $this->url = isset($original_url) ? $original_url : curl_getinfo($this->curlHandle, CURLINFO_EFFECTIVE_URL);
 
-    $message_vars = array(
+    $message_vars = [
       '@method' => !empty($curl_options[CURLOPT_NOBODY]) ? 'HEAD' : (empty($curl_options[CURLOPT_POSTFIELDS]) ? 'GET' : 'POST'),
       '@url' => isset($original_url) ? $original_url : $url,
       '@status' => $status,
       '@length' => format_size(strlen($this->getRawContent()))
-    );
+    ];
     $message = SafeMarkup::format('@method @url returned @status (@length).', $message_vars);
     $this->assertTrue($this->getRawContent() !== FALSE, $message, 'Browser');
     return $this->getRawContent();
@@ -823,7 +823,7 @@ protected function curlHeaderCallback($curlHandler, $header) {
     if (preg_match('/^X-Drupal-Assertion-[0-9]+: (.*)$/', $header, $matches)) {
       // Call \Drupal\simpletest\WebTestBase::error() with the parameters from
       // the header.
-      call_user_func_array(array(&$this, 'error'), unserialize(urldecode($matches[1])));
+      call_user_func_array([&$this, 'error'], unserialize(urldecode($matches[1])));
     }
 
     // Save cookies.
@@ -831,7 +831,7 @@ protected function curlHeaderCallback($curlHandler, $header) {
       $name = $matches[1];
       $parts = array_map('trim', explode(';', $matches[2]));
       $value = array_shift($parts);
-      $this->cookies[$name] = array('value' => $value, 'secure' => in_array('secure', $parts));
+      $this->cookies[$name] = ['value' => $value, 'secure' => in_array('secure', $parts)];
       if ($name === $this->getSessionName()) {
         if ($value != 'deleted') {
           $this->sessionId = $value;
@@ -885,11 +885,11 @@ protected function isInChildSite() {
    * @return string
    *   The retrieved HTML string, also available as $this->getRawContent()
    */
-  protected function drupalGet($path, array $options = array(), array $headers = array()) {
+  protected function drupalGet($path, array $options = [], array $headers = []) {
     // We re-using a CURL connection here. If that connection still has certain
     // options set, it might change the GET into a POST. Make sure we clear out
     // previous options.
-    $out = $this->curlExec(array(CURLOPT_HTTPGET => TRUE, CURLOPT_URL => $this->buildUrl($path, $options), CURLOPT_NOBODY => FALSE, CURLOPT_HTTPHEADER => $headers));
+    $out = $this->curlExec([CURLOPT_HTTPGET => TRUE, CURLOPT_URL => $this->buildUrl($path, $options), CURLOPT_NOBODY => FALSE, CURLOPT_HTTPHEADER => $headers]);
     // Ensure that any changes to variables in the other thread are picked up.
     $this->refreshVariables();
 
@@ -928,7 +928,7 @@ protected function drupalGet($path, array $options = array(), array $headers = a
    * @return array
    *   Decoded json.
    */
-  protected function drupalGetJSON($path, array $options = array(), array $headers = array()) {
+  protected function drupalGetJSON($path, array $options = [], array $headers = []) {
     return Json::decode($this->drupalGetWithFormat($path, 'json', $options, $headers));
   }
 
@@ -965,7 +965,7 @@ protected function drupalGetWithFormat($path, $format, array $options = [], arra
    * @return array
    *   Decoded JSON.
    */
-  protected function drupalGetAjax($path, array $options = array(), array $headers = array()) {
+  protected function drupalGetAjax($path, array $options = [], array $headers = []) {
     if (!isset($options['query'][MainContentViewSubscriber::WRAPPER_FORMAT])) {
       $options['query'][MainContentViewSubscriber::WRAPPER_FORMAT] = 'drupal_ajax';
     }
@@ -985,7 +985,7 @@ protected function drupalGetAjax($path, array $options = array(), array $headers
    * @return string
    *   The retrieved content.
    */
-  protected function drupalGetXHR($path, array $options = array(), array $headers = array()) {
+  protected function drupalGetXHR($path, array $options = [], array $headers = []) {
     $headers[] = 'X-Requested-With: XMLHttpRequest';
     return $this->drupalGet($path, $options, $headers);
   }
@@ -1074,7 +1074,7 @@ protected function drupalGetXHR($path, array $options = array(), array $headers
    *   POST data, so it must already be urlencoded and contain a leading "&"
    *   (e.g., "&extra_var1=hello+world&extra_var2=you%26me").
    */
-  protected function drupalPostForm($path, $edit, $submit, array $options = array(), array $headers = array(), $form_html_id = NULL, $extra_post = NULL) {
+  protected function drupalPostForm($path, $edit, $submit, array $options = [], array $headers = [], $form_html_id = NULL, $extra_post = NULL) {
     if (is_object($submit)) {
       // Cast MarkupInterface objects to string.
       $submit = (string) $submit;
@@ -1100,8 +1100,8 @@ protected function drupalPostForm($path, $edit, $submit, array $options = array(
       foreach ($forms as $form) {
         // We try to set the fields of this form as specified in $edit.
         $edit = $edit_save;
-        $post = array();
-        $upload = array();
+        $post = [];
+        $upload = [];
         $submit_matches = $this->handleForm($post, $edit, $upload, $ajax ? NULL : $submit, $form);
         $action = isset($form['action']) ? $this->getAbsoluteUrl((string) $form['action']) : $this->getUrl();
         if ($ajax) {
@@ -1141,7 +1141,7 @@ protected function drupalPostForm($path, $edit, $submit, array $options = array(
           else {
             $post = $this->serializePostValues($post) . $extra_post;
           }
-          $out = $this->curlExec(array(CURLOPT_URL => $action, CURLOPT_POST => TRUE, CURLOPT_POSTFIELDS => $post, CURLOPT_HTTPHEADER => $headers));
+          $out = $this->curlExec([CURLOPT_URL => $action, CURLOPT_POST => TRUE, CURLOPT_POSTFIELDS => $post, CURLOPT_HTTPHEADER => $headers]);
           // Ensure that any changes to variables in the other thread are picked
           // up.
           $this->refreshVariables();
@@ -1169,12 +1169,12 @@ protected function drupalPostForm($path, $edit, $submit, array $options = array(
       }
       // We have not found a form which contained all fields of $edit.
       foreach ($edit as $name => $value) {
-        $this->fail(SafeMarkup::format('Failed to set field @name to @value', array('@name' => $name, '@value' => $value)));
+        $this->fail(SafeMarkup::format('Failed to set field @name to @value', ['@name' => $name, '@value' => $value]));
       }
       if (!$ajax && isset($submit)) {
-        $this->assertTrue($submit_matches, format_string('Found the @submit button', array('@submit' => $submit)));
+        $this->assertTrue($submit_matches, format_string('Found the @submit button', ['@submit' => $submit]));
       }
-      $this->fail(format_string('Found the requested form fields at @path', array('@path' => ($path instanceof Url) ? $path->toString() : $path)));
+      $this->fail(format_string('Found the requested form fields at @path', ['@path' => ($path instanceof Url) ? $path->toString() : $path]));
     }
   }
 
@@ -1220,7 +1220,7 @@ protected function drupalPostForm($path, $edit, $submit, array $options = array(
    * @see drupalProcessAjaxResponse()
    * @see ajax.js
    */
-  protected function drupalPostAjaxForm($path, $edit, $triggering_element, $ajax_path = NULL, array $options = array(), array $headers = array(), $form_html_id = NULL, $ajax_settings = NULL) {
+  protected function drupalPostAjaxForm($path, $edit, $triggering_element, $ajax_path = NULL, array $options = [], array $headers = [], $form_html_id = NULL, $ajax_settings = NULL) {
 
     // Get the content of the initial page prior to calling drupalPostForm(),
     // since drupalPostForm() replaces $this->content.
@@ -1257,7 +1257,7 @@ protected function drupalPostAjaxForm($path, $edit, $triggering_element, $ajax_p
     }
 
     // Add extra information to the POST data as ajax.js does.
-    $extra_post = array();
+    $extra_post = [];
     if (isset($ajax_settings['submit'])) {
       foreach ($ajax_settings['submit'] as $key => $value) {
         $extra_post[$key] = $value;
@@ -1295,7 +1295,7 @@ protected function drupalPostAjaxForm($path, $edit, $triggering_element, $ajax_p
     $ajax_path = $this->container->get('unrouted_url_assembler')->assemble('base://' . $ajax_path, $options);
 
     // Submit the POST request.
-    $return = Json::decode($this->drupalPostForm(NULL, $edit, array('path' => $ajax_path, 'triggering_element' => $triggering_element), $options, $headers, $form_html_id, $extra_post));
+    $return = Json::decode($this->drupalPostForm(NULL, $edit, ['path' => $ajax_path, 'triggering_element' => $triggering_element], $options, $headers, $form_html_id, $extra_post));
     if ($this->assertAjaxHeader) {
       $this->assertIdentical($this->drupalGetHeader('X-Drupal-Ajax-Token'), '1', 'Ajax response header found.');
     }
@@ -1341,9 +1341,9 @@ protected function drupalProcessAjaxResponse($content, array $ajax_response, arr
 
     // ajax.js applies some defaults to the settings object, so do the same
     // for what's used by this function.
-    $ajax_settings += array(
+    $ajax_settings += [
       'method' => 'replaceWith',
-    );
+    ];
     // DOM can load HTML soup. But, HTML soup can throw warnings, suppress
     // them.
     $dom = new \DOMDocument();
@@ -1370,7 +1370,7 @@ protected function drupalProcessAjaxResponse($content, array $ajax_response, arr
           // @todo Ajax commands can target any jQuery selector, but these are
           //   hard to fully emulate with XPath. For now, just handle 'head'
           //   and 'body', since these are used by the Ajax renderer.
-          elseif (in_array($command['selector'], array('head', 'body'))) {
+          elseif (in_array($command['selector'], ['head', 'body'])) {
             $wrapperNode = $xpath->query('//' . $command['selector'])->item(0);
           }
           if ($wrapperNode) {
@@ -1464,16 +1464,16 @@ protected function drupalProcessAjaxResponse($content, array $ajax_response, arr
    * @see WebTestBase::getAjaxPageStatePostData()
    * @see WebTestBase::curlExec()
    */
-  protected function drupalPost($path, $accept, array $post, $options = array()) {
-    return $this->curlExec(array(
+  protected function drupalPost($path, $accept, array $post, $options = []) {
+    return $this->curlExec([
       CURLOPT_URL => $this->buildUrl($path, $options),
       CURLOPT_POST => TRUE,
       CURLOPT_POSTFIELDS => $this->serializePostValues($post),
-      CURLOPT_HTTPHEADER => array(
+      CURLOPT_HTTPHEADER => [
         'Accept: ' . $accept,
         'Content-Type: application/x-www-form-urlencoded',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
@@ -1510,7 +1510,7 @@ protected function drupalPostWithFormat($path, $format, array $post, $options =
    *   The Ajax page state POST data.
    */
   protected function getAjaxPageStatePostData() {
-    $post = array();
+    $post = [];
     $drupal_settings = $this->drupalSettings;
     if (isset($drupal_settings['ajaxPageState']['theme'])) {
       $post['ajax_page_state[theme]'] = $drupal_settings['ajaxPageState']['theme'];
@@ -1537,7 +1537,7 @@ protected function getAjaxPageStatePostData() {
    * @return string
    *   The serialized result.
    */
-  protected function serializePostValues($post = array()) {
+  protected function serializePostValues($post = []) {
     foreach ($post as $key => $value) {
       $post[$key] = urlencode($key) . '=' . urlencode($value);
     }
@@ -1554,7 +1554,7 @@ protected function serializePostValues($post = array()) {
    *   The flattened $edit array suitable for WebTestBase::drupalPostForm().
    */
   protected function translatePostValues(array $values) {
-    $edit = array();
+    $edit = [];
     // The easiest and most straightforward way to translate values suitable for
     // WebTestBase::drupalPostForm() is to actually build the POST data string
     // and convert the resulting key/value pairs back into a flat array.
@@ -1604,10 +1604,10 @@ protected function checkForMetaRefresh() {
    * @return
    *   The retrieved headers, also available as $this->getRawContent()
    */
-  protected function drupalHead($path, array $options = array(), array $headers = array()) {
+  protected function drupalHead($path, array $options = [], array $headers = []) {
     $options['absolute'] = TRUE;
     $url = $this->buildUrl($path, $options);
-    $out = $this->curlExec(array(CURLOPT_NOBODY => TRUE, CURLOPT_URL => $url, CURLOPT_HTTPHEADER => $headers));
+    $out = $this->curlExec([CURLOPT_NOBODY => TRUE, CURLOPT_URL => $url, CURLOPT_HTTPHEADER => $headers]);
     // Ensure that any changes to variables in the other thread are picked up.
     $this->refreshVariables();
 
@@ -1838,13 +1838,13 @@ protected function clickLinkHelper($label, $index, $pattern) {
     // Cast MarkupInterface objects to string.
     $label = (string) $label;
     $url_before = $this->getUrl();
-    $urls = $this->xpath($pattern, array(':label' => $label));
+    $urls = $this->xpath($pattern, [':label' => $label]);
     if (isset($urls[$index])) {
       $url_target = $this->getAbsoluteUrl($urls[$index]['href']);
-      $this->pass(SafeMarkup::format('Clicked link %label (@url_target) from @url_before', array('%label' => $label, '@url_target' => $url_target, '@url_before' => $url_before)), 'Browser');
+      $this->pass(SafeMarkup::format('Clicked link %label (@url_target) from @url_before', ['%label' => $label, '@url_target' => $url_target, '@url_before' => $url_before]), 'Browser');
       return $this->drupalGet($url_target);
     }
-    $this->fail(SafeMarkup::format('Link %label does not exist on @url_before', array('%label' => $label, '@url_before' => $url_before)), 'Browser');
+    $this->fail(SafeMarkup::format('Link %label does not exist on @url_before', ['%label' => $label, '@url_before' => $url_before]), 'Browser');
     return FALSE;
   }
 
@@ -1921,7 +1921,7 @@ protected function getAbsoluteUrl($path) {
    */
   protected function drupalGetHeaders($all_requests = FALSE) {
     $request = 0;
-    $headers = array($request => array());
+    $headers = [$request => []];
     foreach ($this->headers as $header) {
       $header = trim($header);
       if ($header === '') {
@@ -2032,7 +2032,7 @@ protected function assertHeader($header, $value, $message = '', $group = 'Browse
    * @return
    *   TRUE on pass, FALSE on fail.
    */
-  protected function assertUrl($path, array $options = array(), $message = '', $group = 'Other') {
+  protected function assertUrl($path, array $options = [], $message = '', $group = 'Other') {
     if ($path instanceof Url) {
       $url_obj = $path;
     }
@@ -2047,10 +2047,10 @@ protected function assertUrl($path, array $options = array(), $message = '', $gr
     }
     $url = $url_obj->setAbsolute()->toString();
     if (!$message) {
-      $message = SafeMarkup::format('Expected @url matches current URL (@current_url).', array(
+      $message = SafeMarkup::format('Expected @url matches current URL (@current_url).', [
         '@url' => var_export($url, TRUE),
         '@current_url' => $this->getUrl(),
-      ));
+      ]);
     }
     // Paths in query strings can be encoded or decoded with no functional
     // difference, decode them for comparison purposes.
@@ -2082,7 +2082,7 @@ protected function assertUrl($path, array $options = array(), $message = '', $gr
   protected function assertResponse($code, $message = '', $group = 'Browser') {
     $curl_code = curl_getinfo($this->curlHandle, CURLINFO_HTTP_CODE);
     $match = is_array($code) ? in_array($curl_code, $code) : $curl_code == $code;
-    return $this->assertTrue($match, $message ? $message : SafeMarkup::format('HTTP response expected @code, actual @curl_code', array('@code' => $code, '@curl_code' => $curl_code)), $group);
+    return $this->assertTrue($match, $message ? $message : SafeMarkup::format('HTTP response expected @code, actual @curl_code', ['@code' => $code, '@curl_code' => $curl_code]), $group);
   }
 
   /**
@@ -2108,7 +2108,7 @@ protected function assertResponse($code, $message = '', $group = 'Browser') {
   protected function assertNoResponse($code, $message = '', $group = 'Browser') {
     $curl_code = curl_getinfo($this->curlHandle, CURLINFO_HTTP_CODE);
     $match = is_array($code) ? in_array($curl_code, $code) : $curl_code == $code;
-    return $this->assertFalse($match, $message ? $message : SafeMarkup::format('HTTP response not expected @code, actual @curl_code', array('@code' => $code, '@curl_code' => $curl_code)), $group);
+    return $this->assertFalse($match, $message ? $message : SafeMarkup::format('HTTP response not expected @code, actual @curl_code', ['@code' => $code, '@curl_code' => $curl_code]), $group);
   }
 
   /**
@@ -2122,7 +2122,7 @@ protected function assertNoResponse($code, $message = '', $group = 'Browser') {
    * @return string
    *   An absolute URL string.
    */
-  protected function buildUrl($path, array $options = array()) {
+  protected function buildUrl($path, array $options = []) {
     if ($path instanceof Url) {
       $url_options = $path->getOptions();
       $options = $url_options + $options;
diff --git a/core/modules/simpletest/tests/modules/simpletest_test/simpletest_test.install b/core/modules/simpletest/tests/modules/simpletest_test/simpletest_test.install
index 447a192..aabe921 100644
--- a/core/modules/simpletest/tests/modules/simpletest_test/simpletest_test.install
+++ b/core/modules/simpletest/tests/modules/simpletest_test/simpletest_test.install
@@ -12,13 +12,13 @@
  */
 function simpletest_test_install() {
   $total = 2;
-  $operations = array();
+  $operations = [];
   for ($i = 1; $i <= $total; $i++) {
-    $operations[] = array('_simpletest_test_callback', array($i));
+    $operations[] = ['_simpletest_test_callback', [$i]];
   }
-  $batch = array(
+  $batch = [
     'operations' => $operations,
-  );
+  ];
   batch_set($batch);
   $batch =& batch_get();
   $batch['progressive'] = FALSE;
@@ -29,6 +29,6 @@ function simpletest_test_install() {
  * Callback for batch operations.
  */
 function _simpletest_test_callback($id) {
-  $entity = EntityTest::create(array('id' => $id));
+  $entity = EntityTest::create(['id' => $id]);
   $entity->save();
 }
diff --git a/core/modules/simpletest/tests/src/Functional/FolderTest.php b/core/modules/simpletest/tests/src/Functional/FolderTest.php
index 4055976..92844d8 100644
--- a/core/modules/simpletest/tests/src/Functional/FolderTest.php
+++ b/core/modules/simpletest/tests/src/Functional/FolderTest.php
@@ -17,7 +17,7 @@ class FolderTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('image');
+  public static $modules = ['image'];
 
   function testFolderSetup() {
     $directory = file_default_scheme() . '://styles';
diff --git a/core/modules/simpletest/tests/src/Functional/MailCaptureTest.php b/core/modules/simpletest/tests/src/Functional/MailCaptureTest.php
index b79db8d..1193e47 100644
--- a/core/modules/simpletest/tests/src/Functional/MailCaptureTest.php
+++ b/core/modules/simpletest/tests/src/Functional/MailCaptureTest.php
@@ -22,20 +22,20 @@ function testMailSend() {
     // Create an email.
     $subject = $this->randomString(64);
     $body = $this->randomString(128);
-    $message = array(
+    $message = [
       'id' => 'drupal_mail_test',
-      'headers' => array('Content-type' => 'text/html'),
+      'headers' => ['Content-type' => 'text/html'],
       'subject' => $subject,
       'to' => 'foobar@example.com',
       'body' => $body,
-    );
+    ];
 
     // Before we send the email, drupalGetMails should return an empty array.
     $captured_emails = $this->drupalGetMails();
     $this->assertEqual(count($captured_emails), 0, 'The captured emails queue is empty.', 'Email');
 
     // Send the email.
-    \Drupal::service('plugin.manager.mail')->getInstance(array('module' => 'simpletest', 'key' => 'drupal_mail_test'))->mail($message);
+    \Drupal::service('plugin.manager.mail')->getInstance(['module' => 'simpletest', 'key' => 'drupal_mail_test'])->mail($message);
 
     // Ensure that there is one email in the captured emails array.
     $captured_emails = $this->drupalGetMails();
@@ -44,19 +44,19 @@ function testMailSend() {
     // Assert that the email was sent by iterating over the message properties
     // and ensuring that they are captured intact.
     foreach ($message as $field => $value) {
-      $this->assertMail($field, $value, format_string('The email was sent and the value for property @field is intact.', array('@field' => $field)), 'Email');
+      $this->assertMail($field, $value, format_string('The email was sent and the value for property @field is intact.', ['@field' => $field]), 'Email');
     }
 
     // Send additional emails so more than one email is captured.
     for ($index = 0; $index < 5; $index++) {
-      $message = array(
+      $message = [
         'id' => 'drupal_mail_test_' . $index,
-        'headers' => array('Content-type' => 'text/html'),
+        'headers' => ['Content-type' => 'text/html'],
         'subject' => $this->randomString(64),
         'to' => $this->randomMachineName(32) . '@example.com',
         'body' => $this->randomString(512),
-      );
-      \Drupal::service('plugin.manager.mail')->getInstance(array('module' => 'drupal_mail_test', 'key' => $index))->mail($message);
+      ];
+      \Drupal::service('plugin.manager.mail')->getInstance(['module' => 'drupal_mail_test', 'key' => $index])->mail($message);
     }
 
     // There should now be 6 emails captured.
@@ -64,18 +64,18 @@ function testMailSend() {
     $this->assertEqual(count($captured_emails), 6, 'All emails were captured.', 'Email');
 
     // Test different ways of getting filtered emails via drupalGetMails().
-    $captured_emails = $this->drupalGetMails(array('id' => 'drupal_mail_test'));
+    $captured_emails = $this->drupalGetMails(['id' => 'drupal_mail_test']);
     $this->assertEqual(count($captured_emails), 1, 'Only one email is returned when filtering by id.', 'Email');
-    $captured_emails = $this->drupalGetMails(array('id' => 'drupal_mail_test', 'subject' => $subject));
+    $captured_emails = $this->drupalGetMails(['id' => 'drupal_mail_test', 'subject' => $subject]);
     $this->assertEqual(count($captured_emails), 1, 'Only one email is returned when filtering by id and subject.', 'Email');
-    $captured_emails = $this->drupalGetMails(array('id' => 'drupal_mail_test', 'subject' => $subject, 'from' => 'this_was_not_used@example.com'));
+    $captured_emails = $this->drupalGetMails(['id' => 'drupal_mail_test', 'subject' => $subject, 'from' => 'this_was_not_used@example.com']);
     $this->assertEqual(count($captured_emails), 0, 'No emails are returned when querying with an unused from address.', 'Email');
 
     // Send the last email again, so we can confirm that the
     // drupalGetMails-filter correctly returns all emails with a given
     // property/value.
-    \Drupal::service('plugin.manager.mail')->getInstance(array('module' => 'drupal_mail_test', 'key' => $index))->mail($message);
-    $captured_emails = $this->drupalGetMails(array('id' => 'drupal_mail_test_4'));
+    \Drupal::service('plugin.manager.mail')->getInstance(['module' => 'drupal_mail_test', 'key' => $index])->mail($message);
+    $captured_emails = $this->drupalGetMails(['id' => 'drupal_mail_test_4']);
     $this->assertEqual(count($captured_emails), 2, 'All emails with the same id are returned when filtering by id.', 'Email');
   }
 
diff --git a/core/modules/simpletest/tests/src/Functional/OtherInstallationProfileTestsTest.php b/core/modules/simpletest/tests/src/Functional/OtherInstallationProfileTestsTest.php
index 71601e2..04736ec 100644
--- a/core/modules/simpletest/tests/src/Functional/OtherInstallationProfileTestsTest.php
+++ b/core/modules/simpletest/tests/src/Functional/OtherInstallationProfileTestsTest.php
@@ -17,7 +17,7 @@ class OtherInstallationProfileTestsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest');
+  public static $modules = ['simpletest'];
 
   /**
    * Use the Minimal profile.
@@ -43,7 +43,7 @@ class OtherInstallationProfileTestsTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer unit tests'));
+    $this->adminUser = $this->drupalCreateUser(['administer unit tests']);
     $this->drupalLogin($this->adminUser);
   }
 
diff --git a/core/modules/simpletest/tests/src/Kernel/Migrate/d6/MigrateSimpletestConfigsTest.php b/core/modules/simpletest/tests/src/Kernel/Migrate/d6/MigrateSimpletestConfigsTest.php
index b45f9ab..f8f9ffb 100644
--- a/core/modules/simpletest/tests/src/Kernel/Migrate/d6/MigrateSimpletestConfigsTest.php
+++ b/core/modules/simpletest/tests/src/Kernel/Migrate/d6/MigrateSimpletestConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateSimpletestConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('simpletest');
+  public static $modules = ['simpletest'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/simpletest/tests/src/Unit/TestBaseTest.php b/core/modules/simpletest/tests/src/Unit/TestBaseTest.php
index 6643eb6..cdfe986 100644
--- a/core/modules/simpletest/tests/src/Unit/TestBaseTest.php
+++ b/core/modules/simpletest/tests/src/Unit/TestBaseTest.php
@@ -25,8 +25,8 @@ class TestBaseTest extends UnitTestCase {
    */
   public function getTestBaseForAssertionTests($test_id) {
     $mock_test_base = $this->getMockBuilder('Drupal\simpletest\TestBase')
-      ->setConstructorArgs(array($test_id))
-      ->setMethods(array('storeAssertion'))
+      ->setConstructorArgs([$test_id])
+      ->setMethods(['storeAssertion'])
       ->getMockForAbstractClass();
     // Override storeAssertion() so we don't need a database.
     $mock_test_base->expects($this->any())
@@ -62,16 +62,16 @@ public function invokeProtectedMethod($object, $method_name, array $arguments) {
    *   - The string to validate.
    */
   public function providerRandomStringValidate() {
-    return array(
-      array(FALSE, ' curry paste'),
-      array(FALSE, 'curry paste '),
-      array(FALSE, 'curry  paste'),
-      array(FALSE, 'curry   paste'),
-      array(TRUE, 'curry paste'),
-      array(TRUE, 'thai green curry paste'),
-      array(TRUE, '@startswithat'),
-      array(TRUE, 'contains@at'),
-    );
+    return [
+      [FALSE, ' curry paste'],
+      [FALSE, 'curry paste '],
+      [FALSE, 'curry  paste'],
+      [FALSE, 'curry   paste'],
+      [TRUE, 'curry paste'],
+      [TRUE, 'thai green curry paste'],
+      [TRUE, '@startswithat'],
+      [TRUE, 'contains@at'],
+    ];
   }
 
   /**
@@ -136,7 +136,7 @@ public function testCheckRequirements() {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertInternalType(
         'array',
-        $this->invokeProtectedMethod($test_base, 'checkRequirements', array())
+        $this->invokeProtectedMethod($test_base, 'checkRequirements', [])
     );
   }
 
@@ -153,14 +153,14 @@ public function testCheckRequirements() {
    *   - Caller, passed to assert().
    */
   public function providerAssert() {
-    return array(
-      array(TRUE, 'pass', TRUE, 'Yay pass', 'test', array()),
-      array(FALSE, 'fail', FALSE, 'Boo fail', 'test', array()),
-      array(TRUE, 'pass', 'pass', 'Yay pass', 'test', array()),
-      array(FALSE, 'fail', 'fail', 'Boo fail', 'test', array()),
-      array(FALSE, 'exception', 'exception', 'Boo fail', 'test', array()),
-      array(FALSE, 'debug', 'debug', 'Boo fail', 'test', array()),
-    );
+    return [
+      [TRUE, 'pass', TRUE, 'Yay pass', 'test', []],
+      [FALSE, 'fail', FALSE, 'Boo fail', 'test', []],
+      [TRUE, 'pass', 'pass', 'Yay pass', 'test', []],
+      [FALSE, 'fail', 'fail', 'Boo fail', 'test', []],
+      [FALSE, 'exception', 'exception', 'Boo fail', 'test', []],
+      [FALSE, 'debug', 'debug', 'Boo fail', 'test', []],
+    ];
   }
 
   /**
@@ -185,7 +185,7 @@ public function testAssert($expected, $assertion_status, $status, $message, $gro
     $this->assertEquals(
         $expected,
         $ref_assert->invokeArgs($test_base,
-          array($status, $message, $group, $caller)
+          [$status, $message, $group, $caller]
         )
     );
 
@@ -211,10 +211,10 @@ public function testAssert($expected, $assertion_status, $status, $message, $gro
    * Data provider for assertTrue().
    */
   public function providerAssertTrue() {
-    return array(
-      array(TRUE, TRUE),
-      array(FALSE, FALSE),
-    );
+    return [
+      [TRUE, TRUE],
+      [FALSE, FALSE],
+    ];
   }
 
   /**
@@ -225,7 +225,7 @@ public function testAssertTrue($expected, $value) {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         $expected,
-        $this->invokeProtectedMethod($test_base, 'assertTrue', array($value))
+        $this->invokeProtectedMethod($test_base, 'assertTrue', [$value])
     );
   }
 
@@ -237,7 +237,7 @@ public function testAssertFalse($expected, $value) {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         (!$expected),
-        $this->invokeProtectedMethod($test_base, 'assertFalse', array($value))
+        $this->invokeProtectedMethod($test_base, 'assertFalse', [$value])
     );
   }
 
@@ -245,10 +245,10 @@ public function testAssertFalse($expected, $value) {
    * Data provider for assertNull().
    */
   public function providerAssertNull() {
-    return array(
-      array(TRUE, NULL),
-      array(FALSE, ''),
-    );
+    return [
+      [TRUE, NULL],
+      [FALSE, ''],
+    ];
   }
 
   /**
@@ -259,7 +259,7 @@ public function testAssertNull($expected, $value) {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         $expected,
-        $this->invokeProtectedMethod($test_base, 'assertNull', array($value))
+        $this->invokeProtectedMethod($test_base, 'assertNull', [$value])
     );
   }
 
@@ -271,7 +271,7 @@ public function testAssertNotNull($expected, $value) {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         (!$expected),
-        $this->invokeProtectedMethod($test_base, 'assertNotNull', array($value))
+        $this->invokeProtectedMethod($test_base, 'assertNotNull', [$value])
     );
   }
 
@@ -325,7 +325,7 @@ public function testAssertIdentical($expected_identical, $expected_equal, $first
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         $expected_identical,
-        $this->invokeProtectedMethod($test_base, 'assertIdentical', array($first, $second))
+        $this->invokeProtectedMethod($test_base, 'assertIdentical', [$first, $second])
     );
   }
 
@@ -337,7 +337,7 @@ public function testAssertNotIdentical($expected_identical, $expected_equal, $fi
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         (!$expected_identical),
-        $this->invokeProtectedMethod($test_base, 'assertNotIdentical', array($first, $second))
+        $this->invokeProtectedMethod($test_base, 'assertNotIdentical', [$first, $second])
     );
   }
 
@@ -349,7 +349,7 @@ public function testAssertEqual($expected_identical, $expected_equal, $first, $s
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         $expected_equal,
-        $this->invokeProtectedMethod($test_base, 'assertEqual', array($first, $second))
+        $this->invokeProtectedMethod($test_base, 'assertEqual', [$first, $second])
     );
   }
 
@@ -361,7 +361,7 @@ public function testAssertNotEqual($expected_identical, $expected_equal, $first,
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         (!$expected_equal),
-        $this->invokeProtectedMethod($test_base, 'assertNotEqual', array($first, $second))
+        $this->invokeProtectedMethod($test_base, 'assertNotEqual', [$first, $second])
     );
   }
 
@@ -374,11 +374,11 @@ public function providerAssertIdenticalObject() {
     $obj2 = $obj1;
     $obj3 = clone $obj1;
     $obj4 = new \stdClass();
-    return array(
-      array(TRUE, $obj1, $obj2),
-      array(TRUE, $obj1, $obj3),
-      array(FALSE, $obj1, $obj4),
-    );
+    return [
+      [TRUE, $obj1, $obj2],
+      [TRUE, $obj1, $obj3],
+      [FALSE, $obj1, $obj4],
+    ];
   }
 
   /**
@@ -389,7 +389,7 @@ public function testAssertIdenticalObject($expected, $first, $second) {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
       $expected,
-      $this->invokeProtectedMethod($test_base, 'assertIdenticalObject', array($first, $second))
+      $this->invokeProtectedMethod($test_base, 'assertIdenticalObject', [$first, $second])
     );
   }
 
@@ -400,7 +400,7 @@ public function testPass() {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         TRUE,
-        $this->invokeProtectedMethod($test_base, 'pass', array())
+        $this->invokeProtectedMethod($test_base, 'pass', [])
     );
   }
 
@@ -411,7 +411,7 @@ public function testFail() {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertEquals(
         FALSE,
-        $this->invokeProtectedMethod($test_base, 'fail', array())
+        $this->invokeProtectedMethod($test_base, 'fail', [])
     );
   }
 
@@ -423,10 +423,10 @@ public function testFail() {
    *   - Group for use in assert().
    */
   public function providerError() {
-    return array(
-      array('debug', 'User notice'),
-      array('exception', 'Not User notice'),
-    );
+    return [
+      ['debug', 'User notice'],
+      ['exception', 'Not User notice'],
+    ];
   }
 
   /**
@@ -436,7 +436,7 @@ public function providerError() {
   public function testError($status, $group) {
     // Mock up a TestBase object.
     $mock_test_base = $this->getMockBuilder('Drupal\simpletest\TestBase')
-      ->setMethods(array('assert'))
+      ->setMethods(['assert'])
       ->getMockForAbstractClass();
 
     // Set expectations for assert().
@@ -451,7 +451,7 @@ public function testError($status, $group) {
     // Invoke error().
     $this->assertEquals(
         "$status:$group",
-        $this->invokeProtectedMethod($mock_test_base, 'error', array('msg', $group))
+        $this->invokeProtectedMethod($mock_test_base, 'error', ['msg', $group])
     );
   }
 
@@ -462,7 +462,7 @@ public function testGetRandomGenerator() {
     $test_base = $this->getTestBaseForAssertionTests('test_id');
     $this->assertInstanceOf(
         'Drupal\Component\Utility\Random',
-        $this->invokeProtectedMethod($test_base, 'getRandomGenerator', array())
+        $this->invokeProtectedMethod($test_base, 'getRandomGenerator', [])
     );
   }
 
diff --git a/core/modules/simpletest/tests/src/Unit/WebTestBaseTest.php b/core/modules/simpletest/tests/src/Unit/WebTestBaseTest.php
index 1c087a6..df90956 100644
--- a/core/modules/simpletest/tests/src/Unit/WebTestBaseTest.php
+++ b/core/modules/simpletest/tests/src/Unit/WebTestBaseTest.php
@@ -18,12 +18,12 @@ class WebTestBaseTest extends UnitTestCase {
    *   An array of values passed to the test method.
    */
   public function providerAssertFieldByName() {
-    $data = array();
-    $data[] = array('select_2nd_selected', 'test', '1', FALSE);
-    $data[] = array('select_2nd_selected', 'test', '2', TRUE);
-    $data[] = array('select_none_selected', 'test', '', FALSE);
-    $data[] = array('select_none_selected', 'test', '1', TRUE);
-    $data[] = array('select_none_selected', 'test', NULL, TRUE);
+    $data = [];
+    $data[] = ['select_2nd_selected', 'test', '1', FALSE];
+    $data[] = ['select_2nd_selected', 'test', '2', TRUE];
+    $data[] = ['select_none_selected', 'test', '', FALSE];
+    $data[] = ['select_none_selected', 'test', '1', TRUE];
+    $data[] = ['select_none_selected', 'test', NULL, TRUE];
 
     return $data;
   }
@@ -50,7 +50,7 @@ public function testAssertFieldByName($filename, $name, $value, $expected) {
 
     $web_test = $this->getMockBuilder('Drupal\simpletest\WebTestBase')
       ->disableOriginalConstructor()
-      ->setMethods(array('getRawContent', 'assertTrue', 'pass'))
+      ->setMethods(['getRawContent', 'assertTrue', 'pass'])
       ->getMock();
 
     $web_test->expects($this->any())
@@ -65,7 +65,7 @@ public function testAssertFieldByName($filename, $name, $value, $expected) {
 
     $test_method = new \ReflectionMethod('Drupal\simpletest\WebTestBase', 'assertFieldByName');
     $test_method->setAccessible(TRUE);
-    $test_method->invokeArgs($web_test, array($name, $value, 'message'));
+    $test_method->invokeArgs($web_test, [$name, $value, 'message']);
   }
 
   /**
@@ -87,32 +87,32 @@ public function testAssertFieldByName($filename, $name, $value, $expected) {
    *     to mock no link found on the page.
    */
   public function providerTestClickLink() {
-    return array(
+    return [
       // Test for a non-existent label.
-      array(
+      [
         FALSE,
         'does_not_exist',
         0,
-        array(),
-      ),
+        [],
+      ],
       // Test for an existing label.
-      array(
+      [
         'This Text Returned By drupalGet()',
         'exists',
         0,
-        array(0 => array('href' => 'this_is_a_url')),
-      ),
+        [0 => ['href' => 'this_is_a_url']],
+      ],
       // Test for an existing label that isn't the first one.
-      array(
+      [
         'This Text Returned By drupalGet()',
         'exists',
         1,
-        array(
-          0 => array('href' => 'this_is_a_url'),
-          1 => array('href' => 'this_is_another_url'),
-        ),
-      ),
-    );
+        [
+          0 => ['href' => 'this_is_a_url'],
+          1 => ['href' => 'this_is_another_url'],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -134,14 +134,14 @@ public function testClickLink($expected, $label, $index, $xpath_data) {
     // Mock a WebTestBase object and some of its methods.
     $web_test = $this->getMockBuilder('Drupal\simpletest\WebTestBase')
       ->disableOriginalConstructor()
-      ->setMethods(array(
+      ->setMethods([
         'pass',
         'fail',
         'getUrl',
         'xpath',
         'drupalGet',
         'getAbsoluteUrl',
-      ))
+      ])
       ->getMock();
 
     // Mocked getUrl() is only used for reporting so we just return a string.
diff --git a/core/modules/statistics/src/NodeStatisticsDatabaseStorage.php b/core/modules/statistics/src/NodeStatisticsDatabaseStorage.php
index 32d2872..0cccb17 100644
--- a/core/modules/statistics/src/NodeStatisticsDatabaseStorage.php
+++ b/core/modules/statistics/src/NodeStatisticsDatabaseStorage.php
@@ -83,7 +83,7 @@ public function fetchViews($ids) {
    * {@inheritdoc}
    */
   public function fetchView($id) {
-    $views = $this->fetchViews(array($id));
+    $views = $this->fetchViews([$id]);
     return reset($views);
   }
 
diff --git a/core/modules/statistics/src/Plugin/Block/StatisticsPopularBlock.php b/core/modules/statistics/src/Plugin/Block/StatisticsPopularBlock.php
index 8bd84b2..1802a45 100644
--- a/core/modules/statistics/src/Plugin/Block/StatisticsPopularBlock.php
+++ b/core/modules/statistics/src/Plugin/Block/StatisticsPopularBlock.php
@@ -92,11 +92,11 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'top_day_num' => 0,
       'top_all_num' => 0,
       'top_last_num' => 0
-    );
+    ];
   }
 
   /**
@@ -111,29 +111,29 @@ protected function blockAccess(AccountInterface $account) {
    */
   public function blockForm($form, FormStateInterface $form_state) {
     // Popular content block settings.
-    $numbers = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 40);
-    $numbers = array('0' => $this->t('Disabled')) + array_combine($numbers, $numbers);
-    $form['statistics_block_top_day_num'] = array(
+    $numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 40];
+    $numbers = ['0' => $this->t('Disabled')] + array_combine($numbers, $numbers);
+    $form['statistics_block_top_day_num'] = [
      '#type' => 'select',
      '#title' => $this->t("Number of day's top views to display"),
      '#default_value' => $this->configuration['top_day_num'],
      '#options' => $numbers,
      '#description' => $this->t('How many content items to display in "day" list.'),
-    );
-    $form['statistics_block_top_all_num'] = array(
+    ];
+    $form['statistics_block_top_all_num'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of all time views to display'),
       '#default_value' => $this->configuration['top_all_num'],
       '#options' => $numbers,
       '#description' => $this->t('How many content items to display in "all time" list.'),
-    );
-    $form['statistics_block_top_last_num'] = array(
+    ];
+    $form['statistics_block_top_last_num'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of most recent views to display'),
       '#default_value' => $this->configuration['top_last_num'],
       '#options' => $numbers,
       '#description' => $this->t('How many content items to display in "recently viewed" list.'),
-    );
+    ];
     return $form;
   }
 
@@ -150,7 +150,7 @@ public function blockSubmit($form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function build() {
-    $content = array();
+    $content = [];
 
     if ($this->configuration['top_day_num'] > 0) {
       $nids = $this->statisticsStorage->fetchAll('daycount', $this->configuration['top_day_num']);
diff --git a/core/modules/statistics/src/StatisticsSettingsForm.php b/core/modules/statistics/src/StatisticsSettingsForm.php
index 2abb564..71a1764 100644
--- a/core/modules/statistics/src/StatisticsSettingsForm.php
+++ b/core/modules/statistics/src/StatisticsSettingsForm.php
@@ -65,17 +65,17 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('statistics.settings');
 
     // Content counter settings.
-    $form['content'] = array(
+    $form['content'] = [
       '#type' => 'details',
       '#title' => t('Content viewing counter settings'),
       '#open' => TRUE,
-    );
-    $form['content']['statistics_count_content_views'] = array(
+    ];
+    $form['content']['statistics_count_content_views'] = [
       '#type' => 'checkbox',
       '#title' => t('Count content views'),
       '#default_value' => $config->get('count_content_views'),
       '#description' => t('Increment a counter each time content is viewed.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/statistics/src/Tests/StatisticsAdminTest.php b/core/modules/statistics/src/Tests/StatisticsAdminTest.php
index 6d87fd9..35af86b 100644
--- a/core/modules/statistics/src/Tests/StatisticsAdminTest.php
+++ b/core/modules/statistics/src/Tests/StatisticsAdminTest.php
@@ -16,7 +16,7 @@ class StatisticsAdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'statistics');
+  public static $modules = ['node', 'statistics'];
 
   /**
    * A user that has permission to administer statistics.
@@ -47,11 +47,11 @@ protected function setUp() {
 
     // Create Basic page node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     }
-    $this->privilegedUser = $this->drupalCreateUser(array('administer statistics', 'view post access counter', 'create page content'));
+    $this->privilegedUser = $this->drupalCreateUser(['administer statistics', 'view post access counter', 'create page content']);
     $this->drupalLogin($this->privilegedUser);
-    $this->testNode = $this->drupalCreateNode(array('type' => 'page', 'uid' => $this->privilegedUser->id()));
+    $this->testNode = $this->drupalCreateNode(['type' => 'page', 'uid' => $this->privilegedUser->id()]);
     $this->client = \Drupal::httpClient();
   }
 
@@ -72,19 +72,19 @@ function testStatisticsSettings() {
     $this->drupalGet('node/' . $this->testNode->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $this->testNode->id();
-    $post = array('nid' => $nid);
+    $post = ['nid' => $nid];
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
 
     // Hit the node again (the counter is incremented after the hit, so
     // "1 view" will actually be shown when the node is hit the second time).
     $this->drupalGet('node/' . $this->testNode->id());
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
     $this->assertText('1 view', 'Node is viewed once.');
 
     $this->drupalGet('node/' . $this->testNode->id());
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
     $this->assertText('2 views', 'Node is viewed 2 times.');
 
     // Increase the max age to test that nodes are no longer immediately
@@ -93,7 +93,7 @@ function testStatisticsSettings() {
     $this->drupalGet('node/' . $this->testNode->id());
     $this->assertText('3 views', 'Node is viewed 3 times.');
 
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
     $this->drupalGet('node/' . $this->testNode->id());
     $this->assertText('3 views', 'Views counter was not updated.');
   }
@@ -107,13 +107,13 @@ function testDeleteNode() {
     $this->drupalGet('node/' . $this->testNode->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $this->testNode->id();
-    $post = array('nid' => $nid);
+    $post = ['nid' => $nid];
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
 
     $result = db_select('node_counter', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->condition('n.nid', $this->testNode->id())
       ->execute()
       ->fetchAssoc();
@@ -122,7 +122,7 @@ function testDeleteNode() {
     $this->testNode->delete();
 
     $result = db_select('node_counter', 'n')
-      ->fields('n', array('nid'))
+      ->fields('n', ['nid'])
       ->condition('n.nid', $this->testNode->id())
       ->execute()
       ->fetchAssoc();
@@ -141,12 +141,12 @@ function testExpiredLogs() {
     $this->drupalGet('node/' . $this->testNode->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $this->testNode->id();
-    $post = array('nid' => $nid);
+    $post = ['nid' => $nid];
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
     $this->drupalGet('node/' . $this->testNode->id());
-    $this->client->post($stats_path, array('form_params' => $post));
+    $this->client->post($stats_path, ['form_params' => $post]);
     $this->assertText('1 view', 'Node is viewed once.');
 
     // statistics_cron() will subtract
@@ -160,7 +160,7 @@ function testExpiredLogs() {
     $this->assertNoText('node/' . $this->testNode->id(), 'No hit URL found.');
 
     $result = db_select('node_counter', 'nc')
-      ->fields('nc', array('daycount'))
+      ->fields('nc', ['daycount'])
       ->condition('nid', $this->testNode->id(), '=')
       ->execute()
       ->fetchField();
diff --git a/core/modules/statistics/src/Tests/StatisticsLoggingTest.php b/core/modules/statistics/src/Tests/StatisticsLoggingTest.php
index 9aa3cc3..a7ed5ba 100644
--- a/core/modules/statistics/src/Tests/StatisticsLoggingTest.php
+++ b/core/modules/statistics/src/Tests/StatisticsLoggingTest.php
@@ -19,7 +19,7 @@ class StatisticsLoggingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'statistics', 'block', 'locale');
+  public static $modules = ['node', 'statistics', 'block', 'locale'];
 
   /**
    * User with permissions to create and edit pages.
@@ -47,10 +47,10 @@ protected function setUp() {
 
     // Create Basic page node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     }
 
-    $this->authUser = $this->drupalCreateUser(array(
+    $this->authUser = $this->drupalCreateUser([
       // For node creation.
       'access content',
       'create page content',
@@ -58,21 +58,21 @@ protected function setUp() {
       // For language negotiation administration.
       'administer languages',
       'access administration pages',
-    ));
+    ]);
 
     // Ensure we have a node page to access.
-    $this->node = $this->drupalCreateNode(array('title' => $this->randomMachineName(255), 'uid' => $this->authUser->id()));
+    $this->node = $this->drupalCreateNode(['title' => $this->randomMachineName(255), 'uid' => $this->authUser->id()]);
 
     // Add a custom language and enable path-based language negotiation.
     $this->drupalLogin($this->authUser);
-    $this->language = array(
+    $this->language = [
       'predefined_langcode' => 'custom',
       'langcode' => 'xx',
       'label' => $this->randomMachineName(16),
       'direction' => 'ltr',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $this->language, t('Add custom language'));
-    $this->drupalPostForm('admin/config/regional/language/detection', array('language_interface[enabled][language-url]' => 1), t('Save settings'));
+    $this->drupalPostForm('admin/config/regional/language/detection', ['language_interface[enabled][language-url]' => 1], t('Save settings'));
     $this->drupalLogout();
 
     // Enable access logging.
@@ -121,8 +121,8 @@ function testLogging() {
 
     // Manually call statistics.php to simulate ajax data collection behavior.
     global $base_root;
-    $post = array('nid' => $this->node->id());
-    $this->client->post($base_root . $stats_path, array('form_params' => $post));
+    $post = ['nid' => $this->node->id()];
+    $this->client->post($base_root . $stats_path, ['form_params' => $post]);
     $node_counter = statistics_get($this->node->id());
     $this->assertIdentical($node_counter['totalcount'], '1');
   }
diff --git a/core/modules/statistics/src/Tests/StatisticsReportsTest.php b/core/modules/statistics/src/Tests/StatisticsReportsTest.php
index 3851207..1524623 100644
--- a/core/modules/statistics/src/Tests/StatisticsReportsTest.php
+++ b/core/modules/statistics/src/Tests/StatisticsReportsTest.php
@@ -22,24 +22,24 @@ function testPopularContentBlock() {
     $this->container->get('plugin.manager.block')->clearCachedDefinitions();
 
     // Visit a node to have something show up in the block.
-    $node = $this->drupalCreateNode(array('type' => 'page', 'uid' => $this->blockingUser->id()));
+    $node = $this->drupalCreateNode(['type' => 'page', 'uid' => $this->blockingUser->id()]);
     $this->drupalGet('node/' . $node->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $node->id();
-    $post = http_build_query(array('nid' => $nid));
-    $headers = array('Content-Type' => 'application/x-www-form-urlencoded');
+    $post = http_build_query(['nid' => $nid]);
+    $headers = ['Content-Type' => 'application/x-www-form-urlencoded'];
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
     $client = \Drupal::httpClient();
-    $client->post($stats_path, array('headers' => $headers, 'body' => $post));
+    $client->post($stats_path, ['headers' => $headers, 'body' => $post]);
 
     // Configure and save the block.
-    $block = $this->drupalPlaceBlock('statistics_popular_block', array(
+    $block = $this->drupalPlaceBlock('statistics_popular_block', [
       'label' => 'Popular content',
       'top_day_num' => 3,
       'top_all_num' => 3,
       'top_last_num' => 3,
-    ));
+    ]);
 
     // Get some page and check if the block is displayed.
     $this->drupalGet('user');
diff --git a/core/modules/statistics/src/Tests/StatisticsTestBase.php b/core/modules/statistics/src/Tests/StatisticsTestBase.php
index 27fe836..4f530cf 100644
--- a/core/modules/statistics/src/Tests/StatisticsTestBase.php
+++ b/core/modules/statistics/src/Tests/StatisticsTestBase.php
@@ -17,7 +17,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'block', 'ban', 'statistics');
+  public static $modules = ['node', 'block', 'ban', 'statistics'];
 
   /**
    * User with permissions to ban IP's.
@@ -31,18 +31,18 @@ protected function setUp() {
 
     // Create Basic page node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     }
 
     // Create user.
-    $this->blockingUser = $this->drupalCreateUser(array(
+    $this->blockingUser = $this->drupalCreateUser([
       'access administration pages',
       'access site reports',
       'ban IP addresses',
       'administer blocks',
       'administer statistics',
       'administer users',
-    ));
+    ]);
     $this->drupalLogin($this->blockingUser);
 
     // Enable logging.
diff --git a/core/modules/statistics/src/Tests/Views/IntegrationTest.php b/core/modules/statistics/src/Tests/Views/IntegrationTest.php
index 601aa6c..18f5581 100644
--- a/core/modules/statistics/src/Tests/Views/IntegrationTest.php
+++ b/core/modules/statistics/src/Tests/Views/IntegrationTest.php
@@ -19,7 +19,7 @@ class IntegrationTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('statistics', 'statistics_test_views', 'node');
+  public static $modules = ['statistics', 'statistics_test_views', 'node'];
 
   /**
    * Stores the user object that accesses the page.
@@ -40,21 +40,21 @@ class IntegrationTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_statistics_integration');
+  public static $testViews = ['test_statistics_integration'];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('statistics_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['statistics_test_views']);
 
     // Create a new user for viewing nodes and statistics.
-    $this->webUser = $this->drupalCreateUser(array('access content', 'view post access counter'));
+    $this->webUser = $this->drupalCreateUser(['access content', 'view post access counter']);
 
     // Create a new user for viewing nodes only.
-    $this->deniedUser = $this->drupalCreateUser(array('access content'));
+    $this->deniedUser = $this->drupalCreateUser(['access content']);
 
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $this->node = $this->drupalCreateNode(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $this->node = $this->drupalCreateNode(['type' => 'page']);
 
     // Enable counting of content views.
     $this->config('statistics.settings')
@@ -75,7 +75,7 @@ public function testNodeCounterIntegration() {
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
     $client = \Drupal::httpClient();
-    $client->post($stats_path, array('form_params' => array('nid' => $this->node->id())));
+    $client->post($stats_path, ['form_params' => ['nid' => $this->node->id()]]);
     $this->drupalGet('test_statistics_integration');
 
     $expected = statistics_get($this->node->id());
diff --git a/core/modules/statistics/statistics.install b/core/modules/statistics/statistics.install
index f232e1d..deac901 100644
--- a/core/modules/statistics/statistics.install
+++ b/core/modules/statistics/statistics.install
@@ -18,42 +18,42 @@ function statistics_uninstall() {
  * Implements hook_schema().
  */
 function statistics_schema() {
-  $schema['node_counter'] = array(
+  $schema['node_counter'] = [
     'description' => 'Access statistics for {node}s.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'description' => 'The {node}.nid for these statistics.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'totalcount' => array(
+      ],
+      'totalcount' => [
         'description' => 'The total number of times the {node} has been viewed.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'big',
-      ),
-      'daycount' => array(
+      ],
+      'daycount' => [
         'description' => 'The total number of times the {node} has been viewed today.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
         'size' => 'medium',
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'description' => 'The most recent time the {node} has been viewed.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('nid'),
-  );
+      ],
+    ],
+    'primary key' => ['nid'],
+  ];
 
   return $schema;
 }
@@ -63,7 +63,7 @@ function statistics_schema() {
  */
 function statistics_update_8001() {
   if (!\Drupal::moduleHandler()->moduleExists('node')) {
-    if (\Drupal::service('module_installer')->uninstall(array('statistics'), TRUE)) {
+    if (\Drupal::service('module_installer')->uninstall(['statistics'], TRUE)) {
       return 'The statistics module depends on the node module and has therefore been uninstalled.';
     }
     else {
diff --git a/core/modules/statistics/statistics.module b/core/modules/statistics/statistics.module
index 922ed57..a7f1e10 100644
--- a/core/modules/statistics/statistics.module
+++ b/core/modules/statistics/statistics.module
@@ -19,13 +19,13 @@ function statistics_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.statistics':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Statistics module shows you how often content is viewed. This is useful in determining which pages of your site are most popular. For more information, see the <a href=":statistics_do">online documentation for the Statistics module</a>.', array(':statistics_do' => 'https://www.drupal.org/documentation/modules/statistics/')) . '</p>';
+      $output .= '<p>' . t('The Statistics module shows you how often content is viewed. This is useful in determining which pages of your site are most popular. For more information, see the <a href=":statistics_do">online documentation for the Statistics module</a>.', [':statistics_do' => 'https://www.drupal.org/documentation/modules/statistics/']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Displaying popular content') . '</dt>';
-      $output .= '<dd>' . t('The module includes a <em>Popular content</em> block that displays the most viewed pages today and for all time, and the last content viewed. To use the block, enable <em>Count content views</em> on the <a href=":statistics-settings">Statistics page</a>, and then you can enable and configure the block on the <a href=":blocks">Block layout page</a>.', array(':statistics-settings' => \Drupal::url('statistics.settings'), ':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#')) . '</dd>';
+      $output .= '<dd>' . t('The module includes a <em>Popular content</em> block that displays the most viewed pages today and for all time, and the last content viewed. To use the block, enable <em>Count content views</em> on the <a href=":statistics-settings">Statistics page</a>, and then you can enable and configure the block on the <a href=":blocks">Block layout page</a>.', [':statistics-settings' => \Drupal::url('statistics.settings'), ':blocks' => (\Drupal::moduleHandler()->moduleExists('block')) ? \Drupal::url('block.admin_display') : '#']) . '</dd>';
       $output .= '<dt>' . t('Page view counter') . '</dt>';
-      $output .= '<dd>' . t('The Statistics module includes a counter for each page that increases whenever the page is viewed. To use the counter, enable <em>Count content views</em> on the <a href=":statistics-settings">Statistics page</a>, and set the necessary <a href=":permissions">permissions</a> (<em>View content hits</em>) so that the counter is visible to the users.', array(':statistics-settings' => \Drupal::url('statistics.settings'), ':permissions' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-statistics')))) . '</dd>';
+      $output .= '<dd>' . t('The Statistics module includes a counter for each page that increases whenever the page is viewed. To use the counter, enable <em>Count content views</em> on the <a href=":statistics-settings">Statistics page</a>, and set the necessary <a href=":permissions">permissions</a> (<em>View content hits</em>) so that the counter is visible to the users.', [':statistics-settings' => \Drupal::url('statistics.settings'), ':permissions' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-statistics'])]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -40,7 +40,7 @@ function statistics_help($route_name, RouteMatchInterface $route_match) {
 function statistics_node_view(array &$build, EntityInterface $node, EntityViewDisplayInterface $display, $view_mode) {
   if (!$node->isNew() && $view_mode == 'full' && node_is_page($node) && empty($node->in_preview)) {
     $build['#attached']['library'][] = 'statistics/drupal.statistics';
-    $settings = array('data' => array('nid' => $node->id()), 'url' => Url::fromUri('base:' . drupal_get_path('module', 'statistics') . '/statistics.php')->toString());
+    $settings = ['data' => ['nid' => $node->id()], 'url' => Url::fromUri('base:' . drupal_get_path('module', 'statistics') . '/statistics.php')->toString()];
     $build['#attached']['drupalSettings']['statistics'] = $settings;
   }
 }
@@ -55,11 +55,11 @@ function statistics_node_links_alter(array &$links, NodeInterface $entity, array
       $statistics = \Drupal::service('statistics.storage.node')->fetchView($entity->id());
       if ($statistics) {
         $statistics_links['statistics_counter']['title'] = \Drupal::translation()->formatPlural($statistics->getTotalCount(), '1 view', '@count views');
-        $links['statistics'] = array(
+        $links['statistics'] = [
           '#theme' => 'links__node__statistics',
           '#links' => $statistics_links,
-          '#attributes' => array('class' => array('links', 'inline')),
-        );
+          '#attributes' => ['class' => ['links', 'inline']],
+        ];
       }
       $links['#cache']['max-age'] = \Drupal::config('statistics.settings')->get('display_max_age');
     }
@@ -93,15 +93,15 @@ function statistics_cron() {
  *   be executed correctly.
  */
 function statistics_title_list($dbfield, $dbrows) {
-  if (in_array($dbfield, array('totalcount', 'daycount', 'timestamp'))) {
+  if (in_array($dbfield, ['totalcount', 'daycount', 'timestamp'])) {
     $query = db_select('node_field_data', 'n');
     $query->addTag('node_access');
     $query->join('node_counter', 's', 'n.nid = s.nid');
     $query->join('users_field_data', 'u', 'n.uid = u.uid');
 
     return $query
-      ->fields('n', array('nid', 'title'))
-      ->fields('u', array('uid', 'name'))
+      ->fields('n', ['nid', 'title'])
+      ->fields('u', ['uid', 'name'])
       ->condition($dbfield, 0, '<>')
       ->condition('n.status', 1)
       // @todo This should be actually filtering on the desired node status
@@ -147,15 +147,15 @@ function statistics_node_predelete(EntityInterface $node) {
  */
 function statistics_ranking() {
   if (\Drupal::config('statistics.settings')->get('count_content_views')) {
-    return array(
-      'views' => array(
+    return [
+      'views' => [
         'title' => t('Number of views'),
-        'join' => array(
+        'join' => [
           'type' => 'LEFT',
           'table' => 'node_counter',
           'alias' => 'node_counter',
           'on' => 'node_counter.nid = i.sid',
-        ),
+        ],
         // Inverse law that maps the highest view count on the site to 1 and 0
         // to 0. Note that the ROUND here is necessary for PostgreSQL and SQLite
         // in order to ensure that the :statistics_scale argument is treated as
@@ -163,9 +163,9 @@ function statistics_ranking() {
         // values in as strings instead of numbers in complex expressions like
         // this.
         'score' => '2.0 - 2.0 / (1.0 + node_counter.totalcount * (ROUND(:statistics_scale, 4)))',
-        'arguments' => array(':statistics_scale' => \Drupal::state()->get('statistics.node_counter_scale') ?: 0),
-      ),
-    );
+        'arguments' => [':statistics_scale' => \Drupal::state()->get('statistics.node_counter_scale') ?: 0],
+      ],
+    ];
   }
 }
 
diff --git a/core/modules/statistics/statistics.tokens.inc b/core/modules/statistics/statistics.tokens.inc
index e9d8ded..96500b8 100644
--- a/core/modules/statistics/statistics.tokens.inc
+++ b/core/modules/statistics/statistics.tokens.inc
@@ -11,23 +11,23 @@
  * Implements hook_token_info().
  */
 function statistics_token_info() {
-  $node['total-count'] = array(
+  $node['total-count'] = [
     'name' => t("Number of views"),
     'description' => t("The number of visitors who have read the node."),
-  );
-  $node['day-count'] = array(
+  ];
+  $node['day-count'] = [
     'name' => t("Views today"),
     'description' => t("The number of visitors who have read the node today."),
-  );
-  $node['last-view'] = array(
+  ];
+  $node['last-view'] = [
     'name' => t("Last view"),
     'description' => t("The date on which a visitor last read the node."),
     'type' => 'date',
-  );
+  ];
 
-  return array(
-    'tokens' => array('node' => $node),
-  );
+  return [
+    'tokens' => ['node' => $node],
+  ];
 }
 
 /**
@@ -36,7 +36,7 @@ function statistics_token_info() {
 function statistics_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'node' & !empty($data['node'])) {
     $node = $data['node'];
@@ -58,7 +58,7 @@ function statistics_tokens($type, $tokens, array $data, array $options, Bubbleab
 
     if ($created_tokens = $token_service->findWithPrefix($tokens, 'last-view')) {
       $statistics = statistics_get($node->id());
-      $replacements += $token_service->generate('date', $created_tokens, array('date' => $statistics['timestamp']), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $created_tokens, ['date' => $statistics['timestamp']], $options, $bubbleable_metadata);
     }
   }
 
diff --git a/core/modules/statistics/statistics.views.inc b/core/modules/statistics/statistics.views.inc
index e851251..03e73ff 100644
--- a/core/modules/statistics/statistics.views.inc
+++ b/core/modules/statistics/statistics.views.inc
@@ -11,66 +11,66 @@
 function statistics_views_data() {
   $data['node_counter']['table']['group']  = t('Content statistics');
 
-  $data['node_counter']['table']['join'] = array(
-    'node_field_data' => array(
+  $data['node_counter']['table']['join'] = [
+    'node_field_data' => [
       'left_field' => 'nid',
       'field' => 'nid',
-    ),
-  );
+    ],
+  ];
 
-  $data['node_counter']['totalcount'] = array(
+  $data['node_counter']['totalcount'] = [
     'title' => t('Total views'),
     'help' => t('The total number of times the node has been viewed.'),
-    'field' => array(
+    'field' => [
       'id' => 'statistics_numeric',
       'click sortable' => TRUE,
-     ),
-    'filter' => array(
+     ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['node_counter']['daycount'] = array(
+  $data['node_counter']['daycount'] = [
     'title' => t('Views today'),
     'help' => t('The total number of times the node has been viewed today.'),
-    'field' => array(
+    'field' => [
       'id' => 'statistics_numeric',
       'click sortable' => TRUE,
-     ),
-    'filter' => array(
+     ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
-  $data['node_counter']['timestamp'] = array(
+  $data['node_counter']['timestamp'] = [
     'title' => t('Most recent view'),
     'help' => t('The most recent time the node has been viewed.'),
-    'field' => array(
+    'field' => [
       'id' => 'node_counter_timestamp',
       'click sortable' => TRUE,
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'date',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
diff --git a/core/modules/statistics/tests/src/Functional/StatisticsAttachedTest.php b/core/modules/statistics/tests/src/Functional/StatisticsAttachedTest.php
index 9ea6e94..787c35b 100644
--- a/core/modules/statistics/tests/src/Functional/StatisticsAttachedTest.php
+++ b/core/modules/statistics/tests/src/Functional/StatisticsAttachedTest.php
@@ -17,7 +17,7 @@ class StatisticsAttachedTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'statistics');
+  public static $modules = ['node', 'statistics'];
 
   /**
    * {@inheritdoc}
@@ -29,7 +29,7 @@ protected function setUp() {
 
     // Install "statistics_test_attached" and set it as the default theme.
     $theme = 'statistics_test_attached';
-    \Drupal::service('theme_handler')->install(array($theme));
+    \Drupal::service('theme_handler')->install([$theme]);
     $this->config('system.theme')
       ->set('default', $theme)
       ->save();
diff --git a/core/modules/statistics/tests/src/Functional/StatisticsTestBase.php b/core/modules/statistics/tests/src/Functional/StatisticsTestBase.php
index 97d9082..3be95e2 100644
--- a/core/modules/statistics/tests/src/Functional/StatisticsTestBase.php
+++ b/core/modules/statistics/tests/src/Functional/StatisticsTestBase.php
@@ -14,7 +14,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'block', 'ban', 'statistics');
+  public static $modules = ['node', 'block', 'ban', 'statistics'];
 
   /**
    * User with permissions to ban IP's.
@@ -28,18 +28,18 @@ protected function setUp() {
 
     // Create Basic page node type.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+      $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     }
 
     // Create user.
-    $this->blockingUser = $this->drupalCreateUser(array(
+    $this->blockingUser = $this->drupalCreateUser([
       'access administration pages',
       'access site reports',
       'ban IP addresses',
       'administer blocks',
       'administer statistics',
       'administer users',
-    ));
+    ]);
     $this->drupalLogin($this->blockingUser);
 
     // Enable logging.
diff --git a/core/modules/statistics/tests/src/Functional/StatisticsTokenReplaceTest.php b/core/modules/statistics/tests/src/Functional/StatisticsTokenReplaceTest.php
index cc36e47..8cf95ad 100644
--- a/core/modules/statistics/tests/src/Functional/StatisticsTokenReplaceTest.php
+++ b/core/modules/statistics/tests/src/Functional/StatisticsTokenReplaceTest.php
@@ -16,24 +16,24 @@ function testStatisticsTokenReplacement() {
     $language_interface = \Drupal::languageManager()->getCurrentLanguage();
 
     // Create user and node.
-    $user = $this->drupalCreateUser(array('create page content'));
+    $user = $this->drupalCreateUser(['create page content']);
     $this->drupalLogin($user);
-    $node = $this->drupalCreateNode(array('type' => 'page', 'uid' => $user->id()));
+    $node = $this->drupalCreateNode(['type' => 'page', 'uid' => $user->id()]);
 
     // Hit the node.
     $this->drupalGet('node/' . $node->id());
     // Manually calling statistics.php, simulating ajax behavior.
     $nid = $node->id();
-    $post = http_build_query(array('nid' => $nid));
-    $headers = array('Content-Type' => 'application/x-www-form-urlencoded');
+    $post = http_build_query(['nid' => $nid]);
+    $headers = ['Content-Type' => 'application/x-www-form-urlencoded'];
     global $base_url;
     $stats_path = $base_url . '/' . drupal_get_path('module', 'statistics') . '/statistics.php';
     $client = \Drupal::httpClient();
-    $client->post($stats_path, array('headers' => $headers, 'body' => $post));
+    $client->post($stats_path, ['headers' => $headers, 'body' => $post]);
     $statistics = statistics_get($node->id());
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $tests['[node:total-count]'] = 1;
     $tests['[node:day-count]'] = 1;
     $tests['[node:last-view]'] = format_date($statistics['timestamp']);
@@ -43,8 +43,8 @@ function testStatisticsTokenReplacement() {
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
 
     foreach ($tests as $input => $expected) {
-      $output = \Drupal::token()->replace($input, array('node' => $node), array('langcode' => $language_interface->getId()));
-      $this->assertEqual($output, $expected, format_string('Statistics token %token replaced.', array('%token' => $input)));
+      $output = \Drupal::token()->replace($input, ['node' => $node], ['langcode' => $language_interface->getId()]);
+      $this->assertEqual($output, $expected, format_string('Statistics token %token replaced.', ['%token' => $input]));
     }
   }
 
diff --git a/core/modules/statistics/tests/src/Kernel/Migrate/d6/MigrateStatisticsConfigsTest.php b/core/modules/statistics/tests/src/Kernel/Migrate/d6/MigrateStatisticsConfigsTest.php
index 6bd5394..da6ab30 100644
--- a/core/modules/statistics/tests/src/Kernel/Migrate/d6/MigrateStatisticsConfigsTest.php
+++ b/core/modules/statistics/tests/src/Kernel/Migrate/d6/MigrateStatisticsConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateStatisticsConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('statistics');
+  public static $modules = ['statistics'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/statistics/tests/src/Kernel/Migrate/d7/MigrateStatisticsConfigsTest.php b/core/modules/statistics/tests/src/Kernel/Migrate/d7/MigrateStatisticsConfigsTest.php
index e5f915b..36e270d 100644
--- a/core/modules/statistics/tests/src/Kernel/Migrate/d7/MigrateStatisticsConfigsTest.php
+++ b/core/modules/statistics/tests/src/Kernel/Migrate/d7/MigrateStatisticsConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateStatisticsConfigsTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('statistics');
+  public static $modules = ['statistics'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/syslog/src/Logger/SysLog.php b/core/modules/syslog/src/Logger/SysLog.php
index 002ecde..c2b73de 100644
--- a/core/modules/syslog/src/Logger/SysLog.php
+++ b/core/modules/syslog/src/Logger/SysLog.php
@@ -63,7 +63,7 @@ protected function openConnection() {
   /**
    * {@inheritdoc}
    */
-  public function log($level, $message, array $context = array()) {
+  public function log($level, $message, array $context = []) {
     global $base_url;
 
     // Ensure we have a connection available.
@@ -73,7 +73,7 @@ public function log($level, $message, array $context = array()) {
     $message_placeholders = $this->parser->parseMessagePlaceholders($message, $context);
     $message = empty($message_placeholders) ? $message : strtr($message, $message_placeholders);
 
-    $entry = strtr($this->config->get('format'), array(
+    $entry = strtr($this->config->get('format'), [
       '!base_url' => $base_url,
       '!timestamp' => $context['timestamp'],
       '!type' => $context['channel'],
@@ -83,7 +83,7 @@ public function log($level, $message, array $context = array()) {
       '!uid' => $context['uid'],
       '!link' => strip_tags($context['link']),
       '!message' => strip_tags($message),
-    ));
+    ]);
 
     syslog($level, $entry);
   }
diff --git a/core/modules/syslog/src/Tests/SyslogTest.php b/core/modules/syslog/src/Tests/SyslogTest.php
index a40847c..f4ab708 100644
--- a/core/modules/syslog/src/Tests/SyslogTest.php
+++ b/core/modules/syslog/src/Tests/SyslogTest.php
@@ -16,23 +16,23 @@ class SyslogTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('syslog');
+  public static $modules = ['syslog'];
 
   /**
    * Tests the syslog settings page.
    */
   function testSettings() {
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
 
     // If we're on Windows, there is no configuration form.
     if (defined('LOG_LOCAL6')) {
-      $this->drupalPostForm('admin/config/development/logging', array('syslog_facility' => LOG_LOCAL6), t('Save configuration'));
+      $this->drupalPostForm('admin/config/development/logging', ['syslog_facility' => LOG_LOCAL6], t('Save configuration'));
       $this->assertText(t('The configuration options have been saved.'));
 
       $this->drupalGet('admin/config/development/logging');
       if ($this->parse()) {
-        $field = $this->xpath('//option[@value=:value]', array(':value' => LOG_LOCAL6)); // Should be one field.
+        $field = $this->xpath('//option[@value=:value]', [':value' => LOG_LOCAL6]); // Should be one field.
         $this->assertTrue($field[0]['selected'] == 'selected', 'Facility value saved.');
       }
     }
diff --git a/core/modules/syslog/syslog.module b/core/modules/syslog/syslog.module
index 68fe614..2722702 100644
--- a/core/modules/syslog/syslog.module
+++ b/core/modules/syslog/syslog.module
@@ -17,7 +17,7 @@ function syslog_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.syslog':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Syslog module logs events by sending messages to the logging facility of your web server\'s operating system. Syslog is an operating system administrative logging tool that provides valuable information for use in system management and security auditing. Most suited to medium and large sites, Syslog provides filtering tools that allow messages to be routed by type and severity. For more information, see the <a href=":syslog">online documentation for the Syslog module</a>, as well as PHP\'s documentation pages for the <a href="http://php.net/manual/function.openlog.php">openlog</a> and <a href="http://php.net/manual/function.syslog.php">syslog</a> functions.', array(':syslog' => 'https://www.drupal.org/documentation/modules/syslog')) . '</p>';
+      $output .= '<p>' . t('The Syslog module logs events by sending messages to the logging facility of your web server\'s operating system. Syslog is an operating system administrative logging tool that provides valuable information for use in system management and security auditing. Most suited to medium and large sites, Syslog provides filtering tools that allow messages to be routed by type and severity. For more information, see the <a href=":syslog">online documentation for the Syslog module</a>, as well as PHP\'s documentation pages for the <a href="http://php.net/manual/function.openlog.php">openlog</a> and <a href="http://php.net/manual/function.syslog.php">syslog</a> functions.', [':syslog' => 'https://www.drupal.org/documentation/modules/syslog']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Logging for UNIX, Linux, and Mac OS X') . '</dt>';
@@ -35,27 +35,27 @@ function syslog_help($route_name, RouteMatchInterface $route_match) {
 function syslog_form_system_logging_settings_alter(&$form, FormStateInterface $form_state) {
   $config = \Drupal::configFactory()->getEditable('syslog.settings');
   $help = \Drupal::moduleHandler()->moduleExists('help') ? ' ' . \Drupal::l(t('More information'), new Url('help.page', ['name' => 'syslog'])) . '.' : NULL;
-  $form['syslog_identity'] = array(
+  $form['syslog_identity'] = [
     '#type'          => 'textfield',
     '#title'         => t('Syslog identity'),
     '#default_value' => $config->get('identity'),
     '#description'   => t('A string that will be prepended to every message logged to Syslog. If you have multiple sites logging to the same Syslog log file, a unique identity per site makes it easy to tell the log entries apart.') . $help,
-  );
+  ];
   if (defined('LOG_LOCAL0')) {
-    $form['syslog_facility'] = array(
+    $form['syslog_facility'] = [
       '#type'          => 'select',
       '#title'         => t('Syslog facility'),
       '#default_value' => $config->get('facility'),
       '#options'       => syslog_facility_list(),
       '#description'   => t('Depending on the system configuration, Syslog and other logging tools use this code to identify or filter messages from within the entire system log.') . $help,
-     );
+     ];
   }
-  $form['syslog_format'] = array(
+  $form['syslog_format'] = [
     '#type'          => 'textarea',
     '#title'         => t('Syslog format'),
     '#default_value' => $config->get('format'),
     '#description'   => t('Specify the format of the syslog entry. Available variables are: <dl><dt><code>!base_url</code></dt><dd>Base URL of the site.</dd><dt><code>!timestamp</code></dt><dd>Unix timestamp of the log entry.</dd><dt><code>!type</code></dt><dd>The category to which this message belongs.</dd><dt><code>!ip</code></dt><dd>IP address of the user triggering the message.</dd><dt><code>!request_uri</code></dt><dd>The requested URI.</dd><dt><code>!referer</code></dt><dd>HTTP Referer if available.</dd><dt><code>!uid</code></dt><dd>User ID.</dd><dt><code>!link</code></dt><dd>A link to associate with the message.</dd><dt><code>!message</code></dt><dd>The message to store in the log.</dd></dl>'),
-  );
+  ];
 
   $form['#submit'][] = 'syslog_logging_settings_submit';
 }
@@ -80,7 +80,7 @@ function syslog_logging_settings_submit($form, FormStateInterface $form_state) {
  *   An array of syslog facilities for UNIX/Linux.
  */
 function syslog_facility_list() {
-  return array(
+  return [
     LOG_LOCAL0 => 'LOG_LOCAL0',
     LOG_LOCAL1 => 'LOG_LOCAL1',
     LOG_LOCAL2 => 'LOG_LOCAL2',
@@ -89,5 +89,5 @@ function syslog_facility_list() {
     LOG_LOCAL5 => 'LOG_LOCAL5',
     LOG_LOCAL6 => 'LOG_LOCAL6',
     LOG_LOCAL7 => 'LOG_LOCAL7',
-  );
+  ];
 }
diff --git a/core/modules/syslog/tests/src/Kernel/Migrate/d6/MigrateSyslogConfigsTest.php b/core/modules/syslog/tests/src/Kernel/Migrate/d6/MigrateSyslogConfigsTest.php
index 39a71a3..aa66203 100644
--- a/core/modules/syslog/tests/src/Kernel/Migrate/d6/MigrateSyslogConfigsTest.php
+++ b/core/modules/syslog/tests/src/Kernel/Migrate/d6/MigrateSyslogConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateSyslogConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('syslog');
+  public static $modules = ['syslog'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/system/src/Controller/AdminController.php b/core/modules/system/src/Controller/AdminController.php
index 57c13f6..3da4b09 100644
--- a/core/modules/system/src/Controller/AdminController.php
+++ b/core/modules/system/src/Controller/AdminController.php
@@ -23,13 +23,13 @@ public function index() {
     }
 
     uasort($module_info, 'system_sort_modules_by_info_name');
-    $menu_items = array();
+    $menu_items = [];
 
     foreach ($module_info as $module => $info) {
       // Only display a section if there are any available tasks.
       if ($admin_tasks = system_get_module_admin_tasks($module, $info->info)) {
         // Sort links by title.
-        uasort($admin_tasks, array('\Drupal\Component\Utility\SortArray', 'sortByTitleElement'));
+        uasort($admin_tasks, ['\Drupal\Component\Utility\SortArray', 'sortByTitleElement']);
         // Move 'Configure permissions' links to the bottom of each section.
         $permission_key = "user.admin_permissions.$module";
         if (isset($admin_tasks[$permission_key])) {
@@ -38,14 +38,14 @@ public function index() {
           $admin_tasks[$permission_key] = $permission_task;
         }
 
-        $menu_items[$info->info['name']] = array($info->info['description'], $admin_tasks);
+        $menu_items[$info->info['name']] = [$info->info['description'], $admin_tasks];
       }
     }
 
-    $output = array(
+    $output = [
       '#theme' => 'system_admin_index',
       '#menu_items' => $menu_items,
-    );
+    ];
 
     return $output;
   }
diff --git a/core/modules/system/src/Controller/DbUpdateController.php b/core/modules/system/src/Controller/DbUpdateController.php
index fdedcc6..9e0a374 100644
--- a/core/modules/system/src/Controller/DbUpdateController.php
+++ b/core/modules/system/src/Controller/DbUpdateController.php
@@ -150,7 +150,7 @@ public function handle($op, Request $request) {
       $_SESSION['update_ignore_warnings'] = TRUE;
     }
 
-    $regions = array();
+    $regions = [];
     $requirements = update_check_requirements();
     $severity = drupal_requirements_severity($requirements);
     if ($severity == REQUIREMENT_ERROR || ($severity == REQUIREMENT_WARNING && empty($_SESSION['update_ignore_warnings']))) {
@@ -212,32 +212,32 @@ protected function info(Request $request) {
     $this->keyValueExpirableFactory->get('update')->deleteAll();
     $this->keyValueExpirableFactory->get('update_available_release')->deleteAll();
 
-    $build['info_header'] = array(
+    $build['info_header'] = [
       '#markup' => '<p>' . $this->t('Use this utility to update your database whenever a new release of Drupal or a module is installed.') . '</p><p>' . $this->t('For more detailed information, see the <a href="https://www.drupal.org/upgrade">upgrading handbook</a>. If you are unsure what these terms mean you should probably contact your hosting provider.') . '</p>',
-    );
+    ];
 
     $info[] = $this->t("<strong>Back up your code</strong>. Hint: when backing up module code, do not leave that backup in the 'modules' or 'sites/*/modules' directories as this may confuse Drupal's auto-discovery mechanism.");
-    $info[] = $this->t('Put your site into <a href=":url">maintenance mode</a>.', array(
+    $info[] = $this->t('Put your site into <a href=":url">maintenance mode</a>.', [
       ':url' => Url::fromRoute('system.site_maintenance_mode')->toString(TRUE)->getGeneratedUrl(),
-    ));
+    ]);
     $info[] = $this->t('<strong>Back up your database</strong>. This process will change your database values and in case of emergency you may need to revert to a backup.');
     $info[] = $this->t('Install your new files in the appropriate location, as described in the handbook.');
-    $build['info'] = array(
+    $build['info'] = [
       '#theme' => 'item_list',
       '#list_type' => 'ol',
       '#items' => $info,
-    );
-    $build['info_footer'] = array(
+    ];
+    $build['info_footer'] = [
       '#markup' => '<p>' . $this->t('When you have performed the steps above, you may proceed.') . '</p>',
-    );
+    ];
 
-    $build['link'] = array(
+    $build['link'] = [
       '#type' => 'link',
       '#title' => $this->t('Continue'),
-      '#attributes' => array('class' => array('button', 'button--primary')),
+      '#attributes' => ['class' => ['button', 'button--primary']],
       // @todo Revisit once https://www.drupal.org/node/2548095 is in.
       '#url' => Url::fromUri('base://selection'),
-    );
+    ];
     return $build;
   }
 
@@ -256,15 +256,15 @@ protected function selection(Request $request) {
 
     $count = 0;
     $incompatible_count = 0;
-    $build['start'] = array(
+    $build['start'] = [
       '#tree' => TRUE,
       '#type' => 'details',
-    );
+    ];
 
     // Ensure system.module's updates appear first.
-    $build['start']['system'] = array();
+    $build['start']['system'] = [];
 
-    $starting_updates = array();
+    $starting_updates = [];
     $incompatible_updates_exist = FALSE;
     $updates_per_module = [];
     foreach (['update', 'post_update'] as $update_type) {
@@ -278,30 +278,30 @@ protected function selection(Request $request) {
       }
       foreach ($updates as $module => $update) {
         if (!isset($update['start'])) {
-          $build['start'][$module] = array(
+          $build['start'][$module] = [
             '#type' => 'item',
             '#title' => $module . ' module',
             '#markup' => $update['warning'],
             '#prefix' => '<div class="messages messages--warning">',
             '#suffix' => '</div>',
-          );
+          ];
           $incompatible_updates_exist = TRUE;
           continue;
         }
         if (!empty($update['pending'])) {
           $updates_per_module += [$module => []];
           $updates_per_module[$module] = array_merge($updates_per_module[$module], $update['pending']);
-          $build['start'][$module] = array(
+          $build['start'][$module] = [
             '#type' => 'hidden',
             '#value' => $update['start'],
-          );
+          ];
           // Store the previous items in order to merge normal updates and
           // post_update functions together.
-          $build['start'][$module] = array(
+          $build['start'][$module] = [
             '#theme' => 'item_list',
             '#items' => $updates_per_module[$module],
             '#title' => $module . ' module',
-          );
+          ];
 
           if ($update_type === 'update') {
             $starting_updates[$module] = $update['start'];
@@ -329,7 +329,7 @@ protected function selection(Request $request) {
           $build['start'][$module_update_key]['#items'][$data['number']] .= '<div class="warning">' . $text . '</div>';
         }
         // Move the module containing this update to the top of the list.
-        $build['start'] = array($module_update_key => $build['start'][$module_update_key]) + $build['start'];
+        $build['start'] = [$module_update_key => $build['start'][$module_update_key]] + $build['start'];
       }
     }
 
@@ -341,25 +341,25 @@ protected function selection(Request $request) {
     if (empty($count)) {
       drupal_set_message($this->t('No pending updates.'));
       unset($build);
-      $build['links'] = array(
+      $build['links'] = [
         '#theme' => 'links',
         '#links' => $this->helpfulLinks($request),
-      );
+      ];
 
       // No updates to run, so caches won't get flushed later.  Clear them now.
       drupal_flush_all_caches();
     }
     else {
-      $build['help'] = array(
+      $build['help'] = [
         '#markup' => '<p>' . $this->t('The version of Drupal you are updating from has been automatically detected.') . '</p>',
         '#weight' => -5,
-      );
+      ];
       if ($incompatible_count) {
         $build['start']['#title'] = $this->formatPlural(
           $count,
           '1 pending update (@number_applied to be applied, @number_incompatible skipped)',
           '@count pending updates (@number_applied to be applied, @number_incompatible skipped)',
-          array('@number_applied' => $count - $incompatible_count, '@number_incompatible' => $incompatible_count)
+          ['@number_applied' => $count - $incompatible_count, '@number_incompatible' => $incompatible_count]
         );
       }
       else {
@@ -367,15 +367,15 @@ protected function selection(Request $request) {
       }
       // @todo Simplify with https://www.drupal.org/node/2548095
       $base_url = str_replace('/update.php', '', $request->getBaseUrl());
-      $url = (new Url('system.db_update', array('op' => 'run')))->setOption('base_url', $base_url);
-      $build['link'] = array(
+      $url = (new Url('system.db_update', ['op' => 'run']))->setOption('base_url', $base_url);
+      $build['link'] = [
         '#type' => 'link',
         '#title' => $this->t('Apply pending updates'),
-        '#attributes' => array('class' => array('button', 'button--primary')),
+        '#attributes' => ['class' => ['button', 'button--primary']],
         '#weight' => 5,
         '#url' => $url,
         '#access' => $url->access($this->currentUser()),
-      );
+      ];
     }
 
     return $build;
@@ -397,24 +397,24 @@ protected function results(Request $request) {
     // Report end result.
     $dblog_exists = $this->moduleHandler->moduleExists('dblog');
     if ($dblog_exists && $this->account->hasPermission('access site reports')) {
-      $log_message = $this->t('All errors have been <a href=":url">logged</a>.', array(
+      $log_message = $this->t('All errors have been <a href=":url">logged</a>.', [
         ':url' => Url::fromRoute('dblog.overview')->setOption('base_url', $base_url)->toString(TRUE)->getGeneratedUrl(),
-      ));
+      ]);
     }
     else {
       $log_message = $this->t('All errors have been logged.');
     }
 
     if (!empty($_SESSION['update_success'])) {
-      $message = '<p>' . $this->t('Updates were attempted. If you see no failures below, you may proceed happily back to your <a href=":url">site</a>. Otherwise, you may need to update your database manually.', array(':url' => Url::fromRoute('<front>')->setOption('base_url', $base_url)->toString(TRUE)->getGeneratedUrl())) . ' ' . $log_message . '</p>';
+      $message = '<p>' . $this->t('Updates were attempted. If you see no failures below, you may proceed happily back to your <a href=":url">site</a>. Otherwise, you may need to update your database manually.', [':url' => Url::fromRoute('<front>')->setOption('base_url', $base_url)->toString(TRUE)->getGeneratedUrl()]) . ' ' . $log_message . '</p>';
     }
     else {
       $last = reset($_SESSION['updates_remaining']);
       list($module, $version) = array_pop($last);
-      $message = '<p class="error">' . $this->t('The update process was aborted prematurely while running <strong>update #@version in @module.module</strong>.', array(
+      $message = '<p class="error">' . $this->t('The update process was aborted prematurely while running <strong>update #@version in @module.module</strong>.', [
         '@version' => $version,
         '@module' => $module,
-      )) . ' ' . $log_message;
+      ]) . ' ' . $log_message;
       if ($dblog_exists) {
         $message .= ' ' . $this->t('You may need to check the <code>watchdog</code> database table manually.');
       }
@@ -425,23 +425,23 @@ protected function results(Request $request) {
       $message .= '<p>' . $this->t("<strong>Reminder: don't forget to set the <code>\$settings['update_free_access']</code> value in your <code>settings.php</code> file back to <code>FALSE</code>.</strong>") . '</p>';
     }
 
-    $build['message'] = array(
+    $build['message'] = [
       '#markup' => $message,
-    );
-    $build['links'] = array(
+    ];
+    $build['links'] = [
       '#theme' => 'links',
       '#links' => $this->helpfulLinks($request),
-    );
+    ];
 
     // Output a list of info messages.
     if (!empty($_SESSION['update_results'])) {
-      $all_messages = array();
+      $all_messages = [];
       foreach ($_SESSION['update_results'] as $module => $updates) {
         if ($module != '#abort') {
           $module_has_message = FALSE;
-          $info_messages = array();
+          $info_messages = [];
           foreach ($updates as $name => $queries) {
-            $messages = array();
+            $messages = [];
             foreach ($queries as $query) {
               // If there is no message for this update, don't show anything.
               if (empty($query['query'])) {
@@ -449,16 +449,16 @@ protected function results(Request $request) {
               }
 
               if ($query['success']) {
-                $messages[] = array(
-                  '#wrapper_attributes' => array('class' => array('success')),
+                $messages[] = [
+                  '#wrapper_attributes' => ['class' => ['success']],
                   '#markup' => $query['query'],
-                );
+                ];
               }
               else {
-                $messages[] = array(
-                  '#wrapper_attributes' => array('class' => array('failure')),
+                $messages[] = [
+                  '#wrapper_attributes' => ['class' => ['failure']],
                   '#markup' => '<strong>' . $this->t('Failed:') . '</strong> ' . $query['query'],
-                );
+                ];
               }
             }
 
@@ -470,32 +470,32 @@ protected function results(Request $request) {
               else {
                 $title = $this->t('Update @name', ['@name' => trim($name, '_')]);
               }
-              $info_messages[] = array(
+              $info_messages[] = [
                 '#theme' => 'item_list',
                 '#items' => $messages,
                 '#title' => $title,
-              );
+              ];
             }
           }
 
           // If there were any messages then prefix them with the module name
           // and add it to the global message list.
           if ($module_has_message) {
-            $all_messages[] = array(
+            $all_messages[] = [
               '#type' => 'container',
-              '#prefix' => '<h3>' . $this->t('@module module', array('@module' => $module)) . '</h3>',
+              '#prefix' => '<h3>' . $this->t('@module module', ['@module' => $module]) . '</h3>',
               '#children' => $info_messages,
-            );
+            ];
           }
         }
       }
       if ($all_messages) {
-        $build['query_messages'] = array(
+        $build['query_messages'] = [
           '#type' => 'container',
           '#children' => $all_messages,
-          '#attributes' => array('class' => array('update-results')),
+          '#attributes' => ['class' => ['update-results']],
           '#prefix' => '<h2>' . $this->t('The following updates returned messages:') . '</h2>',
-        );
+        ];
       }
     }
     unset($_SESSION['update_results']);
@@ -515,17 +515,17 @@ protected function results(Request $request) {
    *   A render array.
    */
   public function requirements($severity, array $requirements, Request $request) {
-    $options = $severity == REQUIREMENT_WARNING ? array('continue' => 1) : array();
+    $options = $severity == REQUIREMENT_WARNING ? ['continue' => 1] : [];
     // @todo Revisit once https://www.drupal.org/node/2548095 is in. Something
     // like Url::fromRoute('system.db_update')->setOptions() should then be
     // possible.
     $try_again_url = Url::fromUri($request->getUriForPath(''))->setOptions(['query' => $options])->toString(TRUE)->getGeneratedUrl();
 
-    $build['status_report'] = array(
+    $build['status_report'] = [
       '#type' => 'status_report',
       '#requirements' => $requirements,
-      '#suffix' => $this->t('Check the messages and <a href=":url">try again</a>.', array(':url' => $try_again_url))
-    );
+      '#suffix' => $this->t('Check the messages and <a href=":url">try again</a>.', [':url' => $try_again_url])
+    ];
 
     $build['#title'] = $this->t('Requirements problem');
     return $build;
@@ -543,19 +543,19 @@ public function requirements($severity, array $requirements, Request $request) {
    */
   protected function updateTasksList($active = NULL) {
     // Default list of tasks.
-    $tasks = array(
+    $tasks = [
       'requirements' => $this->t('Verify requirements'),
       'info' => $this->t('Overview'),
       'selection' => $this->t('Review updates'),
       'run' => $this->t('Run updates'),
       'results' => $this->t('Review log'),
-    );
+    ];
 
-    $task_list = array(
+    $task_list = [
       '#theme' => 'maintenance_task_list',
       '#items' => $tasks,
       '#active' => $active,
-    );
+    ];
     return $task_list;
   }
 
@@ -576,7 +576,7 @@ protected function triggerBatch(Request $request) {
       $this->state->set('system.maintenance_mode', TRUE);
     }
 
-    $operations = array();
+    $operations = [];
 
     // Resolve any update dependencies to determine the actual updates that will
     // be run and the order they will be run in.
@@ -587,9 +587,9 @@ protected function triggerBatch(Request $request) {
     // batch API can pass in to the batch operation each time it is called. (We
     // do not store the entire update dependency array here because it is
     // potentially very large.)
-    $dependency_map = array();
+    $dependency_map = [];
     foreach ($updates as $function => $update) {
-      $dependency_map[$function] = !empty($update['reverse_paths']) ? array_keys($update['reverse_paths']) : array();
+      $dependency_map[$function] = !empty($update['reverse_paths']) ? array_keys($update['reverse_paths']) : [];
     }
 
     // Determine updates to be performed.
@@ -602,7 +602,7 @@ protected function triggerBatch(Request $request) {
           drupal_set_installed_schema_version($update['module'], $update['number'] - 1);
           unset($start[$update['module']]);
         }
-        $operations[] = array('update_do_one', array($update['module'], $update['number'], $dependency_map[$function]));
+        $operations[] = ['update_do_one', [$update['module'], $update['number'], $dependency_map[$function]]];
       }
     }
 
@@ -618,12 +618,12 @@ protected function triggerBatch(Request $request) {
     }
 
     $batch['operations'] = $operations;
-    $batch += array(
+    $batch += [
       'title' => $this->t('Updating'),
       'init_message' => $this->t('Starting updates'),
       'error_message' => $this->t('An unrecoverable error has occurred. You can find the error message below. It is advised to copy it to the clipboard for reference.'),
-      'finished' => array('\Drupal\system\Controller\DbUpdateController', 'batchFinished'),
-    );
+      'finished' => ['\Drupal\system\Controller\DbUpdateController', 'batchFinished'],
+    ];
     batch_set($batch);
 
     // @todo Revisit once https://www.drupal.org/node/2548095 is in.
@@ -673,15 +673,15 @@ public static function batchFinished($success, $results, $operations) {
   protected function helpfulLinks(Request $request) {
     // @todo Simplify with https://www.drupal.org/node/2548095
     $base_url = str_replace('/update.php', '', $request->getBaseUrl());
-    $links['front'] = array(
+    $links['front'] = [
       'title' => $this->t('Front page'),
       'url' => Url::fromRoute('<front>')->setOption('base_url', $base_url),
-    );
+    ];
     if ($this->account->hasPermission('access administration pages')) {
-      $links['admin-pages'] = array(
+      $links['admin-pages'] = [
         'title' => $this->t('Administration pages'),
         'url' => Url::fromRoute('system.admin')->setOption('base_url', $base_url),
-      );
+      ];
     }
     return $links;
   }
@@ -693,7 +693,7 @@ protected function helpfulLinks(Request $request) {
    *   The module updates that can be performed.
    */
   protected function getModuleUpdates() {
-    $return = array();
+    $return = [];
     $updates = update_get_update_list();
     foreach ($updates as $module => $update) {
       $return[$module] = $update['start'];
diff --git a/core/modules/system/src/Controller/EntityAutocompleteController.php b/core/modules/system/src/Controller/EntityAutocompleteController.php
index 53ec818..974c2de 100644
--- a/core/modules/system/src/Controller/EntityAutocompleteController.php
+++ b/core/modules/system/src/Controller/EntityAutocompleteController.php
@@ -77,7 +77,7 @@ public static function create(ContainerInterface $container) {
    *   or if it does not match the stored data.
    */
   public function handleAutocomplete(Request $request, $target_type, $selection_handler, $selection_settings_key) {
-    $matches = array();
+    $matches = [];
     // Get the typed string from the URL, if it exists.
     if ($input = $request->query->get('q')) {
       $typed_string = Tags::explode($input);
diff --git a/core/modules/system/src/Controller/SystemController.php b/core/modules/system/src/Controller/SystemController.php
index f25e832..4af1dcb 100644
--- a/core/modules/system/src/Controller/SystemController.php
+++ b/core/modules/system/src/Controller/SystemController.php
@@ -100,19 +100,19 @@ public static function create(ContainerInterface $container) {
   public function overview($link_id) {
     // Check for status report errors.
     if ($this->systemManager->checkRequirements() && $this->currentUser()->hasPermission('administer site configuration')) {
-      drupal_set_message($this->t('One or more problems were detected with your Drupal installation. Check the <a href=":status">status report</a> for more information.', array(':status' => $this->url('system.status'))), 'error');
+      drupal_set_message($this->t('One or more problems were detected with your Drupal installation. Check the <a href=":status">status report</a> for more information.', [':status' => $this->url('system.status')]), 'error');
     }
     // Load all menu links below it.
     $parameters = new MenuTreeParameters();
     $parameters->setRoot($link_id)->excludeRoot()->setTopLevelOnly()->onlyEnabledLinks();
     $tree = $this->menuLinkTree->load(NULL, $parameters);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ];
     $tree = $this->menuLinkTree->transform($tree, $manipulators);
     $tree_access_cacheability = new CacheableMetadata();
-    $blocks = array();
+    $blocks = [];
     foreach ($tree as $key => $element) {
       $tree_access_cacheability = $tree_access_cacheability->merge(CacheableMetadata::createFromObject($element->access));
 
@@ -124,10 +124,10 @@ public function overview($link_id) {
       $link = $element->link;
       $block['title'] = $link->getTitle();
       $block['description'] = $link->getDescription();
-      $block['content'] = array(
+      $block['content'] = [
         '#theme' => 'admin_block_content',
         '#content' => $this->systemManager->getAdminBlock($link),
-      );
+      ];
 
       if (!empty($block['content']['#content'])) {
         $blocks[$key] = $block;
@@ -161,7 +161,7 @@ public function overview($link_id) {
    * @return \Symfony\Component\HttpFoundation\RedirectResponse
    */
   public function compactPage($mode) {
-    user_cookie_save(array('admin_compact_mode' => ($mode == 'on')));
+    user_cookie_save(['admin_compact_mode' => ($mode == 'on')]);
     return $this->redirect('<front>');
   }
 
@@ -187,9 +187,9 @@ public function themesPage() {
     uasort($themes, 'system_sort_modules_by_info_name');
 
     $theme_default = $config->get('default');
-    $theme_groups  = array('installed' => array(), 'uninstalled' => array());
+    $theme_groups  = ['installed' => [], 'uninstalled' => []];
     $admin_theme = $config->get('admin');
-    $admin_theme_options = array();
+    $admin_theme_options = [];
 
     foreach ($themes as &$theme) {
       if (!empty($theme->info['hidden'])) {
@@ -206,17 +206,17 @@ public function themesPage() {
         $theme_keys[] = $theme->getName();
       }
       else {
-        $theme_keys = array($theme->getName());
+        $theme_keys = [$theme->getName()];
       }
       // Look for a screenshot in the current theme or in its closest ancestor.
       foreach (array_reverse($theme_keys) as $theme_key) {
         if (isset($themes[$theme_key]) && file_exists($themes[$theme_key]->info['screenshot'])) {
-          $theme->screenshot = array(
+          $theme->screenshot = [
             'uri' => $themes[$theme_key]->info['screenshot'],
-            'alt' => $this->t('Screenshot for @theme theme', array('@theme' => $theme->info['name'])),
-            'title' => $this->t('Screenshot for @theme theme', array('@theme' => $theme->info['name'])),
-            'attributes' => array('class' => array('screenshot')),
-          );
+            'alt' => $this->t('Screenshot for @theme theme', ['@theme' => $theme->info['name']]),
+            'title' => $this->t('Screenshot for @theme theme', ['@theme' => $theme->info['name']]),
+            'attributes' => ['class' => ['screenshot']],
+          ];
           break;
         }
       }
@@ -233,16 +233,16 @@ public function themesPage() {
         // Confirm that the theme engine is available.
         $theme->incompatible_engine = isset($theme->info['engine']) && !isset($theme->owner);
       }
-      $theme->operations = array();
+      $theme->operations = [];
       if (!empty($theme->status) || !$theme->incompatible_core && !$theme->incompatible_php && !$theme->incompatible_base && !$theme->incompatible_engine) {
         // Create the operations links.
         $query['theme'] = $theme->getName();
         if ($this->themeAccess->checkAccess($theme->getName())) {
-          $theme->operations[] = array(
+          $theme->operations[] = [
             'title' => $this->t('Settings'),
             'url' => Url::fromRoute('system.theme_settings_theme', ['theme' => $theme->getName()]),
-            'attributes' => array('title' => $this->t('Settings for @theme theme', array('@theme' => $theme->info['name']))),
-          );
+            'attributes' => ['title' => $this->t('Settings for @theme theme', ['@theme' => $theme->info['name']])],
+          ];
         }
         if (!empty($theme->status)) {
           if (!$theme->is_default) {
@@ -257,40 +257,40 @@ public function themesPage() {
               }
             }
             if ($theme_uninstallable) {
-              $theme->operations[] = array(
+              $theme->operations[] = [
                 'title' => $this->t('Uninstall'),
                 'url' => Url::fromRoute('system.theme_uninstall'),
                 'query' => $query,
-                'attributes' => array('title' => $this->t('Uninstall @theme theme', array('@theme' => $theme->info['name']))),
-              );
+                'attributes' => ['title' => $this->t('Uninstall @theme theme', ['@theme' => $theme->info['name']])],
+              ];
             }
-            $theme->operations[] = array(
+            $theme->operations[] = [
               'title' => $this->t('Set as default'),
               'url' => Url::fromRoute('system.theme_set_default'),
               'query' => $query,
-              'attributes' => array('title' => $this->t('Set @theme as default theme', array('@theme' => $theme->info['name']))),
-            );
+              'attributes' => ['title' => $this->t('Set @theme as default theme', ['@theme' => $theme->info['name']])],
+            ];
           }
           $admin_theme_options[$theme->getName()] = $theme->info['name'];
         }
         else {
-          $theme->operations[] = array(
+          $theme->operations[] = [
             'title' => $this->t('Install'),
             'url' => Url::fromRoute('system.theme_install'),
             'query' => $query,
-            'attributes' => array('title' => $this->t('Install @theme theme', array('@theme' => $theme->info['name']))),
-          );
-          $theme->operations[] = array(
+            'attributes' => ['title' => $this->t('Install @theme theme', ['@theme' => $theme->info['name']])],
+          ];
+          $theme->operations[] = [
             'title' => $this->t('Install and set as default'),
             'url' => Url::fromRoute('system.theme_set_default'),
             'query' => $query,
-            'attributes' => array('title' => $this->t('Install @theme as default theme', array('@theme' => $theme->info['name']))),
-          );
+            'attributes' => ['title' => $this->t('Install @theme as default theme', ['@theme' => $theme->info['name']])],
+          ];
         }
       }
 
       // Add notes to default and administration theme.
-      $theme->notes = array();
+      $theme->notes = [];
       if ($theme->is_default) {
         $theme->notes[] = $this->t('default theme');
       }
@@ -303,9 +303,9 @@ public function themesPage() {
     }
 
     // There are two possible theme groups.
-    $theme_group_titles = array(
+    $theme_group_titles = [
       'installed' => $this->formatPlural(count($theme_groups['installed']), 'Installed theme', 'Installed themes'),
-    );
+    ];
     if (!empty($theme_groups['uninstalled'])) {
       $theme_group_titles['uninstalled'] = $this->formatPlural(count($theme_groups['uninstalled']), 'Uninstalled theme', 'Uninstalled themes');
     }
@@ -313,12 +313,12 @@ public function themesPage() {
     uasort($theme_groups['installed'], 'system_sort_themes');
     $this->moduleHandler()->alter('system_themes_page', $theme_groups);
 
-    $build = array();
-    $build[] = array(
+    $build = [];
+    $build[] = [
       '#theme' => 'system_themes_page',
       '#theme_groups' => $theme_groups,
       '#theme_group_titles' => $theme_group_titles,
-    );
+    ];
     $build[] = $this->formBuilder->getForm('Drupal\system\Form\ThemeAdminForm', $admin_theme_options);
 
     return $build;
diff --git a/core/modules/system/src/Controller/SystemInfoController.php b/core/modules/system/src/Controller/SystemInfoController.php
index 829d1fe..76c2c7a 100644
--- a/core/modules/system/src/Controller/SystemInfoController.php
+++ b/core/modules/system/src/Controller/SystemInfoController.php
@@ -63,7 +63,7 @@ public function php() {
       $output = ob_get_clean();
     }
     else {
-      $output = t('The phpinfo() function has been disabled for security reasons. For more information, visit <a href=":phpinfo">Enabling and disabling phpinfo()</a> handbook page.', array(':phpinfo' => 'https://www.drupal.org/node/243993'));
+      $output = t('The phpinfo() function has been disabled for security reasons. For more information, visit <a href=":phpinfo">Enabling and disabling phpinfo()</a> handbook page.', [':phpinfo' => 'https://www.drupal.org/node/243993']);
     }
     return new Response($output);
   }
diff --git a/core/modules/system/src/Controller/ThemeController.php b/core/modules/system/src/Controller/ThemeController.php
index e135356..9160085 100644
--- a/core/modules/system/src/Controller/ThemeController.php
+++ b/core/modules/system/src/Controller/ThemeController.php
@@ -71,15 +71,15 @@ public function uninstall(Request $request) {
       if (!empty($themes[$theme])) {
         // Do not uninstall the default or admin theme.
         if ($theme === $config->get('default') || $theme === $config->get('admin')) {
-          drupal_set_message($this->t('%theme is the default theme and cannot be uninstalled.', array('%theme' => $themes[$theme]->info['name'])), 'error');
+          drupal_set_message($this->t('%theme is the default theme and cannot be uninstalled.', ['%theme' => $themes[$theme]->info['name']]), 'error');
         }
         else {
-          $this->themeHandler->uninstall(array($theme));
-          drupal_set_message($this->t('The %theme theme has been uninstalled.', array('%theme' => $themes[$theme]->info['name'])));
+          $this->themeHandler->uninstall([$theme]);
+          drupal_set_message($this->t('The %theme theme has been uninstalled.', ['%theme' => $themes[$theme]->info['name']]));
         }
       }
       else {
-        drupal_set_message($this->t('The %theme theme was not found.', array('%theme' => $theme)), 'error');
+        drupal_set_message($this->t('The %theme theme was not found.', ['%theme' => $theme]), 'error');
       }
 
       return $this->redirect('system.themes_page');
@@ -106,12 +106,12 @@ public function install(Request $request) {
 
     if (isset($theme)) {
       try {
-        if ($this->themeHandler->install(array($theme))) {
+        if ($this->themeHandler->install([$theme])) {
           $themes = $this->themeHandler->listInfo();
-          drupal_set_message($this->t('The %theme theme has been installed.', array('%theme' => $themes[$theme]->info['name'])));
+          drupal_set_message($this->t('The %theme theme has been installed.', ['%theme' => $themes[$theme]->info['name']]));
         }
         else {
-          drupal_set_message($this->t('The %theme theme was not found.', array('%theme' => $theme)), 'error');
+          drupal_set_message($this->t('The %theme theme was not found.', ['%theme' => $theme]), 'error');
         }
       }
       catch (PreExistingConfigException $e) {
@@ -121,10 +121,10 @@ public function install(Request $request) {
             count($config_objects),
             'Unable to install @extension, %config_names already exists in active configuration.',
             'Unable to install @extension, %config_names already exist in active configuration.',
-            array(
+            [
               '%config_names' => implode(', ', $config_objects),
               '@extension' => $theme,
-            )),
+            ]),
           'error'
         );
       }
@@ -160,7 +160,7 @@ public function setDefaultTheme(Request $request) {
 
       // Check if the specified theme is one recognized by the system.
       // Or try to install the theme.
-      if (isset($themes[$theme]) || $this->themeHandler->install(array($theme))) {
+      if (isset($themes[$theme]) || $this->themeHandler->install([$theme])) {
         $themes = $this->themeHandler->listInfo();
 
         // Set the default theme.
@@ -171,17 +171,17 @@ public function setDefaultTheme(Request $request) {
         // theme.
         $admin_theme = $config->get('admin');
         if ($admin_theme != 0 && $admin_theme != $theme) {
-          drupal_set_message($this->t('Please note that the administration theme is still set to the %admin_theme theme; consequently, the theme on this page remains unchanged. All non-administrative sections of the site, however, will show the selected %selected_theme theme by default.', array(
+          drupal_set_message($this->t('Please note that the administration theme is still set to the %admin_theme theme; consequently, the theme on this page remains unchanged. All non-administrative sections of the site, however, will show the selected %selected_theme theme by default.', [
             '%admin_theme' => $themes[$admin_theme]->info['name'],
             '%selected_theme' => $themes[$theme]->info['name'],
-          )));
+          ]));
         }
         else {
-          drupal_set_message($this->t('%theme is now the default theme.', array('%theme' => $themes[$theme]->info['name'])));
+          drupal_set_message($this->t('%theme is now the default theme.', ['%theme' => $themes[$theme]->info['name']]));
         }
       }
       else {
-        drupal_set_message($this->t('The %theme theme was not found.', array('%theme' => $theme)), 'error');
+        drupal_set_message($this->t('The %theme theme was not found.', ['%theme' => $theme]), 'error');
       }
 
       return $this->redirect('system.themes_page');
diff --git a/core/modules/system/src/DateFormatAccessControlHandler.php b/core/modules/system/src/DateFormatAccessControlHandler.php
index 597d6cd..c9cee60 100644
--- a/core/modules/system/src/DateFormatAccessControlHandler.php
+++ b/core/modules/system/src/DateFormatAccessControlHandler.php
@@ -23,7 +23,7 @@ protected function checkAccess(EntityInterface $entity, $operation, AccountInter
       return AccessResult::allowed();
     }
     // Locked date formats cannot be updated or deleted.
-    elseif (in_array($operation, array('update', 'delete'))) {
+    elseif (in_array($operation, ['update', 'delete'])) {
       if ($entity->isLocked()) {
         return AccessResult::forbidden()->addCacheableDependency($entity);
       }
diff --git a/core/modules/system/src/Entity/Action.php b/core/modules/system/src/Entity/Action.php
index 9b27616..a412838 100644
--- a/core/modules/system/src/Entity/Action.php
+++ b/core/modules/system/src/Entity/Action.php
@@ -57,7 +57,7 @@ class Action extends ConfigEntityBase implements ActionConfigEntityInterface, En
    *
    * @var array
    */
-  protected $configuration = array();
+  protected $configuration = [];
 
   /**
    * The plugin ID of the action.
@@ -90,7 +90,7 @@ protected function getPluginCollection() {
    * {@inheritdoc}
    */
   public function getPluginCollections() {
-    return array('configuration' => $this->getPluginCollection());
+    return ['configuration' => $this->getPluginCollection()];
   }
 
   /**
diff --git a/core/modules/system/src/EventSubscriber/AdminRouteSubscriber.php b/core/modules/system/src/EventSubscriber/AdminRouteSubscriber.php
index 33eab02..b83fe7e 100644
--- a/core/modules/system/src/EventSubscriber/AdminRouteSubscriber.php
+++ b/core/modules/system/src/EventSubscriber/AdminRouteSubscriber.php
@@ -31,7 +31,7 @@ public static function getSubscribedEvents() {
     // Use a lower priority than \Drupal\field_ui\Routing\RouteSubscriber or
     // \Drupal\views\EventSubscriber\RouteSubscriber to ensure we add the option
     // to their routes.
-    $events[RoutingEvents::ALTER] = array('onAlterRoutes', -200);
+    $events[RoutingEvents::ALTER] = ['onAlterRoutes', -200];
 
     return $events;
   }
diff --git a/core/modules/system/src/FileDownloadController.php b/core/modules/system/src/FileDownloadController.php
index 8c95de2..08b1632 100644
--- a/core/modules/system/src/FileDownloadController.php
+++ b/core/modules/system/src/FileDownloadController.php
@@ -45,7 +45,7 @@ public function download(Request $request, $scheme = 'private') {
 
     if (file_stream_wrapper_valid_scheme($scheme) && file_exists($uri)) {
       // Let other modules provide headers and controls access to the file.
-      $headers = $this->moduleHandler()->invokeAll('file_download', array($uri));
+      $headers = $this->moduleHandler()->invokeAll('file_download', [$uri]);
 
       foreach ($headers as $result) {
         if ($result == -1) {
diff --git a/core/modules/system/src/Form/CronForm.php b/core/modules/system/src/Form/CronForm.php
index d19915d..d4726aa 100644
--- a/core/modules/system/src/Form/CronForm.php
+++ b/core/modules/system/src/Form/CronForm.php
@@ -98,27 +98,27 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['description'] = array(
+    $form['description'] = [
       '#markup' => '<p>' . t('Cron takes care of running periodic tasks like checking for updates and indexing content for search.') . '</p>',
-    );
-    $form['run'] = array(
+    ];
+    $form['run'] = [
       '#type' => 'submit',
       '#value' => t('Run cron'),
-    );
-    $status = '<p>' . $this->t('Last run: %time ago.', array('%time' => $this->dateFormatter->formatTimeDiffSince($this->state->get('system.cron_last')))) . '</p>';
-    $form['status'] = array(
+    ];
+    $status = '<p>' . $this->t('Last run: %time ago.', ['%time' => $this->dateFormatter->formatTimeDiffSince($this->state->get('system.cron_last'))]) . '</p>';
+    $form['status'] = [
       '#markup' => $status,
-    );
+    ];
 
-    $cron_url = $this->url('system.cron', array('key' => $this->state->get('system.cron_key')), array('absolute' => TRUE));
-    $form['cron_url'] = array(
-      '#markup' => '<p>' . t('To run cron from outside the site, go to <a href=":cron">@cron</a>', array(':cron' => $cron_url, '@cron' => $cron_url)) . '</p>',
-    );
+    $cron_url = $this->url('system.cron', ['key' => $this->state->get('system.cron_key')], ['absolute' => TRUE]);
+    $form['cron_url'] = [
+      '#markup' => '<p>' . t('To run cron from outside the site, go to <a href=":cron">@cron</a>', [':cron' => $cron_url, '@cron' => $cron_url]) . '</p>',
+    ];
 
     if (!$this->moduleHandler->moduleExists('automated_cron')) {
-      $form['automated_cron'] = array(
+      $form['automated_cron'] = [
         '#markup' => $this->t('Enable the <em>Automated Cron</em> module to allow cron execution at the end of a server response.'),
-      );
+      ];
     }
 
     $form['cron'] = [
@@ -127,12 +127,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       '#open' => TRUE,
     ];
 
-    $form['cron']['logging'] = array(
+    $form['cron']['logging'] = [
       '#type' => 'checkbox',
       '#title' => t('Detailed cron logging'),
       '#default_value' => $this->config('system.cron')->get('logging'),
       '#description' => 'Run times of individual cron jobs will be written to watchdog',
-    );
+    ];
 
     $form['actions']['#type'] = 'actions';
     $form['actions']['submit'] = [
diff --git a/core/modules/system/src/Form/DateFormatDeleteForm.php b/core/modules/system/src/Form/DateFormatDeleteForm.php
index a8e1c04..901c34b 100644
--- a/core/modules/system/src/Form/DateFormatDeleteForm.php
+++ b/core/modules/system/src/Form/DateFormatDeleteForm.php
@@ -41,9 +41,9 @@ public static function create(ContainerInterface $container) {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return t('Are you sure you want to delete the format %name : %format?', array(
+    return t('Are you sure you want to delete the format %name : %format?', [
       '%name' => $this->entity->label(),
-      '%format' => $this->dateFormatter->format(REQUEST_TIME, $this->entity->id()))
+      '%format' => $this->dateFormatter->format(REQUEST_TIME, $this->entity->id())]
     );
   }
 
diff --git a/core/modules/system/src/Form/DateFormatEditForm.php b/core/modules/system/src/Form/DateFormatEditForm.php
index cec0020..c63c0d7 100644
--- a/core/modules/system/src/Form/DateFormatEditForm.php
+++ b/core/modules/system/src/Form/DateFormatEditForm.php
@@ -15,7 +15,7 @@ class DateFormatEditForm extends DateFormatFormBase {
   public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
 
-    $now = t('Displayed as %date', array('%date' => $this->dateFormatter->format(REQUEST_TIME, $this->entity->id())));
+    $now = t('Displayed as %date', ['%date' => $this->dateFormatter->format(REQUEST_TIME, $this->entity->id())]);
     $form['date_format_pattern']['#field_suffix'] = ' <small data-drupal-date-formatter="preview">' . $now . '</small>';
     $form['date_format_pattern']['#default_value'] = $this->entity->getPattern();
 
diff --git a/core/modules/system/src/Form/DateFormatFormBase.php b/core/modules/system/src/Form/DateFormatFormBase.php
index adb24fa..ed6714f 100644
--- a/core/modules/system/src/Form/DateFormatFormBase.php
+++ b/core/modules/system/src/Form/DateFormatFormBase.php
@@ -76,26 +76,26 @@ public function exists($entity_id, array $element) {
    * {@inheritdoc}
    */
   public function form(array $form, FormStateInterface $form_state) {
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => 'Name',
       '#maxlength' => 100,
       '#description' => t('Name of the date format'),
       '#default_value' => $this->entity->label(),
-    );
+    ];
 
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'machine_name',
       '#description' => t('A unique machine-readable name. Can only contain lowercase letters, numbers, and underscores.'),
       '#disabled' => !$this->entity->isNew(),
       '#default_value' => $this->entity->id(),
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
         'replace_pattern' => '([^a-z0-9_]+)|(^custom$)',
         'error' => $this->t('The machine-readable name must be unique, and can only contain lowercase letters, numbers, and underscores. Additionally, it can not be the reserved word "custom".'),
-      ),
-    );
-    $form['date_format_pattern'] = array(
+      ],
+    ];
+    $form['date_format_pattern'] = [
       '#type' => 'textfield',
       '#title' => t('Format string'),
       '#maxlength' => 100,
@@ -105,14 +105,14 @@ public function form(array $form, FormStateInterface $form_state) {
         'data-drupal-date-formatter' => 'source',
       ],
       '#field_suffix' => ' <small class="js-hide" data-drupal-date-formatter="preview">' . $this->t('Displayed as %date_format', ['%date_format' => '']) . '</small>',
-    );
+    ];
 
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#type' => 'language_select',
       '#title' => t('Language'),
       '#languages' => LanguageInterface::STATE_ALL,
       '#default_value' => $this->entity->language()->getId(),
-    );
+    ];
     $form['#attached']['drupalSettings']['dateFormats'] = $this->dateFormatter->getSampleDateFormats();
     $form['#attached']['library'][] = 'system/drupal.system.date';
     return parent::form($form, $form_state);
diff --git a/core/modules/system/src/Form/FileSystemForm.php b/core/modules/system/src/Form/FileSystemForm.php
index 9271bf4..ff0b792 100644
--- a/core/modules/system/src/Form/FileSystemForm.php
+++ b/core/modules/system/src/Form/FileSystemForm.php
@@ -77,59 +77,59 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('system.file');
-    $form['file_public_path'] = array(
+    $form['file_public_path'] = [
       '#type' => 'item',
       '#title' => t('Public file system path'),
       '#markup' => PublicStream::basePath(),
       '#description' => t('A local file system path where public files will be stored. This directory must exist and be writable by Drupal. This directory must be relative to the Drupal installation directory and be accessible over the web. This must be changed in settings.php'),
-    );
+    ];
 
-    $form['file_public_base_url'] = array(
+    $form['file_public_base_url'] = [
       '#type' => 'item',
       '#title' => t('Public file base URL'),
       '#markup' => PublicStream::baseUrl(),
       '#description' => t('The base URL that will be used for public file URLs. This can be changed in settings.php'),
-    );
+    ];
 
-    $form['file_private_path'] = array(
+    $form['file_private_path'] = [
       '#type' => 'item',
       '#title' => t('Private file system path'),
       '#markup' => (PrivateStream::basePath() ? PrivateStream::basePath() : t('Not set')),
       '#description' => t('An existing local file system path for storing private files. It should be writable by Drupal and not accessible over the web. This must be changed in settings.php'),
-    );
+    ];
 
-    $form['file_temporary_path'] = array(
+    $form['file_temporary_path'] = [
       '#type' => 'textfield',
       '#title' => t('Temporary directory'),
       '#default_value' => $config->get('path.temporary'),
       '#maxlength' => 255,
       '#description' => t('A local file system path where temporary files will be stored. This directory should not be accessible over the web.'),
-      '#after_build' => array('system_check_directory'),
-    );
+      '#after_build' => ['system_check_directory'],
+    ];
     // Any visible, writeable wrapper can potentially be used for the files
     // directory, including a remote file system that integrates with a CDN.
     $options = $this->streamWrapperManager->getDescriptions(StreamWrapperInterface::WRITE_VISIBLE);
 
     if (!empty($options)) {
-      $form['file_default_scheme'] = array(
+      $form['file_default_scheme'] = [
         '#type' => 'radios',
         '#title' => t('Default download method'),
         '#default_value' => $config->get('default_scheme'),
         '#options' => $options,
         '#description' => t('This setting is used as the preferred download method. The use of public files is more efficient, but does not provide any access control.'),
-      );
+      ];
     }
 
-    $intervals = array(0, 21600, 43200, 86400, 604800, 2419200, 7776000);
-    $period = array_combine($intervals, array_map(array($this->dateFormatter, 'formatInterval'), $intervals));
+    $intervals = [0, 21600, 43200, 86400, 604800, 2419200, 7776000];
+    $period = array_combine($intervals, array_map([$this->dateFormatter, 'formatInterval'], $intervals));
     $period[0] = t('Never');
-    $form['temporary_maximum_age'] = array(
+    $form['temporary_maximum_age'] = [
       '#type' => 'select',
       '#title' => t('Delete orphaned files after'),
       '#default_value' => $config->get('temporary_maximum_age'),
       '#options' => $period,
       '#description' => t('Orphaned files are not referenced from any content but remain in the file system and may appear in administrative listings. <strong>Warning:</strong> If enabled, orphaned files will be permanently deleted and may not be recoverable.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/ImageToolkitForm.php b/core/modules/system/src/Form/ImageToolkitForm.php
index 39634ae..0e70b47 100644
--- a/core/modules/system/src/Form/ImageToolkitForm.php
+++ b/core/modules/system/src/Form/ImageToolkitForm.php
@@ -18,7 +18,7 @@ class ImageToolkitForm extends ConfigFormBase {
    *
    * @var \Drupal\Core\ImageToolkit\ImageToolkitInterface[]
    */
-  protected $availableToolkits = array();
+  protected $availableToolkits = [];
 
   /**
    * Constructs a ImageToolkitForm object.
@@ -66,30 +66,30 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $current_toolkit = $this->config('system.image')->get('toolkit');
 
-    $form['image_toolkit'] = array(
+    $form['image_toolkit'] = [
       '#type' => 'radios',
       '#title' => $this->t('Select an image processing toolkit'),
       '#default_value' => $current_toolkit,
-      '#options' => array(),
-    );
+      '#options' => [],
+    ];
 
     // If we have more than one image toolkit, allow the user to select the one
     // to use, and load each of the toolkits' settings form.
     foreach ($this->availableToolkits as $id => $toolkit) {
       $definition = $toolkit->getPluginDefinition();
       $form['image_toolkit']['#options'][$id] = $definition['title'];
-      $form['image_toolkit_settings'][$id] = array(
+      $form['image_toolkit_settings'][$id] = [
         '#type' => 'details',
-        '#title' => $this->t('@toolkit settings', array('@toolkit' => $definition['title'])),
+        '#title' => $this->t('@toolkit settings', ['@toolkit' => $definition['title']]),
         '#open' => TRUE,
         '#tree' => TRUE,
-        '#states' => array(
-          'visible' => array(
-            ':radio[name="image_toolkit"]' => array('value' => $id),
-          ),
-        ),
-      );
-      $form['image_toolkit_settings'][$id] += $toolkit->buildConfigurationForm(array(), $form_state);
+        '#states' => [
+          'visible' => [
+            ':radio[name="image_toolkit"]' => ['value' => $id],
+          ],
+        ],
+      ];
+      $form['image_toolkit_settings'][$id] += $toolkit->buildConfigurationForm([], $form_state);
     }
 
     return parent::buildForm($form, $form_state);
diff --git a/core/modules/system/src/Form/LoggingForm.php b/core/modules/system/src/Form/LoggingForm.php
index 22135e1..a305a4f 100644
--- a/core/modules/system/src/Form/LoggingForm.php
+++ b/core/modules/system/src/Form/LoggingForm.php
@@ -29,18 +29,18 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('system.logging');
-    $form['error_level'] = array(
+    $form['error_level'] = [
       '#type' => 'radios',
       '#title' => t('Error messages to display'),
       '#default_value' => $config->get('error_level'),
-      '#options' => array(
+      '#options' => [
         ERROR_REPORTING_HIDE => t('None'),
         ERROR_REPORTING_DISPLAY_SOME => t('Errors and warnings'),
         ERROR_REPORTING_DISPLAY_ALL => t('All messages'),
         ERROR_REPORTING_DISPLAY_VERBOSE => t('All messages, with backtrace information'),
-      ),
+      ],
       '#description' => t('It is recommended that sites running on production environments do not display any errors.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/ModulesListConfirmForm.php b/core/modules/system/src/Form/ModulesListConfirmForm.php
index 88452e0..5002660 100644
--- a/core/modules/system/src/Form/ModulesListConfirmForm.php
+++ b/core/modules/system/src/Form/ModulesListConfirmForm.php
@@ -36,7 +36,7 @@ class ModulesListConfirmForm extends ConfirmFormBase {
    *
    * @var array
    */
-  protected $modules = array();
+  protected $modules = [];
 
   /**
    * The module installer.
@@ -120,10 +120,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     $items = $this->buildMessageList();
-    $form['message'] = array(
+    $form['message'] = [
       '#theme' => 'item_list',
       '#items' => $items,
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
@@ -177,10 +177,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
             count($config_objects),
             'Unable to install @extension, %config_names already exists in active configuration.',
             'Unable to install @extension, %config_names already exist in active configuration.',
-            array(
+            [
               '%config_names' => implode(', ', $config_objects),
               '@extension' => $this->modules['install'][$e->getExtension()]
-            )),
+            ]),
           'error'
         );
         return;
@@ -194,10 +194,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       }
 
       $module_names = array_values($this->modules['install']);
-      drupal_set_message($this->formatPlural(count($module_names), 'Module %name has been enabled.', '@count modules have been enabled: %names.', array(
+      drupal_set_message($this->formatPlural(count($module_names), 'Module %name has been enabled.', '@count modules have been enabled: %names.', [
         '%name' => $module_names[0],
         '%names' => implode(', ', $module_names),
-      )));
+      ]));
     }
 
     $form_state->setRedirectUrl($this->getCancelUrl());
diff --git a/core/modules/system/src/Form/ModulesListForm.php b/core/modules/system/src/Form/ModulesListForm.php
index d98b8a1..28ff7ef 100644
--- a/core/modules/system/src/Form/ModulesListForm.php
+++ b/core/modules/system/src/Form/ModulesListForm.php
@@ -119,26 +119,26 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Include system.admin.inc so we can use the sort callbacks.
     $this->moduleHandler->loadInclude('system', 'inc', 'system.admin');
 
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('table-filter', 'js-show'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['table-filter', 'js-show'],
+      ],
+    ];
 
-    $form['filters']['text'] = array(
+    $form['filters']['text'] = [
       '#type' => 'search',
       '#title' => $this->t('Filter modules'),
       '#title_display' => 'invisible',
       '#size' => 30,
       '#placeholder' => $this->t('Filter by name or description'),
       '#description' => $this->t('Enter a part of the module name or description'),
-      '#attributes' => array(
-        'class' => array('table-filter-text'),
+      '#attributes' => [
+        'class' => ['table-filter-text'],
         'data-table' => '#system-modules',
         'autocomplete' => 'off',
-      ),
-    );
+      ],
+    ];
 
     // Sort all modules by their names.
     $modules = system_rebuild_module_data();
@@ -156,15 +156,15 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     // Add a wrapper around every package.
     foreach (Element::children($form['modules']) as $package) {
-      $form['modules'][$package] += array(
+      $form['modules'][$package] += [
         '#type' => 'details',
         '#title' => $this->t($package),
         '#open' => TRUE,
         '#theme' => 'system_modules_details',
-        '#attributes' => array('class' => array('package-listing')),
+        '#attributes' => ['class' => ['package-listing']],
         // Ensure that the "Core" package comes first.
         '#weight' => $package == 'Core' ? -10 : NULL,
-      );
+      ];
     }
 
     // If testing modules are shown, collapse the corresponding package by
@@ -174,15 +174,15 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Lastly, sort all packages by title.
-    uasort($form['modules'], array('\Drupal\Component\Utility\SortArray', 'sortByTitleProperty'));
+    uasort($form['modules'], ['\Drupal\Component\Utility\SortArray', 'sortByTitleProperty']);
 
     $form['#attached']['library'][] = 'system/drupal.system.modules';
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Install'),
       '#button_type' => 'primary',
-    );
+    ];
 
     return $form;
   }
@@ -201,9 +201,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    */
   protected function buildRow(array $modules, Extension $module, $distribution) {
     // Set the basic properties.
-    $row['#required'] = array();
-    $row['#requires'] = array();
-    $row['#required_by'] = array();
+    $row['#required'] = [];
+    $row['#requires'] = [];
+    $row['#required_by'] = [];
 
     $row['name']['#markup'] = $module->info['name'];
     $row['description']['#markup'] = $this->t($module->info['description']);
@@ -213,48 +213,48 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
     // implementation exists then the module provides an overview page, rather
     // than checking to see if the page exists, which is costly.
     if ($this->moduleHandler->moduleExists('help') && $module->status && in_array($module->getName(), $this->moduleHandler->getImplementations('help'))) {
-      $row['links']['help'] = array(
+      $row['links']['help'] = [
         '#type' => 'link',
         '#title' => $this->t('Help'),
         '#url' => Url::fromRoute('help.page', ['name' => $module->getName()]),
-        '#options' => array('attributes' => array('class' => array('module-link', 'module-link-help'), 'title' => $this->t('Help'))),
-      );
+        '#options' => ['attributes' => ['class' => ['module-link', 'module-link-help'], 'title' => $this->t('Help')]],
+      ];
     }
 
     // Generate link for module's permission, if the user has access to it.
     if ($module->status && $this->currentUser->hasPermission('administer permissions') && $this->permissionHandler->moduleProvidesPermissions($module->getName())) {
-      $row['links']['permissions'] = array(
+      $row['links']['permissions'] = [
         '#type' => 'link',
         '#title' => $this->t('Permissions'),
         '#url' => Url::fromRoute('user.admin_permissions'),
-        '#options' => array('fragment' => 'module-' . $module->getName(), 'attributes' => array('class' => array('module-link', 'module-link-permissions'), 'title' => $this->t('Configure permissions'))),
-      );
+        '#options' => ['fragment' => 'module-' . $module->getName(), 'attributes' => ['class' => ['module-link', 'module-link-permissions'], 'title' => $this->t('Configure permissions')]],
+      ];
     }
 
     // Generate link for module's configuration page, if it has one.
     if ($module->status && isset($module->info['configure'])) {
-      $route_parameters = isset($module->info['configure_parameters']) ? $module->info['configure_parameters'] : array();
+      $route_parameters = isset($module->info['configure_parameters']) ? $module->info['configure_parameters'] : [];
       if ($this->accessManager->checkNamedRoute($module->info['configure'], $route_parameters, $this->currentUser)) {
-        $row['links']['configure'] = array(
+        $row['links']['configure'] = [
           '#type' => 'link',
           '#title' => $this->t('Configure <span class="visually-hidden">the @module module</span>', ['@module' => $module->info['name']]),
           '#url' => Url::fromRoute($module->info['configure'], $route_parameters),
-          '#options' => array(
-            'attributes' => array(
-              'class' => array('module-link', 'module-link-configure'),
-            ),
-          ),
-        );
+          '#options' => [
+            'attributes' => [
+              'class' => ['module-link', 'module-link-configure'],
+            ],
+          ],
+        ];
       }
     }
 
     // Present a checkbox for installing and indicating the status of a module.
-    $row['enable'] = array(
+    $row['enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Install'),
       '#default_value' => (bool) $module->status,
       '#disabled' => (bool) $module->status,
-    );
+    ];
 
     // Disable the checkbox for required modules.
     if (!empty($module->info['required'])) {
@@ -268,24 +268,24 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
 
     // Initialize an empty array of reasons why the module is incompatible. Add
     // each reason as a separate element of the array.
-    $reasons = array();
+    $reasons = [];
 
     // Check the core compatibility.
     if ($module->info['core'] != \Drupal::CORE_COMPATIBILITY) {
       $compatible = FALSE;
-      $reasons[] = $this->t('This version is not compatible with Drupal @core_version and should be replaced.', array(
+      $reasons[] = $this->t('This version is not compatible with Drupal @core_version and should be replaced.', [
         '@core_version' => \Drupal::CORE_COMPATIBILITY,
-      ));
+      ]);
     }
 
     // Ensure this module is compatible with the currently installed version of PHP.
     if (version_compare(phpversion(), $module->info['php']) < 0) {
       $compatible = FALSE;
       $required = $module->info['php'] . (substr_count($module->info['php'], '.') < 2 ? '.*' : '');
-      $reasons[] = $this->t('This module requires PHP version @php_required and is incompatible with PHP version @php_version.', array(
+      $reasons[] = $this->t('This module requires PHP version @php_required and is incompatible with PHP version @php_version.', [
         '@php_required' => $required,
         '@php_version' => phpversion(),
-      ));
+      ]);
     }
 
     // If this module is not compatible, disable the checkbox.
@@ -299,7 +299,7 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
     // If this module requires other modules, add them to the array.
     foreach ($module->requires as $dependency => $version) {
       if (!isset($modules[$dependency])) {
-        $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">missing</span>)', array('@module' => Unicode::ucfirst($dependency)));
+        $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">missing</span>)', ['@module' => Unicode::ucfirst($dependency)]);
         $row['enable']['#disabled'] = TRUE;
       }
       // Only display visible modules.
@@ -308,25 +308,25 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
         // Disable the module's checkbox if it is incompatible with the
         // dependency's version.
         if ($incompatible_version = drupal_check_incompatibility($version, str_replace(\Drupal::CORE_COMPATIBILITY . '-', '', $modules[$dependency]->info['version']))) {
-          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">incompatible with</span> version @version)', array(
+          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">incompatible with</span> version @version)', [
             '@module' => $name . $incompatible_version,
             '@version' => $modules[$dependency]->info['version'],
-          ));
+          ]);
           $row['enable']['#disabled'] = TRUE;
         }
         // Disable the checkbox if the dependency is incompatible with this
         // version of Drupal core.
         elseif ($modules[$dependency]->info['core'] != \Drupal::CORE_COMPATIBILITY) {
-          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">incompatible with</span> this version of Drupal core)', array(
+          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-missing">incompatible with</span> this version of Drupal core)', [
             '@module' => $name,
-          ));
+          ]);
           $row['enable']['#disabled'] = TRUE;
         }
         elseif ($modules[$dependency]->status) {
-          $row['#requires'][$dependency] = $this->t('@module', array('@module' => $name));
+          $row['#requires'][$dependency] = $this->t('@module', ['@module' => $name]);
         }
         else {
-          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-disabled">disabled</span>)', array('@module' => $name));
+          $row['#requires'][$dependency] = $this->t('@module (<span class="admin-disabled">disabled</span>)', ['@module' => $name]);
         }
       }
     }
@@ -336,11 +336,11 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
     foreach ($module->required_by as $dependent => $version) {
       if (isset($modules[$dependent]) && empty($modules[$dependent]->info['hidden'])) {
         if ($modules[$dependent]->status == 1 && $module->status == 1) {
-          $row['#required_by'][$dependent] = $this->t('@module', array('@module' => $modules[$dependent]->info['name']));
+          $row['#required_by'][$dependent] = $this->t('@module', ['@module' => $modules[$dependent]->info['name']]);
           $row['enable']['#disabled'] = TRUE;
         }
         else {
-          $row['#required_by'][$dependent] = $this->t('@module (<span class="admin-disabled">disabled</span>)', array('@module' => $modules[$dependent]->info['name']));
+          $row['#required_by'][$dependent] = $this->t('@module (<span class="admin-disabled">disabled</span>)', ['@module' => $modules[$dependent]->info['name']]);
         }
       }
     }
@@ -359,11 +359,11 @@ protected function buildRow(array $modules, Extension $module, $distribution) {
    */
   protected function buildModuleList(FormStateInterface $form_state) {
     // Build a list of modules to install.
-    $modules = array(
-      'install' => array(),
-      'dependencies' => array(),
+    $modules = [
+      'install' => [],
+      'dependencies' => [],
       'experimental' => [],
-    );
+    ];
 
     $data = system_rebuild_module_data();
     foreach ($data as $name => $module) {
@@ -447,10 +447,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       try {
         $this->moduleInstaller->install(array_keys($modules['install']));
         $module_names = array_values($modules['install']);
-        drupal_set_message($this->formatPlural(count($module_names), 'Module %name has been enabled.', '@count modules have been enabled: %names.', array(
+        drupal_set_message($this->formatPlural(count($module_names), 'Module %name has been enabled.', '@count modules have been enabled: %names.', [
           '%name' => $module_names[0],
           '%names' => implode(', ', $module_names),
-        )));
+        ]));
       }
       catch (PreExistingConfigException $e) {
         $config_objects = $e->flattenConfigObjects($e->getConfigObjects());
@@ -459,10 +459,10 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
             count($config_objects),
             'Unable to install @extension, %config_names already exists in active configuration.',
             'Unable to install @extension, %config_names already exist in active configuration.',
-            array(
+            [
               '%config_names' => implode(', ', $config_objects),
               '@extension' => $modules['install'][$e->getExtension()]
-            )),
+            ]),
           'error'
         );
         return;
diff --git a/core/modules/system/src/Form/ModulesUninstallConfirmForm.php b/core/modules/system/src/Form/ModulesUninstallConfirmForm.php
index f4a4823..c72f240 100644
--- a/core/modules/system/src/Form/ModulesUninstallConfirmForm.php
+++ b/core/modules/system/src/Form/ModulesUninstallConfirmForm.php
@@ -51,7 +51,7 @@ class ModulesUninstallConfirmForm extends ConfirmFormBase {
    *
    * @var array
    */
-  protected $modules = array();
+  protected $modules = [];
 
   /**
    * Constructs a ModulesUninstallConfirmForm object.
@@ -135,12 +135,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $data = system_rebuild_module_data();
     $form['text']['#markup'] = '<p>' . $this->t('The following modules will be completely uninstalled from your site, and <em>all data from these modules will be lost</em>!') . '</p>';
-    $form['modules'] = array(
+    $form['modules'] = [
       '#theme' => 'item_list',
       '#items' => array_map(function ($module) use ($data) {
         return $data[$module]->info['name'];
       }, $this->modules),
-    );
+    ];
 
     // List the dependent entities.
     $this->addDependencyListsToForm($form, 'module', $this->modules, $this->configManager, $this->entityManager);
diff --git a/core/modules/system/src/Form/ModulesUninstallForm.php b/core/modules/system/src/Form/ModulesUninstallForm.php
index 92a15a7..80348c5 100644
--- a/core/modules/system/src/Form/ModulesUninstallForm.php
+++ b/core/modules/system/src/Form/ModulesUninstallForm.php
@@ -85,28 +85,28 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Include system.admin.inc so we can use the sort callbacks.
     $this->moduleHandler->loadInclude('system', 'inc', 'system.admin');
 
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('table-filter', 'js-show'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['table-filter', 'js-show'],
+      ],
+    ];
 
-    $form['filters']['text'] = array(
+    $form['filters']['text'] = [
       '#type' => 'search',
       '#title' => $this->t('Filter modules'),
       '#title_display' => 'invisible',
       '#size' => 30,
       '#placeholder' => $this->t('Filter by name or description'),
       '#description' => $this->t('Enter a part of the module name or description'),
-      '#attributes' => array(
-        'class' => array('table-filter-text'),
+      '#attributes' => [
+        'class' => ['table-filter-text'],
         'data-table' => '#system-modules-uninstall',
         'autocomplete' => 'off',
-      ),
-    );
+      ],
+    ];
 
-    $form['modules'] = array();
+    $form['modules'] = [];
 
     // Only build the rest of the form if there are any modules available to
     // uninstall;
@@ -120,18 +120,18 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     uasort($uninstallable, 'system_sort_modules_by_info_name');
     $validation_reasons = $this->moduleInstaller->validateUninstall(array_keys($uninstallable));
 
-    $form['uninstall'] = array('#tree' => TRUE);
+    $form['uninstall'] = ['#tree' => TRUE];
     foreach ($uninstallable as $module_key => $module) {
       $name = $module->info['name'] ?: $module->getName();
       $form['modules'][$module->getName()]['#module_name'] = $name;
       $form['modules'][$module->getName()]['name']['#markup'] = $name;
       $form['modules'][$module->getName()]['description']['#markup'] = $this->t($module->info['description']);
 
-      $form['uninstall'][$module->getName()] = array(
+      $form['uninstall'][$module->getName()] = [
         '#type' => 'checkbox',
-        '#title' => $this->t('Uninstall @module module', array('@module' => $name)),
+        '#title' => $this->t('Uninstall @module module', ['@module' => $name]),
         '#title_display' => 'invisible',
-      );
+      ];
 
       // If a validator returns reasons not to uninstall a module,
       // list the reasons and disable the check box.
@@ -152,11 +152,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     $form['#attached']['library'][] = 'system/drupal.system.modules';
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Uninstall'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/src/Form/PerformanceForm.php b/core/modules/system/src/Form/PerformanceForm.php
index d9e0917..a2e8592 100644
--- a/core/modules/system/src/Form/PerformanceForm.php
+++ b/core/modules/system/src/Form/PerformanceForm.php
@@ -100,64 +100,64 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $config = $this->config('system.performance');
 
-    $form['clear_cache'] = array(
+    $form['clear_cache'] = [
       '#type' => 'details',
       '#title' => t('Clear cache'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['clear_cache']['clear'] = array(
+    $form['clear_cache']['clear'] = [
       '#type' => 'submit',
       '#value' => t('Clear all caches'),
-      '#submit' => array('::submitCacheClear'),
-    );
+      '#submit' => ['::submitCacheClear'],
+    ];
 
-    $form['caching'] = array(
+    $form['caching'] = [
       '#type' => 'details',
       '#title' => t('Caching'),
       '#open' => TRUE,
       '#description' => $this->t('Note: Drupal provides an internal page cache module that is recommended for small to medium-sized websites.'),
-    );
+    ];
     // Identical options to the ones for block caching.
     // @see \Drupal\Core\Block\BlockBase::buildConfigurationForm()
-    $period = array(0, 60, 180, 300, 600, 900, 1800, 2700, 3600, 10800, 21600, 32400, 43200, 86400);
-    $period = array_map(array($this->dateFormatter, 'formatInterval'), array_combine($period, $period));
+    $period = [0, 60, 180, 300, 600, 900, 1800, 2700, 3600, 10800, 21600, 32400, 43200, 86400];
+    $period = array_map([$this->dateFormatter, 'formatInterval'], array_combine($period, $period));
     $period[0] = '<' . t('no caching') . '>';
-    $form['caching']['page_cache_maximum_age'] = array(
+    $form['caching']['page_cache_maximum_age'] = [
       '#type' => 'select',
       '#title' => t('Page cache maximum age'),
       '#default_value' => $config->get('cache.page.max_age'),
       '#options' => $period,
       '#description' => t('The maximum time a page can be cached by browsers and proxies. This is used as the value for max-age in Cache-Control headers.'),
-    );
+    ];
 
     $directory = 'public://';
     $is_writable = is_dir($directory) && is_writable($directory);
     $disabled = !$is_writable;
     $disabled_message = '';
     if (!$is_writable) {
-      $disabled_message = ' ' . t('<strong class="error">Set up the <a href=":file-system">public files directory</a> to make these optimizations available.</strong>', array(':file-system' => $this->url('system.file_system_settings')));
+      $disabled_message = ' ' . t('<strong class="error">Set up the <a href=":file-system">public files directory</a> to make these optimizations available.</strong>', [':file-system' => $this->url('system.file_system_settings')]);
     }
 
-    $form['bandwidth_optimization'] = array(
+    $form['bandwidth_optimization'] = [
       '#type' => 'details',
       '#title' => t('Bandwidth optimization'),
       '#open' => TRUE,
       '#description' => t('External resources can be optimized automatically, which can reduce both the size and number of requests made to your website.') . $disabled_message,
-    );
+    ];
 
-    $form['bandwidth_optimization']['preprocess_css'] = array(
+    $form['bandwidth_optimization']['preprocess_css'] = [
       '#type' => 'checkbox',
       '#title' => t('Aggregate CSS files'),
       '#default_value' => $config->get('css.preprocess'),
       '#disabled' => $disabled,
-    );
-    $form['bandwidth_optimization']['preprocess_js'] = array(
+    ];
+    $form['bandwidth_optimization']['preprocess_js'] = [
       '#type' => 'checkbox',
       '#title' => t('Aggregate JavaScript files'),
       '#default_value' => $config->get('js.preprocess'),
       '#disabled' => $disabled,
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/RegionalForm.php b/core/modules/system/src/Form/RegionalForm.php
index 9472a4c..c365fc0 100644
--- a/core/modules/system/src/Form/RegionalForm.php
+++ b/core/modules/system/src/Form/RegionalForm.php
@@ -67,76 +67,76 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Date settings:
     $zones = system_time_zones();
 
-    $form['locale'] = array(
+    $form['locale'] = [
       '#type' => 'details',
       '#title' => t('Locale'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['locale']['site_default_country'] = array(
+    $form['locale']['site_default_country'] = [
       '#type' => 'select',
       '#title' => t('Default country'),
       '#empty_value' => '',
       '#default_value' => $system_date->get('country.default'),
       '#options' => $countries,
-      '#attributes' => array('class' => array('country-detect')),
-    );
+      '#attributes' => ['class' => ['country-detect']],
+    ];
 
-    $form['locale']['date_first_day'] = array(
+    $form['locale']['date_first_day'] = [
       '#type' => 'select',
       '#title' => t('First day of week'),
       '#default_value' => $system_date->get('first_day'),
-      '#options' => array(0 => t('Sunday'), 1 => t('Monday'), 2 => t('Tuesday'), 3 => t('Wednesday'), 4 => t('Thursday'), 5 => t('Friday'), 6 => t('Saturday')),
-    );
+      '#options' => [0 => t('Sunday'), 1 => t('Monday'), 2 => t('Tuesday'), 3 => t('Wednesday'), 4 => t('Thursday'), 5 => t('Friday'), 6 => t('Saturday')],
+    ];
 
-    $form['timezone'] = array(
+    $form['timezone'] = [
       '#type' => 'details',
       '#title' => t('Time zones'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['timezone']['date_default_timezone'] = array(
+    $form['timezone']['date_default_timezone'] = [
       '#type' => 'select',
       '#title' => t('Default time zone'),
       '#default_value' => $system_date->get('timezone.default') ?: date_default_timezone_get(),
       '#options' => $zones,
-    );
+    ];
 
     $configurable_timezones = $system_date->get('timezone.user.configurable');
-    $form['timezone']['configurable_timezones'] = array(
+    $form['timezone']['configurable_timezones'] = [
       '#type' => 'checkbox',
       '#title' => t('Users may set their own time zone'),
       '#default_value' => $configurable_timezones,
-    );
+    ];
 
-    $form['timezone']['configurable_timezones_wrapper'] = array(
+    $form['timezone']['configurable_timezones_wrapper'] = [
       '#type' => 'container',
-      '#states' => array(
+      '#states' => [
         // Hide the user configured timezone settings when users are forced to use
         // the default setting.
-        'invisible' => array(
-          'input[name="configurable_timezones"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
-    $form['timezone']['configurable_timezones_wrapper']['empty_timezone_message'] = array(
+        'invisible' => [
+          'input[name="configurable_timezones"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
+    $form['timezone']['configurable_timezones_wrapper']['empty_timezone_message'] = [
       '#type' => 'checkbox',
       '#title' => t('Remind users at login if their time zone is not set'),
       '#default_value' => $system_date->get('timezone.user.warn'),
       '#description' => t('Only applied if users may set their own time zone.')
-    );
+    ];
 
-    $form['timezone']['configurable_timezones_wrapper']['user_default_timezone'] = array(
+    $form['timezone']['configurable_timezones_wrapper']['user_default_timezone'] = [
       '#type' => 'radios',
       '#title' => t('Time zone for new users'),
       '#default_value' => $system_date->get('timezone.user.default'),
-      '#options' => array(
+      '#options' => [
         DRUPAL_USER_TIMEZONE_DEFAULT => t('Default time zone'),
         DRUPAL_USER_TIMEZONE_EMPTY   => t('Empty time zone'),
         DRUPAL_USER_TIMEZONE_SELECT  => t('Users may set their own time zone at registration'),
-      ),
+      ],
       '#description' => t('Only applied if users may set their own time zone.')
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/RssFeedsForm.php b/core/modules/system/src/Form/RssFeedsForm.php
index 79aa69b..986ff11 100644
--- a/core/modules/system/src/Form/RssFeedsForm.php
+++ b/core/modules/system/src/Form/RssFeedsForm.php
@@ -29,31 +29,31 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $rss_config = $this->config('system.rss');
-    $form['feed_description'] = array(
+    $form['feed_description'] = [
       '#type' => 'textarea',
       '#title' => t('Feed description'),
       '#default_value' => $rss_config->get('channel.description'),
       '#description' => t('Description of your site, included in each feed.')
-    );
-    $options = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30);
-    $form['feed_default_items'] = array(
+    ];
+    $options = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30];
+    $form['feed_default_items'] = [
       '#type' => 'select',
       '#title' => t('Number of items in each feed'),
       '#default_value' => $rss_config->get('items.limit'),
       '#options' => array_combine($options, $options),
       '#description' => t('Default number of items to include in each feed.')
-    );
-    $form['feed_view_mode'] = array(
+    ];
+    $form['feed_view_mode'] = [
       '#type' => 'select',
       '#title' => t('Feed content'),
       '#default_value' => $rss_config->get('items.view_mode'),
-      '#options' => array(
+      '#options' => [
         'title' => t('Titles only'),
         'teaser' => t('Titles plus teaser'),
         'fulltext' => t('Full text'),
-      ),
+      ],
       '#description' => t('Global setting for the default display of content items in each feed.')
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/SiteInformationForm.php b/core/modules/system/src/Form/SiteInformationForm.php
index 92986d6..7173ebe 100644
--- a/core/modules/system/src/Form/SiteInformationForm.php
+++ b/core/modules/system/src/Form/SiteInformationForm.php
@@ -92,63 +92,63 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $site_mail = ini_get('sendmail_from');
     }
 
-    $form['site_information'] = array(
+    $form['site_information'] = [
       '#type' => 'details',
       '#title' => t('Site details'),
       '#open' => TRUE,
-    );
-    $form['site_information']['site_name'] = array(
+    ];
+    $form['site_information']['site_name'] = [
       '#type' => 'textfield',
       '#title' => t('Site name'),
       '#default_value' => $site_config->get('name'),
       '#required' => TRUE,
-    );
-    $form['site_information']['site_slogan'] = array(
+    ];
+    $form['site_information']['site_slogan'] = [
       '#type' => 'textfield',
       '#title' => t('Slogan'),
       '#default_value' => $site_config->get('slogan'),
       '#description' => t("How this is used depends on your site's theme."),
-    );
-    $form['site_information']['site_mail'] = array(
+    ];
+    $form['site_information']['site_mail'] = [
       '#type' => 'email',
       '#title' => t('Email address'),
       '#default_value' => $site_mail,
       '#description' => t("The <em>From</em> address in automated emails sent during registration and new password requests, and other notifications. (Use an address ending in your site's domain to help prevent this email being flagged as spam.)"),
       '#required' => TRUE,
-    );
-    $form['front_page'] = array(
+    ];
+    $form['front_page'] = [
       '#type' => 'details',
       '#title' => t('Front page'),
       '#open' => TRUE,
-    );
+    ];
     $front_page = $site_config->get('page.front') != '/user/login' ? $this->aliasManager->getAliasByPath($site_config->get('page.front')) : '';
-    $form['front_page']['site_frontpage'] = array(
+    $form['front_page']['site_frontpage'] = [
       '#type' => 'textfield',
       '#title' => t('Default front page'),
       '#default_value' => $front_page,
       '#size' => 40,
       '#description' => t('Optionally, specify a relative URL to display as the front page. Leave blank to display the default front page.'),
       '#field_prefix' => $this->requestContext->getCompleteBaseUrl(),
-    );
-    $form['error_page'] = array(
+    ];
+    $form['error_page'] = [
       '#type' => 'details',
       '#title' => t('Error pages'),
       '#open' => TRUE,
-    );
-    $form['error_page']['site_403'] = array(
+    ];
+    $form['error_page']['site_403'] = [
       '#type' => 'textfield',
       '#title' => t('Default 403 (access denied) page'),
       '#default_value' => $site_config->get('page.403'),
       '#size' => 40,
       '#description' => t('This page is displayed when the requested document is denied to the current user. Leave blank to display a generic "access denied" page.'),
-    );
-    $form['error_page']['site_404'] = array(
+    ];
+    $form['error_page']['site_404'] = [
       '#type' => 'textfield',
       '#title' => t('Default 404 (not found) page'),
       '#default_value' => $site_config->get('page.404'),
       '#size' => 40,
       '#description' => t('This page is displayed when no other content matches the requested document. Leave blank to display a generic "page not found" page.'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
@@ -172,7 +172,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
 
     }
     if (!$this->pathValidator->isValid($form_state->getValue('site_frontpage'))) {
-      $form_state->setErrorByName('site_frontpage', $this->t("The path '%path' is either invalid or you do not have access to it.", array('%path' => $form_state->getValue('site_frontpage'))));
+      $form_state->setErrorByName('site_frontpage', $this->t("The path '%path' is either invalid or you do not have access to it.", ['%path' => $form_state->getValue('site_frontpage')]));
     }
     // Get the normal paths of both error pages.
     if (!$form_state->isValueEmpty('site_403')) {
@@ -189,11 +189,11 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     }
     // Validate 403 error path.
     if (!$form_state->isValueEmpty('site_403') && !$this->pathValidator->isValid($form_state->getValue('site_403'))) {
-      $form_state->setErrorByName('site_403', $this->t("The path '%path' is either invalid or you do not have access to it.", array('%path' => $form_state->getValue('site_403'))));
+      $form_state->setErrorByName('site_403', $this->t("The path '%path' is either invalid or you do not have access to it.", ['%path' => $form_state->getValue('site_403')]));
     }
     // Validate 404 error path.
     if (!$form_state->isValueEmpty('site_404') && !$this->pathValidator->isValid($form_state->getValue('site_404'))) {
-      $form_state->setErrorByName('site_404', $this->t("The path '%path' is either invalid or you do not have access to it.", array('%path' => $form_state->getValue('site_404'))));
+      $form_state->setErrorByName('site_404', $this->t("The path '%path' is either invalid or you do not have access to it.", ['%path' => $form_state->getValue('site_404')]));
     }
 
     parent::validateForm($form, $form_state);
diff --git a/core/modules/system/src/Form/SiteMaintenanceModeForm.php b/core/modules/system/src/Form/SiteMaintenanceModeForm.php
index 0d0b2af..fb509aa 100644
--- a/core/modules/system/src/Form/SiteMaintenanceModeForm.php
+++ b/core/modules/system/src/Form/SiteMaintenanceModeForm.php
@@ -75,17 +75,17 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('system.maintenance');
     $permissions = $this->permissionHandler->getPermissions();
     $permission_label = $permissions['access site in maintenance mode']['title'];
-    $form['maintenance_mode'] = array(
+    $form['maintenance_mode'] = [
       '#type' => 'checkbox',
       '#title' => t('Put site into maintenance mode'),
       '#default_value' => $this->state->get('system.maintenance_mode'),
-      '#description' => t('Visitors will only see the maintenance mode message. Only users with the "@permission-label" <a href=":permissions-url">permission</a> will be able to access the site. Authorized users can log in directly via the <a href=":user-login">user login</a> page.', array('@permission-label' => $permission_label, ':permissions-url' => $this->url('user.admin_permissions'), ':user-login' => $this->url('user.login'))),
-    );
-    $form['maintenance_mode_message'] = array(
+      '#description' => t('Visitors will only see the maintenance mode message. Only users with the "@permission-label" <a href=":permissions-url">permission</a> will be able to access the site. Authorized users can log in directly via the <a href=":user-login">user login</a> page.', ['@permission-label' => $permission_label, ':permissions-url' => $this->url('user.admin_permissions'), ':user-login' => $this->url('user.login')]),
+    ];
+    $form['maintenance_mode_message'] = [
       '#type' => 'textarea',
       '#title' => t('Message to display when in maintenance mode'),
       '#default_value' => $config->get('message'),
-    );
+    ];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/src/Form/ThemeAdminForm.php b/core/modules/system/src/Form/ThemeAdminForm.php
index a3ec419..e8d17ed 100644
--- a/core/modules/system/src/Form/ThemeAdminForm.php
+++ b/core/modules/system/src/Form/ThemeAdminForm.php
@@ -29,24 +29,24 @@ protected function getEditableConfigNames() {
    */
   public function buildForm(array $form, FormStateInterface $form_state, array $theme_options = NULL) {
     // Administration theme settings.
-    $form['admin_theme'] = array(
+    $form['admin_theme'] = [
       '#type' => 'details',
       '#title' => $this->t('Administration theme'),
       '#open' => TRUE,
-    );
-    $form['admin_theme']['admin_theme'] = array(
+    ];
+    $form['admin_theme']['admin_theme'] = [
       '#type' => 'select',
-      '#options' => array(0 => $this->t('Default theme')) + $theme_options,
+      '#options' => [0 => $this->t('Default theme')] + $theme_options,
       '#title' => $this->t('Administration theme'),
       '#description' => $this->t('Choose "Default theme" to always use the same theme as the rest of the site.'),
       '#default_value' => $this->config('system.theme')->get('admin'),
-    );
-    $form['admin_theme']['actions'] = array('#type' => 'actions');
-    $form['admin_theme']['actions']['submit'] = array(
+    ];
+    $form['admin_theme']['actions'] = ['#type' => 'actions'];
+    $form['admin_theme']['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save configuration'),
       '#button_type' => 'primary',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/src/Form/ThemeSettingsForm.php b/core/modules/system/src/Form/ThemeSettingsForm.php
index 37b5ea1..f5cfb09 100644
--- a/core/modules/system/src/Form/ThemeSettingsForm.php
+++ b/core/modules/system/src/Form/ThemeSettingsForm.php
@@ -132,25 +132,25 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
     //   by https://www.drupal.org/node/2402467.
     $this->editableConfig = [$config_key];
 
-    $form['var'] = array(
+    $form['var'] = [
       '#type' => 'hidden',
       '#value' => $var
-    );
-    $form['config_key'] = array(
+    ];
+    $form['config_key'] = [
       '#type' => 'hidden',
       '#value' => $config_key
-    );
+    ];
 
     // Toggle settings
-    $toggles = array(
+    $toggles = [
       'node_user_picture' => t('User pictures in posts'),
       'comment_user_picture' => t('User pictures in comments'),
       'comment_user_verification' => t('User verification status in comments'),
       'favicon' => t('Shortcut icon'),
-    );
+    ];
 
     // Some features are not always available
-    $disabled = array();
+    $disabled = [];
     if (!user_picture_enabled()) {
       $disabled['toggle_node_user_picture'] = TRUE;
       $disabled['toggle_comment_user_picture'] = TRUE;
@@ -160,14 +160,14 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
       $disabled['toggle_comment_user_verification'] = TRUE;
     }
 
-    $form['theme_settings'] = array(
+    $form['theme_settings'] = [
       '#type' => 'details',
       '#title' => t('Page element display'),
       '#open' => TRUE,
-    );
+    ];
     foreach ($toggles as $name => $title) {
       if ((!$theme) || in_array($name, $features)) {
-        $form['theme_settings']['toggle_' . $name] = array('#type' => 'checkbox', '#title' => $title, '#default_value' => theme_get_setting('features.' . $name, $theme));
+        $form['theme_settings']['toggle_' . $name] = ['#type' => 'checkbox', '#title' => $title, '#default_value' => theme_get_setting('features.' . $name, $theme)];
         // Disable checkboxes for features not supported in the current configuration.
         if (isset($disabled['toggle_' . $name])) {
           $form['theme_settings']['toggle_' . $name]['#disabled'] = TRUE;
@@ -183,82 +183,82 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
 
     // Logo settings, only available when file.module is enabled.
     if ((!$theme || in_array('logo', $features)) && $this->moduleHandler->moduleExists('file')) {
-      $form['logo'] = array(
+      $form['logo'] = [
         '#type' => 'details',
         '#title' => t('Logo image'),
         '#open' => TRUE,
-      );
-      $form['logo']['default_logo'] = array(
+      ];
+      $form['logo']['default_logo'] = [
         '#type' => 'checkbox',
         '#title' => t('Use the logo supplied by the theme'),
         '#default_value' => theme_get_setting('logo.use_default', $theme),
         '#tree' => FALSE,
-      );
-      $form['logo']['settings'] = array(
+      ];
+      $form['logo']['settings'] = [
         '#type' => 'container',
-        '#states' => array(
+        '#states' => [
           // Hide the logo settings when using the default logo.
-          'invisible' => array(
-            'input[name="default_logo"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['logo']['settings']['logo_path'] = array(
+          'invisible' => [
+            'input[name="default_logo"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['logo']['settings']['logo_path'] = [
         '#type' => 'textfield',
         '#title' => t('Path to custom logo'),
         '#default_value' => theme_get_setting('logo.path', $theme),
-      );
-      $form['logo']['settings']['logo_upload'] = array(
+      ];
+      $form['logo']['settings']['logo_upload'] = [
         '#type' => 'file',
         '#title' => t('Upload logo image'),
         '#maxlength' => 40,
         '#description' => t("If you don't have direct file access to the server, use this field to upload your logo.")
-      );
+      ];
     }
 
     if (((!$theme) || in_array('favicon', $features)) && $this->moduleHandler->moduleExists('file')) {
-      $form['favicon'] = array(
+      $form['favicon'] = [
         '#type' => 'details',
         '#title' => t('Favicon'),
         '#open' => TRUE,
         '#description' => t("Your shortcut icon, or favicon, is displayed in the address bar and bookmarks of most browsers."),
-        '#states' => array(
+        '#states' => [
           // Hide the shortcut icon settings fieldset when shortcut icon display
           // is disabled.
-          'invisible' => array(
-            'input[name="toggle_favicon"]' => array('checked' => FALSE),
-          ),
-        ),
-      );
-      $form['favicon']['default_favicon'] = array(
+          'invisible' => [
+            'input[name="toggle_favicon"]' => ['checked' => FALSE],
+          ],
+        ],
+      ];
+      $form['favicon']['default_favicon'] = [
         '#type' => 'checkbox',
         '#title' => t('Use the favicon supplied by the theme'),
         '#default_value' => theme_get_setting('favicon.use_default', $theme),
-      );
-      $form['favicon']['settings'] = array(
+      ];
+      $form['favicon']['settings'] = [
         '#type' => 'container',
-        '#states' => array(
+        '#states' => [
           // Hide the favicon settings when using the default favicon.
-          'invisible' => array(
-            'input[name="default_favicon"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['favicon']['settings']['favicon_path'] = array(
+          'invisible' => [
+            'input[name="default_favicon"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['favicon']['settings']['favicon_path'] = [
         '#type' => 'textfield',
         '#title' => t('Path to custom icon'),
         '#default_value' => theme_get_setting('favicon.path', $theme),
-      );
-      $form['favicon']['settings']['favicon_upload'] = array(
+      ];
+      $form['favicon']['settings']['favicon_upload'] = [
         '#type' => 'file',
         '#title' => t('Upload favicon image'),
         '#description' => t("If you don't have direct file access to the server, use this field to upload your shortcut icon.")
-      );
+      ];
     }
 
     // Inject human-friendly values and form element descriptions for logo and
     // favicon.
-    foreach (array('logo' => 'logo.svg', 'favicon' => 'favicon.ico') as $type => $default) {
+    foreach (['logo' => 'logo.svg', 'favicon' => 'favicon.ico'] as $type => $default) {
       if (isset($form[$type]['settings'][$type . '_path'])) {
         $element = &$form[$type]['settings'][$type . '_path'];
 
@@ -273,7 +273,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
 
         // Prepare local file path for description.
         if ($original_path && isset($friendly_path)) {
-          $local_file = strtr($original_path, array('public:/' => PublicStream::basePath()));
+          $local_file = strtr($original_path, ['public:/' => PublicStream::basePath()]);
         }
         elseif ($theme) {
           $local_file = drupal_get_path('theme', $theme) . '/' . $default;
@@ -282,11 +282,11 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
           $local_file = $this->themeManager->getActiveTheme()->getPath() . '/' . $default;
         }
 
-        $element['#description'] = t('Examples: <code>@implicit-public-file</code> (for a file in the public filesystem), <code>@explicit-file</code>, or <code>@local-file</code>.', array(
+        $element['#description'] = t('Examples: <code>@implicit-public-file</code> (for a file in the public filesystem), <code>@explicit-file</code>, or <code>@local-file</code>.', [
           '@implicit-public-file' => isset($friendly_path) ? $friendly_path : $default,
           '@explicit-file' => file_uri_scheme($original_path) !== FALSE ? $original_path : 'public://' . $default,
           '@local-file' => $local_file,
-        ));
+        ]);
       }
     }
 
@@ -294,12 +294,12 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
       // Call engine-specific settings.
       $function = $themes[$theme]->prefix . '_engine_settings';
       if (function_exists($function)) {
-        $form['engine_specific'] = array(
+        $form['engine_specific'] = [
           '#type' => 'details',
           '#title' => t('Theme-engine-specific settings'),
           '#open' => TRUE,
-          '#description' => t('These settings only exist for the themes based on the %engine theme engine.', array('%engine' => $themes[$theme]->prefix)),
-        );
+          '#description' => t('These settings only exist for the themes based on the %engine theme engine.', ['%engine' => $themes[$theme]->prefix]),
+        ];
         $function($form, $form_state);
       }
 
@@ -309,7 +309,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $theme =
         $theme_keys[] = $theme;
       }
       else {
-        $theme_keys = array($theme);
+        $theme_keys = [$theme];
       }
 
       // Save the name of the current theme (if any), so that we can temporarily
@@ -356,7 +356,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
 
     if ($this->moduleHandler->moduleExists('file')) {
       // Handle file uploads.
-      $validators = array('file_validate_is_image' => array());
+      $validators = ['file_validate_is_image' => []];
 
       // Check for a new uploaded logo.
       $file = file_save_upload('logo_upload', $validators, FALSE, 0);
@@ -372,7 +372,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
         }
       }
 
-      $validators = array('file_validate_extensions' => array('ico png gif jpg jpeg apng svg'));
+      $validators = ['file_validate_extensions' => ['ico png gif jpg jpeg apng svg']];
 
       // Check for a new uploaded favicon.
       $file = file_save_upload('favicon_upload', $validators, FALSE, 0);
diff --git a/core/modules/system/src/PathBasedBreadcrumbBuilder.php b/core/modules/system/src/PathBasedBreadcrumbBuilder.php
index dcfc073..4a96d11 100644
--- a/core/modules/system/src/PathBasedBreadcrumbBuilder.php
+++ b/core/modules/system/src/PathBasedBreadcrumbBuilder.php
@@ -122,14 +122,14 @@ public function applies(RouteMatchInterface $route_match) {
    */
   public function build(RouteMatchInterface $route_match) {
     $breadcrumb = new Breadcrumb();
-    $links = array();
+    $links = [];
 
     // General path-based breadcrumbs. Use the actual request path, prior to
     // resolving path aliases, so the breadcrumb can be defined by simply
     // creating a hierarchy of path aliases.
     $path = trim($this->context->getPathInfo(), '/');
     $path_elements = explode('/', $path);
-    $exclude = array();
+    $exclude = [];
     // Don't show a link to the front-page path.
     $front = $this->config->get('page.front');
     $exclude[$front] = TRUE;
@@ -154,7 +154,7 @@ public function build(RouteMatchInterface $route_match) {
           if (!isset($title)) {
             // Fallback to using the raw path component as the title if the
             // route is missing a _title or _title_callback attribute.
-            $title = str_replace(array('-', '_'), ' ', Unicode::ucfirst(end($path_elements)));
+            $title = str_replace(['-', '_'], ' ', Unicode::ucfirst(end($path_elements)));
           }
           $url = Url::fromRouteMatch($route_match);
           $links[] = new Link($title, $url);
diff --git a/core/modules/system/src/Plugin/Block/SystemBrandingBlock.php b/core/modules/system/src/Plugin/Block/SystemBrandingBlock.php
index f6b0958..3305285 100644
--- a/core/modules/system/src/Plugin/Block/SystemBrandingBlock.php
+++ b/core/modules/system/src/Plugin/Block/SystemBrandingBlock.php
@@ -60,12 +60,12 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'use_site_logo' => TRUE,
       'use_site_name' => TRUE,
       'use_site_slogan' => TRUE,
       'label_display' => FALSE,
-    );
+    ];
   }
 
   /**
@@ -77,15 +77,15 @@ public function blockForm($form, FormStateInterface $form_state) {
 
     // Get permissions.
     $url_system_theme_settings = new Url('system.theme_settings');
-    $url_system_theme_settings_theme = new Url('system.theme_settings_theme', array('theme' => $theme));
+    $url_system_theme_settings_theme = new Url('system.theme_settings_theme', ['theme' => $theme]);
 
     if ($url_system_theme_settings->access() && $url_system_theme_settings_theme->access()) {
       // Provide links to the Appearance Settings and Theme Settings pages
       // if the user has access to administer themes.
-      $site_logo_description = $this->t('Defined on the <a href=":appearance">Appearance Settings</a> or <a href=":theme">Theme Settings</a> page.', array(
+      $site_logo_description = $this->t('Defined on the <a href=":appearance">Appearance Settings</a> or <a href=":theme">Theme Settings</a> page.', [
         ':appearance' => $url_system_theme_settings->toString(),
         ':theme' => $url_system_theme_settings_theme->toString(),
-      ));
+      ]);
     }
     else {
       // Explain that the user does not have access to the Appearance and Theme
@@ -99,8 +99,8 @@ public function blockForm($form, FormStateInterface $form_state) {
 
       // Provide link to Site Information page if the user has access to
       // administer site configuration.
-      $site_name_description = $this->t('Defined on the <a href=":information">Site Information</a> page.', array(':information' => $site_information_url));
-      $site_slogan_description = $this->t('Defined on the <a href=":information">Site Information</a> page.', array(':information' => $site_information_url));
+      $site_name_description = $this->t('Defined on the <a href=":information">Site Information</a> page.', [':information' => $site_information_url]);
+      $site_slogan_description = $this->t('Defined on the <a href=":information">Site Information</a> page.', [':information' => $site_information_url]);
     }
     else {
       // Explain that the user does not have access to the Site Information
@@ -109,30 +109,30 @@ public function blockForm($form, FormStateInterface $form_state) {
       $site_slogan_description = $this->t('Defined on the Site Information page. You do not have the appropriate permissions to change the site logo.');
     }
 
-    $form['block_branding'] = array(
+    $form['block_branding'] = [
       '#type' => 'fieldset',
       '#title' => $this->t('Toggle branding elements'),
       '#description' => $this->t('Choose which branding elements you want to show in this block instance.'),
-    );
-    $form['block_branding']['use_site_logo'] = array(
+    ];
+    $form['block_branding']['use_site_logo'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Site logo'),
       '#description' => $site_logo_description,
       '#default_value' => $this->configuration['use_site_logo'],
-    );
+    ];
 
-    $form['block_branding']['use_site_name'] = array(
+    $form['block_branding']['use_site_name'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Site name'),
       '#description' => $site_name_description,
       '#default_value' => $this->configuration['use_site_name'],
-    );
-    $form['block_branding']['use_site_slogan'] = array(
+    ];
+    $form['block_branding']['use_site_slogan'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Site slogan'),
       '#description' => $site_slogan_description,
       '#default_value' => $this->configuration['use_site_slogan'],
-    );
+    ];
     return $form;
   }
 
@@ -150,25 +150,25 @@ public function blockSubmit($form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function build() {
-    $build = array();
+    $build = [];
     $site_config = $this->configFactory->get('system.site');
 
-    $build['site_logo'] = array(
+    $build['site_logo'] = [
       '#theme' => 'image',
       '#uri' => theme_get_setting('logo.url'),
       '#alt' => $this->t('Home'),
       '#access' => $this->configuration['use_site_logo'],
-    );
+    ];
 
-    $build['site_name'] = array(
+    $build['site_name'] = [
       '#markup' => $site_config->get('name'),
       '#access' => $this->configuration['use_site_name'],
-    );
+    ];
 
-    $build['site_slogan'] = array(
+    $build['site_slogan'] = [
       '#markup' => $site_config->get('slogan'),
       '#access' => $this->configuration['use_site_slogan'],
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/system/src/Plugin/Block/SystemMenuBlock.php b/core/modules/system/src/Plugin/Block/SystemMenuBlock.php
index e9e1b33..52daa09 100644
--- a/core/modules/system/src/Plugin/Block/SystemMenuBlock.php
+++ b/core/modules/system/src/Plugin/Block/SystemMenuBlock.php
@@ -64,36 +64,36 @@ public function blockForm($form, FormStateInterface $form_state) {
     $config = $this->configuration;
 
     $defaults = $this->defaultConfiguration();
-    $form['menu_levels'] = array(
+    $form['menu_levels'] = [
       '#type' => 'details',
       '#title' => $this->t('Menu levels'),
       // Open if not set to defaults.
       '#open' => $defaults['level'] !== $config['level'] || $defaults['depth'] !== $config['depth'],
       '#process' => [[get_class(), 'processMenuLevelParents']],
-    );
+    ];
 
     $options = range(0, $this->menuTree->maxDepth());
     unset($options[0]);
 
-    $form['menu_levels']['level'] = array(
+    $form['menu_levels']['level'] = [
       '#type' => 'select',
       '#title' => $this->t('Initial visibility level'),
       '#default_value' => $config['level'],
       '#options' => $options,
       '#description' => $this->t('The menu is only visible if the menu item for the current page is at this level or below it. Use level 1 to always display this menu.'),
       '#required' => TRUE,
-    );
+    ];
 
     $options[0] = $this->t('Unlimited');
 
-    $form['menu_levels']['depth'] = array(
+    $form['menu_levels']['depth'] = [
       '#type' => 'select',
       '#title' => $this->t('Number of levels to display'),
       '#default_value' => $config['depth'],
       '#options' => $options,
       '#description' => $this->t('This maximum number includes the initial level.'),
       '#required' => TRUE,
-    );
+    ];
 
     return $form;
   }
@@ -136,10 +136,10 @@ public function build() {
     }
 
     $tree = $this->menuTree->load($menu_name, $parameters);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ];
     $tree = $this->menuTree->transform($tree, $manipulators);
     return $this->menuTree->build($tree);
   }
diff --git a/core/modules/system/src/Plugin/Block/SystemMessagesBlock.php b/core/modules/system/src/Plugin/Block/SystemMessagesBlock.php
index bbfb036..0b6638f 100644
--- a/core/modules/system/src/Plugin/Block/SystemMessagesBlock.php
+++ b/core/modules/system/src/Plugin/Block/SystemMessagesBlock.php
@@ -22,9 +22,9 @@ class SystemMessagesBlock extends BlockBase implements MessagesBlockPluginInterf
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'label_display' => FALSE,
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/system/src/Plugin/Block/SystemPoweredByBlock.php b/core/modules/system/src/Plugin/Block/SystemPoweredByBlock.php
index 132b000..c1e0ba8 100644
--- a/core/modules/system/src/Plugin/Block/SystemPoweredByBlock.php
+++ b/core/modules/system/src/Plugin/Block/SystemPoweredByBlock.php
@@ -25,7 +25,7 @@ public function defaultConfiguration() {
    * {@inheritdoc}
    */
   public function build() {
-    return array('#markup' => '<span>' . $this->t('Powered by <a href=":poweredby">Drupal</a>', array(':poweredby' => 'https://www.drupal.org')) . '</span>');
+    return ['#markup' => '<span>' . $this->t('Powered by <a href=":poweredby">Drupal</a>', [':poweredby' => 'https://www.drupal.org']) . '</span>'];
   }
 
 }
diff --git a/core/modules/system/src/Plugin/Condition/CurrentThemeCondition.php b/core/modules/system/src/Plugin/Condition/CurrentThemeCondition.php
index 2f7375d..d282963 100644
--- a/core/modules/system/src/Plugin/Condition/CurrentThemeCondition.php
+++ b/core/modules/system/src/Plugin/Condition/CurrentThemeCondition.php
@@ -70,21 +70,21 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array('theme' => '') + parent::defaultConfiguration();
+    return ['theme' => ''] + parent::defaultConfiguration();
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['theme'] = array(
+    $form['theme'] = [
       '#type' => 'select',
       '#title' => $this->t('Theme'),
       '#default_value' => $this->configuration['theme'],
       '#options' => array_map(function ($theme_info) {
         return $theme_info->info['name'];
       }, $this->themeHandler->listInfo()),
-    );
+    ];
     return parent::buildConfigurationForm($form, $form_state);
   }
 
@@ -112,10 +112,10 @@ public function evaluate() {
    */
   public function summary() {
     if ($this->isNegated()) {
-      return $this->t('The current theme is not @theme', array('@theme' => $this->configuration['theme']));
+      return $this->t('The current theme is not @theme', ['@theme' => $this->configuration['theme']]);
     }
 
-    return $this->t('The current theme is @theme', array('@theme' => $this->configuration['theme']));
+    return $this->t('The current theme is @theme', ['@theme' => $this->configuration['theme']]);
   }
 
   /**
diff --git a/core/modules/system/src/Plugin/Condition/RequestPath.php b/core/modules/system/src/Plugin/Condition/RequestPath.php
index 17373ce..ae9d77d 100644
--- a/core/modules/system/src/Plugin/Condition/RequestPath.php
+++ b/core/modules/system/src/Plugin/Condition/RequestPath.php
@@ -94,22 +94,22 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array('pages' => '') + parent::defaultConfiguration();
+    return ['pages' => ''] + parent::defaultConfiguration();
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['pages'] = array(
+    $form['pages'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Pages'),
       '#default_value' => $this->configuration['pages'],
-      '#description' => $this->t("Specify pages by using their paths. Enter one path per line. The '*' character is a wildcard. An example path is %user-wildcard for every user page. %front is the front page.", array(
+      '#description' => $this->t("Specify pages by using their paths. Enter one path per line. The '*' character is a wildcard. An example path is %user-wildcard for every user page. %front is the front page.", [
         '%user-wildcard' => '/user/*',
         '%front' => '<front>',
-      )),
-    );
+      ]),
+    ];
     return parent::buildConfigurationForm($form, $form_state);
   }
 
@@ -128,9 +128,9 @@ public function summary() {
     $pages = array_map('trim', explode("\n", $this->configuration['pages']));
     $pages = implode(', ', $pages);
     if (!empty($this->configuration['negate'])) {
-      return $this->t('Do not return true on the following pages: @pages', array('@pages' => $pages));
+      return $this->t('Do not return true on the following pages: @pages', ['@pages' => $pages]);
     }
-    return $this->t('Return true on the following pages: @pages', array('@pages' => $pages));
+    return $this->t('Return true on the following pages: @pages', ['@pages' => $pages]);
   }
 
   /**
diff --git a/core/modules/system/src/Plugin/Derivative/SystemMenuBlock.php b/core/modules/system/src/Plugin/Derivative/SystemMenuBlock.php
index 2f802e6..5da5027 100644
--- a/core/modules/system/src/Plugin/Derivative/SystemMenuBlock.php
+++ b/core/modules/system/src/Plugin/Derivative/SystemMenuBlock.php
@@ -47,7 +47,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     foreach ($this->menuStorage->loadMultiple() as $menu => $entity) {
       $this->derivatives[$menu] = $base_plugin_definition;
       $this->derivatives[$menu]['admin_label'] = $entity->label();
-      $this->derivatives[$menu]['config_dependencies']['config'] = array($entity->getConfigDependencyName());
+      $this->derivatives[$menu]['config_dependencies']['config'] = [$entity->getConfigDependencyName()];
     }
     return $this->derivatives;
   }
diff --git a/core/modules/system/src/Plugin/Derivative/ThemeLocalTask.php b/core/modules/system/src/Plugin/Derivative/ThemeLocalTask.php
index 3ff29dc..ab9f87d 100644
--- a/core/modules/system/src/Plugin/Derivative/ThemeLocalTask.php
+++ b/core/modules/system/src/Plugin/Derivative/ThemeLocalTask.php
@@ -46,7 +46,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       if ($this->themeHandler->hasUi($theme_name)) {
         $this->derivatives[$theme_name] = $base_plugin_definition;
         $this->derivatives[$theme_name]['title'] = $theme->info['name'];
-        $this->derivatives[$theme_name]['route_parameters'] = array('theme' => $theme_name);
+        $this->derivatives[$theme_name]['route_parameters'] = ['theme' => $theme_name];
       }
     }
     return $this->derivatives;
diff --git a/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php b/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
index 7b195cc..818c5b5 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/GDToolkit.php
@@ -143,7 +143,7 @@ public function getResource() {
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['image_jpeg_quality'] = array(
+    $form['image_jpeg_quality'] = [
       '#type' => 'number',
       '#title' => t('JPEG quality'),
       '#description' => t('Define the image quality for JPEG manipulations. Ranges from 0 to 100. Higher values mean better image quality but bigger files.'),
@@ -151,7 +151,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
       '#max' => 100,
       '#default_value' => $this->configFactory->getEditable('system.image.gd')->get('jpeg_quality', FALSE),
       '#field_suffix' => t('%'),
-    );
+    ];
     return $form;
   }
 
@@ -160,7 +160,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
    */
   public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
     $this->configFactory->getEditable('system.image.gd')
-      ->set('jpeg_quality', $form_state->getValue(array('gd', 'image_jpeg_quality')))
+      ->set('jpeg_quality', $form_state->getValue(['gd', 'image_jpeg_quality']))
       ->save();
   }
 
@@ -186,13 +186,13 @@ protected function load() {
         // Convert indexed images to truecolor, copying the image to a new
         // truecolor resource, so that filters work correctly and don't result
         // in unnecessary dither.
-        $data = array(
+        $data = [
           'width' => imagesx($resource),
           'height' => imagesy($resource),
           'extension' => image_type_to_extension($this->getType(), FALSE),
           'transparent_color' => $this->getTransparentColor(),
           'is_temp' => TRUE,
-        );
+        ];
         if ($this->apply('create_new', $data)) {
           imagecopy($this->getResource(), $resource, 0, 0, 0, 0, imagesx($resource), imagesy($resource));
           imagedestroy($resource);
@@ -362,13 +362,13 @@ public function getMimeType() {
    * {@inheritdoc}
    */
   public function getRequirements() {
-    $requirements = array();
+    $requirements = [];
 
     $info = gd_info();
-    $requirements['version'] = array(
+    $requirements['version'] = [
       'title' => t('GD library'),
       'value' => $info['GD Version'],
-    );
+    ];
 
     // Check for filter and rotate support.
     if (!function_exists('imagefilter') || !function_exists('imagerotate')) {
@@ -391,7 +391,7 @@ public static function isAvailable() {
    * {@inheritdoc}
    */
   public static function getSupportedExtensions() {
-    $extensions = array();
+    $extensions = [];
     foreach (static::supportedTypes() as $image_type) {
       // @todo Automatically fetch possible extensions for each mime type.
       // @see https://www.drupal.org/node/2311679
@@ -440,7 +440,7 @@ public function extensionToImageType($extension) {
    *   IMAGETYPE_* constant (e.g. IMAGETYPE_JPEG, IMAGETYPE_PNG, etc.).
    */
   protected static function supportedTypes() {
-    return array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF);
+    return [IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF];
   }
 
 }
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Convert.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Convert.php
index 7c5fca1..5404e2e 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Convert.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Convert.php
@@ -19,11 +19,11 @@ class Convert extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'extension' => array(
+    return [
+      'extension' => [
         'description' => 'The new extension of the converted image',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -47,13 +47,13 @@ protected function execute(array $arguments) {
     $height = $this->getToolkit()->getHeight();
     $original_resource = $this->getToolkit()->getResource();
     $original_type = $this->getToolkit()->getType();
-    $data = array(
+    $data = [
       'width' => $width,
       'height' => $height,
       'extension' => $arguments['extension'],
       'transparent_color' => $this->getToolkit()->getTransparentColor(),
       'is_temp' => TRUE,
-    );
+    ];
     if ($this->getToolkit()->apply('create_new', $data)) {
       if (imagecopyresampled($this->getToolkit()->getResource(), $original_resource, 0, 0, 0, 0, $width, $height, $width, $height)) {
         imagedestroy($original_resource);
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/CreateNew.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/CreateNew.php
index 0d1c5a6..cb57cc4 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/CreateNew.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/CreateNew.php
@@ -21,29 +21,29 @@ class CreateNew extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'width' => array(
+    return [
+      'width' => [
         'description' => 'The width of the image, in pixels',
-      ),
-      'height' => array(
+      ],
+      'height' => [
         'description' => 'The height of the image, in pixels',
-      ),
-      'extension' => array(
+      ],
+      'extension' => [
         'description' => 'The extension of the image file (e.g. png, gif, etc.)',
         'required' => FALSE,
         'default' => 'png',
-      ),
-      'transparent_color' => array(
+      ],
+      'transparent_color' => [
         'description' => 'The RGB hex color for GIF transparency',
         'required' => FALSE,
         'default' => '#ffffff',
-      ),
-      'is_temp' => array(
+      ],
+      'is_temp' => [
         'description' => 'If TRUE, this operation is being used to create a temporary image by another GD operation. After performing its function, the caller is responsible for destroying the original GD resource.',
         'required' => FALSE,
         'default' => FALSE,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Crop.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Crop.php
index e5ca672..07a112b 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Crop.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Crop.php
@@ -19,24 +19,24 @@ class Crop extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'x' => array(
+    return [
+      'x' => [
         'description' => 'The starting x offset at which to start the crop, in pixels',
-      ),
-      'y' => array(
+      ],
+      'y' => [
         'description' => 'The starting y offset at which to start the crop, in pixels',
-      ),
-      'width' => array(
+      ],
+      'width' => [
         'description' => 'The width of the cropped area, in pixels',
         'required' => FALSE,
         'default' => NULL,
-      ),
-      'height' => array(
+      ],
+      'height' => [
         'description' => 'The height of the cropped area, in pixels',
         'required' => FALSE,
         'default' => NULL,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -54,7 +54,7 @@ protected function validateArguments(array $arguments) {
     $arguments['width'] = empty($arguments['width']) ? $arguments['height'] / $aspect : $arguments['width'];
 
     // Assure integers for all arguments.
-    foreach (array('x', 'y', 'width', 'height') as $key) {
+    foreach (['x', 'y', 'width', 'height'] as $key) {
       $arguments[$key] = (int) round($arguments[$key]);
     }
 
@@ -77,13 +77,13 @@ protected function execute(array $arguments) {
     // the original resource on it with resampling. Destroy the original
     // resource upon success.
     $original_resource = $this->getToolkit()->getResource();
-    $data = array(
+    $data = [
       'width' => $arguments['width'],
       'height' => $arguments['height'],
       'extension' => image_type_to_extension($this->getToolkit()->getType(), FALSE),
       'transparent_color' => $this->getToolkit()->getTransparentColor(),
       'is_temp' => TRUE,
-    );
+    ];
     if ($this->getToolkit()->apply('create_new', $data)) {
       if (imagecopyresampled($this->getToolkit()->getResource(), $original_resource, 0, 0, $arguments['x'], $arguments['y'], $arguments['width'], $arguments['height'], $arguments['width'], $arguments['height'])) {
         imagedestroy($original_resource);
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Desaturate.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Desaturate.php
index bae8483..54ed29b 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Desaturate.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Desaturate.php
@@ -20,7 +20,7 @@ class Desaturate extends GDImageToolkitOperationBase {
    */
   protected function arguments() {
     // This operation does not use any parameters.
-    return array();
+    return [];
   }
 
   /**
@@ -29,7 +29,7 @@ protected function arguments() {
   protected function execute(array $arguments) {
     // PHP installations using non-bundled GD do not have imagefilter.
     if (!function_exists('imagefilter')) {
-      $this->logger->notice("The image '@file' could not be desaturated because the imagefilter() function is not available in this PHP installation.", array('@file' => $this->getToolkit()->getSource()));
+      $this->logger->notice("The image '@file' could not be desaturated because the imagefilter() function is not available in this PHP installation.", ['@file' => $this->getToolkit()->getSource()]);
       return FALSE;
     }
 
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Resize.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Resize.php
index 51c5f53..155bef2 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Resize.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Resize.php
@@ -19,14 +19,14 @@ class Resize extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'width' => array(
+    return [
+      'width' => [
         'description' => 'The new width of the resized image, in pixels',
-      ),
-      'height' => array(
+      ],
+      'height' => [
         'description' => 'The new height of the resized image, in pixels',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -51,18 +51,18 @@ protected function validateArguments(array $arguments) {
   /**
    * {@inheritdoc}
    */
-  protected function execute(array $arguments = array()) {
+  protected function execute(array $arguments = []) {
     // Create a new resource of the required dimensions, and copy and resize
     // the original resource on it with resampling. Destroy the original
     // resource upon success.
     $original_resource = $this->getToolkit()->getResource();
-    $data = array(
+    $data = [
       'width' => $arguments['width'],
       'height' => $arguments['height'],
       'extension' => image_type_to_extension($this->getToolkit()->getType(), FALSE),
       'transparent_color' => $this->getToolkit()->getTransparentColor(),
       'is_temp' => TRUE,
-    );
+    ];
     if ($this->getToolkit()->apply('create_new', $data)) {
       if (imagecopyresampled($this->getToolkit()->getResource(), $original_resource, 0, 0, 0, 0, $arguments['width'], $arguments['height'], imagesx($original_resource), imagesy($original_resource))) {
         imagedestroy($original_resource);
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Rotate.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Rotate.php
index 62a5405..4335612 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Rotate.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Rotate.php
@@ -21,16 +21,16 @@ class Rotate extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'degrees' => array(
+    return [
+      'degrees' => [
         'description' => 'The number of (clockwise) degrees to rotate the image',
-      ),
-      'background' => array(
+      ],
+      'background' => [
         'description' => "A string specifying the hexadecimal color code to use as background for the uncovered area of the image after the rotation. E.g. '#000000' for black, '#ff00ff' for magenta, and '#ffffff' for white. For images that support transparency, this will default to transparent white",
         'required' => FALSE,
         'default' => NULL,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -45,11 +45,11 @@ protected function validateArguments(array $arguments) {
     // Validate or set background color argument.
     if (!empty($arguments['background'])) {
       // Validate the background color: Color::hexToRgb does so for us.
-      $background = Color::hexToRgb($arguments['background']) + array( 'alpha' => 0 );
+      $background = Color::hexToRgb($arguments['background']) + [ 'alpha' => 0 ];
     }
     else {
       // Background color is not specified: use transparent white as background.
-      $background = array('red' => 255, 'green' => 255, 'blue' => 255, 'alpha' => 127);
+      $background = ['red' => 255, 'green' => 255, 'blue' => 255, 'alpha' => 127];
     }
     // Store the color index for the background as that is what GD uses.
     $arguments['background_idx'] = imagecolorallocatealpha($this->getToolkit()->getResource(), $background['red'], $background['green'], $background['blue'], $background['alpha']);
@@ -89,7 +89,7 @@ protected function validateArguments(array $arguments) {
   protected function execute(array $arguments) {
     // PHP installations using non-bundled GD do not have imagerotate.
     if (!function_exists('imagerotate')) {
-      $this->logger->notice('The image %file could not be rotated because the imagerotate() function is not available in this PHP installation.', array('%file' => $this->getToolkit()->getSource()));
+      $this->logger->notice('The image %file could not be rotated because the imagerotate() function is not available in this PHP installation.', ['%file' => $this->getToolkit()->getSource()]);
       return FALSE;
     }
 
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Scale.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Scale.php
index bd7a952..37097d8 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Scale.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/Scale.php
@@ -19,23 +19,23 @@ class Scale extends Resize {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'width' => array(
+    return [
+      'width' => [
         'description' => 'The target width, in pixels. This value is omitted then the scaling will based only on the height value',
         'required' => FALSE,
         'default' => NULL,
-      ),
-      'height' => array(
+      ],
+      'height' => [
         'description' => 'The target height, in pixels. This value is omitted then the scaling will based only on the width value',
         'required' => FALSE,
         'default' => NULL,
-      ),
-      'upscale' => array(
+      ],
+      'upscale' => [
         'description' => 'Boolean indicating that files smaller than the dimensions will be scaled up. This generally results in a low quality image',
         'required' => FALSE,
         'default' => FALSE,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -78,7 +78,7 @@ protected function validateArguments(array $arguments) {
   /**
    * {@inheritdoc}
    */
-  protected function execute(array $arguments = array()) {
+  protected function execute(array $arguments = []) {
     // Don't scale if we don't change the dimensions at all.
     if ($arguments['width'] !== $this->getToolkit()->getWidth() || $arguments['height'] !== $this->getToolkit()->getHeight()) {
       // Don't upscale if the option isn't enabled.
diff --git a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/ScaleAndCrop.php b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/ScaleAndCrop.php
index 8568823..510020f 100644
--- a/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/ScaleAndCrop.php
+++ b/core/modules/system/src/Plugin/ImageToolkit/Operation/gd/ScaleAndCrop.php
@@ -19,14 +19,14 @@ class ScaleAndCrop extends GDImageToolkitOperationBase {
    * {@inheritdoc}
    */
   protected function arguments() {
-    return array(
-      'width' => array(
+    return [
+      'width' => [
         'description' => 'The target width, in pixels',
-      ),
-      'height' => array(
+      ],
+      'height' => [
         'description' => 'The target height, in pixels',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -40,10 +40,10 @@ protected function validateArguments(array $arguments) {
 
     $arguments['x'] = (int) round(($actualWidth * $scaleFactor - $arguments['width']) / 2);
     $arguments['y'] = (int) round(($actualHeight * $scaleFactor - $arguments['height']) / 2);
-    $arguments['resize'] = array(
+    $arguments['resize'] = [
       'width' => (int) round($actualWidth * $scaleFactor),
       'height' => (int) round($actualHeight * $scaleFactor),
-    );
+    ];
 
     // Fail when width or height are 0 or negative.
     if ($arguments['width'] <= 0) {
@@ -59,7 +59,7 @@ protected function validateArguments(array $arguments) {
   /**
    * {@inheritdoc}
    */
-  protected function execute(array $arguments = array()) {
+  protected function execute(array $arguments = []) {
     return $this->getToolkit()->apply('resize', $arguments['resize'])
         && $this->getToolkit()->apply('crop', $arguments);
   }
diff --git a/core/modules/system/src/Plugin/migrate/source/Menu.php b/core/modules/system/src/Plugin/migrate/source/Menu.php
index 6dbf2e7..c55bc4b 100644
--- a/core/modules/system/src/Plugin/migrate/source/Menu.php
+++ b/core/modules/system/src/Plugin/migrate/source/Menu.php
@@ -25,11 +25,11 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'menu_name' => $this->t('The menu name. Primary key.'),
       'title' => $this->t('The human-readable name of the menu.'),
       'description' => $this->t('A description of the menu'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/system/src/Plugin/views/field/BulkForm.php b/core/modules/system/src/Plugin/views/field/BulkForm.php
index 8e38c2b..65fdc51 100644
--- a/core/modules/system/src/Plugin/views/field/BulkForm.php
+++ b/core/modules/system/src/Plugin/views/field/BulkForm.php
@@ -49,7 +49,7 @@ class BulkForm extends FieldPluginBase implements CacheableDependencyInterface {
    *
    * @var \Drupal\system\ActionConfigEntityInterface[]
    */
-  protected $actions = array();
+  protected $actions = [];
 
   /**
    * The language manager.
@@ -162,13 +162,13 @@ protected function getView() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['action_title'] = array('default' => $this->t('Action'));
-    $options['include_exclude'] = array(
+    $options['action_title'] = ['default' => $this->t('Action')];
+    $options['include_exclude'] = [
       'default' => 'exclude',
-    );
-    $options['selected_actions'] = array(
-      'default' => array(),
-    );
+    ];
+    $options['selected_actions'] = [
+      'default' => [],
+    ];
     return $options;
   }
 
@@ -176,28 +176,28 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['action_title'] = array(
+    $form['action_title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Action title'),
       '#default_value' => $this->options['action_title'],
       '#description' => $this->t('The title shown above the actions dropdown.'),
-    );
+    ];
 
-    $form['include_exclude'] = array(
+    $form['include_exclude'] = [
       '#type' => 'radios',
       '#title' => $this->t('Available actions'),
-      '#options' => array(
+      '#options' => [
         'exclude' => $this->t('All actions, except selected'),
         'include' => $this->t('Only selected actions'),
-      ),
+      ],
       '#default_value' => $this->options['include_exclude'],
-    );
-    $form['selected_actions'] = array(
+    ];
+    $form['selected_actions'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Selected actions'),
       '#options' => $this->getBulkOptions(FALSE),
       '#default_value' => $this->options['selected_actions'],
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
@@ -208,8 +208,8 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     parent::validateOptionsForm($form, $form_state);
 
-    $selected_actions = $form_state->getValue(array('options', 'selected_actions'));
-    $form_state->setValue(array('options', 'selected_actions'), array_values(array_filter($selected_actions)));
+    $selected_actions = $form_state->getValue(['options', 'selected_actions']);
+    $form_state->setValue(['options', 'selected_actions'], array_values(array_filter($selected_actions)));
   }
 
   /**
@@ -259,7 +259,7 @@ public function viewsForm(&$form, FormStateInterface $form_state) {
       foreach ($this->view->result as $row_index => $row) {
         $entity = $this->getEntityTranslation($this->getEntity($row), $row);
 
-        $form[$this->options['id']][$row_index] = array(
+        $form[$this->options['id']][$row_index] = [
           '#type' => 'checkbox',
           // We are not able to determine a main "title" for each row, so we can
           // only output a generic label.
@@ -267,28 +267,28 @@ public function viewsForm(&$form, FormStateInterface $form_state) {
           '#title_display' => 'invisible',
           '#default_value' => !empty($form_state->getValue($this->options['id'])[$row_index]) ? 1 : NULL,
           '#return_value' => $this->calculateEntityBulkFormKey($entity, $use_revision),
-        );
+        ];
       }
 
       // Replace the form submit button label.
       $form['actions']['submit']['#value'] = $this->t('Apply to selected items');
 
       // Ensure a consistent container for filters/operations in the view header.
-      $form['header'] = array(
+      $form['header'] = [
         '#type' => 'container',
         '#weight' => -100,
-      );
+      ];
 
       // Build the bulk operations action widget for the header.
       // Allow themes to apply .container-inline on this separate container.
-      $form['header'][$this->options['id']] = array(
+      $form['header'][$this->options['id']] = [
         '#type' => 'container',
-      );
-      $form['header'][$this->options['id']]['action'] = array(
+      ];
+      $form['header'][$this->options['id']]['action'] = [
         '#type' => 'select',
         '#title' => $this->options['action_title'],
         '#options' => $this->getBulkOptions(),
-      );
+      ];
 
       // Duplicate the form actions into the action container in the header.
       $form['header'][$this->options['id']]['actions'] = $form['actions'];
@@ -308,7 +308,7 @@ public function viewsForm(&$form, FormStateInterface $form_state) {
    *   An associative array of operations, suitable for a select element.
    */
   protected function getBulkOptions($filtered = TRUE) {
-    $options = array();
+    $options = [];
     // Filter the action list.
     foreach ($this->actions as $id => $action) {
       if ($filtered) {
@@ -349,7 +349,7 @@ public function viewsFormSubmit(&$form, FormStateInterface $form_state) {
       // bulk form is submitted, which can lead to data loss.
       $user_input = $form_state->getUserInput();
       $selected = array_filter($user_input[$this->options['id']]);
-      $entities = array();
+      $entities = [];
       $action = $this->actions[$form_state->getValue('action')];
       $count = 0;
 
@@ -375,18 +375,18 @@ public function viewsFormSubmit(&$form, FormStateInterface $form_state) {
 
       $operation_definition = $action->getPluginDefinition();
       if (!empty($operation_definition['confirm_form_route_name'])) {
-        $options = array(
+        $options = [
           'query' => $this->getDestinationArray(),
-        );
-        $form_state->setRedirect($operation_definition['confirm_form_route_name'], array(), $options);
+        ];
+        $form_state->setRedirect($operation_definition['confirm_form_route_name'], [], $options);
       }
       else {
         // Don't display the message unless there are some elements affected and
         // there is no confirmation form.
         if ($count) {
-          drupal_set_message($this->formatPlural($count, '%action was applied to @count item.', '%action was applied to @count items.', array(
+          drupal_set_message($this->formatPlural($count, '%action was applied to @count item.', '%action was applied to @count items.', [
             '%action' => $action->label(),
-          )));
+          ]));
         }
       }
     }
diff --git a/core/modules/system/src/SystemConfigSubscriber.php b/core/modules/system/src/SystemConfigSubscriber.php
index 3c0de5f..ddd37be 100644
--- a/core/modules/system/src/SystemConfigSubscriber.php
+++ b/core/modules/system/src/SystemConfigSubscriber.php
@@ -81,11 +81,11 @@ public function onConfigImporterValidateSiteUUID(ConfigImporterEvent $event) {
    * {@inheritdoc}
    */
   public static function getSubscribedEvents() {
-    $events[ConfigEvents::SAVE][] = array('onConfigSave', 0);
+    $events[ConfigEvents::SAVE][] = ['onConfigSave', 0];
     // The empty check has a high priority so that it can stop propagation if
     // there is no configuration to import.
-    $events[ConfigEvents::IMPORT_VALIDATE][] = array('onConfigImporterValidateNotEmpty', 512);
-    $events[ConfigEvents::IMPORT_VALIDATE][] = array('onConfigImporterValidateSiteUUID', 256);
+    $events[ConfigEvents::IMPORT_VALIDATE][] = ['onConfigImporterValidateNotEmpty', 512];
+    $events[ConfigEvents::IMPORT_VALIDATE][] = ['onConfigImporterValidateSiteUUID', 256];
     return $events;
   }
 
diff --git a/core/modules/system/src/SystemManager.php b/core/modules/system/src/SystemManager.php
index b9fcebb..d2e0344 100644
--- a/core/modules/system/src/SystemManager.php
+++ b/core/modules/system/src/SystemManager.php
@@ -109,7 +109,7 @@ public function listRequirements() {
     drupal_load_updates();
 
     // Check run-time requirements and status information.
-    $requirements = $this->moduleHandler->invokeAll('requirements', array('runtime'));
+    $requirements = $this->moduleHandler->invokeAll('requirements', ['runtime']);
     uasort($requirements, function($a, $b) {
       if (!isset($a['weight'])) {
         if (!isset($b['weight'])) {
@@ -159,15 +159,15 @@ public function getBlockContents() {
     // or elsewhere could give us a blank block.
     $link = $this->menuActiveTrail->getActiveLink('admin');
     if ($link && $content = $this->getAdminBlock($link)) {
-      $output = array(
+      $output = [
         '#theme' => 'admin_block_content',
         '#content' => $content,
-      );
+      ];
     }
     else {
-      $output = array(
+      $output = [
         '#markup' => t('You do not have any administrative items.'),
-      );
+      ];
     }
     return $output;
   }
@@ -182,16 +182,16 @@ public function getBlockContents() {
    *   An array of menu items, as expected by admin-block-content.html.twig.
    */
   public function getAdminBlock(MenuLinkInterface $instance) {
-    $content = array();
+    $content = [];
     // Only find the children of this link.
     $link_id = $instance->getPluginId();
     $parameters = new MenuTreeParameters();
     $parameters->setRoot($link_id)->excludeRoot()->setTopLevelOnly()->onlyEnabledLinks();
     $tree = $this->menuTree->load(NULL, $parameters);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ];
     $tree = $this->menuTree->transform($tree, $manipulators);
     foreach ($tree as $key => $element) {
       // Only render accessible links.
diff --git a/core/modules/system/src/Tests/Ajax/AjaxInGroupTest.php b/core/modules/system/src/Tests/Ajax/AjaxInGroupTest.php
index 4ca7390..cb45e2d 100644
--- a/core/modules/system/src/Tests/Ajax/AjaxInGroupTest.php
+++ b/core/modules/system/src/Tests/Ajax/AjaxInGroupTest.php
@@ -11,7 +11,7 @@ class AjaxInGroupTest extends AjaxTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array('access content')));
+    $this->drupalLogin($this->drupalCreateUser(['access content']));
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Ajax/AjaxTestBase.php b/core/modules/system/src/Tests/Ajax/AjaxTestBase.php
index e4db3bd..66e06c8 100644
--- a/core/modules/system/src/Tests/Ajax/AjaxTestBase.php
+++ b/core/modules/system/src/Tests/Ajax/AjaxTestBase.php
@@ -14,7 +14,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'ajax_test', 'ajax_forms_test');
+  public static $modules = ['node', 'ajax_test', 'ajax_forms_test'];
 
   /**
    * Asserts the array of Ajax commands contains the searched command.
diff --git a/core/modules/system/src/Tests/Ajax/CommandsTest.php b/core/modules/system/src/Tests/Ajax/CommandsTest.php
index 7e26fa3..b09d42a 100644
--- a/core/modules/system/src/Tests/Ajax/CommandsTest.php
+++ b/core/modules/system/src/Tests/Ajax/CommandsTest.php
@@ -34,89 +34,89 @@ class CommandsTest extends AjaxTestBase {
    */
   function testAjaxCommands() {
     $form_path = 'ajax_forms_test_ajax_commands_form';
-    $web_user = $this->drupalCreateUser(array('access content'));
+    $web_user = $this->drupalCreateUser(['access content']);
     $this->drupalLogin($web_user);
 
-    $edit = array();
+    $edit = [];
 
     // Tests the 'add_css' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'add_css' command")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'add_css' command")]);
     $expected = new AddCssCommand('my/file.css');
     $this->assertCommand($commands, $expected->render(), "'add_css' AJAX command issued with correct data.");
 
     // Tests the 'after' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'After': Click to put something after the div")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'After': Click to put something after the div")]);
     $expected = new AfterCommand('#after_div', 'This will be placed after');
     $this->assertCommand($commands, $expected->render(), "'after' AJAX command issued with correct data.");
 
     // Tests the 'alert' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'Alert': Click to alert")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'Alert': Click to alert")]);
     $expected = new AlertCommand(t('Alert'));
     $this->assertCommand($commands, $expected->render(), "'alert' AJAX Command issued with correct text.");
 
     // Tests the 'append' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'Append': Click to append something")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'Append': Click to append something")]);
     $expected = new AppendCommand('#append_div', 'Appended text');
     $this->assertCommand($commands, $expected->render(), "'append' AJAX command issued with correct data.");
 
     // Tests the 'before' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'before': Click to put something before the div")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'before': Click to put something before the div")]);
     $expected = new BeforeCommand('#before_div', 'Before text');
     $this->assertCommand($commands, $expected->render(), "'before' AJAX command issued with correct data.");
 
     // Tests the 'changed' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX changed: Click to mark div changed.")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX changed: Click to mark div changed.")]);
     $expected = new ChangedCommand('#changed_div');
     $this->assertCommand($commands, $expected->render(), "'changed' AJAX command issued with correct selector.");
 
     // Tests the 'changed' command using the second argument.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX changed: Click to mark div changed with asterisk.")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX changed: Click to mark div changed with asterisk.")]);
     $expected = new ChangedCommand('#changed_div', '#changed_div_mark_this');
     $this->assertCommand($commands, $expected->render(), "'changed' AJAX command (with asterisk) issued with correct selector.");
 
     // Tests the 'css' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("Set the '#box' div to be blue.")));
-    $expected = new CssCommand('#css_div', array('background-color' => 'blue'));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("Set the '#box' div to be blue.")]);
+    $expected = new CssCommand('#css_div', ['background-color' => 'blue']);
     $this->assertCommand($commands, $expected->render(), "'css' AJAX command issued with correct selector.");
 
     // Tests the 'data' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX data command: Issue command.")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX data command: Issue command.")]);
     $expected = new DataCommand('#data_div', 'testkey', 'testvalue');
     $this->assertCommand($commands, $expected->render(), "'data' AJAX command issued with correct key and value.");
 
     // Tests the 'html' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX html: Replace the HTML in a selector.")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX html: Replace the HTML in a selector.")]);
     $expected = new HtmlCommand('#html_div', 'replacement text');
     $this->assertCommand($commands, $expected->render(), "'html' AJAX command issued with correct data.");
 
     // Tests the 'insert' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX insert: Let client insert based on #ajax['method'].")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX insert: Let client insert based on #ajax['method'].")]);
     $expected = new InsertCommand('#insert_div', 'insert replacement text');
     $this->assertCommand($commands, $expected->render(), "'insert' AJAX command issued with correct data.");
 
     // Tests the 'invoke' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX invoke command: Invoke addClass() method.")));
-    $expected = new InvokeCommand('#invoke_div', 'addClass', array('error'));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX invoke command: Invoke addClass() method.")]);
+    $expected = new InvokeCommand('#invoke_div', 'addClass', ['error']);
     $this->assertCommand($commands, $expected->render(), "'invoke' AJAX command issued with correct method and argument.");
 
     // Tests the 'prepend' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'prepend': Click to prepend something")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'prepend': Click to prepend something")]);
     $expected = new PrependCommand('#prepend_div', 'prepended text');
     $this->assertCommand($commands, $expected->render(), "'prepend' AJAX command issued with correct data.");
 
     // Tests the 'remove' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'remove': Click to remove text")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'remove': Click to remove text")]);
     $expected = new RemoveCommand('#remove_text');
     $this->assertCommand($commands, $expected->render(), "'remove' AJAX command issued with correct command and selector.");
 
     // Tests the 'restripe' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'restripe' command")));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'restripe' command")]);
     $expected = new RestripeCommand('#restripe_table');
     $this->assertCommand($commands, $expected->render(), "'restripe' AJAX command issued with correct selector.");
 
     // Tests the 'settings' command.
-    $commands = $this->drupalPostAjaxForm($form_path, $edit, array('op' => t("AJAX 'settings' command")));
-    $expected = new SettingsCommand(array('ajax_forms_test' => array('foo' => 42)));
+    $commands = $this->drupalPostAjaxForm($form_path, $edit, ['op' => t("AJAX 'settings' command")]);
+    $expected = new SettingsCommand(['ajax_forms_test' => ['foo' => 42]]);
     $this->assertCommand($commands, $expected->render(), "'settings' AJAX command issued with correct data.");
   }
 
diff --git a/core/modules/system/src/Tests/Ajax/DialogTest.php b/core/modules/system/src/Tests/Ajax/DialogTest.php
index 254f01d..ec94782 100644
--- a/core/modules/system/src/Tests/Ajax/DialogTest.php
+++ b/core/modules/system/src/Tests/Ajax/DialogTest.php
@@ -19,72 +19,72 @@ class DialogTest extends AjaxTestBase {
    *
    * @var array
    */
-  public static $modules = array('ajax_test', 'ajax_forms_test', 'contact');
+  public static $modules = ['ajax_test', 'ajax_forms_test', 'contact'];
 
   /**
    * Test sending non-JS and AJAX requests to open and manipulate modals.
    */
   public function testDialog() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer contact forms')));
+    $this->drupalLogin($this->drupalCreateUser(['administer contact forms']));
     // Ensure the elements render without notices or exceptions.
     $this->drupalGet('ajax-test/dialog');
 
     // Set up variables for this test.
     $dialog_renderable = AjaxTestController::dialogContents();
     $dialog_contents = \Drupal::service('renderer')->renderRoot($dialog_renderable);
-    $modal_expected_response = array(
+    $modal_expected_response = [
       'command' => 'openDialog',
       'selector' => '#drupal-modal',
       'settings' => NULL,
       'data' => $dialog_contents,
-      'dialogOptions' => array(
+      'dialogOptions' => [
         'modal' => TRUE,
         'title' => 'AJAX Dialog & contents',
-      ),
-    );
-    $form_expected_response = array(
+      ],
+    ];
+    $form_expected_response = [
       'command' => 'openDialog',
       'selector' => '#drupal-modal',
       'settings' => NULL,
-      'dialogOptions' => array(
+      'dialogOptions' => [
         'modal' => TRUE,
         'title' => 'Ajax Form contents',
-      ),
-    );
-    $entity_form_expected_response = array(
+      ],
+    ];
+    $entity_form_expected_response = [
       'command' => 'openDialog',
       'selector' => '#drupal-modal',
       'settings' => NULL,
-      'dialogOptions' => array(
+      'dialogOptions' => [
         'modal' => TRUE,
         'title' => 'Add contact form',
-      ),
-    );
-    $normal_expected_response = array(
+      ],
+    ];
+    $normal_expected_response = [
       'command' => 'openDialog',
       'selector' => '#ajax-test-dialog-wrapper-1',
       'settings' => NULL,
       'data' => $dialog_contents,
-      'dialogOptions' => array(
+      'dialogOptions' => [
         'modal' => FALSE,
         'title' => 'AJAX Dialog & contents',
-      ),
-    );
-    $no_target_expected_response = array(
+      ],
+    ];
+    $no_target_expected_response = [
       'command' => 'openDialog',
       'selector' => '#drupal-dialog-ajax-testdialog-contents',
       'settings' => NULL,
       'data' => $dialog_contents,
-      'dialogOptions' => array(
+      'dialogOptions' => [
         'modal' => FALSE,
         'title' => 'AJAX Dialog & contents',
-      ),
-    );
-    $close_expected_response = array(
+      ],
+    ];
+    $close_expected_response = [
       'command' => 'closeDialog',
       'selector' => '#ajax-test-dialog-wrapper-1',
       'persist' => FALSE,
-    );
+    ];
 
     // Check that requesting a modal dialog without JS goes to a page.
     $this->drupalGet('ajax-test/dialog-contents');
@@ -95,7 +95,7 @@ public function testDialog() {
     $this->assertRaw($dialog_contents, 'Modal dialog page on XMLHttpRequest present.');
 
     // Emulate going to the JS version of the page and check the JSON response.
-    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-contents', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal')));
+    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-contents', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal']]);
     $this->assertEqual($modal_expected_response, $ajax_result[3], 'Modal dialog JSON response matches.');
     // Test the HTML escaping of & character.
     $this->assertEqual($ajax_result[3]['dialogOptions']['title'], 'AJAX Dialog & contents');
@@ -108,26 +108,26 @@ public function testDialog() {
     // Emulate going to the JS version of the page and check the JSON response.
     // This needs to use WebTestBase::drupalPostAjaxForm() so that the correct
     // dialog options are sent.
-    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', array(
+    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', [
         // We have to mock a form element to make drupalPost submit from a link.
         'textfield' => 'test',
-      ), array(), 'ajax-test/dialog-contents', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog')), array(), NULL, array(
-      'submit' => array(
+      ], [], 'ajax-test/dialog-contents', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog']], [], NULL, [
+      'submit' => [
         'dialogOptions[target]' => 'ajax-test-dialog-wrapper-1',
-      )
-    ));
+      ]
+    ]);
     $this->assertEqual($normal_expected_response, $ajax_result[3], 'Normal dialog JSON response matches.');
 
     // Emulate going to the JS version of the page and check the JSON response.
     // This needs to use WebTestBase::drupalPostAjaxForm() so that the correct
     // dialog options are sent.
-    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', array(
+    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', [
         // We have to mock a form element to make drupalPost submit from a link.
         'textfield' => 'test',
-      ), array(), 'ajax-test/dialog-contents', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog')), array(), NULL, array(
+      ], [], 'ajax-test/dialog-contents', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_dialog']], [], NULL, [
       // Don't send a target.
-      'submit' => array()
-    ));
+      'submit' => []
+    ]);
     // Make sure the selector ID starts with the right string.
     $this->assert(strpos($ajax_result[3]['selector'], $no_target_expected_response['selector']) === 0, 'Selector starts with right string.');
     unset($ajax_result[3]['selector']);
@@ -142,7 +142,7 @@ public function testDialog() {
     // Test submitting via a POST request through the button for modals. This
     // approach more accurately reflects the real responses by Drupal because
     // all of the necessary page variables are emulated.
-    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', array(), 'button1');
+    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', [], 'button1');
 
     // Check that CSS and JavaScript are "added" to the page dynamically.
     $this->assertTrue(in_array('core/drupal.dialog.ajax', explode(',', $ajax_result[0]['settings']['ajaxPageState']['libraries'])), 'core/drupal.dialog.ajax library is added to the page.');
@@ -159,7 +159,7 @@ public function testDialog() {
     $this->assertNotEqual($ajax_result[4]['dialogOptions']['title'], 'AJAX Dialog &amp; contents');
 
     // Abbreviated test for "normal" dialogs, testing only the difference.
-    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', array(), 'button2');
+    $ajax_result = $this->drupalPostAjaxForm('ajax-test/dialog', [], 'button2');
     $this->assertEqual($normal_expected_response, $ajax_result[4], 'POST request normal dialog JSON response matches.');
 
     // Check that requesting a form dialog without JS goes to a page.
@@ -170,7 +170,7 @@ public function testDialog() {
     $this->assertTrue(!empty($form), 'Non-JS form page present.');
 
     // Emulate going to the JS version of the form and check the JSON response.
-    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-form', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal')));
+    $ajax_result = $this->drupalGetAjax('ajax-test/dialog-form', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal']]);
     $expected_ajax_settings = [
       'edit-preview' => [
         'callback' => '::preview',
@@ -202,7 +202,7 @@ public function testDialog() {
     $this->assertTrue(!empty($form), 'Non-JS entity form page present.');
 
     // Emulate going to the JS version of the form and check the JSON response.
-    $ajax_result = $this->drupalGetAjax('admin/structure/contact/add', array('query' => array(MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal')));
+    $ajax_result = $this->drupalGetAjax('admin/structure/contact/add', ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_modal']]);
     $this->setRawContent($ajax_result[3]['data']);
     // Remove the data, the form build id and token will never match.
     unset($ajax_result[3]['data']);
diff --git a/core/modules/system/src/Tests/Ajax/ElementValidationTest.php b/core/modules/system/src/Tests/Ajax/ElementValidationTest.php
index 5133ce3..ceb5405 100644
--- a/core/modules/system/src/Tests/Ajax/ElementValidationTest.php
+++ b/core/modules/system/src/Tests/Ajax/ElementValidationTest.php
@@ -17,7 +17,7 @@ class ElementValidationTest extends AjaxTestBase {
    * Ajax-enabled field fails due to the required field being empty.
    */
   function testAjaxElementValidation() {
-    $edit = array('drivertext' => t('some dumb text'));
+    $edit = ['drivertext' => t('some dumb text')];
 
     // Post with 'drivertext' as the triggering element.
     $this->drupalPostAjaxForm('ajax_validation_test', $edit, 'drivertext');
@@ -26,7 +26,7 @@ function testAjaxElementValidation() {
     $this->assertText('ajax_forms_test_validation_form_callback invoked', 'The correct callback was invoked');
 
     $this->drupalGet('ajax_validation_test');
-    $edit = array('drivernumber' => 12345);
+    $edit = ['drivernumber' => 12345];
 
     // Post with 'drivernumber' as the triggering element.
     $this->drupalPostAjaxForm('ajax_validation_test', $edit, 'drivernumber');
diff --git a/core/modules/system/src/Tests/Ajax/FormValuesTest.php b/core/modules/system/src/Tests/Ajax/FormValuesTest.php
index 0a23db1..3d7bc91 100644
--- a/core/modules/system/src/Tests/Ajax/FormValuesTest.php
+++ b/core/modules/system/src/Tests/Ajax/FormValuesTest.php
@@ -13,7 +13,7 @@ class FormValuesTest extends AjaxTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array('access content')));
+    $this->drupalLogin($this->drupalCreateUser(['access content']));
   }
 
   /**
@@ -21,20 +21,20 @@ protected function setUp() {
    */
   function testSimpleAjaxFormValue() {
     // Verify form values of a select element.
-    foreach (array('red', 'green', 'blue') as $item) {
-      $edit = array(
+    foreach (['red', 'green', 'blue'] as $item) {
+      $edit = [
         'select' => $item,
-      );
+      ];
       $commands = $this->drupalPostAjaxForm('ajax_forms_test_get_form', $edit, 'select');
       $expected = new DataCommand('#ajax_selected_color', 'form_state_value_select', $item);
       $this->assertCommand($commands, $expected->render(), 'Verification of AJAX form values from a selectbox issued with a correct value.');
     }
 
     // Verify form values of a checkbox element.
-    foreach (array(FALSE, TRUE) as $item) {
-      $edit = array(
+    foreach ([FALSE, TRUE] as $item) {
+      $edit = [
         'checkbox' => $item,
-      );
+      ];
       $commands = $this->drupalPostAjaxForm('ajax_forms_test_get_form', $edit, 'checkbox');
       $expected = new DataCommand('#ajax_checkbox_value', 'form_state_value_select', (int) $item);
       $this->assertCommand($commands, $expected->render(), 'Verification of AJAX form values from a checkbox issued with a correct value.');
@@ -46,11 +46,11 @@ function testSimpleAjaxFormValue() {
     // We don't need to check for the X-Drupal-Ajax-Token header with these
     // invalid requests.
     $this->assertAjaxHeader = FALSE;
-    foreach (array('null', 'empty', 'nonexistent') as $key) {
+    foreach (['null', 'empty', 'nonexistent'] as $key) {
       $element_name = 'select_' . $key . '_callback';
-      $edit = array(
+      $edit = [
         $element_name => 'red',
-      );
+      ];
       $commands = $this->drupalPostAjaxForm('ajax_forms_test_get_form', $edit, $element_name);
       $this->assertResponse(500);
     }
diff --git a/core/modules/system/src/Tests/Ajax/FrameworkTest.php b/core/modules/system/src/Tests/Ajax/FrameworkTest.php
index fb59bcc..14bae06 100644
--- a/core/modules/system/src/Tests/Ajax/FrameworkTest.php
+++ b/core/modules/system/src/Tests/Ajax/FrameworkTest.php
@@ -22,7 +22,7 @@ class FrameworkTest extends AjaxTestBase {
   public function testAJAXRender() {
     // Verify that settings command is generated if JavaScript settings exist.
     $commands = $this->drupalGetAjax('ajax-test/render');
-    $expected = new SettingsCommand(array('ajax' => 'test'), TRUE);
+    $expected = new SettingsCommand(['ajax' => 'test'], TRUE);
     $this->assertCommand($commands, $expected->render(), 'JavaScript settings command is present.');
   }
 
@@ -30,14 +30,14 @@ public function testAJAXRender() {
    * Tests AjaxResponse::prepare() AJAX commands ordering.
    */
   public function testOrder() {
-    $expected_commands = array();
+    $expected_commands = [];
 
     // Expected commands, in a very specific order.
     $asset_resolver = \Drupal::service('asset.resolver');
     $css_collection_renderer = \Drupal::service('asset.css.collection_renderer');
     $js_collection_renderer = \Drupal::service('asset.js.collection_renderer');
     $renderer = \Drupal::service('renderer');
-    $expected_commands[0] = new SettingsCommand(array('ajax' => 'test'), TRUE);
+    $expected_commands[0] = new SettingsCommand(['ajax' => 'test'], TRUE);
     $build['#attached']['library'][] = 'ajax_test/order-css-command';
     $assets = AttachedAssets::createFromRenderArray($build);
     $css_render_array = $css_collection_renderer->render($asset_resolver->getCssAssets($assets, FALSE));
@@ -65,7 +65,7 @@ public function testOrder() {
     // 3. JavaScript files in the header
     // 4. JavaScript files in the footer
     // 5. Any other AJAX commands, in whatever order they were added.
-    $commands = $this->drupalPostAjaxForm(NULL, array(), NULL, 'ajax-test/order', array(), array(), NULL, array());
+    $commands = $this->drupalPostAjaxForm(NULL, [], NULL, 'ajax-test/order', [], [], NULL, []);
     $this->assertCommand(array_slice($commands, 0, 1), $expected_commands[0]->render(), 'Settings command is first.');
     $this->assertCommand(array_slice($commands, 1, 1), $expected_commands[1]->render(), 'CSS command is second (and CSS files are ordered correctly).');
     $this->assertCommand(array_slice($commands, 2, 1), $expected_commands[2]->render(), 'Header JS command is third.');
@@ -78,10 +78,10 @@ public function testOrder() {
    */
   public function testAJAXRenderError() {
     // Verify custom error message.
-    $edit = array(
+    $edit = [
       'message' => 'Custom error message.',
-    );
-    $commands = $this->drupalGetAjax('ajax-test/render-error', array('query' => $edit));
+    ];
+    $commands = $this->drupalGetAjax('ajax-test/render-error', ['query' => $edit]);
     $expected = new AlertCommand($edit['message']);
     $this->assertCommand($commands, $expected->render(), 'Custom error message is output.');
   }
@@ -95,12 +95,12 @@ public function testLazyLoad() {
     $js_collection_renderer = \Drupal::service('asset.js.collection_renderer');
     $renderer = \Drupal::service('renderer');
 
-    $expected = array(
+    $expected = [
       'setting_name' => 'ajax_forms_test_lazy_load_form_submit',
       'setting_value' => 'executed',
       'library_1' => 'system/admin',
       'library_2' => 'system/drupal.system',
-    );
+    ];
 
     // Get the base page.
     $this->drupalGet('ajax_forms_test_lazy_load_form');
@@ -109,9 +109,9 @@ public function testLazyLoad() {
 
     // Verify that the base page doesn't have the settings and files that are to
     // be lazy loaded as part of the next requests.
-    $this->assertTrue(!isset($original_settings[$expected['setting_name']]), format_string('Page originally lacks the %setting, as expected.', array('%setting' => $expected['setting_name'])));
-    $this->assertTrue(!in_array($expected['library_1'], $original_libraries), format_string('Page originally lacks the %library library, as expected.', array('%library' => $expected['library_1'])));
-    $this->assertTrue(!in_array($expected['library_2'], $original_libraries), format_string('Page originally lacks the %library library, as expected.', array('%library' => $expected['library_2'])));
+    $this->assertTrue(!isset($original_settings[$expected['setting_name']]), format_string('Page originally lacks the %setting, as expected.', ['%setting' => $expected['setting_name']]));
+    $this->assertTrue(!in_array($expected['library_1'], $original_libraries), format_string('Page originally lacks the %library library, as expected.', ['%library' => $expected['library_1']]));
+    $this->assertTrue(!in_array($expected['library_2'], $original_libraries), format_string('Page originally lacks the %library library, as expected.', ['%library' => $expected['library_2']]));
 
     // Calculate the expected CSS and JS.
     $assets = new AttachedAssets();
@@ -128,14 +128,14 @@ public function testLazyLoad() {
     $expected_js_html = $renderer->renderRoot($js_render_array);
 
     // Submit the AJAX request without triggering files getting added.
-    $commands = $this->drupalPostAjaxForm(NULL, array('add_files' => FALSE), array('op' => t('Submit')));
+    $commands = $this->drupalPostAjaxForm(NULL, ['add_files' => FALSE], ['op' => t('Submit')]);
     $new_settings = $this->getDrupalSettings();
     $new_libraries = explode(',', $new_settings['ajaxPageState']['libraries']);
 
     // Verify the setting was not added when not expected.
-    $this->assertTrue(!isset($new_settings[$expected['setting_name']]), format_string('Page still lacks the %setting, as expected.', array('%setting' => $expected['setting_name'])));
-    $this->assertTrue(!in_array($expected['library_1'], $new_libraries), format_string('Page still lacks the %library library, as expected.', array('%library' => $expected['library_1'])));
-    $this->assertTrue(!in_array($expected['library_2'], $new_libraries), format_string('Page still lacks the %library library, as expected.', array('%library' => $expected['library_2'])));
+    $this->assertTrue(!isset($new_settings[$expected['setting_name']]), format_string('Page still lacks the %setting, as expected.', ['%setting' => $expected['setting_name']]));
+    $this->assertTrue(!in_array($expected['library_1'], $new_libraries), format_string('Page still lacks the %library library, as expected.', ['%library' => $expected['library_1']]));
+    $this->assertTrue(!in_array($expected['library_2'], $new_libraries), format_string('Page still lacks the %library library, as expected.', ['%library' => $expected['library_2']]));
     // Verify a settings command does not add CSS or scripts to drupalSettings
     // and no command inserts the corresponding tags on the page.
     $found_settings_command = FALSE;
@@ -148,24 +148,24 @@ public function testLazyLoad() {
         $found_markup_command = TRUE;
       }
     }
-    $this->assertFalse($found_settings_command, format_string('Page state still lacks the %library_1 and %library_2 libraries, as expected.', array('%library_1' => $expected['library_1'], '%library_2' => $expected['library_2'])));
-    $this->assertFalse($found_markup_command, format_string('Page still lacks the %library_1 and %library_2 libraries, as expected.', array('%library_1' => $expected['library_1'], '%library_2' => $expected['library_2'])));
+    $this->assertFalse($found_settings_command, format_string('Page state still lacks the %library_1 and %library_2 libraries, as expected.', ['%library_1' => $expected['library_1'], '%library_2' => $expected['library_2']]));
+    $this->assertFalse($found_markup_command, format_string('Page still lacks the %library_1 and %library_2 libraries, as expected.', ['%library_1' => $expected['library_1'], '%library_2' => $expected['library_2']]));
 
     // Submit the AJAX request and trigger adding files.
-    $commands = $this->drupalPostAjaxForm(NULL, array('add_files' => TRUE), array('op' => t('Submit')));
+    $commands = $this->drupalPostAjaxForm(NULL, ['add_files' => TRUE], ['op' => t('Submit')]);
     $new_settings = $this->getDrupalSettings();
     $new_libraries = explode(',', $new_settings['ajaxPageState']['libraries']);
 
     // Verify the expected setting was added, both to drupalSettings, and as
     // the first AJAX command.
-    $this->assertIdentical($new_settings[$expected['setting_name']], $expected['setting_value'], format_string('Page now has the %setting.', array('%setting' => $expected['setting_name'])));
-    $expected_command = new SettingsCommand(array($expected['setting_name'] => $expected['setting_value']), TRUE);
+    $this->assertIdentical($new_settings[$expected['setting_name']], $expected['setting_value'], format_string('Page now has the %setting.', ['%setting' => $expected['setting_name']]));
+    $expected_command = new SettingsCommand([$expected['setting_name'] => $expected['setting_value']], TRUE);
     $this->assertCommand(array_slice($commands, 0, 1), $expected_command->render(), 'The settings command was first.');
 
     // Verify the expected CSS file was added, both to drupalSettings, and as
     // the second AJAX command for inclusion into the HTML.
-    $this->assertTrue(in_array($expected['library_1'], $new_libraries), format_string('Page state now has the %library library.', array('%library' => $expected['library_1'])));
-    $this->assertCommand(array_slice($commands, 1, 1), array('data' => $expected_css_html), format_string('Page now has the %library library.', array('%library' => $expected['library_1'])));
+    $this->assertTrue(in_array($expected['library_1'], $new_libraries), format_string('Page state now has the %library library.', ['%library' => $expected['library_1']]));
+    $this->assertCommand(array_slice($commands, 1, 1), ['data' => $expected_css_html], format_string('Page now has the %library library.', ['%library' => $expected['library_1']]));
 
     // Verify the expected JS file was added, both to drupalSettings, and as
     // the third AJAX command for inclusion into the HTML. By testing for an
@@ -173,15 +173,15 @@ public function testLazyLoad() {
     // unexpected JavaScript code, such as a jQuery.extend() that would
     // potentially clobber rather than properly merge settings, didn't
     // accidentally get added.
-    $this->assertTrue(in_array($expected['library_2'], $new_libraries), format_string('Page state now has the %library library.', array('%library' => $expected['library_2'])));
-    $this->assertCommand(array_slice($commands, 2, 1), array('data' => $expected_js_html), format_string('Page now has the %library library.', array('%library' => $expected['library_2'])));
+    $this->assertTrue(in_array($expected['library_2'], $new_libraries), format_string('Page state now has the %library library.', ['%library' => $expected['library_2']]));
+    $this->assertCommand(array_slice($commands, 2, 1), ['data' => $expected_js_html], format_string('Page now has the %library library.', ['%library' => $expected['library_2']]));
   }
 
   /**
    * Tests that drupalSettings.currentPath is not updated on AJAX requests.
    */
   public function testCurrentPathChange() {
-    $commands = $this->drupalPostAjaxForm('ajax_forms_test_lazy_load_form', array('add_files' => FALSE), array('op' => t('Submit')));
+    $commands = $this->drupalPostAjaxForm('ajax_forms_test_lazy_load_form', ['add_files' => FALSE], ['op' => t('Submit')]);
     foreach ($commands as $command) {
       if ($command['command'] == 'settings') {
         $this->assertFalse(isset($command['settings']['currentPath']), 'Value of drupalSettings.currentPath is not updated after an AJAX request.');
@@ -195,14 +195,14 @@ public function testCurrentPathChange() {
   public function testLazyLoadOverriddenCSS() {
     // The test theme overrides js.module.css without an implementation,
     // thereby removing it.
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
     $this->config('system.theme')
       ->set('default', 'test_theme')
       ->save();
 
     // This gets the form, and emulates an Ajax submission on it, including
     // adding markup to the HEAD and BODY for any lazy loaded JS/CSS files.
-    $this->drupalPostAjaxForm('ajax_forms_test_lazy_load_form', array('add_files' => TRUE), array('op' => t('Submit')));
+    $this->drupalPostAjaxForm('ajax_forms_test_lazy_load_form', ['add_files' => TRUE], ['op' => t('Submit')]);
 
     // Verify that the resulting HTML does not load the overridden CSS file.
     // We add a "?" to the assertion, because drupalSettings may include
diff --git a/core/modules/system/src/Tests/Ajax/MultiFormTest.php b/core/modules/system/src/Tests/Ajax/MultiFormTest.php
index e07204c..59f60bf 100644
--- a/core/modules/system/src/Tests/Ajax/MultiFormTest.php
+++ b/core/modules/system/src/Tests/Ajax/MultiFormTest.php
@@ -19,32 +19,32 @@ class MultiFormTest extends AjaxTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Page']);
 
     // Create a multi-valued field for 'page' nodes to use for Ajax testing.
     $field_name = 'field_ajax_test';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'node',
       'field_name' => $field_name,
       'type' => 'text',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'bundle' => 'page',
     ])->save();
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent($field_name, array('type' => 'text_textfield'))
+      ->setComponent($field_name, ['type' => 'text_textfield'])
       ->save();
 
     // Log in a user who can create 'page' nodes.
-    $this->drupalLogin ($this->drupalCreateUser(array('create page content')));
+    $this->drupalLogin ($this->drupalCreateUser(['create page content']));
   }
 
   /**
@@ -84,7 +84,7 @@ function testMultiForm() {
       $forms = $this->xpath($form_xpath);
       foreach ($forms as $offset => $form) {
         $form_html_id = (string) $form['id'];
-        $this->drupalPostAjaxForm(NULL, array(), array($button_name => $button_value), NULL, array(), array(), $form_html_id);
+        $this->drupalPostAjaxForm(NULL, [], [$button_name => $button_value], NULL, [], [], $form_html_id);
         $form = $this->xpath($form_xpath)[$offset];
         $field = $form->xpath('.' . $field_xpath);
 
diff --git a/core/modules/system/src/Tests/Batch/PageTest.php b/core/modules/system/src/Tests/Batch/PageTest.php
index f9948ed..0f24c0f 100644
--- a/core/modules/system/src/Tests/Batch/PageTest.php
+++ b/core/modules/system/src/Tests/Batch/PageTest.php
@@ -16,7 +16,7 @@ class PageTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('batch_test');
+  public static $modules = ['batch_test'];
 
   /**
    * Tests that the batch API progress page uses the correct theme.
@@ -24,14 +24,14 @@ class PageTest extends WebTestBase {
   function testBatchProgressPageTheme() {
     // Make sure that the page which starts the batch (an administrative page)
     // is using a different theme than would normally be used by the batch API.
-    $this->container->get('theme_handler')->install(array('seven', 'bartik'));
+    $this->container->get('theme_handler')->install(['seven', 'bartik']);
     $this->config('system.theme')
       ->set('default', 'bartik')
       ->set('admin', 'seven')
       ->save();
 
     // Log in as an administrator who can see the administrative theme.
-    $admin_user = $this->drupalCreateUser(array('view the administration theme'));
+    $admin_user = $this->drupalCreateUser(['view the administration theme']);
     $this->drupalLogin($admin_user);
     // Visit an administrative page that runs a test batch, and check that the
     // theme that was used during batch execution (which the batch callback
@@ -40,7 +40,7 @@ function testBatchProgressPageTheme() {
     $this->drupalGet('admin/batch-test/test-theme');
     // The stack should contain the name of the theme used on the progress
     // page.
-    $this->assertEqual(batch_test_stack(), array('seven'), 'A progressive batch correctly uses the theme of the page that started the batch.');
+    $this->assertEqual(batch_test_stack(), ['seven'], 'A progressive batch correctly uses the theme of the page that started the batch.');
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Batch/ProcessingTest.php b/core/modules/system/src/Tests/Batch/ProcessingTest.php
index fcdb98c..53557ed 100644
--- a/core/modules/system/src/Tests/Batch/ProcessingTest.php
+++ b/core/modules/system/src/Tests/Batch/ProcessingTest.php
@@ -17,7 +17,7 @@ class ProcessingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('batch_test', 'test_page_test');
+  public static $modules = ['batch_test', 'test_page_test'];
 
   /**
    * Tests batches triggered outside of form submission.
@@ -47,14 +47,14 @@ function testBatchRedirectFinishedCallback() {
    */
   function testBatchForm() {
     // Batch 0: no operation.
-    $edit = array('batch' => 'batch_0');
+    $edit = ['batch' => 'batch_0'];
     $this->drupalPostForm('batch-test', $edit, 'Submit');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
     $this->assertBatchMessages($this->_resultMessages('batch_0'), 'Batch with no operation performed successfully.');
     $this->assertText('Redirection successful.', 'Redirection after batch execution is correct.');
 
     // Batch 1: several simple operations.
-    $edit = array('batch' => 'batch_1');
+    $edit = ['batch' => 'batch_1'];
     $this->drupalPostForm('batch-test', $edit, 'Submit');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
     $this->assertBatchMessages($this->_resultMessages('batch_1'), 'Batch with simple operations performed successfully.');
@@ -62,7 +62,7 @@ function testBatchForm() {
     $this->assertText('Redirection successful.', 'Redirection after batch execution is correct.');
 
     // Batch 2: one multistep operation.
-    $edit = array('batch' => 'batch_2');
+    $edit = ['batch' => 'batch_2'];
     $this->drupalPostForm('batch-test', $edit, 'Submit');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
     $this->assertBatchMessages($this->_resultMessages('batch_2'), 'Batch with multistep operation performed successfully.');
@@ -70,7 +70,7 @@ function testBatchForm() {
     $this->assertText('Redirection successful.', 'Redirection after batch execution is correct.');
 
     // Batch 3: simple + multistep combined.
-    $edit = array('batch' => 'batch_3');
+    $edit = ['batch' => 'batch_3'];
     $this->drupalPostForm('batch-test', $edit, 'Submit');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
     $this->assertBatchMessages($this->_resultMessages('batch_3'), 'Batch with simple and multistep operations performed successfully.');
@@ -78,7 +78,7 @@ function testBatchForm() {
     $this->assertText('Redirection successful.', 'Redirection after batch execution is correct.');
 
     // Batch 4: nested batch.
-    $edit = array('batch' => 'batch_4');
+    $edit = ['batch' => 'batch_4'];
     $this->drupalPostForm('batch-test', $edit, 'Submit');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
     $this->assertBatchMessages($this->_resultMessages('batch_4'), 'Nested batch performed successfully.');
@@ -95,14 +95,14 @@ function testBatchFormMultistep() {
     $this->assertText('step 1', 'Form is displayed in step 1.');
 
     // First step triggers batch 1.
-    $this->drupalPostForm(NULL, array(), 'Submit');
+    $this->drupalPostForm(NULL, [], 'Submit');
     $this->assertBatchMessages($this->_resultMessages('batch_1'), 'Batch for step 1 performed successfully.');
     $this->assertEqual(batch_test_stack(), $this->_resultStack('batch_1'), 'Execution order was correct.');
     $this->assertText('step 2', 'Form is displayed in step 2.');
     $this->assertNoEscaped('<', 'No escaped markup is present.');
 
     // Second step triggers batch 2.
-    $this->drupalPostForm(NULL, array(), 'Submit');
+    $this->drupalPostForm(NULL, [], 'Submit');
     $this->assertBatchMessages($this->_resultMessages('batch_2'), 'Batch for step 2 performed successfully.');
     $this->assertEqual(batch_test_stack(), $this->_resultStack('batch_2'), 'Execution order was correct.');
     $this->assertText('Redirection successful.', 'Redirection after batch execution is correct.');
@@ -111,7 +111,7 @@ function testBatchFormMultistep() {
     // Extra query arguments will trigger logic that will add them to the
     // redirect URL. Make sure they are persisted.
     $this->drupalGet('batch-test/multistep', ['query' => ['big_tree' => 'small_axe']]);
-    $this->drupalPostForm(NULL, array(), 'Submit');
+    $this->drupalPostForm(NULL, [], 'Submit');
     $this->assertText('step 2', 'Form is displayed in step 2.');
     $this->assertTrue(strpos($this->getUrl(), 'batch-test/multistep?big_tree=small_axe'), 'Query argument was persisted and another extra argument was added.');
   }
@@ -123,7 +123,7 @@ function testBatchFormMultipleBatches() {
     // Batches 1, 2 and 3 are triggered in sequence by different submit
     // handlers. Each submit handler modify the submitted 'value'.
     $value = rand(0, 255);
-    $edit = array('value' => $value);
+    $edit = ['value' => $value];
     $this->drupalPostForm('batch-test/chained', $edit, 'Submit');
     // Check that result messages are present and in the correct order.
     $this->assertBatchMessages($this->_resultMessages('chained'), 'Batches defined in separate submit handlers performed successfully.');
@@ -159,7 +159,7 @@ function testDrupalFormSubmitInBatch() {
     // form.
     $value = rand(0, 255);
     $this->drupalGet('batch-test/nested-programmatic/' . $value);
-    $this->assertEqual(batch_test_stack(), array('mock form submitted with value = ' . $value), '\Drupal::formBuilder()->submitForm() ran successfully within a batch operation.');
+    $this->assertEqual(batch_test_stack(), ['mock form submitted with value = ' . $value], '\Drupal::formBuilder()->submitForm() ran successfully within a batch operation.');
   }
 
   /**
@@ -196,7 +196,7 @@ function assertBatchMessages($texts, $message) {
    * Returns expected execution stacks for the test batches.
    */
   function _resultStack($id, $value = 0) {
-    $stack = array();
+    $stack = [];
     switch ($id) {
       case 'batch_1':
         for ($i = 1; $i <= 10; $i++) {
@@ -263,7 +263,7 @@ function _resultStack($id, $value = 0) {
    * Returns expected result messages for the test batches.
    */
   function _resultMessages($id) {
-    $messages = array();
+    $messages = [];
 
     switch ($id) {
       case 'batch_0':
diff --git a/core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php b/core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php
index c216e9b..6bea791 100644
--- a/core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php
+++ b/core/modules/system/src/Tests/Cache/AssertPageCacheContextsAndTagsTrait.php
@@ -89,7 +89,7 @@ protected function assertPageCacheContextsAndTags(Url $url, array $expected_cont
     $this->assertCacheContexts($expected_contexts);
 
     // Assert page cache item + expected cache tags.
-    $cid_parts = array($url->setAbsolute()->toString(), 'html');
+    $cid_parts = [$url->setAbsolute()->toString(), 'html'];
     $cid = implode(':', $cid_parts);
     $cache_entry = \Drupal::cache('render')->get($cid);
     sort($cache_entry->tags);
diff --git a/core/modules/system/src/Tests/Cache/GenericCacheBackendUnitTestBase.php b/core/modules/system/src/Tests/Cache/GenericCacheBackendUnitTestBase.php
index 6c3d98f..c30ceff 100644
--- a/core/modules/system/src/Tests/Cache/GenericCacheBackendUnitTestBase.php
+++ b/core/modules/system/src/Tests/Cache/GenericCacheBackendUnitTestBase.php
@@ -105,7 +105,7 @@ protected function getCacheBackend($bin = NULL) {
   }
 
   protected function setUp() {
-    $this->cachebackends = array();
+    $this->cachebackends = [];
     $this->defaultValue = $this->randomMachineName(10);
 
     parent::setUp();
@@ -134,7 +134,7 @@ public function testSetGet() {
     $backend = $this->getCacheBackend();
 
     $this->assertIdentical(FALSE, $backend->get('test1'), "Backend does not contain data for cache id test1.");
-    $with_backslash = array('foo' => '\Drupal\foo\Bar');
+    $with_backslash = ['foo' => '\Drupal\foo\Bar'];
     $backend->set('test1', $with_backslash);
     $cached = $backend->get('test1');
     $this->assert(is_object($cached), "Backend returned an object for cache id test1.");
@@ -145,10 +145,10 @@ public function testSetGet() {
     $this->assertEqual($cached->expire, Cache::PERMANENT, 'Expire time is correct.');
 
     $this->assertIdentical(FALSE, $backend->get('test2'), "Backend does not contain data for cache id test2.");
-    $backend->set('test2', array('value' => 3), REQUEST_TIME + 3);
+    $backend->set('test2', ['value' => 3], REQUEST_TIME + 3);
     $cached = $backend->get('test2');
     $this->assert(is_object($cached), "Backend returned an object for cache id test2.");
-    $this->assertIdentical(array('value' => 3), $cached->data);
+    $this->assertIdentical(['value' => 3], $cached->data);
     $this->assertTrue($cached->valid, 'Item is marked as valid.');
     $this->assertTrue($cached->created >= REQUEST_TIME && $cached->created <= round(microtime(TRUE), 3), 'Created time is correct.');
     $this->assertEqual($cached->expire, REQUEST_TIME + 3, 'Expire time is correct.');
@@ -162,7 +162,7 @@ public function testSetGet() {
     $this->assertEqual($cached->expire, REQUEST_TIME - 3, 'Expire time is correct.');
 
     $this->assertIdentical(FALSE, $backend->get('test4'), "Backend does not contain data for cache id test4.");
-    $with_eof = array('foo' => "\nEOF\ndata");
+    $with_eof = ['foo' => "\nEOF\ndata"];
     $backend->set('test4', $with_eof);
     $cached = $backend->get('test4');
     $this->assert(is_object($cached), "Backend returned an object for cache id test4.");
@@ -172,7 +172,7 @@ public function testSetGet() {
     $this->assertEqual($cached->expire, Cache::PERMANENT, 'Expire time is correct.');
 
     $this->assertIdentical(FALSE, $backend->get('test5'), "Backend does not contain data for cache id test5.");
-    $with_eof_and_semicolon = array('foo' => "\nEOF;\ndata");
+    $with_eof_and_semicolon = ['foo' => "\nEOF;\ndata"];
     $backend->set('test5', $with_eof_and_semicolon);
     $cached = $backend->get('test5');
     $this->assert(is_object($cached), "Backend returned an object for cache id test5.");
@@ -181,7 +181,7 @@ public function testSetGet() {
     $this->assertTrue($cached->created >= REQUEST_TIME && $cached->created <= round(microtime(TRUE), 3), 'Created time is correct.');
     $this->assertEqual($cached->expire, Cache::PERMANENT, 'Expire time is correct.');
 
-    $with_variable = array('foo' => '$bar');
+    $with_variable = ['foo' => '$bar'];
     $backend->set('test6', $with_variable);
     $cached = $backend->get('test6');
     $this->assert(is_object($cached), "Backend returned an object for cache id test6.");
@@ -260,14 +260,14 @@ public function testDelete() {
   public function testValueTypeIsKept() {
     $backend = $this->getCacheBackend();
 
-    $variables = array(
+    $variables = [
       'test1' => 1,
       'test2' => '0',
       'test3' => '',
       'test4' => 12.64,
       'test5' => FALSE,
-      'test6' => array(1, 2, 3),
-    );
+      'test6' => [1, 2, 3],
+    ];
 
     // Create cache entries.
     foreach ($variables as $cid => $data) {
@@ -300,14 +300,14 @@ public function testGetMultiple() {
     $backend->set($long_cid, 300);
 
     // Mismatch order for harder testing.
-    $reference = array(
+    $reference = [
       'test3',
       'test7',
       'test21', // Cid does not exist.
       'test6',
       'test19', // Cid does not exist until added before second getMultiple().
       'test2',
-    );
+    ];
 
     $cids = $reference;
     $ret = $backend->getMultiple($cids);
@@ -367,7 +367,7 @@ public function testGetMultiple() {
     $this->assertFalse(in_array('test19', $cids), "Added cache id test19 is not in cids array.");
 
     // Test with a long $cid and non-numeric array key.
-    $cids = array('key:key' => $long_cid);
+    $cids = ['key:key' => $long_cid];
     $return = $backend->getMultiple($cids);
     $this->assertEqual(300, $return[$long_cid]->data);
     $this->assertTrue(empty($cids));
@@ -383,13 +383,13 @@ public function testSetMultiple() {
 
     // Set multiple testing keys.
     $backend->set('cid_1', 'Some other value');
-    $items = array(
-      'cid_1' => array('data' => 1),
-      'cid_2' => array('data' => 2),
-      'cid_3' => array('data' => array(1, 2)),
-      'cid_4' => array('data' => 1, 'expire' => $future_expiration),
-      'cid_5' => array('data' => 1, 'tags' => array('test:a', 'test:b')),
-    );
+    $items = [
+      'cid_1' => ['data' => 1],
+      'cid_2' => ['data' => 2],
+      'cid_3' => ['data' => [1, 2]],
+      'cid_4' => ['data' => 1, 'expire' => $future_expiration],
+      'cid_5' => ['data' => 1, 'tags' => ['test:a', 'test:b']],
+    ];
     $backend->setMultiple($items);
     $cids = array_keys($items);
     $cached = $backend->getMultiple($cids);
@@ -414,9 +414,9 @@ public function testSetMultiple() {
     // assertion.
     try {
       $items = [
-        'exception_test_1' => array('data' => 1, 'tags' => []),
-        'exception_test_2' => array('data' => 2, 'tags' => ['valid']),
-        'exception_test_3' => array('data' => 3, 'tags' => ['node' => [3, 5, 7]]),
+        'exception_test_1' => ['data' => 1, 'tags' => []],
+        'exception_test_2' => ['data' => 2, 'tags' => ['valid']],
+        'exception_test_3' => ['data' => 3, 'tags' => ['node' => [3, 5, 7]]],
       ];
       $backend->setMultiple($items);
       $this->fail('::setMultiple() was called with invalid cache tags, runtime assertion did not fail.');
@@ -444,13 +444,13 @@ public function testDeleteMultiple() {
 
     $backend->delete('test1');
     $backend->delete('test23'); // Nonexistent key should not cause an error.
-    $backend->deleteMultiple(array(
+    $backend->deleteMultiple([
       'test3',
       'test5',
       'test7',
       'test19', // Nonexistent key should not cause an error.
       'test21', // Nonexistent key should not cause an error.
-    ));
+    ]);
 
     // Test if expected keys have been deleted.
     $this->assertIdentical(FALSE, $backend->get('test1'), "Cache id test1 deleted.");
@@ -468,7 +468,7 @@ public function testDeleteMultiple() {
     $this->assertIdentical(FALSE, $backend->get('test21'), "Cache id test21 does not exist.");
 
     // Calling deleteMultiple() with an empty array should not cause an error.
-    $this->assertFalse($backend->deleteMultiple(array()));
+    $this->assertFalse($backend->deleteMultiple([]));
   }
 
   /**
@@ -501,14 +501,14 @@ function testInvalidate() {
     $backend->set('test3', 2);
     $backend->set('test4', 2);
 
-    $reference = array('test1', 'test2', 'test3', 'test4');
+    $reference = ['test1', 'test2', 'test3', 'test4'];
 
     $cids = $reference;
     $ret = $backend->getMultiple($cids);
     $this->assertEqual(count($ret), 4, 'Four items returned.');
 
     $backend->invalidate('test1');
-    $backend->invalidateMultiple(array('test2', 'test3'));
+    $backend->invalidateMultiple(['test2', 'test3']);
 
     $cids = $reference;
     $ret = $backend->getMultiple($cids);
@@ -520,7 +520,7 @@ function testInvalidate() {
 
     // Calling invalidateMultiple() with an empty array should not cause an
     // error.
-    $this->assertFalse($backend->invalidateMultiple(array()));
+    $this->assertFalse($backend->invalidateMultiple([]));
   }
 
   /**
@@ -530,45 +530,45 @@ function testInvalidateTags() {
     $backend = $this->getCacheBackend();
 
     // Create two cache entries with the same tag and tag value.
-    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, array('test_tag:2'));
-    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, array('test_tag:2'));
+    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, ['test_tag:2']);
+    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, ['test_tag:2']);
     $this->assertTrue($backend->get('test_cid_invalidate1') && $backend->get('test_cid_invalidate2'), 'Two cache items were created.');
 
     // Invalidate test_tag of value 1. This should invalidate both entries.
-    Cache::invalidateTags(array('test_tag:2'));
+    Cache::invalidateTags(['test_tag:2']);
     $this->assertFalse($backend->get('test_cid_invalidate1') || $backend->get('test_cid_invalidate2'), 'Two cache items invalidated after invalidating a cache tag.');
     $this->assertTrue($backend->get('test_cid_invalidate1', TRUE) && $backend->get('test_cid_invalidate2', TRUE), 'Cache items not deleted after invalidating a cache tag.');
 
     // Create two cache entries with the same tag and an array tag value.
-    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, array('test_tag:1'));
-    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, array('test_tag:1'));
+    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, ['test_tag:1']);
+    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, ['test_tag:1']);
     $this->assertTrue($backend->get('test_cid_invalidate1') && $backend->get('test_cid_invalidate2'), 'Two cache items were created.');
 
     // Invalidate test_tag of value 1. This should invalidate both entries.
-    Cache::invalidateTags(array('test_tag:1'));
+    Cache::invalidateTags(['test_tag:1']);
     $this->assertFalse($backend->get('test_cid_invalidate1') || $backend->get('test_cid_invalidate2'), 'Two caches removed after invalidating a cache tag.');
     $this->assertTrue($backend->get('test_cid_invalidate1', TRUE) && $backend->get('test_cid_invalidate2', TRUE), 'Cache items not deleted after invalidating a cache tag.');
 
     // Create three cache entries with a mix of tags and tag values.
-    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, array('test_tag:1'));
-    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, array('test_tag:2'));
-    $backend->set('test_cid_invalidate3', $this->defaultValue, Cache::PERMANENT, array('test_tag_foo:3'));
+    $backend->set('test_cid_invalidate1', $this->defaultValue, Cache::PERMANENT, ['test_tag:1']);
+    $backend->set('test_cid_invalidate2', $this->defaultValue, Cache::PERMANENT, ['test_tag:2']);
+    $backend->set('test_cid_invalidate3', $this->defaultValue, Cache::PERMANENT, ['test_tag_foo:3']);
     $this->assertTrue($backend->get('test_cid_invalidate1') && $backend->get('test_cid_invalidate2') && $backend->get('test_cid_invalidate3'), 'Three cached items were created.');
-    Cache::invalidateTags(array('test_tag_foo:3'));
+    Cache::invalidateTags(['test_tag_foo:3']);
     $this->assertTrue($backend->get('test_cid_invalidate1') && $backend->get('test_cid_invalidate2'), 'Cache items not matching the tag were not invalidated.');
     $this->assertFalse($backend->get('test_cid_invalidated3'), 'Cached item matching the tag was removed.');
 
     // Create cache entry in multiple bins. Two cache entries
     // (test_cid_invalidate1 and test_cid_invalidate2) still exist from previous
     // tests.
-    $tags = array('test_tag:1', 'test_tag:2', 'test_tag:3');
-    $bins = array('path', 'bootstrap', 'page');
+    $tags = ['test_tag:1', 'test_tag:2', 'test_tag:3'];
+    $bins = ['path', 'bootstrap', 'page'];
     foreach ($bins as $bin) {
       $this->getCacheBackend($bin)->set('test', $this->defaultValue, Cache::PERMANENT, $tags);
       $this->assertTrue($this->getCacheBackend($bin)->get('test'), 'Cache item was set in bin.');
     }
 
-    Cache::invalidateTags(array('test_tag:2'));
+    Cache::invalidateTags(['test_tag:2']);
 
     // Test that the cache entry has been invalidated in multiple bins.
     foreach ($bins as $bin) {
diff --git a/core/modules/system/src/Tests/Cache/PageCacheTagsTestBase.php b/core/modules/system/src/Tests/Cache/PageCacheTagsTestBase.php
index fcfb023..582a2f4 100644
--- a/core/modules/system/src/Tests/Cache/PageCacheTagsTestBase.php
+++ b/core/modules/system/src/Tests/Cache/PageCacheTagsTestBase.php
@@ -47,12 +47,12 @@ protected function setUp() {
    */
   protected function verifyPageCache(Url $url, $hit_or_miss, $tags = FALSE) {
     $this->drupalGet($url);
-    $message = SafeMarkup::format('Page cache @hit_or_miss for %path.', array('@hit_or_miss' => $hit_or_miss, '%path' => $url->toString()));
+    $message = SafeMarkup::format('Page cache @hit_or_miss for %path.', ['@hit_or_miss' => $hit_or_miss, '%path' => $url->toString()]);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), $hit_or_miss, $message);
 
     if ($hit_or_miss === 'HIT' && is_array($tags)) {
       $absolute_url = $url->setAbsolute()->toString();
-      $cid_parts = array($absolute_url, 'html');
+      $cid_parts = [$absolute_url, 'html'];
       $cid = implode(':', $cid_parts);
       $cache_entry = \Drupal::cache('render')->get($cid);
       sort($cache_entry->tags);
diff --git a/core/modules/system/src/Tests/Common/AddFeedTest.php b/core/modules/system/src/Tests/Common/AddFeedTest.php
index b539281..b959d42 100644
--- a/core/modules/system/src/Tests/Common/AddFeedTest.php
+++ b/core/modules/system/src/Tests/Common/AddFeedTest.php
@@ -18,38 +18,38 @@ class AddFeedTest extends WebTestBase {
   function testBasicFeedAddNoTitle() {
     $path = $this->randomMachineName(12);
     $external_url = 'http://' . $this->randomMachineName(12) . '/' . $this->randomMachineName(12);
-    $fully_qualified_local_url = Url::fromUri('base:' . $this->randomMachineName(12), array('absolute' => TRUE))->toString();
+    $fully_qualified_local_url = Url::fromUri('base:' . $this->randomMachineName(12), ['absolute' => TRUE])->toString();
 
     $path_for_title = $this->randomMachineName(12);
     $external_for_title = 'http://' . $this->randomMachineName(12) . '/' . $this->randomMachineName(12);
-    $fully_qualified_for_title = Url::fromUri('base:' . $this->randomMachineName(12), array('absolute' => TRUE))->toString();
+    $fully_qualified_for_title = Url::fromUri('base:' . $this->randomMachineName(12), ['absolute' => TRUE])->toString();
 
-    $urls = array(
-      'path without title' => array(
-        'url' => Url::fromUri('base:' . $path, array('absolute' => TRUE))->toString(),
+    $urls = [
+      'path without title' => [
+        'url' => Url::fromUri('base:' . $path, ['absolute' => TRUE])->toString(),
         'title' => '',
-      ),
-      'external URL without title' => array(
+      ],
+      'external URL without title' => [
         'url' => $external_url,
         'title' => '',
-      ),
-      'local URL without title' => array(
+      ],
+      'local URL without title' => [
         'url' => $fully_qualified_local_url,
         'title' => '',
-      ),
-      'path with title' => array(
-        'url' => Url::fromUri('base:' . $path_for_title, array('absolute' => TRUE))->toString(),
+      ],
+      'path with title' => [
+        'url' => Url::fromUri('base:' . $path_for_title, ['absolute' => TRUE])->toString(),
         'title' => $this->randomMachineName(12),
-      ),
-      'external URL with title' => array(
+      ],
+      'external URL with title' => [
         'url' => $external_for_title,
         'title' => $this->randomMachineName(12),
-      ),
-      'local URL with title' => array(
+      ],
+      'local URL with title' => [
         'url' => $fully_qualified_for_title,
         'title' => $this->randomMachineName(12),
-      ),
-    );
+      ],
+    ];
 
     $build = [];
     foreach ($urls as $feed_info) {
@@ -63,7 +63,7 @@ function testBasicFeedAddNoTitle() {
     $this->setRawContent($response->getContent());
     // Assert that the content contains the RSS links we specified.
     foreach ($urls as $description => $feed_info) {
-      $this->assertPattern($this->urlToRSSLinkPattern($feed_info['url'], $feed_info['title']), format_string('Found correct feed header for %description', array('%description' => $description)));
+      $this->assertPattern($this->urlToRSSLinkPattern($feed_info['url'], $feed_info['title']), format_string('Found correct feed header for %description', ['%description' => $description]));
     }
   }
 
@@ -83,11 +83,11 @@ function urlToRSSLinkPattern($url, $title = '') {
    * @see https://www.drupal.org/node/1211668
    */
   function testFeedIconEscaping() {
-    $variables = array(
+    $variables = [
       '#theme' => 'feed_icon',
       '#url' => 'node',
       '#title' => '<>&"\'',
-    );
+    ];
     $text = \Drupal::service('renderer')->renderRoot($variables);
     $this->assertEqual(trim(strip_tags($text)), 'Subscribe to &lt;&gt;&amp;&quot;&#039;', 'feed_icon template escapes reserved HTML characters.');
   }
diff --git a/core/modules/system/src/Tests/Common/AlterTest.php b/core/modules/system/src/Tests/Common/AlterTest.php
index 86bed7d..2f19ab2 100644
--- a/core/modules/system/src/Tests/Common/AlterTest.php
+++ b/core/modules/system/src/Tests/Common/AlterTest.php
@@ -16,7 +16,7 @@ class AlterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'common_test');
+  public static $modules = ['block', 'common_test'];
 
   /**
    * Tests if the theme has been altered.
@@ -24,16 +24,16 @@ class AlterTest extends WebTestBase {
   function testDrupalAlter() {
     // This test depends on Bartik, so make sure that it is always the current
     // active theme.
-    \Drupal::service('theme_handler')->install(array('bartik'));
+    \Drupal::service('theme_handler')->install(['bartik']);
     \Drupal::theme()->setActiveTheme(\Drupal::service('theme.initialization')->initTheme('bartik'));
 
-    $array = array('foo' => 'bar');
+    $array = ['foo' => 'bar'];
     $entity = new \stdClass();
     $entity->foo = 'bar';
 
     // Verify alteration of a single argument.
     $array_copy = $array;
-    $array_expected = array('foo' => 'Drupal theme');
+    $array_expected = ['foo' => 'Drupal theme'];
     \Drupal::moduleHandler()->alter('drupal_alter', $array_copy);
     \Drupal::theme()->alter('drupal_alter', $array_copy);
     $this->assertEqual($array_copy, $array_expected, 'Single array was altered.');
@@ -47,12 +47,12 @@ function testDrupalAlter() {
 
     // Verify alteration of multiple arguments.
     $array_copy = $array;
-    $array_expected = array('foo' => 'Drupal theme');
+    $array_expected = ['foo' => 'Drupal theme'];
     $entity_copy = clone $entity;
     $entity_expected = clone $entity;
     $entity_expected->foo = 'Drupal theme';
     $array2_copy = $array;
-    $array2_expected = array('foo' => 'Drupal theme');
+    $array2_expected = ['foo' => 'Drupal theme'];
     \Drupal::moduleHandler()->alter('drupal_alter', $array_copy, $entity_copy, $array2_copy);
     \Drupal::theme()->alter('drupal_alter', $array_copy, $entity_copy, $array2_copy);
     $this->assertEqual($array_copy, $array_expected, 'First argument to \Drupal::moduleHandler->alter() was altered.');
@@ -63,9 +63,9 @@ function testDrupalAlter() {
     // common_test_module_implements_alter() places 'block' implementation after
     // other modules.
     $array_copy = $array;
-    $array_expected = array('foo' => 'Drupal block theme');
-    \Drupal::moduleHandler()->alter(array('drupal_alter', 'drupal_alter_foo'), $array_copy);
-    \Drupal::theme()->alter(array('drupal_alter', 'drupal_alter_foo'), $array_copy);
+    $array_expected = ['foo' => 'Drupal block theme'];
+    \Drupal::moduleHandler()->alter(['drupal_alter', 'drupal_alter_foo'], $array_copy);
+    \Drupal::theme()->alter(['drupal_alter', 'drupal_alter_foo'], $array_copy);
     $this->assertEqual($array_copy, $array_expected, 'hook_TYPE_alter() implementations ran in correct order.');
   }
 
diff --git a/core/modules/system/src/Tests/Common/FormatDateTest.php b/core/modules/system/src/Tests/Common/FormatDateTest.php
index cddf0a3..c6a57c9 100644
--- a/core/modules/system/src/Tests/Common/FormatDateTest.php
+++ b/core/modules/system/src/Tests/Common/FormatDateTest.php
@@ -17,7 +17,7 @@ class FormatDateTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Arbitrary langcode for a custom language.
@@ -32,16 +32,16 @@ protected function setUp() {
       ->save();
     $formats = $this->container->get('entity.manager')
       ->getStorage('date_format')
-      ->loadMultiple(array('long', 'medium', 'short'));
+      ->loadMultiple(['long', 'medium', 'short']);
     $formats['long']->setPattern('l, j. F Y - G:i')->save();
     $formats['medium']->setPattern('j. F Y - G:i')->save();
     $formats['short']->setPattern('Y M j - g:ia')->save();
     $this->refreshVariables();
 
-    $this->settingsSet('locale_custom_strings_' . self::LANGCODE, array(
-      '' => array('Sunday' => 'domingo'),
-      'Long month name' => array('March' => 'marzo'),
-    ));
+    $this->settingsSet('locale_custom_strings_' . self::LANGCODE, [
+      '' => ['Sunday' => 'domingo'],
+      'Long month name' => ['March' => 'marzo'],
+    ]);
 
     ConfigurableLanguage::createFromLangcode(static::LANGCODE)->save();
     $this->resetAll();
@@ -52,22 +52,22 @@ protected function setUp() {
    */
   function testAdminDefinedFormatDate() {
     // Create and log in an admin user.
-    $this->drupalLogin($this->drupalCreateUser(array('administer site configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['administer site configuration']));
 
     // Add new date format.
-    $edit = array(
+    $edit = [
       'id' => 'example_style',
       'label' => 'Example Style',
       'date_format_pattern' => 'j M y',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
 
     // Add a second date format with a different case than the first.
-    $edit = array(
+    $edit = [
       'id' => 'example_style_uppercase',
       'label' => 'Example Style Uppercase',
       'date_format_pattern' => 'j M Y',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('Custom date format added.'));
 
diff --git a/core/modules/system/src/Tests/Common/NoJavaScriptAnonymousTest.php b/core/modules/system/src/Tests/Common/NoJavaScriptAnonymousTest.php
index 9c9f070..e671f87 100644
--- a/core/modules/system/src/Tests/Common/NoJavaScriptAnonymousTest.php
+++ b/core/modules/system/src/Tests/Common/NoJavaScriptAnonymousTest.php
@@ -19,7 +19,7 @@ protected function setUp() {
     parent::setUp();
 
     // Grant the anonymous user the permission to look at user profiles.
-    user_role_grant_permissions('anonymous', array('access user profiles'));
+    user_role_grant_permissions('anonymous', ['access user profiles']);
   }
 
   /**
@@ -27,9 +27,9 @@ protected function setUp() {
    */
   public function testNoJavaScript() {
     // Create a node that is listed on the frontpage.
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'promote' => NodeInterface::PROMOTED,
-    ));
+    ]);
     $user = $this->drupalCreateUser();
 
     // Test frontpage.
diff --git a/core/modules/system/src/Tests/Common/RenderWebTest.php b/core/modules/system/src/Tests/Common/RenderWebTest.php
index fde7fa6..49449d4 100644
--- a/core/modules/system/src/Tests/Common/RenderWebTest.php
+++ b/core/modules/system/src/Tests/Common/RenderWebTest.php
@@ -19,7 +19,7 @@ class RenderWebTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('common_test');
+  public static $modules = ['common_test'];
 
   /**
    * Asserts the cache context for the wrapper format is always present.
@@ -45,133 +45,133 @@ function testWrapperFormatCacheContext() {
    */
   function testDrupalRenderFormElements() {
     // Define a series of form elements.
-    $element = array(
+    $element = [
       '#type' => 'button',
       '#value' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'submit'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'submit']);
 
-    $element = array(
+    $element = [
       '#type' => 'textfield',
       '#title' => $this->randomMachineName(),
       '#value' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'text'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'text']);
 
-    $element = array(
+    $element = [
       '#type' => 'password',
       '#title' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'password'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'password']);
 
-    $element = array(
+    $element = [
       '#type' => 'textarea',
       '#title' => $this->randomMachineName(),
       '#value' => $this->randomMachineName(),
-    );
+    ];
     $this->assertRenderedElement($element, '//textarea');
 
-    $element = array(
+    $element = [
       '#type' => 'radio',
       '#title' => $this->randomMachineName(),
       '#value' => FALSE,
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'radio'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'radio']);
 
-    $element = array(
+    $element = [
       '#type' => 'checkbox',
       '#title' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'checkbox'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'checkbox']);
 
-    $element = array(
+    $element = [
       '#type' => 'select',
       '#title' => $this->randomMachineName(),
-      '#options' => array(
+      '#options' => [
         0 => $this->randomMachineName(),
         1 => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $this->assertRenderedElement($element, '//select');
 
-    $element = array(
+    $element = [
       '#type' => 'file',
       '#title' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'file'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'file']);
 
-    $element = array(
+    $element = [
       '#type' => 'item',
       '#title' => $this->randomMachineName(),
       '#markup' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//div[contains(@class, :class) and contains(., :markup)]/label[contains(., :label)]', array(
+    ];
+    $this->assertRenderedElement($element, '//div[contains(@class, :class) and contains(., :markup)]/label[contains(., :label)]', [
       ':class' => 'js-form-type-item',
       ':markup' => $element['#markup'],
       ':label' => $element['#title'],
-    ));
+    ]);
 
-    $element = array(
+    $element = [
       '#type' => 'hidden',
       '#title' => $this->randomMachineName(),
       '#value' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//input[@type=:type]', array(':type' => 'hidden'));
+    ];
+    $this->assertRenderedElement($element, '//input[@type=:type]', [':type' => 'hidden']);
 
-    $element = array(
+    $element = [
       '#type' => 'link',
       '#title' => $this->randomMachineName(),
       '#url' => Url::fromRoute('common_test.destination'),
-      '#options' => array(
+      '#options' => [
         'absolute' => TRUE,
-      ),
-    );
-    $this->assertRenderedElement($element, '//a[@href=:href and contains(., :title)]', array(
+      ],
+    ];
+    $this->assertRenderedElement($element, '//a[@href=:href and contains(., :title)]', [
       ':href' => URL::fromRoute('common_test.destination')->setAbsolute()->toString(),
       ':title' => $element['#title'],
-    ));
+    ]);
 
-    $element = array(
+    $element = [
       '#type' => 'details',
       '#open' => TRUE,
       '#title' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//details/summary[contains(., :title)]', array(
+    ];
+    $this->assertRenderedElement($element, '//details/summary[contains(., :title)]', [
       ':title' => $element['#title'],
-    ));
+    ]);
 
-    $element = array(
+    $element = [
       '#type' => 'details',
       '#open' => TRUE,
       '#title' => $this->randomMachineName(),
-    );
+    ];
     $this->assertRenderedElement($element, '//details');
 
-    $element['item'] = array(
+    $element['item'] = [
       '#type' => 'item',
       '#title' => $this->randomMachineName(),
       '#markup' => $this->randomMachineName(),
-    );
-    $this->assertRenderedElement($element, '//details/div/div[contains(@class, :class) and contains(., :markup)]', array(
+    ];
+    $this->assertRenderedElement($element, '//details/div/div[contains(@class, :class) and contains(., :markup)]', [
       ':class' => 'js-form-type-item',
       ':markup' => $element['item']['#markup'],
-    ));
+    ]);
   }
 
   /**
    * Tests that elements are rendered properly.
    */
-  protected function assertRenderedElement(array $element, $xpath, array $xpath_args = array()) {
+  protected function assertRenderedElement(array $element, $xpath, array $xpath_args = []) {
     $original_element = $element;
     $this->setRawContent(drupal_render_root($element));
     $this->verbose('<hr />' . $this->getRawContent());
 
     // @see \Drupal\simpletest\WebTestBase::xpath()
     $xpath = $this->buildXPathQuery($xpath, $xpath_args);
-    $element += array('#value' => NULL);
-    $this->assertFieldByXPath($xpath, $element['#value'], format_string('#type @type was properly rendered.', array(
+    $element += ['#value' => NULL];
+    $this->assertFieldByXPath($xpath, $element['#value'], format_string('#type @type was properly rendered.', [
       '@type' => var_export($element['#type'], TRUE),
-    )));
+    ]));
   }
 
 }
diff --git a/core/modules/system/src/Tests/Common/SimpleTestErrorCollectorTest.php b/core/modules/system/src/Tests/Common/SimpleTestErrorCollectorTest.php
index 1be7e94..016d23c 100644
--- a/core/modules/system/src/Tests/Common/SimpleTestErrorCollectorTest.php
+++ b/core/modules/system/src/Tests/Common/SimpleTestErrorCollectorTest.php
@@ -16,7 +16,7 @@ class SimpleTestErrorCollectorTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_test', 'error_test');
+  public static $modules = ['system_test', 'error_test'];
 
   /**
    * Errors triggered during the test.
@@ -26,13 +26,13 @@ class SimpleTestErrorCollectorTest extends WebTestBase {
    *
    * @var Array
    */
-  protected $collectedErrors = array();
+  protected $collectedErrors = [];
 
   /**
    * Tests that simpletest collects errors from the tested site.
    */
   function testErrorCollect() {
-    $this->collectedErrors = array();
+    $this->collectedErrors = [];
     $this->drupalGet('error-test/generate-warnings-with-report');
     $this->assertEqual(count($this->collectedErrors), 3, 'Three errors were collected');
 
@@ -71,11 +71,11 @@ protected function error($message = '', $group = 'Other', array $caller = NULL)
     }
     // Everything else should be collected but not propagated.
     else {
-      $this->collectedErrors[] = array(
+      $this->collectedErrors[] = [
         'message' => $message,
         'group' => $group,
         'caller' => $caller
-      );
+      ];
     }
   }
 
@@ -83,11 +83,11 @@ protected function error($message = '', $group = 'Other', array $caller = NULL)
    * Asserts that a collected error matches what we are expecting.
    */
   function assertError($error, $group, $function, $file, $message = NULL) {
-    $this->assertEqual($error['group'], $group, format_string("Group was %group", array('%group' => $group)));
-    $this->assertEqual($error['caller']['function'], $function, format_string("Function was %function", array('%function' => $function)));
-    $this->assertEqual(drupal_basename($error['caller']['file']), $file, format_string("File was %file", array('%file' => $file)));
+    $this->assertEqual($error['group'], $group, format_string("Group was %group", ['%group' => $group]));
+    $this->assertEqual($error['caller']['function'], $function, format_string("Function was %function", ['%function' => $function]));
+    $this->assertEqual(drupal_basename($error['caller']['file']), $file, format_string("File was %file", ['%file' => $file]));
     if (isset($message)) {
-      $this->assertEqual($error['message'], $message, format_string("Message was %message", array('%message' => $message)));
+      $this->assertEqual($error['message'], $message, format_string("Message was %message", ['%message' => $message]));
     }
   }
 
diff --git a/core/modules/system/src/Tests/Common/UrlTest.php b/core/modules/system/src/Tests/Common/UrlTest.php
index 062e3e4..da83986 100644
--- a/core/modules/system/src/Tests/Common/UrlTest.php
+++ b/core/modules/system/src/Tests/Common/UrlTest.php
@@ -20,7 +20,7 @@
  */
 class UrlTest extends WebTestBase {
 
-  public static $modules = array('common_test', 'url_alter_test');
+  public static $modules = ['common_test', 'url_alter_test'];
 
   /**
    * Confirms that invalid URLs are filtered in link generating functions.
@@ -32,7 +32,7 @@ function testLinkXSS() {
     $encoded_path = "3CSCRIPT%3Ealert%28%27XSS%27%29%3C/SCRIPT%3E";
 
     $link = \Drupal::l($text, Url::fromUserInput('/' . $path));
-    $this->assertTrue(strpos($link, $encoded_path) !== FALSE && strpos($link, $path) === FALSE, format_string('XSS attack @path was filtered by \Drupal\Core\Utility\LinkGeneratorInterface::generate().', array('@path' => $path)));
+    $this->assertTrue(strpos($link, $encoded_path) !== FALSE && strpos($link, $path) === FALSE, format_string('XSS attack @path was filtered by \Drupal\Core\Utility\LinkGeneratorInterface::generate().', ['@path' => $path]));
 
     // Test \Drupal\Core\Url.
     $link = Url::fromUri('base:' . $path)->toString();
@@ -76,15 +76,15 @@ function testLinkAttributes() {
     $renderer = $this->container->get('renderer');
 
     // Test that hreflang is added when a link has a known language.
-    $language = new Language(array('id' => 'fr', 'name' => 'French'));
-    $hreflang_link = array(
+    $language = new Language(['id' => 'fr', 'name' => 'French']);
+    $hreflang_link = [
       '#type' => 'link',
-      '#options' => array(
+      '#options' => [
         'language' => $language,
-      ),
+      ],
       '#url' => Url::fromUri('https://www.drupal.org'),
       '#title' => 'bar',
-    );
+    ];
     $langcode = $language->getId();
 
     // Test that the default hreflang handling for links does not override a
@@ -93,45 +93,45 @@ function testLinkAttributes() {
     $hreflang_override_link['#options']['attributes']['hreflang'] = 'foo';
 
     $rendered = $renderer->renderRoot($hreflang_link);
-    $this->assertTrue($this->hasAttribute('hreflang', $rendered, $langcode), format_string('hreflang attribute with value @langcode is present on a rendered link when langcode is provided in the render array.', array('@langcode' => $langcode)));
+    $this->assertTrue($this->hasAttribute('hreflang', $rendered, $langcode), format_string('hreflang attribute with value @langcode is present on a rendered link when langcode is provided in the render array.', ['@langcode' => $langcode]));
 
     $rendered = $renderer->renderRoot($hreflang_override_link);
-    $this->assertTrue($this->hasAttribute('hreflang', $rendered, 'foo'), format_string('hreflang attribute with value @hreflang is present on a rendered link when @hreflang is provided in the render array.', array('@hreflang' => 'foo')));
+    $this->assertTrue($this->hasAttribute('hreflang', $rendered, 'foo'), format_string('hreflang attribute with value @hreflang is present on a rendered link when @hreflang is provided in the render array.', ['@hreflang' => 'foo']));
 
     // Test the active class in links produced by
     // \Drupal\Core\Utility\LinkGeneratorInterface::generate() and #type 'link'.
-    $options_no_query = array();
-    $options_query = array(
-      'query' => array(
+    $options_no_query = [];
+    $options_query = [
+      'query' => [
         'foo' => 'bar',
         'one' => 'two',
-      ),
-    );
-    $options_query_reverse = array(
-      'query' => array(
+      ],
+    ];
+    $options_query_reverse = [
+      'query' => [
         'one' => 'two',
         'foo' => 'bar',
-      ),
-    );
+      ],
+    ];
 
     // Test #type link.
     $path = 'common-test/type-link-active-class';
 
     $this->drupalGet($path, $options_no_query);
-    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', array(':href' => Url::fromRoute('common_test.l_active_class', [], $options_no_query)->toString(), ':class' => 'is-active'));
+    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', [':href' => Url::fromRoute('common_test.l_active_class', [], $options_no_query)->toString(), ':class' => 'is-active']);
     $this->assertTrue(isset($links[0]), 'A link generated by the link generator to the current page is marked active.');
 
-    $links = $this->xpath('//a[@href = :href and not(contains(@class, :class))]', array(':href' => Url::fromRoute('common_test.l_active_class', [], $options_query)->toString(), ':class' => 'is-active'));
+    $links = $this->xpath('//a[@href = :href and not(contains(@class, :class))]', [':href' => Url::fromRoute('common_test.l_active_class', [], $options_query)->toString(), ':class' => 'is-active']);
     $this->assertTrue(isset($links[0]), 'A link generated by the link generator to the current page with a query string when the current page has no query string is not marked active.');
 
     $this->drupalGet($path, $options_query);
-    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', array(':href' => Url::fromRoute('common_test.l_active_class', [], $options_query)->toString(), ':class' => 'is-active'));
+    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', [':href' => Url::fromRoute('common_test.l_active_class', [], $options_query)->toString(), ':class' => 'is-active']);
     $this->assertTrue(isset($links[0]), 'A link generated by the link generator to the current page with a query string that matches the current query string is marked active.');
 
-    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', array(':href' => Url::fromRoute('common_test.l_active_class', [], $options_query_reverse)->toString(), ':class' => 'is-active'));
+    $links = $this->xpath('//a[@href = :href and contains(@class, :class)]', [':href' => Url::fromRoute('common_test.l_active_class', [], $options_query_reverse)->toString(), ':class' => 'is-active']);
     $this->assertTrue(isset($links[0]), 'A link generated by the link generator to the current page with a query string that has matching parameters to the current query string but in a different order is marked active.');
 
-    $links = $this->xpath('//a[@href = :href and not(contains(@class, :class))]', array(':href' => Url::fromRoute('common_test.l_active_class', [], $options_no_query)->toString(), ':class' => 'is-active'));
+    $links = $this->xpath('//a[@href = :href and not(contains(@class, :class))]', [':href' => Url::fromRoute('common_test.l_active_class', [], $options_no_query)->toString(), ':class' => 'is-active']);
     $this->assertTrue(isset($links[0]), 'A link generated by the link generator to the current page without a query string when the current page has a query string is not marked active.');
 
     // Test adding a custom class in links produced by
@@ -139,22 +139,22 @@ function testLinkAttributes() {
     // Test the link generator.
     $class_l = $this->randomMachineName();
     $link_l = \Drupal::l($this->randomMachineName(), new Url('<current>', [], ['attributes' => ['class' => [$class_l]]]));
-    $this->assertTrue($this->hasAttribute('class', $link_l, $class_l), format_string('Custom class @class is present on link when requested by l()', array('@class' => $class_l)));
+    $this->assertTrue($this->hasAttribute('class', $link_l, $class_l), format_string('Custom class @class is present on link when requested by l()', ['@class' => $class_l]));
 
     // Test #type.
     $class_theme = $this->randomMachineName();
-    $type_link = array(
+    $type_link = [
       '#type' => 'link',
       '#title' => $this->randomMachineName(),
       '#url' => Url::fromRoute('<current>'),
-      '#options' => array(
-        'attributes' => array(
-          'class' => array($class_theme),
-        ),
-      ),
-    );
+      '#options' => [
+        'attributes' => [
+          'class' => [$class_theme],
+        ],
+      ],
+    ];
     $link_theme = $renderer->renderRoot($type_link);
-    $this->assertTrue($this->hasAttribute('class', $link_theme, $class_theme), format_string('Custom class @class is present on link when requested by #type', array('@class' => $class_theme)));
+    $this->assertTrue($this->hasAttribute('class', $link_theme, $class_theme), format_string('Custom class @class is present on link when requested by #type', ['@class' => $class_theme]));
   }
 
   /**
@@ -169,26 +169,26 @@ function testLinkRenderArrayText() {
 
     // Test a renderable array passed to the link generator.
     $renderer->executeInRenderContext(new RenderContext(), function() use ($renderer, $l) {
-      $renderable_text = array('#markup' => 'foo');
+      $renderable_text = ['#markup' => 'foo'];
       $l_renderable_text = \Drupal::l($renderable_text, Url::fromUri('https://www.drupal.org'));
       $this->assertEqual($l_renderable_text, $l);
     });
 
     // Test a themed link with plain text 'text'.
-    $type_link_plain_array = array(
+    $type_link_plain_array = [
       '#type' => 'link',
       '#title' => 'foo',
       '#url' => Url::fromUri('https://www.drupal.org'),
-    );
+    ];
     $type_link_plain = $renderer->renderRoot($type_link_plain_array);
     $this->assertEqual($type_link_plain, $l);
 
     // Build a themed link with renderable 'text'.
-    $type_link_nested_array = array(
+    $type_link_nested_array = [
       '#type' => 'link',
-      '#title' => array('#markup' => 'foo'),
+      '#title' => ['#markup' => 'foo'],
       '#url' => Url::fromUri('https://www.drupal.org'),
-    );
+    ];
     $type_link_nested = $renderer->renderRoot($type_link_nested_array);
     $this->assertEqual($type_link_nested, $l);
   }
@@ -212,36 +212,36 @@ private function hasAttribute($attribute, $link, $class) {
    * Tests UrlHelper::filterQueryParameters().
    */
   function testDrupalGetQueryParameters() {
-    $original = array(
+    $original = [
       'a' => 1,
-      'b' => array(
+      'b' => [
         'd' => 4,
-        'e' => array(
+        'e' => [
           'f' => 5,
-        ),
-      ),
+        ],
+      ],
       'c' => 3,
-    );
+    ];
 
     // First-level exclusion.
     $result = $original;
     unset($result['b']);
-    $this->assertEqual(UrlHelper::filterQueryParameters($original, array('b')), $result, "'b' was removed.");
+    $this->assertEqual(UrlHelper::filterQueryParameters($original, ['b']), $result, "'b' was removed.");
 
     // Second-level exclusion.
     $result = $original;
     unset($result['b']['d']);
-    $this->assertEqual(UrlHelper::filterQueryParameters($original, array('b[d]')), $result, "'b[d]' was removed.");
+    $this->assertEqual(UrlHelper::filterQueryParameters($original, ['b[d]']), $result, "'b[d]' was removed.");
 
     // Third-level exclusion.
     $result = $original;
     unset($result['b']['e']['f']);
-    $this->assertEqual(UrlHelper::filterQueryParameters($original, array('b[e][f]')), $result, "'b[e][f]' was removed.");
+    $this->assertEqual(UrlHelper::filterQueryParameters($original, ['b[e][f]']), $result, "'b[e][f]' was removed.");
 
     // Multiple exclusions.
     $result = $original;
     unset($result['a'], $result['b']['e'], $result['c']);
-    $this->assertEqual(UrlHelper::filterQueryParameters($original, array('a', 'b[e]', 'c')), $result, "'a', 'b[e]', 'c' were removed.");
+    $this->assertEqual(UrlHelper::filterQueryParameters($original, ['a', 'b[e]', 'c']), $result, "'a', 'b[e]', 'c' were removed.");
   }
 
   /**
@@ -250,15 +250,15 @@ function testDrupalGetQueryParameters() {
   function testDrupalParseUrl() {
     // Relative, absolute, and external URLs, without/with explicit script path,
     // without/with Drupal path.
-    foreach (array('', '/', 'https://www.drupal.org/') as $absolute) {
-      foreach (array('', 'index.php/') as $script) {
-        foreach (array('', 'foo/bar') as $path) {
+    foreach (['', '/', 'https://www.drupal.org/'] as $absolute) {
+      foreach (['', 'index.php/'] as $script) {
+        foreach (['', 'foo/bar'] as $path) {
           $url = $absolute . $script . $path . '?foo=bar&bar=baz&baz#foo';
-          $expected = array(
+          $expected = [
             'path' => $absolute . $script . $path,
-            'query' => array('foo' => 'bar', 'bar' => 'baz', 'baz' => ''),
+            'query' => ['foo' => 'bar', 'bar' => 'baz', 'baz' => ''],
             'fragment' => 'foo',
-          );
+          ];
           $this->assertEqual(UrlHelper::parse($url), $expected, 'URL parsed correctly.');
         }
       }
@@ -266,11 +266,11 @@ function testDrupalParseUrl() {
 
     // Relative URL that is known to confuse parse_url().
     $url = 'foo/bar:1';
-    $result = array(
+    $result = [
       'path' => 'foo/bar:1',
-      'query' => array(),
+      'query' => [],
       'fragment' => '',
-    );
+    ];
     $this->assertEqual(UrlHelper::parse($url), $result, 'Relative URL parsed correctly.');
 
     // Test that drupal can recognize an absolute URL. Used to prevent attack vectors.
@@ -296,7 +296,7 @@ function testExternalUrls() {
     // Verify fragment can be overridden in an external URL.
     $url = $test_url . '#drupal';
     $fragment = $this->randomMachineName(10);
-    $result = Url::fromUri($url, array('fragment' => $fragment))->toString();
+    $result = Url::fromUri($url, ['fragment' => $fragment])->toString();
     $this->assertEqual($test_url . '#' . $fragment, $result, 'External URL fragment is overridden with a custom fragment in $options.');
 
     // Verify external URL can contain a query string.
@@ -306,14 +306,14 @@ function testExternalUrls() {
 
     // Verify external URL can be extended with a query string.
     $url = $test_url;
-    $query = array($this->randomMachineName(5) => $this->randomMachineName(5));
-    $result = Url::fromUri($url, array('query' => $query))->toString();
+    $query = [$this->randomMachineName(5) => $this->randomMachineName(5)];
+    $result = Url::fromUri($url, ['query' => $query])->toString();
     $this->assertEqual($url . '?' . http_build_query($query, '', '&'), $result, 'External URL can be extended with a query string in $options.');
 
     // Verify query string can be extended in an external URL.
     $url = $test_url . '?drupal=awesome';
-    $query = array($this->randomMachineName(5) => $this->randomMachineName(5));
-    $result = Url::fromUri($url, array('query' => $query))->toString();
+    $query = [$this->randomMachineName(5) => $this->randomMachineName(5)];
+    $result = Url::fromUri($url, ['query' => $query])->toString();
     $this->assertEqual($url . '&' . http_build_query($query, '', '&'), $result);
   }
 
diff --git a/core/modules/system/src/Tests/Condition/ConditionFormTest.php b/core/modules/system/src/Tests/Condition/ConditionFormTest.php
index 21d0fcb..8d2ea6d 100644
--- a/core/modules/system/src/Tests/Condition/ConditionFormTest.php
+++ b/core/modules/system/src/Tests/Condition/ConditionFormTest.php
@@ -16,14 +16,14 @@
  */
 class ConditionFormTest extends WebTestBase {
 
-  public static $modules = array('node', 'condition_test');
+  public static $modules = ['node', 'condition_test'];
 
   /**
    * Submit the condition_node_type_test_form to test condition forms.
    */
   function testConfigForm() {
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Page'));
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Page']);
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     $article = Node::create([
       'type' => 'article',
@@ -34,7 +34,7 @@ function testConfigForm() {
     $this->drupalGet('condition_test');
     $this->assertField('bundles[article]', 'There is an article bundle selector.');
     $this->assertField('bundles[page]', 'There is a page bundle selector.');
-    $this->drupalPostForm(NULL, array('bundles[page]' => 'page', 'bundles[article]' => 'article'), t('Submit'));
+    $this->drupalPostForm(NULL, ['bundles[page]' => 'page', 'bundles[article]' => 'article'], t('Submit'));
     // @see \Drupal\condition_test\FormController::submitForm()
     $this->assertText('Bundle: page');
     $this->assertText('Bundle: article');
diff --git a/core/modules/system/src/Tests/Database/DatabaseWebTestBase.php b/core/modules/system/src/Tests/Database/DatabaseWebTestBase.php
index d484d68..8fb369a 100644
--- a/core/modules/system/src/Tests/Database/DatabaseWebTestBase.php
+++ b/core/modules/system/src/Tests/Database/DatabaseWebTestBase.php
@@ -15,7 +15,7 @@
    *
    * @var array
    */
-  public static $modules = array('database_test');
+  public static $modules = ['database_test'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/system/src/Tests/Database/SelectPagerDefaultTest.php b/core/modules/system/src/Tests/Database/SelectPagerDefaultTest.php
index cdfeab8..e56c19f 100644
--- a/core/modules/system/src/Tests/Database/SelectPagerDefaultTest.php
+++ b/core/modules/system/src/Tests/Database/SelectPagerDefaultTest.php
@@ -33,14 +33,14 @@ function testEvenPagerQuery() {
     }
 
     for ($page = 0; $page <= $num_pages; ++$page) {
-      $this->drupalGet('database_test/pager_query_even/' . $limit, array('query' => array('page' => $page)));
+      $this->drupalGet('database_test/pager_query_even/' . $limit, ['query' => ['page' => $page]]);
       $data = json_decode($this->getRawContent());
 
       if ($page == $num_pages) {
         $correct_number = $count - ($limit * $page);
       }
 
-      $this->assertEqual(count($data->names), $correct_number, format_string('Correct number of records returned by pager: @number', array('@number' => $correct_number)));
+      $this->assertEqual(count($data->names), $correct_number, format_string('Correct number of records returned by pager: @number', ['@number' => $correct_number]));
     }
   }
 
@@ -67,14 +67,14 @@ function testOddPagerQuery() {
     }
 
     for ($page = 0; $page <= $num_pages; ++$page) {
-      $this->drupalGet('database_test/pager_query_odd/' . $limit, array('query' => array('page' => $page)));
+      $this->drupalGet('database_test/pager_query_odd/' . $limit, ['query' => ['page' => $page]]);
       $data = json_decode($this->getRawContent());
 
       if ($page == $num_pages) {
         $correct_number = $count - ($limit * $page);
       }
 
-      $this->assertEqual(count($data->names), $correct_number, format_string('Correct number of records returned by pager: @number', array('@number' => $correct_number)));
+      $this->assertEqual(count($data->names), $correct_number, format_string('Correct number of records returned by pager: @number', ['@number' => $correct_number]));
     }
   }
 
@@ -87,7 +87,7 @@ function testInnerPagerQuery() {
     $query = db_select('test', 't')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender');
     $query
-      ->fields('t', array('age'))
+      ->fields('t', ['age'])
       ->orderBy('age')
       ->limit(5);
 
@@ -97,7 +97,7 @@ function testInnerPagerQuery() {
     $ages = $outer_query
       ->execute()
       ->fetchCol();
-    $this->assertEqual($ages, array(25, 26, 27, 28), 'Inner pager query returned the correct ages.');
+    $this->assertEqual($ages, [25, 26, 27, 28], 'Inner pager query returned the correct ages.');
   }
 
   /**
@@ -109,16 +109,16 @@ function testHavingPagerQuery() {
     $query = db_select('test', 't')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender');
     $query
-      ->fields('t', array('name'))
+      ->fields('t', ['name'])
       ->orderBy('name')
       ->groupBy('name')
-      ->having('MAX(age) > :count', array(':count' => 26))
+      ->having('MAX(age) > :count', [':count' => 26])
       ->limit(5);
 
     $ages = $query
       ->execute()
       ->fetchCol();
-    $this->assertEqual($ages, array('George', 'Ringo'), 'Pager query with having expression returned the correct ages.');
+    $this->assertEqual($ages, ['George', 'Ringo'], 'Pager query with having expression returned the correct ages.');
   }
 
   /**
@@ -127,15 +127,15 @@ function testHavingPagerQuery() {
   function testElementNumbers() {
 
     $request = Request::createFromGlobals();
-    $request->query->replace(array(
+    $request->query->replace([
       'page' => '3, 2, 1, 0',
-    ));
+    ]);
     \Drupal::getContainer()->get('request_stack')->push($request);
 
     $name = db_select('test', 't')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender')
       ->element(2)
-      ->fields('t', array('name'))
+      ->fields('t', ['name'])
       ->orderBy('age')
       ->limit(1)
       ->execute()
@@ -147,7 +147,7 @@ function testElementNumbers() {
     $name = db_select('test', 't')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender')
       ->element(1)
-      ->fields('t', array('name'))
+      ->fields('t', ['name'])
       ->orderBy('age')
       ->limit(1)
       ->execute()
@@ -156,7 +156,7 @@ function testElementNumbers() {
 
     $name = db_select('test', 't')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender')
-      ->fields('t', array('name'))
+      ->fields('t', ['name'])
       ->orderBy('age')
       ->limit(1)
       ->execute()
diff --git a/core/modules/system/src/Tests/Database/SelectTableSortDefaultTest.php b/core/modules/system/src/Tests/Database/SelectTableSortDefaultTest.php
index 7ccbbb5..8ed05bd 100644
--- a/core/modules/system/src/Tests/Database/SelectTableSortDefaultTest.php
+++ b/core/modules/system/src/Tests/Database/SelectTableSortDefaultTest.php
@@ -16,17 +16,17 @@ class SelectTableSortDefaultTest extends DatabaseWebTestBase {
    * because the pager depends on GET parameters.
    */
   function testTableSortQuery() {
-    $sorts = array(
-      array('field' => t('Task ID'), 'sort' => 'desc', 'first' => 'perform at superbowl', 'last' => 'eat'),
-      array('field' => t('Task ID'), 'sort' => 'asc', 'first' => 'eat', 'last' => 'perform at superbowl'),
-      array('field' => t('Task'), 'sort' => 'asc', 'first' => 'code', 'last' => 'sleep'),
-      array('field' => t('Task'), 'sort' => 'desc', 'first' => 'sleep', 'last' => 'code'),
+    $sorts = [
+      ['field' => t('Task ID'), 'sort' => 'desc', 'first' => 'perform at superbowl', 'last' => 'eat'],
+      ['field' => t('Task ID'), 'sort' => 'asc', 'first' => 'eat', 'last' => 'perform at superbowl'],
+      ['field' => t('Task'), 'sort' => 'asc', 'first' => 'code', 'last' => 'sleep'],
+      ['field' => t('Task'), 'sort' => 'desc', 'first' => 'sleep', 'last' => 'code'],
       // more elements here
 
-    );
+    ];
 
     foreach ($sorts as $sort) {
-      $this->drupalGet('database_test/tablesort/', array('query' => array('order' => $sort['field'], 'sort' => $sort['sort'])));
+      $this->drupalGet('database_test/tablesort/', ['query' => ['order' => $sort['field'], 'sort' => $sort['sort']]]);
       $data = json_decode($this->getRawContent());
 
       $first = array_shift($data->tasks);
@@ -44,24 +44,24 @@ function testTableSortQuery() {
    * header happens first.
    */
   function testTableSortQueryFirst() {
-    $sorts = array(
-      array('field' => t('Task ID'), 'sort' => 'desc', 'first' => 'perform at superbowl', 'last' => 'eat'),
-      array('field' => t('Task ID'), 'sort' => 'asc', 'first' => 'eat', 'last' => 'perform at superbowl'),
-      array('field' => t('Task'), 'sort' => 'asc', 'first' => 'code', 'last' => 'sleep'),
-      array('field' => t('Task'), 'sort' => 'desc', 'first' => 'sleep', 'last' => 'code'),
+    $sorts = [
+      ['field' => t('Task ID'), 'sort' => 'desc', 'first' => 'perform at superbowl', 'last' => 'eat'],
+      ['field' => t('Task ID'), 'sort' => 'asc', 'first' => 'eat', 'last' => 'perform at superbowl'],
+      ['field' => t('Task'), 'sort' => 'asc', 'first' => 'code', 'last' => 'sleep'],
+      ['field' => t('Task'), 'sort' => 'desc', 'first' => 'sleep', 'last' => 'code'],
       // more elements here
 
-    );
+    ];
 
     foreach ($sorts as $sort) {
-      $this->drupalGet('database_test/tablesort_first/', array('query' => array('order' => $sort['field'], 'sort' => $sort['sort'])));
+      $this->drupalGet('database_test/tablesort_first/', ['query' => ['order' => $sort['field'], 'sort' => $sort['sort']]]);
       $data = json_decode($this->getRawContent());
 
       $first = array_shift($data->tasks);
       $last = array_pop($data->tasks);
 
-      $this->assertEqual($first->task, $sort['first'], format_string('Items appear in the correct order sorting by @field @sort.', array('@field' => $sort['field'], '@sort' => $sort['sort'])));
-      $this->assertEqual($last->task, $sort['last'], format_string('Items appear in the correct order sorting by @field @sort.', array('@field' => $sort['field'], '@sort' => $sort['sort'])));
+      $this->assertEqual($first->task, $sort['first'], format_string('Items appear in the correct order sorting by @field @sort.', ['@field' => $sort['field'], '@sort' => $sort['sort']]));
+      $this->assertEqual($last->task, $sort['last'], format_string('Items appear in the correct order sorting by @field @sort.', ['@field' => $sort['field'], '@sort' => $sort['sort']]));
     }
   }
 
diff --git a/core/modules/system/src/Tests/Database/TemporaryQueryTest.php b/core/modules/system/src/Tests/Database/TemporaryQueryTest.php
index 1bfa754..fd75df3 100644
--- a/core/modules/system/src/Tests/Database/TemporaryQueryTest.php
+++ b/core/modules/system/src/Tests/Database/TemporaryQueryTest.php
@@ -14,7 +14,7 @@ class TemporaryQueryTest extends DatabaseWebTestBase {
    *
    * @var array
    */
-  public static $modules = array('database_test');
+  public static $modules = ['database_test'];
 
   /**
    * Returns the number of rows of a table.
@@ -38,8 +38,8 @@ function testTemporaryQuery() {
     }
 
     // Now try to run two db_query_temporary() in the same request.
-    $table_name_test = db_query_temporary('SELECT name FROM {test}', array());
-    $table_name_task = db_query_temporary('SELECT pid FROM {test_task}', array());
+    $table_name_test = db_query_temporary('SELECT name FROM {test}', []);
+    $table_name_task = db_query_temporary('SELECT pid FROM {test_task}', []);
 
     $this->assertEqual($this->countTableRows($table_name_test), $this->countTableRows('test'), 'A temporary table was created successfully in this request.');
     $this->assertEqual($this->countTableRows($table_name_task), $this->countTableRows('test_task'), 'A second temporary table was created successfully in this request.');
@@ -50,7 +50,7 @@ function testTemporaryQuery() {
       -- Let's select some rows into a temporary table
       SELECT name FROM {test}
     ";
-    $table_name_test = db_query_temporary($sql, array());
+    $table_name_test = db_query_temporary($sql, []);
     $this->assertEqual($this->countTableRows($table_name_test), $this->countTableRows('test'), 'Leading white space and comments do not interfere with temporary table creation.');
   }
 
diff --git a/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php b/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php
index a26350e..7f5c5e3 100644
--- a/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php
+++ b/core/modules/system/src/Tests/Entity/EntityCacheTagsTestBase.php
@@ -71,18 +71,18 @@ protected function setUp() {
     if ($this->entity->getEntityType()->get('field_ui_base_route')) {
       // Add field, so we can modify the field storage and field entities to
       // verify that changes to those indeed clear cache tags.
-      FieldStorageConfig::create(array(
+      FieldStorageConfig::create([
         'field_name' => 'configurable_field',
         'entity_type' => $this->entity->getEntityTypeId(),
         'type' => 'test_field',
-        'settings' => array(),
-      ))->save();
+        'settings' => [],
+      ])->save();
       FieldConfig::create([
         'entity_type' => $this->entity->getEntityTypeId(),
         'bundle' => $this->entity->bundle(),
         'field_name' => 'configurable_field',
         'label' => 'Configurable field',
-        'settings' => array(),
+        'settings' => [],
       ])->save();
 
       // Reload the entity now that a new field has been added to it.
@@ -113,11 +113,11 @@ protected function setUp() {
    * @see \Drupal\simpletest\TestBase::getInfo()
    */
   protected static function generateStandardizedInfo($entity_type_label, $group) {
-    return array(
+    return [
       'name' => "$entity_type_label entity cache tags",
       'description' => "Test the $entity_type_label entity's cache tags.",
       'group' => $group,
-    );
+    ];
   }
 
   /**
@@ -173,7 +173,7 @@ protected function getAdditionalCacheContextsForEntity(EntityInterface $entity)
    * @see \Drupal\system\Tests\Entity\EntityCacheTagsTestBase::createEntity()
    */
   protected function getAdditionalCacheTagsForEntity(EntityInterface $entity) {
-    return array();
+    return [];
   }
 
   /**
@@ -208,7 +208,7 @@ protected function getAdditionalCacheTagsForEntityListing() {
   protected function selectViewMode($entity_type) {
     $view_modes = \Drupal::entityManager()
       ->getStorage('entity_view_mode')
-      ->loadByProperties(array('targetEntityType' => $entity_type));
+      ->loadByProperties(['targetEntityType' => $entity_type]);
 
     if (empty($view_modes)) {
       return 'default';
@@ -244,46 +244,46 @@ protected function createReferenceTestEntities($referenced_entity) {
 
     // Add a field of the given type to the given entity type's "foo" bundle.
     $field_name = $referenced_entity->getEntityTypeId() . '_reference';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'type' => 'entity_reference',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-      'settings' => array(
+      'settings' => [
         'target_type' => $referenced_entity->getEntityTypeId(),
-      ),
-    ))->save();
+      ],
+    ])->save();
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'bundle' => $bundle,
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
-          'target_bundles' => array(
+        'handler_settings' => [
+          'target_bundles' => [
             $referenced_entity->bundle() => $referenced_entity->bundle(),
-          ),
-          'sort' => array('field' => '_none'),
+          ],
+          'sort' => ['field' => '_none'],
           'auto_create' => FALSE,
-        ),
-      ),
+        ],
+      ],
     ])->save();
     if (!$this->entity->getEntityType()->hasHandlerClass('view_builder')) {
       entity_get_display($entity_type, $bundle, 'full')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => 'entity_reference_label',
-        ))
+        ])
         ->save();
     }
     else {
       $referenced_entity_view_mode = $this->selectViewMode($this->entity->getEntityTypeId());
       entity_get_display($entity_type, $bundle, 'full')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => 'entity_reference_entity_view',
-          'settings' => array(
+          'settings' => [
             'view_mode' => $referenced_entity_view_mode,
-          ),
-        ))
+          ],
+        ])
         ->save();
     }
 
@@ -291,28 +291,28 @@ protected function createReferenceTestEntities($referenced_entity) {
     $label_key = \Drupal::entityManager()->getDefinition($entity_type)->getKey('label');
     $referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         $label_key => 'Referencing ' . $entity_type,
         'status' => 1,
         'type' => $bundle,
-        $field_name => array('target_id' => $referenced_entity->id()),
-      ));
+        $field_name => ['target_id' => $referenced_entity->id()],
+      ]);
     $referencing_entity->save();
 
     // Create an entity that does not reference the entity being tested.
     $non_referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         $label_key => 'Non-referencing ' . $entity_type,
         'status' => 1,
         'type' => $bundle,
-      ));
+      ]);
     $non_referencing_entity->save();
 
-    return array(
+    return [
       $referencing_entity,
       $non_referencing_entity,
-    );
+    ];
   }
 
   /**
@@ -353,7 +353,7 @@ public function testReferencedEntity() {
 
     $page_cache_tags_referencing_entity = in_array('user.permissions', $this->getAccessCacheContextsForEntity($this->referencingEntity)) ? ['config:user.role.anonymous'] : [];
 
-    $view_cache_tag = array();
+    $view_cache_tag = [];
     if ($this->entity->getEntityType()->hasHandlerClass('view_builder')) {
       $view_cache_tag = \Drupal::entityManager()->getViewBuilder($entity_type)
         ->getCacheTags();
diff --git a/core/modules/system/src/Tests/Entity/EntityDefinitionTestTrait.php b/core/modules/system/src/Tests/Entity/EntityDefinitionTestTrait.php
index 0123597..7fcabd7 100644
--- a/core/modules/system/src/Tests/Entity/EntityDefinitionTestTrait.php
+++ b/core/modules/system/src/Tests/Entity/EntityDefinitionTestTrait.php
@@ -202,9 +202,9 @@ protected function removeBundleField() {
    * @see \Drupal\entity_test\EntityTestStorageSchema::getEntitySchema()
    */
   protected function addEntityIndex() {
-    $indexes = array(
-      'entity_test_update__new_index' => array('name', 'user_id'),
-    );
+    $indexes = [
+      'entity_test_update__new_index' => ['name', 'user_id'],
+    ];
     $this->state->set('entity_test_update.additional_entity_indexes', $indexes);
   }
 
diff --git a/core/modules/system/src/Tests/Entity/EntityFormTest.php b/core/modules/system/src/Tests/Entity/EntityFormTest.php
index 4e0ced5..8bcb0c5 100644
--- a/core/modules/system/src/Tests/Entity/EntityFormTest.php
+++ b/core/modules/system/src/Tests/Entity/EntityFormTest.php
@@ -17,11 +17,11 @@ class EntityFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'language');
+  public static $modules = ['entity_test', 'language'];
 
   protected function setUp() {
     parent::setUp();
-    $web_user = $this->drupalCreateUser(array('administer entity_test content', 'view test entity'));
+    $web_user = $this->drupalCreateUser(['administer entity_test content', 'view test entity']);
     $this->drupalLogin($web_user);
 
     // Add a language.
@@ -69,28 +69,28 @@ protected function doTestFormCRUD($entity_type) {
     $name1 = $this->randomMachineName(8);
     $name2 = $this->randomMachineName(10);
 
-    $edit = array(
+    $edit = [
       'name[0][value]' => $name1,
       'field_test_text[0][value]' => $this->randomMachineName(16),
-    );
+    ];
 
     $this->drupalPostForm($entity_type . '/add', $edit, t('Save'));
     $entity = $this->loadEntityByName($entity_type, $name1);
-    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', array('%entity_type' => $entity_type)));
+    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', ['%entity_type' => $entity_type]));
 
     $edit['name[0][value]'] = $name2;
     $this->drupalPostForm($entity_type . '/manage/' . $entity->id() . '/edit', $edit, t('Save'));
     $entity = $this->loadEntityByName($entity_type, $name1);
-    $this->assertFalse($entity, format_string('%entity_type: The entity has been modified.', array('%entity_type' => $entity_type)));
+    $this->assertFalse($entity, format_string('%entity_type: The entity has been modified.', ['%entity_type' => $entity_type]));
     $entity = $this->loadEntityByName($entity_type, $name2);
-    $this->assertTrue($entity, format_string('%entity_type: Modified entity found in the database.', array('%entity_type' => $entity_type)));
-    $this->assertNotEqual($entity->name->value, $name1, format_string('%entity_type: The entity name has been modified.', array('%entity_type' => $entity_type)));
+    $this->assertTrue($entity, format_string('%entity_type: Modified entity found in the database.', ['%entity_type' => $entity_type]));
+    $this->assertNotEqual($entity->name->value, $name1, format_string('%entity_type: The entity name has been modified.', ['%entity_type' => $entity_type]));
 
     $this->drupalGet($entity_type . '/manage/' . $entity->id() . '/edit');
     $this->clickLink(t('Delete'));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $entity = $this->loadEntityByName($entity_type, $name2);
-    $this->assertFalse($entity, format_string('%entity_type: Entity not found in the database.', array('%entity_type' => $entity_type)));
+    $this->assertFalse($entity, format_string('%entity_type: Entity not found in the database.', ['%entity_type' => $entity_type]));
   }
 
   /**
@@ -104,33 +104,33 @@ protected function doTestMultilingualFormCRUD($entity_type_id) {
     $name1_ro = $this->randomMachineName(9);
     $name2_ro = $this->randomMachineName(11);
 
-    $edit = array(
+    $edit = [
       'name[0][value]' => $name1,
       'field_test_text[0][value]' => $this->randomMachineName(16),
-    );
+    ];
 
     $this->drupalPostForm($entity_type_id . '/add', $edit, t('Save'));
     $entity = $this->loadEntityByName($entity_type_id, $name1);
-    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', array('%entity_type' => $entity_type_id)));
+    $this->assertTrue($entity, format_string('%entity_type: Entity found in the database.', ['%entity_type' => $entity_type_id]));
 
     // Add a translation to the newly created entity without using the Content
     // translation module.
     $entity->addTranslation('ro', ['name' => $name1_ro])->save();
     $translated_entity = $this->loadEntityByName($entity_type_id, $name1)->getTranslation('ro');
-    $this->assertEqual($translated_entity->name->value, $name1_ro, format_string('%entity_type: The translation has been added.', array('%entity_type' => $entity_type_id)));
+    $this->assertEqual($translated_entity->name->value, $name1_ro, format_string('%entity_type: The translation has been added.', ['%entity_type' => $entity_type_id]));
 
     $edit['name[0][value]'] = $name2_ro;
     $this->drupalPostForm('ro/' . $entity_type_id . '/manage/' . $entity->id() . '/edit', $edit, t('Save'));
     $translated_entity = $this->loadEntityByName($entity_type_id, $name1)->getTranslation('ro');
-    $this->assertTrue($translated_entity, format_string('%entity_type: Modified translation found in the database.', array('%entity_type' => $entity_type_id)));
-    $this->assertEqual($translated_entity->name->value, $name2_ro, format_string('%entity_type: The name of the translation has been modified.', array('%entity_type' => $entity_type_id)));
+    $this->assertTrue($translated_entity, format_string('%entity_type: Modified translation found in the database.', ['%entity_type' => $entity_type_id]));
+    $this->assertEqual($translated_entity->name->value, $name2_ro, format_string('%entity_type: The name of the translation has been modified.', ['%entity_type' => $entity_type_id]));
 
     $this->drupalGet('ro/' . $entity_type_id . '/manage/' . $entity->id() . '/edit');
     $this->clickLink(t('Delete'));
-    $this->drupalPostForm(NULL, array(), t('Delete Romanian translation'));
+    $this->drupalPostForm(NULL, [], t('Delete Romanian translation'));
     $entity = $this->loadEntityByName($entity_type_id, $name1);
-    $this->assertNotNull($entity, format_string('%entity_type: The original entity still exists.', array('%entity_type' => $entity_type_id)));
-    $this->assertFalse($entity->hasTranslation('ro'), format_string('%entity_type: Entity translation does not exist anymore.', array('%entity_type' => $entity_type_id)));
+    $this->assertNotNull($entity, format_string('%entity_type: The original entity still exists.', ['%entity_type' => $entity_type_id]));
+    $this->assertFalse($entity->hasTranslation('ro'), format_string('%entity_type: Entity translation does not exist anymore.', ['%entity_type' => $entity_type_id]));
   }
 
   /**
@@ -141,7 +141,7 @@ protected function loadEntityByName($entity_type, $name) {
     // correctly picked up.
     $entity_storage = $this->container->get('entity.manager')->getStorage($entity_type);
     $entity_storage->resetCache();
-    $entities = $entity_storage->loadByProperties(array('name' => $name));
+    $entities = $entity_storage->loadByProperties(['name' => $name]);
     return $entities ? current($entities) : NULL;
   }
 
diff --git a/core/modules/system/src/Tests/Entity/EntityTranslationFormTest.php b/core/modules/system/src/Tests/Entity/EntityTranslationFormTest.php
index d64e019..e2854d2 100644
--- a/core/modules/system/src/Tests/Entity/EntityTranslationFormTest.php
+++ b/core/modules/system/src/Tests/Entity/EntityTranslationFormTest.php
@@ -19,7 +19,7 @@ class EntityTranslationFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'language', 'node');
+  public static $modules = ['entity_test', 'language', 'node'];
 
   protected $langcodes;
 
@@ -29,12 +29,12 @@ protected function setUp() {
     \Drupal::state()->set('entity_test.translation', TRUE);
 
     // Create test languages.
-    $this->langcodes = array();
+    $this->langcodes = [];
     for ($i = 0; $i < 2; ++$i) {
-      $language = ConfigurableLanguage::create(array(
+      $language = ConfigurableLanguage::create([
         'id' => 'l' . $i,
         'label' => $this->randomString(),
-      ));
+      ]);
       $this->langcodes[$i] = $language->id();
       $language->save();
     }
@@ -44,13 +44,13 @@ protected function setUp() {
    * Tests entity form language.
    */
   function testEntityFormLanguage() {
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $web_user = $this->drupalCreateUser(array('create page content', 'edit own page content', 'administer content types'));
+    $web_user = $this->drupalCreateUser(['create page content', 'edit own page content', 'administer content types']);
     $this->drupalLogin($web_user);
 
     // Create a node with language LanguageInterface::LANGCODE_NOT_SPECIFIED.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $this->drupalGet('node/add/page');
@@ -75,21 +75,21 @@ function testEntityFormLanguage() {
 
     // Enable language selector.
     $this->drupalGet('admin/structure/types/manage/page');
-    $edit = array('language_configuration[language_alterable]' => TRUE, 'language_configuration[langcode]' => LanguageInterface::LANGCODE_NOT_SPECIFIED);
+    $edit = ['language_configuration[language_alterable]' => TRUE, 'language_configuration[langcode]' => LanguageInterface::LANGCODE_NOT_SPECIFIED];
     $this->drupalPostForm('admin/structure/types/manage/page', $edit, t('Save content type'));
-    $this->assertRaw(t('The content type %type has been updated.', array('%type' => 'Basic page')), 'Basic page content type has been updated.');
+    $this->assertRaw(t('The content type %type has been updated.', ['%type' => 'Basic page']), 'Basic page content type has been updated.');
 
     // Create a node with language.
-    $edit = array();
+    $edit = [];
     $langcode = $this->langcodes[0];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $edit['langcode[0][value]'] = $langcode;
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
-    $this->assertText(t('Basic page @title has been created.', array('@title' => $edit['title[0][value]'])), 'Basic page created.');
+    $this->assertText(t('Basic page @title has been created.', ['@title' => $edit['title[0][value]']]), 'Basic page created.');
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/']);
     $this->assert(isset($view_link), 'The message area contains a link to a node');
 
     // Check to make sure the node was created.
diff --git a/core/modules/system/src/Tests/Entity/EntityUnitTestBase.php b/core/modules/system/src/Tests/Entity/EntityUnitTestBase.php
index 2ec64e8..5d7dc6f 100644
--- a/core/modules/system/src/Tests/Entity/EntityUnitTestBase.php
+++ b/core/modules/system/src/Tests/Entity/EntityUnitTestBase.php
@@ -34,7 +34,7 @@
    *
    * @var array
    */
-  protected $generatedIds = array();
+  protected $generatedIds = [];
 
   /**
    * The state service.
@@ -65,7 +65,7 @@ protected function setUp() {
         // Only check the modules, if the $modules property was not inherited.
         $rp = new \ReflectionProperty($class, 'modules');
         if ($rp->class == $class) {
-          foreach (array_intersect(array('node', 'comment'), $class::$modules) as $module) {
+          foreach (array_intersect(['node', 'comment'], $class::$modules) as $module) {
             $this->installEntitySchema($module);
           }
           if (in_array('forum', $class::$modules, TRUE)) {
@@ -82,7 +82,7 @@ protected function setUp() {
       $class = get_parent_class($class);
     }
 
-    $this->installConfig(array('field'));
+    $this->installConfig(['field']);
   }
 
   /**
@@ -96,13 +96,13 @@ protected function setUp() {
    * @return \Drupal\user\Entity\User
    *   The created user entity.
    */
-  protected function createUser($values = array(), $permissions = array()) {
+  protected function createUser($values = [], $permissions = []) {
     if ($permissions) {
       // Create a new role and apply permissions to it.
-      $role = Role::create(array(
+      $role = Role::create([
         'id' => strtolower($this->randomMachineName(8)),
         'label' => $this->randomMachineName(8),
-      ));
+      ]);
       $role->save();
       user_role_grant_permissions($role->id(), $permissions);
       $values['roles'][] = $role->id();
@@ -128,7 +128,7 @@ protected function createUser($values = array(), $permissions = array()) {
    */
   protected function reloadEntity(EntityInterface $entity) {
     $controller = $this->entityManager->getStorage($entity->getEntityTypeId());
-    $controller->resetCache(array($entity->id()));
+    $controller->resetCache([$entity->id()]);
     return $controller->load($entity->id());
   }
 
@@ -141,7 +141,7 @@ protected function reloadEntity(EntityInterface $entity) {
   protected function getHooksInfo() {
     $key = 'entity_test.hooks';
     $hooks = $this->state->get($key);
-    $this->state->set($key, array());
+    $this->state->set($key, []);
     return $hooks;
   }
 
@@ -152,7 +152,7 @@ protected function getHooksInfo() {
    *   The module to install.
    */
   protected function installModule($module) {
-    $this->enableModules(array($module));
+    $this->enableModules([$module]);
     $this->refreshServices();
   }
 
@@ -163,7 +163,7 @@ protected function installModule($module) {
    *   The module to uninstall.
    */
   protected function uninstallModule($module) {
-    $this->disableModules(array($module));
+    $this->disableModules([$module]);
     $this->refreshServices();
   }
 
diff --git a/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php b/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php
index f6da0a2..74c1103 100644
--- a/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php
+++ b/core/modules/system/src/Tests/Entity/EntityWithUriCacheTagsTestBase.php
@@ -53,7 +53,7 @@ public function testEntityUri() {
       }
       $expected_cache_tags = Cache::mergeTags($cache_tag, $view_cache_tag);
       $expected_cache_tags = Cache::mergeTags($expected_cache_tags, $this->getAdditionalCacheTagsForEntity($this->entity));
-      $expected_cache_tags = Cache::mergeTags($expected_cache_tags, array($render_cache_tag));
+      $expected_cache_tags = Cache::mergeTags($expected_cache_tags, [$render_cache_tag]);
       $this->verifyRenderCache($cid, $expected_cache_tags, $redirected_cid);
     }
 
diff --git a/core/modules/system/src/Tests/Form/AlterTest.php b/core/modules/system/src/Tests/Form/AlterTest.php
index ae30722..e77cf30 100644
--- a/core/modules/system/src/Tests/Form/AlterTest.php
+++ b/core/modules/system/src/Tests/Form/AlterTest.php
@@ -17,7 +17,7 @@ class AlterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'form_test');
+  public static $modules = ['block', 'form_test'];
 
   /**
    * Tests execution order of hook_form_alter() and hook_form_FORM_ID_alter().
@@ -26,13 +26,13 @@ function testExecutionOrder() {
     $this->drupalGet('form-test/alter');
     // Ensure that the order is first by module, then for a given module, the
     // id-specific one after the generic one.
-    $expected = array(
+    $expected = [
       'block_form_form_test_alter_form_alter() executed.',
       'form_test_form_alter() executed.',
       'form_test_form_form_test_alter_form_alter() executed.',
       'system_form_form_test_alter_form_alter() executed.',
-    );
-    $content = preg_replace('/\s+/', ' ', Xss::filter($this->content, array()));
+    ];
+    $content = preg_replace('/\s+/', ' ', Xss::filter($this->content, []));
     $this->assert(strpos($content, implode(' ', $expected)) !== FALSE, 'Form alter hooks executed in the expected order.');
   }
 
diff --git a/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php b/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php
index 3702d35..95324c9 100644
--- a/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php
+++ b/core/modules/system/src/Tests/Form/ArbitraryRebuildTest.php
@@ -18,19 +18,19 @@ class ArbitraryRebuildTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('text', 'form_test');
+  public static $modules = ['text', 'form_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Auto-create a field for testing.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => 'user',
       'field_name' => 'test_multiple',
       'type' => 'text',
       'cardinality' => -1,
       'translatable' => FALSE,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'user',
       'field_name' => 'test_multiple',
@@ -38,10 +38,10 @@ protected function setUp() {
       'label' => 'Test a multiple valued field',
     ])->save();
     entity_get_form_display('user', 'user', 'register')
-      ->setComponent('test_multiple', array(
+      ->setComponent('test_multiple', [
         'type' => 'text_textfield',
         'weight' => 0,
-      ))
+      ])
       ->save();
   }
 
@@ -49,10 +49,10 @@ protected function setUp() {
    * Tests a basic rebuild with the user registration form.
    */
   function testUserRegistrationRebuild() {
-    $edit = array(
+    $edit = [
       'name' => 'foo',
       'mail' => 'bar@example.com',
-    );
+    ];
     $this->drupalPostForm('user/register', $edit, 'Rebuild');
     $this->assertText('Form rebuilt.');
     $this->assertFieldByName('name', 'foo', 'Entered username has been kept.');
@@ -63,10 +63,10 @@ function testUserRegistrationRebuild() {
    * Tests a rebuild caused by a multiple value field.
    */
   function testUserRegistrationMultipleField() {
-    $edit = array(
+    $edit = [
       'name' => 'foo',
       'mail' => 'bar@example.com',
-    );
+    ];
     $this->drupalPostForm('user/register', $edit, t('Add another item'));
     $this->assertText('Test a multiple valued field', 'Form has been rebuilt.');
     $this->assertFieldByName('name', 'foo', 'Entered username has been kept.');
diff --git a/core/modules/system/src/Tests/Form/CheckboxTest.php b/core/modules/system/src/Tests/Form/CheckboxTest.php
index ebeeeea..0e17309 100644
--- a/core/modules/system/src/Tests/Form/CheckboxTest.php
+++ b/core/modules/system/src/Tests/Form/CheckboxTest.php
@@ -17,16 +17,16 @@ class CheckboxTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   function testFormCheckbox() {
     // Ensure that the checked state is determined and rendered correctly for
     // tricky combinations of default and return values.
-    foreach (array(FALSE, NULL, TRUE, 0, '0', '', 1, '1', 'foobar', '1foobar') as $default_value) {
+    foreach ([FALSE, NULL, TRUE, 0, '0', '', 1, '1', 'foobar', '1foobar'] as $default_value) {
       // Only values that can be used for array indices are supported for
       // #return_value, with the exception of integer 0, which is not supported.
       // @see \Drupal\Core\Render\Element\Checkbox::processCheckbox().
-      foreach (array('0', '', 1, '1', 'foobar', '1foobar') as $return_value) {
+      foreach (['0', '', 1, '1', 'foobar', '1foobar'] as $return_value) {
         $form_array = \Drupal::formBuilder()->getForm('\Drupal\form_test\Form\FormTestCheckboxTypeJugglingForm', $default_value, $return_value);
         $form = \Drupal::service('renderer')->renderRoot($form_array);
         if ($default_value === TRUE) {
@@ -48,33 +48,33 @@ function testFormCheckbox() {
           $checked = ($default_value === '1foobar');
         }
         $checked_in_html = strpos($form, 'checked') !== FALSE;
-        $message = format_string('#default_value is %default_value #return_value is %return_value.', array('%default_value' => var_export($default_value, TRUE), '%return_value' => var_export($return_value, TRUE)));
+        $message = format_string('#default_value is %default_value #return_value is %return_value.', ['%default_value' => var_export($default_value, TRUE), '%return_value' => var_export($return_value, TRUE)]);
         $this->assertIdentical($checked, $checked_in_html, $message);
       }
     }
 
     // Ensure that $form_state->getValues() is populated correctly for a
     // checkboxes group that includes a 0-indexed array of options.
-    $results = json_decode($this->drupalPostForm('form-test/checkboxes-zero/1', array(), 'Save'));
-    $this->assertIdentical($results->checkbox_off, array(0, 0, 0), 'All three in checkbox_off are zeroes: off.');
-    $this->assertIdentical($results->checkbox_zero_default, array('0', 0, 0), 'The first choice is on in checkbox_zero_default');
-    $this->assertIdentical($results->checkbox_string_zero_default, array('0', 0, 0), 'The first choice is on in checkbox_string_zero_default');
-    $edit = array('checkbox_off[0]' => '0');
+    $results = json_decode($this->drupalPostForm('form-test/checkboxes-zero/1', [], 'Save'));
+    $this->assertIdentical($results->checkbox_off, [0, 0, 0], 'All three in checkbox_off are zeroes: off.');
+    $this->assertIdentical($results->checkbox_zero_default, ['0', 0, 0], 'The first choice is on in checkbox_zero_default');
+    $this->assertIdentical($results->checkbox_string_zero_default, ['0', 0, 0], 'The first choice is on in checkbox_string_zero_default');
+    $edit = ['checkbox_off[0]' => '0'];
     $results = json_decode($this->drupalPostForm('form-test/checkboxes-zero/1', $edit, 'Save'));
-    $this->assertIdentical($results->checkbox_off, array('0', 0, 0), 'The first choice is on in checkbox_off but the rest is not');
+    $this->assertIdentical($results->checkbox_off, ['0', 0, 0], 'The first choice is on in checkbox_off but the rest is not');
 
     // Ensure that each checkbox is rendered correctly for a checkboxes group
     // that includes a 0-indexed array of options.
-    $this->drupalPostForm('form-test/checkboxes-zero/0', array(), 'Save');
+    $this->drupalPostForm('form-test/checkboxes-zero/0', [], 'Save');
     $checkboxes = $this->xpath('//input[@type="checkbox"]');
 
     $this->assertIdentical(count($checkboxes), 9, 'Correct number of checkboxes found.');
     foreach ($checkboxes as $checkbox) {
       $checked = isset($checkbox['checked']);
       $name = (string) $checkbox['name'];
-      $this->assertIdentical($checked, $name == 'checkbox_zero_default[0]' || $name == 'checkbox_string_zero_default[0]', format_string('Checkbox %name correctly checked', array('%name' => $name)));
+      $this->assertIdentical($checked, $name == 'checkbox_zero_default[0]' || $name == 'checkbox_string_zero_default[0]', format_string('Checkbox %name correctly checked', ['%name' => $name]));
     }
-    $edit = array('checkbox_off[0]' => '0');
+    $edit = ['checkbox_off[0]' => '0'];
     $this->drupalPostForm('form-test/checkboxes-zero/0', $edit, 'Save');
     $checkboxes = $this->xpath('//input[@type="checkbox"]');
 
@@ -82,7 +82,7 @@ function testFormCheckbox() {
     foreach ($checkboxes as $checkbox) {
       $checked = isset($checkbox['checked']);
       $name = (string) $checkbox['name'];
-      $this->assertIdentical($checked, $name == 'checkbox_off[0]' || $name == 'checkbox_zero_default[0]' || $name == 'checkbox_string_zero_default[0]', format_string('Checkbox %name correctly checked', array('%name' => $name)));
+      $this->assertIdentical($checked, $name == 'checkbox_off[0]' || $name == 'checkbox_zero_default[0]' || $name == 'checkbox_string_zero_default[0]', format_string('Checkbox %name correctly checked', ['%name' => $name]));
     }
   }
 
diff --git a/core/modules/system/src/Tests/Form/ConfirmFormTest.php b/core/modules/system/src/Tests/Form/ConfirmFormTest.php
index 312aa2e..a26d493 100644
--- a/core/modules/system/src/Tests/Form/ConfirmFormTest.php
+++ b/core/modules/system/src/Tests/Form/ConfirmFormTest.php
@@ -18,33 +18,33 @@ class ConfirmFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   function testConfirmForm() {
     // Test the building of the form.
     $this->drupalGet('form-test/confirm-form');
     $site_name = $this->config('system.site')->get('name');
-    $this->assertTitle(t('ConfirmFormTestForm::getQuestion(). | @site-name', array('@site-name' => $site_name)), 'The question was found as the page title.');
+    $this->assertTitle(t('ConfirmFormTestForm::getQuestion(). | @site-name', ['@site-name' => $site_name]), 'The question was found as the page title.');
     $this->assertText(t('ConfirmFormTestForm::getDescription().'), 'The description was used.');
     $this->assertFieldByXPath('//input[@id="edit-submit"]', t('ConfirmFormTestForm::getConfirmText().'), 'The confirm text was used.');
 
     // Test cancelling the form.
     $this->clickLink(t('ConfirmFormTestForm::getCancelText().'));
-    $this->assertUrl('form-test/autocomplete', array(), "The form's cancel link was followed.");
+    $this->assertUrl('form-test/autocomplete', [], "The form's cancel link was followed.");
 
     // Test submitting the form.
     $this->drupalPostForm('form-test/confirm-form', NULL, t('ConfirmFormTestForm::getConfirmText().'));
     $this->assertText('The ConfirmFormTestForm::submitForm() method was used for this form.');
-    $this->assertUrl('', array(), "The form's redirect was followed.");
+    $this->assertUrl('', [], "The form's redirect was followed.");
 
     // Test submitting the form with a destination.
-    $this->drupalPostForm('form-test/confirm-form', NULL, t('ConfirmFormTestForm::getConfirmText().'), array('query' => array('destination' => 'admin/config')));
-    $this->assertUrl('admin/config', array(), "The form's redirect was not followed, the destination query string was followed.");
+    $this->drupalPostForm('form-test/confirm-form', NULL, t('ConfirmFormTestForm::getConfirmText().'), ['query' => ['destination' => 'admin/config']]);
+    $this->assertUrl('admin/config', [], "The form's redirect was not followed, the destination query string was followed.");
 
     // Test cancelling the form with a complex destination.
     $this->drupalGet('form-test/confirm-form-array-path');
     $this->clickLink(t('ConfirmFormArrayPathTestForm::getCancelText().'));
-    $this->assertUrl('form-test/confirm-form', array('query' => array('destination' => 'admin/config')), "The form's complex cancel link was followed.");
+    $this->assertUrl('form-test/confirm-form', ['query' => ['destination' => 'admin/config']], "The form's complex cancel link was followed.");
   }
 
   /**
@@ -53,14 +53,14 @@ function testConfirmForm() {
   public function testConfirmFormWithExternalDestination() {
     $this->drupalGet('form-test/confirm-form');
     $this->assertCancelLinkUrl(Url::fromRoute('form_test.route8'));
-    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => 'node')));
+    $this->drupalGet('form-test/confirm-form', ['query' => ['destination' => 'node']]);
     $this->assertCancelLinkUrl(Url::fromUri('internal:/node'));
-    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => 'http://example.com')));
+    $this->drupalGet('form-test/confirm-form', ['query' => ['destination' => 'http://example.com']]);
     $this->assertCancelLinkUrl(Url::fromRoute('form_test.route8'));
-    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => '<front>')));
+    $this->drupalGet('form-test/confirm-form', ['query' => ['destination' => '<front>']]);
     $this->assertCancelLinkUrl(Url::fromRoute('<front>'));
     // Other invalid destinations, should fall back to the form default.
-    $this->drupalGet('form-test/confirm-form', array('query' => array('destination' => '/http://example.com')));
+    $this->drupalGet('form-test/confirm-form', ['query' => ['destination' => '/http://example.com']]);
     $this->assertCancelLinkUrl(Url::fromRoute('form_test.route8'));
   }
 
diff --git a/core/modules/system/src/Tests/Form/ElementTest.php b/core/modules/system/src/Tests/Form/ElementTest.php
index 0ae2edc..5b63c6b 100644
--- a/core/modules/system/src/Tests/Form/ElementTest.php
+++ b/core/modules/system/src/Tests/Form/ElementTest.php
@@ -16,7 +16,7 @@ class ElementTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Tests placeholder text for elements that support placeholders.
@@ -25,19 +25,19 @@ function testPlaceHolderText() {
     $this->drupalGet('form-test/placeholder-text');
     $expected = 'placeholder-text';
     // Test to make sure non-textarea elements have the proper placeholder text.
-    foreach (array('textfield', 'tel', 'url', 'password', 'email', 'number') as $type) {
-      $element = $this->xpath('//input[@id=:id and @placeholder=:expected]', array(
+    foreach (['textfield', 'tel', 'url', 'password', 'email', 'number'] as $type) {
+      $element = $this->xpath('//input[@id=:id and @placeholder=:expected]', [
         ':id' => 'edit-' . $type,
         ':expected' => $expected,
-      ));
-      $this->assertTrue(!empty($element), format_string('Placeholder text placed in @type.', array('@type' => $type)));
+      ]);
+      $this->assertTrue(!empty($element), format_string('Placeholder text placed in @type.', ['@type' => $type]));
     }
 
     // Test to make sure textarea has the proper placeholder text.
-    $element = $this->xpath('//textarea[@id=:id and @placeholder=:expected]', array(
+    $element = $this->xpath('//textarea[@id=:id and @placeholder=:expected]', [
       ':id' => 'edit-textarea',
       ':expected' => $expected,
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'Placeholder text placed in textarea.');
   }
 
@@ -48,9 +48,9 @@ function testOptions() {
     $this->drupalGet('form-test/checkboxes-radios');
 
     // Verify that all options appear in their defined order.
-    foreach (array('checkbox', 'radio') as $type) {
-      $elements = $this->xpath('//input[@type=:type]', array(':type' => $type));
-      $expected_values = array('0', 'foo', '1', 'bar', '>');
+    foreach (['checkbox', 'radio'] as $type) {
+      $elements = $this->xpath('//input[@type=:type]', [':type' => $type]);
+      $expected_values = ['0', 'foo', '1', 'bar', '>'];
       foreach ($elements as $element) {
         $expected = array_shift($expected_values);
         $this->assertIdentical((string) $element['value'], $expected);
@@ -68,23 +68,23 @@ function testOptions() {
 
     // Verify that all options appear in their defined order, taking a custom
     // #weight into account.
-    foreach (array('checkbox', 'radio') as $type) {
-      $elements = $this->xpath('//input[@type=:type]', array(':type' => $type));
-      $expected_values = array('0', 'foo', 'bar', '>', '1');
+    foreach (['checkbox', 'radio'] as $type) {
+      $elements = $this->xpath('//input[@type=:type]', [':type' => $type]);
+      $expected_values = ['0', 'foo', 'bar', '>', '1'];
       foreach ($elements as $element) {
         $expected = array_shift($expected_values);
         $this->assertIdentical((string) $element['value'], $expected);
       }
     }
     // Verify that custom #description properties are output.
-    foreach (array('checkboxes', 'radios') as $type) {
-      $elements = $this->xpath('//input[@id=:id]/following-sibling::div[@class=:class]', array(
+    foreach (['checkboxes', 'radios'] as $type) {
+      $elements = $this->xpath('//input[@id=:id]/following-sibling::div[@class=:class]', [
         ':id' => 'edit-' . $type . '-foo',
         ':class' => 'description',
-      ));
-      $this->assertTrue(count($elements), format_string('Custom %type option description found.', array(
+      ]);
+      $this->assertTrue(count($elements), format_string('Custom %type option description found.', [
         '%type' => $type,
-      )));
+      ]));
     }
   }
 
@@ -95,11 +95,11 @@ function testWrapperIds() {
     $this->drupalGet('form-test/checkboxes-radios');
 
     // Verify that wrapper id is different from element id.
-    foreach (array('checkboxes', 'radios') as $type) {
-      $element_ids = $this->xpath('//div[@id=:id]', array(':id' => 'edit-' . $type));
-      $wrapper_ids = $this->xpath('//fieldset[@id=:id]', array(':id' => 'edit-' . $type . '--wrapper'));
-      $this->assertTrue(count($element_ids) == 1, format_string('A single element id found for type %type', array('%type' => $type)));
-      $this->assertTrue(count($wrapper_ids) == 1, format_string('A single wrapper id found for type %type', array('%type' => $type)));
+    foreach (['checkboxes', 'radios'] as $type) {
+      $element_ids = $this->xpath('//div[@id=:id]', [':id' => 'edit-' . $type]);
+      $wrapper_ids = $this->xpath('//fieldset[@id=:id]', [':id' => 'edit-' . $type . '--wrapper']);
+      $this->assertTrue(count($element_ids) == 1, format_string('A single element id found for type %type', ['%type' => $type]));
+      $this->assertTrue(count($wrapper_ids) == 1, format_string('A single wrapper id found for type %type', ['%type' => $type]));
     }
   }
 
@@ -162,7 +162,7 @@ public function testFormAutocomplete() {
     $result = $this->xpath('//input[@id="edit-autocomplete-2" and contains(@data-autocomplete-path, "form-test/autocomplete-2/value")]');
     $this->assertEqual(count($result), 0, 'Ensure that the user does not have access to the autocompletion');
 
-    $user = $this->drupalCreateUser(array('access autocomplete test'));
+    $user = $this->drupalCreateUser(['access autocomplete test']);
     $this->drupalLogin($user);
     $this->drupalGet('form-test/autocomplete');
 
diff --git a/core/modules/system/src/Tests/Form/ElementsLabelsTest.php b/core/modules/system/src/Tests/Form/ElementsLabelsTest.php
index 5965dc25..02f4659 100644
--- a/core/modules/system/src/Tests/Form/ElementsLabelsTest.php
+++ b/core/modules/system/src/Tests/Form/ElementsLabelsTest.php
@@ -16,7 +16,7 @@ class ElementsLabelsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Test form elements, labels, title attributes and required marks output
@@ -137,12 +137,12 @@ function testFormsInThemeLessEnvironments() {
    * Return a form with element with not all properties defined.
    */
   protected function getFormWithLimitedProperties() {
-    $form = array();
+    $form = [];
 
-    $form['fieldset'] = array(
+    $form['fieldset'] = [
       '#type' => 'fieldset',
       '#title' => 'Fieldset',
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/src/Tests/Form/ElementsTableSelectTest.php b/core/modules/system/src/Tests/Form/ElementsTableSelectTest.php
index 34a558c..e09ba77 100644
--- a/core/modules/system/src/Tests/Form/ElementsTableSelectTest.php
+++ b/core/modules/system/src/Tests/Form/ElementsTableSelectTest.php
@@ -17,7 +17,7 @@ class ElementsTableSelectTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Test the display of checkboxes when #multiple is TRUE.
@@ -31,9 +31,9 @@ function testMultipleTrue() {
     // Test for the presence of the Select all rows tableheader.
     $this->assertFieldByXPath('//th[@class="select-all"]', NULL, 'Presence of the "Select all" checkbox.');
 
-    $rows = array('row1', 'row2', 'row3');
+    $rows = ['row1', 'row2', 'row3'];
     foreach ($rows as $row) {
-      $this->assertFieldByXPath('//input[@type="checkbox"]', $row, format_string('Checkbox for value @row.', array('@row' => $row)));
+      $this->assertFieldByXPath('//input[@type="checkbox"]', $row, format_string('Checkbox for value @row.', ['@row' => $row]));
     }
   }
 
@@ -41,20 +41,20 @@ function testMultipleTrue() {
    * Test the presence of ajax functionality for all options.
    */
   function testAjax() {
-    $rows = array('row1', 'row2', 'row3');
+    $rows = ['row1', 'row2', 'row3'];
     // Test checkboxes (#multiple == TRUE).
     foreach ($rows as $row) {
       $element = 'tableselect[' . $row . ']';
-      $edit = array($element => TRUE);
+      $edit = [$element => TRUE];
       $result = $this->drupalPostAjaxForm('form_test/tableselect/multiple-true', $edit, $element);
-      $this->assertFalse(empty($result), t('Ajax triggers on checkbox for @row.', array('@row' => $row)));
+      $this->assertFalse(empty($result), t('Ajax triggers on checkbox for @row.', ['@row' => $row]));
     }
     // Test radios (#multiple == FALSE).
     $element = 'tableselect';
     foreach ($rows as $row) {
-      $edit = array($element => $row);
+      $edit = [$element => $row];
       $result = $this->drupalPostAjaxForm('form_test/tableselect/multiple-false', $edit, $element);
-      $this->assertFalse(empty($result), t('Ajax triggers on radio for @row.', array('@row' => $row)));
+      $this->assertFalse(empty($result), t('Ajax triggers on radio for @row.', ['@row' => $row]));
     }
   }
 
@@ -69,9 +69,9 @@ function testMultipleFalse() {
     // Test for the absence of the Select all rows tableheader.
     $this->assertNoFieldByXPath('//th[@class="select-all"]', '', 'Absence of the "Select all" checkbox.');
 
-    $rows = array('row1', 'row2', 'row3');
+    $rows = ['row1', 'row2', 'row3'];
     foreach ($rows as $row) {
-      $this->assertFieldByXPath('//input[@type="radio"]', $row, format_string('Radio button for value @row.', array('@row' => $row)));
+      $this->assertFieldByXPath('//input[@type="radio"]', $row, format_string('Radio button for value @row.', ['@row' => $row]));
     }
   }
 
@@ -93,7 +93,7 @@ function testTableselectColSpan() {
     // radio, one cell in the first column, one cell in the second column,
     // and two cells in the third column which has colspan 2.
     for ( $i = 0; $i <= 1; $i++) {
-      $this->assertEqual(count($table_body[0]->tr[$i]->td), 5, format_string('There are five cells in row @row.', array('@row' => $i)));
+      $this->assertEqual(count($table_body[0]->tr[$i]->td), 5, format_string('There are five cells in row @row.', ['@row' => $i]));
     }
     // The third row should have 3 cells, one for the radio, one spanning the
     // first and second column, and a third in column 3 (which has colspan 3).
@@ -114,7 +114,7 @@ function testEmptyText() {
   function testMultipleTrueSubmit() {
 
     // Test a submission with one checkbox checked.
-    $edit = array();
+    $edit = [];
     $edit['tableselect[row1]'] = TRUE;
     $this->drupalPostForm('form_test/tableselect/multiple-true', $edit, 'Submit');
 
@@ -170,18 +170,18 @@ function testMultipleTrueOptionchecker() {
 
     list($header, $options) = _form_test_tableselect_get_data();
 
-    $form['tableselect'] = array(
+    $form['tableselect'] = [
       '#type' => 'tableselect',
       '#header' => $header,
       '#options' => $options,
-    );
+    ];
 
     // Test with a valid value.
-    list(, , $errors) = $this->formSubmitHelper($form, array('tableselect' => array('row1' => 'row1')));
+    list(, , $errors) = $this->formSubmitHelper($form, ['tableselect' => ['row1' => 'row1']]);
     $this->assertFalse(isset($errors['tableselect']), 'Option checker allows valid values for checkboxes.');
 
     // Test with an invalid value.
-    list(, , $errors) = $this->formSubmitHelper($form, array('tableselect' => array('non_existing_value' => 'non_existing_value')));
+    list(, , $errors) = $this->formSubmitHelper($form, ['tableselect' => ['non_existing_value' => 'non_existing_value']]);
     $this->assertTrue(isset($errors['tableselect']), 'Option checker disallows invalid values for checkboxes.');
 
   }
@@ -194,19 +194,19 @@ function testMultipleFalseOptionchecker() {
 
     list($header, $options) = _form_test_tableselect_get_data();
 
-    $form['tableselect'] = array(
+    $form['tableselect'] = [
       '#type' => 'tableselect',
       '#header' => $header,
       '#options' => $options,
       '#multiple' => FALSE,
-    );
+    ];
 
     // Test with a valid value.
-    list(, , $errors) = $this->formSubmitHelper($form, array('tableselect' => 'row1'));
+    list(, , $errors) = $this->formSubmitHelper($form, ['tableselect' => 'row1']);
     $this->assertFalse(isset($errors['tableselect']), 'Option checker allows valid values for radio buttons.');
 
     // Test with an invalid value.
-    list(, , $errors) = $this->formSubmitHelper($form, array('tableselect' => 'non_existing_value'));
+    list(, , $errors) = $this->formSubmitHelper($form, ['tableselect' => 'non_existing_value']);
     $this->assertTrue(isset($errors['tableselect']), 'Option checker disallows invalid values for radio buttons.');
   }
 
@@ -226,7 +226,7 @@ private function formSubmitHelper($form, $edit) {
     $form_id = $this->randomMachineName();
     $form_state = new FormState();
 
-    $form['op'] = array('#type' => 'submit', '#value' => t('Submit'));
+    $form['op'] = ['#type' => 'submit', '#value' => t('Submit')];
     // The form token CSRF protection should not interfere with this test, so we
     // bypass it by setting the token to FALSE.
     $form['#token'] = FALSE;
@@ -252,7 +252,7 @@ private function formSubmitHelper($form, $edit) {
 
     // Return the processed form together with form_state and errors
     // to allow the caller lowlevel access to the form.
-    return array($form, $form_state, $errors);
+    return [$form, $form_state, $errors];
   }
 
 }
diff --git a/core/modules/system/src/Tests/Form/ElementsVerticalTabsTest.php b/core/modules/system/src/Tests/Form/ElementsVerticalTabsTest.php
index 2e630cc..73d5dfa 100644
--- a/core/modules/system/src/Tests/Form/ElementsVerticalTabsTest.php
+++ b/core/modules/system/src/Tests/Form/ElementsVerticalTabsTest.php
@@ -18,7 +18,7 @@ class ElementsVerticalTabsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * A user with permission to access vertical_tab_test_tabs.
@@ -37,7 +37,7 @@ class ElementsVerticalTabsTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('access vertical_tab_test tabs'));
+    $this->adminUser = $this->drupalCreateUser(['access vertical_tab_test tabs']);
     $this->webUser = $this->drupalCreateUser();
     $this->drupalLogin($this->adminUser);
   }
diff --git a/core/modules/system/src/Tests/Form/EmailTest.php b/core/modules/system/src/Tests/Form/EmailTest.php
index e53247f..ae925a9 100644
--- a/core/modules/system/src/Tests/Form/EmailTest.php
+++ b/core/modules/system/src/Tests/Form/EmailTest.php
@@ -17,7 +17,7 @@ class EmailTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   protected $profile = 'testing';
 
@@ -25,20 +25,20 @@ class EmailTest extends WebTestBase {
    * Tests that #type 'email' fields are properly validated.
    */
   function testFormEmail() {
-    $edit = array();
+    $edit = [];
     $edit['email'] = 'invalid';
     $edit['email_required'] = ' ';
     $this->drupalPostForm('form-test/email', $edit, 'Submit');
-    $this->assertRaw(t('The email address %mail is not valid.', array('%mail' => 'invalid')));
-    $this->assertRaw(t('@name field is required.', array('@name' => 'Address')));
+    $this->assertRaw(t('The email address %mail is not valid.', ['%mail' => 'invalid']));
+    $this->assertRaw(t('@name field is required.', ['@name' => 'Address']));
 
-    $edit = array();
+    $edit = [];
     $edit['email_required'] = '  foo.bar@example.com ';
     $values = Json::decode($this->drupalPostForm('form-test/email', $edit, 'Submit'));
     $this->assertIdentical($values['email'], '');
     $this->assertEqual($values['email_required'], 'foo.bar@example.com');
 
-    $edit = array();
+    $edit = [];
     $edit['email'] = 'foo@example.com';
     $edit['email_required'] = 'example@drupal.org';
     $values = Json::decode($this->drupalPostForm('form-test/email', $edit, 'Submit'));
diff --git a/core/modules/system/src/Tests/Form/FormStoragePageCacheTest.php b/core/modules/system/src/Tests/Form/FormStoragePageCacheTest.php
index 0ef62e8..b6c6686 100644
--- a/core/modules/system/src/Tests/Form/FormStoragePageCacheTest.php
+++ b/core/modules/system/src/Tests/Form/FormStoragePageCacheTest.php
@@ -14,7 +14,7 @@ class FormStoragePageCacheTest extends WebTestBase {
   /**
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/system/src/Tests/Form/FormTest.php b/core/modules/system/src/Tests/Form/FormTest.php
index cf73836..fc6c648 100644
--- a/core/modules/system/src/Tests/Form/FormTest.php
+++ b/core/modules/system/src/Tests/Form/FormTest.php
@@ -25,19 +25,19 @@ class FormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter', 'form_test', 'file', 'datetime');
+  public static $modules = ['filter', 'form_test', 'file', 'datetime'];
 
   protected function setUp() {
     parent::setUp();
 
-    $filtered_html_format = FilterFormat::create(array(
+    $filtered_html_format = FilterFormat::create([
       'format' => 'filtered_html',
       'name' => 'Filtered HTML',
-    ));
+    ]);
     $filtered_html_format->save();
 
     $filtered_html_permission = $filtered_html_format->getPermissionName();
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array($filtered_html_permission));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [$filtered_html_permission]);
   }
 
   /**
@@ -51,47 +51,47 @@ protected function setUp() {
   function testRequiredFields() {
     // Originates from https://www.drupal.org/node/117748.
     // Sets of empty strings and arrays.
-    $empty_strings = array('""' => "", '"\n"' => "\n", '" "' => " ", '"\t"' => "\t", '" \n\t "' => " \n\t ", '"\n\n\n\n\n"' => "\n\n\n\n\n");
-    $empty_arrays = array('array()' => array());
-    $empty_checkbox = array(NULL);
+    $empty_strings = ['""' => "", '"\n"' => "\n", '" "' => " ", '"\t"' => "\t", '" \n\t "' => " \n\t ", '"\n\n\n\n\n"' => "\n\n\n\n\n"];
+    $empty_arrays = ['array()' => []];
+    $empty_checkbox = [NULL];
 
-    $elements['textfield']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'textfield');
+    $elements['textfield']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'textfield'];
     $elements['textfield']['empty_values'] = $empty_strings;
 
-    $elements['telephone']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'tel');
+    $elements['telephone']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'tel'];
     $elements['telephone']['empty_values'] = $empty_strings;
 
-    $elements['url']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'url');
+    $elements['url']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'url'];
     $elements['url']['empty_values'] = $empty_strings;
 
-    $elements['search']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'search');
+    $elements['search']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'search'];
     $elements['search']['empty_values'] = $empty_strings;
 
-    $elements['password']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'password');
+    $elements['password']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'password'];
     $elements['password']['empty_values'] = $empty_strings;
 
-    $elements['password_confirm']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'password_confirm');
+    $elements['password_confirm']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'password_confirm'];
     // Provide empty values for both password fields.
     foreach ($empty_strings as $key => $value) {
-      $elements['password_confirm']['empty_values'][$key] = array('pass1' => $value, 'pass2' => $value);
+      $elements['password_confirm']['empty_values'][$key] = ['pass1' => $value, 'pass2' => $value];
     }
 
-    $elements['textarea']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'textarea');
+    $elements['textarea']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'textarea'];
     $elements['textarea']['empty_values'] = $empty_strings;
 
-    $elements['radios']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'radios', '#options' => array('' => t('None'), $this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()));
+    $elements['radios']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'radios', '#options' => ['' => t('None'), $this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()]];
     $elements['radios']['empty_values'] = $empty_arrays;
 
-    $elements['checkbox']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'checkbox', '#required' => TRUE);
+    $elements['checkbox']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'checkbox', '#required' => TRUE];
     $elements['checkbox']['empty_values'] = $empty_checkbox;
 
-    $elements['checkboxes']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'checkboxes', '#options' => array($this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()));
+    $elements['checkboxes']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'checkboxes', '#options' => [$this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()]];
     $elements['checkboxes']['empty_values'] = $empty_arrays;
 
-    $elements['select']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'select', '#options' => array('' => t('None'), $this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()));
+    $elements['select']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'select', '#options' => ['' => t('None'), $this->randomMachineName(), $this->randomMachineName(), $this->randomMachineName()]];
     $elements['select']['empty_values'] = $empty_strings;
 
-    $elements['file']['element'] = array('#title' => $this->randomMachineName(), '#type' => 'file');
+    $elements['file']['element'] = ['#title' => $this->randomMachineName(), '#type' => 'file'];
     $elements['file']['empty_values'] = $empty_strings;
 
     // Regular expression to find the expected marker on required elements.
@@ -99,11 +99,11 @@ function testRequiredFields() {
     // Go through all the elements and all the empty values for them.
     foreach ($elements as $type => $data) {
       foreach ($data['empty_values'] as $key => $empty) {
-        foreach (array(TRUE, FALSE) as $required) {
+        foreach ([TRUE, FALSE] as $required) {
           $form_id = $this->randomMachineName();
-          $form = array();
+          $form = [];
           $form_state = new FormState();
-          $form['op'] = array('#type' => 'submit', '#value' => t('Submit'));
+          $form['op'] = ['#type' => 'submit', '#value' => t('Submit')];
           $element = $data['element']['#title'];
           $form[$element] = $data['element'];
           $form[$element]['#required'] = $required;
@@ -167,13 +167,13 @@ function testRequiredCheckboxesRadio() {
     $form = \Drupal::formBuilder()->getForm('\Drupal\form_test\Form\FormTestValidateRequiredForm');
 
     // Attempt to submit the form with no required fields set.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('form-test/validate-required', $edit, 'Submit');
 
     // The only error messages that should appear are the relevant 'required'
     // messages for each field.
-    $expected = array();
-    foreach (array('textfield', 'checkboxes', 'select', 'radios') as $key) {
+    $expected = [];
+    foreach (['textfield', 'checkboxes', 'select', 'radios'] as $key) {
       if (isset($form[$key]['#required_error'])) {
         $expected[] = $form[$key]['#required_error'];
       }
@@ -181,7 +181,7 @@ function testRequiredCheckboxesRadio() {
         $expected[] = $form[$key]['#form_test_required_error'];
       }
       else {
-        $expected[] = t('@name field is required.', array('@name' => $form[$key]['#title']));
+        $expected[] = t('@name field is required.', ['@name' => $form[$key]['#title']]);
       }
     }
 
@@ -191,7 +191,7 @@ function testRequiredCheckboxesRadio() {
       $expected_key = array_search($error[0], $expected);
       // If the error message is not one of the expected messages, fail.
       if ($expected_key === FALSE) {
-        $this->fail(format_string("Unexpected error message: @error", array('@error' => $error[0])));
+        $this->fail(format_string("Unexpected error message: @error", ['@error' => $error[0]]));
       }
       // Remove the expected message from the list once it is found.
       else {
@@ -201,7 +201,7 @@ function testRequiredCheckboxesRadio() {
 
     // Fail if any expected messages were not found.
     foreach ($expected as $not_found) {
-      $this->fail(format_string("Found error message: @error", array('@error' => $not_found)));
+      $this->fail(format_string("Found error message: @error", ['@error' => $not_found]));
     }
 
     // Verify that input elements are still empty.
@@ -218,12 +218,12 @@ function testRequiredCheckboxesRadio() {
 
     // Submit again with required fields set and verify that there are no
     // error messages.
-    $edit = array(
+    $edit = [
       'textfield' => $this->randomString(),
       'checkboxes[foo]' => TRUE,
       'select' => 'foo',
       'radios' => 'bar',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Submit');
     $this->assertNoFieldByXpath('//div[contains(@class, "error")]', FALSE, 'No error message is displayed when all required fields are filled.');
     $this->assertRaw("The form_test_validate_required_form form was submitted successfully.", 'Validation form submitted successfully.');
@@ -240,13 +240,13 @@ public function testInputWithInvalidToken() {
     $this->drupalLogin($account);
     // Submit again with required fields set but an invalid form token and
     // verify that all the values are retained.
-    $edit = array(
+    $edit = [
       'textfield' => $this->randomString(),
       'checkboxes[bar]' => TRUE,
       'select' => 'bar',
       'radios' => 'foo',
       'form_token' => 'invalid token',
-    );
+    ];
     $this->drupalPostForm(Url::fromRoute('form_test.validate_required'), $edit, 'Submit');
     $this->assertFieldByXpath('//div[contains(@class, "error")]', NULL, 'Error message is displayed with invalid token even when required fields are filled.');
     $this->assertText('The form has become outdated. Copy any unsaved work in the form below');
@@ -258,11 +258,11 @@ public function testInputWithInvalidToken() {
     $this->assertFieldChecked('edit-radios-foo');
 
     // Check another form that has a textarea input.
-    $edit = array(
+    $edit = [
       'textfield' => $this->randomString(),
       'textarea' => $this->randomString() . "\n",
       'form_token' => 'invalid token',
-    );
+    ];
     $this->drupalPostForm(Url::fromRoute('form_test.required'), $edit, 'Submit');
     $this->assertFieldByXpath('//div[contains(@class, "error")]', NULL, 'Error message is displayed with invalid token even when required fields are filled.');
     $this->assertText('The form has become outdated. Copy any unsaved work in the form below');
@@ -270,20 +270,20 @@ public function testInputWithInvalidToken() {
     $this->assertFieldByName('textarea', $edit['textarea']);
 
     // Check another form that has a number input.
-    $edit = array(
+    $edit = [
       'integer_step' => mt_rand(1, 100),
       'form_token' => 'invalid token',
-    );
+    ];
     $this->drupalPostForm(Url::fromRoute('form_test.number'), $edit, 'Submit');
     $this->assertFieldByXpath('//div[contains(@class, "error")]', NULL, 'Error message is displayed with invalid token even when required fields are filled.');
     $this->assertText('The form has become outdated. Copy any unsaved work in the form below');
     $this->assertFieldByName('integer_step', $edit['integer_step']);
 
     // Check a form with a Url field
-    $edit = array(
+    $edit = [
       'url' => $this->randomString(),
       'form_token' => 'invalid token',
-    );
+    ];
     $this->drupalPostForm(Url::fromRoute('form_test.url'), $edit, 'Submit');
     $this->assertFieldByXpath('//div[contains(@class, "error")]', NULL, 'Error message is displayed with invalid token even when required fields are filled.');
     $this->assertText('The form has become outdated. Copy any unsaved work in the form below');
@@ -314,7 +314,7 @@ public function testGetFormsCsrfToken() {
    */
   function testRequiredTextfieldNoTitle() {
     // Attempt to submit the form with no required field set.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('form-test/validate-required-no-title', $edit, 'Submit');
     $this->assertNoRaw("The form_test_validate_required_form_no_title form was submitted successfully.", 'Validation form submitted successfully.');
 
@@ -326,9 +326,9 @@ function testRequiredTextfieldNoTitle() {
 
     // Submit again with required fields set and verify that there are no
     // error messages.
-    $edit = array(
+    $edit = [
       'textfield' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Submit');
     $this->assertNoFieldByXpath('//input[contains(@class, "error")]', FALSE, 'No error input form element class found.');
     $this->assertRaw("The form_test_validate_required_form_no_title form was submitted successfully.", 'Validation form submitted successfully.');
@@ -341,26 +341,26 @@ function testRequiredTextfieldNoTitle() {
    */
   function testCheckboxProcessing() {
     // First, try to submit without the required checkbox.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('form-test/checkbox', $edit, t('Submit'));
-    $this->assertRaw(t('@name field is required.', array('@name' => 'required_checkbox')), 'A required checkbox is actually mandatory');
+    $this->assertRaw(t('@name field is required.', ['@name' => 'required_checkbox']), 'A required checkbox is actually mandatory');
 
     // Now try to submit the form correctly.
-    $values = Json::decode($this->drupalPostForm(NULL, array('required_checkbox' => 1), t('Submit')));
-    $expected_values = array(
+    $values = Json::decode($this->drupalPostForm(NULL, ['required_checkbox' => 1], t('Submit')));
+    $expected_values = [
       'disabled_checkbox_on' => 'disabled_checkbox_on',
       'disabled_checkbox_off' => '',
       'checkbox_on' => 'checkbox_on',
       'checkbox_off' => '',
       'zero_checkbox_on' => '0',
       'zero_checkbox_off' => '',
-    );
+    ];
     foreach ($expected_values as $widget => $expected_value) {
-      $this->assertEqual($values[$widget], $expected_value, format_string('Checkbox %widget returns expected value (expected: %expected, got: %value)', array(
+      $this->assertEqual($values[$widget], $expected_value, format_string('Checkbox %widget returns expected value (expected: %expected, got: %value)', [
         '%widget' => var_export($widget, TRUE),
         '%expected' => var_export($expected_value, TRUE),
         '%value' => var_export($values[$widget], TRUE),
-      )));
+      ]));
     }
   }
 
@@ -376,8 +376,8 @@ function testSelect() {
     $this->assertNoRaw('<strong>four</strong>');
 
     // Posting without any values should throw validation errors.
-    $this->drupalPostForm(NULL, array(), 'Submit');
-    $no_errors = array(
+    $this->drupalPostForm(NULL, [], 'Submit');
+    $no_errors = [
         'select',
         'select_required',
         'select_optional',
@@ -388,35 +388,35 @@ function testSelect() {
         'no_default_empty_value_optional',
         'multiple',
         'multiple_no_default',
-    );
+    ];
     foreach ($no_errors as $key) {
-      $this->assertNoText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+      $this->assertNoText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
     }
 
-    $expected_errors = array(
+    $expected_errors = [
         'no_default',
         'no_default_empty_option',
         'no_default_empty_value',
         'no_default_empty_value_one',
         'multiple_no_default_required',
-    );
+    ];
     foreach ($expected_errors as $key) {
-      $this->assertText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+      $this->assertText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
     }
 
     // Post values for required fields.
-    $edit = array(
+    $edit = [
       'no_default' => 'three',
       'no_default_empty_option' => 'three',
       'no_default_empty_value' => 'three',
       'no_default_empty_value_one' => 'three',
       'multiple_no_default_required[]' => 'three',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Submit');
     $values = Json::decode($this->getRawContent());
 
     // Verify expected values.
-    $expected = array(
+    $expected = [
       'select' => 'one',
       'empty_value' => 'one',
       'empty_value_one' => 'one',
@@ -428,16 +428,16 @@ function testSelect() {
       'no_default_empty_value' => 'three',
       'no_default_empty_value_one' => 'three',
       'no_default_empty_value_optional' => 0,
-      'multiple' => array('two' => 'two'),
-      'multiple_no_default' => array(),
-      'multiple_no_default_required' => array('three' => 'three'),
-    );
+      'multiple' => ['two' => 'two'],
+      'multiple_no_default' => [],
+      'multiple_no_default_required' => ['three' => 'three'],
+    ];
     foreach ($expected as $key => $value) {
-      $this->assertIdentical($values[$key], $value, format_string('@name: @actual is equal to @expected.', array(
+      $this->assertIdentical($values[$key], $value, format_string('@name: @actual is equal to @expected.', [
         '@name' => $key,
         '@actual' => var_export($values[$key], TRUE),
         '@expected' => var_export($value, TRUE),
-      )));
+      ]));
     }
   }
 
@@ -457,15 +457,15 @@ function testNumber() {
     $form = \Drupal::formBuilder()->getForm('\Drupal\form_test\Form\FormTestNumberForm');
 
     // Array with all the error messages to be checked.
-    $error_messages = array(
+    $error_messages = [
       'no_number' => '%name must be a number.',
       'too_low' => '%name must be higher than or equal to %min.',
       'too_high' => '%name must be lower than or equal to %max.',
       'step_mismatch' => '%name is not a valid number.',
-    );
+    ];
 
     // The expected errors.
-    $expected = array(
+    $expected = [
       'integer_no_number' => 'no_number',
       'integer_no_step' => 0,
       'integer_no_step_step_error' => 'step_mismatch',
@@ -485,20 +485,20 @@ function testNumber() {
       'float_step_hard_no_error' => 0,
       'float_step_hard_error' => 'step_mismatch',
       'float_step_any_no_error' => 0,
-    );
+    ];
 
     // First test the number element type, then range.
-    foreach (array('form-test/number', 'form-test/number/range') as $path) {
+    foreach (['form-test/number', 'form-test/number/range'] as $path) {
       // Post form and show errors.
-      $this->drupalPostForm($path, array(), 'Submit');
+      $this->drupalPostForm($path, [], 'Submit');
 
       foreach ($expected as $element => $error) {
         // Create placeholder array.
-        $placeholders = array(
+        $placeholders = [
           '%name' => $form[$element]['#title'],
           '%min' => isset($form[$element]['#min']) ? $form[$element]['#min'] : '0',
           '%max' => isset($form[$element]['#max']) ? $form[$element]['#max'] : '0',
-        );
+        ];
 
         foreach ($error_messages as $id => $message) {
           // Check if the error exists on the page, if the current message ID is
@@ -518,13 +518,13 @@ function testNumber() {
    * Tests default value handling of #type 'range' elements.
    */
   function testRange() {
-    $values = json_decode($this->drupalPostForm('form-test/range', array(), 'Submit'));
+    $values = json_decode($this->drupalPostForm('form-test/range', [], 'Submit'));
     $this->assertEqual($values->with_default_value, 18);
     $this->assertEqual($values->float, 10.5);
     $this->assertEqual($values->integer, 6);
     $this->assertEqual($values->offset, 6.9);
 
-    $this->drupalPostForm('form-test/range/invalid', array(), 'Submit');
+    $this->drupalPostForm('form-test/range/invalid', [], 'Submit');
     $this->assertFieldByXPath('//input[@type="range" and contains(@class, "error")]', NULL, 'Range element has the error class.');
   }
 
@@ -533,7 +533,7 @@ function testRange() {
    */
   function testColorValidation() {
     // Keys are inputs, values are expected results.
-    $values = array(
+    $values = [
       '' => '#000000',
       '#000' => '#000000',
       'AAA' => '#aaaaaa',
@@ -541,25 +541,25 @@ function testColorValidation() {
       '#99ccBc' => '#99ccbc',
       '#aabbcc' => '#aabbcc',
       '123456' => '#123456',
-    );
+    ];
 
     // Tests that valid values are properly normalized.
     foreach ($values as $input => $expected) {
-      $edit = array(
+      $edit = [
         'color' => $input,
-      );
+      ];
       $result = json_decode($this->drupalPostForm('form-test/color', $edit, 'Submit'));
       $this->assertEqual($result->color, $expected);
     }
 
     // Tests invalid values are rejected.
-    $values = array('#0008', '#1234', '#fffffg', '#abcdef22', '17', '#uaa');
+    $values = ['#0008', '#1234', '#fffffg', '#abcdef22', '17', '#uaa'];
     foreach ($values as $input) {
-      $edit = array(
+      $edit = [
         'color' => $input,
-      );
+      ];
       $this->drupalPostForm('form-test/color', $edit, 'Submit');
-      $this->assertRaw(t('%name must be a valid color.', array('%name' => 'Color')));
+      $this->assertRaw(t('%name must be a valid color.', ['%name' => 'Color']));
     }
   }
 
@@ -571,11 +571,11 @@ function testColorValidation() {
   function testDisabledElements() {
     // Get the raw form in its original state.
     $form_state = new FormState();
-    $form = (new FormTestDisabledElementsForm())->buildForm(array(), $form_state);
+    $form = (new FormTestDisabledElementsForm())->buildForm([], $form_state);
 
     // Build a submission that tries to hijack the form by submitting input for
     // elements that are disabled.
-    $edit = array();
+    $edit = [];
     foreach (Element::children($form) as $key) {
       if (isset($form[$key]['#test_hijack_value'])) {
         if (is_array($form[$key]['#test_hijack_value'])) {
@@ -591,14 +591,14 @@ function testDisabledElements() {
 
     // Submit the form with no input, as the browser does for disabled elements,
     // and fetch the $form_state->getValues() that is passed to the submit handler.
-    $this->drupalPostForm('form-test/disabled-elements', array(), t('Submit'));
+    $this->drupalPostForm('form-test/disabled-elements', [], t('Submit'));
     $returned_values['normal'] = Json::decode($this->content);
 
     // Do the same with input, as could happen if JavaScript un-disables an
     // element. drupalPostForm() emulates a browser by not submitting input for
     // disabled elements, so we need to un-disable those elements first.
     $this->drupalGet('form-test/disabled-elements');
-    $disabled_elements = array();
+    $disabled_elements = [];
     foreach ($this->xpath('//*[@disabled]') as $element) {
       $disabled_elements[] = (string) $element['name'];
       unset($element['disabled']);
@@ -608,10 +608,10 @@ function testDisabledElements() {
     // the disabled container.
     $actual_count = count($disabled_elements);
     $expected_count = 42;
-    $this->assertEqual($actual_count, $expected_count, SafeMarkup::format('Found @actual elements with disabled property (expected @expected).', array(
+    $this->assertEqual($actual_count, $expected_count, SafeMarkup::format('Found @actual elements with disabled property (expected @expected).', [
       '@actual' => count($disabled_elements),
       '@expected' => $expected_count,
-    )));
+    ]));
 
     $this->drupalPostForm(NULL, $edit, t('Submit'));
     $returned_values['hijacked'] = Json::decode($this->content);
@@ -640,7 +640,7 @@ function assertFormValuesDefault($values, $form) {
           // Checkboxes values are not filtered out.
           $values[$key] = array_filter($values[$key]);
         }
-        $this->assertIdentical($expected_value, $values[$key], format_string('Default value for %type: expected %expected, returned %returned.', array('%type' => $key, '%expected' => var_export($expected_value, TRUE), '%returned' => var_export($values[$key], TRUE))));
+        $this->assertIdentical($expected_value, $values[$key], format_string('Default value for %type: expected %expected, returned %returned.', ['%type' => $key, '%expected' => var_export($expected_value, TRUE), '%returned' => var_export($values[$key], TRUE)]));
       }
 
       // Recurse children.
@@ -656,24 +656,24 @@ function assertFormValuesDefault($values, $form) {
   function testDisabledMarkup() {
     $this->drupalGet('form-test/disabled-elements');
     $form = \Drupal::formBuilder()->getForm('\Drupal\form_test\Form\FormTestDisabledElementsForm');
-    $type_map = array(
+    $type_map = [
       'textarea' => 'textarea',
       'select' => 'select',
       'weight' => 'select',
       'datetime' => 'datetime',
-    );
+    ];
 
     foreach ($form as $name => $item) {
       // Skip special #types.
-      if (!isset($item['#type']) || in_array($item['#type'], array('hidden', 'text_format'))) {
+      if (!isset($item['#type']) || in_array($item['#type'], ['hidden', 'text_format'])) {
         continue;
       }
       // Setup XPath and CSS class depending on #type.
-      if (in_array($item['#type'], array('button', 'submit'))) {
+      if (in_array($item['#type'], ['button', 'submit'])) {
         $path = "//!type[contains(@class, :div-class) and @value=:value]";
         $class = 'is-disabled';
       }
-      elseif (in_array($item['#type'], array('image_button'))) {
+      elseif (in_array($item['#type'], ['image_button'])) {
         $path = "//!type[contains(@class, :div-class) and @value=:value]";
         $class = 'is-disabled';
       }
@@ -687,27 +687,27 @@ function testDisabledMarkup() {
       if (isset($type_map[$item['#type']])) {
         $type = $type_map[$item['#type']];
       }
-      $path = strtr($path, array('!type' => $type));
+      $path = strtr($path, ['!type' => $type]);
       // Verify that the element exists.
-      $element = $this->xpath($path, array(
+      $element = $this->xpath($path, [
         ':name' => Html::escape($name),
         ':div-class' => $class,
         ':value' => isset($item['#value']) ? $item['#value'] : '',
-      ));
-      $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', array('%type' => $item['#type'])));
+      ]);
+      $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', ['%type' => $item['#type']]));
     }
 
     // Verify special element #type text-format.
-    $element = $this->xpath('//div[contains(@class, :div-class)]/descendant::textarea[@name=:name]', array(
+    $element = $this->xpath('//div[contains(@class, :div-class)]/descendant::textarea[@name=:name]', [
       ':name' => 'text_format[value]',
       ':div-class' => 'form-disabled',
-    ));
-    $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', array('%type' => 'text_format[value]')));
-    $element = $this->xpath('//div[contains(@class, :div-class)]/descendant::select[@name=:name]', array(
+    ]);
+    $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', ['%type' => 'text_format[value]']));
+    $element = $this->xpath('//div[contains(@class, :div-class)]/descendant::select[@name=:name]', [
       ':name' => 'text_format[format]',
       ':div-class' => 'form-disabled',
-    ));
-    $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', array('%type' => 'text_format[format]')));
+    ]);
+    $this->assertTrue(isset($element[0]), format_string('Disabled form element class found for #type %type.', ['%type' => 'text_format[format]']));
   }
 
   /**
@@ -719,7 +719,7 @@ function testInputForgery() {
     $this->drupalGet('form-test/input-forgery');
     $checkbox = $this->xpath('//input[@name="checkboxes[two]"]');
     $checkbox[0]['value'] = 'FORGERY';
-    $this->drupalPostForm(NULL, array('checkboxes[one]' => TRUE, 'checkboxes[two]' => TRUE), t('Submit'));
+    $this->drupalPostForm(NULL, ['checkboxes[one]' => TRUE, 'checkboxes[two]' => TRUE], t('Submit'));
     $this->assertText('An illegal choice has been detected.', 'Input forgery was detected.');
   }
 
@@ -730,19 +730,19 @@ function testRequiredAttribute() {
     $this->drupalGet('form-test/required-attribute');
     $expected = 'required';
     // Test to make sure the elements have the proper required attribute.
-    foreach (array('textfield', 'password') as $type) {
-      $element = $this->xpath('//input[@id=:id and @required=:expected]', array(
+    foreach (['textfield', 'password'] as $type) {
+      $element = $this->xpath('//input[@id=:id and @required=:expected]', [
         ':id' => 'edit-' . $type,
         ':expected' => $expected,
-      ));
-      $this->assertTrue(!empty($element), format_string('The @type has the proper required attribute.', array('@type' => $type)));
+      ]);
+      $this->assertTrue(!empty($element), format_string('The @type has the proper required attribute.', ['@type' => $type]));
     }
 
     // Test to make sure textarea has the proper required attribute.
-    $element = $this->xpath('//textarea[@id=:id and @required=:expected]', array(
+    $element = $this->xpath('//textarea[@id=:id and @required=:expected]', [
       ':id' => 'edit-textarea',
       ':expected' => $expected,
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'The textarea has the proper required attribute.');
   }
 
diff --git a/core/modules/system/src/Tests/Form/LanguageSelectElementTest.php b/core/modules/system/src/Tests/Form/LanguageSelectElementTest.php
index 7b3d73c..d52eab4 100644
--- a/core/modules/system/src/Tests/Form/LanguageSelectElementTest.php
+++ b/core/modules/system/src/Tests/Form/LanguageSelectElementTest.php
@@ -20,47 +20,47 @@ class LanguageSelectElementTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test', 'language');
+  public static $modules = ['form_test', 'language'];
 
   /**
    * Tests that the options printed by the language select element are correct.
    */
   function testLanguageSelectElementOptions() {
     // Add some languages.
-    ConfigurableLanguage::create(array(
+    ConfigurableLanguage::create([
       'id' => 'aaa',
       'label' => $this->randomMachineName(),
-    ))->save();
+    ])->save();
 
-    ConfigurableLanguage::create(array(
+    ConfigurableLanguage::create([
       'id' => 'bbb',
       'label' => $this->randomMachineName(),
-    ))->save();
+    ])->save();
 
     \Drupal::languageManager()->reset();
 
     $this->drupalGet('form-test/language_select');
     // Check that the language fields were rendered on the page.
-    $ids = array(
+    $ids = [
         'edit-languages-all' => LanguageInterface::STATE_ALL,
         'edit-languages-configurable' => LanguageInterface::STATE_CONFIGURABLE,
         'edit-languages-locked' => LanguageInterface::STATE_LOCKED,
         'edit-languages-config-and-locked' => LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_LOCKED
-    );
+    ];
     foreach ($ids as $id => $flags) {
-      $this->assertField($id, format_string('The @id field was found on the page.', array('@id' => $id)));
-      $options = array();
+      $this->assertField($id, format_string('The @id field was found on the page.', ['@id' => $id]));
+      $options = [];
       /* @var $language_manager \Drupal\Core\Language\LanguageManagerInterface */
       $language_manager = $this->container->get('language_manager');
       foreach ($language_manager->getLanguages($flags) as $langcode => $language) {
-        $options[$langcode] = $language->isLocked() ? t('- @name -', array('@name' => $language->getName())) : $language->getName();
+        $options[$langcode] = $language->isLocked() ? t('- @name -', ['@name' => $language->getName()]) : $language->getName();
       }
       $this->_testLanguageSelectElementOptions($id, $options);
     }
 
     // Test that the #options were not altered by #languages.
-    $this->assertField('edit-language-custom-options', format_string('The @id field was found on the page.', array('@id' => 'edit-language-custom-options')));
-    $this->_testLanguageSelectElementOptions('edit-language-custom-options', array('opt1' => 'First option', 'opt2' => 'Second option', 'opt3' => 'Third option'));
+    $this->assertField('edit-language-custom-options', format_string('The @id field was found on the page.', ['@id' => 'edit-language-custom-options']));
+    $this->_testLanguageSelectElementOptions('edit-language-custom-options', ['opt1' => 'First option', 'opt2' => 'Second option', 'opt3' => 'Third option']);
   }
 
   /**
@@ -71,17 +71,17 @@ function testLanguageSelectElementOptions() {
   function testHiddenLanguageSelectElement() {
     // Disable the language module, so that the language select field will not
     // be rendered.
-    $this->container->get('module_installer')->uninstall(array('language'));
+    $this->container->get('module_installer')->uninstall(['language']);
     $this->drupalGet('form-test/language_select');
     // Check that the language fields were rendered on the page.
-    $ids = array('edit-languages-all', 'edit-languages-configurable', 'edit-languages-locked', 'edit-languages-config-and-locked');
+    $ids = ['edit-languages-all', 'edit-languages-configurable', 'edit-languages-locked', 'edit-languages-config-and-locked'];
     foreach ($ids as $id) {
-      $this->assertNoField($id, format_string('The @id field was not found on the page.', array('@id' => $id)));
+      $this->assertNoField($id, format_string('The @id field was not found on the page.', ['@id' => $id]));
     }
 
     // Check that the submitted values were the default values of the language
     // field elements.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
     $values = Json::decode($this->getRawContent());
     $this->assertEqual($values['languages_all'], 'xx');
@@ -111,7 +111,7 @@ protected function _testLanguageSelectElementOptions($id, $options) {
       $this->assertEqual((string) $option, $option_title);
       next($options);
     }
-    $this->assertEqual($count, count($options), format_string('The number of languages and the number of options shown by the language element are the same: @languages languages, @number options', array('@languages' => count($options), '@number' => $count)));
+    $this->assertEqual($count, count($options), format_string('The number of languages and the number of options shown by the language element are the same: @languages languages, @number options', ['@languages' => count($options), '@number' => $count]));
   }
 
 }
diff --git a/core/modules/system/src/Tests/Form/ProgrammaticTest.php b/core/modules/system/src/Tests/Form/ProgrammaticTest.php
index 5fbefb5..5f6eac0 100644
--- a/core/modules/system/src/Tests/Form/ProgrammaticTest.php
+++ b/core/modules/system/src/Tests/Form/ProgrammaticTest.php
@@ -17,7 +17,7 @@ class ProgrammaticTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Test the programmatic form submission workflow.
@@ -26,30 +26,30 @@ function testSubmissionWorkflow() {
     // Backup the current batch status and reset it to avoid conflicts while
     // processing the dummy form submit handler.
     $current_batch = $batch =& batch_get();
-    $batch = array();
+    $batch = [];
 
     // Test that a programmatic form submission is rejected when a required
     // textfield is omitted and correctly processed when it is provided.
-    $this->submitForm(array(), FALSE);
-    $this->submitForm(array('textfield' => 'test 1'), TRUE);
-    $this->submitForm(array(), FALSE);
-    $this->submitForm(array('textfield' => 'test 2'), TRUE);
+    $this->submitForm([], FALSE);
+    $this->submitForm(['textfield' => 'test 1'], TRUE);
+    $this->submitForm([], FALSE);
+    $this->submitForm(['textfield' => 'test 2'], TRUE);
 
     // Test that a programmatic form submission can turn on and off checkboxes
     // which are, by default, checked.
-    $this->submitForm(array('textfield' => 'dummy value', 'checkboxes' => array(1 => 1, 2 => 2)), TRUE);
-    $this->submitForm(array('textfield' => 'dummy value', 'checkboxes' => array(1 => 1, 2 => NULL)), TRUE);
-    $this->submitForm(array('textfield' => 'dummy value', 'checkboxes' => array(1 => NULL, 2 => 2)), TRUE);
-    $this->submitForm(array('textfield' => 'dummy value', 'checkboxes' => array(1 => NULL, 2 => NULL)), TRUE);
+    $this->submitForm(['textfield' => 'dummy value', 'checkboxes' => [1 => 1, 2 => 2]], TRUE);
+    $this->submitForm(['textfield' => 'dummy value', 'checkboxes' => [1 => 1, 2 => NULL]], TRUE);
+    $this->submitForm(['textfield' => 'dummy value', 'checkboxes' => [1 => NULL, 2 => 2]], TRUE);
+    $this->submitForm(['textfield' => 'dummy value', 'checkboxes' => [1 => NULL, 2 => NULL]], TRUE);
 
     // Test that a programmatic form submission can correctly click a button
     // that limits validation errors based on user input. Since we do not
     // submit any values for "textfield" here and the textfield is required, we
     // only expect form validation to pass when validation is limited to a
     // different field.
-    $this->submitForm(array('op' => 'Submit with limited validation', 'field_to_validate' => 'all'), FALSE);
-    $this->submitForm(array('op' => 'Submit with limited validation', 'field_to_validate' => 'textfield'), FALSE);
-    $this->submitForm(array('op' => 'Submit with limited validation', 'field_to_validate' => 'field_to_validate'), TRUE);
+    $this->submitForm(['op' => 'Submit with limited validation', 'field_to_validate' => 'all'], FALSE);
+    $this->submitForm(['op' => 'Submit with limited validation', 'field_to_validate' => 'textfield'], FALSE);
+    $this->submitForm(['op' => 'Submit with limited validation', 'field_to_validate' => 'field_to_validate'], TRUE);
 
     // Restore the current batch status.
     $batch = $current_batch;
@@ -73,10 +73,10 @@ private function submitForm($values, $valid_input) {
     // Check that the form returns an error when expected, and vice versa.
     $errors = $form_state->getErrors();
     $valid_form = empty($errors);
-    $args = array(
+    $args = [
       '%values' => print_r($values, TRUE),
       '%errors' => $valid_form ? t('None') : implode(' ', $errors),
-    );
+    ];
     $this->assertTrue($valid_input == $valid_form, format_string('Input values: %values<br />Validation handler errors: %errors', $args));
 
     // We check submitted values only if we have a valid input.
@@ -84,7 +84,7 @@ private function submitForm($values, $valid_input) {
       // Fetching the values that were set in the submission handler.
       $stored_values = $form_state->get('programmatic_form_submit');
       foreach ($values as $key => $value) {
-        $this->assertEqual($stored_values[$key], $value, format_string('Submission handler correctly executed: %stored_key is %stored_value', array('%stored_key' => $key, '%stored_value' => print_r($value, TRUE))));
+        $this->assertEqual($stored_values[$key], $value, format_string('Submission handler correctly executed: %stored_key is %stored_value', ['%stored_key' => $key, '%stored_value' => print_r($value, TRUE)]));
       }
     }
   }
diff --git a/core/modules/system/src/Tests/Form/RebuildTest.php b/core/modules/system/src/Tests/Form/RebuildTest.php
index bee15fe..e759ff6 100644
--- a/core/modules/system/src/Tests/Form/RebuildTest.php
+++ b/core/modules/system/src/Tests/Form/RebuildTest.php
@@ -21,7 +21,7 @@ class RebuildTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'form_test');
+  public static $modules = ['node', 'form_test'];
 
   /**
    * A user for testing.
@@ -33,9 +33,9 @@ class RebuildTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $this->webUser = $this->drupalCreateUser(array('access content'));
+    $this->webUser = $this->drupalCreateUser(['access content']);
     $this->drupalLogin($this->webUser);
   }
 
@@ -43,11 +43,11 @@ protected function setUp() {
    * Tests preservation of values.
    */
   function testRebuildPreservesValues() {
-    $edit = array(
+    $edit = [
       'checkbox_1_default_off' => TRUE,
       'checkbox_1_default_on' => FALSE,
       'text_1' => 'foo',
-    );
+    ];
     $this->drupalPostForm('form-test/form-rebuild-preserve-values', $edit, 'Add more');
 
     // Verify that initial elements retained their submitted values.
@@ -70,30 +70,30 @@ function testRebuildPreservesValues() {
   function testPreserveFormActionAfterAJAX() {
     // Create a multi-valued field for 'page' nodes to use for Ajax testing.
     $field_name = 'field_ajax_test';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'type' => 'text',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'node',
       'bundle' => 'page',
     ])->save();
     entity_get_form_display('node', 'page', 'default')
-      ->setComponent($field_name, array('type' => 'text_textfield'))
+      ->setComponent($field_name, ['type' => 'text_textfield'])
       ->save();
 
     // Log in a user who can create 'page' nodes.
-    $this->webUser = $this->drupalCreateUser(array('create page content'));
+    $this->webUser = $this->drupalCreateUser(['create page content']);
     $this->drupalLogin($this->webUser);
 
     // Get the form for adding a 'page' node. Submit an "add another item" Ajax
     // submission and verify it worked by ensuring the updated page has two text
     // field items in the field for which we just added an item.
     $this->drupalGet('node/add/page');
-    $this->drupalPostAjaxForm(NULL, array(), array('field_ajax_test_add_more' => t('Add another item')), NULL, array(), array(), 'node-page-form');
+    $this->drupalPostAjaxForm(NULL, [], ['field_ajax_test_add_more' => t('Add another item')], NULL, [], [], 'node-page-form');
     $this->assert(count($this->xpath('//div[contains(@class, "field--name-field-ajax-test")]//input[@type="text"]')) == 2, 'AJAX submission succeeded.');
 
     // Submit the form with the non-Ajax "Save" button, leaving the title field
@@ -101,7 +101,7 @@ function testPreserveFormActionAfterAJAX() {
     // occurred, because this test is for testing what happens when a form is
     // re-rendered without being re-built, which is what happens when there's
     // a validation error.
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText('Title field is required.', 'Non-AJAX submission correctly triggered a validation error.');
 
     // Ensure that the form contains two items in the multi-valued field, so we
diff --git a/core/modules/system/src/Tests/Form/ResponseTest.php b/core/modules/system/src/Tests/Form/ResponseTest.php
index 658b672..e3064a5 100644
--- a/core/modules/system/src/Tests/Form/ResponseTest.php
+++ b/core/modules/system/src/Tests/Form/ResponseTest.php
@@ -17,7 +17,7 @@ class ResponseTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Tests that enforced responses propagate through subscribers and middleware.
diff --git a/core/modules/system/src/Tests/Form/StateValuesCleanAdvancedTest.php b/core/modules/system/src/Tests/Form/StateValuesCleanAdvancedTest.php
index eb53244..39fed3b 100644
--- a/core/modules/system/src/Tests/Form/StateValuesCleanAdvancedTest.php
+++ b/core/modules/system/src/Tests/Form/StateValuesCleanAdvancedTest.php
@@ -18,7 +18,7 @@ class StateValuesCleanAdvancedTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'form_test');
+  public static $modules = ['file', 'form_test'];
 
   /**
    * An image file path for uploading.
@@ -38,7 +38,7 @@ function testFormStateValuesCleanAdvanced() {
     $this->assertTrue(is_file($this->image->uri), "The image file we're going to upload exists.");
 
     // "Browse" for the desired file.
-    $edit = array('files[image]' => drupal_realpath($this->image->uri));
+    $edit = ['files[image]' => drupal_realpath($this->image->uri)];
 
     // Post the form.
     $this->drupalPostForm('form_test/form-state-values-clean-advanced', $edit, t('Submit'));
diff --git a/core/modules/system/src/Tests/Form/StateValuesCleanTest.php b/core/modules/system/src/Tests/Form/StateValuesCleanTest.php
index 7761bd8..4e1da61 100644
--- a/core/modules/system/src/Tests/Form/StateValuesCleanTest.php
+++ b/core/modules/system/src/Tests/Form/StateValuesCleanTest.php
@@ -19,31 +19,31 @@ class StateValuesCleanTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Tests \Drupal\Core\Form\FormState::cleanValues().
    */
   function testFormStateValuesClean() {
-    $values = Json::decode($this->drupalPostForm('form_test/form-state-values-clean', array(), t('Submit')));
+    $values = Json::decode($this->drupalPostForm('form_test/form-state-values-clean', [], t('Submit')));
 
     // Setup the expected result.
-    $result = array(
+    $result = [
       'beer' => 1000,
-      'baz' => array('beer' => 2000),
-    );
+      'baz' => ['beer' => 2000],
+    ];
 
     // Verify that all internal Form API elements were removed.
-    $this->assertFalse(isset($values['form_id']), format_string('%element was removed.', array('%element' => 'form_id')));
-    $this->assertFalse(isset($values['form_token']), format_string('%element was removed.', array('%element' => 'form_token')));
-    $this->assertFalse(isset($values['form_build_id']), format_string('%element was removed.', array('%element' => 'form_build_id')));
-    $this->assertFalse(isset($values['op']), format_string('%element was removed.', array('%element' => 'op')));
+    $this->assertFalse(isset($values['form_id']), format_string('%element was removed.', ['%element' => 'form_id']));
+    $this->assertFalse(isset($values['form_token']), format_string('%element was removed.', ['%element' => 'form_token']));
+    $this->assertFalse(isset($values['form_build_id']), format_string('%element was removed.', ['%element' => 'form_build_id']));
+    $this->assertFalse(isset($values['op']), format_string('%element was removed.', ['%element' => 'op']));
 
     // Verify that all buttons were removed.
-    $this->assertFalse(isset($values['foo']), format_string('%element was removed.', array('%element' => 'foo')));
-    $this->assertFalse(isset($values['bar']), format_string('%element was removed.', array('%element' => 'bar')));
-    $this->assertFalse(isset($values['baz']['foo']), format_string('%element was removed.', array('%element' => 'foo')));
-    $this->assertFalse(isset($values['baz']['baz']), format_string('%element was removed.', array('%element' => 'baz')));
+    $this->assertFalse(isset($values['foo']), format_string('%element was removed.', ['%element' => 'foo']));
+    $this->assertFalse(isset($values['bar']), format_string('%element was removed.', ['%element' => 'bar']));
+    $this->assertFalse(isset($values['baz']['foo']), format_string('%element was removed.', ['%element' => 'foo']));
+    $this->assertFalse(isset($values['baz']['baz']), format_string('%element was removed.', ['%element' => 'baz']));
 
     // Verify values manually added for cleaning were removed.
     $this->assertFalse(isset($values['wine']), SafeMarkup::format('%element was removed.', ['%element' => 'wine']));
diff --git a/core/modules/system/src/Tests/Form/StorageTest.php b/core/modules/system/src/Tests/Form/StorageTest.php
index d29f36b..4d6f3a7 100644
--- a/core/modules/system/src/Tests/Form/StorageTest.php
+++ b/core/modules/system/src/Tests/Form/StorageTest.php
@@ -23,7 +23,7 @@ class StorageTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test', 'dblog');
+  public static $modules = ['form_test', 'dblog'];
 
   protected function setUp() {
     parent::setUp();
@@ -38,7 +38,7 @@ function testForm() {
     $this->drupalGet('form_test/form-storage');
     $this->assertText('Form constructions: 1');
 
-    $edit = array('title' => 'new', 'value' => 'value_is_set');
+    $edit = ['title' => 'new', 'value' => 'value_is_set'];
 
     // Use form rebuilding triggered by a submit button.
     $this->drupalPostForm(NULL, $edit, 'Continue submit');
@@ -47,7 +47,7 @@ function testForm() {
 
     // Reset the form to the values of the storage, using a form rebuild
     // triggered by button of type button.
-    $this->drupalPostForm(NULL, array('title' => 'changed'), 'Reset');
+    $this->drupalPostForm(NULL, ['title' => 'changed'], 'Reset');
     $this->assertFieldByName('title', 'new', 'Values have been reset.');
     // After rebuilding, the form has been cached.
     $this->assertText('Form constructions: 4');
@@ -61,10 +61,10 @@ function testForm() {
    * Tests using the form after calling $form_state->setCached().
    */
   function testFormCached() {
-    $this->drupalGet('form_test/form-storage', array('query' => array('cache' => 1)));
+    $this->drupalGet('form_test/form-storage', ['query' => ['cache' => 1]]);
     $this->assertText('Form constructions: 1');
 
-    $edit = array('title' => 'new', 'value' => 'value_is_set');
+    $edit = ['title' => 'new', 'value' => 'value_is_set'];
 
     // Use form rebuilding triggered by a submit button.
     $this->drupalPostForm(NULL, $edit, 'Continue submit');
@@ -75,7 +75,7 @@ function testFormCached() {
 
     // Reset the form to the values of the storage, using a form rebuild
     // triggered by button of type button.
-    $this->drupalPostForm(NULL, array('title' => 'changed'), 'Reset');
+    $this->drupalPostForm(NULL, ['title' => 'changed'], 'Reset');
     $this->assertFieldByName('title', 'new', 'Values have been reset.');
     $this->assertText('Form constructions: 4');
 
@@ -88,7 +88,7 @@ function testFormCached() {
    * Tests validation when form storage is used.
    */
   function testValidation() {
-    $this->drupalPostForm('form_test/form-storage', array('title' => '', 'value' => 'value_is_set'), 'Continue submit');
+    $this->drupalPostForm('form_test/form-storage', ['title' => '', 'value' => 'value_is_set'], 'Continue submit');
     $this->assertPattern('/value_is_set/', 'The input values have been kept.');
   }
 
@@ -104,26 +104,26 @@ function testValidation() {
    */
   function testCachedFormStorageValidation() {
     // Request the form with 'cache' query parameter to enable form caching.
-    $this->drupalGet('form_test/form-storage', array('query' => array('cache' => 1)));
+    $this->drupalGet('form_test/form-storage', ['query' => ['cache' => 1]]);
 
     // Skip step 1 of the multi-step form, since the first step copies over
     // 'title' into form storage, but we want to verify that changes in the form
     // storage are updated in the cache during form validation.
-    $edit = array('title' => 'foo');
+    $edit = ['title' => 'foo'];
     $this->drupalPostForm(NULL, $edit, 'Continue submit');
 
     // In step 2, trigger a validation error for the required 'title' field, and
     // post the special 'change_title' value for the 'value' field, which
     // conditionally invokes the #element_validate handler to update the form
     // storage.
-    $edit = array('title' => '', 'value' => 'change_title');
+    $edit = ['title' => '', 'value' => 'change_title'];
     $this->drupalPostForm(NULL, $edit, 'Save');
 
     // At this point, the form storage should contain updated values, but we do
     // not see them, because the form has not been rebuilt yet due to the
     // validation error. Post again and verify that the rebuilt form contains
     // the values of the updated form storage.
-    $this->drupalPostForm(NULL, array('title' => 'foo', 'value' => 'bar'), 'Save');
+    $this->drupalPostForm(NULL, ['title' => 'foo', 'value' => 'bar'], 'Save');
     $this->assertText("The thing has been changed.", 'The altered form storage value was updated in cache and taken over.');
   }
 
diff --git a/core/modules/system/src/Tests/Form/SystemConfigFormTest.php b/core/modules/system/src/Tests/Form/SystemConfigFormTest.php
index 69a7f7e..88687d9 100644
--- a/core/modules/system/src/Tests/Form/SystemConfigFormTest.php
+++ b/core/modules/system/src/Tests/Form/SystemConfigFormTest.php
@@ -16,16 +16,16 @@ class SystemConfigFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Tests the SystemConfigFormTestBase class.
    */
   function testSystemConfigForm() {
     $this->drupalGet('form-test/system-config-form');
-    $element = $this->xpath('//div[@id = :id]/input[contains(@class, :class)]', array(':id' => 'edit-actions', ':class' => 'button--primary'));
+    $element = $this->xpath('//div[@id = :id]/input[contains(@class, :class)]', [':id' => 'edit-actions', ':class' => 'button--primary']);
     $this->assertTrue($element, 'The primary action submit button was found.');
-    $this->drupalPostForm(NULL, array(), t('Save configuration'));
+    $this->drupalPostForm(NULL, [], t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
   }
 
diff --git a/core/modules/system/src/Tests/Form/TriggeringElementTest.php b/core/modules/system/src/Tests/Form/TriggeringElementTest.php
index 5d8a180..6bd8d2e 100644
--- a/core/modules/system/src/Tests/Form/TriggeringElementTest.php
+++ b/core/modules/system/src/Tests/Form/TriggeringElementTest.php
@@ -16,7 +16,7 @@ class TriggeringElementTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Test the determination of the triggering element when no button
@@ -25,27 +25,27 @@ class TriggeringElementTest extends WebTestBase {
    */
   function testNoButtonInfoInPost() {
     $path = 'form-test/clicked-button';
-    $edit = array();
+    $edit = [];
     $form_html_id = 'form-test-clicked-button';
 
     // Ensure submitting a form with no buttons results in no triggering element
     // and the form submit handler not running.
-    $this->drupalPostForm($path, $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path, $edit, NULL, [], [], $form_html_id);
     $this->assertText('There is no clicked button.', '$form_state->getTriggeringElement() set to NULL.');
     $this->assertNoText('Submit handler for form_test_clicked_button executed.', 'Form submit handler did not execute.');
 
     // Ensure submitting a form with one or more submit buttons results in the
     // triggering element being set to the first one the user has access to. An
     // argument with 'r' in it indicates a restricted (#access=FALSE) button.
-    $this->drupalPostForm($path . '/s', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/s', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button1.', '$form_state->getTriggeringElement() set to only button.');
     $this->assertText('Submit handler for form_test_clicked_button executed.', 'Form submit handler executed.');
 
-    $this->drupalPostForm($path . '/s/s', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/s/s', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button1.', '$form_state->getTriggeringElement() set to first button.');
     $this->assertText('Submit handler for form_test_clicked_button executed.', 'Form submit handler executed.');
 
-    $this->drupalPostForm($path . '/rs/s', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/rs/s', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button2.', '$form_state->getTriggeringElement() set to first available button.');
     $this->assertText('Submit handler for form_test_clicked_button executed.', 'Form submit handler executed.');
 
@@ -53,15 +53,15 @@ function testNoButtonInfoInPost() {
     // triggering element being set to the first button, regardless of type. For
     // the FAPI 'button' type, this should result in the submit handler not
     // executing. The types are 's'(ubmit), 'b'(utton), and 'i'(mage_button).
-    $this->drupalPostForm($path . '/s/b/i', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/s/b/i', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button1.', '$form_state->getTriggeringElement() set to first button.');
     $this->assertText('Submit handler for form_test_clicked_button executed.', 'Form submit handler executed.');
 
-    $this->drupalPostForm($path . '/b/s/i', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/b/s/i', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button1.', '$form_state->getTriggeringElement() set to first button.');
     $this->assertNoText('Submit handler for form_test_clicked_button executed.', 'Form submit handler did not execute.');
 
-    $this->drupalPostForm($path . '/i/s/b', $edit, NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm($path . '/i/s/b', $edit, NULL, [], [], $form_html_id);
     $this->assertText('The clicked button is button1.', '$form_state->getTriggeringElement() set to first button.');
     $this->assertText('Submit handler for form_test_clicked_button executed.', 'Form submit handler executed.');
   }
@@ -84,7 +84,7 @@ function testAttemptAccessControlBypass() {
     // data we want into \Drupal::request()->request.
     $elements = $this->xpath('//form[@id="' . $form_html_id . '"]//input[@name="text"]');
     $elements[0]['name'] = 'button1';
-    $this->drupalPostForm(NULL, array('button1' => 'button1'), NULL, array(), array(), $form_html_id);
+    $this->drupalPostForm(NULL, ['button1' => 'button1'], NULL, [], [], $form_html_id);
 
     // Ensure that the triggering element was not set to the restricted button.
     // Do this with both a negative and positive assertion, because negative
diff --git a/core/modules/system/src/Tests/Form/UrlTest.php b/core/modules/system/src/Tests/Form/UrlTest.php
index 4bf6f60..69452cb 100644
--- a/core/modules/system/src/Tests/Form/UrlTest.php
+++ b/core/modules/system/src/Tests/Form/UrlTest.php
@@ -17,7 +17,7 @@ class UrlTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   protected $profile = 'testing';
 
@@ -25,21 +25,21 @@ class UrlTest extends WebTestBase {
    * Tests that #type 'url' fields are properly validated and trimmed.
    */
   function testFormUrl() {
-    $edit = array();
+    $edit = [];
     $edit['url'] = 'http://';
     $edit['url_required'] = ' ';
     $this->drupalPostForm('form-test/url', $edit, 'Submit');
-    $this->assertRaw(t('The URL %url is not valid.', array('%url' => 'http://')));
-    $this->assertRaw(t('@name field is required.', array('@name' => 'Required URL')));
+    $this->assertRaw(t('The URL %url is not valid.', ['%url' => 'http://']));
+    $this->assertRaw(t('@name field is required.', ['@name' => 'Required URL']));
 
-    $edit = array();
+    $edit = [];
     $edit['url'] = "\n";
     $edit['url_required'] = 'http://example.com/   ';
     $values = Json::decode($this->drupalPostForm('form-test/url', $edit, 'Submit'));
     $this->assertIdentical($values['url'], '');
     $this->assertEqual($values['url_required'], 'http://example.com/');
 
-    $edit = array();
+    $edit = [];
     $edit['url'] = 'http://foo.bar.example.com/';
     $edit['url_required'] = 'https://www.drupal.org/node/1174630?page=0&foo=bar#new';
     $values = Json::decode($this->drupalPostForm('form-test/url', $edit, 'Submit'));
diff --git a/core/modules/system/src/Tests/Form/ValidationTest.php b/core/modules/system/src/Tests/Form/ValidationTest.php
index 35b340b..46781ed 100644
--- a/core/modules/system/src/Tests/Form/ValidationTest.php
+++ b/core/modules/system/src/Tests/Form/ValidationTest.php
@@ -17,7 +17,7 @@ class ValidationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Tests #element_validate and #validate.
@@ -26,43 +26,43 @@ function testValidate() {
     $this->drupalGet('form-test/validate');
     // Verify that #element_validate handlers can alter the form and submitted
     // form values.
-    $edit = array(
+    $edit = [
       'name' => 'element_validate',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertFieldByName('name', '#value changed by #element_validate', 'Form element #value was altered.');
     $this->assertText('Name value: value changed by setValueForElement() in #element_validate', 'Form element value in $form_state was altered.');
 
     // Verify that #validate handlers can alter the form and submitted
     // form values.
-    $edit = array(
+    $edit = [
       'name' => 'validate',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertFieldByName('name', '#value changed by #validate', 'Form element #value was altered.');
     $this->assertText('Name value: value changed by setValueForElement() in #validate', 'Form element value in $form_state was altered.');
 
     // Verify that #element_validate handlers can make form elements
     // inaccessible, but values persist.
-    $edit = array(
+    $edit = [
       'name' => 'element_validate_access',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertNoFieldByName('name', 'Form element was hidden.');
     $this->assertText('Name value: element_validate_access', 'Value for inaccessible form element exists.');
 
     // Verify that value for inaccessible form element persists.
-    $this->drupalPostForm(NULL, array(), 'Save');
+    $this->drupalPostForm(NULL, [], 'Save');
     $this->assertNoFieldByName('name', 'Form element was hidden.');
     $this->assertText('Name value: element_validate_access', 'Value for inaccessible form element exists.');
 
     // Verify that #validate handlers don't run if the CSRF token is invalid.
     $this->drupalLogin($this->drupalCreateUser());
     $this->drupalGet('form-test/validate');
-    $edit = array(
+    $edit = [
       'name' => 'validate',
       'form_token' => 'invalid token'
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertNoFieldByName('name', '#value changed by #validate', 'Form element #value was not altered.');
     $this->assertNoText('Name value: value changed by setValueForElement() in #validate', 'Form element value in $form_state was not altered.');
@@ -81,11 +81,11 @@ function testDisabledToken() {
    * Tests partial form validation through #limit_validation_errors.
    */
   function testValidateLimitErrors() {
-    $edit = array(
+    $edit = [
       'test' => 'invalid',
       'test_numeric_index[0]' => 'invalid',
       'test_substring[foo]' => 'invalid',
-    );
+    ];
     $path = 'form-test/limit-validation-errors';
 
     // Render the form, and verify that the buttons with limited server-side
@@ -93,18 +93,18 @@ function testValidateLimitErrors() {
     // client-side validation by the browser).
     $this->drupalGet($path);
     $expected = 'formnovalidate';
-    foreach (array('partial', 'partial-numeric-index', 'substring') as $type) {
-      $element = $this->xpath('//input[@id=:id and @formnovalidate=:expected]', array(
+    foreach (['partial', 'partial-numeric-index', 'substring'] as $type) {
+      $element = $this->xpath('//input[@id=:id and @formnovalidate=:expected]', [
         ':id' => 'edit-' . $type,
         ':expected' => $expected,
-      ));
-      $this->assertTrue(!empty($element), format_string('The @type button has the proper formnovalidate attribute.', array('@type' => $type)));
+      ]);
+      $this->assertTrue(!empty($element), format_string('The @type button has the proper formnovalidate attribute.', ['@type' => $type]));
     }
     // The button with full server-side validation should not have the
     // 'formnovalidate' attribute.
-    $element = $this->xpath('//input[@id=:id and not(@formnovalidate)]', array(
+    $element = $this->xpath('//input[@id=:id and not(@formnovalidate)]', [
       ':id' => 'edit-full',
-    ));
+    ]);
     $this->assertTrue(!empty($element), 'The button with full server-side validation does not have the formnovalidate attribute.');
 
     // Submit the form by pressing the 'Partial validate' button (uses
@@ -112,29 +112,29 @@ function testValidateLimitErrors() {
     // validated, but the #element_validate handler for the 'test' field
     // is triggered.
     $this->drupalPostForm($path, $edit, t('Partial validate'));
-    $this->assertNoText(t('@name field is required.', array('@name' => 'Title')));
+    $this->assertNoText(t('@name field is required.', ['@name' => 'Title']));
     $this->assertText('Test element is invalid');
 
     // Edge case of #limit_validation_errors containing numeric indexes: same
     // thing with the 'Partial validate (numeric index)' button and the
     // 'test_numeric_index' field.
     $this->drupalPostForm($path, $edit, t('Partial validate (numeric index)'));
-    $this->assertNoText(t('@name field is required.', array('@name' => 'Title')));
+    $this->assertNoText(t('@name field is required.', ['@name' => 'Title']));
     $this->assertText('Test (numeric index) element is invalid');
 
     // Ensure something like 'foobar' isn't considered "inside" 'foo'.
     $this->drupalPostForm($path, $edit, t('Partial validate (substring)'));
-    $this->assertNoText(t('@name field is required.', array('@name' => 'Title')));
+    $this->assertNoText(t('@name field is required.', ['@name' => 'Title']));
     $this->assertText('Test (substring) foo element is invalid');
 
     // Ensure not validated values are not available to submit handlers.
-    $this->drupalPostForm($path, array('title' => '', 'test' => 'valid'), t('Partial validate'));
+    $this->drupalPostForm($path, ['title' => '', 'test' => 'valid'], t('Partial validate'));
     $this->assertText('Only validated values appear in the form values.');
 
     // Now test full form validation and ensure that the #element_validate
     // handler is still triggered.
     $this->drupalPostForm($path, $edit, t('Full validate'));
-    $this->assertText(t('@name field is required.', array('@name' => 'Title')));
+    $this->assertText(t('@name field is required.', ['@name' => 'Title']));
     $this->assertText('Test element is invalid');
   }
 
@@ -142,45 +142,45 @@ function testValidateLimitErrors() {
    * Tests #pattern validation.
    */
   function testPatternValidation() {
-    $textfield_error = t('%name field is not in the right format.', array('%name' => 'One digit followed by lowercase letters'));
-    $tel_error = t('%name field is not in the right format.', array('%name' => 'Everything except numbers'));
-    $password_error = t('%name field is not in the right format.', array('%name' => 'Password'));
+    $textfield_error = t('%name field is not in the right format.', ['%name' => 'One digit followed by lowercase letters']);
+    $tel_error = t('%name field is not in the right format.', ['%name' => 'Everything except numbers']);
+    $password_error = t('%name field is not in the right format.', ['%name' => 'Password']);
 
     // Invalid textfield, valid tel.
-    $edit = array(
+    $edit = [
       'textfield' => 'invalid',
       'tel' => 'valid',
-    );
+    ];
     $this->drupalPostForm('form-test/pattern', $edit, 'Submit');
     $this->assertRaw($textfield_error);
     $this->assertNoRaw($tel_error);
     $this->assertNoRaw($password_error);
 
     // Valid textfield, invalid tel, valid password.
-    $edit = array(
+    $edit = [
       'textfield' => '7seven',
       'tel' => '818937',
       'password' => '0100110',
-    );
+    ];
     $this->drupalPostForm('form-test/pattern', $edit, 'Submit');
     $this->assertNoRaw($textfield_error);
     $this->assertRaw($tel_error);
     $this->assertNoRaw($password_error);
 
     // Non required fields are not validated if empty.
-    $edit = array(
+    $edit = [
       'textfield' => '',
       'tel' => '',
-    );
+    ];
     $this->drupalPostForm('form-test/pattern', $edit, 'Submit');
     $this->assertNoRaw($textfield_error);
     $this->assertNoRaw($tel_error);
     $this->assertNoRaw($password_error);
 
     // Invalid password.
-    $edit = array(
+    $edit = [
       'password' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('form-test/pattern', $edit, 'Submit');
     $this->assertNoRaw($textfield_error);
     $this->assertNoRaw($tel_error);
@@ -188,13 +188,13 @@ function testPatternValidation() {
 
     // The pattern attribute overrides #pattern and is not validated on the
     // server side.
-    $edit = array(
+    $edit = [
       'textfield' => '',
       'tel' => '',
       'url' => 'http://www.example.com/',
-    );
+    ];
     $this->drupalPostForm('form-test/pattern', $edit, 'Submit');
-    $this->assertNoRaw(t('%name field is not in the right format.', array('%name' => 'Client side validation')));
+    $this->assertNoRaw(t('%name field is not in the right format.', ['%name' => 'Client side validation']));
   }
 
   /**
@@ -206,36 +206,36 @@ function testCustomRequiredError() {
     $form = \Drupal::formBuilder()->getForm('\Drupal\form_test\Form\FormTestValidateRequiredForm');
 
     // Verify that a custom #required error can be set.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('form-test/validate-required', $edit, 'Submit');
 
     foreach (Element::children($form) as $key) {
       if (isset($form[$key]['#required_error'])) {
-        $this->assertNoText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+        $this->assertNoText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
         $this->assertText($form[$key]['#required_error']);
       }
       elseif (isset($form[$key]['#form_test_required_error'])) {
-        $this->assertNoText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+        $this->assertNoText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
         $this->assertText($form[$key]['#form_test_required_error']);
       }
     }
     $this->assertNoText(t('An illegal choice has been detected. Please contact the site administrator.'));
 
     // Verify that no custom validation error appears with valid values.
-    $edit = array(
+    $edit = [
       'textfield' => $this->randomString(),
       'checkboxes[foo]' => TRUE,
       'select' => 'foo',
-    );
+    ];
     $this->drupalPostForm('form-test/validate-required', $edit, 'Submit');
 
     foreach (Element::children($form) as $key) {
       if (isset($form[$key]['#required_error'])) {
-        $this->assertNoText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+        $this->assertNoText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
         $this->assertNoText($form[$key]['#required_error']);
       }
       elseif (isset($form[$key]['#form_test_required_error'])) {
-        $this->assertNoText(t('@name field is required.', array('@name' => $form[$key]['#title'])));
+        $this->assertNoText(t('@name field is required.', ['@name' => $form[$key]['#title']]));
         $this->assertNoText($form[$key]['#form_test_required_error']);
       }
     }
diff --git a/core/modules/system/src/Tests/Image/ToolkitSetupFormTest.php b/core/modules/system/src/Tests/Image/ToolkitSetupFormTest.php
index 66989de..64b306d 100644
--- a/core/modules/system/src/Tests/Image/ToolkitSetupFormTest.php
+++ b/core/modules/system/src/Tests/Image/ToolkitSetupFormTest.php
@@ -23,16 +23,16 @@ class ToolkitSetupFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'image_test');
+  public static $modules = ['system', 'image_test'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer site configuration',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -47,26 +47,26 @@ function testToolkitSetupForm() {
     $this->assertFieldByName('image_toolkit', 'gd', 'The default image toolkit is GD.');
 
     // Test changing the jpeg image quality.
-    $edit = array('gd[image_jpeg_quality]' => '70');
+    $edit = ['gd[image_jpeg_quality]' => '70'];
     $this->drupalPostForm(NULL, $edit, 'Save configuration');
     $this->assertEqual($this->config('system.image.gd')->get('jpeg_quality'), '70');
 
     // Test changing the toolkit.
-    $edit = array('image_toolkit' => 'test');
+    $edit = ['image_toolkit' => 'test'];
     $this->drupalPostForm(NULL, $edit, 'Save configuration');
     $this->assertEqual($this->config('system.image')->get('toolkit'), 'test');
     $this->assertFieldByName('test[test_parameter]', '10');
 
     // Test changing the test toolkit parameter.
-    $edit = array('test[test_parameter]' => '0');
+    $edit = ['test[test_parameter]' => '0'];
     $this->drupalPostForm(NULL, $edit, 'Save configuration');
     $this->assertText(t('Test parameter should be different from 0.'), 'Validation error displayed.');
-    $edit = array('test[test_parameter]' => '20');
+    $edit = ['test[test_parameter]' => '20'];
     $this->drupalPostForm(NULL, $edit, 'Save configuration');
     $this->assertEqual($this->config('system.image.test_toolkit')->get('test_parameter'), '20');
 
     // Test access without the permission 'administer site configuration'.
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages']));
     $this->drupalGet('admin/config/media/image-toolkit');
     $this->assertResponse(403);
   }
diff --git a/core/modules/system/src/Tests/Image/ToolkitTest.php b/core/modules/system/src/Tests/Image/ToolkitTest.php
index 8848323..be8e3e3 100644
--- a/core/modules/system/src/Tests/Image/ToolkitTest.php
+++ b/core/modules/system/src/Tests/Image/ToolkitTest.php
@@ -18,7 +18,7 @@ function testGetAvailableToolkits() {
     $this->assertTrue(isset($toolkits['test']), 'The working toolkit was returned.');
     $this->assertTrue(isset($toolkits['test:derived_toolkit']), 'The derived toolkit was returned.');
     $this->assertFalse(isset($toolkits['broken']), 'The toolkit marked unavailable was not returned');
-    $this->assertToolkitOperationsCalled(array());
+    $this->assertToolkitOperationsCalled([]);
   }
 
   /**
@@ -28,7 +28,7 @@ function testLoad() {
     $image = $this->getImage();
     $this->assertTrue(is_object($image), 'Returned an object.');
     $this->assertEqual($image->getToolkitId(), 'test', 'Image had toolkit set.');
-    $this->assertToolkitOperationsCalled(array('parseFile'));
+    $this->assertToolkitOperationsCalled(['parseFile']);
   }
 
   /**
@@ -36,18 +36,18 @@ function testLoad() {
    */
   function testSave() {
     $this->assertFalse($this->image->save(), 'Function returned the expected value.');
-    $this->assertToolkitOperationsCalled(array('save'));
+    $this->assertToolkitOperationsCalled(['save']);
   }
 
   /**
    * Test the image_apply() function.
    */
   function testApply() {
-    $data = array('p1' => 1, 'p2' => TRUE, 'p3' => 'text');
+    $data = ['p1' => 1, 'p2' => TRUE, 'p3' => 'text'];
     $this->assertTrue($this->image->apply('my_operation', $data), 'Function returned the expected value.');
 
     // Check that apply was called and with the correct parameters.
-    $this->assertToolkitOperationsCalled(array('apply'));
+    $this->assertToolkitOperationsCalled(['apply']);
     $calls = $this->imageTestGetAllCalls();
     $this->assertEqual($calls['apply'][0][0], 'my_operation', "'my_operation' was passed correctly as operation");
     $this->assertEqual($calls['apply'][0][1]['p1'], 1, 'integer parameter p1 was passed correctly');
@@ -62,10 +62,10 @@ function testApplyNoParameters() {
     $this->assertTrue($this->image->apply('my_operation'), 'Function returned the expected value.');
 
     // Check that apply was called and with the correct parameters.
-    $this->assertToolkitOperationsCalled(array('apply'));
+    $this->assertToolkitOperationsCalled(['apply']);
     $calls = $this->imageTestGetAllCalls();
     $this->assertEqual($calls['apply'][0][0], 'my_operation', "'my_operation' was passed correctly as operation");
-    $this->assertEqual($calls['apply'][0][1], array(), 'passing no parameters was handled correctly');
+    $this->assertEqual($calls['apply'][0][1], [], 'passing no parameters was handled correctly');
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Image/ToolkitTestBase.php b/core/modules/system/src/Tests/Image/ToolkitTestBase.php
index 53ede0d..af0b253 100644
--- a/core/modules/system/src/Tests/Image/ToolkitTestBase.php
+++ b/core/modules/system/src/Tests/Image/ToolkitTestBase.php
@@ -15,7 +15,7 @@
    *
    * @var array
    */
-  public static $modules = array('image_test');
+  public static $modules = ['image_test'];
 
   /**
    * The URI for the file.
@@ -78,7 +78,7 @@ protected function getImage() {
   function assertToolkitOperationsCalled(array $expected) {
     // If one of the image operations is expected, apply should be expected as
     // well.
-    $operations = array(
+    $operations = [
       'resize',
       'rotate',
       'crop',
@@ -88,7 +88,7 @@ function assertToolkitOperationsCalled(array $expected) {
       'scale_and_crop',
       'my_operation',
       'convert',
-    );
+    ];
     if (count(array_intersect($expected, $operations)) > 0 && !in_array('apply', $expected)) {
       $expected[] = 'apply';
     }
@@ -99,10 +99,10 @@ function assertToolkitOperationsCalled(array $expected) {
     // Determine if there were any expected that were not called.
     $uncalled = array_diff($expected, $actual);
     if (count($uncalled)) {
-      $this->assertTrue(FALSE, SafeMarkup::format('Expected operations %expected to be called but %uncalled was not called.', array('%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled))));
+      $this->assertTrue(FALSE, SafeMarkup::format('Expected operations %expected to be called but %uncalled was not called.', ['%expected' => implode(', ', $expected), '%uncalled' => implode(', ', $uncalled)]));
     }
     else {
-      $this->assertTrue(TRUE, SafeMarkup::format('All the expected operations were called: %expected', array('%expected' => implode(', ', $expected))));
+      $this->assertTrue(TRUE, SafeMarkup::format('All the expected operations were called: %expected', ['%expected' => implode(', ', $expected)]));
     }
 
     // Determine if there were any unexpected calls.
@@ -110,7 +110,7 @@ function assertToolkitOperationsCalled(array $expected) {
     // count it as an error.
     $unexpected = array_diff($actual, $expected);
     if (count($unexpected) && (!in_array('apply', $expected) || count(array_intersect($unexpected, $operations)) !== count($unexpected))) {
-      $this->assertTrue(FALSE, SafeMarkup::format('Unexpected operations were called: %unexpected.', array('%unexpected' => implode(', ', $unexpected))));
+      $this->assertTrue(FALSE, SafeMarkup::format('Unexpected operations were called: %unexpected.', ['%unexpected' => implode(', ', $unexpected)]));
     }
     else {
       $this->assertTrue(TRUE, 'No unexpected operations were called.');
@@ -122,20 +122,20 @@ function assertToolkitOperationsCalled(array $expected) {
    */
   function imageTestReset() {
     // Keep track of calls to these operations
-    $results = array(
-      'parseFile' => array(),
-      'save' => array(),
-      'settings' => array(),
-      'apply' => array(),
-      'resize' => array(),
-      'rotate' => array(),
-      'crop' => array(),
-      'desaturate' => array(),
-      'create_new' => array(),
-      'scale' => array(),
-      'scale_and_crop' => array(),
-      'convert' => array(),
-    );
+    $results = [
+      'parseFile' => [],
+      'save' => [],
+      'settings' => [],
+      'apply' => [],
+      'resize' => [],
+      'rotate' => [],
+      'crop' => [],
+      'desaturate' => [],
+      'create_new' => [],
+      'scale' => [],
+      'scale_and_crop' => [],
+      'convert' => [],
+    ];
     \Drupal::state()->set('image_test.results', $results);
   }
 
@@ -148,7 +148,7 @@ function imageTestReset() {
    *   parameters passed to each call.
    */
   function imageTestGetAllCalls() {
-    return \Drupal::state()->get('image_test.results') ?: array();
+    return \Drupal::state()->get('image_test.results') ?: [];
   }
 
 }
diff --git a/core/modules/system/src/Tests/Installer/DistributionProfileTest.php b/core/modules/system/src/Tests/Installer/DistributionProfileTest.php
index 569fe36..e52b046 100644
--- a/core/modules/system/src/Tests/Installer/DistributionProfileTest.php
+++ b/core/modules/system/src/Tests/Installer/DistributionProfileTest.php
@@ -21,17 +21,17 @@ class DistributionProfileTest extends InstallerTestBase {
   protected $info;
 
   protected function setUp() {
-    $this->info = array(
+    $this->info = [
       'type' => 'profile',
       'core' => \Drupal::CORE_COMPATIBILITY,
       'name' => 'Distribution profile',
-      'distribution' => array(
+      'distribution' => [
         'name' => 'My Distribution',
-        'install' => array(
+        'install' => [
           'theme' => 'bartik',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     // File API functions are not available yet.
     $path = $this->siteDirectory . '/profiles/mydistro';
     mkdir($path, 0777, TRUE);
diff --git a/core/modules/system/src/Tests/Installer/DistributionProfileTranslationQueryTest.php b/core/modules/system/src/Tests/Installer/DistributionProfileTranslationQueryTest.php
index b8658fb..1b68683 100644
--- a/core/modules/system/src/Tests/Installer/DistributionProfileTranslationQueryTest.php
+++ b/core/modules/system/src/Tests/Installer/DistributionProfileTranslationQueryTest.php
@@ -30,18 +30,18 @@ class DistributionProfileTranslationQueryTest extends InstallerTestBase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->info = array(
+    $this->info = [
       'type' => 'profile',
       'core' => \Drupal::CORE_COMPATIBILITY,
       'name' => 'Distribution profile',
-      'distribution' => array(
+      'distribution' => [
         'name' => 'My Distribution',
         'langcode' => $this->langcode,
-        'install' => array(
+        'install' => [
           'theme' => 'bartik',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     // File API functions are not available yet.
     $path = $this->siteDirectory . '/profiles/mydistro';
     mkdir($path, 0777, TRUE);
diff --git a/core/modules/system/src/Tests/Installer/DistributionProfileTranslationTest.php b/core/modules/system/src/Tests/Installer/DistributionProfileTranslationTest.php
index 29b9b3c..799affe 100644
--- a/core/modules/system/src/Tests/Installer/DistributionProfileTranslationTest.php
+++ b/core/modules/system/src/Tests/Installer/DistributionProfileTranslationTest.php
@@ -30,18 +30,18 @@ class DistributionProfileTranslationTest extends InstallerTestBase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $this->info = array(
+    $this->info = [
       'type' => 'profile',
       'core' => \Drupal::CORE_COMPATIBILITY,
       'name' => 'Distribution profile',
-      'distribution' => array(
+      'distribution' => [
         'name' => 'My Distribution',
         'langcode' => $this->langcode,
-        'install' => array(
+        'install' => [
           'theme' => 'bartik',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     // File API functions are not available yet.
     $path = $this->siteDirectory . '/profiles/mydistro';
     mkdir($path, 0777, TRUE);
diff --git a/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryErrorTest.php b/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryErrorTest.php
index eb50a0d..2ab980f 100644
--- a/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryErrorTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryErrorTest.php
@@ -24,10 +24,10 @@ class InstallerConfigDirectorySetNoDirectoryErrorTest extends InstallerTestBase
    */
   protected function setUp() {
     $this->configDirectory = $this->publicFilesDirectory . '/config_' . Crypt::randomBytesBase64();
-    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) array(
+    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) [
       'value' => $this->configDirectory . '/sync',
       'required' => TRUE,
-    );
+    ];
     // Create the files directory early so we can test the error case.
     mkdir($this->publicFilesDirectory);
     // Create a file so the directory can not be created.
diff --git a/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryTest.php b/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryTest.php
index 4daa45c..11febf2 100644
--- a/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerConfigDirectorySetNoDirectoryTest.php
@@ -24,15 +24,15 @@ class InstallerConfigDirectorySetNoDirectoryTest extends InstallerTestBase {
    */
   protected function setUp() {
     $this->syncDirectory = $this->publicFilesDirectory . '/config_' . Crypt::randomBytesBase64() . '/sync';
-    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) array(
+    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) [
       'value' => $this->syncDirectory,
       'required' => TRUE,
-    );
+    ];
     // Other directories will be created too.
-    $this->settings['config_directories']['custom'] = (object) array(
+    $this->settings['config_directories']['custom'] = (object) [
       'value' => $this->publicFilesDirectory . '/config_custom',
       'required' => TRUE,
-    );
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingConfigDirectoryTest.php b/core/modules/system/src/Tests/Installer/InstallerExistingConfigDirectoryTest.php
index ae6b606..b06b4ca 100644
--- a/core/modules/system/src/Tests/Installer/InstallerExistingConfigDirectoryTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerExistingConfigDirectoryTest.php
@@ -24,10 +24,10 @@ class InstallerExistingConfigDirectoryTest extends InstallerTestBase {
   protected function setUp() {
     mkdir($this->siteDirectory . '/config_read_only', 0444);
     $this->expectedFilePerms = fileperms($this->siteDirectory . '/config_read_only');
-    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) array(
+    $this->settings['config_directories'][CONFIG_SYNC_DIRECTORY] = (object) [
       'value' => $this->siteDirectory . '/config_read_only',
       'required' => TRUE,
-    );
+    ];
     parent::setUp();
   }
 
diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingDatabaseSettingsTest.php b/core/modules/system/src/Tests/Installer/InstallerExistingDatabaseSettingsTest.php
index 733f6bc..63d3ce4 100644
--- a/core/modules/system/src/Tests/Installer/InstallerExistingDatabaseSettingsTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerExistingDatabaseSettingsTest.php
@@ -22,10 +22,10 @@ protected function setUp() {
     unset($connection_info['default']['pdo']);
     unset($connection_info['default']['init_commands']);
 
-    $this->settings['databases']['default'] = (object) array(
+    $this->settings['databases']['default'] = (object) [
       'value' => $connection_info,
       'required' => TRUE,
-    );
+    ];
     parent::setUp();
   }
 
@@ -40,13 +40,13 @@ protected function setUpSettings() {
     // All database settings should be pre-configured, except password.
     $values = $this->parameters['forms']['install_settings_form'];
     $driver = $values['driver'];
-    $edit = array();
+    $edit = [];
     if (isset($values[$driver]['password']) && $values[$driver]['password'] !== '') {
-      $edit = $this->translatePostValues(array(
-        $driver => array(
+      $edit = $this->translatePostValues([
+        $driver => [
           'password' => $values[$driver]['password'],
-        ),
-      ));
+        ],
+      ]);
     }
     $this->drupalPostForm(NULL, $edit, $this->translations['Save and continue']);
   }
diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsMismatchProfileTest.php b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsMismatchProfileTest.php
index a179039..0349fe5 100644
--- a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsMismatchProfileTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsMismatchProfileTest.php
@@ -24,20 +24,20 @@ class InstallerExistingSettingsMismatchProfileTest extends InstallerTestBase {
   protected function setUp() {
     // Pre-configure hash salt.
     // Any string is valid, so simply use the class name of this test.
-    $this->settings['settings']['hash_salt'] = (object) array(
+    $this->settings['settings']['hash_salt'] = (object) [
       'value' => __CLASS__,
       'required' => TRUE,
-    );
+    ];
 
     // Pre-configure database credentials.
     $connection_info = Database::getConnectionInfo();
     unset($connection_info['default']['pdo']);
     unset($connection_info['default']['init_commands']);
 
-    $this->settings['databases']['default'] = (object) array(
+    $this->settings['databases']['default'] = (object) [
       'value' => $connection_info,
       'required' => TRUE,
-    );
+    ];
 
     // During interactive install we'll change this to a different profile and
     // this test will ensure that the new value is written to settings.php.
@@ -47,12 +47,12 @@ protected function setUp() {
     ];
 
     // Pre-configure config directories.
-    $this->settings['config_directories'] = array(
-      CONFIG_SYNC_DIRECTORY => (object) array(
+    $this->settings['config_directories'] = [
+      CONFIG_SYNC_DIRECTORY => (object) [
         'value' => DrupalKernel::findSitePath(Request::createFromGlobals()) . '/files/config_sync',
         'required' => TRUE,
-      ),
-    );
+      ],
+    ];
     mkdir($this->settings['config_directories'][CONFIG_SYNC_DIRECTORY]->value, 0777, TRUE);
 
     parent::setUp();
diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsNoProfileTest.php b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsNoProfileTest.php
index 9517308..3405cb5 100644
--- a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsNoProfileTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsNoProfileTest.php
@@ -23,28 +23,28 @@ class InstallerExistingSettingsNoProfileTest extends InstallerTestBase {
   protected function setUp() {
     // Pre-configure hash salt.
     // Any string is valid, so simply use the class name of this test.
-    $this->settings['settings']['hash_salt'] = (object) array(
+    $this->settings['settings']['hash_salt'] = (object) [
       'value' => __CLASS__,
       'required' => TRUE,
-    );
+    ];
 
     // Pre-configure database credentials.
     $connection_info = Database::getConnectionInfo();
     unset($connection_info['default']['pdo']);
     unset($connection_info['default']['init_commands']);
 
-    $this->settings['databases']['default'] = (object) array(
+    $this->settings['databases']['default'] = (object) [
       'value' => $connection_info,
       'required' => TRUE,
-    );
+    ];
 
     // Pre-configure config directories.
-    $this->settings['config_directories'] = array(
-      CONFIG_SYNC_DIRECTORY => (object) array(
+    $this->settings['config_directories'] = [
+      CONFIG_SYNC_DIRECTORY => (object) [
         'value' => DrupalKernel::findSitePath(Request::createFromGlobals()) . '/files/config_sync',
         'required' => TRUE,
-      ),
-    );
+      ],
+    ];
     mkdir($this->settings['config_directories'][CONFIG_SYNC_DIRECTORY]->value, 0777, TRUE);
 
     parent::setUp();
diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsTest.php b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsTest.php
index eaca8fa..4f09b6b 100644
--- a/core/modules/system/src/Tests/Installer/InstallerExistingSettingsTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerExistingSettingsTest.php
@@ -24,38 +24,38 @@ class InstallerExistingSettingsTest extends InstallerTestBase {
   protected function setUp() {
     // Pre-configure hash salt.
     // Any string is valid, so simply use the class name of this test.
-    $this->settings['settings']['hash_salt'] = (object) array(
+    $this->settings['settings']['hash_salt'] = (object) [
       'value' => __CLASS__,
       'required' => TRUE,
-    );
+    ];
 
     // During interactive install we'll change this to a different profile and
     // this test will ensure that the new value is written to settings.php.
-    $this->settings['settings']['install_profile'] = (object) array(
+    $this->settings['settings']['install_profile'] = (object) [
       'value' => 'minimal',
       'required' => TRUE,
-    );
+    ];
 
     // Pre-configure database credentials.
     $connection_info = Database::getConnectionInfo();
     unset($connection_info['default']['pdo']);
     unset($connection_info['default']['init_commands']);
 
-    $this->settings['databases']['default'] = (object) array(
+    $this->settings['databases']['default'] = (object) [
       'value' => $connection_info,
       'required' => TRUE,
-    );
+    ];
 
     // Use the kernel to find the site path because the site.path service should
     // not be available at this point in the install process.
     $site_path = DrupalKernel::findSitePath(Request::createFromGlobals());
     // Pre-configure config directories.
-    $this->settings['config_directories'] = array(
-      CONFIG_SYNC_DIRECTORY => (object) array(
+    $this->settings['config_directories'] = [
+      CONFIG_SYNC_DIRECTORY => (object) [
         'value' => $site_path . '/files/config_sync',
         'required' => TRUE,
-      ),
-    );
+      ],
+    ];
     mkdir($this->settings['config_directories'][CONFIG_SYNC_DIRECTORY]->value, 0777, TRUE);
 
     parent::setUp();
diff --git a/core/modules/system/src/Tests/Installer/InstallerTest.php b/core/modules/system/src/Tests/Installer/InstallerTest.php
index 7a145f8..01422a5 100644
--- a/core/modules/system/src/Tests/Installer/InstallerTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerTest.php
@@ -22,9 +22,9 @@ public function testInstaller() {
 
     // Verify that the confirmation message appears.
     require_once \Drupal::root() . '/core/includes/install.inc';
-    $this->assertRaw(t('Congratulations, you installed @drupal!', array(
+    $this->assertRaw(t('Congratulations, you installed @drupal!', [
       '@drupal' => drupal_install_profile_distribution_name(),
-    )));
+    ]));
   }
 
   /**
@@ -48,7 +48,7 @@ protected function setUpLanguage() {
   protected function setUpProfile() {
     // Assert that the expected title is present.
     $this->assertEqual('Select an installation profile', $this->cssSelect('main h2')[0]);
-    $result = $this->xpath('//span[contains(@class, :class) and contains(text(), :text)]', array(':class' => 'visually-hidden', ':text' => 'Select an installation profile'));
+    $result = $this->xpath('//span[contains(@class, :class) and contains(text(), :text)]', [':class' => 'visually-hidden', ':text' => 'Select an installation profile']);
     $this->assertEqual(count($result), 1, "Title/Label not displayed when '#title_display' => 'invisible' attribute is set");
 
     parent::setUpProfile();
diff --git a/core/modules/system/src/Tests/Installer/InstallerTranslationMultipleLanguageTest.php b/core/modules/system/src/Tests/Installer/InstallerTranslationMultipleLanguageTest.php
index a89a3cb..a608cad 100644
--- a/core/modules/system/src/Tests/Installer/InstallerTranslationMultipleLanguageTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerTranslationMultipleLanguageTest.php
@@ -116,10 +116,10 @@ public function testTranslationsLoaded() {
 
       // Activate a module, to make sure that config is not overridden by module
       // installation.
-      $edit = array(
+      $edit = [
         'modules[views][enable]' => TRUE,
         'modules[filter][enable]' => TRUE,
-      );
+      ];
       $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
       // Verify the strings from the translation are still as expected.
@@ -149,7 +149,7 @@ protected function verifyImportedStringsTranslated() {
 
     foreach ($test_samples as $sample) {
       foreach ($langcodes as $langcode) {
-        $edit = array();
+        $edit = [];
         $edit['langcode'] = $langcode;
         $edit['translation'] = 'translated';
         $edit['string'] = $sample;
diff --git a/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php b/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
index ade7183..7a803e7 100644
--- a/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
+++ b/core/modules/system/src/Tests/Installer/InstallerTranslationTest.php
@@ -84,11 +84,11 @@ public function testInstaller() {
     $this->assertEqual($account->language()->getId(), 'de', 'New user is German.');
 
     // Ensure that we can enable basic_auth on a non-english site.
-    $this->drupalPostForm('admin/modules', array('modules[basic_auth][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[basic_auth][enable]' => TRUE], t('Install'));
     $this->assertResponse(200);
 
     // Assert that the theme CSS was added to the page.
-    $edit = array('preprocess_css' => FALSE);
+    $edit = ['preprocess_css' => FALSE];
     $this->drupalPostForm('admin/config/development/performance', $edit, t('Save configuration'));
     $this->drupalGet('<front>');
     $this->assertRaw('classy/css/components/action-links.css');
@@ -96,7 +96,7 @@ public function testInstaller() {
     // Verify the strings from the translation files were imported.
     $test_samples = ['Save and continue', 'Anonymous'];
     foreach ($test_samples as $sample) {
-      $edit = array();
+      $edit = [];
       $edit['langcode'] = 'de';
       $edit['translation'] = 'translated';
       $edit['string'] = $sample;
diff --git a/core/modules/system/src/Tests/Installer/SingleVisibleProfileTest.php b/core/modules/system/src/Tests/Installer/SingleVisibleProfileTest.php
index b54c411..91af34a 100644
--- a/core/modules/system/src/Tests/Installer/SingleVisibleProfileTest.php
+++ b/core/modules/system/src/Tests/Installer/SingleVisibleProfileTest.php
@@ -29,12 +29,12 @@ class SingleVisibleProfileTest extends InstallerTestBase {
   protected $info;
 
   protected function setUp() {
-    $this->info = array(
+    $this->info = [
       'type' => 'profile',
       'core' => \Drupal::CORE_COMPATIBILITY,
       'name' => 'Override standard',
       'hidden' => TRUE,
-    );
+    ];
     // File API functions are not available yet.
     $path = $this->siteDirectory . '/profiles/standard';
     mkdir($path, 0777, TRUE);
diff --git a/core/modules/system/src/Tests/Installer/StandardInstallerTest.php b/core/modules/system/src/Tests/Installer/StandardInstallerTest.php
index 61e7c84..b0ceef9 100644
--- a/core/modules/system/src/Tests/Installer/StandardInstallerTest.php
+++ b/core/modules/system/src/Tests/Installer/StandardInstallerTest.php
@@ -20,9 +20,9 @@ class StandardInstallerTest extends ConfigAfterInstallerTestBase {
   public function testInstaller() {
     // Verify that the confirmation message appears.
     require_once \Drupal::root() . '/core/includes/install.inc';
-    $this->assertRaw(t('Congratulations, you installed @drupal!', array(
+    $this->assertRaw(t('Congratulations, you installed @drupal!', [
       '@drupal' => drupal_install_profile_distribution_name(),
-    )));
+    ]));
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php b/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
index f9c35ee..a18f45c 100644
--- a/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
+++ b/core/modules/system/src/Tests/Menu/AssertBreadcrumbTrait.php
@@ -32,7 +32,7 @@
    *   (optional) Whether the last link in $tree is expected to be active (TRUE)
    *   or just to be in the active trail (FALSE).
    */
-  protected function assertBreadcrumb($goto, array $trail, $page_title = NULL, array $tree = array(), $last_active = TRUE) {
+  protected function assertBreadcrumb($goto, array $trail, $page_title = NULL, array $tree = [], $last_active = TRUE) {
     if (isset($goto)) {
       $this->drupalGet($goto);
     }
@@ -40,7 +40,7 @@ protected function assertBreadcrumb($goto, array $trail, $page_title = NULL, arr
 
     // Additionally assert page title, if given.
     if (isset($page_title)) {
-      $this->assertTitle(strtr('@title | Drupal', array('@title' => $page_title)));
+      $this->assertTitle(strtr('@title | Drupal', ['@title' => $page_title]));
     }
 
     // Additionally assert active trail in a menu tree output, if given.
@@ -84,25 +84,25 @@ protected function assertBreadcrumbParts($trail) {
     // No parts must be left, or an expected "Home" will always pass.
     $pass = ($pass && empty($parts));
 
-    $this->assertTrue($pass, format_string('Breadcrumb %parts found on @path.', array(
+    $this->assertTrue($pass, format_string('Breadcrumb %parts found on @path.', [
       '%parts' => implode(' » ', $trail),
       '@path' => $this->getUrl(),
-    )));
+    ]));
   }
 
   /**
    * Returns the breadcrumb contents of the current page in the internal browser.
    */
   protected function getBreadcrumbParts() {
-    $parts = array();
+    $parts = [];
     $elements = $this->xpath('//nav[@class="breadcrumb"]/ol/li/a');
     if (!empty($elements)) {
       foreach ($elements as $element) {
-        $parts[] = array(
+        $parts[] = [
           'text' => (string) $element,
           'href' => (string) $element['href'],
           'title' => (string) $element['title'],
-        );
+        ];
       }
     }
     return $parts;
diff --git a/core/modules/system/src/Tests/Menu/AssertMenuActiveTrailTrait.php b/core/modules/system/src/Tests/Menu/AssertMenuActiveTrailTrait.php
index 4313b4c..05e0268 100644
--- a/core/modules/system/src/Tests/Menu/AssertMenuActiveTrailTrait.php
+++ b/core/modules/system/src/Tests/Menu/AssertMenuActiveTrailTrait.php
@@ -30,11 +30,11 @@ protected function assertMenuActiveTrail($tree, $last_active) {
       foreach ($tree as $link_path => $link_title) {
         $part_xpath = (!$i ? '//' : '/following-sibling::ul/descendant::');
         $part_xpath .= 'li[contains(@class, :class)]/a[contains(@href, :href) and contains(text(), :title)]';
-        $part_args = array(
+        $part_args = [
           ':class' => 'menu-item--active-trail',
           ':href' => Url::fromUri('base:' . $link_path)->toString(),
           ':title' => $link_title,
-        );
+        ];
         $xpath .= $this->buildXPathQuery($part_xpath, $part_args);
         $i++;
       }
@@ -49,17 +49,17 @@ protected function assertMenuActiveTrail($tree, $last_active) {
     }
     $xpath_last_active = ($last_active ? 'and contains(@class, :class-active)' : '');
     $xpath .= 'li[contains(@class, :class-trail)]/a[contains(@href, :href) ' . $xpath_last_active . 'and contains(text(), :title)]';
-    $args = array(
+    $args = [
       ':class-trail' => 'menu-item--active-trail',
       ':class-active' => 'is-active',
       ':href' => Url::fromUri('base:' . $active_link_path)->toString(),
       ':title' => $active_link_title,
-    );
+    ];
     $elements = $this->xpath($xpath, $args);
-    $this->assertTrue(!empty($elements), format_string('Active link %title was found in menu tree, including active trail links %tree.', array(
+    $this->assertTrue(!empty($elements), format_string('Active link %title was found in menu tree, including active trail links %tree.', [
       '%title' => $active_link_title,
       '%tree' => implode(' » ', $tree),
-    )));
+    ]));
   }
 
 }
diff --git a/core/modules/system/src/Tests/Menu/BreadcrumbTest.php b/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
index f756300..f158f27 100644
--- a/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
+++ b/core/modules/system/src/Tests/Menu/BreadcrumbTest.php
@@ -18,7 +18,7 @@ class BreadcrumbTest extends MenuTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_test', 'block');
+  public static $modules = ['menu_test', 'block'];
 
   /**
    * An administrative user.
@@ -49,10 +49,10 @@ protected function setUp() {
     // This test puts menu links in the Tools menu and then tests for their
     // presence on the page, so we need to ensure that the Tools block will be
     // displayed in the admin theme.
-    $this->drupalPlaceBlock('system_menu_block:tools', array(
+    $this->drupalPlaceBlock('system_menu_block:tools', [
       'region' => 'content',
       'theme' => $this->config('system.theme')->get('admin'),
-    ));
+    ]);
   }
 
   /**
@@ -60,85 +60,85 @@ protected function setUp() {
    */
   function testBreadCrumbs() {
     // Prepare common base breadcrumb elements.
-    $home = array('' => 'Home');
-    $admin = $home + array('admin' => t('Administration'));
-    $config = $admin + array('admin/config' => t('Configuration'));
+    $home = ['' => 'Home'];
+    $admin = $home + ['admin' => t('Administration')];
+    $config = $admin + ['admin/config' => t('Configuration')];
     $type = 'article';
 
     // Verify Taxonomy administration breadcrumbs.
-    $trail = $admin + array(
+    $trail = $admin + [
       'admin/structure' => t('Structure'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/taxonomy', $trail);
 
-    $trail += array(
+    $trail += [
       'admin/structure/taxonomy' => t('Taxonomy'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/taxonomy/manage/tags', $trail);
-    $trail += array(
+    $trail += [
       'admin/structure/taxonomy/manage/tags' => t('Tags'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/taxonomy/manage/tags/overview', $trail);
     $this->assertBreadcrumb('admin/structure/taxonomy/manage/tags/add', $trail);
 
     // Verify Menu administration breadcrumbs.
-    $trail = $admin + array(
+    $trail = $admin + [
       'admin/structure' => t('Structure'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/menu', $trail);
 
-    $trail += array(
+    $trail += [
       'admin/structure/menu' => t('Menus'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/menu/manage/tools', $trail);
 
-    $trail += array(
+    $trail += [
       'admin/structure/menu/manage/tools' => t('Tools'),
-    );
+    ];
     $this->assertBreadcrumb("admin/structure/menu/link/node.add_page/edit", $trail);
     $this->assertBreadcrumb('admin/structure/menu/manage/tools/add', $trail);
 
     // Verify Node administration breadcrumbs.
-    $trail = $admin + array(
+    $trail = $admin + [
       'admin/structure' => t('Structure'),
       'admin/structure/types' => t('Content types'),
-    );
+    ];
     $this->assertBreadcrumb('admin/structure/types/add', $trail);
     $this->assertBreadcrumb("admin/structure/types/manage/$type", $trail);
-    $trail += array(
+    $trail += [
       "admin/structure/types/manage/$type" => t('Article'),
-    );
+    ];
     $this->assertBreadcrumb("admin/structure/types/manage/$type/fields", $trail);
     $this->assertBreadcrumb("admin/structure/types/manage/$type/display", $trail);
-    $trail_teaser = $trail + array(
+    $trail_teaser = $trail + [
       "admin/structure/types/manage/$type/display" => t('Manage display'),
-    );
+    ];
     $this->assertBreadcrumb("admin/structure/types/manage/$type/display/teaser", $trail_teaser);
     $this->assertBreadcrumb("admin/structure/types/manage/$type/delete", $trail);
-    $trail += array(
+    $trail += [
       "admin/structure/types/manage/$type/fields" => t('Manage fields'),
-    );
+    ];
     $this->assertBreadcrumb("admin/structure/types/manage/$type/fields/node.$type.body", $trail);
 
     // Verify Filter text format administration breadcrumbs.
     $filter_formats = filter_formats();
     $format = reset($filter_formats);
     $format_id = $format->id();
-    $trail = $config + array(
+    $trail = $config + [
       'admin/config/content' => t('Content authoring'),
-    );
+    ];
     $this->assertBreadcrumb('admin/config/content/formats', $trail);
 
-    $trail += array(
+    $trail += [
       'admin/config/content/formats' => t('Text formats and editors'),
-    );
+    ];
     $this->assertBreadcrumb('admin/config/content/formats/add', $trail);
     $this->assertBreadcrumb("admin/config/content/formats/manage/$format_id", $trail);
     // @todo Remove this part once we have a _title_callback, see
     //   https://www.drupal.org/node/2076085.
-    $trail += array(
+    $trail += [
       "admin/config/content/formats/manage/$format_id" => $format->label(),
-    );
+    ];
     $this->assertBreadcrumb("admin/config/content/formats/manage/$format_id/disable", $trail);
 
     // Verify node breadcrumbs (without menu link).
@@ -151,13 +151,13 @@ function testBreadCrumbs() {
     // Also verify that the node does not appear elsewhere (e.g., menu trees).
     $this->assertNoLink($node1->getTitle());
 
-    $trail += array(
+    $trail += [
       "node/$nid1" => $node1->getTitle(),
-    );
+    ];
     $this->assertBreadcrumb("node/$nid1/edit", $trail);
 
     // Verify that breadcrumb on node listing page contains "Home" only.
-    $trail = array();
+    $trail = [];
     $this->assertBreadcrumb('node', $trail);
 
     // Verify node breadcrumbs (in menu).
@@ -165,7 +165,7 @@ function testBreadCrumbs() {
     // latter is a preferred menu by default.
     // @todo Also test all themes? Manually testing led to the suspicion that
     //   breadcrumbs may differ, possibly due to theme overrides.
-    $menus = array('main', 'tools');
+    $menus = ['main', 'tools'];
     // Alter node type menu settings.
     $node_type = NodeType::load($type);
     $node_type->setThirdPartySetting('menu_ui', 'available_menus', $menus);
@@ -175,17 +175,17 @@ function testBreadCrumbs() {
     foreach ($menus as $menu) {
       // Create a parent node in the current menu.
       $title = $this->randomMachineName();
-      $node2 = $this->drupalCreateNode(array(
+      $node2 = $this->drupalCreateNode([
         'type' => $type,
         'title' => $title,
-        'menu' => array(
+        'menu' => [
           'enabled' => 1,
           'title' => 'Parent ' . $title,
           'description' => '',
           'menu_name' => $menu,
           'parent' => '',
-        ),
-      ));
+        ],
+      ]);
 
       if ($menu == 'tools') {
         $parent = $node2;
@@ -195,38 +195,38 @@ function testBreadCrumbs() {
     // Create a Tools menu link for 'node', move the last parent node menu
     // link below it, and verify a full breadcrumb for the last child node.
     $menu = 'tools';
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'Root',
       'link[0][uri]' => '/node',
-    );
+    ];
     $this->drupalPostForm("admin/structure/menu/manage/$menu/add", $edit, t('Save'));
-    $menu_links = entity_load_multiple_by_properties('menu_link_content', array('title' => 'Root'));
+    $menu_links = entity_load_multiple_by_properties('menu_link_content', ['title' => 'Root']);
     $link = reset($menu_links);
 
-    $edit = array(
+    $edit = [
       'menu[menu_parent]' => $link->getMenuName() . ':' . $link->getPluginId(),
-    );
+    ];
     $this->drupalPostForm('node/' . $parent->id() . '/edit', $edit, t('Save and keep published'));
-    $expected = array(
+    $expected = [
       "node" => $link->getTitle(),
-    );
+    ];
     $trail = $home + $expected;
-    $tree = $expected + array(
+    $tree = $expected + [
       'node/' . $parent->id() => $parent->menu['title'],
-    );
-    $trail += array(
+    ];
+    $trail += [
       'node/' . $parent->id() => $parent->menu['title'],
-    );
+    ];
 
     // Add a taxonomy term/tag to last node, and add a link for that term to the
     // Tools menu.
-    $tags = array(
-      'Drupal' => array(),
-      'Breadcrumbs' => array(),
-    );
-    $edit = array(
+    $tags = [
+      'Drupal' => [],
+      'Breadcrumbs' => [],
+    ];
+    $edit = [
       'field_tags[target_id]' => implode(',', array_keys($tags)),
-    );
+    ];
     $this->drupalPostForm('node/' . $parent->id() . '/edit', $edit, t('Save and keep published'));
 
     // Put both terms into a hierarchy Drupal » Breadcrumbs. Required for both
@@ -234,13 +234,13 @@ function testBreadCrumbs() {
     // the breadcrumb based on taxonomy term hierarchy.
     $parent_tid = 0;
     foreach ($tags as $name => $null) {
-      $terms = entity_load_multiple_by_properties('taxonomy_term', array('name' => $name));
+      $terms = entity_load_multiple_by_properties('taxonomy_term', ['name' => $name]);
       $term = reset($terms);
       $tags[$name]['term'] = $term;
       if ($parent_tid) {
-        $edit = array(
-          'parent[]' => array($parent_tid),
-        );
+        $edit = [
+          'parent[]' => [$parent_tid],
+        ];
         $this->drupalPostForm("taxonomy/term/{$term->id()}/edit", $edit, t('Save'));
       }
       $parent_tid = $term->id();
@@ -248,24 +248,24 @@ function testBreadCrumbs() {
     $parent_mlid = '';
     foreach ($tags as $name => $data) {
       $term = $data['term'];
-      $edit = array(
+      $edit = [
         'title[0][value]' => "$name link",
         'link[0][uri]' => "/taxonomy/term/{$term->id()}",
         'menu_parent' => "$menu:{$parent_mlid}",
         'enabled[value]' => 1,
-      );
+      ];
       $this->drupalPostForm("admin/structure/menu/manage/$menu/add", $edit, t('Save'));
-      $menu_links = entity_load_multiple_by_properties('menu_link_content', array(
+      $menu_links = entity_load_multiple_by_properties('menu_link_content', [
         'title' => $edit['title[0][value]'],
         'link.uri' => 'internal:/taxonomy/term/' . $term->id(),
-      ));
+      ]);
       $tags[$name]['link'] = reset($menu_links);
       $parent_mlid = $tags[$name]['link']->getPluginId();
     }
 
     // Verify expected breadcrumbs for menu links.
     $trail = $home;
-    $tree = array();
+    $tree = [];
     // Logout the user because we want to check the active class as well, which
     // is just rendered as anonymous user.
     $this->drupalLogout();
@@ -275,9 +275,9 @@ function testBreadCrumbs() {
       $link = $data['link'];
 
       $link_path = $link->getUrlObject()->getInternalPath();
-      $tree += array(
+      $tree += [
         $link_path => $link->getTitle(),
-      );
+      ];
       $this->assertBreadcrumb($link_path, $trail, $term->getName(), $tree);
       $this->assertEscaped($parent->getTitle(), 'Tagged node found.');
 
@@ -285,28 +285,28 @@ function testBreadCrumbs() {
       // untranslated menu links automatically generated from menu router items
       // ('taxonomy/term/%') should never be translated and appear in any menu
       // other than the breadcrumb trail.
-      $elements = $this->xpath('//nav[@id=:menu]/descendant::a[@href=:href]', array(
+      $elements = $this->xpath('//nav[@id=:menu]/descendant::a[@href=:href]', [
         ':menu' => 'block-bartik-tools',
         ':href' => Url::fromUri('base:' . $link_path)->toString(),
-      ));
+      ]);
       $this->assertTrue(count($elements) == 1, "Link to {$link_path} appears only once.");
 
       // Next iteration should expect this tag as parent link.
       // Note: Term name, not link name, due to taxonomy_term_page().
-      $trail += array(
+      $trail += [
         $link_path => $term->getName(),
-      );
+      ];
     }
 
     // Verify breadcrumbs on user and user/%.
     // We need to log back in and out below, and cannot simply grant the
     // 'administer users' permission, since user_page() makes your head explode.
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array(
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, [
       'access user profiles',
-    ));
+    ]);
 
     // Verify breadcrumb on front page.
-    $this->assertBreadcrumb('<front>', array());
+    $this->assertBreadcrumb('<front>', []);
 
     // Verify breadcrumb on user pages (without menu link) for anonymous user.
     $trail = $home;
@@ -318,39 +318,39 @@ function testBreadCrumbs() {
     $trail = $home;
     $this->assertBreadcrumb('user', $trail, $this->adminUser->getUsername());
     $this->assertBreadcrumb('user/' . $this->adminUser->id(), $trail, $this->adminUser->getUsername());
-    $trail += array(
+    $trail += [
       'user/' . $this->adminUser->id() => $this->adminUser->getUsername(),
-    );
+    ];
     $this->assertBreadcrumb('user/' . $this->adminUser->id() . '/edit', $trail, $this->adminUser->getUsername());
 
     // Create a second user to verify breadcrumb on user pages again.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'administer users',
       'access user profiles',
-    ));
+    ]);
     $this->drupalLogin($this->webUser);
 
     // Verify correct breadcrumb and page title on another user's account pages.
     $trail = $home;
     $this->assertBreadcrumb('user/' . $this->adminUser->id(), $trail, $this->adminUser->getUsername());
-    $trail += array(
+    $trail += [
       'user/' . $this->adminUser->id() => $this->adminUser->getUsername(),
-    );
+    ];
     $this->assertBreadcrumb('user/' . $this->adminUser->id() . '/edit', $trail, $this->adminUser->getUsername());
 
     // Verify correct breadcrumb and page title when viewing own user account.
     $trail = $home;
     $this->assertBreadcrumb('user/' . $this->webUser->id(), $trail, $this->webUser->getUsername());
-    $trail += array(
+    $trail += [
       'user/' . $this->webUser->id() => $this->webUser->getUsername(),
-    );
+    ];
     $this->assertBreadcrumb('user/' . $this->webUser->id() . '/edit', $trail, $this->webUser->getUsername());
 
     // Create an only slightly privileged user being able to access site reports
     // but not administration pages.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'access site reports',
-    ));
+    ]);
     $this->drupalLogin($this->webUser);
 
     // Verify that we can access recent log entries, there is a corresponding
@@ -366,7 +366,7 @@ function testBreadCrumbs() {
     $this->assertNoResponse(403);
 
     // Since the Reports page is accessible, that will show.
-    $trail += array('admin/reports' => t('Reports'));
+    $trail += ['admin/reports' => t('Reports')];
     $this->assertBreadcrumb('admin/reports/dblog', $trail, t('Recent log messages'));
     $this->assertNoResponse(403);
 
diff --git a/core/modules/system/src/Tests/Menu/LocalActionTest.php b/core/modules/system/src/Tests/Menu/LocalActionTest.php
index 40dc744..3886cb8 100644
--- a/core/modules/system/src/Tests/Menu/LocalActionTest.php
+++ b/core/modules/system/src/Tests/Menu/LocalActionTest.php
@@ -68,9 +68,9 @@ public function testLocalAction() {
    *   A list of expected action link titles, keyed by the hrefs.
    */
   protected function assertLocalAction(array $actions) {
-    $elements = $this->xpath('//a[contains(@class, :class)]', array(
+    $elements = $this->xpath('//a[contains(@class, :class)]', [
       ':class' => 'button-action',
-    ));
+    ]);
     $index = 0;
     foreach ($actions as $action) {
       /** @var \Drupal\Core\Url $url */
diff --git a/core/modules/system/src/Tests/Menu/LocalTasksTest.php b/core/modules/system/src/Tests/Menu/LocalTasksTest.php
index 522e12b..7171d3e 100644
--- a/core/modules/system/src/Tests/Menu/LocalTasksTest.php
+++ b/core/modules/system/src/Tests/Menu/LocalTasksTest.php
@@ -48,19 +48,19 @@ protected function setUp() {
    *   secondary. Defaults to 0.
    */
   protected function assertLocalTasks(array $routes, $level = 0) {
-    $elements = $this->xpath('//*[contains(@class, :class)]//a', array(
+    $elements = $this->xpath('//*[contains(@class, :class)]//a', [
       ':class' => $level == 0 ? 'tabs primary' : 'tabs secondary',
-    ));
+    ]);
     $this->assertTrue(count($elements), 'Local tasks found.');
     foreach ($routes as $index => $route_info) {
       list($route_name, $route_parameters) = $route_info;
       $expected = Url::fromRoute($route_name, $route_parameters)->toString();
       $method = ($elements[$index]['href'] == $expected ? 'pass' : 'fail');
-      $this->{$method}(format_string('Task @number href @value equals @expected.', array(
+      $this->{$method}(format_string('Task @number href @value equals @expected.', [
         '@number' => $index + 1,
         '@value' => (string) $elements[$index]['href'],
         '@expected' => $expected,
-      )));
+      ]));
     }
   }
 
@@ -89,9 +89,9 @@ protected function assertLocalTaskAppers($title) {
    *   secondary. Defaults to 0.
    */
   protected function assertNoLocalTasks($level = 0) {
-    $elements = $this->xpath('//*[contains(@class, :class)]//a', array(
+    $elements = $this->xpath('//*[contains(@class, :class)]//a', [
       ':class' => $level == 0 ? 'tabs primary' : 'tabs secondary',
-    ));
+    ]);
     $this->assertFalse(count($elements), 'Local tasks not found.');
   }
 
@@ -176,7 +176,7 @@ public function testPluginLocalTask() {
 
     // Test that we we correctly apply the active class to tabs where one of the
     // request attributes is upcast to an entity object.
-    $entity = \Drupal::entityManager()->getStorage('entity_test')->create(array('bundle' => 'test'));
+    $entity = \Drupal::entityManager()->getStorage('entity_test')->create(['bundle' => 'test']);
     $entity->save();
 
     $this->drupalGet(Url::fromRoute('menu_test.local_task_test_upcasting_sub1', ['entity_test' => '1']));
diff --git a/core/modules/system/src/Tests/Menu/MenuRouterTest.php b/core/modules/system/src/Tests/Menu/MenuRouterTest.php
index e7328d9..521a691 100644
--- a/core/modules/system/src/Tests/Menu/MenuRouterTest.php
+++ b/core/modules/system/src/Tests/Menu/MenuRouterTest.php
@@ -82,7 +82,7 @@ protected function doTestHookMenuIntegration() {
   protected function doTestTitleCallbackFalse() {
     $this->drupalGet('test-page');
     $this->assertText('A title with @placeholder', 'Raw text found on the page');
-    $this->assertNoText(t('A title with @placeholder', array('@placeholder' => 'some other text')), 'Text with placeholder substitutions not found.');
+    $this->assertNoText(t('A title with @placeholder', ['@placeholder' => 'some other text']), 'Text with placeholder substitutions not found.');
   }
 
   /**
@@ -110,7 +110,7 @@ protected function doTestDescriptionMenuItems() {
    * Tests for menu_name parameter for default menu links.
    */
   protected function doTestMenuName() {
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
     /** @var \Drupal\Core\Menu\MenuLinkManagerInterface $menu_link_manager */
     $menu_link_manager = \Drupal::service('plugin.manager.menu.link');
@@ -179,7 +179,7 @@ protected function doTestMenuOptionalPlaceholders() {
    * Tests a menu on a router page.
    */
   protected function doTestMenuOnRoute() {
-    \Drupal::service('module_installer')->install(array('router_test'));
+    \Drupal::service('module_installer')->install(['router_test']);
     \Drupal::service('router.builder')->rebuild();
     $this->resetAll();
 
@@ -210,7 +210,7 @@ protected function doTestExoticPath() {
   public function testMaintenanceModeLoginPaths() {
     $this->container->get('state')->set('system.maintenance_mode', TRUE);
 
-    $offline_message = t('@site is currently under maintenance. We should be back shortly. Thank you for your patience.', array('@site' => $this->config('system.site')->get('name')));
+    $offline_message = t('@site is currently under maintenance. We should be back shortly. Thank you for your patience.', ['@site' => $this->config('system.site')->get('name')]);
     $this->drupalGet('test-page');
     $this->assertText($offline_message);
     $this->drupalGet('menu_login_callback');
@@ -224,7 +224,7 @@ public function testMaintenanceModeLoginPaths() {
    * 'user' and 'user/register' gets redirected to the user edit page.
    */
   public function testAuthUserUserLogin() {
-    $web_user = $this->drupalCreateUser(array());
+    $web_user = $this->drupalCreateUser([]);
     $this->drupalLogin($web_user);
 
     $this->drupalGet('user/login');
@@ -282,7 +282,7 @@ protected function doTestThemeCallbackMaintenanceMode() {
     $this->assertRaw('bartik/css/base/elements.css', "The maintenance theme's CSS appears on the page.");
 
     // An administrator, however, should continue to see the requested theme.
-    $admin_user = $this->drupalCreateUser(array('access site in maintenance mode'));
+    $admin_user = $this->drupalCreateUser(['access site in maintenance mode']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('menu-test/theme-callback/use-admin-theme');
     $this->assertText('Active theme: seven. Actual theme: seven.', 'The theme negotiation system is correctly triggered for an administrator when the site is in maintenance mode.');
@@ -302,13 +302,13 @@ protected function doTestThemeCallbackOptionalTheme() {
 
     // Now install the theme and request it again.
     $theme_handler = $this->container->get('theme_handler');
-    $theme_handler->install(array('test_theme'));
+    $theme_handler->install(['test_theme']);
 
     $this->drupalGet('menu-test/theme-callback/use-test-theme');
     $this->assertText('Active theme: test_theme. Actual theme: test_theme.', 'The theme negotiation system uses an optional theme once it has been installed.');
     $this->assertRaw('test_theme/kitten.css', "The optional theme's CSS appears on the page.");
 
-    $theme_handler->uninstall(array('test_theme'));
+    $theme_handler->uninstall(['test_theme']);
   }
 
   /**
diff --git a/core/modules/system/src/Tests/Module/DependencyTest.php b/core/modules/system/src/Tests/Module/DependencyTest.php
index 6160ef4..1e297de 100644
--- a/core/modules/system/src/Tests/Module/DependencyTest.php
+++ b/core/modules/system/src/Tests/Module/DependencyTest.php
@@ -13,16 +13,16 @@ class DependencyTest extends ModuleTestBase {
    * Checks functionality of project namespaces for dependencies.
    */
   function testProjectNamespaceForDependencies() {
-    $edit = array(
+    $edit = [
       'modules[filter][enable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     // Enable module with project namespace to ensure nothing breaks.
-    $edit = array(
+    $edit = [
       'modules[system_project_namespace_test][enable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
-    $this->assertModules(array('system_project_namespace_test'), TRUE);
+    $this->assertModules(['system_project_namespace_test'], TRUE);
   }
 
   /**
@@ -30,19 +30,19 @@ function testProjectNamespaceForDependencies() {
    */
   function testEnableWithoutDependency() {
     // Attempt to enable Content Translation without Language enabled.
-    $edit = array();
+    $edit = [];
     $edit['modules[content_translation][enable]'] = 'content_translation';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     $this->assertText(t('Some required modules must be enabled'), 'Dependency required.');
 
-    $this->assertModules(array('content_translation', 'language'), FALSE);
+    $this->assertModules(['content_translation', 'language'], FALSE);
 
     // Assert that the language tables weren't enabled.
     $this->assertTableCount('language', FALSE);
 
     $this->drupalPostForm(NULL, NULL, t('Continue'));
     $this->assertText(t('2 modules have been enabled: Content Translation, Language.'), 'Modules status has been updated.');
-    $this->assertModules(array('content_translation', 'language'), TRUE);
+    $this->assertModules(['content_translation', 'language'], TRUE);
 
     // Assert that the language YAML files were created.
     $storage = $this->container->get('config.storage');
@@ -56,7 +56,7 @@ function testMissingModules() {
     // Test that the system_dependencies_test module is marked
     // as missing a dependency.
     $this->drupalGet('admin/modules');
-    $this->assertRaw(t('@module (<span class="admin-missing">missing</span>)', array('@module' => Unicode::ucfirst('_missing_dependency'))), 'A module with missing dependencies is marked as such.');
+    $this->assertRaw(t('@module (<span class="admin-missing">missing</span>)', ['@module' => Unicode::ucfirst('_missing_dependency')]), 'A module with missing dependencies is marked as such.');
     $checkbox = $this->xpath('//input[@type="checkbox" and @disabled="disabled" and @name="modules[system_dependencies_test][enable]"]');
     $this->assert(count($checkbox) == 1, 'Checkbox for the module is disabled.');
   }
@@ -68,10 +68,10 @@ function testIncompatibleModuleVersionDependency() {
     // Test that the system_incompatible_module_version_dependencies_test is
     // marked as having an incompatible dependency.
     $this->drupalGet('admin/modules');
-    $this->assertRaw(t('@module (<span class="admin-missing">incompatible with</span> version @version)', array(
+    $this->assertRaw(t('@module (<span class="admin-missing">incompatible with</span> version @version)', [
       '@module' => 'System incompatible module version test (>2.0)',
       '@version' => '1.0',
-    )), 'A module that depends on an incompatible version of a module is marked as such.');
+    ]), 'A module that depends on an incompatible version of a module is marked as such.');
     $checkbox = $this->xpath('//input[@type="checkbox" and @disabled="disabled" and @name="modules[system_incompatible_module_version_dependencies_test][enable]"]');
     $this->assert(count($checkbox) == 1, 'Checkbox for the module is disabled.');
   }
@@ -83,9 +83,9 @@ function testIncompatibleCoreVersionDependency() {
     // Test that the system_incompatible_core_version_dependencies_test is
     // marked as having an incompatible dependency.
     $this->drupalGet('admin/modules');
-    $this->assertRaw(t('@module (<span class="admin-missing">incompatible with</span> this version of Drupal core)', array(
+    $this->assertRaw(t('@module (<span class="admin-missing">incompatible with</span> this version of Drupal core)', [
       '@module' => 'System incompatible core version test',
-    )), 'A module that depends on a module with an incompatible core version is marked as such.');
+    ]), 'A module that depends on a module with an incompatible core version is marked as such.');
     $checkbox = $this->xpath('//input[@type="checkbox" and @disabled="disabled" and @name="modules[system_incompatible_core_version_dependencies_test][enable]"]');
     $this->assert(count($checkbox) == 1, 'Checkbox for the module is disabled.');
   }
@@ -94,25 +94,25 @@ function testIncompatibleCoreVersionDependency() {
    * Tests enabling a module that depends on a module which fails hook_requirements().
    */
   function testEnableRequirementsFailureDependency() {
-    \Drupal::service('module_installer')->install(array('comment'));
+    \Drupal::service('module_installer')->install(['comment']);
 
-    $this->assertModules(array('requirements1_test'), FALSE);
-    $this->assertModules(array('requirements2_test'), FALSE);
+    $this->assertModules(['requirements1_test'], FALSE);
+    $this->assertModules(['requirements2_test'], FALSE);
 
     // Attempt to install both modules at the same time.
-    $edit = array();
+    $edit = [];
     $edit['modules[requirements1_test][enable]'] = 'requirements1_test';
     $edit['modules[requirements2_test][enable]'] = 'requirements2_test';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Makes sure the modules were NOT installed.
     $this->assertText(t('Requirements 1 Test failed requirements'), 'Modules status has been updated.');
-    $this->assertModules(array('requirements1_test'), FALSE);
-    $this->assertModules(array('requirements2_test'), FALSE);
+    $this->assertModules(['requirements1_test'], FALSE);
+    $this->assertModules(['requirements2_test'], FALSE);
 
     // Makes sure that already enabled modules the failing modules depend on
     // were not disabled.
-    $this->assertModules(array('comment'), TRUE);
+    $this->assertModules(['comment'], TRUE);
   }
 
   /**
@@ -121,21 +121,21 @@ function testEnableRequirementsFailureDependency() {
    * Dependencies should be enabled before their dependents.
    */
   function testModuleEnableOrder() {
-    \Drupal::service('module_installer')->install(array('module_test'), FALSE);
+    \Drupal::service('module_installer')->install(['module_test'], FALSE);
     $this->resetAll();
-    $this->assertModules(array('module_test'), TRUE);
+    $this->assertModules(['module_test'], TRUE);
     \Drupal::state()->set('module_test.dependency', 'dependency');
     // module_test creates a dependency chain:
     // - color depends on config
     // - config depends on help
-    $expected_order = array('help', 'config', 'color');
+    $expected_order = ['help', 'config', 'color'];
 
     // Enable the modules through the UI, verifying that the dependency chain
     // is correct.
-    $edit = array();
+    $edit = [];
     $edit['modules[color][enable]'] = 'color';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
-    $this->assertModules(array('color'), FALSE);
+    $this->assertModules(['color'], FALSE);
     // Note that dependencies are sorted alphabetically in the confirmation
     // message.
     $this->assertText(t('You must enable the Configuration Manager, Help modules to install Color.'));
@@ -143,10 +143,10 @@ function testModuleEnableOrder() {
     $edit['modules[config][enable]'] = 'config';
     $edit['modules[help][enable]'] = 'help';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
-    $this->assertModules(array('color', 'config', 'help'), TRUE);
+    $this->assertModules(['color', 'config', 'help'], TRUE);
 
     // Check the actual order which is saved by module_test_modules_enabled().
-    $module_order = \Drupal::state()->get('module_test.install_order') ?: array();
+    $module_order = \Drupal::state()->get('module_test.install_order') ?: [];
     $this->assertIdentical($module_order, $expected_order);
   }
 
@@ -155,10 +155,10 @@ function testModuleEnableOrder() {
    */
   function testUninstallDependents() {
     // Enable the forum module.
-    $edit = array('modules[forum][enable]' => 'forum');
+    $edit = ['modules[forum][enable]' => 'forum'];
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
-    $this->drupalPostForm(NULL, array(), t('Continue'));
-    $this->assertModules(array('forum'), TRUE);
+    $this->drupalPostForm(NULL, [], t('Continue'));
+    $this->assertModules(['forum'], TRUE);
 
     // Check that the comment module cannot be uninstalled.
     $this->drupalGet('admin/modules/uninstall');
@@ -176,13 +176,13 @@ function testUninstallDependents() {
     }
     // Uninstall the forum module, and check that taxonomy now can also be
     // uninstalled.
-    $edit = array('uninstall[forum]' => 'forum');
+    $edit = ['uninstall[forum]' => 'forum'];
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->drupalPostForm(NULL, NULL, t('Uninstall'));
     $this->assertText(t('The selected modules have been uninstalled.'), 'Modules status has been updated.');
 
     // Uninstall comment module.
-    $edit = array('uninstall[comment]' => 'comment');
+    $edit = ['uninstall[comment]' => 'comment'];
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->drupalPostForm(NULL, NULL, t('Uninstall'));
     $this->assertText(t('The selected modules have been uninstalled.'), 'Modules status has been updated.');
diff --git a/core/modules/system/src/Tests/Module/HookRequirementsTest.php b/core/modules/system/src/Tests/Module/HookRequirementsTest.php
index 2f4fcca..75813c6 100644
--- a/core/modules/system/src/Tests/Module/HookRequirementsTest.php
+++ b/core/modules/system/src/Tests/Module/HookRequirementsTest.php
@@ -12,16 +12,16 @@ class HookRequirementsTest extends ModuleTestBase {
    * Assert that a module cannot be installed if it fails hook_requirements().
    */
   function testHookRequirementsFailure() {
-    $this->assertModules(array('requirements1_test'), FALSE);
+    $this->assertModules(['requirements1_test'], FALSE);
 
     // Attempt to install the requirements1_test module.
-    $edit = array();
+    $edit = [];
     $edit['modules[requirements1_test][enable]'] = 'requirements1_test';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
 
     // Makes sure the module was NOT installed.
     $this->assertText(t('Requirements 1 Test failed requirements'), 'Modules status has been updated.');
-    $this->assertModules(array('requirements1_test'), FALSE);
+    $this->assertModules(['requirements1_test'], FALSE);
   }
 
 }
diff --git a/core/modules/system/src/Tests/Module/InstallUninstallTest.php b/core/modules/system/src/Tests/Module/InstallUninstallTest.php
index 3882013..f4db81e 100644
--- a/core/modules/system/src/Tests/Module/InstallUninstallTest.php
+++ b/core/modules/system/src/Tests/Module/InstallUninstallTest.php
@@ -15,7 +15,7 @@ class InstallUninstallTest extends ModuleTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('system_test', 'dblog', 'taxonomy', 'update_test_postupdate');
+  public static $modules = ['system_test', 'dblog', 'taxonomy', 'update_test_postupdate'];
 
   /**
    * Tests that a fixed set of modules can be installed and uninstalled.
@@ -27,9 +27,9 @@ public function testInstallUninstall() {
 
     // Install and uninstall module_test to ensure hook_preinstall_module and
     // hook_preuninstall_module are fired as expected.
-    $this->container->get('module_installer')->install(array('module_test'));
+    $this->container->get('module_installer')->install(['module_test']);
     $this->assertEqual($this->container->get('state')->get('system_test_preinstall_module'), 'module_test');
-    $this->container->get('module_installer')->uninstall(array('module_test'));
+    $this->container->get('module_installer')->uninstall(['module_test']);
     $this->assertEqual($this->container->get('state')->get('system_test_preuninstall_module'), 'module_test');
     $this->resetAll();
 
@@ -58,7 +58,7 @@ public function testInstallUninstall() {
     // Install the Help module, and verify it installed successfully.
     unset($all_modules['help']);
     $this->assertModuleNotInstalled('help');
-    $edit = array();
+    $edit = [];
     $edit["modules[help][enable]"] = TRUE;
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     $this->assertText('has been enabled', 'Modules status has been updated.');
@@ -76,7 +76,7 @@ public function testInstallUninstall() {
       $was_installed_list = \Drupal::moduleHandler()->getModuleList();
 
       // Start a list of modules that we expect to be installed this time.
-      $modules_to_install = array($name);
+      $modules_to_install = [$name];
       foreach (array_keys($module->requires) as $dependency) {
         if (isset($all_modules[$dependency])) {
           $modules_to_install[] = $dependency;
@@ -90,7 +90,7 @@ public function testInstallUninstall() {
       }
 
       // Install the module.
-      $edit = array();
+      $edit = [];
       $package = $module->info['package'];
       $edit['modules[' . $name . '][enable]'] = TRUE;
       $this->drupalPostForm('admin/modules', $edit, t('Install'));
@@ -104,7 +104,7 @@ public function testInstallUninstall() {
           // indicating they need to be enabled.
           $this->assertText('You must enable');
         }
-        $this->drupalPostForm(NULL, array(), t('Continue'));
+        $this->drupalPostForm(NULL, [], t('Continue'));
       }
       // Handle the case where modules were installed along with this one and
       // where we therefore hit a confirmation screen.
@@ -113,26 +113,26 @@ public function testInstallUninstall() {
         // about enabling dependencies appears.
         $this->assertText('Some required modules must be enabled');
         $this->assertText('You must enable');
-        $this->drupalPostForm(NULL, array(), t('Continue'));
+        $this->drupalPostForm(NULL, [], t('Continue'));
       }
 
       // List the module display names to check the confirmation message.
-      $module_names = array();
+      $module_names = [];
       foreach ($modules_to_install as $module_to_install) {
         $module_names[] = $all_modules[$module_to_install]->info['name'];
       }
-      $expected_text = \Drupal::translation()->formatPlural(count($module_names), 'Module @name has been enabled.', '@count modules have been enabled: @names.', array(
+      $expected_text = \Drupal::translation()->formatPlural(count($module_names), 'Module @name has been enabled.', '@count modules have been enabled: @names.', [
         '@name' => $module_names[0],
         '@names' => implode(', ', $module_names),
-      ));
+      ]);
       $this->assertText($expected_text, 'Modules status has been updated.');
 
       // Check that hook_modules_installed() was invoked with the expected list
       // of modules, that each module's database tables now exist, and that
       // appropriate messages appear in the logs.
       foreach ($modules_to_install as $module_to_install) {
-        $this->assertText(t('hook_modules_installed fired for @module', array('@module' => $module_to_install)));
-        $this->assertLogMessage('system', "%module module installed.", array('%module' => $module_to_install), RfcLogLevel::INFO);
+        $this->assertText(t('hook_modules_installed fired for @module', ['@module' => $module_to_install]));
+        $this->assertLogMessage('system', "%module module installed.", ['%module' => $module_to_install], RfcLogLevel::INFO);
         $this->assertInstallModuleUpdates($module_to_install);
         $this->assertModuleSuccessfullyInstalled($module_to_install);
       }
@@ -163,7 +163,7 @@ public function testInstallUninstall() {
             // This one is eligible for being uninstalled.
             $package = $all_modules[$to_uninstall]->info['package'];
             $this->assertSuccessfulUninstall($to_uninstall, $package);
-            $added_modules = array_diff($added_modules, array($to_uninstall));
+            $added_modules = array_diff($added_modules, [$to_uninstall]);
           }
         }
 
@@ -187,7 +187,7 @@ public function testInstallUninstall() {
     //   uninstalled.
     // - That enabling more than one module at the same time does not lead to
     //   any errors.
-    $edit = array();
+    $edit = [];
     $experimental = FALSE;
     foreach ($all_modules as $name => $module) {
       $edit['modules[' . $name . '][enable]'] = TRUE;
@@ -201,12 +201,12 @@ public function testInstallUninstall() {
     // If there are experimental modules, click the confirm form.
     if ($experimental) {
       $this->assertText('Are you sure you wish to enable experimental modules?');
-      $this->drupalPostForm(NULL, array(), t('Continue'));
+      $this->drupalPostForm(NULL, [], t('Continue'));
     }
     // The string tested here is translatable but we are only using a part of it
     // so using a translated string is wrong. Doing so would create a new string
     // to translate.
-    $this->assertText(new FormattableMarkup('@count modules have been enabled: ', array('@count' => count($all_modules))), 'Modules status has been updated.');
+    $this->assertText(new FormattableMarkup('@count modules have been enabled: ', ['@count' => count($all_modules)]), 'Modules status has been updated.');
   }
 
   /**
@@ -216,7 +216,7 @@ public function testInstallUninstall() {
    *   Name of the module to check.
    */
   protected function assertModuleNotInstalled($name) {
-    $this->assertModules(array($name), FALSE);
+    $this->assertModules([$name], FALSE);
     $this->assertModuleTablesDoNotExist($name);
   }
 
@@ -227,7 +227,7 @@ protected function assertModuleNotInstalled($name) {
    *   Name of the module to check.
    */
   protected function assertModuleSuccessfullyInstalled($name) {
-    $this->assertModules(array($name), TRUE);
+    $this->assertModules([$name], TRUE);
     $this->assertModuleTablesExist($name);
     $this->assertModuleConfig($name);
   }
@@ -242,19 +242,19 @@ protected function assertModuleSuccessfullyInstalled($name) {
    *   to 'Core'.
    */
   protected function assertSuccessfulUninstall($module, $package = 'Core') {
-    $edit = array();
+    $edit = [];
     $edit['uninstall[' . $module . ']'] = TRUE;
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->drupalPostForm(NULL, NULL, t('Uninstall'));
     $this->assertText(t('The selected modules have been uninstalled.'), 'Modules status has been updated.');
-    $this->assertModules(array($module), FALSE);
+    $this->assertModules([$module], FALSE);
 
     // Check that the appropriate hook was fired and the appropriate log
     // message appears. (But don't check for the log message if the dblog
     // module was just uninstalled, since the {watchdog} table won't be there
     // anymore.)
-    $this->assertText(t('hook_modules_uninstalled fired for @module', array('@module' => $module)));
-    $this->assertLogMessage('system', "%module module uninstalled.", array('%module' => $module), RfcLogLevel::INFO);
+    $this->assertText(t('hook_modules_uninstalled fired for @module', ['@module' => $module]));
+    $this->assertLogMessage('system', "%module module uninstalled.", ['%module' => $module], RfcLogLevel::INFO);
 
     // Check that the module's database tables no longer exist.
     $this->assertModuleTablesDoNotExist($module);
diff --git a/core/modules/system/src/Tests/Module/ModuleTestBase.php b/core/modules/system/src/Tests/Module/ModuleTestBase.php
index ccf8cd5..8d669ca 100644
--- a/core/modules/system/src/Tests/Module/ModuleTestBase.php
+++ b/core/modules/system/src/Tests/Module/ModuleTestBase.php
@@ -21,14 +21,14 @@
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   protected $adminUser;
 
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer modules'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer modules']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -45,9 +45,9 @@ function assertTableCount($base_table, $count = TRUE) {
     $tables = db_find_tables(Database::getConnection()->prefixTables('{' . $base_table . '}') . '%');
 
     if ($count) {
-      return $this->assertTrue($tables, format_string('Tables matching "@base_table" found.', array('@base_table' => $base_table)));
+      return $this->assertTrue($tables, format_string('Tables matching "@base_table" found.', ['@base_table' => $base_table]));
     }
-    return $this->assertFalse($tables, format_string('Tables matching "@base_table" not found.', array('@base_table' => $base_table)));
+    return $this->assertFalse($tables, format_string('Tables matching "@base_table" not found.', ['@base_table' => $base_table]));
   }
 
   /**
@@ -64,7 +64,7 @@ function assertModuleTablesExist($module) {
         $tables_exist = FALSE;
       }
     }
-    return $this->assertTrue($tables_exist, format_string('All database tables defined by the @module module exist.', array('@module' => $module)));
+    return $this->assertTrue($tables_exist, format_string('All database tables defined by the @module module exist.', ['@module' => $module]));
   }
 
   /**
@@ -81,7 +81,7 @@ function assertModuleTablesDoNotExist($module) {
         $tables_exist = TRUE;
       }
     }
-    return $this->assertFalse($tables_exist, format_string('None of the database tables defined by the @module module exist.', array('@module' => $module)));
+    return $this->assertFalse($tables_exist, format_string('None of the database tables defined by the @module module exist.', ['@module' => $module]));
   }
 
   /**
@@ -123,7 +123,7 @@ function assertModuleConfig($module) {
     }
     // Verify that all configuration has been installed (which means that $names
     // is empty).
-    return $this->assertFalse($names, format_string('All default configuration of @module module found.', array('@module' => $module)));
+    return $this->assertFalse($names, format_string('All default configuration of @module module found.', ['@module' => $module]));
   }
 
   /**
@@ -137,7 +137,7 @@ function assertModuleConfig($module) {
    */
   function assertNoModuleConfig($module) {
     $names = \Drupal::configFactory()->listAll($module . '.');
-    return $this->assertFalse($names, format_string('No configuration found for @module module.', array('@module' => $module)));
+    return $this->assertFalse($names, format_string('No configuration found for @module module.', ['@module' => $module]));
   }
 
   /**
@@ -157,7 +157,7 @@ function assertModules(array $modules, $enabled) {
       else {
         $message = 'Module "@module" is not enabled.';
       }
-      $this->assertEqual($this->container->get('module_handler')->moduleExists($module), $enabled, format_string($message, array('@module' => $module)));
+      $this->assertEqual($this->container->get('module_handler')->moduleExists($module), $enabled, format_string($message, ['@module' => $module]));
     }
   }
 
@@ -181,7 +181,7 @@ function assertModules(array $modules, $enabled) {
    * @param $link
    *   A link to associate with the message.
    */
-  function assertLogMessage($type, $message, $variables = array(), $severity = RfcLogLevel::NOTICE, $link = '') {
+  function assertLogMessage($type, $message, $variables = [], $severity = RfcLogLevel::NOTICE, $link = '') {
     $count = db_select('watchdog', 'w')
       ->condition('type', $type)
       ->condition('message', $message)
@@ -191,7 +191,7 @@ function assertLogMessage($type, $message, $variables = array(), $severity = Rfc
       ->countQuery()
       ->execute()
       ->fetchField();
-    $this->assertTrue($count > 0, format_string('watchdog table contains @count rows for @message', array('@count' => $count, '@message' => format_string($message, $variables))));
+    $this->assertTrue($count > 0, format_string('watchdog table contains @count rows for @message', ['@count' => $count, '@message' => format_string($message, $variables)]));
   }
 
 }
diff --git a/core/modules/system/src/Tests/Module/RequiredTest.php b/core/modules/system/src/Tests/Module/RequiredTest.php
index a1e648b..b5f1730 100644
--- a/core/modules/system/src/Tests/Module/RequiredTest.php
+++ b/core/modules/system/src/Tests/Module/RequiredTest.php
@@ -20,7 +20,7 @@ function testDisableRequired() {
       if (!empty($info['required'])) {
         $field_name = 'modules[' . $module . '][enable]';
         if (empty($info['hidden'])) {
-          $this->assertFieldByXPath("//input[@name='$field_name' and @disabled='disabled' and @checked='checked']", '', format_string('Field @name was disabled and checked.', array('@name' => $field_name)));
+          $this->assertFieldByXPath("//input[@name='$field_name' and @disabled='disabled' and @checked='checked']", '', format_string('Field @name was disabled and checked.', ['@name' => $field_name]));
         }
         else {
           $this->assertNoFieldByName($field_name);
diff --git a/core/modules/system/src/Tests/Module/VersionTest.php b/core/modules/system/src/Tests/Module/VersionTest.php
index fee684c..1e33f11 100644
--- a/core/modules/system/src/Tests/Module/VersionTest.php
+++ b/core/modules/system/src/Tests/Module/VersionTest.php
@@ -13,7 +13,7 @@ class VersionTest extends ModuleTestBase {
    * Test version dependencies.
    */
   function testModuleVersions() {
-    $dependencies = array(
+    $dependencies = [
       // Alternating between being compatible and incompatible with 8.x-2.4-beta3.
       // The first is always a compatible.
       'common_test',
@@ -43,7 +43,7 @@ function testModuleVersions() {
       'common_test (>2.4-beta2)',
       // Testing extra version. Incompatible.
       'common_test (>2.4-rc0)',
-    );
+    ];
     \Drupal::state()->set('system_test.dependencies', $dependencies);
     $n = count($dependencies);
     for ($i = 0; $i < $n; $i++) {
diff --git a/core/modules/system/src/Tests/Pager/PagerTest.php b/core/modules/system/src/Tests/Pager/PagerTest.php
index 4c13c0f..9aae6de 100644
--- a/core/modules/system/src/Tests/Pager/PagerTest.php
+++ b/core/modules/system/src/Tests/Pager/PagerTest.php
@@ -16,7 +16,7 @@ class PagerTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('dblog', 'pager_test');
+  public static $modules = ['dblog', 'pager_test'];
 
   /**
    * A user with permission to access site reports.
@@ -36,9 +36,9 @@ protected function setUp() {
       $logger->debug($this->randomString());
     }
 
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'access site reports',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -53,14 +53,14 @@ function testActiveClass() {
 
     // Verify any page but first/last.
     $current_page++;
-    $this->drupalGet('admin/reports/dblog', array('query' => array('page' => $current_page)));
+    $this->drupalGet('admin/reports/dblog', ['query' => ['page' => $current_page]]);
     $this->assertPagerItems($current_page);
 
     // Verify last page.
-    $elements = $this->xpath('//li[contains(@class, :class)]/a', array(':class' => 'pager__item--last'));
+    $elements = $this->xpath('//li[contains(@class, :class)]/a', [':class' => 'pager__item--last']);
     preg_match('@page=(\d+)@', $elements[0]['href'], $matches);
     $current_page = (int) $matches[1];
-    $this->drupalGet($GLOBALS['base_root'] . parse_url($this->getUrl())['path'] . $elements[0]['href'], array('external' => TRUE));
+    $this->drupalGet($GLOBALS['base_root'] . parse_url($this->getUrl())['path'] . $elements[0]['href'], ['external' => TRUE]);
     $this->assertPagerItems($current_page);
   }
 
@@ -75,16 +75,16 @@ protected function testPagerQueryParametersAndCacheContext() {
     $this->assertCacheContext('url.query_args');
 
     // Go to last page, the count of pager calls need to go to 1.
-    $elements = $this->xpath('//li[contains(@class, :class)]/a', array(':class' => 'pager__item--last'));
+    $elements = $this->xpath('//li[contains(@class, :class)]/a', [':class' => 'pager__item--last']);
     $this->drupalGet($this->getAbsoluteUrl($elements[0]['href']));
     $this->assertText(t('Pager calls: 1'), 'First link call to pager shows 1 calls.');
     $this->assertText('[url.query_args.pagers:0]=0.60');
     $this->assertCacheContext('url.query_args');
 
     // Go back to first page, the count of pager calls need to go to 2.
-    $elements = $this->xpath('//li[contains(@class, :class)]/a', array(':class' => 'pager__item--first'));
+    $elements = $this->xpath('//li[contains(@class, :class)]/a', [':class' => 'pager__item--first']);
     $this->drupalGet($this->getAbsoluteUrl($elements[0]['href']));
-    $this->drupalGet($GLOBALS['base_root'] . parse_url($this->getUrl())['path'] . $elements[0]['href'], array('external' => TRUE));
+    $this->drupalGet($GLOBALS['base_root'] . parse_url($this->getUrl())['path'] . $elements[0]['href'], ['external' => TRUE]);
     $this->assertText(t('Pager calls: 2'), 'Second link call to pager shows 2 calls.');
     $this->assertText('[url.query_args.pagers:0]=0.0');
     $this->assertCacheContext('url.query_args');
@@ -203,7 +203,7 @@ public function testPagerEllipsis() {
    *   The current pager page the internal browser is on.
    */
   protected function assertPagerItems($current_page) {
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Pager found.');
 
     // Make current page 1-based.
diff --git a/core/modules/system/src/Tests/Path/UrlAliasFixtures.php b/core/modules/system/src/Tests/Path/UrlAliasFixtures.php
index a527fc5..71cd736 100644
--- a/core/modules/system/src/Tests/Path/UrlAliasFixtures.php
+++ b/core/modules/system/src/Tests/Path/UrlAliasFixtures.php
@@ -47,28 +47,28 @@ public function dropTables(Connection $connection) {
    * @return array of URL alias definitions.
    */
   public function sampleUrlAliases() {
-    return array(
-      array(
+    return [
+      [
         'source' => '/node/1',
         'alias' => '/alias_for_node_1_en',
         'langcode' => 'en'
-      ),
-      array(
+      ],
+      [
         'source' => '/node/2',
         'alias' => '/alias_for_node_2_en',
         'langcode' => 'en'
-      ),
-      array(
+      ],
+      [
         'source' => '/node/1',
         'alias' => '/alias_for_node_1_fr',
         'langcode' => 'fr'
-      ),
-      array(
+      ],
+      [
         'source' => '/node/1',
         'alias' => '/alias_for_node_1_und',
         'langcode' => 'und'
-      )
-    );
+      ]
+    ];
   }
 
 
@@ -79,7 +79,7 @@ public function sampleUrlAliases() {
    *   Table definitions.
    */
   public function tableDefinition() {
-    $tables = array();
+    $tables = [];
 
     // Prime the drupal_get_filename() cache with the location of the system
     // module as its location is known and shouldn't change.
diff --git a/core/modules/system/src/Tests/Routing/MockAliasManager.php b/core/modules/system/src/Tests/Routing/MockAliasManager.php
index 7c7920f4..09f3636 100644
--- a/core/modules/system/src/Tests/Routing/MockAliasManager.php
+++ b/core/modules/system/src/Tests/Routing/MockAliasManager.php
@@ -14,21 +14,21 @@ class MockAliasManager implements AliasManagerInterface {
    *
    * @var array
    */
-  protected $aliases = array();
+  protected $aliases = [];
 
   /**
    * Array of mocked aliases. Keys are aliases, followed by language.
    *
    * @var array
    */
-  protected $systemPaths = array();
+  protected $systemPaths = [];
 
   /**
    * An index of aliases that have been requested.
    *
    * @var array
    */
-  protected $lookedUp = array();
+  protected $lookedUp = [];
 
   /**
    * The language to assume a path alias is for if not specified.
diff --git a/core/modules/system/src/Tests/Routing/MockRouteProvider.php b/core/modules/system/src/Tests/Routing/MockRouteProvider.php
index 689fc06..37f8812 100644
--- a/core/modules/system/src/Tests/Routing/MockRouteProvider.php
+++ b/core/modules/system/src/Tests/Routing/MockRouteProvider.php
@@ -43,7 +43,7 @@ public function getRouteCollectionForRequest(Request $request) {
    * {@inheritdoc}
    */
   public function getRouteByName($name) {
-    $routes = $this->getRoutesByNames(array($name));
+    $routes = $this->getRoutesByNames([$name]);
     if (empty($routes)) {
       throw new RouteNotFoundException(sprintf('Route "%s" does not exist.', $name));
     }
@@ -62,7 +62,7 @@ public function preLoadRoutes($names) {
    * {@inheritdoc}
    */
   public function getRoutesByNames($names) {
-    $routes = array();
+    $routes = [];
     foreach ($names as $name) {
       $routes[] = $this->routes->get($name);
     }
@@ -88,7 +88,7 @@ public function getAllRoutes() {
    * {@inheritdoc}
    */
   public function reset() {
-    $this->routes = array();
+    $this->routes = [];
   }
 
 }
diff --git a/core/modules/system/src/Tests/Routing/RouterTest.php b/core/modules/system/src/Tests/Routing/RouterTest.php
index 8ff5154..38d7ecb 100644
--- a/core/modules/system/src/Tests/Routing/RouterTest.php
+++ b/core/modules/system/src/Tests/Routing/RouterTest.php
@@ -21,7 +21,7 @@ class RouterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('router_test');
+  public static $modules = ['router_test'];
 
   /**
    * Confirms that our FinishResponseSubscriber logic works properly.
@@ -133,7 +133,7 @@ public function testDuplicateRoutePaths() {
    */
   public function testControllerPlaceholders() {
     // Test with 0 and a random value.
-    $values = array("0", $this->randomMachineName());
+    $values = ["0", $this->randomMachineName()];
     foreach ($values as $value) {
       $this->drupalGet('router_test/test3/' . $value);
       $this->assertResponse(200);
@@ -289,7 +289,7 @@ public function testControllerResolutionAjax() {
    * Tests that routes no longer exist for a module that has been uninstalled.
    */
   public function testRouterUninstallInstall() {
-    \Drupal::service('module_installer')->uninstall(array('router_test'));
+    \Drupal::service('module_installer')->uninstall(['router_test']);
     \Drupal::service('router.builder')->rebuild();
     try {
       \Drupal::service('router.route_provider')->getRouteByName('router_test.1');
@@ -299,7 +299,7 @@ public function testRouterUninstallInstall() {
       $this->pass('Route was delete on uninstall.');
     }
     // Install the module again.
-    \Drupal::service('module_installer')->install(array('router_test'));
+    \Drupal::service('module_installer')->install(['router_test']);
     \Drupal::service('router.builder')->rebuild();
     $route = \Drupal::service('router.route_provider')->getRouteByName('router_test.1');
     $this->assertNotNull($route, 'Route exists after module installation');
diff --git a/core/modules/system/src/Tests/Session/SessionHttpsTest.php b/core/modules/system/src/Tests/Session/SessionHttpsTest.php
index 8e25fd2..6ba70da 100644
--- a/core/modules/system/src/Tests/Session/SessionHttpsTest.php
+++ b/core/modules/system/src/Tests/Session/SessionHttpsTest.php
@@ -33,7 +33,7 @@ class SessionHttpsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('session_test');
+  public static $modules = ['session_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -50,7 +50,7 @@ protected function setUp() {
   }
 
   public function testHttpsSession() {
-    $user = $this->drupalCreateUser(array('access administration pages'));
+    $user = $this->drupalCreateUser(['access administration pages']);
 
     // Test HTTPS session handling by altering the form action to submit the
     // login form through https.php, which creates a mock HTTPS request.
@@ -58,7 +58,7 @@ public function testHttpsSession() {
 
     // Test a second concurrent session.
     $this->curlClose();
-    $this->curlCookies = array();
+    $this->curlCookies = [];
     $this->loginHttps($user);
 
     // Check secure cookie on secure page.
@@ -80,7 +80,7 @@ public function testHttpsSession() {
 
     // Verify that empty SID cannot be used on the non-secure site.
     $this->curlClose();
-    $this->curlCookies = array($this->insecureSessionName . '=');
+    $this->curlCookies = [$this->insecureSessionName . '='];
     $this->drupalGet($this->httpUrl('admin/config'));
     $this->assertResponse(403);
 
@@ -88,7 +88,7 @@ public function testHttpsSession() {
     // login form through http.php, which creates a mock HTTP request on HTTPS
     // test environments.
     $this->curlClose();
-    $this->curlCookies = array();
+    $this->curlCookies = [];
     $this->loginHttp($user);
     $this->drupalGet($this->httpUrl('admin/config'));
     $this->assertResponse(200);
@@ -97,12 +97,12 @@ public function testHttpsSession() {
 
     // Verify that empty secure SID cannot be used on the secure site.
     $this->curlClose();
-    $this->curlCookies = array($this->secureSessionName . '=');
+    $this->curlCookies = [$this->secureSessionName . '='];
     $this->drupalGet($this->httpsUrl('admin/config'));
     $this->assertResponse(403);
 
     // Clear browser cookie jar.
-    $this->cookies = array();
+    $this->cookies = [];
   }
 
   /**
@@ -117,7 +117,7 @@ protected function loginHttp(AccountInterface $account) {
     // creates a mock HTTP request on HTTPS test environments.
     $form = $this->xpath('//form[@id="user-login-form"]');
     $form[0]['action'] = $this->httpUrl('user/login');
-    $edit = array('name' => $account->getUsername(), 'pass' => $account->pass_raw);
+    $edit = ['name' => $account->getUsername(), 'pass' => $account->pass_raw];
 
     // When posting directly to the HTTP or HTTPS mock front controller, the
     // location header on the returned response is an absolute URL. That URL
@@ -148,7 +148,7 @@ protected function loginHttps(AccountInterface $account) {
     // creates a mock HTTPS request on HTTP test environments.
     $form = $this->xpath('//form[@id="user-login-form"]');
     $form[0]['action'] = $this->httpsUrl('user/login');
-    $edit = array('name' => $account->getUsername(), 'pass' => $account->pass_raw);
+    $edit = ['name' => $account->getUsername(), 'pass' => $account->pass_raw];
 
     // When posting directly to the HTTP or HTTPS mock front controller, the
     // location header on the returned response is an absolute URL. That URL
@@ -168,7 +168,7 @@ protected function loginHttps(AccountInterface $account) {
     // necessary to manually collect the session cookie and add it to the
     // curlCookies property such that it will be used on subsequent requests via
     // the HTTPS mock.
-    $this->curlCookies = array($this->secureSessionName . '=' . $this->cookies[$this->secureSessionName]['value']);
+    $this->curlCookies = [$this->secureSessionName . '=' . $this->cookies[$this->secureSessionName]['value']];
 
     // Follow the location header.
     $path = $this->getPathFromLocationHeader(TRUE);
@@ -215,9 +215,9 @@ protected function getPathFromLocationHeader($https = FALSE, $response_code = 30
    *   has the given insecure and secure session IDs.
    */
   protected function assertSessionIds($sid, $assertion_text) {
-    $args = array(
+    $args = [
       ':sid' => Crypt::hashBase64($sid),
-    );
+    ];
     return $this->assertTrue(db_query('SELECT timestamp FROM {sessions} WHERE sid = :sid', $args)->fetchField(), $assertion_text);
   }
 
diff --git a/core/modules/system/src/Tests/Session/SessionTest.php b/core/modules/system/src/Tests/Session/SessionTest.php
index 139fba5..9b2dc88 100644
--- a/core/modules/system/src/Tests/Session/SessionTest.php
+++ b/core/modules/system/src/Tests/Session/SessionTest.php
@@ -16,7 +16,7 @@ class SessionTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('session_test');
+  public static $modules = ['session_test'];
 
   protected $dumpHeaders = TRUE;
 
@@ -48,24 +48,24 @@ function testSessionSaveRegenerate() {
     $user->name = 'session_test_user';
     $user->save();
     $this->drupalGet('session-test/id');
-    $matches = array();
+    $matches = [];
     preg_match('/\s*session_id:(.*)\n/', $this->getRawContent(), $matches);
     $this->assertTrue(!empty($matches[1]), 'Found session ID before logging in.');
     $original_session = $matches[1];
 
     // We cannot use $this->drupalLogin($user); because we exit in
     // session_test_user_login() which breaks a normal assertion.
-    $edit = array(
+    $edit = [
       'name' => $user->getUsername(),
       'pass' => $user->pass_raw
-    );
+    ];
     $this->drupalPostForm('user/login', $edit, t('Log in'));
     $this->drupalGet('user');
-    $pass = $this->assertText($user->getUsername(), format_string('Found name: %name', array('%name' => $user->getUsername())), 'User login');
+    $pass = $this->assertText($user->getUsername(), format_string('Found name: %name', ['%name' => $user->getUsername()]), 'User login');
     $this->_logged_in = $pass;
 
     $this->drupalGet('session-test/id');
-    $matches = array();
+    $matches = [];
     preg_match('/\s*session_id:(.*)\n/', $this->getRawContent(), $matches);
     $this->assertTrue(!empty($matches[1]), 'Found session ID after logging in.');
     $this->assertTrue($matches[1] != $original_session, 'Session ID changed after login.');
@@ -75,7 +75,7 @@ function testSessionSaveRegenerate() {
    * Test data persistence via the session_test module callbacks.
    */
   function testDataPersistence() {
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
     // Enable sessions.
     $this->sessionReset($user->id());
 
@@ -127,7 +127,7 @@ function testDataPersistence() {
     $this->assertNoText($value_1, 'Session has persisted for an authenticated user after logging out and then back in.', 'Session');
 
     // Change session and create another user.
-    $user2 = $this->drupalCreateUser(array());
+    $user2 = $this->drupalCreateUser([]);
     $this->sessionReset($user2->id());
     $this->drupalLogin($user2);
   }
@@ -211,11 +211,11 @@ function testEmptyAnonymousSession() {
    * Test that sessions are only saved when necessary.
    */
   function testSessionWrite() {
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
     $this->drupalLogin($user);
 
     $sql = 'SELECT u.access, s.timestamp FROM {users_field_data} u INNER JOIN {sessions} s ON u.uid = s.uid WHERE u.uid = :uid';
-    $times1 = db_query($sql, array(':uid' => $user->id()))->fetchObject();
+    $times1 = db_query($sql, [':uid' => $user->id()])->fetchObject();
 
     // Before every request we sleep one second to make sure that if the session
     // is saved, its timestamp will change.
@@ -223,34 +223,34 @@ function testSessionWrite() {
     // Modify the session.
     sleep(1);
     $this->drupalGet('session-test/set/foo');
-    $times2 = db_query($sql, array(':uid' => $user->id()))->fetchObject();
+    $times2 = db_query($sql, [':uid' => $user->id()])->fetchObject();
     $this->assertEqual($times2->access, $times1->access, 'Users table was not updated.');
     $this->assertNotEqual($times2->timestamp, $times1->timestamp, 'Sessions table was updated.');
 
     // Write the same value again, i.e. do not modify the session.
     sleep(1);
     $this->drupalGet('session-test/set/foo');
-    $times3 = db_query($sql, array(':uid' => $user->id()))->fetchObject();
+    $times3 = db_query($sql, [':uid' => $user->id()])->fetchObject();
     $this->assertEqual($times3->access, $times1->access, 'Users table was not updated.');
     $this->assertEqual($times3->timestamp, $times2->timestamp, 'Sessions table was not updated.');
 
     // Do not change the session.
     sleep(1);
     $this->drupalGet('');
-    $times4 = db_query($sql, array(':uid' => $user->id()))->fetchObject();
+    $times4 = db_query($sql, [':uid' => $user->id()])->fetchObject();
     $this->assertEqual($times4->access, $times3->access, 'Users table was not updated.');
     $this->assertEqual($times4->timestamp, $times3->timestamp, 'Sessions table was not updated.');
 
     // Force updating of users and sessions table once per second.
     $this->settingsSet('session_write_interval', 0);
     // Write that value also into the test settings.php file.
-    $settings['settings']['session_write_interval'] = (object) array(
+    $settings['settings']['session_write_interval'] = (object) [
       'value' => 0,
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
     $this->drupalGet('');
-    $times5 = db_query($sql, array(':uid' => $user->id()))->fetchObject();
+    $times5 = db_query($sql, [':uid' => $user->id()])->fetchObject();
     $this->assertNotEqual($times5->access, $times4->access, 'Users table was updated.');
     $this->assertNotEqual($times5->timestamp, $times4->timestamp, 'Sessions table was updated.');
   }
@@ -259,14 +259,14 @@ function testSessionWrite() {
    * Test that empty session IDs are not allowed.
    */
   function testEmptySessionID() {
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
     $this->drupalLogin($user);
     $this->drupalGet('session-test/is-logged-in');
     $this->assertResponse(200, 'User is logged in.');
 
     // Reset the sid in {sessions} to a blank string. This may exist in the
     // wild in some cases, although we normally prevent it from happening.
-    db_query("UPDATE {sessions} SET sid = '' WHERE uid = :uid", array(':uid' => $user->id()));
+    db_query("UPDATE {sessions} SET sid = '' WHERE uid = :uid", [':uid' => $user->id()]);
     // Send a blank sid in the session cookie, and the session should no longer
     // be valid. Closing the curl handler will stop the previous session ID
     // from persisting.
diff --git a/core/modules/system/src/Tests/Session/StackSessionHandlerIntegrationTest.php b/core/modules/system/src/Tests/Session/StackSessionHandlerIntegrationTest.php
index af962fa..ac36868 100644
--- a/core/modules/system/src/Tests/Session/StackSessionHandlerIntegrationTest.php
+++ b/core/modules/system/src/Tests/Session/StackSessionHandlerIntegrationTest.php
@@ -16,7 +16,7 @@ class StackSessionHandlerIntegrationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('session_test');
+  public static $modules = ['session_test'];
 
   /**
    * Tests a request.
diff --git a/core/modules/system/src/Tests/System/AccessDeniedTest.php b/core/modules/system/src/Tests/System/AccessDeniedTest.php
index e7f17d7..f06cf1f 100644
--- a/core/modules/system/src/Tests/System/AccessDeniedTest.php
+++ b/core/modules/system/src/Tests/System/AccessDeniedTest.php
@@ -32,8 +32,8 @@ protected function setUp() {
     $this->adminUser->roles[] = 'administrator';
     $this->adminUser->save();
 
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access user profiles'));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array('access user profiles'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access user profiles']);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, ['access user profiles']);
   }
 
   function testAccessDenied() {
@@ -65,7 +65,7 @@ function testAccessDenied() {
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
 
     // Enable the user login block.
-    $block = $this->drupalPlaceBlock('user_login_block', array('id' => 'login'));
+    $block = $this->drupalPlaceBlock('user_login_block', ['id' => 'login']);
 
     // Log out and check that the user login block is shown on custom 403 pages.
     $this->drupalLogout();
@@ -94,10 +94,10 @@ function testAccessDenied() {
 
     // Check that we can log in from the 403 page.
     $this->drupalLogout();
-    $edit = array(
+    $edit = [
       'name' => $this->adminUser->getUsername(),
       'pass' => $this->adminUser->pass_raw,
-    );
+    ];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Log in'));
 
     // Check that we're still on the same page.
diff --git a/core/modules/system/src/Tests/System/AdminTest.php b/core/modules/system/src/Tests/System/AdminTest.php
index 8921ad0..222a402 100644
--- a/core/modules/system/src/Tests/System/AdminTest.php
+++ b/core/modules/system/src/Tests/System/AdminTest.php
@@ -31,7 +31,7 @@ class AdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('locale');
+  public static $modules = ['locale'];
 
   protected function setUp() {
     // testAdminPages() requires Locale module.
@@ -41,10 +41,10 @@ protected function setUp() {
     // who can only access administration pages and perform some Locale module
     // administrative tasks, but not all of them.
     $this->adminUser = $this->drupalCreateUser(array_keys(\Drupal::service('user.permissions')->getPermissions()));
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'access administration pages',
       'translate interface',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -69,11 +69,11 @@ function testAdminPages() {
     // but no links to its individual sub-configuration pages. Also verify that
     // a user with access to only some Locale module administration pages only
     // sees links to the pages they have access to.
-    $admin_list_pages = array(
+    $admin_list_pages = [
       'admin/index',
       'admin/config',
       'admin/config/regional',
-    );
+    ];
 
     foreach ($admin_list_pages as $page) {
       // For the administrator, verify that there are links to Locale's primary
@@ -125,14 +125,14 @@ protected function getTopLevelMenuLinks() {
     $parameters = new MenuTreeParameters();
     $parameters->setRoot('system.admin')->excludeRoot()->setTopLevelOnly()->onlyEnabledLinks();
     $tree = $menu_tree->load(NULL, $parameters);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:flatten'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:flatten'],
+    ];
     $tree = $menu_tree->transform($tree, $manipulators);
 
     // Transform the tree to a list of menu links.
-    $menu_links = array();
+    $menu_links = [];
     foreach ($tree as $element) {
       $menu_links[] = $element->link;
     }
@@ -151,7 +151,7 @@ function testCompactMode() {
 
     $this->drupalGet('admin/compact/on');
     $this->assertResponse(200, 'A valid page is returned after turning on compact mode.');
-    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the front page after turning on compact mode.');
+    $this->assertUrl($frontpage_url, [], 'The user is redirected to the front page after turning on compact mode.');
     $this->assertTrue($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'Compact mode turns on.');
     $this->drupalGet('admin/compact/on');
     $this->assertTrue($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'Compact mode remains on after a repeat call.');
@@ -160,7 +160,7 @@ function testCompactMode() {
 
     $this->drupalGet('admin/compact/off');
     $this->assertResponse(200, 'A valid page is returned after turning off compact mode.');
-    $this->assertUrl($frontpage_url, array(), 'The user is redirected to the front page after turning off compact mode.');
+    $this->assertUrl($frontpage_url, [], 'The user is redirected to the front page after turning off compact mode.');
     $this->assertEqual($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'deleted', 'Compact mode turns off.');
     $this->drupalGet('admin/compact/off');
     $this->assertEqual($this->cookies['Drupal.visitor.admin_compact_mode']['value'], 'deleted', 'Compact mode remains off after a repeat call.');
diff --git a/core/modules/system/src/Tests/System/CronRunTest.php b/core/modules/system/src/Tests/System/CronRunTest.php
index 26a56a3..d11a516 100644
--- a/core/modules/system/src/Tests/System/CronRunTest.php
+++ b/core/modules/system/src/Tests/System/CronRunTest.php
@@ -47,7 +47,7 @@ function testAutomatedCron() {
     // Test with a logged in user; anonymous users likely don't cause Drupal to
     // fully bootstrap, because of the internal page cache or an external
     // reverse proxy. Reuse this user for disabling cron later in the test.
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
 
     // Ensure cron does not run when a non-zero cron interval is specified and
@@ -97,7 +97,7 @@ function testCronExceptions() {
    * Make sure the cron UI reads from the state storage.
    */
   function testCronUI() {
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('admin/config/system/cron');
     // Don't use REQUEST to calculate the exact time, because that will
@@ -114,7 +114,7 @@ function testCronUI() {
    * Ensure that the manual cron run is working.
    */
   public function testManualCron() {
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('admin/reports/status/run-cron');
diff --git a/core/modules/system/src/Tests/System/DefaultMobileMetaTagsTest.php b/core/modules/system/src/Tests/System/DefaultMobileMetaTagsTest.php
index 98d82d3..3edfb7b 100644
--- a/core/modules/system/src/Tests/System/DefaultMobileMetaTagsTest.php
+++ b/core/modules/system/src/Tests/System/DefaultMobileMetaTagsTest.php
@@ -20,9 +20,9 @@ class DefaultMobileMetaTagsTest extends WebTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $this->defaultMetaTags = array(
+    $this->defaultMetaTags = [
       'viewport' => '<meta name="viewport" content="width=device-width, initial-scale=1.0" />',
-    );
+    ];
   }
 
   /**
@@ -31,7 +31,7 @@ protected function setUp() {
   public function testDefaultMetaTagsExist() {
     $this->drupalGet('');
     foreach ($this->defaultMetaTags as $name => $metatag) {
-      $this->assertRaw($metatag, SafeMarkup::format('Default Mobile meta tag "@name" displayed properly.', array('@name' => $name)), 'System');
+      $this->assertRaw($metatag, SafeMarkup::format('Default Mobile meta tag "@name" displayed properly.', ['@name' => $name]), 'System');
     }
   }
 
@@ -39,10 +39,10 @@ public function testDefaultMetaTagsExist() {
    * Verifies that the default mobile meta tags can be removed.
    */
   public function testRemovingDefaultMetaTags() {
-    \Drupal::service('module_installer')->install(array('system_module_test'));
+    \Drupal::service('module_installer')->install(['system_module_test']);
     $this->drupalGet('');
     foreach ($this->defaultMetaTags as $name => $metatag) {
-      $this->assertNoRaw($metatag, SafeMarkup::format('Default Mobile meta tag "@name" removed properly.', array('@name' => $name)), 'System');
+      $this->assertNoRaw($metatag, SafeMarkup::format('Default Mobile meta tag "@name" removed properly.', ['@name' => $name]), 'System');
     }
   }
 
diff --git a/core/modules/system/src/Tests/System/ErrorHandlerTest.php b/core/modules/system/src/Tests/System/ErrorHandlerTest.php
index 113d495..e2a7eb5 100644
--- a/core/modules/system/src/Tests/System/ErrorHandlerTest.php
+++ b/core/modules/system/src/Tests/System/ErrorHandlerTest.php
@@ -17,36 +17,36 @@ class ErrorHandlerTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('error_test');
+  public static $modules = ['error_test'];
 
   /**
    * Test the error handler.
    */
   function testErrorHandler() {
     $config = $this->config('system.logging');
-    $error_notice = array(
+    $error_notice = [
       '%type' => 'Notice',
       '@message' => 'Undefined variable: bananas',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->generateWarnings()',
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
-    $error_warning = array(
+    ];
+    $error_warning = [
       '%type' => 'Warning',
       '@message' => 'Division by zero',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->generateWarnings()',
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
-    $error_user_notice = array(
+    ];
+    $error_user_notice = [
       '%type' => 'User warning',
       '@message' => 'Drupal & awesome',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->generateWarnings()',
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
-    $fatal_error = array(
+    ];
+    $fatal_error = [
       '%type' => 'Recoverable fatal error',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
       '@message' => 'Argument 1 passed to Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}() must be of the type array, string given, called in ' . \Drupal::root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 62 and defined',
-    );
+    ];
     if (version_compare(PHP_VERSION, '7.0.0-dev') >= 0) {
       // In PHP 7, instead of a recoverable fatal error we get a TypeError.
       $fatal_error['%type'] = 'TypeError';
@@ -125,27 +125,27 @@ function testExceptionHandler() {
     // Ensure the test error log is empty before these tests.
     $this->assertNoErrorsLogged();
 
-    $error_exception = array(
+    $error_exception = [
       '%type' => 'Exception',
       '@message' => 'Drupal & awesome',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->triggerException()',
       '%line' => 56,
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
-    $error_pdo_exception = array(
+    ];
+    $error_pdo_exception = [
       '%type' => 'DatabaseExceptionWrapper',
       '@message' => 'SELECT * FROM bananas_are_awesome',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->triggerPDOException()',
       '%line' => 64,
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
-    $error_renderer_exception = array(
+    ];
+    $error_renderer_exception = [
       '%type' => 'Exception',
       '@message' => 'This is an exception that occurs during rendering',
       '%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
       '%line' => 82,
       '%file' => drupal_get_path('module', 'error_test') . '/error_test.module',
-    );
+    ];
 
     $this->drupalGet('error-test/trigger-exception');
     $this->assertTrue(strpos($this->drupalGetHeader(':status'), '500 Service unavailable (with message)'), 'Received expected HTTP status line.');
@@ -158,7 +158,7 @@ function testExceptionHandler() {
     $this->assertText($error_pdo_exception['%type'], format_string('Found %type in error page.', $error_pdo_exception));
     $this->assertText($error_pdo_exception['@message'], format_string('Found @message in error page.', $error_pdo_exception));
     $error_details = format_string('in %function (line ', $error_pdo_exception);
-    $this->assertRaw($error_details, format_string("Found '@message' in error page.", array('@message' => $error_details)));
+    $this->assertRaw($error_details, format_string("Found '@message' in error page.", ['@message' => $error_details]));
 
     $this->drupalGet('error-test/trigger-renderer-exception');
     $this->assertTrue(strpos($this->drupalGetHeader(':status'), '500 Service unavailable (with message)'), 'Received expected HTTP status line.');
@@ -185,7 +185,7 @@ function testExceptionHandler() {
    */
   function assertErrorMessage(array $error) {
     $message = new FormattableMarkup('%type: @message in %function (line ', $error);
-    $this->assertRaw($message, format_string('Found error message: @message.', array('@message' => $message)));
+    $this->assertRaw($message, format_string('Found error message: @message.', ['@message' => $message]));
   }
 
   /**
@@ -193,7 +193,7 @@ function assertErrorMessage(array $error) {
    */
   function assertNoErrorMessage(array $error) {
     $message = new FormattableMarkup('%type: @message in %function (line ', $error);
-    $this->assertNoRaw($message, format_string('Did not find error message: @message.', array('@message' => $message)));
+    $this->assertNoRaw($message, format_string('Did not find error message: @message.', ['@message' => $message]));
   }
 
   /**
diff --git a/core/modules/system/src/Tests/System/FrontPageTest.php b/core/modules/system/src/Tests/System/FrontPageTest.php
index 03666fd..f5782b7 100644
--- a/core/modules/system/src/Tests/System/FrontPageTest.php
+++ b/core/modules/system/src/Tests/System/FrontPageTest.php
@@ -17,7 +17,7 @@ class FrontPageTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'system_test', 'views');
+  public static $modules = ['node', 'system_test', 'views'];
 
   /**
    * The path to a node that is created for testing.
@@ -30,12 +30,12 @@ protected function setUp() {
     parent::setUp();
 
     // Create admin user, log in admin user, and create one node.
-    $this->drupalLogin ($this->drupalCreateUser(array(
+    $this->drupalLogin ($this->drupalCreateUser([
       'access content',
       'administer site configuration',
-    )));
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $this->nodePath = "node/" . $this->drupalCreateNode(array('promote' => 1))->id();
+    ]));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $this->nodePath = "node/" . $this->drupalCreateNode(['promote' => 1])->id();
 
     // Configure 'node' as front page.
     $this->config('system.site')->set('page.front', '/node')->save();
@@ -48,10 +48,10 @@ protected function setUp() {
    */
   public function testDrupalFrontPage() {
     // Create a promoted node to test the <title> tag on the front page view.
-    $settings = array(
+    $settings = [
       'title' => $this->randomMachineName(8),
       'promote' => 1,
-    );
+    ];
     $this->drupalCreateNode($settings);
     $this->drupalGet('');
     $this->assertTitle('Home | Drupal');
@@ -63,9 +63,9 @@ public function testDrupalFrontPage() {
     $this->assertNoText(t('On front page.'), 'Path is not the front page.');
 
     // Change the front page to an invalid path.
-    $edit = array('site_frontpage' => '/kittens');
+    $edit = ['site_frontpage' => '/kittens'];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
-    $this->assertText(t("The path '@path' is either invalid or you do not have access to it.", array('@path' => $edit['site_frontpage'])));
+    $this->assertText(t("The path '@path' is either invalid or you do not have access to it.", ['@path' => $edit['site_frontpage']]));
 
     // Change the front page to a path without a starting slash.
     $edit = ['site_frontpage' => $this->nodePath];
diff --git a/core/modules/system/src/Tests/System/HtaccessTest.php b/core/modules/system/src/Tests/System/HtaccessTest.php
index ad6e09e..fab7a37 100644
--- a/core/modules/system/src/Tests/System/HtaccessTest.php
+++ b/core/modules/system/src/Tests/System/HtaccessTest.php
@@ -16,7 +16,7 @@ class HtaccessTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'path');
+  public static $modules = ['node', 'path'];
 
   /**
    * Get an array of file paths for access testing.
diff --git a/core/modules/system/src/Tests/System/PageNotFoundTest.php b/core/modules/system/src/Tests/System/PageNotFoundTest.php
index f289f0e..d4cd861 100644
--- a/core/modules/system/src/Tests/System/PageNotFoundTest.php
+++ b/core/modules/system/src/Tests/System/PageNotFoundTest.php
@@ -26,12 +26,12 @@ protected function setUp() {
     parent::setUp();
 
     // Create an administrative user.
-    $this->adminUser = $this->drupalCreateUser(array('administer site configuration', 'link to any page'));
+    $this->adminUser = $this->drupalCreateUser(['administer site configuration', 'link to any page']);
     $this->adminUser->roles[] = 'administrator';
     $this->adminUser->save();
 
-    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, array('access user profiles'));
-    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, array('access user profiles'));
+    user_role_grant_permissions(RoleInterface::ANONYMOUS_ID, ['access user profiles']);
+    user_role_grant_permissions(RoleInterface::AUTHENTICATED_ID, ['access user profiles']);
   }
 
   function testPageNotFound() {
@@ -47,9 +47,9 @@ function testPageNotFound() {
     $this->assertRaw(SafeMarkup::format("The path '%path' has to start with a slash.", ['%path' => $edit['site_404']]));
 
     // Use a custom 404 page.
-    $edit = array(
+    $edit = [
       'site_404' => '/user/' . $this->adminUser->id(),
-    );
+    ];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
 
     $this->drupalGet($this->randomMachineName(10));
diff --git a/core/modules/system/src/Tests/System/PageTitleTest.php b/core/modules/system/src/Tests/System/PageTitleTest.php
index 848eacc..2133398 100644
--- a/core/modules/system/src/Tests/System/PageTitleTest.php
+++ b/core/modules/system/src/Tests/System/PageTitleTest.php
@@ -29,11 +29,11 @@ class PageTitleTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     $this->drupalPlaceBlock('page_title_block');
 
-    $this->contentUser = $this->drupalCreateUser(array('create page content', 'access content', 'administer themes', 'administer site configuration', 'link to any page'));
+    $this->contentUser = $this->drupalCreateUser(['create page content', 'access content', 'administer themes', 'administer site configuration', 'link to any page']);
     $this->drupalLogin($this->contentUser);
   }
 
@@ -43,10 +43,10 @@ protected function setUp() {
   function testTitleTags() {
     $title = "string with <em>HTML</em>";
     // Generate node content.
-    $edit = array(
+    $edit = [
       'title[0][value]' => '!SimpleTest! ' . $title . $this->randomMachineName(20),
       'body[0][value]' => '!SimpleTest! test body' . $this->randomMachineName(200),
-    );
+    ];
     // Create the node with HTML in the title.
     $this->drupalPostForm('node/add/page', $edit, t('Save'));
 
@@ -69,10 +69,10 @@ function testTitleXSS() {
     $slogan_filtered = Xss::filterAdmin($slogan);
 
     // Set title and slogan.
-    $edit = array(
+    $edit = [
       'site_name'    => $title,
       'site_slogan'  => $slogan,
-    );
+    ];
     $this->drupalPostForm('admin/config/system/site-information', $edit, t('Save configuration'));
 
     // Place branding block with site name and slogan into header region.
@@ -113,9 +113,9 @@ public function testRoutingTitle() {
     $this->assertEqual('Test dynamic title', (string) $result[0]);
 
     // Set some custom translated strings.
-    $this->addCustomTranslations('en', array('' => array(
+    $this->addCustomTranslations('en', ['' => [
       'Static title' => 'Static title translated'
-    )));
+    ]]);
     $this->writeCustomTranslations();
 
     // Ensure that the title got translated.
diff --git a/core/modules/system/src/Tests/System/ResponseGeneratorTest.php b/core/modules/system/src/Tests/System/ResponseGeneratorTest.php
index f54c651..6197d1d 100644
--- a/core/modules/system/src/Tests/System/ResponseGeneratorTest.php
+++ b/core/modules/system/src/Tests/System/ResponseGeneratorTest.php
@@ -16,14 +16,14 @@ class ResponseGeneratorTest extends RESTTestBase {
    *
    * @var array
    */
-  public static $modules = array('hal', 'rest', 'node', 'basic_auth');
+  public static $modules = ['hal', 'rest', 'node', 'basic_auth'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     $permissions = $this->entityPermissions('node', 'view');
     $account = $this->drupalCreateUser($permissions);
diff --git a/core/modules/system/src/Tests/System/ShutdownFunctionsTest.php b/core/modules/system/src/Tests/System/ShutdownFunctionsTest.php
index 99839ab..3a6b3db 100644
--- a/core/modules/system/src/Tests/System/ShutdownFunctionsTest.php
+++ b/core/modules/system/src/Tests/System/ShutdownFunctionsTest.php
@@ -16,7 +16,7 @@ class ShutdownFunctionsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   protected function tearDown() {
     // This test intentionally throws an exception in a PHP shutdown function.
@@ -42,8 +42,8 @@ function testShutdownFunctions() {
       // We need to wait to ensure that the shutdown functions have fired.
       sleep(1);
     }
-    $this->assertEqual(\Drupal::state()->get('_system_test_first_shutdown_function'), array($arg1, $arg2));
-    $this->assertEqual(\Drupal::state()->get('_system_test_second_shutdown_function'), array($arg1, $arg2));
+    $this->assertEqual(\Drupal::state()->get('_system_test_first_shutdown_function'), [$arg1, $arg2]);
+    $this->assertEqual(\Drupal::state()->get('_system_test_second_shutdown_function'), [$arg1, $arg2]);
 
     if (!$server_using_fastcgi) {
       // Make sure exceptions displayed through
diff --git a/core/modules/system/src/Tests/System/SiteMaintenanceTest.php b/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
index 84e3492..7f95592 100644
--- a/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
+++ b/core/modules/system/src/Tests/System/SiteMaintenanceTest.php
@@ -17,7 +17,7 @@ class SiteMaintenanceTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   protected $adminUser;
 
@@ -29,9 +29,9 @@ protected function setUp() {
     $this->config('system.performance')->set('js.preprocess', 1)->save();
 
     // Create a user allowed to access site in maintenance mode.
-    $this->user = $this->drupalCreateUser(array('access site in maintenance mode'));
+    $this->user = $this->drupalCreateUser(['access site in maintenance mode']);
     // Create an administrative user.
-    $this->adminUser = $this->drupalCreateUser(array('administer site configuration', 'access site in maintenance mode'));
+    $this->adminUser = $this->drupalCreateUser(['administer site configuration', 'access site in maintenance mode']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -44,27 +44,27 @@ protected function testSiteMaintenance() {
     $permission_handler = $this->container->get('user.permissions');
     $permissions = $permission_handler->getPermissions();
     $permission_label = $permissions['access site in maintenance mode']['title'];
-    $permission_message = t('Visitors will only see the maintenance mode message. Only users with the "@permission-label" <a href=":permissions-url">permission</a> will be able to access the site. Authorized users can log in directly via the <a href=":user-login">user login</a> page.', array('@permission-label' => $permission_label, ':permissions-url' => \Drupal::url('user.admin_permissions'), ':user-login' => \Drupal::url('user.login')));
+    $permission_message = t('Visitors will only see the maintenance mode message. Only users with the "@permission-label" <a href=":permissions-url">permission</a> will be able to access the site. Authorized users can log in directly via the <a href=":user-login">user login</a> page.', ['@permission-label' => $permission_label, ':permissions-url' => \Drupal::url('user.admin_permissions'), ':user-login' => \Drupal::url('user.login')]);
     $this->drupalGet(Url::fromRoute('system.site_maintenance_mode'));
     $this->assertRaw($permission_message, 'Found the permission message.');
 
     $this->drupalGet(Url::fromRoute('user.page'));
     // JS should be aggregated, so drupal.js is not in the page source.
-    $links = $this->xpath('//script[contains(@src, :href)]', array(':href' => '/core/misc/drupal.js'));
+    $links = $this->xpath('//script[contains(@src, :href)]', [':href' => '/core/misc/drupal.js']);
     $this->assertFalse(isset($links[0]), 'script /core/misc/drupal.js not in page');
     // Turn on maintenance mode.
-    $edit = array(
+    $edit = [
       'maintenance_mode' => 1,
-    );
+    ];
     $this->drupalPostForm('admin/config/development/maintenance', $edit, t('Save configuration'));
 
-    $admin_message = t('Operating in maintenance mode. <a href=":url">Go online.</a>', array(':url' => \Drupal::url('system.site_maintenance_mode')));
+    $admin_message = t('Operating in maintenance mode. <a href=":url">Go online.</a>', [':url' => \Drupal::url('system.site_maintenance_mode')]);
     $user_message = t('Operating in maintenance mode.');
-    $offline_message = t('@site is currently under maintenance. We should be back shortly. Thank you for your patience.', array('@site' => $this->config('system.site')->get('name')));
+    $offline_message = t('@site is currently under maintenance. We should be back shortly. Thank you for your patience.', ['@site' => $this->config('system.site')->get('name')]);
 
     $this->drupalGet(Url::fromRoute('user.page'));
     // JS should not be aggregated, so drupal.js is expected in the page source.
-    $links = $this->xpath('//script[contains(@src, :href)]', array(':href' => '/core/misc/drupal.js'));
+    $links = $this->xpath('//script[contains(@src, :href)]', [':href' => '/core/misc/drupal.js']);
     $this->assertTrue(isset($links[0]), 'script /core/misc/drupal.js in page');
     $this->assertRaw($admin_message, 'Found the site maintenance mode message.');
 
@@ -88,10 +88,10 @@ protected function testSiteMaintenance() {
 
     // Log in user and verify that maintenance mode message is displayed
     // directly after login.
-    $edit = array(
+    $edit = [
       'name' => $this->user->getUsername(),
       'pass' => $this->user->pass_raw,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Log in'));
     $this->assertText($user_message);
 
@@ -102,9 +102,9 @@ protected function testSiteMaintenance() {
     $this->assertNoRaw($admin_message, 'Site maintenance mode message not displayed.');
 
     $offline_message = 'Sorry, not online.';
-    $edit = array(
+    $edit = [
       'maintenance_mode_message' => $offline_message,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save configuration'));
 
     // Logout and verify that custom site offline message is displayed.
@@ -118,20 +118,20 @@ protected function testSiteMaintenance() {
     $this->assertText(t('Username or email address'), 'Anonymous users can access user/password');
 
     // Submit password reset form.
-    $edit = array(
+    $edit = [
       'name' => $this->user->getUsername(),
-    );
+    ];
     $this->drupalPostForm('user/password', $edit, t('Submit'));
     $mails = $this->drupalGetMails();
     $start = strpos($mails[0]['body'], 'user/reset/' . $this->user->id());
     $path = substr($mails[0]['body'], $start, 66 + strlen($this->user->id()));
 
     // Log in with temporary login link.
-    $this->drupalPostForm($path, array(), t('Log in'));
+    $this->drupalPostForm($path, [], t('Log in'));
     $this->assertText($user_message);
 
     // Regression test to check if title displays in Bartik on maintenance page.
-    \Drupal::service('theme_handler')->install(array('bartik'));
+    \Drupal::service('theme_handler')->install(['bartik']);
     $this->config('system.theme')->set('default', 'bartik')->save();
 
     // Logout and verify that offline message is displayed in Bartik.
diff --git a/core/modules/system/src/Tests/System/SystemConfigFormTestBase.php b/core/modules/system/src/Tests/System/SystemConfigFormTestBase.php
index 08f741d..a14fd31 100644
--- a/core/modules/system/src/Tests/System/SystemConfigFormTestBase.php
+++ b/core/modules/system/src/Tests/System/SystemConfigFormTestBase.php
@@ -43,7 +43,7 @@
    */
   public function testConfigForm() {
     // Programmatically submit the given values.
-    $values = array();
+    $values = [];
     foreach ($this->values as $form_key => $data) {
       $values[$form_key] = $data['#value'];
     }
@@ -53,10 +53,10 @@ public function testConfigForm() {
     // Check that the form returns an error when expected, and vice versa.
     $errors = $form_state->getErrors();
     $valid_form = empty($errors);
-    $args = array(
+    $args = [
       '%values' => print_r($values, TRUE),
       '%errors' => $valid_form ? t('None') : implode(' ', $errors),
-    );
+    ];
     $this->assertTrue($valid_form, format_string('Input values: %values<br/>Validation handler errors: %errors', $args));
 
     foreach ($this->values as $data) {
diff --git a/core/modules/system/src/Tests/System/ThemeTest.php b/core/modules/system/src/Tests/System/ThemeTest.php
index 667c97a..b75ede9 100644
--- a/core/modules/system/src/Tests/System/ThemeTest.php
+++ b/core/modules/system/src/Tests/System/ThemeTest.php
@@ -30,9 +30,9 @@ class ThemeTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'view the administration theme', 'administer themes', 'bypass node access', 'administer blocks'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'view the administration theme', 'administer themes', 'bypass node access', 'administer blocks']);
     $this->drupalLogin($this->adminUser);
     $this->node = $this->drupalCreateNode();
     $this->drupalPlaceBlock('local_tasks_block');
@@ -53,50 +53,50 @@ function testThemeSettings() {
 
     // Specify a filesystem path to be used for the logo.
     $file = current($this->drupalGetTestFiles('image'));
-    $file_relative = strtr($file->uri, array('public:/' => PublicStream::basePath()));
+    $file_relative = strtr($file->uri, ['public:/' => PublicStream::basePath()]);
     $default_theme_path = 'core/themes/classy';
 
-    $supported_paths = array(
+    $supported_paths = [
       // Raw stream wrapper URI.
-      $file->uri => array(
+      $file->uri => [
         'form' => file_uri_target($file->uri),
         'src' => file_url_transform_relative(file_create_url($file->uri)),
-      ),
+      ],
       // Relative path within the public filesystem.
-      file_uri_target($file->uri) => array(
+      file_uri_target($file->uri) => [
         'form' => file_uri_target($file->uri),
         'src' => file_url_transform_relative(file_create_url($file->uri)),
-      ),
+      ],
       // Relative path to a public file.
-      $file_relative => array(
+      $file_relative => [
         'form' => $file_relative,
         'src' => file_url_transform_relative(file_create_url($file->uri)),
-      ),
+      ],
       // Relative path to an arbitrary file.
-      'core/misc/druplicon.png' => array(
+      'core/misc/druplicon.png' => [
         'form' => 'core/misc/druplicon.png',
         'src' => base_path() . 'core/misc/druplicon.png',
-      ),
+      ],
       // Relative path to a file in a theme.
-      $default_theme_path . '/logo.svg' => array(
+      $default_theme_path . '/logo.svg' => [
         'form' => $default_theme_path . '/logo.svg',
         'src' => base_path() . $default_theme_path . '/logo.svg',
-      ),
-    );
+      ],
+    ];
     foreach ($supported_paths as $input => $expected) {
-      $edit = array(
+      $edit = [
         'default_logo' => FALSE,
         'logo_path' => $input,
-      );
+      ];
       $this->drupalPostForm('admin/appearance/settings', $edit, t('Save configuration'));
       $this->assertNoText('The custom logo path is invalid.');
       $this->assertFieldByName('logo_path', $expected['form']);
 
       // Verify logo path examples.
-      $elements = $this->xpath('//div[contains(@class, :item)]/div[@class=:description]/code', array(
+      $elements = $this->xpath('//div[contains(@class, :item)]/div[@class=:description]/code', [
         ':item' => 'js-form-item-logo-path',
         ':description' => 'description',
-      ));
+      ]);
       // Expected default values (if all else fails).
       $implicit_public_file = 'logo.svg';
       $explicit_file = 'public://logo.svg';
@@ -105,7 +105,7 @@ function testThemeSettings() {
       if (file_uri_scheme($input) == 'public') {
         $implicit_public_file = file_uri_target($input);
         $explicit_file = $input;
-        $local_file = strtr($input, array('public:/' => PublicStream::basePath()));
+        $local_file = strtr($input, ['public:/' => PublicStream::basePath()]);
       }
       // Adjust for fully qualified stream wrapper URI elsewhere.
       elseif (file_uri_scheme($input) !== FALSE) {
@@ -125,13 +125,13 @@ function testThemeSettings() {
       // branding block.
       $this->drupalPlaceBlock('system_branding_block', ['region' => 'header']);
       $this->drupalGet('');
-      $elements = $this->xpath('//header//a[@rel=:rel]/img', array(
+      $elements = $this->xpath('//header//a[@rel=:rel]/img', [
           ':rel' => 'home',
-        )
+        ]
       );
       $this->assertEqual((string) $elements[0]['src'], $expected['src']);
     }
-    $unsupported_paths = array(
+    $unsupported_paths = [
       // Stream wrapper URI to non-existing file.
       'public://whatever.png',
       'private://whatever.png',
@@ -153,23 +153,23 @@ function testThemeSettings() {
       '/core/misc/whatever.png',
       // Absolute paths to any local file (even if it exists).
       drupal_realpath($file->uri),
-    );
+    ];
     $this->drupalGet('admin/appearance/settings');
     foreach ($unsupported_paths as $path) {
-      $edit = array(
+      $edit = [
         'default_logo' => FALSE,
         'logo_path' => $path,
-      );
+      ];
       $this->drupalPostForm(NULL, $edit, t('Save configuration'));
       $this->assertText('The custom logo path is invalid.');
     }
 
     // Upload a file to use for the logo.
-    $edit = array(
+    $edit = [
       'default_logo' => FALSE,
       'logo_path' => '',
       'files[logo_upload]' => drupal_realpath($file->uri),
-    );
+    ];
     $this->drupalPostForm('admin/appearance/settings', $edit, t('Save configuration'));
 
     $fields = $this->xpath($this->constructFieldXpath('name', 'logo_path'));
@@ -177,13 +177,13 @@ function testThemeSettings() {
 
     $this->drupalPlaceBlock('system_branding_block', ['region' => 'header']);
     $this->drupalGet('');
-    $elements = $this->xpath('//header//a[@rel=:rel]/img', array(
+    $elements = $this->xpath('//header//a[@rel=:rel]/img', [
         ':rel' => 'home',
-      )
+      ]
     );
     $this->assertEqual($elements[0]['src'], file_url_transform_relative(file_create_url($uploaded_filename)));
 
-    $this->container->get('theme_handler')->install(array('bartik'));
+    $this->container->get('theme_handler')->install(['bartik']);
 
     // Ensure only valid themes are listed in the local tasks.
     $this->drupalPlaceBlock('local_tasks_block', ['region' => 'header']);
@@ -242,13 +242,13 @@ function testThemeSettingsLogo() {
    * Test the administration theme functionality.
    */
   function testAdministrationTheme() {
-    $this->container->get('theme_handler')->install(array('seven'));
+    $this->container->get('theme_handler')->install(['seven']);
 
     // Install an administration theme and show it on the node admin pages.
-    $edit = array(
+    $edit = [
       'admin_theme' => 'seven',
       'use_admin_theme' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
 
     $this->drupalGet('admin/config');
@@ -264,9 +264,9 @@ function testAdministrationTheme() {
     $this->assertRaw('core/themes/seven', 'Administration theme used on the edit content page.');
 
     // Disable the admin theme on the node admin pages.
-    $edit = array(
+    $edit = [
       'use_admin_theme' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
 
     $this->drupalGet('admin/config');
@@ -284,10 +284,10 @@ function testAdministrationTheme() {
     $this->assertRaw('core/themes/classy', 'Site default theme used on the add content page.');
 
     // Reset to the default theme settings.
-    $edit = array(
+    $edit = [
       'admin_theme' => '0',
       'use_admin_theme' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
 
     $this->drupalGet('admin');
@@ -304,11 +304,11 @@ function testSwitchDefaultTheme() {
     /** @var \Drupal\Core\Extension\ThemeHandlerInterface $theme_handler */
     $theme_handler = \Drupal::service('theme_handler');
     // First, install Stark and set it as the default theme programmatically.
-    $theme_handler->install(array('stark'));
+    $theme_handler->install(['stark']);
     $this->config('system.theme')->set('default', 'stark')->save();
 
     // Install Bartik and set it as the default theme.
-    $theme_handler->install(array('bartik'));
+    $theme_handler->install(['bartik']);
     $this->drupalGet('admin/appearance');
     $this->clickLink(t('Set as default'));
     $this->assertEqual($this->config('system.theme')->get('default'), 'bartik');
@@ -332,13 +332,13 @@ function testSwitchDefaultTheme() {
    */
   function testInvalidTheme() {
     // theme_page_test_system_info_alter() un-hides all hidden themes.
-    $this->container->get('module_installer')->install(array('theme_page_test'));
+    $this->container->get('module_installer')->install(['theme_page_test']);
     // Clear the system_list() and theme listing cache to pick up the change.
     $this->container->get('theme_handler')->reset();
     $this->drupalGet('admin/appearance');
-    $this->assertText(t('This theme requires the base theme @base_theme to operate correctly.', array('@base_theme' => 'not_real_test_basetheme')));
-    $this->assertText(t('This theme requires the base theme @base_theme to operate correctly.', array('@base_theme' => 'test_invalid_basetheme')));
-    $this->assertText(t('This theme requires the theme engine @theme_engine to operate correctly.', array('@theme_engine' => 'not_real_engine')));
+    $this->assertText(t('This theme requires the base theme @base_theme to operate correctly.', ['@base_theme' => 'not_real_test_basetheme']));
+    $this->assertText(t('This theme requires the base theme @base_theme to operate correctly.', ['@base_theme' => 'test_invalid_basetheme']));
+    $this->assertText(t('This theme requires the theme engine @theme_engine to operate correctly.', ['@theme_engine' => 'not_real_engine']));
     // Check for the error text of a theme with the wrong core version.
     $this->assertText("This theme is not compatible with Drupal 8.x. Check that the .info.yml file contains the correct 'core' value.");
     // Check for the error text of a theme without a content region.
@@ -350,13 +350,13 @@ function testInvalidTheme() {
    */
   function testUninstallingThemes() {
     // Install Bartik and set it as the default theme.
-    \Drupal::service('theme_handler')->install(array('bartik'));
+    \Drupal::service('theme_handler')->install(['bartik']);
     // Set up seven as the admin theme.
-    \Drupal::service('theme_handler')->install(array('seven'));
-    $edit = array(
+    \Drupal::service('theme_handler')->install(['seven']);
+    $edit = [
       'admin_theme' => 'seven',
       'use_admin_theme' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
     $this->drupalGet('admin/appearance');
     $this->clickLink(t('Set as default'));
@@ -370,12 +370,12 @@ function testUninstallingThemes() {
     $this->assertNoRaw('Uninstall Classy theme', 'A link to uninstall the Classy theme does not appear on the theme settings page.');
 
     // Install Stark and set it as the default theme.
-    \Drupal::service('theme_handler')->install(array('stark'));
+    \Drupal::service('theme_handler')->install(['stark']);
 
-    $edit = array(
+    $edit = [
       'admin_theme' => 'stark',
       'use_admin_theme' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/appearance', $edit, t('Save configuration'));
 
     // Check that seven can be uninstalled now.
diff --git a/core/modules/system/src/Tests/System/UncaughtExceptionTest.php b/core/modules/system/src/Tests/System/UncaughtExceptionTest.php
index c3ef82d..b66837e 100644
--- a/core/modules/system/src/Tests/System/UncaughtExceptionTest.php
+++ b/core/modules/system/src/Tests/System/UncaughtExceptionTest.php
@@ -24,7 +24,7 @@ class UncaughtExceptionTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('error_service_test');
+  public static $modules = ['error_service_test'];
 
   /**
    * {@inheritdoc}
@@ -224,14 +224,14 @@ public function testLostDatabaseConnection() {
 
     // We simulate a broken database connection by rewrite settings.php to no
     // longer have the proper data.
-    $settings['databases']['default']['default']['username'] = (object) array(
+    $settings['databases']['default']['default']['username'] = (object) [
       'value' => $incorrect_username,
       'required' => TRUE,
-    );
-    $settings['databases']['default']['default']['password'] = (object) array(
+    ];
+    $settings['databases']['default']['default']['password'] = (object) [
       'value' => $this->randomMachineName(16),
       'required' => TRUE,
-    );
+    ];
 
     $this->writeSettings($settings);
 
diff --git a/core/modules/system/src/Tests/Theme/EngineTwigTest.php b/core/modules/system/src/Tests/Theme/EngineTwigTest.php
index 58661d1..9327c94 100644
--- a/core/modules/system/src/Tests/Theme/EngineTwigTest.php
+++ b/core/modules/system/src/Tests/Theme/EngineTwigTest.php
@@ -18,11 +18,11 @@ class EngineTwigTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test', 'twig_theme_test');
+  public static $modules = ['theme_test', 'twig_theme_test'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
   }
 
   /**
@@ -45,13 +45,13 @@ public function testTwigUrlGenerator() {
     $this->drupalGet('twig-theme-test/url-generator');
     // Find the absolute URL of the current site.
     $url_generator = $this->container->get('url_generator');
-    $expected = array(
+    $expected = [
       'path (as route) not absolute: ' . $url_generator->generateFromRoute('user.register'),
-      'url (as route) absolute: ' . $url_generator->generateFromRoute('user.register', array(), array('absolute' => TRUE)),
-      'path (as route) not absolute with fragment: ' . $url_generator->generateFromRoute('user.register', array(), array('fragment' => 'bottom')),
-      'url (as route) absolute despite option: ' . $url_generator->generateFromRoute('user.register', array(), array('absolute' => TRUE)),
-      'url (as route) absolute with fragment: ' . $url_generator->generateFromRoute('user.register', array(), array('absolute' => TRUE, 'fragment' => 'bottom')),
-    );
+      'url (as route) absolute: ' . $url_generator->generateFromRoute('user.register', [], ['absolute' => TRUE]),
+      'path (as route) not absolute with fragment: ' . $url_generator->generateFromRoute('user.register', [], ['fragment' => 'bottom']),
+      'url (as route) absolute despite option: ' . $url_generator->generateFromRoute('user.register', [], ['absolute' => TRUE]),
+      'url (as route) absolute with fragment: ' . $url_generator->generateFromRoute('user.register', [], ['absolute' => TRUE, 'fragment' => 'bottom']),
+    ];
 
     // Verify that url() has the ability to bubble cacheability metadata:
     // absolute URLs should bubble the 'url.site' cache context. (This only
diff --git a/core/modules/system/src/Tests/Theme/EntityFilteringThemeTest.php b/core/modules/system/src/Tests/Theme/EntityFilteringThemeTest.php
index 2e55df8..f7ebd71 100644
--- a/core/modules/system/src/Tests/Theme/EntityFilteringThemeTest.php
+++ b/core/modules/system/src/Tests/Theme/EntityFilteringThemeTest.php
@@ -85,7 +85,7 @@ protected function setUp() {
     \Drupal::service('theme_handler')->install(array_keys($this->themes));
 
     // Create a test user.
-    $this->user = $this->drupalCreateUser(array('access content', 'access user profiles'));
+    $this->user = $this->drupalCreateUser(['access content', 'access user profiles']);
     $this->user->name = $this->xssLabel;
     $this->user->save();
     $this->drupalLogin($this->user);
@@ -100,22 +100,22 @@ protected function setUp() {
     // Add a comment field.
     $this->addDefaultCommentField('node', 'article', 'comment', CommentItemInterface::OPEN);
     // Create a test node tagged with the test term.
-    $this->node = $this->drupalCreateNode(array(
+    $this->node = $this->drupalCreateNode([
       'title' => $this->xssLabel,
       'type' => 'article',
       'promote' => NodeInterface::PROMOTED,
-      'field_tags' => array(array('target_id' => $this->term->id())),
-    ));
+      'field_tags' => [['target_id' => $this->term->id()]],
+    ]);
 
     // Create a test comment on the test node.
-    $this->comment = Comment::create(array(
+    $this->comment = Comment::create([
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
       'subject' => $this->xssLabel,
-      'comment_body' => array($this->randomMachineName()),
-    ));
+      'comment_body' => [$this->randomMachineName()],
+    ]);
     $this->comment->save();
   }
 
@@ -124,12 +124,12 @@ protected function setUp() {
    */
   function testThemedEntity() {
     // Check paths where various view modes of the entities are rendered.
-    $paths = array(
+    $paths = [
       'user',
       'node',
       'node/' . $this->node->id(),
       'taxonomy/term/' . $this->term->id(),
-    );
+    ];
 
     // Check each path in all available themes.
     foreach ($this->themes as $name => $theme) {
diff --git a/core/modules/system/src/Tests/Theme/FunctionsTest.php b/core/modules/system/src/Tests/Theme/FunctionsTest.php
index fa5a2ac..a8fec41 100644
--- a/core/modules/system/src/Tests/Theme/FunctionsTest.php
+++ b/core/modules/system/src/Tests/Theme/FunctionsTest.php
@@ -21,117 +21,117 @@ class FunctionsTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('router_test');
+  public static $modules = ['router_test'];
 
   /**
    * Tests item-list.html.twig.
    */
   function testItemList() {
     // Verify that empty items produce no output.
-    $variables = array();
+    $variables = [];
     $expected = '';
     $this->assertThemeOutput('item_list', $variables, $expected, 'Empty %callback generates no output.');
 
     // Verify that empty items with title produce no output.
-    $variables = array();
+    $variables = [];
     $variables['title'] = 'Some title';
     $expected = '';
     $this->assertThemeOutput('item_list', $variables, $expected, 'Empty %callback with title generates no output.');
 
     // Verify that empty items produce the empty string.
-    $variables = array();
+    $variables = [];
     $variables['empty'] = 'No items found.';
     $expected = '<div class="item-list">No items found.</div>';
     $this->assertThemeOutput('item_list', $variables, $expected, 'Empty %callback generates empty string.');
 
     // Verify that empty items produce the empty string with title.
-    $variables = array();
+    $variables = [];
     $variables['title'] = 'Some title';
     $variables['empty'] = 'No items found.';
     $expected = '<div class="item-list"><h3>Some title</h3>No items found.</div>';
     $this->assertThemeOutput('item_list', $variables, $expected, 'Empty %callback generates empty string with title.');
 
     // Verify that title set to 0 is output.
-    $variables = array();
+    $variables = [];
     $variables['title'] = 0;
     $variables['empty'] = 'No items found.';
     $expected = '<div class="item-list"><h3>0</h3>No items found.</div>';
     $this->assertThemeOutput('item_list', $variables, $expected, '%callback with title set to 0 generates a title.');
 
     // Verify that title set to a render array is output.
-    $variables = array();
-    $variables['title'] = array(
+    $variables = [];
+    $variables['title'] = [
       '#markup' => '<span>Render array</span>',
-    );
+    ];
     $variables['empty'] = 'No items found.';
     $expected = '<div class="item-list"><h3><span>Render array</span></h3>No items found.</div>';
     $this->assertThemeOutput('item_list', $variables, $expected, '%callback with title set to a render array generates a title.');
 
     // Verify that empty text is not displayed when there are list items.
-    $variables = array();
+    $variables = [];
     $variables['title'] = 'Some title';
     $variables['empty'] = 'No items found.';
-    $variables['items'] = array('Un', 'Deux', 'Trois');
+    $variables['items'] = ['Un', 'Deux', 'Trois'];
     $expected = '<div class="item-list"><h3>Some title</h3><ul><li>Un</li><li>Deux</li><li>Trois</li></ul></div>';
     $this->assertThemeOutput('item_list', $variables, $expected, '%callback does not print empty text when there are list items.');
 
     // Verify nested item lists.
-    $variables = array();
+    $variables = [];
     $variables['title'] = 'Some title';
-    $variables['attributes'] = array(
+    $variables['attributes'] = [
       'id' => 'parentlist',
-    );
-    $variables['items'] = array(
+    ];
+    $variables['items'] = [
       // A plain string value forms an own item.
       'a',
       // Items can be fully-fledged render arrays with their own attributes.
-      array(
-        '#wrapper_attributes' => array(
+      [
+        '#wrapper_attributes' => [
           'id' => 'item-id-b',
-        ),
+        ],
         '#markup' => 'b',
-        'childlist' => array(
+        'childlist' => [
           '#theme' => 'item_list',
-          '#attributes' => array('id' => 'blist'),
+          '#attributes' => ['id' => 'blist'],
           '#list_type' => 'ol',
-          '#items' => array(
+          '#items' => [
             'ba',
-            array(
+            [
               '#markup' => 'bb',
-              '#wrapper_attributes' => array('class' => array('item-class-bb')),
-            ),
-          ),
-        ),
-      ),
+              '#wrapper_attributes' => ['class' => ['item-class-bb']],
+            ],
+          ],
+        ],
+      ],
       // However, items can also be child #items.
-      array(
+      [
         '#markup' => 'c',
-        'childlist' => array(
-          '#attributes' => array('id' => 'clist'),
+        'childlist' => [
+          '#attributes' => ['id' => 'clist'],
           'ca',
-          array(
+          [
             '#markup' => 'cb',
-            '#wrapper_attributes' => array('class' => array('item-class-cb')),
-            'children' => array(
+            '#wrapper_attributes' => ['class' => ['item-class-cb']],
+            'children' => [
               'cba',
               'cbb',
-            ),
-          ),
+            ],
+          ],
           'cc',
-        ),
-      ),
+        ],
+      ],
       // Use #markup to be able to specify #wrapper_attributes.
-      array(
+      [
         '#markup' => 'd',
-        '#wrapper_attributes' => array('id' => 'item-id-d'),
-      ),
+        '#wrapper_attributes' => ['id' => 'item-id-d'],
+      ],
       // An empty item with attributes.
-      array(
-        '#wrapper_attributes' => array('id' => 'item-id-e'),
-      ),
+      [
+        '#wrapper_attributes' => ['id' => 'item-id-e'],
+      ],
       // Lastly, another plain string item.
       'f',
-    );
+    ];
 
     $inner_b = '<div class="item-list"><ol id="blist">';
     $inner_b .= '<li>ba</li>';
@@ -171,47 +171,47 @@ function testLinks() {
     // \Drupal\Core\Utility\LinkGeneratorInterface::generate() method to compare
     // the active link correctly.
     $original_query = \Drupal::request()->query->all();
-    \Drupal::request()->query->replace(array());
+    \Drupal::request()->query->replace([]);
     // Verify that empty variables produce no output.
-    $variables = array();
+    $variables = [];
     $expected = '';
     $this->assertThemeOutput('links', $variables, $expected, 'Empty %callback generates no output.');
 
-    $variables = array();
+    $variables = [];
     $variables['heading'] = 'Some title';
     $expected = '';
     $this->assertThemeOutput('links', $variables, $expected, 'Empty %callback with heading generates no output.');
 
     // Verify that a list of links is properly rendered.
-    $variables = array();
-    $variables['attributes'] = array('id' => 'somelinks');
-    $variables['links'] = array(
-      'a link' => array(
+    $variables = [];
+    $variables['attributes'] = ['id' => 'somelinks'];
+    $variables['links'] = [
+      'a link' => [
         'title' => 'A <link>',
         'url' => Url::fromUri('base:a/link'),
-      ),
-      'plain text' => array(
+      ],
+      'plain text' => [
         'title' => 'Plain "text"',
-      ),
-      'html text' => array(
-        'title' => SafeMarkup::format('<span class="unescaped">@text</span>', array('@text' => 'potentially unsafe text that <should> be escaped')),
-      ),
-      'front page' => array(
+      ],
+      'html text' => [
+        'title' => SafeMarkup::format('<span class="unescaped">@text</span>', ['@text' => 'potentially unsafe text that <should> be escaped']),
+      ],
+      'front page' => [
         'title' => 'Front page',
         'url' => Url::fromRoute('<front>'),
-      ),
-      'router-test' => array(
+      ],
+      'router-test' => [
         'title' => 'Test route',
         'url' => Url::fromRoute('router_test.1'),
-      ),
-      'query-test' => array(
+      ],
+      'query-test' => [
         'title' => 'Query test route',
         'url' => Url::fromRoute('router_test.1'),
-        'query' => array(
+        'query' => [
           'key' => 'value',
-        )
-      ),
-    );
+        ]
+      ],
+    ];
 
     $expected_links = '';
     $expected_links .= '<ul id="somelinks">';
@@ -220,7 +220,7 @@ function testLinks() {
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
     $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
     $expected_links .= '<li class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
-    $query = array('key' => 'value');
+    $query = ['key' => 'value'];
     $expected_links .= '<li class="query-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
     $expected_links .= '</ul>';
 
@@ -234,25 +234,25 @@ function testLinks() {
     \Drupal::request()->query->replace($original_query);
 
     // Verify that passing an array as heading works (core support).
-    $variables['heading'] = array(
+    $variables['heading'] = [
       'text' => 'Links heading',
       'level' => 'h3',
-      'attributes' => array('class' => array('heading')),
-    );
+      'attributes' => ['class' => ['heading']],
+    ];
     $expected_heading = '<h3 class="heading">Links heading</h3>';
     $expected = $expected_heading . $expected_links;
     $this->assertThemeOutput('links', $variables, $expected);
 
     // Verify that passing attributes for the heading works.
-    $variables['heading'] = array('text' => 'Links heading', 'level' => 'h3', 'attributes' => array('id' => 'heading'));
+    $variables['heading'] = ['text' => 'Links heading', 'level' => 'h3', 'attributes' => ['id' => 'heading']];
     $expected_heading = '<h3 id="heading">Links heading</h3>';
     $expected = $expected_heading . $expected_links;
     $this->assertThemeOutput('links', $variables, $expected);
 
     // Verify that passing attributes for the links work.
-    $variables['links']['plain text']['attributes'] = array(
-      'class' => array('a/class'),
-    );
+    $variables['links']['plain text']['attributes'] = [
+      'class' => ['a/class'],
+    ];
     $expected_links = '';
     $expected_links .= '<ul id="somelinks">';
     $expected_links .= '<li class="a-link"><a href="' . Url::fromUri('base:a/link')->toString() . '">' . Html::escape('A <link>') . '</a></li>';
@@ -260,14 +260,14 @@ function testLinks() {
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
     $expected_links .= '<li class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '">' . Html::escape('Front page') . '</a></li>';
     $expected_links .= '<li class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '">' . Html::escape('Test route') . '</a></li>';
-    $query = array('key' => 'value');
+    $query = ['key' => 'value'];
     $expected_links .= '<li class="query-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '">' . Html::escape('Query test route') . '</a></li>';
     $expected_links .= '</ul>';
     $expected = $expected_heading . $expected_links;
     $this->assertThemeOutput('links', $variables, $expected);
 
     // Verify the data- attributes for setting the "active" class on links.
-    \Drupal::currentUser()->setAccount(new UserSession(array('uid' => 1)));
+    \Drupal::currentUser()->setAccount(new UserSession(['uid' => 1]));
     $variables['set_active_class'] = TRUE;
     $expected_links = '';
     $expected_links .= '<ul id="somelinks">';
@@ -276,7 +276,7 @@ function testLinks() {
     $expected_links .= '<li class="html-text"><span class="unescaped">' . Html::escape('potentially unsafe text that <should> be escaped') . '</span></li>';
     $expected_links .= '<li data-drupal-link-system-path="&lt;front&gt;" class="front-page"><a href="' . Url::fromRoute('<front>')->toString() . '" data-drupal-link-system-path="&lt;front&gt;">' . Html::escape('Front page') . '</a></li>';
     $expected_links .= '<li data-drupal-link-system-path="router_test/test1" class="router-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1') . '" data-drupal-link-system-path="router_test/test1">' . Html::escape('Test route') . '</a></li>';
-    $query = array('key' => 'value');
+    $query = ['key' => 'value'];
     $encoded_query = Html::escape(Json::encode($query));
     $expected_links .= '<li data-drupal-link-query="' . $encoded_query . '" data-drupal-link-system-path="router_test/test1" class="query-test"><a href="' . \Drupal::urlGenerator()->generate('router_test.1', $query) . '" data-drupal-link-query="' . $encoded_query . '" data-drupal-link-system-path="router_test/test1">' . Html::escape('Query test route') . '</a></li>';
     $expected_links .= '</ul>';
@@ -306,33 +306,33 @@ function testIndexedKeyedLinks() {
     // Verify that a list of links is properly rendered.
     $variables = [];
     $variables['attributes'] = ['id' => 'somelinks'];
-    $variables['links'] = array(
-      array(
+    $variables['links'] = [
+      [
         'title' => 'A <link>',
         'url' => Url::fromUri('base:a/link'),
-      ),
-      array(
+      ],
+      [
         'title' => 'Plain "text"',
-      ),
-      array(
-        'title' => SafeMarkup::format('<span class="unescaped">@text</span>', array('@text' => 'potentially unsafe text that <should> be escaped')),
-      ),
-      array(
+      ],
+      [
+        'title' => SafeMarkup::format('<span class="unescaped">@text</span>', ['@text' => 'potentially unsafe text that <should> be escaped']),
+      ],
+      [
         'title' => 'Front page',
         'url' => Url::fromRoute('<front>'),
-      ),
-      array(
+      ],
+      [
         'title' => 'Test route',
         'url' => Url::fromRoute('router_test.1'),
-      ),
-      array(
+      ],
+      [
         'title' => 'Query test route',
         'url' => Url::fromRoute('router_test.1'),
-        'query' => array(
+        'query' => [
           'key' => 'value',
-        )
-      ),
-    );
+        ]
+      ],
+    ];
 
     $expected_links = '';
     $expected_links .= '<ul id="somelinks">';
@@ -388,7 +388,7 @@ function testIndexedKeyedLinks() {
     $this->assertThemeOutput('links', $variables, $expected);
 
     // Verify the data- attributes for setting the "active" class on links.
-    \Drupal::currentUser()->setAccount(new UserSession(array('uid' => 1)));
+    \Drupal::currentUser()->setAccount(new UserSession(['uid' => 1]));
     $variables['set_active_class'] = TRUE;
     $expected_links = '';
     $expected_links .= '<ul id="somelinks">';
@@ -411,55 +411,55 @@ function testIndexedKeyedLinks() {
   function testDrupalPreRenderLinks() {
     // Define the base array to be rendered, containing a variety of different
     // kinds of links.
-    $base_array = array(
+    $base_array = [
       '#theme' => 'links',
-      '#pre_render' => array('drupal_pre_render_links'),
-      '#links' => array(
-        'parent_link' => array(
+      '#pre_render' => ['drupal_pre_render_links'],
+      '#links' => [
+        'parent_link' => [
           'title' => 'Parent link original',
           'url' => Url::fromRoute('router_test.1'),
-        ),
-      ),
-      'first_child' => array(
+        ],
+      ],
+      'first_child' => [
         '#theme' => 'links',
-        '#links' => array(
+        '#links' => [
           // This should be rendered if 'first_child' is rendered separately,
           // but ignored if the parent is being rendered (since it duplicates
           // one of the parent's links).
-          'parent_link' => array(
+          'parent_link' => [
             'title' => 'Parent link copy',
             'url' => Url::fromRoute('router_test.6'),
-          ),
+          ],
           // This should always be rendered.
-          'first_child_link' => array(
+          'first_child_link' => [
             'title' => 'First child link',
             'url' => Url::fromRoute('router_test.7'),
-          ),
-        ),
-      ),
+          ],
+        ],
+      ],
       // This should always be rendered as part of the parent.
-      'second_child' => array(
+      'second_child' => [
         '#theme' => 'links',
-        '#links' => array(
-          'second_child_link' => array(
+        '#links' => [
+          'second_child_link' => [
             'title' => 'Second child link',
             'url' => Url::fromRoute('router_test.8'),
-          ),
-        ),
-      ),
+          ],
+        ],
+      ],
       // This should never be rendered, since the user does not have access to
       // it.
-      'third_child' => array(
+      'third_child' => [
         '#theme' => 'links',
-        '#links' => array(
-          'third_child_link' => array(
+        '#links' => [
+          'third_child_link' => [
             'title' => 'Third child link',
             'url' => Url::fromRoute('router_test.9'),
-          ),
-        ),
+          ],
+        ],
         '#access' => FALSE,
-      ),
-    );
+      ],
+    ];
 
     // Start with a fresh copy of the base array, and try rendering the entire
     // thing. We expect a single <ul> with appropriate links contained within
@@ -508,7 +508,7 @@ function testDrupalPreRenderLinks() {
    */
   function testImage() {
     // Test that data URIs work with theme_image().
-    $variables = array();
+    $variables = [];
     $variables['uri'] = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
     $variables['alt'] = 'Data URI image of a red dot';
     $expected = '<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Data URI image of a red dot" />' . "\n";
diff --git a/core/modules/system/src/Tests/Theme/HtmlAttributesTest.php b/core/modules/system/src/Tests/Theme/HtmlAttributesTest.php
index f103caa..b9babae 100644
--- a/core/modules/system/src/Tests/Theme/HtmlAttributesTest.php
+++ b/core/modules/system/src/Tests/Theme/HtmlAttributesTest.php
@@ -16,7 +16,7 @@ class HtmlAttributesTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   /**
    * Tests that attributes in the 'html' and 'body' elements can be altered.
diff --git a/core/modules/system/src/Tests/Theme/ThemeSuggestionsAlterTest.php b/core/modules/system/src/Tests/Theme/ThemeSuggestionsAlterTest.php
index 75e52c9..706fd26 100644
--- a/core/modules/system/src/Tests/Theme/ThemeSuggestionsAlterTest.php
+++ b/core/modules/system/src/Tests/Theme/ThemeSuggestionsAlterTest.php
@@ -17,11 +17,11 @@ class ThemeSuggestionsAlterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
   }
 
   /**
@@ -57,7 +57,7 @@ function testGeneralSuggestionsAlter() {
 
     // Enable the theme_suggestions_test module to test modules implementing
     // suggestions alter hooks.
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
     $this->drupalGet('theme-test/general-suggestion-alter');
     $this->assertText('Template overridden based on new theme suggestion provided by a module via hook_theme_suggestions_alter().');
@@ -79,7 +79,7 @@ function testTemplateSuggestionsAlter() {
 
     // Enable the theme_suggestions_test module to test modules implementing
     // suggestions alter hooks.
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
     $this->drupalGet('theme-test/suggestion-alter');
     $this->assertText('Template overridden based on new theme suggestion provided by a module via hook_theme_suggestions_HOOK_alter().');
@@ -103,7 +103,7 @@ function testSpecificSuggestionsAlter() {
     $this->assertText('theme_test_specific_suggestions__variant', 'Specific theme call is added to the suggestions array.');
 
     // Ensure that the base hook is used to determine the suggestion alter hook.
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
     $this->drupalGet('theme-test/specific-suggestion-alter');
     $this->assertText('Template overridden based on suggestion alter hook determined by the base hook.');
@@ -126,7 +126,7 @@ function testThemeFunctionSuggestionsAlter() {
 
     // Enable the theme_suggestions_test module to test modules implementing
     // suggestions alter hooks.
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
     $this->drupalGet('theme-test/function-suggestion-alter');
     $this->assertText('Theme function overridden based on new theme suggestion provided by a module.');
@@ -143,7 +143,7 @@ public function testSuggestionsAlterInclude() {
     // Enable theme_suggestions_test module and make two requests to make sure
     // the include file is always loaded. The file will always be included for
     // the first request because the theme registry is being rebuilt.
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
     $this->drupalGet('theme-test/suggestion-alter-include');
     $this->assertText('Function suggested via suggestion alter hook found in include file.', 'Include file loaded for initial request.');
@@ -162,7 +162,7 @@ function testExecutionOrder() {
     $this->config('system.theme')
       ->set('default', 'test_theme')
       ->save();
-    \Drupal::service('module_installer')->install(array('theme_suggestions_test'));
+    \Drupal::service('module_installer')->install(['theme_suggestions_test']);
     $this->resetAll();
 
     // Send two requests so that we get all the messages we've set via
@@ -170,15 +170,15 @@ function testExecutionOrder() {
     $this->drupalGet('theme-test/suggestion-alter');
     // Ensure that the order is first by extension, then for a given extension,
     // the hook-specific one after the generic one.
-    $expected = array(
+    $expected = [
       'theme_suggestions_test_theme_suggestions_alter() executed.',
       'theme_suggestions_test_theme_suggestions_theme_test_suggestions_alter() executed.',
       'theme_test_theme_suggestions_alter() executed.',
       'theme_test_theme_suggestions_theme_test_suggestions_alter() executed.',
       'test_theme_theme_suggestions_alter() executed.',
       'test_theme_theme_suggestions_theme_test_suggestions_alter() executed.',
-    );
-    $content = preg_replace('/\s+/', ' ', Xss::filter($this->content, array()));
+    ];
+    $content = preg_replace('/\s+/', ' ', Xss::filter($this->content, []));
     $this->assert(strpos($content, implode(' ', $expected)) !== FALSE, 'Suggestion alter hooks executed in the expected order.');
   }
 
diff --git a/core/modules/system/src/Tests/Theme/ThemeTest.php b/core/modules/system/src/Tests/Theme/ThemeTest.php
index afced8e..950e073 100644
--- a/core/modules/system/src/Tests/Theme/ThemeTest.php
+++ b/core/modules/system/src/Tests/Theme/ThemeTest.php
@@ -22,11 +22,11 @@ class ThemeTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test', 'node');
+  public static $modules = ['theme_test', 'node'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
   }
 
   /**
@@ -40,14 +40,14 @@ protected function setUp() {
    *   - any attributes set in the template's preprocessing function
    */
   function testAttributeMerging() {
-    $theme_test_render_element = array(
-      'elements' => array(
-        '#attributes' => array('data-foo' => 'bar'),
-      ),
-      'attributes' => array(
+    $theme_test_render_element = [
+      'elements' => [
+        '#attributes' => ['data-foo' => 'bar'],
+      ],
+      'attributes' => [
         'id' => 'bazinga',
-      ),
-    );
+      ],
+    ];
     $this->assertThemeOutput('theme_test_render_element', $theme_test_render_element, '<div id="bazinga" data-foo="bar" data-variables-are-preprocessed></div>' . "\n");
   }
 
@@ -58,10 +58,10 @@ function testThemeDataTypes() {
     // theme_test_false is an implemented theme hook so \Drupal::theme() service
     // should return a string or an object that implements MarkupInterface,
     // even though the theme function itself can return anything.
-    $foos = array('null' => NULL, 'false' => FALSE, 'integer' => 1, 'string' => 'foo', 'empty_string' => '');
+    $foos = ['null' => NULL, 'false' => FALSE, 'integer' => 1, 'string' => 'foo', 'empty_string' => ''];
     foreach ($foos as $type => $example) {
-      $output = \Drupal::theme()->render('theme_test_foo', array('foo' => $example));
-      $this->assertTrue($output instanceof MarkupInterface || is_string($output), format_string('\Drupal::theme() returns an object that implements MarkupInterface or a string for data type @type.', array('@type' => $type)));
+      $output = \Drupal::theme()->render('theme_test_foo', ['foo' => $example]);
+      $this->assertTrue($output instanceof MarkupInterface || is_string($output), format_string('\Drupal::theme() returns an object that implements MarkupInterface or a string for data type @type.', ['@type' => $type]));
       if ($output instanceof MarkupInterface) {
         $this->assertIdentical((string) $example, $output->__toString());
       }
@@ -72,7 +72,7 @@ function testThemeDataTypes() {
 
     // suggestionnotimplemented is not an implemented theme hook so \Drupal::theme() service
     // should return FALSE instead of a string.
-    $output = \Drupal::theme()->render(array('suggestionnotimplemented'), array());
+    $output = \Drupal::theme()->render(['suggestionnotimplemented'], []);
     $this->assertIdentical($output, FALSE, '\Drupal::theme() returns FALSE when a hook suggestion is not implemented.');
   }
 
@@ -83,22 +83,22 @@ function testThemeSuggestions() {
     // Set the front page as something random otherwise the CLI
     // test runner fails.
     $this->config('system.site')->set('page.front', '/nobody-home')->save();
-    $args = array('node', '1', 'edit');
+    $args = ['node', '1', 'edit'];
     $suggestions = theme_get_suggestions($args, 'page');
-    $this->assertEqual($suggestions, array('page__node', 'page__node__%', 'page__node__1', 'page__node__edit'), 'Found expected node edit page suggestions');
+    $this->assertEqual($suggestions, ['page__node', 'page__node__%', 'page__node__1', 'page__node__edit'], 'Found expected node edit page suggestions');
     // Check attack vectors.
-    $args = array('node', '\\1');
+    $args = ['node', '\\1'];
     $suggestions = theme_get_suggestions($args, 'page');
-    $this->assertEqual($suggestions, array('page__node', 'page__node__%', 'page__node__1'), 'Removed invalid \\ from suggestions');
-    $args = array('node', '1/');
+    $this->assertEqual($suggestions, ['page__node', 'page__node__%', 'page__node__1'], 'Removed invalid \\ from suggestions');
+    $args = ['node', '1/'];
     $suggestions = theme_get_suggestions($args, 'page');
-    $this->assertEqual($suggestions, array('page__node', 'page__node__%', 'page__node__1'), 'Removed invalid / from suggestions');
-    $args = array('node', "1\0");
+    $this->assertEqual($suggestions, ['page__node', 'page__node__%', 'page__node__1'], 'Removed invalid / from suggestions');
+    $args = ['node', "1\0"];
     $suggestions = theme_get_suggestions($args, 'page');
-    $this->assertEqual($suggestions, array('page__node', 'page__node__%', 'page__node__1'), 'Removed invalid \\0 from suggestions');
+    $this->assertEqual($suggestions, ['page__node', 'page__node__%', 'page__node__1'], 'Removed invalid \\0 from suggestions');
     // Define path with hyphens to be used to generate suggestions.
-    $args = array('node', '1', 'hyphen-path');
-    $result = array('page__node', 'page__node__%', 'page__node__1', 'page__node__hyphen_path');
+    $args = ['node', '1', 'hyphen-path'];
+    $result = ['page__node', 'page__node__%', 'page__node__1', 'page__node__hyphen_path'];
     $suggestions = theme_get_suggestions($args, 'page');
     $this->assertEqual($suggestions, $result, 'Found expected page suggestions for paths containing hyphens.');
   }
@@ -150,7 +150,7 @@ function testFrontPageThemeSuggestion() {
     $request->attributes->set(RouteObjectInterface::ROUTE_OBJECT, new Route('/user/login'));
     \Drupal::requestStack()->push($request);
     $this->config('system.site')->set('page.front', '/user/login')->save();
-    $suggestions = theme_get_suggestions(array('user', 'login'), 'page');
+    $suggestions = theme_get_suggestions(['user', 'login'], 'page');
     // Set it back to not annoy the batch runner.
     \Drupal::requestStack()->pop();
     $this->assertTrue(in_array('page__front', $suggestions), 'Front page template was suggested.');
@@ -207,7 +207,7 @@ function testFunctionOverride() {
    */
   function testListThemes() {
     $theme_handler = $this->container->get('theme_handler');
-    $theme_handler->install(array('test_subtheme'));
+    $theme_handler->install(['test_subtheme']);
     $themes = $theme_handler->listInfo();
 
     // Check if ThemeHandlerInterface::listInfo() retrieves enabled themes.
@@ -215,8 +215,8 @@ function testListThemes() {
 
     // Check if ThemeHandlerInterface::listInfo() returns disabled themes.
     // Check for base theme and subtheme lists.
-    $base_theme_list = array('test_basetheme' => 'Theme test base theme');
-    $sub_theme_list = array('test_subsubtheme' => 'Theme test subsubtheme', 'test_subtheme' => 'Theme test subtheme');
+    $base_theme_list = ['test_basetheme' => 'Theme test base theme'];
+    $sub_theme_list = ['test_subsubtheme' => 'Theme test subsubtheme', 'test_subtheme' => 'Theme test subtheme'];
 
     $this->assertIdentical($themes['test_basetheme']->sub_themes, $sub_theme_list, 'Base theme\'s object includes list of subthemes.');
     $this->assertIdentical($themes['test_subtheme']->base_themes, $base_theme_list, 'Subtheme\'s object includes list of base themes.');
@@ -231,20 +231,20 @@ function testListThemes() {
    * Tests child element rendering for 'render element' theme hooks.
    */
   function testDrupalRenderChildren() {
-    $element = array(
+    $element = [
       '#theme' => 'theme_test_render_element_children',
-      'child' => array(
+      'child' => [
         '#markup' => 'Foo',
-      ),
-    );
+      ],
+    ];
     $this->assertThemeOutput('theme_test_render_element_children', $element, 'Foo', 'drupal_render() avoids #theme recursion loop when rendering a render element.');
 
-    $element = array(
-      '#theme_wrappers' => array('theme_test_render_element_children'),
-      'child' => array(
+    $element = [
+      '#theme_wrappers' => ['theme_test_render_element_children'],
+      'child' => [
         '#markup' => 'Foo',
-      ),
-    );
+      ],
+    ];
     $this->assertThemeOutput('theme_test_render_element_children', $element, 'Foo', 'drupal_render() avoids #theme_wrappers recursion loop when rendering a render element.');
   }
 
@@ -281,7 +281,7 @@ function testPreprocessHtml() {
    * Tests that region attributes can be manipulated via preprocess functions.
    */
   public function testRegionClass() {
-    \Drupal::service('module_installer')->install(array('block', 'theme_region_test'));
+    \Drupal::service('module_installer')->install(['block', 'theme_region_test']);
 
     // Place a block.
     $this->drupalPlaceBlock('system_main_block');
diff --git a/core/modules/system/src/Tests/Theme/TwigDebugMarkupTest.php b/core/modules/system/src/Tests/Theme/TwigDebugMarkupTest.php
index df3c26c..c6b6c51 100644
--- a/core/modules/system/src/Tests/Theme/TwigDebugMarkupTest.php
+++ b/core/modules/system/src/Tests/Theme/TwigDebugMarkupTest.php
@@ -16,7 +16,7 @@ class TwigDebugMarkupTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test', 'node');
+  public static $modules = ['theme_test', 'node'];
 
   /**
    * Tests debug markup added to Twig template output.
@@ -25,9 +25,9 @@ function testTwigDebugMarkup() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = $this->container->get('renderer');
     $extension = twig_extension();
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
     $this->config('system.theme')->set('default', 'test_theme')->save();
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     // Enable debug, rebuild the service container, and clear all caches.
     $parameters = $this->container->getParameter('twig.config');
     $parameters['debug'] = TRUE;
@@ -62,7 +62,7 @@ function testTwigDebugMarkup() {
     // Create another node and make sure the template suggestions shown in the
     // debug markup are correct.
     $node3 = $this->drupalCreateNode();
-    $build = array('#theme' => 'node__foo__bar');
+    $build = ['#theme' => 'node__foo__bar'];
     $build += node_view($node3);
     $output = $renderer->renderRoot($build);
     $this->assertTrue(strpos($output, "THEME HOOK: 'node__foo__bar'") !== FALSE, 'Theme call information found.');
diff --git a/core/modules/system/src/Tests/Theme/TwigFilterTest.php b/core/modules/system/src/Tests/Theme/TwigFilterTest.php
index 810ed53..653e4fa 100644
--- a/core/modules/system/src/Tests/Theme/TwigFilterTest.php
+++ b/core/modules/system/src/Tests/Theme/TwigFilterTest.php
@@ -16,54 +16,54 @@ class TwigFilterTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('twig_theme_test');
+  public static $modules = ['twig_theme_test'];
 
   /**
    * Test Twig "without" filter.
    */
   public function testTwigWithoutFilter() {
-    $filter_test = array(
+    $filter_test = [
       '#theme' => 'twig_theme_test_filter',
-      '#quote' => array(
-        'content' => array('#markup' => 'You can only find truth with logic if you have already found truth without it.'),
-        'author' => array('#markup' => 'Gilbert Keith Chesterton'),
-        'date' => array('#markup' => '1874-1936'),
-      ),
-      '#attributes' => array(
+      '#quote' => [
+        'content' => ['#markup' => 'You can only find truth with logic if you have already found truth without it.'],
+        'author' => ['#markup' => 'Gilbert Keith Chesterton'],
+        'date' => ['#markup' => '1874-1936'],
+      ],
+      '#attributes' => [
         'id' => 'quotes',
         'checked' => TRUE,
-        'class' => array('red', 'green', 'blue'),
-      ),
-    );
+        'class' => ['red', 'green', 'blue'],
+      ],
+    ];
     $rendered = \Drupal::service('renderer')->renderRoot($filter_test);
     $this->setRawContent($rendered);
 
-    $elements = array(
-      array(
+    $elements = [
+      [
         'expected' => '<div><strong>No author:</strong> You can only find truth with logic if you have already found truth without it.1874-1936.</div>',
         'message' => '"No author" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Complete quote after without:</strong> You can only find truth with logic if you have already found truth without it.Gilbert Keith Chesterton1874-1936.</div>',
         'message' => '"Complete quote after without" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Only author:</strong> Gilbert Keith Chesterton.</div>',
         'message' => '"Only author:" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>No author or date:</strong> You can only find truth with logic if you have already found truth without it..</div>',
         'message' => '"No author or date" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Only date:</strong> 1874-1936.</div>',
         'message' => '"Only date" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Complete quote again for good measure:</strong> You can only find truth with logic if you have already found truth without it.Gilbert Keith Chesterton1874-1936.</div>',
         'message' => '"Complete quote again for good measure" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Marked-up:</strong>
   <blockquote>
     <p>You can only find truth with logic if you have already found truth without it.</p>
@@ -72,48 +72,48 @@ public function testTwigWithoutFilter() {
     </footer>
   </blockquote>',
         'message' => '"Marked-up quote" was successfully rendered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span id="quotes" checked class="red green blue">All attributes:</span></div>',
         'message' => 'All attributes printed.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span class="red green blue" id="quotes" checked>Class attributes in front, remainder at the back:</span></div>',
         'message' => 'Class attributes printed in the front, the rest in the back.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span id="quotes" checked data-class="red green blue">Class attributes in back, remainder at the front:</span></div>',
         'message' => 'Class attributes printed in the back, the rest in the front.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span class="red green blue">Class attributes only:</span></div>',
         'message' => 'Class attributes only printed.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span checked id="quotes" class="red green blue">Without boolean attribute.</span></div>',
         'message' => 'Boolean attribute printed in the front.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span data-id="quotes" checked class="red green blue">Without string attribute.</span></div>',
         'message' => 'Without string attribute in the front.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span checked>Without id and class attributes.</span></div>',
         'message' => 'Attributes printed without id and class attributes.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><span id="quotes" checked class="red green blue">All attributes again.</span></div>',
         'message' => 'All attributes printed again.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div id="quotes-here"><span class="gray-like-a-bunny bem__ized--top-feature" id="quotes-here">ID and class. Having the same ID twice is not valid markup but we want to make sure the filter doesn\'t use \Drupal\Component\Utility\Html::getUniqueId().</span></div>',
         'message' => 'Class and ID filtered.',
-      ),
-      array(
+      ],
+      [
         'expected' => '<div><strong>Rendered author string length:</strong> 24.</div>',
         'message' => 'Render filter string\'s length.',
-      ),
-    );
+      ],
+    ];
 
     foreach ($elements as $element) {
       $this->assertRaw($element['expected'], $element['message']);
diff --git a/core/modules/system/src/Tests/Theme/TwigNamespaceTest.php b/core/modules/system/src/Tests/Theme/TwigNamespaceTest.php
index 27a54d1..ab62889 100644
--- a/core/modules/system/src/Tests/Theme/TwigNamespaceTest.php
+++ b/core/modules/system/src/Tests/Theme/TwigNamespaceTest.php
@@ -16,7 +16,7 @@ class TwigNamespaceTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('twig_theme_test', 'twig_namespace_a', 'twig_namespace_b', 'node');
+  public static $modules = ['twig_theme_test', 'twig_namespace_a', 'twig_namespace_b', 'node'];
 
   /**
    * @var \Drupal\Core\Template\TwigEnvironment
@@ -25,7 +25,7 @@ class TwigNamespaceTest extends WebTestBase {
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme', 'bartik'));
+    \Drupal::service('theme_handler')->install(['test_theme', 'bartik']);
     $this->twig = \Drupal::service('twig');
   }
 
@@ -52,7 +52,7 @@ public function testTemplateDiscovery() {
    */
   public function testTwigNamespaces() {
     // Test twig @extends and @include in template files.
-    $test = array('#theme' => 'twig_namespace_test');
+    $test = ['#theme' => 'twig_namespace_test'];
     $this->setRawContent(\Drupal::service('renderer')->renderRoot($test));
 
     $this->assertText('This line is from twig_namespace_a/templates/test.html.twig');
diff --git a/core/modules/system/src/Tests/Theme/TwigRawTest.php b/core/modules/system/src/Tests/Theme/TwigRawTest.php
index 80afb8e..8be63db 100644
--- a/core/modules/system/src/Tests/Theme/TwigRawTest.php
+++ b/core/modules/system/src/Tests/Theme/TwigRawTest.php
@@ -16,16 +16,16 @@ class TwigRawTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('twig_theme_test');
+  public static $modules = ['twig_theme_test'];
 
   /**
    * Tests the raw filter inside an autoescape tag.
    */
   public function testAutoescapeRaw() {
-    $test = array(
+    $test = [
       '#theme' => 'twig_raw_test',
       '#script' => '<script>alert("This alert is real because I will put it through the raw filter!");</script>',
-    );
+    ];
     $rendered = \Drupal::service('renderer')->renderRoot($test);
     $this->setRawContent($rendered);
     $this->assertRaw('<script>alert("This alert is real because I will put it through the raw filter!");</script>');
diff --git a/core/modules/system/src/Tests/Theme/TwigTransTest.php b/core/modules/system/src/Tests/Theme/TwigTransTest.php
index ef6fe05..b73cdaf 100644
--- a/core/modules/system/src/Tests/Theme/TwigTransTest.php
+++ b/core/modules/system/src/Tests/Theme/TwigTransTest.php
@@ -17,12 +17,12 @@ class TwigTransTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'theme_test',
     'twig_theme_test',
     'locale',
     'language'
-  );
+  ];
 
   /**
    * An administrative user for testing.
@@ -36,10 +36,10 @@ class TwigTransTest extends WebTestBase {
    *
    * @var array
    */
-  protected $languages = array(
+  protected $languages = [
     'xx' => 'Lolspeak',
     'zz' => 'Lolspeak2',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -48,16 +48,16 @@ protected function setUp() {
     parent::setUp();
 
     // Setup test_theme.
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
     $this->config('system.theme')->set('default', 'test_theme')->save();
 
     // Create and log in as admin.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'administer languages',
       'access administration pages',
       'administer site configuration',
       'translate interface'
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
 
     // Install languages.
@@ -77,7 +77,7 @@ protected function setUp() {
   public function testTwigTransTags() {
     // Run this once without and once with Twig debug because trans can work
     // differently depending on that setting.
-    $this->drupalGet('twig-theme-test/trans', array('language' => \Drupal::languageManager()->getLanguage('xx')));
+    $this->drupalGet('twig-theme-test/trans', ['language' => \Drupal::languageManager()->getLanguage('xx')]);
     $this->assertTwigTransTags();
 
     // Enable debug, rebuild the service container, and clear all caches.
@@ -87,7 +87,7 @@ public function testTwigTransTags() {
     $this->rebuildContainer();
     $this->resetAll();
 
-    $this->drupalGet('twig-theme-test/trans', array('language' => \Drupal::languageManager()->getLanguage('xx')));
+    $this->drupalGet('twig-theme-test/trans', ['language' => \Drupal::languageManager()->getLanguage('xx')]);
     $this->assertTwigTransTags();
   }
 
@@ -197,12 +197,12 @@ protected function installLanguages() {
       $contents = $this->poFileContents($langcode);
       if ($contents) {
         // Add test language for translation testing.
-        $edit = array(
+        $edit = [
           'predefined_langcode' => 'custom',
           'langcode' => $langcode,
           'label' => $name,
           'direction' => LanguageInterface::DIRECTION_LTR,
-        );
+        ];
 
         // Install the language in Drupal.
         $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
@@ -211,11 +211,11 @@ protected function installLanguages() {
         // Import the custom .po contents for the language.
         $filename = \Drupal::service('file_system')->tempnam('temporary://', "po_") . '.po';
         file_put_contents($filename, $contents);
-        $options = array(
+        $options = [
           'files[file]' => $filename,
           'langcode' => $langcode,
           'customized' => TRUE,
-        );
+        ];
         $this->drupalPostForm('admin/config/regional/translate/import', $options, t('Import'));
         drupal_unlink($filename);
       }
diff --git a/core/modules/system/src/Tests/Update/DependencyHookInvocationTest.php b/core/modules/system/src/Tests/Update/DependencyHookInvocationTest.php
index a9723c2..9e5cc12 100644
--- a/core/modules/system/src/Tests/Update/DependencyHookInvocationTest.php
+++ b/core/modules/system/src/Tests/Update/DependencyHookInvocationTest.php
@@ -17,7 +17,7 @@ class DependencyHookInvocationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test_0', 'update_test_1', 'update_test_2');
+  public static $modules = ['update_test_0', 'update_test_1', 'update_test_2'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/system/src/Tests/Update/DependencyMissingTest.php b/core/modules/system/src/Tests/Update/DependencyMissingTest.php
index 9764b4c..fe208dc 100644
--- a/core/modules/system/src/Tests/Update/DependencyMissingTest.php
+++ b/core/modules/system/src/Tests/Update/DependencyMissingTest.php
@@ -16,7 +16,7 @@ class DependencyMissingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test_0', 'update_test_2');
+  public static $modules = ['update_test_0', 'update_test_2'];
 
   protected function setUp() {
     // Only install update_test_2.module, even though its updates have a
@@ -26,9 +26,9 @@ protected function setUp() {
   }
 
   function testMissingUpdate() {
-    $starting_updates = array(
+    $starting_updates = [
       'update_test_2' => 8001,
-    );
+    ];
     $update_graph = update_resolve_dependencies($starting_updates);
     $this->assertTrue($update_graph['update_test_2_update_8001']['allowed'], "The module's first update function is allowed to run, since it does not have any missing dependencies.");
     $this->assertFalse($update_graph['update_test_2_update_8002']['allowed'], "The module's second update function is not allowed to run, since it has a direct dependency on a missing update.");
diff --git a/core/modules/system/src/Tests/Update/DependencyOrderingTest.php b/core/modules/system/src/Tests/Update/DependencyOrderingTest.php
index bb3ae37..f5c344f 100644
--- a/core/modules/system/src/Tests/Update/DependencyOrderingTest.php
+++ b/core/modules/system/src/Tests/Update/DependencyOrderingTest.php
@@ -16,7 +16,7 @@ class DependencyOrderingTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test_0', 'update_test_1', 'update_test_2', 'update_test_3');
+  public static $modules = ['update_test_0', 'update_test_1', 'update_test_2', 'update_test_3'];
 
   protected function setUp() {
     parent::setUp();
@@ -27,14 +27,14 @@ protected function setUp() {
    * Test that updates within a single module run in the correct order.
    */
   function testUpdateOrderingSingleModule() {
-    $starting_updates = array(
+    $starting_updates = [
       'update_test_1' => 8001,
-    );
-    $expected_updates = array(
+    ];
+    $expected_updates = [
       'update_test_1_update_8001',
       'update_test_1_update_8002',
       'update_test_1_update_8003',
-    );
+    ];
     $actual_updates = array_keys(update_resolve_dependencies($starting_updates));
     $this->assertEqual($expected_updates, $actual_updates, 'Updates within a single module run in the correct order.');
   }
@@ -43,10 +43,10 @@ function testUpdateOrderingSingleModule() {
    * Test that dependencies between modules are resolved correctly.
    */
   function testUpdateOrderingModuleInterdependency() {
-    $starting_updates = array(
+    $starting_updates = [
       'update_test_2' => 8001,
       'update_test_3' => 8001,
-    );
+    ];
     $update_order = array_keys(update_resolve_dependencies($starting_updates));
     // Make sure that each dependency is satisfied.
     $first_dependency_satisfied = array_search('update_test_2_update_8001', $update_order) < array_search('update_test_3_update_8001', $update_order);
diff --git a/core/modules/system/src/Tests/Update/InvalidUpdateHookTest.php b/core/modules/system/src/Tests/Update/InvalidUpdateHookTest.php
index ce5a006..60ac0c4 100644
--- a/core/modules/system/src/Tests/Update/InvalidUpdateHookTest.php
+++ b/core/modules/system/src/Tests/Update/InvalidUpdateHookTest.php
@@ -17,7 +17,7 @@ class InvalidUpdateHookTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test_invalid_hook', 'update_script_test', 'dblog');
+  public static $modules = ['update_test_invalid_hook', 'update_script_test', 'dblog'];
 
   /**
    * URL for the upgrade script.
@@ -38,7 +38,7 @@ protected function setUp() {
     require_once \Drupal::root() . '/core/includes/update.inc';
 
     $this->updateUrl = $GLOBALS['base_url'] . '/update.php';
-    $this->updateUser = $this->drupalCreateUser(array('administer software updates'));
+    $this->updateUser = $this->drupalCreateUser(['administer software updates']);
   }
 
   function testInvalidUpdateHook() {
diff --git a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
index eb95fce..09cc586 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathRC1TestBaseFilledTest.php
@@ -29,13 +29,13 @@ public function testUpdatedSite() {
 
     $spanish = \Drupal::languageManager()->getLanguage('es');
 
-    $expected_node_data = array(
+    $expected_node_data = [
       [1, 'article', 'en', 'Test Article - New title'],
       [2, 'book', 'en', 'Book page'],
       [3, 'forum', 'en', 'Forum topic'],
       [4, 'page', 'en', 'Test page'],
       [8, 'test_content_type', 'en', 'Test title'],
-    );
+    ];
     foreach ($expected_node_data as $node_data) {
       $id = $node_data[0];
       $type = $node_data[1];
diff --git a/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php b/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
index 6edbfe3..fe62340 100644
--- a/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatePathTestBaseFilledTest.php
@@ -29,13 +29,13 @@ public function testUpdatedSite() {
 
     $spanish = \Drupal::languageManager()->getLanguage('es');
 
-    $expected_node_data = array(
+    $expected_node_data = [
       [1, 'article', 'en', 'Test Article - New title'],
       [2, 'book', 'en', 'Book page'],
       [3, 'forum', 'en', 'Forum topic'],
       [4, 'page', 'en', 'Test page'],
       [8, 'test_content_type', 'en', 'Test title'],
-    );
+    ];
     foreach ($expected_node_data as $node_data) {
       $id = $node_data[0];
       $type = $node_data[1];
diff --git a/core/modules/system/src/Tests/Update/UpdateScriptTest.php b/core/modules/system/src/Tests/Update/UpdateScriptTest.php
index b80ef82..12574ee 100644
--- a/core/modules/system/src/Tests/Update/UpdateScriptTest.php
+++ b/core/modules/system/src/Tests/Update/UpdateScriptTest.php
@@ -18,7 +18,7 @@ class UpdateScriptTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_script_test', 'dblog', 'language');
+  public static $modules = ['update_script_test', 'dblog', 'language'];
 
   /**
    * {@inheritdoc}
@@ -42,7 +42,7 @@ class UpdateScriptTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
     $this->updateUrl = Url::fromRoute('system.db_update');
-    $this->updateUser = $this->drupalCreateUser(array('administer software updates', 'access site in maintenance mode'));
+    $this->updateUser = $this->drupalCreateUser(['administer software updates', 'access site in maintenance mode']);
     \Drupal::service('entity.definition_update_manager')->applyUpdates();
   }
 
@@ -53,7 +53,7 @@ function testUpdateAccess() {
     // Try accessing update.php without the proper permission.
     $regular_user = $this->drupalCreateUser();
     $this->drupalLogin($regular_user);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertResponse(403);
 
     // Check that a link to the update page is not accessible to regular users.
@@ -62,7 +62,7 @@ function testUpdateAccess() {
 
     // Try accessing update.php as an anonymous user.
     $this->drupalLogout();
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertResponse(403);
 
     // Check that a link to the update page is not accessible to anonymous
@@ -72,7 +72,7 @@ function testUpdateAccess() {
 
     // Access the update page with the proper permission.
     $this->drupalLogin($this->updateUser);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertResponse(200);
 
     // Check that a link to the update page is accessible to users with proper
@@ -82,7 +82,7 @@ function testUpdateAccess() {
 
     // Access the update page as user 1.
     $this->drupalLogin($this->rootUser);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertResponse(200);
 
     // Check that a link to the update page is accessible to user 1.
@@ -99,7 +99,7 @@ function testRequirements() {
 
     // If there are no requirements warnings or errors, we expect to be able to
     // go through the update process uninterrupted.
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->assertText(t('No pending updates.'), 'End of update process was reached.');
     // Confirm that all caches were cleared.
@@ -113,7 +113,7 @@ function testRequirements() {
     // successfully.
     $update_script_test_config->set('requirement_type', REQUIREMENT_WARNING)->save();
     drupal_set_installed_schema_version('update_script_test', drupal_get_installed_schema_version('update_script_test') - 1);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertText('This is a requirements warning provided by the update_script_test module.');
     $this->clickLink('try again');
     $this->assertNoText('This is a requirements warning provided by the update_script_test module.');
@@ -124,7 +124,7 @@ function testRequirements() {
     $this->assertText(t('hook_cache_flush() invoked for update_script_test.module.'), 'Caches were cleared after resolving a requirements warning and applying updates.');
 
     // Now try again without pending updates to make sure that works too.
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertText('This is a requirements warning provided by the update_script_test module.');
     $this->clickLink('try again');
     $this->assertNoText('This is a requirements warning provided by the update_script_test module.');
@@ -137,7 +137,7 @@ function testRequirements() {
     // clicking the link to proceed (since the problem that triggered the error
     // has not been fixed).
     $update_script_test_config->set('requirement_type', REQUIREMENT_ERROR)->save();
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->assertText('This is a requirements error provided by the update_script_test module.');
     $this->clickLink('try again');
     $this->assertText('This is a requirements error provided by the update_script_test module.');
@@ -163,7 +163,7 @@ function testThemeSystem() {
   function testNoUpdateFunctionality() {
     // Click through update.php with 'administer software updates' permission.
     $this->drupalLogin($this->updateUser);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->assertText(t('No pending updates.'));
     $this->assertNoLink('Administration pages');
@@ -172,9 +172,9 @@ function testNoUpdateFunctionality() {
     $this->assertResponse(200);
 
     // Click through update.php with 'access administration pages' permission.
-    $admin_user = $this->drupalCreateUser(array('administer software updates', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer software updates', 'access administration pages']);
     $this->drupalLogin($admin_user);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->assertText(t('No pending updates.'));
     $this->assertLink('Administration pages');
@@ -204,9 +204,9 @@ function testSuccessfulUpdateFunctionality() {
 
     // Click through update.php with 'access administration pages' and
     // 'access site reports' permissions.
-    $admin_user = $this->drupalCreateUser(array('administer software updates', 'access administration pages', 'access site reports', 'access site in maintenance mode'));
+    $admin_user = $this->drupalCreateUser(['administer software updates', 'access administration pages', 'access site reports', 'access site in maintenance mode']);
     $this->drupalLogin($admin_user);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->clickLink(t('Apply pending updates'));
     $this->assertText('Updates were attempted.');
@@ -237,11 +237,11 @@ function testMaintenanceModeUpdateFunctionality() {
    */
   function testSuccessfulMultilingualUpdateFunctionality() {
     // Add some custom languages.
-    foreach (array('aa', 'bb') as $language_code) {
-      ConfigurableLanguage::create(array(
+    foreach (['aa', 'bb'] as $language_code) {
+      ConfigurableLanguage::create([
           'id' => $language_code,
           'label' => $this->randomMachineName(),
-        ))->save();
+        ])->save();
     }
 
     $config = \Drupal::service('config.factory')->getEditable('language.negotiation');
@@ -261,18 +261,18 @@ function testSuccessfulMultilingualUpdateFunctionality() {
     $this->assertEqual($schema_version, 8000, 'update_script_test schema version overridden to 8000.');
 
     // Create admin user.
-    $admin_user = $this->drupalCreateUser(array('administer software updates', 'access administration pages', 'access site reports', 'access site in maintenance mode', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer software updates', 'access administration pages', 'access site reports', 'access site in maintenance mode', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     // Visit status report page and ensure, that link to update.php has no path prefix set.
-    $this->drupalGet('en/admin/reports/status', array('external' => TRUE));
+    $this->drupalGet('en/admin/reports/status', ['external' => TRUE]);
     $this->assertResponse(200);
     $this->assertLinkByHref('/update.php');
     $this->assertNoLinkByHref('en/update.php');
 
     // Click through update.php with 'access administration pages' and
     // 'access site reports' permissions.
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->clickLink(t('Apply pending updates'));
     $this->assertText('Updates were attempted.');
@@ -303,7 +303,7 @@ protected function updateScriptTest($maintenance_mode) {
     else {
       $this->assertNoText('Operating in maintenance mode.');
     }
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->clickLink(t('Apply pending updates'));
 
@@ -330,74 +330,74 @@ protected function updateScriptTest($maintenance_mode) {
    * Returns the Drupal 7 system table schema.
    */
   public function getSystemSchema() {
-    return array(
+    return [
       'description' => "A list of all modules, themes, and theme engines that are or have been installed in Drupal's file system.",
-      'fields' => array(
-        'filename' => array(
+      'fields' => [
+        'filename' => [
           'description' => 'The path of the primary file for this item, relative to the Drupal root; e.g. modules/node/node.module.',
           'type' => 'varchar',
           'length' => 255,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'name' => array(
+        ],
+        'name' => [
           'description' => 'The name of the item; e.g. node.',
           'type' => 'varchar',
           'length' => 255,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'type' => array(
+        ],
+        'type' => [
           'description' => 'The type of the item, either module, theme, or theme_engine.',
           'type' => 'varchar',
           'length' => 12,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'owner' => array(
+        ],
+        'owner' => [
           'description' => "A theme's 'parent' . Can be either a theme or an engine.",
           'type' => 'varchar',
           'length' => 255,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'status' => array(
+        ],
+        'status' => [
           'description' => 'Boolean indicating whether or not this item is enabled.',
           'type' => 'int',
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'bootstrap' => array(
+        ],
+        'bootstrap' => [
           'description' => "Boolean indicating whether this module is loaded during Drupal's early bootstrapping phase (e.g. even before the page cache is consulted).",
           'type' => 'int',
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'schema_version' => array(
+        ],
+        'schema_version' => [
           'description' => "The module's database schema version number. -1 if the module is not installed (its tables do not exist); \Drupal::CORE_MINIMUM_SCHEMA_VERSION or the largest N of the module's hook_update_N() function that has either been run or existed when the module was first installed.",
           'type' => 'int',
           'not null' => TRUE,
           'default' => -1,
           'size' => 'small',
-        ),
-        'weight' => array(
+        ],
+        'weight' => [
           'description' => "The order in which this module's hooks should be invoked relative to other modules. Equal-weighted modules are ordered by name.",
           'type' => 'int',
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'info' => array(
+        ],
+        'info' => [
           'description' => "A serialized array containing information from the module's .info file; keys can include name, description, package, version, core, dependencies, and php.",
           'type' => 'blob',
           'not null' => FALSE,
-        ),
-      ),
-      'primary key' => array('filename'),
-      'indexes' => array(
-        'system_list' => array('status', 'bootstrap', 'type', 'weight', 'name'),
-        'type_name' => array('type', 'name'),
-      ),
-    );
+        ],
+      ],
+      'primary key' => ['filename'],
+      'indexes' => [
+        'system_list' => ['status', 'bootstrap', 'type', 'weight', 'name'],
+        'type_name' => ['type', 'name'],
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/system/src/Tests/Update/UpdatesWith7xTest.php b/core/modules/system/src/Tests/Update/UpdatesWith7xTest.php
index 9782d91..3694cad 100644
--- a/core/modules/system/src/Tests/Update/UpdatesWith7xTest.php
+++ b/core/modules/system/src/Tests/Update/UpdatesWith7xTest.php
@@ -17,7 +17,7 @@ class UpdatesWith7xTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test_with_7x');
+  public static $modules = ['update_test_with_7x'];
 
   /**
    * The URL for the update page.
@@ -33,7 +33,7 @@ protected function setUp() {
     parent::setUp();
     require_once \Drupal::root() . '/core/includes/update.inc';
     $this->updateUrl = $GLOBALS['base_url'] . '/update.php';
-    $this->updateUser = $this->drupalCreateUser(array('administer software updates'));
+    $this->updateUser = $this->drupalCreateUser(['administer software updates']);
   }
 
   function testWith7x() {
@@ -47,7 +47,7 @@ function testWith7x() {
 
     // Click through update.php with 'administer software updates' permission.
     $this->drupalLogin($this->updateUser);
-    $this->drupalGet($this->updateUrl, array('external' => TRUE));
+    $this->drupalGet($this->updateUrl, ['external' => TRUE]);
     $this->clickLink(t('Continue'));
     $this->assertText(t('Some of the pending updates cannot be applied because their dependencies were not met.'));
   }
diff --git a/core/modules/system/system.admin.inc b/core/modules/system/system.admin.inc
index 94f6302..799869b 100644
--- a/core/modules/system/system.admin.inc
+++ b/core/modules/system/system.admin.inc
@@ -49,10 +49,10 @@ function template_preprocess_admin_block_content(&$variables) {
  *     'right'.
  */
 function template_preprocess_admin_page(&$variables) {
-  $variables['system_compact_link'] = array(
+  $variables['system_compact_link'] = [
     '#type' => 'system_compact_link',
-  );
-  $variables['containers'] = array();
+  ];
+  $variables['containers'] = [];
   $stripe = 0;
   foreach ($variables['blocks'] as $block) {
     if (!empty($block['content']['#content'])) {
@@ -60,10 +60,10 @@ function template_preprocess_admin_page(&$variables) {
         // Perform automatic striping.
         $block['position'] = ++$stripe % 2 ? 'left' : 'right';
       }
-      $variables['containers'][$block['position']]['blocks'][] = array(
+      $variables['containers'][$block['position']]['blocks'][] = [
         '#theme' => 'admin_block',
         '#block' => $block,
-      );
+      ];
     }
   }
 }
@@ -78,10 +78,10 @@ function template_preprocess_admin_page(&$variables) {
  *   - menu_items: An array of modules to be displayed.
  */
 function template_preprocess_system_admin_index(&$variables) {
-  $variables['system_compact_link'] = array(
+  $variables['system_compact_link'] = [
     '#type' => 'system_compact_link',
-  );
-  $variables['containers'] = array();
+  ];
+  $variables['containers'] = [];
   $stripe = 0;
   // Iterate over all modules.
   foreach ($variables['menu_items'] as $module => $block) {
@@ -89,18 +89,18 @@ function template_preprocess_system_admin_index(&$variables) {
     $position = ++$stripe % 2 ? 'left' : 'right';
     // Output links.
     if (count($items)) {
-      $variables['containers'][$position][] = array(
+      $variables['containers'][$position][] = [
         '#theme' => 'admin_block',
-        '#block' => array(
+        '#block' => [
           'position' => $position,
           'title' => $module,
-          'content' => array(
+          'content' => [
             '#theme' => 'admin_block_content',
             '#content' => $items,
-          ),
+          ],
           'description' => t($description),
-        ),
-      );
+        ],
+      ];
     }
   }
 }
@@ -241,7 +241,7 @@ function template_preprocess_system_modules_uninstall(&$variables) {
  *   - theme_group_titles: An associative array containing titles of themes.
  */
 function template_preprocess_system_themes_page(&$variables) {
-  $groups = array();
+  $groups = [];
   $theme_groups = $variables['theme_groups'];
   $variables['attributes']['id'] = 'system-themes-page';
 
@@ -251,33 +251,33 @@ function template_preprocess_system_themes_page(&$variables) {
       continue;
     }
     // Start new theme group.
-    $theme_group = array();
+    $theme_group = [];
     $theme_group['state'] = $state;
     $theme_group['title'] = $title;
-    $theme_group['themes'] = array();
+    $theme_group['themes'] = [];
     $theme_group['attributes'] = new Attribute();
 
     foreach ($theme_groups[$state] as $theme) {
-      $current_theme = array();
+      $current_theme = [];
 
       // Screenshot depicting the theme.
       if ($theme->screenshot) {
-        $current_theme['screenshot'] = array(
+        $current_theme['screenshot'] = [
           '#theme' => 'image',
           '#uri' => $theme->screenshot['uri'],
           '#alt' => $theme->screenshot['alt'],
           '#title' => $theme->screenshot['title'],
           '#attributes' => $theme->screenshot['attributes'],
-        );
+        ];
       }
       else {
-        $current_theme['screenshot'] = array(
+        $current_theme['screenshot'] = [
           '#theme' => 'image',
           '#uri' => drupal_get_path('module', 'system') . '/images/no_screenshot.png',
           '#alt' => t('No screenshot'),
           '#title' => t('No screenshot'),
-          '#attributes' => new Attribute(array('class' => array('no-screenshot'))),
-        );
+          '#attributes' => new Attribute(['class' => ['no-screenshot']]),
+        ];
       }
 
       // Localize the theme description.
@@ -302,23 +302,23 @@ function template_preprocess_system_themes_page(&$variables) {
         if (substr_count($theme->info['php'], '.') < 2) {
           $theme->info['php'] .= '.*';
         }
-        $current_theme['incompatible'] = t('This theme requires PHP version @php_required and is incompatible with PHP version @php_version.', array('@php_required' => $theme->info['php'], '@php_version' => phpversion()));
+        $current_theme['incompatible'] = t('This theme requires PHP version @php_required and is incompatible with PHP version @php_version.', ['@php_required' => $theme->info['php'], '@php_version' => phpversion()]);
       }
       elseif (!empty($theme->incompatible_base)) {
-        $current_theme['incompatible'] = t('This theme requires the base theme @base_theme to operate correctly.', array('@base_theme' => $theme->info['base theme']));
+        $current_theme['incompatible'] = t('This theme requires the base theme @base_theme to operate correctly.', ['@base_theme' => $theme->info['base theme']]);
       }
       elseif (!empty($theme->incompatible_engine)) {
-        $current_theme['incompatible'] = t('This theme requires the theme engine @theme_engine to operate correctly.', array('@theme_engine' => $theme->info['engine']));
+        $current_theme['incompatible'] = t('This theme requires the theme engine @theme_engine to operate correctly.', ['@theme_engine' => $theme->info['engine']]);
       }
 
       // Build operation links.
-      $current_theme['operations'] = array(
+      $current_theme['operations'] = [
         '#theme' => 'links',
         '#links' => $theme->operations,
-        '#attributes' => array(
-          'class' => array('operations', 'clearfix'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['operations', 'clearfix'],
+        ],
+      ];
       $theme_group['themes'][] = $current_theme;
     }
     $groups[] = $theme_group;
diff --git a/core/modules/system/system.api.php b/core/modules/system/system.api.php
index 8534ebf..7951ecd 100644
--- a/core/modules/system/system.api.php
+++ b/core/modules/system/system.api.php
@@ -24,11 +24,11 @@ function hook_system_themes_page_alter(&$theme_groups) {
   foreach ($theme_groups as $state => &$group) {
     foreach ($theme_groups[$state] as &$theme) {
       // Add a foo link to each list of theme operations.
-      $theme->operations[] = array(
+      $theme->operations[] = [
         'title' => t('Foo'),
         'url' => Url::fromRoute('system.themes_page'),
-        'query' => array('theme' => $theme->getName())
-      );
+        'query' => ['theme' => $theme->getName()]
+      ];
     }
   }
 }
diff --git a/core/modules/system/system.install b/core/modules/system/system.install
index c4067ef..fadf17f 100644
--- a/core/modules/system/system.install
+++ b/core/modules/system/system.install
@@ -27,36 +27,36 @@
  */
 function system_requirements($phase) {
   global $install_state;
-  $requirements = array();
+  $requirements = [];
 
   // Report Drupal version
   if ($phase == 'runtime') {
-    $requirements['drupal'] = array(
+    $requirements['drupal'] = [
       'title' => t('Drupal'),
       'value' => \Drupal::VERSION,
       'severity' => REQUIREMENT_INFO,
       'weight' => -10,
-    );
+    ];
 
     // Display the currently active installation profile, if the site
     // is not running the default installation profile.
     $profile = drupal_get_profile();
     if ($profile != 'standard') {
       $info = system_get_info('module', $profile);
-      $requirements['install_profile'] = array(
+      $requirements['install_profile'] = [
         'title' => t('Installation profile'),
-        'value' => t('%profile_name (%profile-%version)', array(
+        'value' => t('%profile_name (%profile-%version)', [
           '%profile_name' => $info['name'],
           '%profile' => $profile,
           '%version' => $info['version']
-        )),
+        ]),
         'severity' => REQUIREMENT_INFO,
         'weight' => -9
-      );
+      ];
     }
 
     // Warn if any experimental modules are installed.
-    $experimental = array();
+    $experimental = [];
     $enabled_modules = \Drupal::moduleHandler()->getModuleList();
     foreach ($enabled_modules as $module => $data) {
       $info = system_get_info('module', $module);
@@ -65,20 +65,20 @@ function system_requirements($phase) {
       }
     }
     if (!empty($experimental)) {
-      $requirements['experimental'] = array(
+      $requirements['experimental'] = [
         'title' => t('Experimental modules enabled'),
-        'value' => t('Experimental modules found: %module_list. <a href=":url">Experimental modules</a> are provided for testing purposes only. Use at your own risk.', array('%module_list' => implode(', ', $experimental), ':url' => 'https://www.drupal.org/core/experimental')),
+        'value' => t('Experimental modules found: %module_list. <a href=":url">Experimental modules</a> are provided for testing purposes only. Use at your own risk.', ['%module_list' => implode(', ', $experimental), ':url' => 'https://www.drupal.org/core/experimental']),
         'severity' => REQUIREMENT_WARNING,
-      );
+      ];
     }
   }
 
   // Web server information.
   $software = \Drupal::request()->server->get('SERVER_SOFTWARE');
-  $requirements['webserver'] = array(
+  $requirements['webserver'] = [
     'title' => t('Web server'),
     'value' => $software,
-  );
+  ];
 
   // Tests clean URL support.
   if ($phase == 'install' && $install_state['interactive'] && !isset($_GET['rewrite']) && strpos($software, 'Apache') !== FALSE) {
@@ -127,30 +127,30 @@ function system_requirements($phase) {
     }
 
     if ($rewrite_warning) {
-      $requirements['apache_version'] = array (
+      $requirements['apache_version'] =  [
         'title' => t('Apache version'),
         'value' => $apache_version_string,
         'severity' => REQUIREMENT_WARNING,
-        'description' => t('Due to the settings for ServerTokens in httpd.conf, it is impossible to accurately determine the version of Apache running on this server. The reported value is @reported, to run Drupal without mod_rewrite, a minimum version of 2.2.16 is needed.', array('@reported' => $apache_version_string)),
-      );
+        'description' => t('Due to the settings for ServerTokens in httpd.conf, it is impossible to accurately determine the version of Apache running on this server. The reported value is @reported, to run Drupal without mod_rewrite, a minimum version of 2.2.16 is needed.', ['@reported' => $apache_version_string]),
+      ];
     }
 
     if ($rewrite_error) {
-      $requirements['Apache version'] = array (
+      $requirements['Apache version'] =  [
         'title' => t('Apache version'),
         'value' => $apache_version_string,
         'severity' => REQUIREMENT_ERROR,
-        'description' => t('The minimum version of Apache needed to run Drupal without mod_rewrite enabled is 2.2.16. See the <a href=":link">enabling clean URLs</a> page for more information on mod_rewrite.', array(':link' => 'http://drupal.org/node/15365')),
-      );
+        'description' => t('The minimum version of Apache needed to run Drupal without mod_rewrite enabled is 2.2.16. See the <a href=":link">enabling clean URLs</a> page for more information on mod_rewrite.', [':link' => 'http://drupal.org/node/15365']),
+      ];
     }
 
     if (!$rewrite_error && !$rewrite_warning) {
-      $requirements['rewrite_module'] = array (
+      $requirements['rewrite_module'] =  [
         'title' => t('Clean URLs'),
         'value' => t('Disabled'),
         'severity' => REQUIREMENT_WARNING,
-        'description' => t('Your server is capable of using clean URLs, but it is not enabled. Using clean URLs gives an improved user experience and is recommended. <a href=":link">Enable clean URLs</a>', array(':link' => 'http://drupal.org/node/15365')),
-      );
+        'description' => t('Your server is capable of using clean URLs, but it is not enabled. Using clean URLs gives an improved user experience and is recommended. <a href=":link">Enable clean URLs</a>', [':link' => 'http://drupal.org/node/15365']),
+      ];
     }
   }
 
@@ -160,22 +160,22 @@ function system_requirements($phase) {
     if ($phase === 'runtime') {
       $phpversion_label = t('@phpversion (<a href=":url">more information</a>)', ['@phpversion' => $phpversion, ':url' => (new Url('system.php'))->toString()]);
     }
-    $requirements['php'] = array(
+    $requirements['php'] = [
       'title' => t('PHP'),
       'value' => $phpversion_label,
-    );
+    ];
   }
   else {
-    $requirements['php'] = array(
+    $requirements['php'] = [
       'title' => t('PHP'),
       'value' => $phpversion_label,
-      'description' => t('The phpinfo() function has been disabled for security reasons. To see your server\'s phpinfo() information, change your PHP settings or contact your server administrator. For more information, <a href=":phpinfo">Enabling and disabling phpinfo()</a> handbook page.', array(':phpinfo' => 'https://www.drupal.org/node/243993')),
+      'description' => t('The phpinfo() function has been disabled for security reasons. To see your server\'s phpinfo() information, change your PHP settings or contact your server administrator. For more information, <a href=":phpinfo">Enabling and disabling phpinfo()</a> handbook page.', [':phpinfo' => 'https://www.drupal.org/node/243993']),
       'severity' => REQUIREMENT_INFO,
-    );
+    ];
   }
 
   if (version_compare($phpversion, DRUPAL_MINIMUM_PHP) < 0) {
-    $requirements['php']['description'] = t('Your PHP installation is too old. Drupal requires at least PHP %version.', array('%version' => DRUPAL_MINIMUM_PHP));
+    $requirements['php']['description'] = t('Your PHP installation is too old. Drupal requires at least PHP %version.', ['%version' => DRUPAL_MINIMUM_PHP]);
     $requirements['php']['severity'] = REQUIREMENT_ERROR;
     // If PHP is old, it's not safe to continue with the requirements check.
     return $requirements;
@@ -184,21 +184,21 @@ function system_requirements($phase) {
   // Suggest to update to at least 5.5.21 or 5.6.5 for disabling multiple
   // statements.
   if (($phase === 'install' || \Drupal::database()->driver() === 'mysql') && !SystemRequirements::phpVersionWithPdoDisallowMultipleStatements($phpversion)) {
-    $requirements['php'] = array(
+    $requirements['php'] = [
       'title' => t('PHP (multiple statement disabling)'),
       'value' => $phpversion_label,
       'description' => t('PHP versions higher than 5.6.5 or 5.5.21 provide built-in SQL injection protection for mysql databases. It is recommended to update.'),
       'severity' => REQUIREMENT_INFO,
-    );
+    ];
   }
 
   // Test for PHP extensions.
-  $requirements['php_extensions'] = array(
+  $requirements['php_extensions'] = [
     'title' => t('PHP extensions'),
-  );
+  ];
 
-  $missing_extensions = array();
-  $required_extensions = array(
+  $missing_extensions = [];
+  $required_extensions = [
     'date',
     'dom',
     'filter',
@@ -212,7 +212,7 @@ function system_requirements($phase) {
     'SPL',
     'tokenizer',
     'xml',
-  );
+  ];
   foreach ($required_extensions as $extension) {
     if (!extension_loaded($extension)) {
       $missing_extensions[] = $extension;
@@ -220,22 +220,22 @@ function system_requirements($phase) {
   }
 
   if (!empty($missing_extensions)) {
-    $description = t('Drupal requires you to enable the PHP extensions in the following list (see the <a href=":system_requirements">system requirements page</a> for more information):', array(
+    $description = t('Drupal requires you to enable the PHP extensions in the following list (see the <a href=":system_requirements">system requirements page</a> for more information):', [
       ':system_requirements' => 'https://www.drupal.org/requirements',
-    ));
+    ]);
 
     // We use twig inline_template to avoid twig's autoescape.
-    $description = array(
+    $description = [
       '#type' => 'inline_template',
       '#template' => '{{ description }}{{ missing_extensions }}',
-      '#context' => array(
+      '#context' => [
         'description' => $description,
-        'missing_extensions' => array(
+        'missing_extensions' => [
           '#theme' => 'item_list',
           '#items' => $missing_extensions,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     $requirements['php_extensions']['value'] = t('Disabled');
     $requirements['php_extensions']['severity'] = REQUIREMENT_ERROR;
@@ -248,11 +248,11 @@ function system_requirements($phase) {
   if ($phase == 'install' || $phase == 'runtime') {
     // Check to see if OPcache is installed.
     if (!OpCodeCache::isEnabled()) {
-      $requirements['php_opcache'] = array(
+      $requirements['php_opcache'] = [
         'value' => t('Not enabled'),
         'severity' => REQUIREMENT_WARNING,
         'description' => t('PHP OPcode caching can improve your site\'s performance considerably. It is <strong>highly recommended</strong> to have <a href="http://php.net/manual/opcache.installation.php" target="_blank">OPcache</a> installed on your server.'),
-      );
+      ];
     }
     else {
       $requirements['php_opcache']['value'] = t('Enabled');
@@ -262,13 +262,13 @@ function system_requirements($phase) {
 
   if ($phase != 'update') {
     // Test whether we have a good source of random bytes.
-    $requirements['php_random_bytes'] = array(
+    $requirements['php_random_bytes'] = [
       'title' => t('Random number generation'),
-    );
+    ];
     try {
       $bytes = random_bytes(10);
       if (strlen($bytes) != 10) {
-        throw new \Exception(t('Tried to generate 10 random bytes, generated @count', array('@count' => strlen($bytes))));
+        throw new \Exception(t('Tried to generate 10 random bytes, generated @count', ['@count' => strlen($bytes)]));
       }
       $requirements['php_random_bytes']['value'] = t('Successful');
     }
@@ -280,13 +280,13 @@ function system_requirements($phase) {
         $open_basedir = ini_get('open_basedir');
         if ($open_basedir) {
           $open_basedir_paths = explode(PATH_SEPARATOR, $open_basedir);
-          $open_basedir_blocks_urandom = !array_intersect(array('/dev', '/dev/', '/dev/urandom'), $open_basedir_paths);
+          $open_basedir_blocks_urandom = !array_intersect(['/dev', '/dev/', '/dev/urandom'], $open_basedir_paths);
         }
       }
-      $args = array(
+      $args = [
         ':drupal-php' => 'https://www.drupal.org/docs/7/system-requirements/php#csprng',
         '%exception_message' => $e->getMessage(),
-      );
+      ];
       if ($open_basedir_blocks_urandom) {
         $requirements['php_random_bytes']['description'] = t('Drupal is unable to generate highly randomized numbers, which means certain security features like password reset URLs are not as secure as they should be. Instead, only a slow, less-secure fallback generator is available. The most likely cause is that open_basedir restrictions are in effect and /dev/urandom is not on the whitelist. See the <a href=":drupal-php">system requirements</a> page for more information. %exception_message', $args);
       }
@@ -300,33 +300,33 @@ function system_requirements($phase) {
 
   if ($phase == 'install' || $phase == 'update') {
     // Test for PDO (database).
-    $requirements['database_extensions'] = array(
+    $requirements['database_extensions'] = [
       'title' => t('Database support'),
-    );
+    ];
 
     // Make sure PDO is available.
     $database_ok = extension_loaded('pdo');
     if (!$database_ok) {
-      $pdo_message = t('Your web server does not appear to support PDO (PHP Data Objects). Ask your hosting provider if they support the native PDO extension. See the <a href=":link">system requirements</a> page for more information.', array(
+      $pdo_message = t('Your web server does not appear to support PDO (PHP Data Objects). Ask your hosting provider if they support the native PDO extension. See the <a href=":link">system requirements</a> page for more information.', [
         ':link' => 'https://www.drupal.org/requirements/pdo',
-      ));
+      ]);
     }
     else {
       // Make sure at least one supported database driver exists.
       $drivers = drupal_detect_database_types();
       if (empty($drivers)) {
         $database_ok = FALSE;
-        $pdo_message = t('Your web server does not appear to support any common PDO database extensions. Check with your hosting provider to see if they support PDO (PHP Data Objects) and offer any databases that <a href=":drupal-databases">Drupal supports</a>.', array(
+        $pdo_message = t('Your web server does not appear to support any common PDO database extensions. Check with your hosting provider to see if they support PDO (PHP Data Objects) and offer any databases that <a href=":drupal-databases">Drupal supports</a>.', [
           ':drupal-databases' => 'https://www.drupal.org/requirements/database',
-        ));
+        ]);
       }
       // Make sure the native PDO extension is available, not the older PEAR
       // version. (See install_verify_pdo() for details.)
       if (!defined('PDO::ATTR_DEFAULT_FETCH_MODE')) {
         $database_ok = FALSE;
-        $pdo_message = t('Your web server seems to have the wrong version of PDO installed. Drupal requires the PDO extension from PHP core. This system has the older PECL version. See the <a href=":link">system requirements</a> page for more information.', array(
+        $pdo_message = t('Your web server seems to have the wrong version of PDO installed. Drupal requires the PDO extension from PHP core. This system has the older PECL version. See the <a href=":link">system requirements</a> page for more information.', [
           ':link' => 'https://www.drupal.org/requirements/pdo#pecl',
-        ));
+        ]);
       }
     }
 
@@ -343,54 +343,54 @@ function system_requirements($phase) {
     // Database information.
     $class = Database::getConnection()->getDriverClass('Install\\Tasks');
     $tasks = new $class();
-    $requirements['database_system'] = array(
+    $requirements['database_system'] = [
       'title' => t('Database system'),
       'value' => $tasks->name(),
-    );
-    $requirements['database_system_version'] = array(
+    ];
+    $requirements['database_system_version'] = [
       'title' => t('Database system version'),
       'value' => Database::getConnection()->version(),
-    );
+    ];
   }
 
   // Test PHP memory_limit
   $memory_limit = ini_get('memory_limit');
-  $requirements['php_memory_limit'] = array(
+  $requirements['php_memory_limit'] = [
     'title' => t('PHP memory limit'),
     'value' => $memory_limit == -1 ? t('-1 (Unlimited)') : $memory_limit,
-  );
+  ];
 
   if (!Environment::checkMemoryLimit(DRUPAL_MINIMUM_PHP_MEMORY_LIMIT, $memory_limit)) {
-    $description = array();
+    $description = [];
     if ($phase == 'install') {
-      $description['phase'] = t('Consider increasing your PHP memory limit to %memory_minimum_limit to help prevent errors in the installation process.', array('%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT));
+      $description['phase'] = t('Consider increasing your PHP memory limit to %memory_minimum_limit to help prevent errors in the installation process.', ['%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT]);
     }
     elseif ($phase == 'update') {
-      $description['phase'] = t('Consider increasing your PHP memory limit to %memory_minimum_limit to help prevent errors in the update process.', array('%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT));
+      $description['phase'] = t('Consider increasing your PHP memory limit to %memory_minimum_limit to help prevent errors in the update process.', ['%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT]);
     }
     elseif ($phase == 'runtime') {
-      $description['phase'] = t('Depending on your configuration, Drupal can run with a %memory_limit PHP memory limit. However, a %memory_minimum_limit PHP memory limit or above is recommended, especially if your site uses additional custom or contributed modules.', array('%memory_limit' => $memory_limit, '%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT));
+      $description['phase'] = t('Depending on your configuration, Drupal can run with a %memory_limit PHP memory limit. However, a %memory_minimum_limit PHP memory limit or above is recommended, especially if your site uses additional custom or contributed modules.', ['%memory_limit' => $memory_limit, '%memory_minimum_limit' => DRUPAL_MINIMUM_PHP_MEMORY_LIMIT]);
     }
 
     if (!empty($description['phase'])) {
       if ($php_ini_path = get_cfg_var('cfg_file_path')) {
-        $description['memory'] = t('Increase the memory limit by editing the memory_limit parameter in the file %configuration-file and then restart your web server (or contact your system administrator or hosting provider for assistance).', array('%configuration-file' => $php_ini_path));
+        $description['memory'] = t('Increase the memory limit by editing the memory_limit parameter in the file %configuration-file and then restart your web server (or contact your system administrator or hosting provider for assistance).', ['%configuration-file' => $php_ini_path]);
       }
       else {
         $description['memory'] = t('Contact your system administrator or hosting provider for assistance with increasing your PHP memory limit.');
       }
 
-      $handbook_link = t('For more information, see the online handbook entry for <a href=":memory-limit">increasing the PHP memory limit</a>.', array(':memory-limit' => 'https://www.drupal.org/node/207036'));
+      $handbook_link = t('For more information, see the online handbook entry for <a href=":memory-limit">increasing the PHP memory limit</a>.', [':memory-limit' => 'https://www.drupal.org/node/207036']);
 
-      $description = array(
+      $description = [
         '#type' => 'inline_template',
         '#template' => '{{ description_phase }} {{ description_memory }} {{ handbook }}',
-        '#context' => array(
+        '#context' => [
           'description_phase' => $description['phase'],
           'description_memory' => $description['memory'],
           'handbook' => $handbook_link,
-        ),
-      );
+        ],
+      ];
 
       $requirements['php_memory_limit']['description'] = $description;
       $requirements['php_memory_limit']['severity'] = REQUIREMENT_WARNING;
@@ -399,7 +399,7 @@ function system_requirements($phase) {
 
   // Test configuration files and directory for writability.
   if ($phase == 'runtime') {
-    $conf_errors = array();
+    $conf_errors = [];
     // Find the site path. Kernel service is not always available at this point,
     // but is preferred, when available.
     if (\Drupal::hasService('kernel')) {
@@ -421,13 +421,13 @@ function system_requirements($phase) {
       // In normal operation, writable files or directories are an error.
       $file_protection_severity = REQUIREMENT_ERROR;
       if (!drupal_verify_install_file($site_path, FILE_NOT_WRITABLE, 'dir')) {
-        $conf_errors[] = t("The directory %file is not protected from modifications and poses a security risk. You must change the directory's permissions to be non-writable.", array('%file' => $site_path));
+        $conf_errors[] = t("The directory %file is not protected from modifications and poses a security risk. You must change the directory's permissions to be non-writable.", ['%file' => $site_path]);
       }
     }
-    foreach (array('settings.php', 'settings.local.php', 'services.yml') as $conf_file) {
+    foreach (['settings.php', 'settings.local.php', 'services.yml'] as $conf_file) {
       $full_path = $site_path . '/' . $conf_file;
       if (file_exists($full_path) && (Settings::get('skip_permissions_hardening') || !drupal_verify_install_file($full_path, FILE_EXIST | FILE_READABLE | FILE_NOT_WRITABLE))) {
-        $conf_errors[] = t("The file %file is not protected from modifications and poses a security risk. You must change the file's permissions to be non-writable.", array('%file' => $full_path));
+        $conf_errors[] = t("The file %file is not protected from modifications and poses a security risk. You must change the file's permissions to be non-writable.", ['%file' => $full_path]);
       }
     }
     if (!empty($conf_errors)) {
@@ -436,27 +436,27 @@ function system_requirements($phase) {
       }
       else {
         // We use twig inline_template to avoid double escaping.
-        $description = array(
+        $description = [
           '#type' => 'inline_template',
           '#template' => '{{ configuration_error_list }}',
-          '#context' => array(
-            'configuration_error_list' => array(
+          '#context' => [
+            'configuration_error_list' => [
               '#theme' => 'item_list',
               '#items' => $conf_errors,
-            ),
-          ),
-        );
+            ],
+          ],
+        ];
       }
-      $requirements['configuration_files'] = array(
+      $requirements['configuration_files'] = [
         'value' => t('Not protected'),
         'severity' => $file_protection_severity,
         'description' => $description,
-      );
+      ];
     }
     else {
-      $requirements['configuration_files'] = array(
+      $requirements['configuration_files'] = [
         'value' => t('Protected'),
-      );
+      ];
     }
     $requirements['configuration_files']['title'] = t('Configuration files');
   }
@@ -466,31 +466,31 @@ function system_requirements($phase) {
     // Try to write the .htaccess files first, to prevent false alarms in case
     // (for example) the /tmp directory was wiped.
     file_ensure_htaccess();
-    $htaccess_files['public://.htaccess'] = array(
+    $htaccess_files['public://.htaccess'] = [
       'title' => t('Public files directory'),
       'directory' => drupal_realpath('public://'),
-    );
+    ];
     if (PrivateStream::basePath()) {
-      $htaccess_files['private://.htaccess'] = array(
+      $htaccess_files['private://.htaccess'] = [
         'title' => t('Private files directory'),
         'directory' => drupal_realpath('private://'),
-      );
+      ];
     }
-    $htaccess_files['temporary://.htaccess'] = array(
+    $htaccess_files['temporary://.htaccess'] = [
       'title' => t('Temporary files directory'),
       'directory' => drupal_realpath('temporary://'),
-    );
+    ];
     foreach ($htaccess_files as $htaccess_file => $info) {
       // Check for the string which was added to the recommended .htaccess file
       // in the latest security update.
       if (!file_exists($htaccess_file) || !($contents = @file_get_contents($htaccess_file)) || strpos($contents, 'Drupal_Security_Do_Not_Remove_See_SA_2013_003') === FALSE) {
         $url = 'https://www.drupal.org/SA-CORE-2013-003';
-        $requirements[$htaccess_file] = array(
+        $requirements[$htaccess_file] = [
           'title' => $info['title'],
           'value' => t('Not fully protected'),
           'severity' => REQUIREMENT_ERROR,
-          'description' => t('See <a href=":url">@url</a> for information about the recommended .htaccess file which should be added to the %directory directory to help protect against arbitrary code execution.', array(':url' => $url, '@url' => $url, '%directory' => $info['directory'])),
-        );
+          'description' => t('See <a href=":url">@url</a> for information about the recommended .htaccess file which should be added to the %directory directory to help protect against arbitrary code execution.', [':url' => $url, '@url' => $url, '%directory' => $info['directory']]),
+        ];
       }
     }
   }
@@ -519,13 +519,13 @@ function system_requirements($phase) {
     }
 
     // Set summary and description based on values determined above.
-    $summary = t('Last run @time ago', array('@time' => \Drupal::service('date.formatter')->formatTimeDiffSince($cron_last)));
+    $summary = t('Last run @time ago', ['@time' => \Drupal::service('date.formatter')->formatTimeDiffSince($cron_last)]);
 
-    $requirements['cron'] = array(
+    $requirements['cron'] = [
       'title' => t('Cron maintenance tasks'),
       'severity' => $severity,
       'value' => $summary,
-    );
+    ];
     if ($severity != REQUIREMENT_INFO) {
       $requirements['cron']['description'][] = [
         [
@@ -557,19 +557,19 @@ function system_requirements($phase) {
   }
   if ($phase != 'install') {
     $filesystem_config = \Drupal::config('system.file');
-    $directories = array(
+    $directories = [
       PublicStream::basePath(),
       // By default no private files directory is configured. For private files
       // to be secure the admin needs to provide a path outside the webroot.
       PrivateStream::basePath(),
       file_directory_temp(),
-    );
+    ];
   }
 
   // During an install we need to make assumptions about the file system
   // unless overrides are provided in settings.php.
   if ($phase == 'install') {
-    $directories = array();
+    $directories = [];
     if ($file_public_path = Settings::get('file_public_path')) {
       $directories[] = $file_public_path;
     }
@@ -605,31 +605,31 @@ function system_requirements($phase) {
       }
       if (!is_dir($directory)) {
         if ($phase == 'install') {
-          $description = t('An automated attempt to create the directory %directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the <a href=":handbook_url">online handbook</a>.', array('%directory' => $directory, ':handbook_url' => 'https://www.drupal.org/server-permissions'));
+          $description = t('An automated attempt to create the directory %directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the <a href=":handbook_url">online handbook</a>.', ['%directory' => $directory, ':handbook_url' => 'https://www.drupal.org/server-permissions']);
         }
         else {
-          $description = t('The directory %directory does not exist.', array('%directory' => $directory));
+          $description = t('The directory %directory does not exist.', ['%directory' => $directory]);
         }
-        $requirements['config directory ' . $type] = array(
+        $requirements['config directory ' . $type] = [
           'title' => t('Configuration directory: %type', ['%type' => $type]),
           'description' => $description,
           'severity' => REQUIREMENT_ERROR,
-        );
+        ];
       }
     }
   }
   if ($phase != 'install' && (empty($GLOBALS['config_directories']) || empty($GLOBALS['config_directories'][CONFIG_SYNC_DIRECTORY]) )) {
-    $requirements['config directories'] = array(
+    $requirements['config directories'] = [
       'title' => t('Configuration directories'),
       'value' => t('Not present'),
-      'description' => t('Your %file file must define the $config_directories variable as an array containing the names of directories in which configuration files can be found. It must contain a %sync_key key.', array('%file' => $site_path . '/settings.php', '%sync_key' => CONFIG_SYNC_DIRECTORY)),
+      'description' => t('Your %file file must define the $config_directories variable as an array containing the names of directories in which configuration files can be found. It must contain a %sync_key key.', ['%file' => $site_path . '/settings.php', '%sync_key' => CONFIG_SYNC_DIRECTORY]),
       'severity' => REQUIREMENT_ERROR,
-    );
+    ];
   }
 
-  $requirements['file system'] = array(
+  $requirements['file system'] = [
     'title' => t('File system'),
-  );
+  ];
 
   $error = '';
   // For installer, create the directories if possible.
@@ -646,30 +646,30 @@ function system_requirements($phase) {
       $description = '';
       $requirements['file system']['value'] = t('Not writable');
       if (!$is_directory) {
-        $error = t('The directory %directory does not exist.', array('%directory' => $directory));
+        $error = t('The directory %directory does not exist.', ['%directory' => $directory]);
       }
       else {
-        $error = t('The directory %directory is not writable.', array('%directory' => $directory));
+        $error = t('The directory %directory is not writable.', ['%directory' => $directory]);
       }
       // The files directory requirement check is done only during install and runtime.
       if ($phase == 'runtime') {
-        $description = t('You may need to set the correct directory at the <a href=":admin-file-system">file system settings page</a> or change the current directory\'s permissions so that it is writable.', array(':admin-file-system' => \Drupal::url('system.file_system_settings')));
+        $description = t('You may need to set the correct directory at the <a href=":admin-file-system">file system settings page</a> or change the current directory\'s permissions so that it is writable.', [':admin-file-system' => \Drupal::url('system.file_system_settings')]);
       }
       elseif ($phase == 'install') {
         // For the installer UI, we need different wording. 'value' will
         // be treated as version, so provide none there.
-        $description = t('An automated attempt to create this directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the <a href=":handbook_url">online handbook</a>.', array(':handbook_url' => 'https://www.drupal.org/server-permissions'));
+        $description = t('An automated attempt to create this directory failed, possibly due to a permissions problem. To proceed with the installation, either create the directory and modify its permissions manually or ensure that the installer has the permissions to create it automatically. For more information, see INSTALL.txt or the <a href=":handbook_url">online handbook</a>.', [':handbook_url' => 'https://www.drupal.org/server-permissions']);
         $requirements['file system']['value'] = '';
       }
       if (!empty($description)) {
-        $description = array(
+        $description = [
           '#type' => 'inline_template',
           '#template' => '{{ error }} {{ description }}',
-          '#context' => array(
+          '#context' => [
             'error' => $error,
             'description' => $description,
-          ),
-        );
+          ],
+        ];
         $requirements['file system']['description'] = $description;
         $requirements['file system']['severity'] = REQUIREMENT_ERROR;
       }
@@ -688,10 +688,10 @@ function system_requirements($phase) {
 
   // See if updates are available in update.php.
   if ($phase == 'runtime') {
-    $requirements['update'] = array(
+    $requirements['update'] = [
       'title' => t('Database updates'),
       'value' => t('Up to date'),
-    );
+    ];
 
     // Check installed modules.
     $has_pending_updates = FALSE;
@@ -717,7 +717,7 @@ function system_requirements($phase) {
     if ($has_pending_updates) {
       $requirements['update']['severity'] = REQUIREMENT_ERROR;
       $requirements['update']['value'] = t('Out of date');
-      $requirements['update']['description'] = t('Some modules have database schema updates to install. You should run the <a href=":update">database update script</a> immediately.', array(':update' => \Drupal::url('system.db_update')));
+      $requirements['update']['description'] = t('Some modules have database schema updates to install. You should run the <a href=":update">database update script</a> immediately.', [':update' => \Drupal::url('system.db_update')]);
     }
 
     $requirements['entity_update'] = [
@@ -746,16 +746,16 @@ function system_requirements($phase) {
   // Verify the update.php access setting
   if ($phase == 'runtime') {
     if (Settings::get('update_free_access')) {
-      $requirements['update access'] = array(
+      $requirements['update access'] = [
         'value' => t('Not protected'),
         'severity' => REQUIREMENT_ERROR,
-        'description' => t('The update.php script is accessible to everyone without authentication check, which is a security risk. You must change the @settings_name value in your settings.php back to FALSE.', array('@settings_name' => '$settings[\'update_free_access\']')),
-      );
+        'description' => t('The update.php script is accessible to everyone without authentication check, which is a security risk. You must change the @settings_name value in your settings.php back to FALSE.', ['@settings_name' => '$settings[\'update_free_access\']']),
+      ];
     }
     else {
-      $requirements['update access'] = array(
+      $requirements['update access'] = [
         'value' => t('Protected'),
-      );
+      ];
     }
     $requirements['update access']['title'] = t('Access to update.php');
   }
@@ -773,7 +773,7 @@ function system_requirements($phase) {
       $name = $file->info['name'];
       $php = $file->info['php'];
       if (version_compare($php, PHP_VERSION, '>')) {
-        $requirements['php']['description'] .= t('@name requires at least PHP @version.', array('@name' => $name, '@version' => $php));
+        $requirements['php']['description'] .= t('@name requires at least PHP @version.', ['@name' => $name, '@version' => $php]);
         $requirements['php']['severity'] = REQUIREMENT_ERROR;
       }
       // Check the module's required modules.
@@ -781,12 +781,12 @@ function system_requirements($phase) {
         $required_module = $requirement['name'];
         // Check if the module exists.
         if (!isset($files[$required_module])) {
-          $requirements["$module-$required_module"] = array(
+          $requirements["$module-$required_module"] = [
             'title' => t('Unresolved dependency'),
-            'description' => t('@name requires this module.', array('@name' => $name)),
-            'value' => t('@required_name (Missing)', array('@required_name' => $required_module)),
+            'description' => t('@name requires this module.', ['@name' => $name]),
+            'value' => t('@required_name (Missing)', ['@required_name' => $required_module]),
             'severity' => REQUIREMENT_ERROR,
-          );
+          ];
           continue;
         }
         // Check for an incompatible version.
@@ -796,12 +796,12 @@ function system_requirements($phase) {
         $compatibility = drupal_check_incompatibility($requirement, $version);
         if ($compatibility) {
           $compatibility = rtrim(substr($compatibility, 2), ')');
-          $requirements["$module-$required_module"] = array(
+          $requirements["$module-$required_module"] = [
             'title' => t('Unresolved dependency'),
-            'description' => t('@name requires this module and version. Currently using @required_name version @version', array('@name' => $name, '@required_name' => $required_name, '@version' => $version)),
-            'value' => t('@required_name (Version @compatibility required)', array('@required_name' => $required_name, '@compatibility' => $compatibility)),
+            'description' => t('@name requires this module and version. Currently using @required_name version @version', ['@name' => $name, '@required_name' => $required_name, '@version' => $version]),
+            'value' => t('@required_name (Version @compatibility required)', ['@required_name' => $required_name, '@compatibility' => $compatibility]),
             'severity' => REQUIREMENT_ERROR,
-          );
+          ];
           continue;
         }
       }
@@ -815,29 +815,29 @@ function system_requirements($phase) {
   if ($phase == 'runtime') {
     // Check for update status module.
     if (!\Drupal::moduleHandler()->moduleExists('update')) {
-      $requirements['update status'] = array(
+      $requirements['update status'] = [
         'value' => t('Not enabled'),
         'severity' => REQUIREMENT_WARNING,
-        'description' => t('Update notifications are not enabled. It is <strong>highly recommended</strong> that you enable the Update Manager module from the <a href=":module">module administration page</a> in order to stay up-to-date on new releases. For more information, <a href=":update">Update status handbook page</a>.', array(
+        'description' => t('Update notifications are not enabled. It is <strong>highly recommended</strong> that you enable the Update Manager module from the <a href=":module">module administration page</a> in order to stay up-to-date on new releases. For more information, <a href=":update">Update status handbook page</a>.', [
           ':update' => 'https://www.drupal.org/documentation/modules/update',
           ':module' => \Drupal::url('system.modules_list'),
-        )),
-      );
+        ]),
+      ];
     }
     else {
-      $requirements['update status'] = array(
+      $requirements['update status'] = [
         'value' => t('Enabled'),
-      );
+      ];
     }
     $requirements['update status']['title'] = t('Update notifications');
 
     if (Settings::get('rebuild_access')) {
-      $requirements['rebuild access'] = array(
+      $requirements['rebuild access'] = [
         'title' => t('Rebuild access'),
         'value' => t('Enabled'),
         'severity' => REQUIREMENT_ERROR,
         'description' => t('The rebuild_access setting is enabled in settings.php. It is recommended to have this setting disabled unless you are performing a rebuild.'),
-      );
+      ];
     }
   }
 
@@ -846,19 +846,19 @@ function system_requirements($phase) {
   if ($phase == 'runtime') {
     $trusted_host_patterns = Settings::get('trusted_host_patterns');
     if (empty($trusted_host_patterns)) {
-      $requirements['trusted_host_patterns'] = array(
+      $requirements['trusted_host_patterns'] = [
         'title' => t('Trusted Host Settings'),
         'value' => t('Not enabled'),
-        'description' => t('The trusted_host_patterns setting is not configured in settings.php. This can lead to security vulnerabilities. It is <strong>highly recommended</strong> that you configure this. See <a href=":url">Protecting against HTTP HOST Header attacks</a> for more information.', array(':url' => 'https://www.drupal.org/node/1992030')),
+        'description' => t('The trusted_host_patterns setting is not configured in settings.php. This can lead to security vulnerabilities. It is <strong>highly recommended</strong> that you configure this. See <a href=":url">Protecting against HTTP HOST Header attacks</a> for more information.', [':url' => 'https://www.drupal.org/node/1992030']),
         'severity' => REQUIREMENT_ERROR,
-      );
+      ];
     }
     else {
-      $requirements['trusted_host_patterns'] = array(
+      $requirements['trusted_host_patterns'] = [
         'title' => t('Trusted Host Settings'),
         'value' => t('Enabled'),
-        'description' => t('The trusted_host_patterns setting is set to allow %trusted_host_patterns', array('%trusted_host_patterns' => join(', ', $trusted_host_patterns))),
-      );
+        'description' => t('The trusted_host_patterns setting is set to allow %trusted_host_patterns', ['%trusted_host_patterns' => join(', ', $trusted_host_patterns)]),
+      ];
     }
   }
 
@@ -954,133 +954,133 @@ function system_install() {
  * Implements hook_schema().
  */
 function system_schema() {
-  $schema['key_value'] = array(
+  $schema['key_value'] = [
     'description' => 'Generic key-value storage table. See the state system for an example.',
-    'fields' => array(
-      'collection' => array(
+    'fields' => [
+      'collection' => [
         'description' => 'A named collection of key and value pairs.',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'description' => 'The key of the key-value pair. As KEY is a SQL reserved keyword, name was chosen instead.',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'value' => array(
+      ],
+      'value' => [
         'description' => 'The value.',
         'type' => 'blob',
         'not null' => TRUE,
         'size' => 'big',
-      ),
-    ),
-    'primary key' => array('collection', 'name'),
-  );
+      ],
+    ],
+    'primary key' => ['collection', 'name'],
+  ];
 
-  $schema['key_value_expire'] = array(
+  $schema['key_value_expire'] = [
     'description' => 'Generic key/value storage table with an expiration.',
-    'fields' => array(
-      'collection' => array(
+    'fields' => [
+      'collection' => [
         'description' => 'A named collection of key and value pairs.',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'name' => array(
+      ],
+      'name' => [
         // KEY is an SQL reserved word, so use 'name' as the key's field name.
         'description' => 'The key of the key/value pair.',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'value' => array(
+      ],
+      'value' => [
         'description' => 'The value of the key/value pair.',
         'type' => 'blob',
         'not null' => TRUE,
         'size' => 'big',
-      ),
-      'expire' => array(
+      ],
+      'expire' => [
         'description' => 'The time since Unix epoch in seconds when this item expires. Defaults to the maximum possible time.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 2147483647,
-      ),
-    ),
-    'primary key' => array('collection', 'name'),
-    'indexes' => array(
-      'all' => array('name', 'collection', 'expire'),
-      'expire' => array('expire'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['collection', 'name'],
+    'indexes' => [
+      'all' => ['name', 'collection', 'expire'],
+      'expire' => ['expire'],
+    ],
+  ];
 
-  $schema['sequences'] = array(
+  $schema['sequences'] = [
     'description' => 'Stores IDs.',
-    'fields' => array(
-      'value' => array(
+    'fields' => [
+      'value' => [
         'description' => 'The value of the sequence.',
         'type' => 'serial',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-     ),
-    'primary key' => array('value'),
-  );
+      ],
+     ],
+    'primary key' => ['value'],
+  ];
 
-  $schema['sessions'] = array(
+  $schema['sessions'] = [
     'description' => "Drupal's session handlers read and write into the sessions table. Each record represents a user session, either anonymous or authenticated.",
-    'fields' => array(
-      'uid' => array(
+    'fields' => [
+      'uid' => [
         'description' => 'The {users}.uid corresponding to a session, or 0 for anonymous user.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'sid' => array(
+      ],
+      'sid' => [
         'description' => "A session ID (hashed). The value is generated by Drupal's session handlers.",
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
-      ),
-      'hostname' => array(
+      ],
+      'hostname' => [
         'description' => 'The IP address that last used this session ID (sid).',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'timestamp' => array(
+      ],
+      'timestamp' => [
         'description' => 'The Unix timestamp when this session last requested a page. Old records are purged by PHP automatically.',
         'type' => 'int',
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'session' => array(
+      ],
+      'session' => [
         'description' => 'The serialized contents of $_SESSION, an array of name/value pairs that persists across page requests by this session ID. Drupal loads $_SESSION from here at the start of each request and saves it at the end.',
         'type' => 'blob',
         'not null' => FALSE,
         'size' => 'big',
-      ),
-    ),
-    'primary key' => array(
+      ],
+    ],
+    'primary key' => [
       'sid',
-    ),
-    'indexes' => array(
-      'timestamp' => array('timestamp'),
-      'uid' => array('uid'),
-    ),
-    'foreign keys' => array(
-      'session_user' => array(
+    ],
+    'indexes' => [
+      'timestamp' => ['timestamp'],
+      'uid' => ['uid'],
+    ],
+    'foreign keys' => [
+      'session_user' => [
         'table' => 'users',
-        'columns' => array('uid' => 'uid'),
-      ),
-    ),
-  );
+        'columns' => ['uid' => 'uid'],
+      ],
+    ],
+  ];
 
   // Create the url_alias table. The alias_storage service can auto-create its
   // table, but this relies on exceptions being thrown. These exceptions will be
@@ -1107,38 +1107,38 @@ function system_update_8001(&$sandbox = NULL) {
       // Converting directly to blob can cause problems with reading out and
       // serializing the string data later on postgres, so rename the existing
       // columns and create replacement ones to hold the serialized objects.
-      $old_fields = array(
-        'title' => array(
+      $old_fields = [
+        'title' => [
           'description' => 'The text displayed for the link.',
           'type' => 'varchar',
           'length' => 255,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'description' => array(
+        ],
+        'description' => [
           'description' => 'The description of this link - used for admin pages and title attribute.',
           'type' => 'text',
           'not null' => FALSE,
-        ),
-      );
+        ],
+      ];
       foreach ($old_fields as $name => $spec) {
         $schema->changeField('menu_tree', $name, 'system_update_8001_' . $name, $spec);
       }
-      $spec = array(
+      $spec = [
         'description' => 'The title for the link. May be a serialized TranslatableMarkup.',
         'type' => 'blob',
         'size' => 'big',
         'not null' => FALSE,
         'serialize' => TRUE,
-      );
+      ];
       $schema->addField('menu_tree', 'title', $spec);
-      $spec = array(
+      $spec = [
         'description' => 'The description of this link - used for admin pages and title attribute.',
         'type' => 'blob',
         'size' => 'big',
         'not null' => FALSE,
         'serialize' => TRUE,
-      );
+      ];
       $schema->addField('menu_tree', 'description', $spec);
 
       $sandbox['current'] = 0;
diff --git a/core/modules/system/system.module b/core/modules/system/system.module
index b6f9774..a1a6b71 100644
--- a/core/modules/system/system.module
+++ b/core/modules/system/system.module
@@ -95,29 +95,29 @@ function system_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.system':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The System module is integral to the site: it provides user interfaces for many core systems and settings, as well as the basic administrative menu structure. For more information, see the <a href=":system">online documentation for the System module</a>.', array(':system' => 'https://www.drupal.org/documentation/modules/system')) . '</p>';
+      $output .= '<p>' . t('The System module is integral to the site: it provides user interfaces for many core systems and settings, as well as the basic administrative menu structure. For more information, see the <a href=":system">online documentation for the System module</a>.', [':system' => 'https://www.drupal.org/documentation/modules/system']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing modules') . '</dt>';
-      $output .= '<dd>' . t('Users with appropriate permission can install and uninstall modules from the <a href=":modules">Extend page</a>. Depending on which distribution or installation profile you choose when you install your site, several modules are installed and others are provided but not installed. Each module provides a discrete set of features; modules may be installed or uninstalled depending on the needs of the site. Many additional modules contributed by members of the Drupal community are available for download from the <a href=":drupal-modules">Drupal.org module page</a>. Note that uninstalling a module is a destructive action: when you uninstall a module, you will permanently lose all data connected to the module.', array(':modules' => \Drupal::url('system.modules_list'), ':drupal-modules' => 'https://www.drupal.org/project/modules')) . '</dd>';
+      $output .= '<dd>' . t('Users with appropriate permission can install and uninstall modules from the <a href=":modules">Extend page</a>. Depending on which distribution or installation profile you choose when you install your site, several modules are installed and others are provided but not installed. Each module provides a discrete set of features; modules may be installed or uninstalled depending on the needs of the site. Many additional modules contributed by members of the Drupal community are available for download from the <a href=":drupal-modules">Drupal.org module page</a>. Note that uninstalling a module is a destructive action: when you uninstall a module, you will permanently lose all data connected to the module.', [':modules' => \Drupal::url('system.modules_list'), ':drupal-modules' => 'https://www.drupal.org/project/modules']) . '</dd>';
       $output .= '<dt>' . t('Managing themes') . '</dt>';
-      $output .= '<dd>' . t('Users with appropriate permission can install and uninstall themes on the <a href=":themes">Appearance page</a>. Themes determine the design and presentation of your site. Depending on which distribution or installation profile you choose when you install your site, a default theme is installed, and possibly a different theme for administration pages. Other themes are provided but not installed, and additional contributed themes are available at the <a href=":drupal-themes">Drupal.org theme page</a>.', array(':themes' => \Drupal::url('system.themes_page'), ':drupal-themes' => 'https://www.drupal.org/project/themes')) . '</dd>';
+      $output .= '<dd>' . t('Users with appropriate permission can install and uninstall themes on the <a href=":themes">Appearance page</a>. Themes determine the design and presentation of your site. Depending on which distribution or installation profile you choose when you install your site, a default theme is installed, and possibly a different theme for administration pages. Other themes are provided but not installed, and additional contributed themes are available at the <a href=":drupal-themes">Drupal.org theme page</a>.', [':themes' => \Drupal::url('system.themes_page'), ':drupal-themes' => 'https://www.drupal.org/project/themes']) . '</dd>';
       $output .= '<dt>' . t('Disabling drag-and-drop functionality') . '</dt>';
       $output .= '<dd>' . t('The default drag-and-drop user interface for ordering tables in the administrative interface presents a challenge for some users, including users of screen readers and other assistive technology. The drag-and-drop interface can be disabled in a table by clicking a link labeled "Show row weights" above the table. The replacement interface allows users to order the table by choosing numerical weights instead of dragging table rows.') . '</dd>';
       $output .= '<dt>' . t('Configuring basic site settings') . '</dt>';
-      $output .= '<dd>' . t('The System module provides pages for managing basic site configuration, including <a href=":date-time-settings">Date and time formats</a> and <a href=":site-info">Basic site settings</a> (site name, email address to send mail from, home page, and error pages). Additional configuration pages are listed on the main <a href=":config">Configuration page</a>.', array(':date-time-settings' => \Drupal::url('entity.date_format.collection'), ':site-info' => \Drupal::url('system.site_information_settings'), ':config' => \Drupal::url('system.admin_config'))) . '</dd>';
+      $output .= '<dd>' . t('The System module provides pages for managing basic site configuration, including <a href=":date-time-settings">Date and time formats</a> and <a href=":site-info">Basic site settings</a> (site name, email address to send mail from, home page, and error pages). Additional configuration pages are listed on the main <a href=":config">Configuration page</a>.', [':date-time-settings' => \Drupal::url('entity.date_format.collection'), ':site-info' => \Drupal::url('system.site_information_settings'), ':config' => \Drupal::url('system.admin_config')]) . '</dd>';
       $output .= '<dt>' . t('Checking site status') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":status">Status report</a> provides an overview of the configuration, status, and health of your site. Review this report to make sure there are not any problems to address, and to find information about the software your site and web server are using.', array(':status' => \Drupal::url('system.status'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":status">Status report</a> provides an overview of the configuration, status, and health of your site. Review this report to make sure there are not any problems to address, and to find information about the software your site and web server are using.', [':status' => \Drupal::url('system.status')]) . '</dd>';
       $output .= '<dt>' . t('Using maintenance mode') . '</dt>';
-      $output .= '<dd>' . t('When you are performing site maintenance, you can prevent non-administrative users (including anonymous visitors) from viewing your site by putting it in <a href=":maintenance-mode">Maintenance mode</a>. This will prevent unauthorized users from making changes to the site while you are performing maintenance, or from seeing a broken site while updates are in progress.', array(':maintenance-mode' => \Drupal::url('system.site_maintenance_mode'))) . '</dd>';
+      $output .= '<dd>' . t('When you are performing site maintenance, you can prevent non-administrative users (including anonymous visitors) from viewing your site by putting it in <a href=":maintenance-mode">Maintenance mode</a>. This will prevent unauthorized users from making changes to the site while you are performing maintenance, or from seeing a broken site while updates are in progress.', [':maintenance-mode' => \Drupal::url('system.site_maintenance_mode')]) . '</dd>';
       $output .= '<dt>' . t('Configuring for performance') . '</dt>';
-      $output .= '<dd>' . t('On the <a href=":performance-page">Performance page</a>, the site can be configured to aggregate CSS and JavaScript files, making the total request size smaller. Note that, for small- to medium-sized websites, the <a href=":page-cache">Internal Page Cache module</a> should be installed so that pages are efficiently cached and reused for anonymous users. Finally, for websites of all sizes, the <a href=":dynamic-page-cache">Dynamic Page Cache module</a> should also be installed so that the non-personalized parts of pages are efficiently cached (for all users).', array(':performance-page' => \Drupal::url('system.performance_settings'), ':page-cache' => (\Drupal::moduleHandler()->moduleExists('page_cache')) ? \Drupal::url('help.page', array('name' => 'page_cache')) : '#', ':dynamic-page-cache' => (\Drupal::moduleHandler()->moduleExists('dynamic_page_cache')) ? \Drupal::url('help.page', array('name' => 'dynamic_page_cache')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('On the <a href=":performance-page">Performance page</a>, the site can be configured to aggregate CSS and JavaScript files, making the total request size smaller. Note that, for small- to medium-sized websites, the <a href=":page-cache">Internal Page Cache module</a> should be installed so that pages are efficiently cached and reused for anonymous users. Finally, for websites of all sizes, the <a href=":dynamic-page-cache">Dynamic Page Cache module</a> should also be installed so that the non-personalized parts of pages are efficiently cached (for all users).', [':performance-page' => \Drupal::url('system.performance_settings'), ':page-cache' => (\Drupal::moduleHandler()->moduleExists('page_cache')) ? \Drupal::url('help.page', ['name' => 'page_cache']) : '#', ':dynamic-page-cache' => (\Drupal::moduleHandler()->moduleExists('dynamic_page_cache')) ? \Drupal::url('help.page', ['name' => 'dynamic_page_cache']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Configuring cron') . '</dt>';
-      $output .= '<dd>' . t('In order for the site and its modules to continue to operate well, a set of routine administrative operations must run on a regular basis; these operations are known as <em>cron</em> tasks. On the <a href=":cron">Cron page</a>, you can configure cron to run periodically as part of server responses by installing the <em>Automated Cron</em> module, or you can turn this off and trigger cron from an outside process on your web server. You can verify the status of cron tasks by visiting the <a href=":status">Status report page</a>. For more information, see the <a href=":handbook">online documentation for configuring cron jobs</a>.', array(':status' => \Drupal::url('system.status'), ':handbook' => 'https://www.drupal.org/cron', ':cron' => \Drupal::url('system.cron_settings'))) . '</dd>';
+      $output .= '<dd>' . t('In order for the site and its modules to continue to operate well, a set of routine administrative operations must run on a regular basis; these operations are known as <em>cron</em> tasks. On the <a href=":cron">Cron page</a>, you can configure cron to run periodically as part of server responses by installing the <em>Automated Cron</em> module, or you can turn this off and trigger cron from an outside process on your web server. You can verify the status of cron tasks by visiting the <a href=":status">Status report page</a>. For more information, see the <a href=":handbook">online documentation for configuring cron jobs</a>.', [':status' => \Drupal::url('system.status'), ':handbook' => 'https://www.drupal.org/cron', ':cron' => \Drupal::url('system.cron_settings')]) . '</dd>';
       $output .= '<dt>' . t('Configuring the file system') . '</dt>';
-      $output .= '<dd>' . t('Your site has several file directories, which are used to store and process uploaded and generated files. The <em>public</em> file directory, which is configured in your settings.php file, is the default place for storing uploaded files. Links to files in this directory contain the direct file URL, so when the files are requested, the web server will send them directly without invoking your site code. This means that the files can be downloaded by anyone with the file URL, so requests are not access-controlled but they are efficient. The <em>private</em> file directory, also configured in your settings.php file and ideally located outside the site web root, is access controlled. Links to files in this directory are not direct, so requests to these files are mediated by your site code. This means that your site can check file access permission for each file before deciding to fulfill the request, so the requests are more secure, but less efficient. You should only use the private storage for files that need access control, not for files like your site logo and background images used on every page. The <em>temporary</em> file directory is used internally by your site code for various operations, and is configured on the <a href=":file-system">File system settings</a> page. You can also see the configured public and private file directories on this page, and choose whether public or private should be the default for uploaded files.', array(':file-system' => \Drupal::url('system.file_system_settings'))) . '</dd>';
+      $output .= '<dd>' . t('Your site has several file directories, which are used to store and process uploaded and generated files. The <em>public</em> file directory, which is configured in your settings.php file, is the default place for storing uploaded files. Links to files in this directory contain the direct file URL, so when the files are requested, the web server will send them directly without invoking your site code. This means that the files can be downloaded by anyone with the file URL, so requests are not access-controlled but they are efficient. The <em>private</em> file directory, also configured in your settings.php file and ideally located outside the site web root, is access controlled. Links to files in this directory are not direct, so requests to these files are mediated by your site code. This means that your site can check file access permission for each file before deciding to fulfill the request, so the requests are more secure, but less efficient. You should only use the private storage for files that need access control, not for files like your site logo and background images used on every page. The <em>temporary</em> file directory is used internally by your site code for various operations, and is configured on the <a href=":file-system">File system settings</a> page. You can also see the configured public and private file directories on this page, and choose whether public or private should be the default for uploaded files.', [':file-system' => \Drupal::url('system.file_system_settings')]) . '</dd>';
       $output .= '<dt>' . t('Configuring the image toolkit') . '</dt>';
-      $output .= '<dd>' . t('On the <a href=":toolkit">Image toolkit page</a>, you can select and configure the PHP toolkit used to manipulate images. Depending on which distribution or installation profile you choose when you install your site, the GD2 toolkit and possibly others are included; other toolkits may be provided by contributed modules.', array(':toolkit' => \Drupal::url('system.image_toolkit_settings'))) . '</dd>';
+      $output .= '<dd>' . t('On the <a href=":toolkit">Image toolkit page</a>, you can select and configure the PHP toolkit used to manipulate images. Depending on which distribution or installation profile you choose when you install your site, the GD2 toolkit and possibly others are included; other toolkits may be provided by contributed modules.', [':toolkit' => \Drupal::url('system.image_toolkit_settings')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -125,24 +125,24 @@ function system_help($route_name, RouteMatchInterface $route_match) {
       return '<p>' . t('This page shows you all available administration tasks for each module.') . '</p>';
 
     case 'system.themes_page':
-      $output = '<p>' . t('Set and configure the default theme for your website.  Alternative <a href=":themes">themes</a> are available.', array(':themes' => 'https://www.drupal.org/project/themes')) . '</p>';
+      $output = '<p>' . t('Set and configure the default theme for your website.  Alternative <a href=":themes">themes</a> are available.', [':themes' => 'https://www.drupal.org/project/themes']) . '</p>';
       if (\Drupal::moduleHandler()->moduleExists('block')) {
-        $output .= '<p>' . t('You can place blocks for each theme on the <a href=":blocks">block layout</a> page.', array(':blocks' => \Drupal::url('block.admin_display'))) . '</p>';
+        $output .= '<p>' . t('You can place blocks for each theme on the <a href=":blocks">block layout</a> page.', [':blocks' => \Drupal::url('block.admin_display')]) . '</p>';
       }
       return $output;
 
     case 'system.theme_settings_theme':
       $theme_list = \Drupal::service('theme_handler')->listInfo();
       $theme = $theme_list[$route_match->getParameter('theme')];
-      return '<p>' . t('These options control the display settings for the %name theme. When your site is displayed using this theme, these settings will be used.', array('%name' => $theme->info['name'])) . '</p>';
+      return '<p>' . t('These options control the display settings for the %name theme. When your site is displayed using this theme, these settings will be used.', ['%name' => $theme->info['name']]) . '</p>';
 
     case 'system.theme_settings':
       return '<p>' . t('Control default display settings for your site, across all themes. Use theme-specific settings to override these defaults.') . '</p>';
 
     case 'system.modules_list':
-      $output = '<p>' . t('Download additional <a href=":modules">contributed modules</a> to extend your site\'s functionality.', array(':modules' => 'https://www.drupal.org/project/modules')) . '</p>';
+      $output = '<p>' . t('Download additional <a href=":modules">contributed modules</a> to extend your site\'s functionality.', [':modules' => 'https://www.drupal.org/project/modules']) . '</p>';
       if (!\Drupal::moduleHandler()->moduleExists('update')) {
-        $output .= '<p>' . t('Regularly review available updates to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated. Enable the <a href=":update-manager">Update Manager module</a> to update and install modules and themes.', array(':update-php' => \Drupal::url('system.db_update'), ':update-manager' => \Drupal::url('system.modules_list', [], ['fragment' => 'module-update']))) . '</p>';
+        $output .= '<p>' . t('Regularly review available updates to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated. Enable the <a href=":update-manager">Update Manager module</a> to update and install modules and themes.', [':update-php' => \Drupal::url('system.db_update'), ':update-manager' => \Drupal::url('system.modules_list', [], ['fragment' => 'module-update'])]) . '</p>';
       }
       return $output;
 
@@ -168,7 +168,7 @@ function system_help($route_name, RouteMatchInterface $route_match) {
       break;
 
     case 'system.status':
-      return '<p>' . t("Here you can find a short overview of your site's parameters as well as any problems detected with your installation. It may be useful to copy and paste this information into support requests filed on Drupal.org's support forums and project issue queues. Before filing a support request, ensure that your web server meets the <a href=\":system-requirements\">system requirements.</a>", array(':system-requirements' => 'https://www.drupal.org/requirements')) . '</p>';
+      return '<p>' . t("Here you can find a short overview of your site's parameters as well as any problems detected with your installation. It may be useful to copy and paste this information into support requests filed on Drupal.org's support forums and project issue queues. Before filing a support request, ensure that your web server meets the <a href=\":system-requirements\">system requirements.</a>", [':system-requirements' => 'https://www.drupal.org/requirements']) . '</p>';
   }
 }
 
@@ -176,117 +176,117 @@ function system_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function system_theme() {
-  return array_merge(drupal_common_theme(), array(
+  return array_merge(drupal_common_theme(), [
     // Normally theme suggestion templates are only picked up when they are in
     // themes. We explicitly define theme suggestions here so that the block
     // templates in core/modules/system/templates are picked up.
-    'block__system_branding_block' => array(
+    'block__system_branding_block' => [
       'render element' => 'elements',
       'base hook' => 'block',
-    ),
-    'block__system_messages_block' => array(
+    ],
+    'block__system_messages_block' => [
       'base hook' => 'block',
-    ),
-    'block__system_menu_block' => array(
+    ],
+    'block__system_menu_block' => [
       'render element' => 'elements',
       'base hook' => 'block',
-    ),
-    'system_themes_page' => array(
-      'variables' => array(
-        'theme_groups' => array(),
-        'theme_group_titles' => array(),
-      ),
+    ],
+    'system_themes_page' => [
+      'variables' => [
+        'theme_groups' => [],
+        'theme_group_titles' => [],
+      ],
       'file' => 'system.admin.inc',
-    ),
-    'system_config_form' => array(
+    ],
+    'system_config_form' => [
       'render element' => 'form',
-    ),
-    'confirm_form' => array(
+    ],
+    'confirm_form' => [
       'render element' => 'form',
-    ),
-    'system_modules_details' => array(
+    ],
+    'system_modules_details' => [
       'render element' => 'form',
       'file' => 'system.admin.inc',
-    ),
-    'system_modules_uninstall' => array(
+    ],
+    'system_modules_uninstall' => [
       'render element' => 'form',
       'file' => 'system.admin.inc',
-    ),
-    'status_report_page' => array(
-      'variables' => array(
-        'counters' => array(),
-        'general_info' => array(),
+    ],
+    'status_report_page' => [
+      'variables' => [
+        'counters' => [],
+        'general_info' => [],
         'requirements' => NULL,
-      ),
-    ),
-    'status_report' => array(
-      'variables' => array(
+      ],
+    ],
+    'status_report' => [
+      'variables' => [
         'grouped_requirements' => NULL,
         'requirements' => NULL,
-      ),
-    ),
-    'status_report_grouped' => array(
-      'variables' => array(
+      ],
+    ],
+    'status_report_grouped' => [
+      'variables' => [
         'grouped_requirements' => NULL,
         'requirements' => NULL,
-      ),
-    ),
-    'status_report_counter' => array(
-      'variables' => array('amount' => NULL, 'text' => NULL, 'severity' => NULL),
-    ),
-    'status_report_general_info' => array(
-      'variables' => array(
-        'drupal' => array(),
-        'cron' => array(),
-        'database_system' => array(),
-        'database_system_version' => array(),
-        'php' => array(),
-        'php_memory_limit' => array(),
-        'webserver' => array(),
-      ),
-    ),
-    'admin_page' => array(
-      'variables' => array('blocks' => NULL),
+      ],
+    ],
+    'status_report_counter' => [
+      'variables' => ['amount' => NULL, 'text' => NULL, 'severity' => NULL],
+    ],
+    'status_report_general_info' => [
+      'variables' => [
+        'drupal' => [],
+        'cron' => [],
+        'database_system' => [],
+        'database_system_version' => [],
+        'php' => [],
+        'php_memory_limit' => [],
+        'webserver' => [],
+      ],
+    ],
+    'admin_page' => [
+      'variables' => ['blocks' => NULL],
       'file' => 'system.admin.inc',
-    ),
-    'admin_block' => array(
-      'variables' => array('block' => NULL),
+    ],
+    'admin_block' => [
+      'variables' => ['block' => NULL],
       'file' => 'system.admin.inc',
-    ),
-    'admin_block_content' => array(
-      'variables' => array('content' => NULL),
+    ],
+    'admin_block_content' => [
+      'variables' => ['content' => NULL],
       'file' => 'system.admin.inc',
-    ),
-    'system_admin_index' => array(
-      'variables' => array('menu_items' => NULL),
+    ],
+    'system_admin_index' => [
+      'variables' => ['menu_items' => NULL],
       'file' => 'system.admin.inc',
-    ),
-    'entity_add_list' => array(
-      'variables' => array(
-        'bundles' => array(),
+    ],
+    'entity_add_list' => [
+      'variables' => [
+        'bundles' => [],
         'add_bundle_message' => NULL,
-      ),
+      ],
       'template' => 'entity-add-list',
-    ),
-  ));
+    ],
+  ]);
 }
 
 /**
  * Implements hook_hook_info().
  */
 function system_hook_info() {
-  $hooks['token_info'] = array(
+  $hooks['token_info'] = [
     'group' => 'tokens',
-  );
-  $hooks['token_info_alter'] = array(
+  ];
+  $hooks['token_info_alter'] = [
     'group' => 'tokens',
-  );
-  $hooks['tokens'] = array(
+  ];
+  $hooks['tokens'] = [
     'group' => 'tokens',
-  );
-  $hooks['tokens_alter'] = array(
+  ];
+  $hooks['tokens_alter'] = [
     'group' => 'tokens',
-  );
+  ];
 
   return $hooks;
 }
@@ -311,7 +311,7 @@ function system_theme_suggestions_page(array $variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function system_theme_suggestions_maintenance_page(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
 
   // Dead databases will show error messages so supplying this template will
   // allow themers to override the page and the content completely.
@@ -334,7 +334,7 @@ function system_theme_suggestions_maintenance_page(array $variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function system_theme_suggestions_region(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
   if (!empty($variables['elements']['#region'])) {
     $suggestions[] = 'region__' . $variables['elements']['#region'];
   }
@@ -345,7 +345,7 @@ function system_theme_suggestions_region(array $variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function system_theme_suggestions_field(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
   $element = $variables['element'];
 
   $suggestions[] = 'field__' . $element['#field_type'];
@@ -452,18 +452,18 @@ function template_preprocess_entity_add_list(&$variables) {
  * @return
  *   Nothing, this function just initializes variables in the user's session.
  */
-function system_authorized_init($callback, $file, $arguments = array(), $page_title = NULL) {
+function system_authorized_init($callback, $file, $arguments = [], $page_title = NULL) {
   // First, figure out what file transfer backends the site supports, and put
   // all of those in the SESSION so that authorize.php has access to all of
   // them via the class autoloader, even without a full bootstrap.
   $_SESSION['authorize_filetransfer_info'] = drupal_get_filetransfer_info();
 
   // Now, define the callback to invoke.
-  $_SESSION['authorize_operation'] = array(
+  $_SESSION['authorize_operation'] = [
     'callback' => $callback,
     'file' => $file,
     'arguments' => $arguments,
-  );
+  ];
 
   if (isset($page_title)) {
     $_SESSION['authorize_page_title'] = $page_title;
@@ -480,7 +480,7 @@ function system_authorized_init($callback, $file, $arguments = array(), $page_ti
  *
  * @see system_authorized_init()
  */
-function system_authorized_get_url(array $options = array()) {
+function system_authorized_get_url(array $options = []) {
   // core/authorize.php is an unrouted URL, so using the base: scheme is
   // the correct usage for this case.
   $url = Url::fromUri('base:core/authorize.php');
@@ -497,8 +497,8 @@ function system_authorized_get_url(array $options = array()) {
  *
  * @return \Drupal\Core\Url
  */
-function system_authorized_batch_processing_url(array $options = array()) {
-  $options['query'] = array('batch' => '1');
+function system_authorized_batch_processing_url(array $options = []) {
+  $options['query'] = ['batch' => '1'];
   return system_authorized_get_url($options);
 }
 
@@ -507,7 +507,7 @@ function system_authorized_batch_processing_url(array $options = array()) {
  *
  * @see system_authorized_init()
  */
-function system_authorized_run($callback, $file, $arguments = array(), $page_title = NULL) {
+function system_authorized_run($callback, $file, $arguments = [], $page_title = NULL) {
   system_authorized_init($callback, $file, $arguments, $page_title);
   return new RedirectResponse(system_authorized_get_url()->toString());
 }
@@ -531,43 +531,43 @@ function system_authorized_batch_process() {
  * Implements hook_updater_info().
  */
 function system_updater_info() {
-  return array(
-    'module' => array(
+  return [
+    'module' => [
       'class' => 'Drupal\Core\Updater\Module',
       'name' => t('Update modules'),
       'weight' => 0,
-    ),
-    'theme' => array(
+    ],
+    'theme' => [
       'class' => 'Drupal\Core\Updater\Theme',
       'name' => t('Update themes'),
       'weight' => 0,
-    ),
-  );
+    ],
+  ];
 }
 
 /**
  * Implements hook_filetransfer_info().
  */
 function system_filetransfer_info() {
-  $backends = array();
+  $backends = [];
 
   // This is the default, will be available on most systems.
   if (function_exists('ftp_connect')) {
-    $backends['ftp'] = array(
+    $backends['ftp'] = [
       'title' => t('FTP'),
       'class' => 'Drupal\Core\FileTransfer\FTP',
       'weight' => 0,
-    );
+    ];
   }
 
   // SSH2 lib connection is only available if the proper PHP extension is
   // installed.
   if (function_exists('ssh2_connect')) {
-    $backends['ssh'] = array(
+    $backends['ssh'] = [
       'title' => t('SSH'),
       'class' => 'Drupal\Core\FileTransfer\SSH',
       'weight' => 20,
-    );
+    ];
   }
   return $backends;
 }
@@ -595,61 +595,61 @@ function system_page_attachments(array &$page) {
   if (theme_get_setting('features.favicon')) {
     $favicon = theme_get_setting('favicon.url');
     $type = theme_get_setting('favicon.mimetype');
-    $page['#attached']['html_head_link'][][] = array(
+    $page['#attached']['html_head_link'][][] = [
       'rel' => 'shortcut icon',
       'href' => UrlHelper::stripDangerousProtocols($favicon),
       'type' => $type,
-    );
+    ];
   }
 
   // Get the major Drupal version.
   list($version, ) = explode('.', \Drupal::VERSION);
 
   // Attach default meta tags.
-  $meta_default = array(
+  $meta_default = [
     // Make sure the Content-Type comes first because the IE browser may be
     // vulnerable to XSS via encoding attacks from any content that comes
     // before this META tag, such as a TITLE tag.
-    'system_meta_content_type' => array(
+    'system_meta_content_type' => [
       '#tag' => 'meta',
-      '#attributes' => array(
+      '#attributes' => [
         'charset' => 'utf-8',
-      ),
+      ],
       // Security: This always has to be output first.
       '#weight' => -1000,
-    ),
+    ],
     // Show Drupal and the major version number in the META GENERATOR tag.
-    'system_meta_generator' => array(
+    'system_meta_generator' => [
       '#type' => 'html_tag',
       '#tag' => 'meta',
-      '#attributes' => array(
+      '#attributes' => [
         'name' => 'Generator',
         'content' => 'Drupal ' . $version . ' (https://www.drupal.org)',
-      ),
-    ),
+      ],
+    ],
     // Attach default mobile meta tags for responsive design.
-    'MobileOptimized' => array(
+    'MobileOptimized' => [
       '#tag' => 'meta',
-      '#attributes' => array(
+      '#attributes' => [
         'name' => 'MobileOptimized',
         'content' => 'width',
-      ),
-    ),
-    'HandheldFriendly' => array(
+      ],
+    ],
+    'HandheldFriendly' => [
       '#tag' => 'meta',
-      '#attributes' => array(
+      '#attributes' => [
         'name' => 'HandheldFriendly',
         'content' => 'true',
-      ),
-    ),
-    'viewport' => array(
+      ],
+    ],
+    'viewport' => [
       '#tag' => 'meta',
-      '#attributes' => array(
+      '#attributes' => [
         'name' => 'viewport',
         'content' => 'width=device-width, initial-scale=1.0',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
   foreach ($meta_default as $key => $value) {
     $page['#attached']['html_head'][] = [$value, $key];
   }
@@ -824,7 +824,7 @@ function system_user_login(UserInterface $account) {
   $config = \Drupal::config('system.date');
   // If the user has a NULL time zone, notify them to set a time zone.
   if (!$account->getTimezone() && $config->get('timezone.user.configurable') && $config->get('timezone.user.warn')) {
-    drupal_set_message(t('Configure your <a href=":user-edit">account time zone setting</a>.', array(':user-edit' => $account->url('edit-form', array('query' => \Drupal::destination()->getAsArray(), 'fragment' => 'edit-timezone')))));
+    drupal_set_message(t('Configure your <a href=":user-edit">account time zone setting</a>.', [':user-edit' => $account->url('edit-form', ['query' => \Drupal::destination()->getAsArray(), 'fragment' => 'edit-timezone'])]));
   }
 }
 
@@ -835,23 +835,23 @@ function system_user_timezone(&$form, FormStateInterface $form_state) {
   $user = \Drupal::currentUser();
 
   $account = $form_state->getFormObject()->getEntity();
-  $form['timezone'] = array(
+  $form['timezone'] = [
     '#type' => 'details',
     '#title' => t('Locale settings'),
     '#open' => TRUE,
     '#weight' => 6,
-  );
-  $form['timezone']['timezone'] = array(
+  ];
+  $form['timezone']['timezone'] = [
     '#type' => 'select',
     '#title' => t('Time zone'),
     '#default_value' => $account->getTimezone() ? $account->getTimezone() : \Drupal::config('system.date')->get('timezone.default'),
     '#options' => system_time_zones($account->id() != $user->id()),
     '#description' => t('Select the desired local time and time zone. Dates and times throughout this site will be displayed using this time zone.'),
-  );
+  ];
   $user_input = $form_state->getUserInput();
   if (!$account->getTimezone() && $account->id() == $user->id() && empty($user_input['timezone'])) {
     $form['timezone']['#attached']['library'][] = 'core/drupal.timezone';
-    $form['timezone']['timezone']['#attributes'] = array('class' => array('timezone-detect'));
+    $form['timezone']['timezone']['#attributes'] = ['class' => ['timezone-detect']];
   }
 }
 
@@ -903,14 +903,14 @@ function system_check_directory($form_element, FormStateInterface $form_state) {
   $logger = \Drupal::logger('file system');
   if (!is_dir($directory) && !drupal_mkdir($directory, NULL, TRUE)) {
     // If the directory does not exists and cannot be created.
-    $form_state->setErrorByName($form_element['#parents'][0], t('The directory %directory does not exist and could not be created.', array('%directory' => $directory)));
-    $logger->error('The directory %directory does not exist and could not be created.', array('%directory' => $directory));
+    $form_state->setErrorByName($form_element['#parents'][0], t('The directory %directory does not exist and could not be created.', ['%directory' => $directory]));
+    $logger->error('The directory %directory does not exist and could not be created.', ['%directory' => $directory]);
   }
 
   if (is_dir($directory) && !is_writable($directory) && !drupal_chmod($directory)) {
     // If the directory is not writable and cannot be made so.
-    $form_state->setErrorByName($form_element['#parents'][0], t('The directory %directory exists but is not writable and could not be made writable.', array('%directory' => $directory)));
-    $logger->error('The directory %directory exists but is not writable and could not be made writable.', array('%directory' => $directory));
+    $form_state->setErrorByName($form_element['#parents'][0], t('The directory %directory exists but is not writable and could not be made writable.', ['%directory' => $directory]));
+    $logger->error('The directory %directory exists but is not writable and could not be made writable.', ['%directory' => $directory]);
   }
   elseif (is_dir($directory)) {
     if ($form_element['#name'] == 'file_public_path') {
@@ -971,7 +971,7 @@ function system_get_info($type, $name = NULL) {
     }
   }
   else {
-    $info = array();
+    $info = [];
     $list = system_list($type);
     foreach ($list as $shortname => $item) {
       if (!empty($item->status)) {
@@ -980,7 +980,7 @@ function system_get_info($type, $name = NULL) {
     }
   }
   if (isset($name)) {
-    return isset($info[$name]) ? $info[$name] : array();
+    return isset($info[$name]) ? $info[$name] : [];
   }
   return $info;
 }
@@ -1017,13 +1017,13 @@ function _system_rebuild_module_data() {
   }
 
   // Set defaults for module info.
-  $defaults = array(
-    'dependencies' => array(),
+  $defaults = [
+    'dependencies' => [],
     'description' => '',
     'package' => 'Other',
     'version' => NULL,
     'php' => DRUPAL_MINIMUM_PHP,
-  );
+  ];
 
   // Read info files for each module.
   foreach ($modules as $key => $module) {
@@ -1085,7 +1085,7 @@ function _system_rebuild_module_data_ensure_required($module, &$modules) {
       $dependency_name = ModuleHandler::parseDependency($dependency)['name'];
       if (!isset($modules[$dependency_name]->info['required'])) {
         $modules[$dependency_name]->info['required'] = TRUE;
-        $modules[$dependency_name]->info['explanation'] = t('Dependency of required module @module', array('@module' => $module->info['name']));
+        $modules[$dependency_name]->info['explanation'] = t('Dependency of required module @module', ['@module' => $module->info['name']]);
         // Ensure any dependencies it has are required.
         _system_rebuild_module_data_ensure_required($modules[$dependency_name], $modules);
       }
@@ -1106,10 +1106,10 @@ function system_rebuild_module_data() {
   // reference from system_list_reset() during the rebuild.
   if (!isset($modules_cache)) {
     $modules = _system_rebuild_module_data();
-    $files = array();
+    $files = [];
     ksort($modules);
     // Add status, weight, and schema version.
-    $installed_modules = \Drupal::config('core.extension')->get('module') ?: array();
+    $installed_modules = \Drupal::config('core.extension')->get('module') ?: [];
     foreach ($modules as $name => $module) {
       $module->weight = isset($installed_modules[$name]) ? $installed_modules[$name] : 0;
       $module->status = (int) isset($installed_modules[$name]);
@@ -1144,11 +1144,11 @@ function system_region_list($theme, $show = REGIONS_ALL) {
   if (!$theme instanceof Extension) {
     $themes = \Drupal::service('theme_handler')->listInfo();
     if (!isset($themes[$theme])) {
-      return array();
+      return [];
     }
     $theme = $themes[$theme];
   }
-  $list = array();
+  $list = [];
   $info = $theme->info;
   // If requested, suppress hidden regions. See block_admin_display_form().
   foreach ($info['regions'] as $name => $label) {
@@ -1253,15 +1253,15 @@ function system_get_module_admin_tasks($module, array $info) {
     $parameters = new MenuTreeParameters();
     $parameters->setRoot('system.admin')->excludeRoot()->onlyEnabledLinks();
     $tree = $menu_tree->load('system.admin', $parameters);
-    $manipulators = array(
-      array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-      array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-      array('callable' => 'menu.default_tree_manipulators:flatten'),
-    );
+    $manipulators = [
+      ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+      ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+      ['callable' => 'menu.default_tree_manipulators:flatten'],
+    ];
     $tree = $menu_tree->transform($tree, $manipulators);
   }
 
-  $admin_tasks = array();
+  $admin_tasks = [];
   foreach ($tree as $element) {
     if (!$element->access->isAllowed()) {
       // @todo Bubble cacheability metadata of both accessible and inaccessible
@@ -1273,11 +1273,11 @@ function system_get_module_admin_tasks($module, array $info) {
     if ($link->getProvider() != $module) {
       continue;
     }
-    $admin_tasks[] = array(
+    $admin_tasks[] = [
       'title' => $link->getTitle(),
       'description' => $link->getDescription(),
       'url' => $link->getUrlObject(),
-    );
+    ];
   }
 
   // Append link for permissions.
@@ -1287,15 +1287,15 @@ function system_get_module_admin_tasks($module, array $info) {
   if ($permission_handler->moduleProvidesPermissions($module)) {
     /** @var \Drupal\Core\Access\AccessManagerInterface $access_manager */
     $access_manager = \Drupal::service('access_manager');
-    if ($access_manager->checkNamedRoute('user.admin_permissions', array(), \Drupal::currentUser())) {
+    if ($access_manager->checkNamedRoute('user.admin_permissions', [], \Drupal::currentUser())) {
       /** @var \Drupal\Core\Url $url */
       $url = new Url('user.admin_permissions');
       $url->setOption('fragment', 'module-' . $module);
-      $admin_tasks["user.admin_permissions.$module"] = array(
-        'title' => t('Configure @module permissions', array('@module' => $info['name'])),
+      $admin_tasks["user.admin_permissions.$module"] = [
+        'title' => t('Configure @module permissions', ['@module' => $info['name']]),
         'description' => '',
         'url' => $url,
-      );
+      ];
     }
   }
 
@@ -1348,7 +1348,7 @@ function system_mail($key, &$message, $params) {
   $subject = PlainTextOutput::renderFromHtml($token_service->replace($context['subject'], $context));
   $body = $token_service->replace($context['message'], $context);
 
-  $message['subject'] .= str_replace(array("\r", "\n"), '', $subject);
+  $message['subject'] .= str_replace(["\r", "\n"], '', $subject);
   $message['body'][] = $body;
 }
 
@@ -1360,13 +1360,13 @@ function system_mail($key, &$message, $params) {
  */
 function system_time_zones($blank = NULL) {
   $zonelist = timezone_identifiers_list();
-  $zones = $blank ? array('' => t('- None selected -')) : array();
+  $zones = $blank ? ['' => t('- None selected -')] : [];
   foreach ($zonelist as $zone) {
     // Because many time zones exist in PHP only for backward compatibility
     // reasons and should not be used, the list is filtered by a regular
     // expression.
     if (preg_match('!^((Africa|America|Antarctica|Arctic|Asia|Atlantic|Australia|Europe|Indian|Pacific)/|UTC$)!', $zone)) {
-      $zones[$zone] = t('@zone', array('@zone' => t(str_replace('_', ' ', $zone))));
+      $zones[$zone] = t('@zone', ['@zone' => t(str_replace('_', ' ', $zone))]);
     }
   }
   // Sort the translated time zones alphabetically.
@@ -1425,11 +1425,11 @@ function system_retrieve_file($url, $destination = NULL, $managed = FALSE, $repl
     $local = $managed ? file_save_data($data, $path, $replace) : file_unmanaged_save_data($data, $path, $replace);
   }
   catch (RequestException $exception) {
-    drupal_set_message(t('Failed to fetch file due to error "%error"', array('%error' => $exception->getMessage())), 'error');
+    drupal_set_message(t('Failed to fetch file due to error "%error"', ['%error' => $exception->getMessage()]), 'error');
     return FALSE;
   }
   if (!$local) {
-    drupal_set_message(t('@remote could not be saved to @path.', array('@remote' => $url, '@path' => $path)), 'error');
+    drupal_set_message(t('@remote could not be saved to @path.', ['@remote' => $url, '@path' => $path]), 'error');
   }
 
   return $local;
diff --git a/core/modules/system/system.tokens.inc b/core/modules/system/system.tokens.inc
index 66b5c7f..55c89ae 100644
--- a/core/modules/system/system.tokens.inc
+++ b/core/modules/system/system.tokens.inc
@@ -14,74 +14,74 @@
  * Implements hook_token_info().
  */
 function system_token_info() {
-  $types['site'] = array(
+  $types['site'] = [
     'name' => t("Site information"),
     'description' => t("Tokens for site-wide settings and other global information."),
-  );
-  $types['date'] = array(
+  ];
+  $types['date'] = [
     'name' => t("Dates"),
     'description' => t("Tokens related to times and dates."),
-  );
+  ];
 
   // Site-wide global tokens.
-  $site['name'] = array(
+  $site['name'] = [
     'name' => t("Name"),
     'description' => t("The name of the site."),
-  );
-  $site['slogan'] = array(
+  ];
+  $site['slogan'] = [
     'name' => t("Slogan"),
     'description' => t("The slogan of the site."),
-  );
-  $site['mail'] = array(
+  ];
+  $site['mail'] = [
     'name' => t("Email"),
     'description' => t("The administrative email address for the site."),
-  );
-  $site['url'] = array(
+  ];
+  $site['url'] = [
     'name' => t("URL"),
     'description' => t("The URL of the site's front page."),
-  );
-  $site['url-brief'] = array(
+  ];
+  $site['url-brief'] = [
     'name' => t("URL (brief)"),
     'description' => t("The URL of the site's front page without the protocol."),
-  );
-  $site['login-url'] = array(
+  ];
+  $site['login-url'] = [
     'name' => t("Login page"),
     'description' => t("The URL of the site's login page."),
-  );
+  ];
 
   // Date related tokens.
-  $date['short'] = array(
+  $date['short'] = [
     'name' => t("Short format"),
-    'description' => t("A date in 'short' format. (%date)", array('%date' => format_date(REQUEST_TIME, 'short'))),
-  );
-  $date['medium'] = array(
+    'description' => t("A date in 'short' format. (%date)", ['%date' => format_date(REQUEST_TIME, 'short')]),
+  ];
+  $date['medium'] = [
     'name' => t("Medium format"),
-    'description' => t("A date in 'medium' format. (%date)", array('%date' => format_date(REQUEST_TIME, 'medium'))),
-  );
-  $date['long'] = array(
+    'description' => t("A date in 'medium' format. (%date)", ['%date' => format_date(REQUEST_TIME, 'medium')]),
+  ];
+  $date['long'] = [
     'name' => t("Long format"),
-    'description' => t("A date in 'long' format. (%date)", array('%date' => format_date(REQUEST_TIME, 'long'))),
-  );
-  $date['custom'] = array(
+    'description' => t("A date in 'long' format. (%date)", ['%date' => format_date(REQUEST_TIME, 'long')]),
+  ];
+  $date['custom'] = [
     'name' => t("Custom format"),
     'description' => t('A date in a custom format. See <a href="http://php.net/manual/function.date.php">the PHP documentation</a> for details.'),
-  );
-  $date['since'] = array(
+  ];
+  $date['since'] = [
     'name' => t("Time-since"),
-    'description' => t("A date in 'time-since' format. (%date)", array('%date' => \Drupal::service('date.formatter')->formatTimeDiffSince(REQUEST_TIME - 360))),
-  );
-  $date['raw'] = array(
+    'description' => t("A date in 'time-since' format. (%date)", ['%date' => \Drupal::service('date.formatter')->formatTimeDiffSince(REQUEST_TIME - 360)]),
+  ];
+  $date['raw'] = [
     'name' => t("Raw timestamp"),
-    'description' => t("A date in UNIX timestamp format (%date)", array('%date' => REQUEST_TIME)),
-  );
+    'description' => t("A date in UNIX timestamp format (%date)", ['%date' => REQUEST_TIME]),
+  ];
 
-  return array(
+  return [
     'types' => $types,
-    'tokens' => array(
+    'tokens' => [
       'site' => $site,
       'date' => $date,
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -90,7 +90,7 @@ function system_token_info() {
 function system_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['langcode'])) {
     $url_options['language'] = \Drupal::languageManager()->getLanguage($options['langcode']);
     $langcode = $options['langcode'];
@@ -98,7 +98,7 @@ function system_tokens($type, $tokens, array $data, array $options, BubbleableMe
   else {
     $langcode = NULL;
   }
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'site') {
     foreach ($tokens as $name => $original) {
@@ -129,16 +129,16 @@ function system_tokens($type, $tokens, array $data, array $options, BubbleableMe
 
         case 'url':
           /** @var \Drupal\Core\GeneratedUrl $result */
-          $result = \Drupal::url('<front>', array(), $url_options, TRUE);
+          $result = \Drupal::url('<front>', [], $url_options, TRUE);
           $bubbleable_metadata->addCacheableDependency($result);
           $replacements[$original] = $result->getGeneratedUrl();
           break;
 
         case 'url-brief':
           /** @var \Drupal\Core\GeneratedUrl $result */
-          $result = \Drupal::url('<front>', array(), $url_options, TRUE);
+          $result = \Drupal::url('<front>', [], $url_options, TRUE);
           $bubbleable_metadata->addCacheableDependency($result);
-          $replacements[$original] = preg_replace(array('!^https?://!', '!/$!'), '', $result->getGeneratedUrl());
+          $replacements[$original] = preg_replace(['!^https?://!', '!/$!'], '', $result->getGeneratedUrl());
           break;
 
         case 'login-url':
@@ -173,7 +173,7 @@ function system_tokens($type, $tokens, array $data, array $options, BubbleableMe
           break;
 
         case 'since':
-          $replacements[$original] = \Drupal::service('date.formatter')->formatTimeDiffSince($date, array('langcode' => $langcode));
+          $replacements[$original] = \Drupal::service('date.formatter')->formatTimeDiffSince($date, ['langcode' => $langcode]);
           $bubbleable_metadata->setCacheMaxAge(0);
           break;
 
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.block-context-manager-2354889.php b/core/modules/system/tests/fixtures/update/drupal-8.block-context-manager-2354889.php
index 7f23f90..cb35676 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.block-context-manager-2354889.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.block-context-manager-2354889.php
@@ -23,16 +23,16 @@
 
 foreach ($block_configs as $block_config) {
   $connection->insert('config')
-    ->fields(array(
+    ->fields([
       'collection',
       'name',
       'data',
-    ))
-    ->values(array(
+    ])
+    ->values([
       'collection' => '',
       'name' => 'block.block.' . $block_config['id'],
       'data' => serialize($block_config),
-    ))
+    ])
     ->execute();
 }
 
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.field-schema-data-uninstall-2573667.php b/core/modules/system/tests/fixtures/update/drupal-8.field-schema-data-uninstall-2573667.php
index a511cb5..e3531a0 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.field-schema-data-uninstall-2573667.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.field-schema-data-uninstall-2573667.php
@@ -11,64 +11,64 @@
 $connection = Database::getConnection();
 
 $connection->insert('key_value')
-  ->fields(array(
+  ->fields([
     'collection',
     'name',
     'value',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.body',
     'value' => 'a:2:{s:19:"block_content__body";a:4:{s:11:"description";s:42:"Data storage for block_content field body.";s:6:"fields";a:9:{s:6:"bundle";a:5:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:128;s:8:"not null";b:1;s:7:"default";s:0:"";s:11:"description";s:88:"The field instance bundle to which this row belongs, used when deleting a field instance";}s:7:"deleted";a:5:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:1;s:7:"default";i:0;s:11:"description";s:60:"A boolean indicating whether this data item has been deleted";}s:9:"entity_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:38:"The entity id this data is attached to";}s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:47:"The entity revision id this data is attached to";}s:8:"langcode";a:5:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:32;s:8:"not null";b:1;s:7:"default";s:0:"";s:11:"description";s:37:"The language code for this data item.";}s:5:"delta";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:67:"The sequence number for this data item, used for multi-value fields";}s:10:"body_value";a:3:{s:4:"type";s:4:"text";s:4:"size";s:3:"big";s:8:"not null";b:1;}s:12:"body_summary";a:3:{s:4:"type";s:4:"text";s:4:"size";s:3:"big";s:8:"not null";b:0;}s:11:"body_format";a:3:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:255;s:8:"not null";b:0;}}s:11:"primary key";a:4:{i:0;s:9:"entity_id";i:1;s:7:"deleted";i:2;s:5:"delta";i:3;s:8:"langcode";}s:7:"indexes";a:3:{s:6:"bundle";a:1:{i:0;s:6:"bundle";}s:11:"revision_id";a:1:{i:0;s:11:"revision_id";}s:11:"body_format";a:1:{i:0;s:11:"body_format";}}}s:28:"block_content_revision__body";a:4:{s:11:"description";s:54:"Revision archive storage for block_content field body.";s:6:"fields";a:9:{s:6:"bundle";a:5:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:128;s:8:"not null";b:1;s:7:"default";s:0:"";s:11:"description";s:88:"The field instance bundle to which this row belongs, used when deleting a field instance";}s:7:"deleted";a:5:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:1;s:7:"default";i:0;s:11:"description";s:60:"A boolean indicating whether this data item has been deleted";}s:9:"entity_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:38:"The entity id this data is attached to";}s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:47:"The entity revision id this data is attached to";}s:8:"langcode";a:5:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:32;s:8:"not null";b:1;s:7:"default";s:0:"";s:11:"description";s:37:"The language code for this data item.";}s:5:"delta";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:8:"not null";b:1;s:11:"description";s:67:"The sequence number for this data item, used for multi-value fields";}s:10:"body_value";a:3:{s:4:"type";s:4:"text";s:4:"size";s:3:"big";s:8:"not null";b:1;}s:12:"body_summary";a:3:{s:4:"type";s:4:"text";s:4:"size";s:3:"big";s:8:"not null";b:0;}s:11:"body_format";a:3:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:255;s:8:"not null";b:0;}}s:11:"primary key";a:5:{i:0;s:9:"entity_id";i:1;s:11:"revision_id";i:2;s:7:"deleted";i:3;s:5:"delta";i:4;s:8:"langcode";}s:7:"indexes";a:3:{s:6:"bundle";a:1:{i:0;s:6:"bundle";}s:11:"revision_id";a:1:{i:0;s:11:"revision_id";}s:11:"body_format";a:1:{i:0;s:11:"body_format";}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.changed',
     'value' => 'a:2:{s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:7:"changed";a:2:{s:4:"type";s:3:"int";s:8:"not null";b:0;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:7:"changed";a:2:{s:4:"type";s:3:"int";s:8:"not null";b:0;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.default_langcode',
     'value' => 'a:2:{s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:16:"default_langcode";a:3:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:1;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:16:"default_langcode";a:3:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:1;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.id',
     'value' => 'a:4:{s:13:"block_content";a:1:{s:6:"fields";a:1:{s:2:"id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:2:"id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}s:22:"block_content_revision";a:1:{s:6:"fields";a:1:{s:2:"id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:2:"id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.info',
     'value' => 'a:2:{s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:4:"info";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:255;s:6:"binary";b:0;s:8:"not null";b:0;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:4:"info";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:255;s:6:"binary";b:0;s:8:"not null";b:0;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.langcode',
     'value' => 'a:4:{s:13:"block_content";a:1:{s:6:"fields";a:1:{s:8:"langcode";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:12;s:8:"is_ascii";b:1;s:8:"not null";b:1;}}}s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:8:"langcode";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:12;s:8:"is_ascii";b:1;s:8:"not null";b:1;}}}s:22:"block_content_revision";a:1:{s:6:"fields";a:1:{s:8:"langcode";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:12;s:8:"is_ascii";b:1;s:8:"not null";b:1;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:8:"langcode";a:4:{s:4:"type";s:7:"varchar";s:6:"length";i:12;s:8:"is_ascii";b:1;s:8:"not null";b:1;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.revision_id',
     'value' => 'a:4:{s:13:"block_content";a:1:{s:6:"fields";a:1:{s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:0;}}}s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}s:22:"block_content_revision";a:1:{s:6:"fields";a:1:{s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:11:"revision_id";a:4:{s:4:"type";s:3:"int";s:8:"unsigned";b:1;s:4:"size";s:6:"normal";s:8:"not null";b:1;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.revision_log',
     'value' => 'a:1:{s:22:"block_content_revision";a:1:{s:6:"fields";a:1:{s:12:"revision_log";a:3:{s:4:"type";s:4:"text";s:4:"size";s:3:"big";s:8:"not null";b:0;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.revision_translation_affected',
     'value' => 'a:2:{s:24:"block_content_field_data";a:1:{s:6:"fields";a:1:{s:29:"revision_translation_affected";a:3:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:0;}}}s:28:"block_content_field_revision";a:1:{s:6:"fields";a:1:{s:29:"revision_translation_affected";a:3:{s:4:"type";s:3:"int";s:4:"size";s:4:"tiny";s:8:"not null";b:0;}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.type',
     'value' => 'a:2:{s:13:"block_content";a:2:{s:6:"fields";a:1:{s:4:"type";a:4:{s:11:"description";s:28:"The ID of the target entity.";s:4:"type";s:13:"varchar_ascii";s:6:"length";i:32;s:8:"not null";b:1;}}s:7:"indexes";a:1:{s:36:"block_content_field__type__target_id";a:1:{i:0;s:4:"type";}}}s:24:"block_content_field_data";a:2:{s:6:"fields";a:1:{s:4:"type";a:4:{s:11:"description";s:28:"The ID of the target entity.";s:4:"type";s:13:"varchar_ascii";s:6:"length";i:32;s:8:"not null";b:1;}}s:7:"indexes";a:1:{s:36:"block_content_field__type__target_id";a:1:{i:0;s:4:"type";}}}}',
-  ))
-  ->values(array(
+  ])
+  ->values([
     'collection' => 'entity.storage_schema.sql',
     'name' => 'block_content.field_schema_data.uuid',
     'value' => 'a:1:{s:13:"block_content";a:2:{s:6:"fields";a:1:{s:4:"uuid";a:4:{s:4:"type";s:13:"varchar_ascii";s:6:"length";i:128;s:6:"binary";b:0;s:8:"not null";b:1;}}s:11:"unique keys";a:1:{s:32:"block_content_field__uuid__value";a:1:{i:0;s:4:"uuid";}}}}',
-  ))
+  ])
   ->execute();
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.update-test-block-disabled-2513534.php b/core/modules/system/tests/fixtures/update/drupal-8.update-test-block-disabled-2513534.php
index fc8e1c5..fa39447 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.update-test-block-disabled-2513534.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.update-test-block-disabled-2513534.php
@@ -19,16 +19,16 @@
 
 foreach ($block_configs as $block_config) {
   $connection->insert('config')
-    ->fields(array(
+    ->fields([
       'collection',
       'name',
       'data',
-    ))
-    ->values(array(
+    ])
+    ->values([
       'collection' => '',
       'name' => 'block.block.' . $block_config['id'],
       'data' => serialize($block_config),
-    ))
+    ])
     ->execute();
 }
 
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.update-test-schema-enabled.php b/core/modules/system/tests/fixtures/update/drupal-8.update-test-schema-enabled.php
index 7250741..93592ec 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.update-test-schema-enabled.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.update-test-schema-enabled.php
@@ -10,20 +10,20 @@
 $connection = Database::getConnection();
 
 // Create the table.
-$connection->schema()->createTable('update_test_schema_table', array(
-  'fields' => array(
-    'a' => array(
+$connection->schema()->createTable('update_test_schema_table', [
+  'fields' => [
+    'a' => [
       'type' => 'int',
       'not null' => TRUE,
       'size' => 'normal',
-    ),
-    'b' => array(
+    ],
+    'b' => [
       'type' => 'blob',
       'not null' => FALSE,
       'size' => 'normal',
-    ),
-  ),
-));
+    ],
+  ],
+]);
 
 // Set the schema version.
 $connection->merge('key_value')
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.views-entity-views-data-2455125.php b/core/modules/system/tests/fixtures/update/drupal-8.views-entity-views-data-2455125.php
index 2fcda10..7b04a36 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.views-entity-views-data-2455125.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.views-entity-views-data-2455125.php
@@ -18,15 +18,15 @@
 
 foreach ($views_configs as $views_config) {
   $connection->insert('config')
-    ->fields(array(
+    ->fields([
       'collection',
       'name',
       'data',
-    ))
-    ->values(array(
+    ])
+    ->values([
       'collection' => '',
       'name' => 'views.view.' . $views_config['id'],
       'data' => serialize($views_config),
-    ))
+    ])
     ->execute();
 }
diff --git a/core/modules/system/tests/fixtures/update/drupal-8.views-revision-metadata-fields-2248983.php b/core/modules/system/tests/fixtures/update/drupal-8.views-revision-metadata-fields-2248983.php
index 59b05a5..4cc5227 100644
--- a/core/modules/system/tests/fixtures/update/drupal-8.views-revision-metadata-fields-2248983.php
+++ b/core/modules/system/tests/fixtures/update/drupal-8.views-revision-metadata-fields-2248983.php
@@ -21,15 +21,15 @@
 
 foreach ($views_configs as $views_config) {
   $connection->insert('config')
-    ->fields(array(
+    ->fields([
       'collection',
       'name',
       'data',
-    ))
-    ->values(array(
+    ])
+    ->values([
       'collection' => '',
       'name' => 'views.view.' . $views_config['id'],
       'data' => serialize($views_config),
-    ))
+    ])
     ->execute();
 }
diff --git a/core/modules/system/tests/modules/accept_header_routing_test/src/Routing/AcceptHeaderMatcher.php b/core/modules/system/tests/modules/accept_header_routing_test/src/Routing/AcceptHeaderMatcher.php
index 0981f46..1a3c61e 100644
--- a/core/modules/system/tests/modules/accept_header_routing_test/src/Routing/AcceptHeaderMatcher.php
+++ b/core/modules/system/tests/modules/accept_header_routing_test/src/Routing/AcceptHeaderMatcher.php
@@ -20,7 +20,7 @@ public function filter(RouteCollection $collection, Request $request) {
     // Generates a list of Symfony formats matching the acceptable MIME types.
     // @todo replace by proper content negotiation library.
     $acceptable_mime_types = $request->getAcceptableContentTypes();
-    $acceptable_formats = array_filter(array_map(array($request, 'getFormat'), $acceptable_mime_types));
+    $acceptable_formats = array_filter(array_map([$request, 'getFormat'], $acceptable_mime_types));
     $primary_format = $request->getRequestFormat();
 
     foreach ($collection as $name => $route) {
diff --git a/core/modules/system/tests/modules/ajax_forms_test/ajax_forms_test.module b/core/modules/system/tests/modules/ajax_forms_test/ajax_forms_test.module
index ecde048..262572b 100644
--- a/core/modules/system/tests/modules/ajax_forms_test/ajax_forms_test.module
+++ b/core/modules/system/tests/modules/ajax_forms_test/ajax_forms_test.module
@@ -89,7 +89,7 @@ function ajax_forms_test_advanced_commands_css_callback($form, FormStateInterfac
   $color = 'blue';
 
   $response = new AjaxResponse();
-  $response->addCommand(new CssCommand($selector, array('background-color' => $color)));
+  $response->addCommand(new CssCommand($selector, ['background-color' => $color]));
   return $response;
 }
 
@@ -108,7 +108,7 @@ function ajax_forms_test_advanced_commands_data_callback($form, FormStateInterfa
  */
 function ajax_forms_test_advanced_commands_invoke_callback($form, FormStateInterface $form_state) {
   $response = new AjaxResponse();
-  $response->addCommand(new InvokeCommand('#invoke_div', 'addClass', array('error')));
+  $response->addCommand(new InvokeCommand('#invoke_div', 'addClass', ['error']));
   return $response;
 }
 
@@ -181,7 +181,7 @@ function ajax_forms_test_advanced_commands_add_css_callback($form, FormStateInte
  */
 function ajax_forms_test_validation_form_callback($form, FormStateInterface $form_state) {
   drupal_set_message("ajax_forms_test_validation_form_callback invoked");
-  drupal_set_message(t("Callback: drivertext=%drivertext, spare_required_field=%spare_required_field", array('%drivertext' => $form_state->getValue('drivertext'), '%spare_required_field' => $form_state->getValue('spare_required_field'))));
+  drupal_set_message(t("Callback: drivertext=%drivertext, spare_required_field=%spare_required_field", ['%drivertext' => $form_state->getValue('drivertext'), '%spare_required_field' => $form_state->getValue('spare_required_field')]));
   return ['#markup' => '<div id="message_area">ajax_forms_test_validation_form_callback at ' . date('c') . '</div>'];
 }
 
@@ -190,7 +190,7 @@ function ajax_forms_test_validation_form_callback($form, FormStateInterface $for
  */
 function ajax_forms_test_validation_number_form_callback($form, FormStateInterface $form_state) {
   drupal_set_message("ajax_forms_test_validation_number_form_callback invoked");
-  drupal_set_message(t("Callback: drivernumber=%drivernumber, spare_required_field=%spare_required_field", array('%drivernumber' => $form_state->getValue('drivernumber'), '%spare_required_field' => $form_state->getValue('spare_required_field'))));
+  drupal_set_message(t("Callback: drivernumber=%drivernumber, spare_required_field=%spare_required_field", ['%drivernumber' => $form_state->getValue('drivernumber'), '%spare_required_field' => $form_state->getValue('spare_required_field')]));
   return ['#markup' => '<div id="message_area_number">ajax_forms_test_validation_number_form_callback at ' . date('c') . '</div>'];
 }
 
diff --git a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestCommandsForm.php b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestCommandsForm.php
index d04b217..e3c09af 100644
--- a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestCommandsForm.php
+++ b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestCommandsForm.php
@@ -21,178 +21,178 @@ public function getFormId() {
    * {@inheritdoc}.
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form = array();
+    $form = [];
 
     // Shows the 'after' command with a callback generating commands.
-    $form['after_command_example'] = array(
+    $form['after_command_example'] = [
       '#value' => $this->t("AJAX 'After': Click to put something after the div"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_after_callback',
-      ),
+      ],
       '#suffix' => '<div id="after_div">Something can be inserted after this</div>',
-    );
+    ];
 
     // Shows the 'alert' command.
-    $form['alert_command_example'] = array(
+    $form['alert_command_example'] = [
       '#value' => $this->t("AJAX 'Alert': Click to alert"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_alert_callback',
-      ),
-    );
+      ],
+    ];
 
     // Shows the 'append' command.
-    $form['append_command_example'] = array(
+    $form['append_command_example'] = [
       '#value' => $this->t("AJAX 'Append': Click to append something"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_append_callback',
-      ),
+      ],
       '#suffix' => '<div id="append_div">Append inside this div</div>',
-    );
+    ];
 
 
     // Shows the 'before' command.
-    $form['before_command_example'] = array(
+    $form['before_command_example'] = [
       '#value' => $this->t("AJAX 'before': Click to put something before the div"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_before_callback',
-      ),
+      ],
       '#suffix' => '<div id="before_div">Insert something before this.</div>',
-    );
+    ];
 
     // Shows the 'changed' command without asterisk.
-    $form['changed_command_example'] = array(
+    $form['changed_command_example'] = [
       '#value' => $this->t("AJAX changed: Click to mark div changed."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_changed_callback',
-      ),
+      ],
       '#suffix' => '<div id="changed_div"> <div id="changed_div_mark_this">This div can be marked as changed or not.</div></div>',
-    );
+    ];
     // Shows the 'changed' command adding the asterisk.
-    $form['changed_command_asterisk_example'] = array(
+    $form['changed_command_asterisk_example'] = [
       '#value' => $this->t("AJAX changed: Click to mark div changed with asterisk."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_changed_asterisk_callback',
-      ),
-    );
+      ],
+    ];
 
     // Shows the Ajax 'css' command.
-    $form['css_command_example'] = array(
+    $form['css_command_example'] = [
       '#value' => $this->t("Set the '#box' div to be blue."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_css_callback',
-      ),
+      ],
       '#suffix' => '<div id="css_div" style="height: 50px; width: 50px; border: 1px solid black"> box</div>',
-    );
+    ];
 
 
     // Shows the Ajax 'data' command. But there is no use of this information,
     // as this would require a javascript client to use the data.
-    $form['data_command_example'] = array(
+    $form['data_command_example'] = [
       '#value' => $this->t("AJAX data command: Issue command."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_data_callback',
-      ),
+      ],
       '#suffix' => '<div id="data_div">Data attached to this div.</div>',
-    );
+    ];
 
     // Shows the Ajax 'invoke' command.
-    $form['invoke_command_example'] = array(
+    $form['invoke_command_example'] = [
       '#value' => $this->t("AJAX invoke command: Invoke addClass() method."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_invoke_callback',
-      ),
+      ],
       '#suffix' => '<div id="invoke_div">Original contents</div>',
-    );
+    ];
 
     // Shows the Ajax 'html' command.
-    $form['html_command_example'] = array(
+    $form['html_command_example'] = [
       '#value' => $this->t("AJAX html: Replace the HTML in a selector."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_html_callback',
-      ),
+      ],
       '#suffix' => '<div id="html_div">Original contents</div>',
-    );
+    ];
 
     // Shows the Ajax 'insert' command.
-    $form['insert_command_example'] = array(
+    $form['insert_command_example'] = [
       '#value' => $this->t("AJAX insert: Let client insert based on #ajax['method']."),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_insert_callback',
         'method' => 'prepend',
-      ),
+      ],
       '#suffix' => '<div id="insert_div">Original contents</div>',
-    );
+    ];
 
     // Shows the Ajax 'prepend' command.
-    $form['prepend_command_example'] = array(
+    $form['prepend_command_example'] = [
       '#value' => $this->t("AJAX 'prepend': Click to prepend something"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_prepend_callback',
-      ),
+      ],
       '#suffix' => '<div id="prepend_div">Something will be prepended to this div. </div>',
-    );
+    ];
 
     // Shows the Ajax 'remove' command.
-    $form['remove_command_example'] = array(
+    $form['remove_command_example'] = [
       '#value' => $this->t("AJAX 'remove': Click to remove text"),
       '#type' => 'submit',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_remove_callback',
-      ),
+      ],
       '#suffix' => '<div id="remove_div"><div id="remove_text">text to be removed</div></div>',
-    );
+    ];
 
     // Shows the Ajax 'restripe' command.
-    $form['restripe_command_example'] = array(
+    $form['restripe_command_example'] = [
       '#type' => 'submit',
       '#value' => $this->t("AJAX 'restripe' command"),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_restripe_callback',
-      ),
+      ],
       '#suffix' => '<div id="restripe_div">
                     <table id="restripe_table" style="border: 1px solid black" >
                     <tr id="table-first"><td>first row</td></tr>
                     <tr ><td>second row</td></tr>
                     </table>
                     </div>',
-    );
+    ];
 
     // Demonstrates the Ajax 'settings' command. The 'settings' command has
     // nothing visual to "show", but it can be tested via SimpleTest and via
     // Firebug.
-    $form['settings_command_example'] = array(
+    $form['settings_command_example'] = [
       '#type' => 'submit',
       '#value' => $this->t("AJAX 'settings' command"),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_settings_callback',
-      ),
-    );
+      ],
+    ];
 
     // Shows the Ajax 'add_css' command.
-    $form['add_css_command_example'] = array(
+    $form['add_css_command_example'] = [
       '#type' => 'submit',
       '#value' => $this->t("AJAX 'add_css' command"),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_advanced_commands_add_css_callback',
-      ),
-    );
+      ],
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestLazyLoadForm.php b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestLazyLoadForm.php
index 19aaaf3..852cf44 100644
--- a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestLazyLoadForm.php
+++ b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestLazyLoadForm.php
@@ -26,20 +26,20 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // command to ensure that the 'currentPath' setting is not part
     // of the Ajax response.
     $form['#attached']['drupalSettings']['test'] = 'currentPathUpdate';
-    $form['add_files'] = array(
+    $form['add_files'] = [
       '#title' => $this->t('Add files'),
       '#type' => 'checkbox',
       '#default_value' => FALSE,
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Submit'),
-      '#ajax' => array(
+      '#ajax' => [
         'wrapper' => 'ajax-forms-test-lazy-load-ajax-wrapper',
         'callback' => 'ajax_forms_test_lazy_load_form_ajax',
-      ),
+      ],
       '#prefix' => '<div id="ajax-forms-test-lazy-load-ajax-wrapper"></div>',
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestSimpleForm.php b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestSimpleForm.php
index 8ec5b71..f69a123 100644
--- a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestSimpleForm.php
+++ b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestSimpleForm.php
@@ -24,47 +24,47 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $object = new Callbacks();
 
-    $form = array();
-    $form['select'] = array(
+    $form = [];
+    $form['select'] = [
       '#title' => $this->t('Color'),
       '#type' => 'select',
-      '#options' => array(
+      '#options' => [
         'red' => 'red',
         'green' => 'green',
-        'blue' => 'blue'),
-      '#ajax' => array(
-        'callback' => array($object, 'selectCallback'),
-      ),
+        'blue' => 'blue'],
+      '#ajax' => [
+        'callback' => [$object, 'selectCallback'],
+      ],
       '#suffix' => '<div id="ajax_selected_color">No color yet selected</div>',
-    );
+    ];
 
-    $form['checkbox'] = array(
+    $form['checkbox'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Test checkbox'),
-      '#ajax' => array(
-        'callback' => array($object, 'checkboxCallback'),
-      ),
+      '#ajax' => [
+        'callback' => [$object, 'checkboxCallback'],
+      ],
       '#suffix' => '<div id="ajax_checkbox_value">No action yet</div>',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('submit'),
-    );
+    ];
 
     // This is for testing invalid callbacks that should return a 500 error in
     // \Drupal\Core\Form\FormAjaxResponseBuilderInterface::buildResponse().
-    $invalid_callbacks = array(
+    $invalid_callbacks = [
       'null' => NULL,
       'empty' => '',
       'nonexistent' => 'some_function_that_does_not_exist',
-    );
+    ];
     foreach ($invalid_callbacks as $key => $value) {
-      $form['select_' . $key . '_callback'] = array(
+      $form['select_' . $key . '_callback'] = [
         '#type' => 'select',
-        '#title' => $this->t('Test %key callbacks', array('%key' => $key)),
-        '#options' => array('red' => 'red'),
-        '#ajax' => array('callback' => $value),
-      );
+        '#title' => $this->t('Test %key callbacks', ['%key' => $key]),
+        '#options' => ['red' => 'red'],
+        '#ajax' => ['callback' => $value],
+      ];
     }
 
     $form['test_group'] = [
diff --git a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestValidationForm.php b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestValidationForm.php
index dbf0b7f..fb30194 100644
--- a/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestValidationForm.php
+++ b/core/modules/system/tests/modules/ajax_forms_test/src/Form/AjaxFormsTestValidationForm.php
@@ -21,42 +21,42 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['drivertext'] = array(
+    $form['drivertext'] = [
       '#title' => $this->t('AJAX-enabled textfield.'),
       '#description' => $this->t("When this one AJAX-triggers and the spare required field is empty, you should not get an error."),
       '#type' => 'textfield',
       '#default_value' => $form_state->getValue('drivertext', ''),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_validation_form_callback',
         'wrapper' => 'message_area',
         'method' => 'replace',
-      ),
+      ],
       '#suffix' => '<div id="message_area"></div>',
-    );
+    ];
 
-    $form['drivernumber'] = array(
+    $form['drivernumber'] = [
       '#title' => $this->t('AJAX-enabled number field.'),
       '#description' => $this->t("When this one AJAX-triggers and the spare required field is empty, you should not get an error."),
       '#type' => 'number',
       '#default_value' => $form_state->getValue('drivernumber', ''),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'ajax_forms_test_validation_number_form_callback',
         'wrapper' => 'message_area_number',
         'method' => 'replace',
-      ),
+      ],
       '#suffix' => '<div id="message_area_number"></div>',
-    );
+    ];
 
-    $form['spare_required_field'] = array(
+    $form['spare_required_field'] = [
       '#title' => $this->t("Spare Required Field"),
       '#type' => 'textfield',
       '#required' => TRUE,
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php b/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
index 63cc0ab..5ba65e8 100644
--- a/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
+++ b/core/modules/system/tests/modules/ajax_test/src/Controller/AjaxTestController.php
@@ -22,22 +22,22 @@ class AjaxTestController {
    */
   public static function dialogContents() {
     // This is a regular render array; the keys do not have special meaning.
-    $content = array(
+    $content = [
       '#title' => '<em>AJAX Dialog & contents</em>',
-      'content' => array(
+      'content' => [
         '#markup' => 'Example message',
-      ),
-      'cancel' => array(
+      ],
+      'cancel' => [
         '#type' => 'link',
         '#title' => 'Cancel',
         '#url' => Url::fromRoute('<front>'),
-        '#attributes' => array(
+        '#attributes' => [
           // This is a special class to which JavaScript assigns dialog closing
           // behavior.
-          'class' => array('dialog-cancel'),
-        ),
-      ),
-    );
+          'class' => ['dialog-cancel'],
+        ],
+      ],
+    ];
 
     return $content;
   }
@@ -111,88 +111,88 @@ public function renderError(Request $request) {
   public function dialog() {
     // Add two wrapper elements for testing non-modal dialogs. Modal dialogs use
     // the global drupal-modal wrapper by default.
-    $build['dialog_wrappers'] = array('#markup' => '<div id="ajax-test-dialog-wrapper-1"></div><div id="ajax-test-dialog-wrapper-2"></div>');
+    $build['dialog_wrappers'] = ['#markup' => '<div id="ajax-test-dialog-wrapper-1"></div><div id="ajax-test-dialog-wrapper-2"></div>'];
 
     // Dialog behavior applied to a button.
     $build['form'] = \Drupal::formBuilder()->getForm('Drupal\ajax_test\Form\AjaxTestDialogForm');
 
     // Dialog behavior applied to a #type => 'link'.
-    $build['link'] = array(
+    $build['link'] = [
       '#type' => 'link',
       '#title' => 'Link 1 (modal)',
       '#url' => Url::fromRoute('ajax_test.dialog_contents'),
-      '#attributes' => array(
-        'class' => array('use-ajax'),
+      '#attributes' => [
+        'class' => ['use-ajax'],
         'data-dialog-type' => 'modal',
-      ),
-    );
+      ],
+    ];
 
     // Dialog behavior applied to links rendered by links.html.twig.
-    $build['links'] = array(
+    $build['links'] = [
       '#theme' => 'links',
-      '#links' => array(
-        'link2' => array(
+      '#links' => [
+        'link2' => [
           'title' => 'Link 2 (modal)',
           'url' => Url::fromRoute('ajax_test.dialog_contents'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'modal',
-            'data-dialog-options' => json_encode(array(
+            'data-dialog-options' => json_encode([
               'width' => 400,
-            ))
-          ),
-        ),
-        'link3' => array(
+            ])
+          ],
+        ],
+        'link3' => [
           'title' => 'Link 3 (non-modal)',
           'url' => Url::fromRoute('ajax_test.dialog_contents'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'dialog',
-            'data-dialog-options' => json_encode(array(
+            'data-dialog-options' => json_encode([
               'target' => 'ajax-test-dialog-wrapper-1',
               'width' => 800,
-            ))
-          ),
-        ),
-        'link4' => array(
+            ])
+          ],
+        ],
+        'link4' => [
           'title' => 'Link 4 (close non-modal if open)',
           'url' => Url::fromRoute('ajax_test.dialog_close'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'modal',
-          ),
-        ),
-        'link5' => array(
+          ],
+        ],
+        'link5' => [
           'title' => 'Link 5 (form)',
           'url' => Url::fromRoute('ajax_test.dialog_form'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'modal',
-          ),
-        ),
-        'link6' => array(
+          ],
+        ],
+        'link6' => [
           'title' => 'Link 6 (entity form)',
           'url' => Url::fromRoute('contact.form_add'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'modal',
-            'data-dialog-options' => json_encode(array(
+            'data-dialog-options' => json_encode([
               'width' => 800,
               'height' => 500,
-            ))
-          ),
-        ),
-        'link7' => array(
+            ])
+          ],
+        ],
+        'link7' => [
           'title' => 'Link 7 (non-modal, no target)',
           'url' => Url::fromRoute('ajax_test.dialog_contents'),
-          'attributes' => array(
-            'class' => array('use-ajax'),
+          'attributes' => [
+            'class' => ['use-ajax'],
             'data-dialog-type' => 'dialog',
-            'data-dialog-options' => json_encode(array(
+            'data-dialog-options' => json_encode([
               'width' => 800,
-            ))
-          ),
-        ),
+            ])
+          ],
+        ],
         'link8' => [
           'title' => 'Link 8 (ajax)',
           'url' => Url::fromRoute('ajax_test.admin.theme'),
@@ -204,8 +204,8 @@ public function dialog() {
             ]),
           ],
         ],
-      ),
-    );
+      ],
+    ];
 
     return $build;
   }
diff --git a/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestDialogForm.php b/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestDialogForm.php
index a97ed95..5f11b6b 100644
--- a/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestDialogForm.php
+++ b/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestDialogForm.php
@@ -28,25 +28,25 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // In order to use WebTestBase::drupalPostAjaxForm() to POST from a link, we need
     // to have a dummy field we can set in WebTestBase::drupalPostForm() else it won't
     // submit anything.
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#type' => 'hidden'
-    );
-    $form['button1'] = array(
+    ];
+    $form['button1'] = [
       '#type' => 'submit',
       '#name' => 'button1',
       '#value' => 'Button 1 (modal)',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::modal',
-      ),
-    );
-    $form['button2'] = array(
+      ],
+    ];
+    $form['button2'] = [
       '#type' => 'submit',
       '#name' => 'button2',
       '#value' => 'Button 2 (non-modal)',
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => '::nonModal',
-      ),
-    );
+      ],
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestForm.php b/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestForm.php
index 6048769..ea431ef 100644
--- a/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestForm.php
+++ b/core/modules/system/tests/modules/ajax_test/src/Form/AjaxTestForm.php
@@ -24,23 +24,23 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $form['#action'] = \Drupal::url('ajax_test.dialog');
 
-    $form['description'] = array(
+    $form['description'] = [
       '#markup' => '<p>' . $this->t("Ajax Form contents description.") . '</p>',
-    );
+    ];
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Do it'),
-    );
-    $form['actions']['preview'] = array(
+    ];
+    $form['actions']['preview'] = [
       '#type' => 'submit',
       '#value' => $this->t('Preview'),
       // No regular submit-handler. This form only works via JavaScript.
-      '#submit' => array(),
-      '#ajax' => array(
+      '#submit' => [],
+      '#ajax' => [
         // This means the ::preview() method on this class would be invoked in
         // case of a click event. However, since Drupal core's test runner only
         // is able to execute PHP, not JS, there is no point in actually
@@ -51,8 +51,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         // we cannot meaningfully test it anyway.
         'callback' => '::preview',
         'event' => 'click',
-      ),
-    );
+      ],
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/batch_test/batch_test.callbacks.inc b/core/modules/system/tests/modules/batch_test/batch_test.callbacks.inc
index 4a271b0..9116c85 100644
--- a/core/modules/system/tests/modules/batch_test/batch_test.callbacks.inc
+++ b/core/modules/system/tests/modules/batch_test/batch_test.callbacks.inc
@@ -100,7 +100,7 @@ function _batch_test_finished_helper($batch_id, $success, $results, $operations)
   if (!$success) {
     // A fatal error occurred during the processing.
     $error_operation = reset($operations);
-    $messages[] = t('An error occurred while processing @op with arguments:<br />@args', array('@op' => $error_operation[0], '@args' => print_r($error_operation[1], TRUE)));
+    $messages[] = t('An error occurred while processing @op with arguments:<br />@args', ['@op' => $error_operation[0], '@args' => print_r($error_operation[1], TRUE)]);
   }
 
   // Use item list template to render the messages.
diff --git a/core/modules/system/tests/modules/batch_test/batch_test.module b/core/modules/system/tests/modules/batch_test/batch_test.module
index e7a8de6..59327de 100644
--- a/core/modules/system/tests/modules/batch_test/batch_test.module
+++ b/core/modules/system/tests/modules/batch_test/batch_test.module
@@ -20,11 +20,11 @@ function _batch_test_nested_drupal_form_submit_callback($value) {
  * Batch 0: Does nothing.
  */
 function _batch_test_batch_0() {
-  $batch = array(
-    'operations' => array(),
+  $batch = [
+    'operations' => [],
     'finished' => '_batch_test_finished_0',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -38,15 +38,15 @@ function _batch_test_batch_1() {
   $total = 10;
   $sleep = (1000000 / $total) * 2;
 
-  $operations = array();
+  $operations = [];
   for ($i = 1; $i <= $total; $i++) {
-    $operations[] = array('_batch_test_callback_1', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_1', [$i, $sleep]];
   }
-  $batch = array(
+  $batch = [
     'operations' => $operations,
     'finished' => '_batch_test_finished_1',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -60,14 +60,14 @@ function _batch_test_batch_2() {
   $total = 10;
   $sleep = (1000000 / $total) * 2;
 
-  $operations = array(
-    array('_batch_test_callback_2', array(1, $total, $sleep)),
-  );
-  $batch = array(
+  $operations = [
+    ['_batch_test_callback_2', [1, $total, $sleep]],
+  ];
+  $batch = [
     'operations' => $operations,
     'finished' => '_batch_test_finished_2',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -85,20 +85,20 @@ function _batch_test_batch_3() {
   $total = 10;
   $sleep = (1000000 / $total) * 2;
 
-  $operations = array();
+  $operations = [];
   for ($i = 1; $i <= round($total / 2); $i++) {
-    $operations[] = array('_batch_test_callback_1', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_1', [$i, $sleep]];
   }
-  $operations[] = array('_batch_test_callback_2', array(1, $total / 2, $sleep));
+  $operations[] = ['_batch_test_callback_2', [1, $total / 2, $sleep]];
   for ($i = round($total / 2) + 1; $i <= $total; $i++) {
-    $operations[] = array('_batch_test_callback_1', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_1', [$i, $sleep]];
   }
-  $operations[] = array('_batch_test_callback_2', array(6, $total / 2, $sleep));
-  $batch = array(
+  $operations[] = ['_batch_test_callback_2', [6, $total / 2, $sleep]];
+  $batch = [
     'operations' => $operations,
     'finished' => '_batch_test_finished_3',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -115,19 +115,19 @@ function _batch_test_batch_4() {
   $total = 10;
   $sleep = (1000000 / $total) * 2;
 
-  $operations = array();
+  $operations = [];
   for ($i = 1; $i <= round($total / 2); $i++) {
-    $operations[] = array('_batch_test_callback_1', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_1', [$i, $sleep]];
   }
-  $operations[] = array('_batch_test_nested_batch_callback', array());
+  $operations[] = ['_batch_test_nested_batch_callback', []];
   for ($i = round($total / 2) + 1; $i <= $total; $i++) {
-    $operations[] = array('_batch_test_callback_1', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_1', [$i, $sleep]];
   }
-  $batch = array(
+  $batch = [
     'operations' => $operations,
     'finished' => '_batch_test_finished_4',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
@@ -141,15 +141,15 @@ function _batch_test_batch_5() {
   $total = 10;
   $sleep = (1000000 / $total) * 2;
 
-  $operations = array();
+  $operations = [];
   for ($i = 1; $i <= $total; $i++) {
-    $operations[] = array('_batch_test_callback_5', array($i, $sleep));
+    $operations[] = ['_batch_test_callback_5', [$i, $sleep]];
   }
-  $batch = array(
+  $batch = [
     'operations' => $operations,
     'finished' => '_batch_test_finished_5',
     'file' => drupal_get_path('module', 'batch_test') . '/batch_test.callbacks.inc',
-  );
+  ];
   return $batch;
 }
 
diff --git a/core/modules/system/tests/modules/batch_test/src/Controller/BatchTestController.php b/core/modules/system/tests/modules/batch_test/src/Controller/BatchTestController.php
index 811c7fc..1cdaf5c 100644
--- a/core/modules/system/tests/modules/batch_test/src/Controller/BatchTestController.php
+++ b/core/modules/system/tests/modules/batch_test/src/Controller/BatchTestController.php
@@ -16,11 +16,11 @@ class BatchTestController {
    *   Render array containing success message.
    */
   public function testRedirect() {
-    return array(
-      'success' => array(
+    return [
+      'success' => [
         '#markup' => 'Redirection successful.',
-      )
-    );
+      ]
+    ];
   }
 
   /**
@@ -47,9 +47,9 @@ public function testLargePercentage() {
    */
   public function testNestedDrupalFormSubmit($value = 1) {
     // Set the batch and process it.
-    $batch['operations'] = array(
-      array('_batch_test_nested_drupal_form_submit_callback', array($value)),
-    );
+    $batch['operations'] = [
+      ['_batch_test_nested_drupal_form_submit_callback', [$value]],
+    ];
     batch_set($batch);
     return batch_process('batch-test/redirect');
   }
@@ -100,11 +100,11 @@ function testProgrammatic($value = 1) {
       'value' => $value,
     ]);
     \Drupal::formBuilder()->submitForm('Drupal\batch_test\Form\BatchTestChainedForm', $form_state);
-    return array(
-      'success' => array(
+    return [
+      'success' => [
         '#markup' => 'Got out of a programmatic batched form.',
-      )
-    );
+      ]
+    ];
   }
 
   /**
@@ -115,11 +115,11 @@ function testProgrammatic($value = 1) {
    */
   public function testThemeBatch() {
     batch_test_stack(NULL, TRUE);
-    $batch = array(
-      'operations' => array(
-        array('_batch_test_theme_callback', array()),
-      ),
-    );
+    $batch = [
+      'operations' => [
+        ['_batch_test_theme_callback', []],
+      ],
+    ];
     batch_set($batch);
     return batch_process('batch-test/redirect');
   }
diff --git a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php
index aa19ad3..fe2d02c 100644
--- a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php
+++ b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestChainedForm.php
@@ -23,21 +23,21 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     // This value is used to test that $form_state persists through batched
     // submit handlers.
-    $form['value'] = array(
+    $form['value'] = [
       '#type' => 'textfield',
       '#title' => 'Value',
       '#default_value' => 1,
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
-    $form['#submit'] = array(
+    ];
+    $form['#submit'] = [
       'Drupal\batch_test\Form\BatchTestChainedForm::batchTestChainedFormSubmit1',
       'Drupal\batch_test\Form\BatchTestChainedForm::batchTestChainedFormSubmit2',
       'Drupal\batch_test\Form\BatchTestChainedForm::batchTestChainedFormSubmit3',
       'Drupal\batch_test\Form\BatchTestChainedForm::batchTestChainedFormSubmit4',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMockForm.php b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMockForm.php
index ec8caff..2d26bcf 100644
--- a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMockForm.php
+++ b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMockForm.php
@@ -21,14 +21,14 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['test_value'] = array(
+    $form['test_value'] = [
       '#title' => t('Test value'),
       '#type' => 'textfield',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMultiStepForm.php b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMultiStepForm.php
index 260941f..916831e 100644
--- a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMultiStepForm.php
+++ b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestMultiStepForm.php
@@ -27,13 +27,13 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $form_state->set('step', $step);
     }
 
-    $form['step_display'] = array(
+    $form['step_display'] = [
       '#markup' => 'step ' . $step . '<br/>',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
 
     // This is a POST form with multiple steps that does not transition from one
     // step to the next via POST requests, but via GET requests, because it uses
diff --git a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestSimpleForm.php b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestSimpleForm.php
index 92cf6b1..999649d 100644
--- a/core/modules/system/tests/modules/batch_test/src/Form/BatchTestSimpleForm.php
+++ b/core/modules/system/tests/modules/batch_test/src/Form/BatchTestSimpleForm.php
@@ -21,21 +21,21 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['batch'] = array(
+    $form['batch'] = [
       '#type' => 'select',
       '#title' => 'Choose batch',
-      '#options' => array(
+      '#options' => [
         'batch_0' => 'batch 0',
         'batch_1' => 'batch 1',
         'batch_2' => 'batch 2',
         'batch_3' => 'batch 3',
         'batch_4' => 'batch 4',
-      ),
-    );
-    $form['submit'] = array(
+      ],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/common_test/common_test.module b/core/modules/system/tests/modules/common_test/common_test.module
index 0633ac8..97bba7b 100644
--- a/core/modules/system/tests/modules/common_test/common_test.module
+++ b/core/modules/system/tests/modules/common_test/common_test.module
@@ -114,18 +114,18 @@ function common_test_module_implements_alter(&$implementations, $hook) {
  * Implements hook_theme().
  */
 function common_test_theme() {
-  return array(
-    'common_test_foo' => array(
-      'variables' => array('foo' => 'foo', 'bar' => 'bar'),
-    ),
-    'common_test_render_element' => array(
+  return [
+    'common_test_foo' => [
+      'variables' => ['foo' => 'foo', 'bar' => 'bar'],
+    ],
+    'common_test_render_element' => [
       'render element' => 'foo',
-    ),
-    'common_test_empty' => array(
-      'variables' => array('foo' => 'foo'),
+    ],
+    'common_test_empty' => [
+      'variables' => ['foo' => 'foo'],
       'function' => 'theme_common_test_empty',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/system/tests/modules/common_test/src/Controller/CommonTestController.php b/core/modules/system/tests/modules/common_test/src/Controller/CommonTestController.php
index f77a581..bb98a59 100644
--- a/core/modules/system/tests/modules/common_test/src/Controller/CommonTestController.php
+++ b/core/modules/system/tests/modules/common_test/src/Controller/CommonTestController.php
@@ -18,40 +18,40 @@ class CommonTestController {
    * generator.
    */
   public function typeLinkActiveClass() {
-    return array(
-      'no_query' => array(
+    return [
+      'no_query' => [
         '#type' => 'link',
         '#title' => t('Link with no query string'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
+        '#options' => [
           'set_active_class' => TRUE,
-        ),
-      ),
-      'with_query' => array(
+        ],
+      ],
+      'with_query' => [
         '#type' => 'link',
         '#title' => t('Link with a query string'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
-          'query' => array(
+        '#options' => [
+          'query' => [
             'foo' => 'bar',
             'one' => 'two',
-          ),
+          ],
           'set_active_class' => TRUE,
-        ),
-      ),
-      'with_query_reversed' => array(
+        ],
+      ],
+      'with_query_reversed' => [
         '#type' => 'link',
         '#title' => t('Link with the same query string in reverse order'),
         '#url' => Url::fromRoute('<current>'),
-        '#options' => array(
-          'query' => array(
+        '#options' => [
+          'query' => [
             'one' => 'two',
             'foo' => 'bar',
-          ),
+          ],
           'set_active_class' => TRUE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -61,18 +61,18 @@ public function typeLinkActiveClass() {
    *   An empty string.
    */
   public function jsAndCssQuerystring() {
-    $attached = array(
-      '#attached' => array(
-        'library' => array(
+    $attached = [
+      '#attached' => [
+        'library' => [
           'node/drupal.node',
-        ),
-        'css' => array(
-          drupal_get_path('module', 'node') . '/css/node.admin.css' => array(),
+        ],
+        'css' => [
+          drupal_get_path('module', 'node') . '/css/node.admin.css' => [],
           // A relative URI may have a query string.
-          '/' . drupal_get_path('module', 'node') . '/node-fake.css?arg1=value1&arg2=value2' => array(),
-        ),
-      ),
-    );
+          '/' . drupal_get_path('module', 'node') . '/node-fake.css?arg1=value1&arg2=value2' => [],
+        ],
+      ],
+    ];
     return \Drupal::service('renderer')->renderRoot($attached);
   }
 
diff --git a/core/modules/system/tests/modules/condition_test/src/FormController.php b/core/modules/system/tests/modules/condition_test/src/FormController.php
index 38b21cc..da475ae 100644
--- a/core/modules/system/tests/modules/condition_test/src/FormController.php
+++ b/core/modules/system/tests/modules/condition_test/src/FormController.php
@@ -39,10 +39,10 @@ public function __construct() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $form = $this->condition->buildConfigurationForm($form, $form_state);
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/database_test/database_test.install b/core/modules/system/tests/modules/database_test/database_test.install
index f6b4f68..62cf38a 100644
--- a/core/modules/system/tests/modules/database_test/database_test.install
+++ b/core/modules/system/tests/modules/database_test/database_test.install
@@ -14,281 +14,281 @@
  * like any other, not directly in the test file.
  */
 function database_test_schema() {
-  $schema['test'] = array(
+  $schema['test'] = [
     'description' => 'Basic test table for the database unit tests.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'type' => 'serial',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'description' => "A person's name",
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'binary' => TRUE,
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'description' => "The person's age",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'job' => array(
+      ],
+      'job' => [
         'description' => "The person's job",
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => 'Undefined',
-      ),
-    ),
-    'primary key' => array('id'),
-    'unique keys' => array(
-      'name' => array('name')
-    ),
-    'indexes' => array(
-      'ages' => array('age'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['id'],
+    'unique keys' => [
+      'name' => ['name']
+    ],
+    'indexes' => [
+      'ages' => ['age'],
+    ],
+  ];
 
   // This is an alternate version of the same table that is structured the same
   // but has a non-serial Primary Key.
-  $schema['test_people'] = array(
+  $schema['test_people'] = [
     'description' => 'A duplicate version of the test table, used for additional tests.',
-    'fields' => array(
-      'name' => array(
+    'fields' => [
+      'name' => [
         'description' => "A person's name",
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'description' => "The person's age",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'job' => array(
+      ],
+      'job' => [
         'description' => "The person's job",
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-    ),
-    'primary key' => array('job'),
-    'indexes' => array(
-      'ages' => array('age'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['job'],
+    'indexes' => [
+      'ages' => ['age'],
+    ],
+  ];
 
-  $schema['test_people_copy'] = array(
+  $schema['test_people_copy'] = [
     'description' => 'A duplicate version of the test_people table, used for additional tests.',
-    'fields' => array(
-      'name' => array(
+    'fields' => [
+      'name' => [
         'description' => "A person's name",
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'description' => "The person's age",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'job' => array(
+      ],
+      'job' => [
         'description' => "The person's job",
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-    ),
-    'primary key' => array('job'),
-    'indexes' => array(
-      'ages' => array('age'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['job'],
+    'indexes' => [
+      'ages' => ['age'],
+    ],
+  ];
 
-  $schema['test_one_blob'] = array(
+  $schema['test_one_blob'] = [
     'description' => 'A simple table including a BLOB field for testing BLOB behavior.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'description' => 'Simple unique ID.',
         'type' => 'serial',
         'not null' => TRUE,
-      ),
-      'blob1' => array(
+      ],
+      'blob1' => [
         'description' => 'A BLOB field.',
         'type' => 'blob',
-      ),
-    ),
-    'primary key' => array('id'),
-    );
+      ],
+    ],
+    'primary key' => ['id'],
+    ];
 
-  $schema['test_two_blobs'] = array(
+  $schema['test_two_blobs'] = [
     'description' => 'A simple test table with two BLOB fields.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'description' => 'Simple unique ID.',
         'type' => 'serial',
         'not null' => TRUE,
-      ),
-      'blob1' => array(
+      ],
+      'blob1' => [
         'description' => 'A dummy BLOB field.',
         'type' => 'blob',
-      ),
-      'blob2' => array(
+      ],
+      'blob2' => [
         'description' => 'A second BLOB field.',
         'type' => 'blob'
-      ),
-    ),
-    'primary key' => array('id'),
-    );
+      ],
+    ],
+    'primary key' => ['id'],
+    ];
 
-  $schema['test_task'] = array(
+  $schema['test_task'] = [
     'description' => 'A task list for people in the test table.',
-    'fields' => array(
-      'tid' => array(
+    'fields' => [
+      'tid' => [
         'description' => 'Task ID, primary key.',
         'type' => 'serial',
         'not null' => TRUE,
-      ),
-      'pid' => array(
+      ],
+      'pid' => [
         'description' => 'The {test_people}.pid, foreign key for the test table.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'task' => array(
+      ],
+      'task' => [
         'description' => 'The task to be completed.',
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'priority' => array(
+      ],
+      'priority' => [
         'description' => 'The priority of the task.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('tid'),
-  );
+      ],
+    ],
+    'primary key' => ['tid'],
+  ];
 
-  $schema['test_null'] = array(
+  $schema['test_null'] = [
     'description' => 'Basic test table for NULL value handling.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'type' => 'serial',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'description' => "A person's name.",
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => FALSE,
         'default' => '',
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'description' => "The person's age.",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => FALSE,
-        'default' => 0),
-    ),
-    'primary key' => array('id'),
-    'unique keys' => array(
-      'name' => array('name')
-    ),
-    'indexes' => array(
-      'ages' => array('age'),
-    ),
-  );
+        'default' => 0],
+    ],
+    'primary key' => ['id'],
+    'unique keys' => [
+      'name' => ['name']
+    ],
+    'indexes' => [
+      'ages' => ['age'],
+    ],
+  ];
 
-  $schema['test_serialized'] = array(
+  $schema['test_serialized'] = [
     'description' => 'Basic test table for NULL value handling.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'type' => 'serial',
         'unsigned' => TRUE,
         'not null' => TRUE,
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'description' => "A person's name.",
         'type' => 'varchar_ascii',
         'length' => 255,
         'not null' => FALSE,
         'default' => '',
-      ),
-      'info' => array(
+      ],
+      'info' => [
         'description' => "The person's data in serialized form.",
         'type' => 'blob',
         'serialize' => TRUE,
-      ),
-    ),
-    'primary key' => array('id'),
-    'unique keys' => array(
-      'name' => array('name')
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['id'],
+    'unique keys' => [
+      'name' => ['name']
+    ],
+  ];
 
-  $schema['test_composite_primary'] = array(
+  $schema['test_composite_primary'] = [
     'description' => 'Basic test table with a composite primary key',
-    'fields' => array(
-      'name' => array(
+    'fields' => [
+      'name' => [
         'description' => "A person's name",
         'type' => 'varchar',
         'length' => 50,
         'not null' => TRUE,
         'default' => '',
         'binary' => TRUE,
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'description' => "The person's age",
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'job' => array(
+      ],
+      'job' => [
         'description' => "The person's job",
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => 'Undefined',
-      ),
-    ),
-    'primary key' => array('name', 'age'),
-  );
+      ],
+    ],
+    'primary key' => ['name', 'age'],
+  ];
 
-  $schema['test_special_columns'] = array(
+  $schema['test_special_columns'] = [
     'description' => 'A simple test table with special column names.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'description' => 'Simple unique ID.',
         'type' => 'int',
         'not null' => TRUE,
-      ),
-      'offset' => array(
+      ],
+      'offset' => [
         'description' => 'A column with preserved name.',
         'type' => 'text',
-      ),
-    ),
-    'primary key' => array('id'),
-  );
+      ],
+    ],
+    'primary key' => ['id'],
+  ];
 
   $schema['TEST_UPPERCASE'] = $schema['test'];
 
diff --git a/core/modules/system/tests/modules/database_test/src/Controller/DatabaseTestController.php b/core/modules/system/tests/modules/database_test/src/Controller/DatabaseTestController.php
index 7de24d4..bd6dd9c 100644
--- a/core/modules/system/tests/modules/database_test/src/Controller/DatabaseTestController.php
+++ b/core/modules/system/tests/modules/database_test/src/Controller/DatabaseTestController.php
@@ -19,11 +19,11 @@ class DatabaseTestController {
    * @return \Symfony\Component\HttpFoundation\JsonResponse
    */
   public function dbQueryTemporary() {
-    $table_name = db_query_temporary('SELECT age FROM {test}', array());
-    return new JsonResponse(array(
+    $table_name = db_query_temporary('SELECT age FROM {test}', []);
+    return new JsonResponse([
       'table_name' => $table_name,
       'row_count' => db_select($table_name)->countQuery()->execute()->fetchField(),
-    ));
+    ]);
   }
 
   /**
@@ -37,7 +37,7 @@ public function dbQueryTemporary() {
   public function pagerQueryEven($limit) {
     $query = db_select('test', 't');
     $query
-      ->fields('t', array('name'))
+      ->fields('t', ['name'])
       ->orderBy('age');
 
     // This should result in 2 pages of results.
@@ -47,9 +47,9 @@ public function pagerQueryEven($limit) {
 
     $names = $query->execute()->fetchCol();
 
-    return new JsonResponse(array(
+    return new JsonResponse([
       'names' => $names,
-    ));
+    ]);
   }
 
   /**
@@ -63,7 +63,7 @@ public function pagerQueryEven($limit) {
   public function pagerQueryOdd($limit) {
     $query = db_select('test_task', 't');
     $query
-      ->fields('t', array('task'))
+      ->fields('t', ['task'])
       ->orderBy('pid');
 
     // This should result in 4 pages of results.
@@ -73,9 +73,9 @@ public function pagerQueryOdd($limit) {
 
     $names = $query->execute()->fetchCol();
 
-    return new JsonResponse(array(
+    return new JsonResponse([
       'names' => $names,
-    ));
+    ]);
   }
 
   /**
@@ -87,16 +87,16 @@ public function pagerQueryOdd($limit) {
    * @return \Symfony\Component\HttpFoundation\JsonResponse
    */
   public function testTablesort() {
-    $header = array(
-      'tid' => array('data' => t('Task ID'), 'field' => 'tid', 'sort' => 'desc'),
-      'pid' => array('data' => t('Person ID'), 'field' => 'pid'),
-      'task' => array('data' => t('Task'), 'field' => 'task'),
-      'priority' => array('data' => t('Priority'), 'field' => 'priority', ),
-    );
+    $header = [
+      'tid' => ['data' => t('Task ID'), 'field' => 'tid', 'sort' => 'desc'],
+      'pid' => ['data' => t('Person ID'), 'field' => 'pid'],
+      'task' => ['data' => t('Task'), 'field' => 'task'],
+      'priority' => ['data' => t('Priority'), 'field' => 'priority', ],
+    ];
 
     $query = db_select('test_task', 't');
     $query
-      ->fields('t', array('tid', 'pid', 'task', 'priority'));
+      ->fields('t', ['tid', 'pid', 'task', 'priority']);
 
     $query = $query
       ->extend('Drupal\Core\Database\Query\TableSortExtender')
@@ -105,9 +105,9 @@ public function testTablesort() {
     // We need all the results at once to check the sort.
     $tasks = $query->execute()->fetchAll();
 
-    return new JsonResponse(array(
+    return new JsonResponse([
       'tasks' => $tasks,
-    ));
+    ]);
   }
 
   /**
@@ -119,16 +119,16 @@ public function testTablesort() {
    * @return \Symfony\Component\HttpFoundation\JsonResponse
    */
   public function testTablesortFirst() {
-    $header = array(
-      'tid' => array('data' => t('Task ID'), 'field' => 'tid', 'sort' => 'desc'),
-      'pid' => array('data' => t('Person ID'), 'field' => 'pid'),
-      'task' => array('data' => t('Task'), 'field' => 'task'),
-      'priority' => array('data' => t('Priority'), 'field' => 'priority', ),
-    );
+    $header = [
+      'tid' => ['data' => t('Task ID'), 'field' => 'tid', 'sort' => 'desc'],
+      'pid' => ['data' => t('Person ID'), 'field' => 'pid'],
+      'task' => ['data' => t('Task'), 'field' => 'task'],
+      'priority' => ['data' => t('Priority'), 'field' => 'priority', ],
+    ];
 
     $query = db_select('test_task', 't');
     $query
-      ->fields('t', array('tid', 'pid', 'task', 'priority'));
+      ->fields('t', ['tid', 'pid', 'task', 'priority']);
 
     $query = $query
       ->extend('Drupal\Core\Database\Query\TableSortExtender')
@@ -138,9 +138,9 @@ public function testTablesortFirst() {
     // We need all the results at once to check the sort.
     $tasks = $query->execute()->fetchAll();
 
-    return new JsonResponse(array(
+    return new JsonResponse([
       'tasks' => $tasks,
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php b/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php
index 9612554..12eebcc 100644
--- a/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php
+++ b/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php
@@ -22,10 +22,10 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $header = array(
-      'username' => array('data' => t('Username'), 'field' => 'u.name'),
-      'status' => array('data' => t('Status'), 'field' => 'u.status'),
-    );
+    $header = [
+      'username' => ['data' => t('Username'), 'field' => 'u.name'],
+      'status' => ['data' => t('Status'), 'field' => 'u.status'],
+    ];
 
     $query = db_select('users_field_data', 'u');
     $query->condition('u.uid', 0, '<>');
@@ -38,7 +38,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender')
       ->extend('Drupal\Core\Database\Query\TableSortExtender');
     $query
-      ->fields('u', array('uid'))
+      ->fields('u', ['uid'])
       ->limit(50)
       ->orderByHeader($header)
       ->setCountQuery($count_query);
@@ -46,22 +46,22 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ->execute()
       ->fetchCol();
 
-    $options = array();
+    $options = [];
 
     foreach (User::loadMultiple($uids) as $account) {
-      $options[$account->id()] = array(
-        'title' => array('data' => array('#title' => $account->getUsername())),
+      $options[$account->id()] = [
+        'title' => ['data' => ['#title' => $account->getUsername()]],
         'username' => $account->getUsername(),
         'status' => $account->isActive() ? t('active') : t('blocked'),
-      );
+      ];
     }
 
-    $form['accounts'] = array(
+    $form['accounts'] = [
       '#type' => 'tableselect',
       '#header' => $header,
       '#options' => $options,
       '#empty' => t('No people available.'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/display_variant_test/src/EventSubscriber/TestPageDisplayVariantSubscriber.php b/core/modules/system/tests/modules/display_variant_test/src/EventSubscriber/TestPageDisplayVariantSubscriber.php
index 3768bcd..acfed44 100644
--- a/core/modules/system/tests/modules/display_variant_test/src/EventSubscriber/TestPageDisplayVariantSubscriber.php
+++ b/core/modules/system/tests/modules/display_variant_test/src/EventSubscriber/TestPageDisplayVariantSubscriber.php
@@ -32,7 +32,7 @@ public function onSelectPageDisplayVariant(PageDisplayVariantSelectionEvent $eve
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[RenderEvents::SELECT_PAGE_DISPLAY_VARIANT][] = array('onSelectPageDisplayVariant');
+    $events[RenderEvents::SELECT_PAGE_DISPLAY_VARIANT][] = ['onSelectPageDisplayVariant'];
     return $events;
   }
 
diff --git a/core/modules/system/tests/modules/entity_reference_test/entity_reference_test.module b/core/modules/system/tests/modules/entity_reference_test/entity_reference_test.module
index 51b506b..5ae4fcb 100644
--- a/core/modules/system/tests/modules/entity_reference_test/entity_reference_test.module
+++ b/core/modules/system/tests/modules/entity_reference_test/entity_reference_test.module
@@ -12,7 +12,7 @@
  * Implements hook_entity_base_field_info().
  */
 function entity_reference_test_entity_base_field_info(EntityTypeInterface $entity_type) {
-  $fields = array();
+  $fields = [];
 
   if ($entity_type->id() === 'entity_test') {
     $fields['user_role'] = BaseFieldDefinition::create('entity_reference')
@@ -33,10 +33,10 @@ function entity_reference_test_entity_base_field_info_alter(&$fields, EntityType
     // Allow user_id field to use configurable widget.
     $fields['user_id']
       ->setSetting('handler', 'default')
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'entity_reference_autocomplete',
         'weight' => 0,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
   }
 }
diff --git a/core/modules/system/tests/modules/entity_test/entity_test.install b/core/modules/system/tests/modules/entity_test/entity_test.install
index 5e3bcaa..c796c9a 100644
--- a/core/modules/system/tests/modules/entity_test/entity_test.install
+++ b/core/modules/system/tests/modules/entity_test/entity_test.install
@@ -15,12 +15,12 @@
 function entity_test_install() {
   foreach (entity_test_entity_types() as $entity_type) {
     // Auto-create fields for testing.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'entity_type' => $entity_type,
       'field_name' => 'field_test_text',
       'type' => 'text',
       'cardinality' => 1,
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => $entity_type,
       'field_name' => 'field_test_text',
@@ -30,7 +30,7 @@ function entity_test_install() {
     ])->save();
 
     entity_get_form_display($entity_type, $entity_type, 'default')
-      ->setComponent('field_test_text', array('type' => 'text_textfield'))
+      ->setComponent('field_test_text', ['type' => 'text_textfield'])
       ->save();
   }
 }
@@ -40,17 +40,17 @@ function entity_test_install() {
  */
 function entity_test_schema() {
   // Schema for simple entity.
-  $schema['entity_test_example'] = array(
+  $schema['entity_test_example'] = [
     'description' => 'Stores entity_test items.',
-    'fields' => array(
-      'id' => array(
+    'fields' => [
+      'id' => [
         'type' => 'serial',
         'not null' => TRUE,
         'description' => 'Primary Key: Unique entity-test item ID.',
-      ),
-    ),
-    'primary key' => array('id'),
-  );
+      ],
+    ],
+    'primary key' => ['id'],
+  ];
   return $schema;
 }
 
diff --git a/core/modules/system/tests/modules/entity_test/entity_test.module b/core/modules/system/tests/modules/entity_test/entity_test.module
index cf1a63c..3a7a51d 100644
--- a/core/modules/system/tests/modules/entity_test/entity_test.module
+++ b/core/modules/system/tests/modules/entity_test/entity_test.module
@@ -54,7 +54,7 @@
  *   List with entity_types.
  */
 function entity_test_entity_types($filter = NULL) {
-  $types = array();
+  $types = [];
   if ($filter === NULL || $filter === ENTITY_TEST_TYPES_ROUTING) {
     $types[] = 'entity_test';
   }
@@ -168,7 +168,7 @@ function entity_test_entity_base_field_info_alter(&$fields, EntityTypeInterface
  */
 function entity_test_entity_field_storage_info(EntityTypeInterface $entity_type) {
   if ($entity_type->id() == 'entity_test_update') {
-    return \Drupal::state()->get('entity_test_update.additional_field_storage_definitions', array());
+    return \Drupal::state()->get('entity_test_update.additional_field_storage_definitions', []);
   }
 }
 
@@ -185,8 +185,8 @@ function entity_test_entity_field_storage_info(EntityTypeInterface $entity_type)
  *   'entity_test'.
  */
 function entity_test_create_bundle($bundle, $text = NULL, $entity_type = 'entity_test') {
-  $bundles = \Drupal::state()->get($entity_type . '.bundles') ?: array($entity_type => array('label' => 'Entity Test Bundle'));
-  $bundles += array($bundle => array('label' => $text ? $text : $bundle));
+  $bundles = \Drupal::state()->get($entity_type . '.bundles') ?: [$entity_type => ['label' => 'Entity Test Bundle']];
+  $bundles += [$bundle => ['label' => $text ? $text : $bundle]];
   \Drupal::state()->set($entity_type . '.bundles', $bundles);
 
   \Drupal::entityManager()->onBundleCreate($bundle, $entity_type);
@@ -202,7 +202,7 @@ function entity_test_create_bundle($bundle, $text = NULL, $entity_type = 'entity
  *   'entity_test'.
  */
 function entity_test_delete_bundle($bundle, $entity_type = 'entity_test') {
-  $bundles = \Drupal::state()->get($entity_type . '.bundles') ?: array($entity_type => array('label' => 'Entity Test Bundle'));
+  $bundles = \Drupal::state()->get($entity_type . '.bundles') ?: [$entity_type => ['label' => 'Entity Test Bundle']];
   unset($bundles[$bundle]);
   \Drupal::state()->set($entity_type . '.bundles', $bundles);
 
@@ -213,11 +213,11 @@ function entity_test_delete_bundle($bundle, $entity_type = 'entity_test') {
  * Implements hook_entity_bundle_info().
  */
 function entity_test_entity_bundle_info() {
-  $bundles = array();
+  $bundles = [];
   $entity_types = \Drupal::entityManager()->getDefinitions();
   foreach ($entity_types as $entity_type_id => $entity_type) {
     if ($entity_type->getProvider() == 'entity_test' && $entity_type_id != 'entity_test_with_bundle') {
-      $bundles[$entity_type_id] = \Drupal::state()->get($entity_type_id . '.bundles') ?: array($entity_type_id => array('label' => 'Entity Test Bundle'));
+      $bundles[$entity_type_id] = \Drupal::state()->get($entity_type_id . '.bundles') ?: [$entity_type_id => ['label' => 'Entity Test Bundle']];
     }
   }
   return $bundles;
@@ -230,18 +230,18 @@ function entity_test_entity_view_mode_info_alter(&$view_modes) {
   $entity_info = \Drupal::entityManager()->getDefinitions();
   foreach ($entity_info as $entity_type => $info) {
     if ($entity_info[$entity_type]->getProvider() == 'entity_test' && !isset($view_modes[$entity_type])) {
-      $view_modes[$entity_type] = array(
-        'full' => array(
+      $view_modes[$entity_type] = [
+        'full' => [
           'label' => t('Full object'),
           'status' => TRUE,
           'cache' => TRUE,
-        ),
-        'teaser' => array(
+        ],
+        'teaser' => [
           'label' => t('Teaser'),
           'status' => TRUE,
           'cache' => TRUE,
-        ),
-      );
+        ],
+      ];
     }
   }
 }
@@ -253,12 +253,12 @@ function entity_test_entity_form_mode_info_alter(&$form_modes) {
   $entity_info = \Drupal::entityManager()->getDefinitions();
   foreach ($entity_info as $entity_type => $info) {
     if ($entity_info[$entity_type]->getProvider() == 'entity_test') {
-      $form_modes[$entity_type] = array(
-        'compact' => array(
+      $form_modes[$entity_type] = [
+        'compact' => [
           'label' => t('Compact version'),
           'status' => TRUE,
-        ),
-      );
+        ],
+      ];
     }
   }
 }
@@ -267,24 +267,24 @@ function entity_test_entity_form_mode_info_alter(&$form_modes) {
  * Implements hook_entity_extra_field_info().
  */
 function entity_test_entity_extra_field_info() {
-  $extra['entity_test']['bundle_with_extra_fields'] = array(
-    'display' => array(
+  $extra['entity_test']['bundle_with_extra_fields'] = [
+    'display' => [
       // Note: those extra fields do not currently display anything, they are
       // just used in \Drupal\Tests\field_ui\Kernel\EntityDisplayTest to test
       // the behavior of entity display objects.
-      'display_extra_field' => array(
+      'display_extra_field' => [
         'label' => t('Display extra field'),
         'description' => t('An extra field on the display side.'),
         'weight' => 5,
         'visible' => TRUE,
-      ),
-      'display_extra_field_hidden' => array(
+      ],
+      'display_extra_field_hidden' => [
         'label' => t('Display extra field (hidden)'),
         'description' => t('An extra field on the display side, hidden by default.'),
         'visible' => FALSE,
-      ),
-    )
-  );
+      ],
+    ]
+  ];
 
   return $extra;
 }
@@ -676,16 +676,16 @@ function entity_test_field_default_value(FieldableEntityInterface $entity, Field
   // that they are correctly passed.
   $string = $definition->getName() . '_' . $entity->language()->getId();
   // Return a "default value" with multiple items.
-  return array(
-    array(
+  return [
+    [
       'shape' => "shape:0:$string",
       'color' => "color:0:$string",
-    ),
-    array(
+    ],
+    [
       'shape' => "shape:1:$string",
       'color' => "color:1:$string",
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -715,7 +715,7 @@ function entity_test_entity_prepare_view($entity_type, array $entities, array $d
       // Add a dummy field item attribute on field_test_text if it exists.
       if ($entity->hasField('field_test_text') && $displays[$entity->bundle()]->getComponent('field_test_text')) {
         foreach ($entity->get('field_test_text') as $item) {
-          $item->_attributes += array('data-field-item-attr' => 'foobar');
+          $item->_attributes += ['data-field-item-attr' => 'foobar'];
         }
       }
 
@@ -724,7 +724,7 @@ function entity_test_entity_prepare_view($entity_type, array $entities, array $d
       foreach ($fields as $field) {
         if ($field->getType() === 'daterange') {
           $item = $entity->get($field->getName());
-          $item->_attributes += array('data-field-item-attr' => 'foobar');
+          $item->_attributes += ['data-field-item-attr' => 'foobar'];
         }
       }
     }
diff --git a/core/modules/system/tests/modules/entity_test/src/Controller/EntityTestController.php b/core/modules/system/tests/modules/entity_test/src/Controller/EntityTestController.php
index d0cd895..a693488 100644
--- a/core/modules/system/tests/modules/entity_test/src/Controller/EntityTestController.php
+++ b/core/modules/system/tests/modules/entity_test/src/Controller/EntityTestController.php
@@ -38,7 +38,7 @@ public function listReferencingEntities($entity_reference_field_name, $reference
       ->getStorage($referenced_entity_type)
       ->load($referenced_entity_id);
     if ($referenced_entity === NULL) {
-      return array();
+      return [];
     }
 
     $query = $this->entityTypeManager()->getStorage('entity_test')->getQuery()
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTest.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTest.php
index a603f53..f3ada1f 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTest.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTest.php
@@ -72,15 +72,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t('The name of the test entity.'))
       ->setTranslatable(TRUE)
       ->setSetting('max_length', 32)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => -5,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ));
+      ]);
 
     $fields['created'] = BaseFieldDefinition::create('created')
       ->setLabel(t('Authored on'))
@@ -94,17 +94,17 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setSetting('handler', 'default')
       // Default EntityTest entities to have the root user as the owner, to
       // simplify testing.
-      ->setDefaultValue(array(0 => array('target_id' => 1)))
+      ->setDefaultValue([0 => ['target_id' => 1]])
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'entity_reference_autocomplete',
         'weight' => -1,
-        'settings' => array(
+        'settings' => [
           'match_operator' => 'CONTAINS',
           'size' => '60',
           'placeholder' => '',
-        ),
-      ));
+        ],
+      ]);
 
     return $fields;
   }
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
index f7fe8e64..7fe9ce2 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestBaseFieldDisplay.php
@@ -53,39 +53,39 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
 
     $fields['test_display_configurable'] = BaseFieldDefinition::create('text')
       ->setLabel(t('Field with configurable display'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'type' => 'text_default',
         'weight' => 10,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'text_textfield',
         'weight' => 10,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['test_display_non_configurable'] = BaseFieldDefinition::create('text')
       ->setLabel(t('Field with non-configurable display'))
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'type' => 'text_default',
         'weight' => 11,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'text_textfield',
         'weight' => 11,
-      ));
+      ]);
 
     $fields['test_display_multiple'] = BaseFieldDefinition::create('text')
       ->setLabel(t('A field with multiple values'))
       ->setCardinality(FieldStorageDefinition::CARDINALITY_UNLIMITED)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'type' => 'text_default',
         'weight' => 12,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'text_textfield',
         'weight' => 12,
-      ));
+      ]);
 
     return $fields;
   }
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestCompositeConstraint.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestCompositeConstraint.php
index a8158b0..bd28b34 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestCompositeConstraint.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestCompositeConstraint.php
@@ -36,15 +36,15 @@ class EntityTestCompositeConstraint extends EntityTest {
   public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields = parent::baseFieldDefinitions($entity_type);
 
-    $fields['name']->setDisplayOptions('form', array(
+    $fields['name']->setDisplayOptions('form', [
       'type' => 'string',
       'weight' => 0,
-    ));
+    ]);
 
-    $fields['type']->setDisplayOptions('form', array(
+    $fields['type']->setDisplayOptions('form', [
       'type' => 'entity_reference_autocomplete',
       'weight' => 0,
-    ));
+    ]);
 
     return $fields;
   }
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestConstraintViolation.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestConstraintViolation.php
index 448718d..e12c74a 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestConstraintViolation.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestConstraintViolation.php
@@ -33,11 +33,11 @@ class EntityTestConstraintViolation extends EntityTest {
   public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields = parent::baseFieldDefinitions($entity_type);
 
-    $fields['name']->setDisplayOptions('form', array(
+    $fields['name']->setDisplayOptions('form', [
       'type' => 'string',
       'weight' => 0,
-    ));
-    $fields['name']->addConstraint('FieldWidgetConstraint', array());
+    ]);
+    $fields['name']->addConstraint('FieldWidgetConstraint', []);
 
     return $fields;
   }
diff --git a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
index 6cf0d5c..6d72f7a 100644
--- a/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
+++ b/core/modules/system/tests/modules/entity_test/src/Entity/EntityTestUpdate.php
@@ -35,7 +35,7 @@ class EntityTestUpdate extends EntityTestRev {
    */
   public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
     $fields = parent::baseFieldDefinitions($entity_type);
-    $fields += \Drupal::state()->get('entity_test_update.additional_base_field_definitions', array());
+    $fields += \Drupal::state()->get('entity_test_update.additional_base_field_definitions', []);
     return $fields;
   }
 
@@ -44,7 +44,7 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
    */
   public static function bundleFieldDefinitions(EntityTypeInterface $entity_type, $bundle, array $base_field_definitions) {
     $fields = parent::bundleFieldDefinitions($entity_type, $bundle, $base_field_definitions);
-    $fields += \Drupal::state()->get('entity_test_update.additional_bundle_field_definitions.' . $bundle, array());
+    $fields += \Drupal::state()->get('entity_test_update.additional_bundle_field_definitions.' . $bundle, []);
     return $fields;
   }
 
diff --git a/core/modules/system/tests/modules/entity_test/src/EntityTestAccessControlHandler.php b/core/modules/system/tests/modules/entity_test/src/EntityTestAccessControlHandler.php
index 2281666..1bd49dd 100644
--- a/core/modules/system/tests/modules/entity_test/src/EntityTestAccessControlHandler.php
+++ b/core/modules/system/tests/modules/entity_test/src/EntityTestAccessControlHandler.php
@@ -45,13 +45,13 @@ protected function checkAccess(EntityInterface $entity, $operation, AccountInter
       // Viewing the label of the 'entity_test_label' entity type is allowed.
       return AccessResult::allowed();
     }
-    elseif (in_array($operation, array('view', 'view label'))) {
+    elseif (in_array($operation, ['view', 'view label'])) {
       if (!$entity->isDefaultTranslation()) {
         return AccessResult::allowedIfHasPermission($account, 'view test entity translations');
       }
       return AccessResult::allowedIfHasPermission($account, 'view test entity');
     }
-    elseif (in_array($operation, array('update', 'delete'))) {
+    elseif (in_array($operation, ['update', 'delete'])) {
       return AccessResult::allowedIfHasPermission($account, 'administer entity_test content');
     }
 
diff --git a/core/modules/system/tests/modules/entity_test/src/EntityTestForm.php b/core/modules/system/tests/modules/entity_test/src/EntityTestForm.php
index 7e4caff..e4c5114 100644
--- a/core/modules/system/tests/modules/entity_test/src/EntityTestForm.php
+++ b/core/modules/system/tests/modules/entity_test/src/EntityTestForm.php
@@ -32,11 +32,11 @@ public function form(array $form, FormStateInterface $form_state) {
 
     // @todo: Is there a better way to check if an entity type is revisionable?
     if ($entity->getEntityType()->hasKey('revision') && !$entity->isNew()) {
-      $form['revision'] = array(
+      $form['revision'] = [
         '#type' => 'checkbox',
         '#title' => t('Create new revision'),
         '#default_value' => $entity->isNewRevision(),
-      );
+      ];
     }
 
     return $form;
@@ -58,10 +58,10 @@ public function save(array $form, FormStateInterface $form_state) {
       $entity->save();
 
       if ($is_new) {
-        $message = t('%entity_type @id has been created.', array('@id' => $entity->id(), '%entity_type' => $entity->getEntityTypeId()));
+        $message = t('%entity_type @id has been created.', ['@id' => $entity->id(), '%entity_type' => $entity->getEntityTypeId()]);
       }
       else {
-        $message = t('%entity_type @id has been updated.', array('@id' => $entity->id(), '%entity_type' => $entity->getEntityTypeId()));
+        $message = t('%entity_type @id has been updated.', ['@id' => $entity->id(), '%entity_type' => $entity->getEntityTypeId()]);
       }
       drupal_set_message($message);
 
@@ -69,7 +69,7 @@ public function save(array $form, FormStateInterface $form_state) {
         $entity_type = $entity->getEntityTypeId();
         $form_state->setRedirect(
           "entity.$entity_type.edit_form",
-          array($entity_type => $entity->id())
+          [$entity_type => $entity->id()]
         );
       }
       else {
diff --git a/core/modules/system/tests/modules/entity_test/src/EntityTestStorageSchema.php b/core/modules/system/tests/modules/entity_test/src/EntityTestStorageSchema.php
index 67a13bd..bdd36db 100644
--- a/core/modules/system/tests/modules/entity_test/src/EntityTestStorageSchema.php
+++ b/core/modules/system/tests/modules/entity_test/src/EntityTestStorageSchema.php
@@ -18,7 +18,7 @@ protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $res
     $schema = parent::getEntitySchema($entity_type, $reset);
 
     if ($entity_type->id() == 'entity_test_update') {
-      $schema[$entity_type->getBaseTable()]['indexes'] += \Drupal::state()->get('entity_test_update.additional_entity_indexes', array());
+      $schema[$entity_type->getBaseTable()]['indexes'] += \Drupal::state()->get('entity_test_update.additional_entity_indexes', []);
     }
     return $schema;
   }
diff --git a/core/modules/system/tests/modules/entity_test/src/EntityTestViewBuilder.php b/core/modules/system/tests/modules/entity_test/src/EntityTestViewBuilder.php
index 720e3c3..e90a227 100644
--- a/core/modules/system/tests/modules/entity_test/src/EntityTestViewBuilder.php
+++ b/core/modules/system/tests/modules/entity_test/src/EntityTestViewBuilder.php
@@ -18,18 +18,18 @@ public function buildComponents(array &$build, array $entities, array $displays,
     parent::buildComponents($build, $entities, $displays, $view_mode);
 
     foreach ($entities as $id => $entity) {
-      $build[$id]['label'] = array(
+      $build[$id]['label'] = [
         '#weight' => -100,
         '#plain_text' => $entity->label(),
-      );
-      $build[$id]['separator'] = array(
+      ];
+      $build[$id]['separator'] = [
         '#weight' => -150,
         '#markup' => ' | ',
-      );
-      $build[$id]['view_mode'] = array(
+      ];
+      $build[$id]['view_mode'] = [
         '#weight' => -200,
         '#plain_text' => $view_mode,
-      );
+      ];
     }
   }
 
diff --git a/core/modules/system/tests/modules/entity_test/src/Plugin/Derivative/EntityTestLocalTasks.php b/core/modules/system/tests/modules/entity_test/src/Plugin/Derivative/EntityTestLocalTasks.php
index 059c3a9..ed3f1dc 100644
--- a/core/modules/system/tests/modules/entity_test/src/Plugin/Derivative/EntityTestLocalTasks.php
+++ b/core/modules/system/tests/modules/entity_test/src/Plugin/Derivative/EntityTestLocalTasks.php
@@ -13,16 +13,16 @@ class EntityTestLocalTasks extends DeriverBase {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $this->derivatives = array();
+    $this->derivatives = [];
     $types = entity_test_entity_types(ENTITY_TEST_TYPES_ROUTING);
 
     foreach ($types as $entity_type) {
-      $this->derivatives[$entity_type . '.canonical'] = array();
+      $this->derivatives[$entity_type . '.canonical'] = [];
       $this->derivatives[$entity_type . '.canonical']['base_route'] = "entity.$entity_type.canonical";
       $this->derivatives[$entity_type . '.canonical']['route_name'] = "entity.$entity_type.canonical";
       $this->derivatives[$entity_type . '.canonical']['title'] = 'View';
 
-      $this->derivatives[$entity_type . '.edit'] = array();
+      $this->derivatives[$entity_type . '.edit'] = [];
       $this->derivatives[$entity_type . '.edit']['base_route'] = "entity.$entity_type.canonical";
       $this->derivatives[$entity_type . '.edit']['route_name'] = "entity.$entity_type.edit_form";
       $this->derivatives[$entity_type . '.edit']['title'] = 'Edit';
diff --git a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/FieldTestItem.php b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/FieldTestItem.php
index 2310ffd..df2b89b 100644
--- a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/FieldTestItem.php
+++ b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/FieldTestItem.php
@@ -46,14 +46,14 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'varchar',
           'length' => 255,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ShapeItem.php b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ShapeItem.php
index 0d2ebb9..4921dcf 100644
--- a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ShapeItem.php
+++ b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ShapeItem.php
@@ -21,9 +21,9 @@ class ShapeItem extends FieldItemBase {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'foreign_key_name' => 'shape',
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
@@ -43,30 +43,30 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    $foreign_keys = array();
+    $foreign_keys = [];
     // The 'foreign keys' key is not always used in tests.
     if ($field_definition->getSetting('foreign_key_name')) {
-      $foreign_keys['foreign keys'] = array(
+      $foreign_keys['foreign keys'] = [
         // This is a dummy foreign key definition, references a table that
         // doesn't exist, but that's not a problem.
-        $field_definition->getSetting('foreign_key_name') => array(
+        $field_definition->getSetting('foreign_key_name') => [
           'table' => $field_definition->getSetting('foreign_key_name'),
-          'columns' => array($field_definition->getSetting('foreign_key_name') => 'id'),
-        ),
-      );
+          'columns' => [$field_definition->getSetting('foreign_key_name') => 'id'],
+        ],
+      ];
     }
-    return array(
-      'columns' => array(
-        'shape' => array(
+    return [
+      'columns' => [
+        'shape' => [
           'type' => 'varchar',
           'length' => 32,
-        ),
-        'color' => array(
+        ],
+        'color' => [
           'type' => 'varchar',
           'length' => 32,
-        ),
-      ),
-    ) + $foreign_keys;
+        ],
+      ],
+    ] + $foreign_keys;
   }
 
   /**
diff --git a/core/modules/system/tests/modules/entity_test/src/Routing/EntityTestRoutes.php b/core/modules/system/tests/modules/entity_test/src/Routing/EntityTestRoutes.php
index d75d359..5732060 100644
--- a/core/modules/system/tests/modules/entity_test/src/Routing/EntityTestRoutes.php
+++ b/core/modules/system/tests/modules/entity_test/src/Routing/EntityTestRoutes.php
@@ -18,13 +18,13 @@ class EntityTestRoutes {
   public function routes() {
     $types = entity_test_entity_types(ENTITY_TEST_TYPES_ROUTING);
 
-    $routes = array();
+    $routes = [];
     foreach ($types as $entity_type_id) {
       $routes["entity.$entity_type_id.admin_form"] = new Route(
         "$entity_type_id/structure/{bundle}",
-        array('_controller' => '\Drupal\entity_test\Controller\EntityTestController::testAdmin'),
-        array('_permission' => 'administer entity_test content'),
-        array('_admin_route' => TRUE)
+        ['_controller' => '\Drupal\entity_test\Controller\EntityTestController::testAdmin'],
+        ['_permission' => 'administer entity_test content'],
+        ['_admin_route' => TRUE]
       );
     }
     return $routes;
diff --git a/core/modules/system/tests/modules/entity_test_extra/entity_test_extra.module b/core/modules/system/tests/modules/entity_test_extra/entity_test_extra.module
index d55aab3..f399ae4 100644
--- a/core/modules/system/tests/modules/entity_test_extra/entity_test_extra.module
+++ b/core/modules/system/tests/modules/entity_test_extra/entity_test_extra.module
@@ -11,19 +11,19 @@
  * Implements hook_entity_base_field_info().
  */
 function entity_test_extra_entity_base_field_info(EntityTypeInterface $entity_type) {
-  return \Drupal::state()->get($entity_type->id() . '.additional_base_field_definitions', array());
+  return \Drupal::state()->get($entity_type->id() . '.additional_base_field_definitions', []);
 }
 
 /**
  * Implements hook_entity_field_storage_info().
  */
 function entity_test_extra_entity_field_storage_info(EntityTypeInterface $entity_type) {
-  return \Drupal::state()->get($entity_type->id() . '.additional_field_storage_definitions', array());
+  return \Drupal::state()->get($entity_type->id() . '.additional_field_storage_definitions', []);
 }
 
 /**
  * Implements hook_entity_bundle_field_info().
  */
 function entity_test_extra_entity_bundle_field_info(EntityTypeInterface $entity_type, $bundle, array $base_field_definitions) {
-  return \Drupal::state()->get($entity_type->id() . '.' . $bundle . '.additional_bundle_field_definitions', array());
+  return \Drupal::state()->get($entity_type->id() . '.' . $bundle . '.additional_bundle_field_definitions', []);
 }
diff --git a/core/modules/system/tests/modules/entity_test_revlog/src/Entity/EntityTestWithRevisionLog.php b/core/modules/system/tests/modules/entity_test_revlog/src/Entity/EntityTestWithRevisionLog.php
index 8d9b4d1..b03415f 100644
--- a/core/modules/system/tests/modules/entity_test_revlog/src/Entity/EntityTestWithRevisionLog.php
+++ b/core/modules/system/tests/modules/entity_test_revlog/src/Entity/EntityTestWithRevisionLog.php
@@ -43,15 +43,15 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setTranslatable(TRUE)
       ->setRevisionable(TRUE)
       ->setSetting('max_length', 32)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => -5,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ));
+      ]);
 
     return $fields;
   }
diff --git a/core/modules/system/tests/modules/error_service_test/src/Logger/TestLog.php b/core/modules/system/tests/modules/error_service_test/src/Logger/TestLog.php
index 579d71f..3f18bb9 100644
--- a/core/modules/system/tests/modules/error_service_test/src/Logger/TestLog.php
+++ b/core/modules/system/tests/modules/error_service_test/src/Logger/TestLog.php
@@ -16,7 +16,7 @@ class TestLog implements LoggerInterface {
   /**
    * {@inheritdoc}
    */
-  public function log($level, $message, array $context = array()) {
+  public function log($level, $message, array $context = []) {
     $trigger = [
       '%type' => 'Exception',
       '@message' => 'Deforestation',
diff --git a/core/modules/system/tests/modules/form_test/form_test.module b/core/modules/system/tests/modules/form_test/form_test.module
index 7114a29..e3a5e3f 100644
--- a/core/modules/system/tests/modules/form_test/form_test.module
+++ b/core/modules/system/tests/modules/form_test/form_test.module
@@ -41,49 +41,49 @@ function system_form_form_test_alter_form_alter(&$form, FormStateInterface $form
  * Create a header and options array. Helper function for callbacks.
  */
 function _form_test_tableselect_get_data() {
-  $header = array(
+  $header = [
     'one' => t('One'),
     'two' => t('Two'),
     'three' => t('Three'),
     'four' => t('Four'),
-  );
+  ];
 
-  $options['row1'] = array(
-    'title' => array('data' => array('#title' => t('row1'))),
+  $options['row1'] = [
+    'title' => ['data' => ['#title' => t('row1')]],
     'one' => 'row1col1',
     'two' => t('row1col2'),
     'three' => t('row1col3'),
     'four' => t('row1col4'),
-  );
+  ];
 
-  $options['row2'] = array(
-    'title' => array('data' => array('#title' => t('row2'))),
+  $options['row2'] = [
+    'title' => ['data' => ['#title' => t('row2')]],
     'one' => 'row2col1',
     'two' => t('row2col2'),
     'three' => t('row2col3'),
     'four' => t('row2col4'),
-  );
+  ];
 
-  $options['row3'] = array(
-    'title' => array('data' => array('#title' => t('row3'))),
+  $options['row3'] = [
+    'title' => ['data' => ['#title' => t('row3')]],
     'one' => 'row3col1',
     'two' => t('row3col2'),
     'three' => t('row3col3'),
     'four' => t('row3col4'),
-  );
+  ];
 
-  return array($header, $options);
+  return [$header, $options];
 }
 
 /**
  * Implements hook_form_FORM_ID_alter() for the registration form.
  */
 function form_test_form_user_register_form_alter(&$form, FormStateInterface $form_state) {
-  $form['test_rebuild'] = array(
+  $form['test_rebuild'] = [
     '#type' => 'submit',
     '#value' => t('Rebuild'),
-    '#submit' => array('form_test_user_register_form_rebuild'),
-  );
+    '#submit' => ['form_test_user_register_form_rebuild'],
+  ];
 }
 
 /**
diff --git a/core/modules/system/tests/modules/form_test/src/AutocompleteController.php b/core/modules/system/tests/modules/form_test/src/AutocompleteController.php
index acbfa40..cc78a9c 100644
--- a/core/modules/system/tests/modules/form_test/src/AutocompleteController.php
+++ b/core/modules/system/tests/modules/form_test/src/AutocompleteController.php
@@ -16,7 +16,7 @@ class AutocompleteController {
    *   A JSON response.
    */
   public function autocomplete1() {
-    return new JsonResponse(array('key' => 'value'));
+    return new JsonResponse(['key' => 'value']);
   }
 
 }
diff --git a/core/modules/system/tests/modules/form_test/src/Callbacks.php b/core/modules/system/tests/modules/form_test/src/Callbacks.php
index 3bf07f3..0310a37 100644
--- a/core/modules/system/tests/modules/form_test/src/Callbacks.php
+++ b/core/modules/system/tests/modules/form_test/src/Callbacks.php
@@ -38,7 +38,7 @@ public function validateName(&$element, FormStateInterface $form_state) {
 
     if ($triggered) {
       // Output the element's value from $form_state.
-      drupal_set_message(t('@label value: @value', array('@label' => $element['#title'], '@value' => $form_state->getValue('name'))));
+      drupal_set_message(t('@label value: @value', ['@label' => $element['#title'], '@value' => $form_state->getValue('name')]));
 
       // Trigger a form validation error to see our changes.
       $form_state->setErrorByName('');
diff --git a/core/modules/system/tests/modules/form_test/src/ConfirmFormArrayPathTestForm.php b/core/modules/system/tests/modules/form_test/src/ConfirmFormArrayPathTestForm.php
index 8885836..eaa0f20 100644
--- a/core/modules/system/tests/modules/form_test/src/ConfirmFormArrayPathTestForm.php
+++ b/core/modules/system/tests/modules/form_test/src/ConfirmFormArrayPathTestForm.php
@@ -20,11 +20,11 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getCancelUrl() {
-    return new Url('form_test.route6', array(), array(
-      'query' => array(
+    return new Url('form_test.route6', [], [
+      'query' => [
         'destination' => 'admin/config',
-      ),
-    ));
+      ],
+    ]);
   }
 
   /**
diff --git a/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php b/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
index d35c59d..917f9e0 100644
--- a/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
+++ b/core/modules/system/tests/modules/form_test/src/ConfirmFormTestForm.php
@@ -57,7 +57,7 @@ public function getCancelText() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['element'] = array('#markup' => '<p>The ConfirmFormTestForm::buildForm() method was used for this form.</p>');
+    $form['element'] = ['#markup' => '<p>The ConfirmFormTestForm::buildForm() method was used for this form.</p>'];
 
     return parent::buildForm($form, $form_state);
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Controller/FormTestController.php b/core/modules/system/tests/modules/form_test/src/Controller/FormTestController.php
index 5d28bf2..4c9fbe2 100644
--- a/core/modules/system/tests/modules/form_test/src/Controller/FormTestController.php
+++ b/core/modules/system/tests/modules/form_test/src/Controller/FormTestController.php
@@ -20,12 +20,12 @@ class FormTestController extends ControllerBase {
    */
   public function twoFormInstances() {
     $user = $this->currentUser();
-    $values = array(
+    $values = [
       'uid' => $user->id(),
       'name' => $user->getUsername(),
       'type' => 'page',
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-    );
+    ];
     $node1 = $this->entityManager()->getStorage('node')->create($values);
     $node2 = clone($node1);
     $return['node_form_1'] = $this->entityFormBuilder()->getForm($node1);
diff --git a/core/modules/system/tests/modules/form_test/src/EventSubscriber/FormTestEventSubscriber.php b/core/modules/system/tests/modules/form_test/src/EventSubscriber/FormTestEventSubscriber.php
index 15e4545..3fb9750 100644
--- a/core/modules/system/tests/modules/form_test/src/EventSubscriber/FormTestEventSubscriber.php
+++ b/core/modules/system/tests/modules/form_test/src/EventSubscriber/FormTestEventSubscriber.php
@@ -39,8 +39,8 @@ public function onKernelResponse(FilterResponseEvent $event) {
    * {@inheritdoc}
    */
   public static function getSubscribedEvents() {
-    $events[KernelEvents::REQUEST][] = array('onKernelRequest');
-    $events[KernelEvents::RESPONSE][] = array('onKernelResponse');
+    $events[KernelEvents::REQUEST][] = ['onKernelRequest'];
+    $events[KernelEvents::RESPONSE][] = ['onKernelResponse'];
     return $events;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestButtonClassForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestButtonClassForm.php
index 6870781..4e3de3b 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestButtonClassForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestButtonClassForm.php
@@ -21,16 +21,16 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['button'] = array(
+    $form['button'] = [
       '#type' => 'button',
       '#value' => 'test',
       '#button_type' => 'foo',
-    );
-    $form['delete'] = array(
+    ];
+    $form['delete'] = [
       '#type' => 'button',
       '#value' => 'Delete',
       '#button_type' => 'danger',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxForm.php
index 66f7d05..62220cc 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxForm.php
@@ -20,65 +20,65 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     // A required checkbox.
-    $form['required_checkbox'] = array(
+    $form['required_checkbox'] = [
       '#type' => 'checkbox',
       '#required' => TRUE,
       '#title' => 'required_checkbox',
-    );
+    ];
 
     // A disabled checkbox should get its default value back.
-    $form['disabled_checkbox_on'] = array(
+    $form['disabled_checkbox_on'] = [
       '#type' => 'checkbox',
       '#disabled' => TRUE,
       '#return_value' => 'disabled_checkbox_on',
       '#default_value' => 'disabled_checkbox_on',
       '#title' => 'disabled_checkbox_on',
-    );
-    $form['disabled_checkbox_off'] = array(
+    ];
+    $form['disabled_checkbox_off'] = [
       '#type' => 'checkbox',
       '#disabled' => TRUE,
       '#return_value' => 'disabled_checkbox_off',
       '#default_value' => NULL,
       '#title' => 'disabled_checkbox_off',
-    );
+    ];
 
     // A checkbox is active when #default_value == #return_value.
-    $form['checkbox_on'] = array(
+    $form['checkbox_on'] = [
       '#type' => 'checkbox',
       '#return_value' => 'checkbox_on',
       '#default_value' => 'checkbox_on',
       '#title' => 'checkbox_on',
-    );
+    ];
 
     // But inactive in any other case.
-    $form['checkbox_off'] = array(
+    $form['checkbox_off'] = [
       '#type' => 'checkbox',
       '#return_value' => 'checkbox_off',
       '#default_value' => 'checkbox_on',
       '#title' => 'checkbox_off',
-    );
+    ];
 
     // Checkboxes with a #return_value of '0' are supported.
-    $form['zero_checkbox_on'] = array(
+    $form['zero_checkbox_on'] = [
       '#type' => 'checkbox',
       '#return_value' => '0',
       '#default_value' => '0',
       '#title' => 'zero_checkbox_on',
-    );
+    ];
 
     // In that case, passing a #default_value != '0'
     // means that the checkbox is off.
-    $form['zero_checkbox_off'] = array(
+    $form['zero_checkbox_off'] = [
       '#type' => 'checkbox',
       '#return_value' => '0',
       '#default_value' => '1',
       '#title' => 'zero_checkbox_off',
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxTypeJugglingForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxTypeJugglingForm.php
index eb48bfc..ad0a86e 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxTypeJugglingForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxTypeJugglingForm.php
@@ -21,12 +21,12 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $default_value = NULL, $return_value = NULL) {
-    $form['checkbox'] = array(
+    $form['checkbox'] = [
       '#title' => t('Checkbox'),
       '#type' => 'checkbox',
       '#return_value' => $return_value,
       '#default_value' => $default_value,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesRadiosForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesRadiosForm.php
index 7c412fe..a1a45a0 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesRadiosForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesRadiosForm.php
@@ -24,53 +24,53 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, $customize = FALSE) {
     // Expand #type checkboxes, setting custom element properties for some but not
     // all options.
-    $form['checkboxes'] = array(
+    $form['checkboxes'] = [
       '#type' => 'checkboxes',
       '#title' => 'Checkboxes',
-      '#options' => array(
+      '#options' => [
         0 => 'Zero',
         'foo' => 'Foo',
         1 => 'One',
         'bar' => $this->t('<em>Bar - checkboxes</em>'),
         '>' => "<em>Special Char</em><script>alert('checkboxes');</script>",
-      ),
-    );
+      ],
+    ];
     if ($customize) {
-      $form['checkboxes'] += array(
-        'foo' => array(
+      $form['checkboxes'] += [
+        'foo' => [
           '#description' => 'Enable to foo.',
-        ),
-        1 => array(
+        ],
+        1 => [
           '#weight' => 10,
-        ),
-      );
+        ],
+      ];
     }
 
     // Expand #type radios, setting custom element properties for some but not
     // all options.
-    $form['radios'] = array(
+    $form['radios'] = [
       '#type' => 'radios',
       '#title' => 'Radios',
-      '#options' => array(
+      '#options' => [
         0 => 'Zero',
         'foo' => 'Foo',
         1 => 'One',
         'bar' => '<em>Bar - radios</em>',
         '>' => "<em>Special Char</em><script>alert('radios');</script>",
-      ),
-    );
+      ],
+    ];
     if ($customize) {
-      $form['radios'] += array(
-        'foo' => array(
+      $form['radios'] += [
+        'foo' => [
           '#description' => 'Enable to foo.',
-        ),
-        1 => array(
+        ],
+        1 => [
           '#weight' => 10,
-        ),
-      );
+        ],
+      ];
     }
 
-    $form['submit'] = array('#type' => 'submit', '#value' => 'Submit');
+    $form['submit'] = ['#type' => 'submit', '#value' => 'Submit'];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesZeroForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesZeroForm.php
index 2f2a38f..59f81e9 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesZeroForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestCheckboxesZeroForm.php
@@ -23,27 +23,27 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state, $json = TRUE) {
     $form_state->set('json', $json);
-    $form['checkbox_off'] = array(
+    $form['checkbox_off'] = [
       '#title' => t('Checkbox off'),
       '#type' => 'checkboxes',
-      '#options' => array('foo', 'bar', 'baz'),
-    );
-    $form['checkbox_zero_default'] = array(
+      '#options' => ['foo', 'bar', 'baz'],
+    ];
+    $form['checkbox_zero_default'] = [
       '#title' => t('Zero default'),
       '#type' => 'checkboxes',
-      '#options' => array('foo', 'bar', 'baz'),
-      '#default_value' => array(0),
-    );
-    $form['checkbox_string_zero_default'] = array(
+      '#options' => ['foo', 'bar', 'baz'],
+      '#default_value' => [0],
+    ];
+    $form['checkbox_string_zero_default'] = [
       '#title' => t('Zero default (string)'),
       '#type' => 'checkboxes',
-      '#options' => array('foo', 'bar', 'baz'),
-      '#default_value' => array('0'),
-    );
-    $form['submit'] = array(
+      '#options' => ['foo', 'bar', 'baz'],
+      '#default_value' => ['0'],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestClickedButtonForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestClickedButtonForm.php
index c6684db..adab5bd 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestClickedButtonForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestClickedButtonForm.php
@@ -26,10 +26,10 @@ public function buildForm(array $form, FormStateInterface $form_state, $first =
     // submitted without any information identifying the button responsible for
     // the submission. In other browsers, the form is submitted as though the
     // first button were clicked.
-    $form['text'] = array(
+    $form['text'] = [
       '#title' => 'Text',
       '#type' => 'textfield',
-    );
+    ];
 
     // Loop through each path argument, adding buttons based on the information
     // in the argument. For example, if the path is
@@ -37,7 +37,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $first =
     // 'image_button', and a 'button' with #access=FALSE. This enables form.test
     // to test a variety of combinations.
     $i = 0;
-    $args = array($first, $second, $third);
+    $args = [$first, $second, $third];
     foreach ($args as $arg) {
       $name = 'button' . ++$i;
       // 's', 'b', or 'i' in the argument define the button type wanted.
@@ -54,10 +54,10 @@ public function buildForm(array $form, FormStateInterface $form_state, $first =
         $type = NULL;
       }
       if (isset($type)) {
-        $form[$name] = array(
+        $form[$name] = [
           '#type' => $type,
           '#name' => $name,
-        );
+        ];
         // Image buttons need a #src; the others need a #value.
         if ($type == 'image_button') {
           $form[$name]['#src'] = 'core/misc/druplicon.png';
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestColorForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestColorForm.php
index a9be1ea..0763880 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestColorForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestColorForm.php
@@ -22,14 +22,14 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['color'] = array(
+    $form['color'] = [
       '#type' => 'color',
       '#title' => 'Color',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestDescriptionForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestDescriptionForm.php
index f7527af..81120ad 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestDescriptionForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestDescriptionForm.php
@@ -23,26 +23,26 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['form_textfield_test_description_before'] = array(
+    $form['form_textfield_test_description_before'] = [
       '#type' => 'textfield',
       '#title' => 'Textfield test for description before element',
       '#description' => 'Textfield test for description before element',
       '#description_display' => 'before',
-    );
+    ];
 
-    $form['form_textfield_test_description_after'] = array(
+    $form['form_textfield_test_description_after'] = [
       '#type' => 'textfield',
       '#title' => 'Textfield test for description after element',
       '#description' => 'Textfield test for description after element',
       '#description_display' => 'after',
-    );
+    ];
 
-    $form['form_textfield_test_description_invisible'] = array(
+    $form['form_textfield_test_description_invisible'] = [
       '#type' => 'textfield',
       '#title' => 'Textfield test for visually-hidden description',
       '#description' => 'Textfield test for visually-hidden description',
       '#description_display' => 'invisible',
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestDisabledElementsForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestDisabledElementsForm.php
index 8ebbf83..56e6d2e 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestDisabledElementsForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestDisabledElementsForm.php
@@ -24,101 +24,101 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     // Elements that take a simple default value.
-    foreach (array('textfield', 'textarea', 'search', 'tel', 'hidden') as $type) {
-      $form[$type] = array(
+    foreach (['textfield', 'textarea', 'search', 'tel', 'hidden'] as $type) {
+      $form[$type] = [
         '#type' => $type,
         '#title' => $type,
         '#default_value' => $type,
         '#test_hijack_value' => 'HIJACK',
         '#disabled' => TRUE,
-      );
+      ];
     }
 
     // Multiple values option elements.
-    foreach (array('checkboxes', 'select') as $type) {
-      $form[$type . '_multiple'] = array(
+    foreach (['checkboxes', 'select'] as $type) {
+      $form[$type . '_multiple'] = [
         '#type' => $type,
         '#title' => $type . ' (multiple)',
-        '#options' => array(
+        '#options' => [
           'test_1' => 'Test 1',
           'test_2' => 'Test 2',
-        ),
+        ],
         '#multiple' => TRUE,
-        '#default_value' => array('test_2' => 'test_2'),
+        '#default_value' => ['test_2' => 'test_2'],
         // The keys of #test_hijack_value need to match the #name of the control.
         // @see FormsTestCase::testDisabledElements()
-        '#test_hijack_value' => $type == 'select' ? array('' => 'test_1') : array('test_1' => 'test_1'),
+        '#test_hijack_value' => $type == 'select' ? ['' => 'test_1'] : ['test_1' => 'test_1'],
         '#disabled' => TRUE,
-      );
+      ];
     }
 
     // Single values option elements.
-    foreach (array('radios', 'select') as $type) {
-      $form[$type . '_single'] = array(
+    foreach (['radios', 'select'] as $type) {
+      $form[$type . '_single'] = [
         '#type' => $type,
         '#title' => $type . ' (single)',
-        '#options' => array(
+        '#options' => [
           'test_1' => 'Test 1',
           'test_2' => 'Test 2',
-        ),
+        ],
         '#multiple' => FALSE,
         '#default_value' => 'test_2',
         '#test_hijack_value' => 'test_1',
         '#disabled' => TRUE,
-      );
+      ];
     }
 
     // Checkbox and radio.
-    foreach (array('checkbox', 'radio') as $type) {
-      $form[$type . '_unchecked'] = array(
+    foreach (['checkbox', 'radio'] as $type) {
+      $form[$type . '_unchecked'] = [
         '#type' => $type,
         '#title' => $type . ' (unchecked)',
         '#return_value' => 1,
         '#default_value' => 0,
         '#test_hijack_value' => 1,
         '#disabled' => TRUE,
-      );
-      $form[$type . '_checked'] = array(
+      ];
+      $form[$type . '_checked'] = [
         '#type' => $type,
         '#title' => $type . ' (checked)',
         '#return_value' => 1,
         '#default_value' => 1,
         '#test_hijack_value' => NULL,
         '#disabled' => TRUE,
-      );
+      ];
     }
 
     // Weight, number, range.
-    foreach (array('weight', 'number', 'range') as $type) {
-      $form[$type] = array(
+    foreach (['weight', 'number', 'range'] as $type) {
+      $form[$type] = [
         '#type' => $type,
         '#title' => $type,
         '#default_value' => 10,
         '#test_hijack_value' => 5,
         '#disabled' => TRUE,
-      );
+      ];
     }
 
     // Color.
-    $form['color'] = array(
+    $form['color'] = [
       '#type' => 'color',
       '#title' => 'color',
       '#default_value' => '#0000ff',
       '#test_hijack_value' => '#ff0000',
       '#disabled' => TRUE,
-    );
+    ];
 
     // The #disabled state should propagate to children.
-    $form['disabled_container'] = array(
+    $form['disabled_container'] = [
       '#disabled' => TRUE,
-    );
-    foreach (array('textfield', 'textarea', 'hidden', 'tel', 'url') as $type) {
-      $form['disabled_container']['disabled_container_' . $type] = array(
+    ];
+    foreach (['textfield', 'textarea', 'hidden', 'tel', 'url'] as $type) {
+      $form['disabled_container']['disabled_container_' . $type] = [
         '#type' => $type,
         '#title' => $type,
         '#default_value' => $type,
         '#test_hijack_value' => 'HIJACK',
-      );
+      ];
     }
 
     // Date.
@@ -128,103 +128,103 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // versions by encoding and decoding it again instead of hardcoding it.
     // See https://github.com/php/php-src/commit/fdb2709dd27c5987c2d2c8aaf0cdbebf9f17f643
     $expected = json_decode(json_encode($date), TRUE);
-    $form['disabled_container']['disabled_container_datetime'] = array(
+    $form['disabled_container']['disabled_container_datetime'] = [
       '#type' => 'datetime',
       '#title' => 'datetime',
       '#default_value' => $date,
       '#expected_value' => $expected,
       '#test_hijack_value' => new DrupalDateTime('1978-12-02 11:30:00', 'Europe/Berlin'),
       '#date_timezone' => 'Europe/Berlin',
-    );
+    ];
 
-    $form['disabled_container']['disabled_container_date'] = array(
+    $form['disabled_container']['disabled_container_date'] = [
       '#type' => 'date',
       '#title' => 'date',
       '#default_value' => '2001-01-13',
       '#expected_value' => '2001-01-13',
       '#test_hijack_value' => '2013-01-01',
       '#date_timezone' => 'Europe/Berlin',
-    );
+    ];
 
 
     // Try to hijack the email field with a valid email.
-    $form['disabled_container']['disabled_container_email'] = array(
+    $form['disabled_container']['disabled_container_email'] = [
       '#type' => 'email',
       '#title' => 'email',
       '#default_value' => 'foo@example.com',
       '#test_hijack_value' => 'bar@example.com',
-    );
+    ];
 
     // Try to hijack the URL field with a valid URL.
-    $form['disabled_container']['disabled_container_url'] = array(
+    $form['disabled_container']['disabled_container_url'] = [
       '#type' => 'url',
       '#title' => 'url',
       '#default_value' => 'http://example.com',
       '#test_hijack_value' => 'http://example.com/foo',
-    );
+    ];
 
     // Text format.
-    $form['text_format'] = array(
+    $form['text_format'] = [
       '#type' => 'text_format',
       '#title' => 'Text format',
       '#disabled' => TRUE,
       '#default_value' => 'Text value',
       '#format' => 'plain_text',
-      '#expected_value' => array(
+      '#expected_value' => [
         'value' => 'Text value',
         'format' => 'plain_text',
-      ),
-      '#test_hijack_value' => array(
+      ],
+      '#test_hijack_value' => [
         'value' => 'HIJACK',
         'format' => 'filtered_html',
-      ),
-    );
+      ],
+    ];
 
     // Password fields.
-    $form['password'] = array(
+    $form['password'] = [
       '#type' => 'password',
       '#title' => 'Password',
       '#disabled' => TRUE,
-    );
-    $form['password_confirm'] = array(
+    ];
+    $form['password_confirm'] = [
       '#type' => 'password_confirm',
       '#title' => 'Password confirm',
       '#disabled' => TRUE,
-    );
+    ];
 
     // Files.
-    $form['file'] = array(
+    $form['file'] = [
       '#type' => 'file',
       '#title' => 'File',
       '#disabled' => TRUE,
-    );
-    $form['managed_file'] = array(
+    ];
+    $form['managed_file'] = [
       '#type' => 'managed_file',
       '#title' => 'Managed file',
       '#disabled' => TRUE,
-    );
+    ];
 
     // Buttons.
-    $form['image_button'] = array(
+    $form['image_button'] = [
       '#type' => 'image_button',
       '#value' => 'Image button',
       '#disabled' => TRUE,
-    );
-    $form['button'] = array(
+    ];
+    $form['button'] = [
       '#type' => 'button',
       '#value' => 'Button',
       '#disabled' => TRUE,
-    );
-    $form['submit_disabled'] = array(
+    ];
+    $form['submit_disabled'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
       '#disabled' => TRUE,
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestEmailForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestEmailForm.php
index d669515..8e82623 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestEmailForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestEmailForm.php
@@ -22,21 +22,21 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['email'] = array(
+    $form['email'] = [
       '#type' => 'email',
       '#title' => 'Email address',
       '#description' => 'An email address.',
-    );
-    $form['email_required'] = array(
+    ];
+    $form['email_required'] = [
       '#type' => 'email',
       '#title' => 'Address',
       '#required' => TRUE,
       '#description' => 'A required email address field.',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestEmptySelectForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestEmptySelectForm.php
index b6f9454..14dcb0c 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestEmptySelectForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestEmptySelectForm.php
@@ -21,12 +21,12 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['empty_select'] = array(
+    $form['empty_select'] = [
       '#type' => 'select',
       '#title' => t('Empty Select'),
       '#multiple' => FALSE,
       '#options' => NULL,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanAdvancedForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanAdvancedForm.php
index d3cbd52..f910469 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanAdvancedForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanAdvancedForm.php
@@ -22,16 +22,16 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     // Build an example form containing a managed file and a submit form element.
-    $form['image'] = array(
+    $form['image'] = [
       '#type' => 'managed_file',
       '#title' => t('Image'),
       '#upload_location' => 'public://',
       '#default_value' => 0,
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanForm.php
index bef5675..d5e0fd9 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestFormStateValuesCleanForm.php
@@ -24,13 +24,13 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     // Build an example form containing multiple submit and button elements; not
     // only on the top-level.
-    $form = array('#tree' => TRUE);
-    $form['foo'] = array('#type' => 'submit', '#value' => t('Submit'));
-    $form['bar'] = array('#type' => 'submit', '#value' => t('Submit'));
-    $form['beer'] = array('#type' => 'value', '#value' => 1000);
-    $form['baz']['foo'] = array('#type' => 'button', '#value' => t('Submit'));
-    $form['baz']['baz'] = array('#type' => 'submit', '#value' => t('Submit'));
-    $form['baz']['beer'] = array('#type' => 'value', '#value' => 2000);
+    $form = ['#tree' => TRUE];
+    $form['foo'] = ['#type' => 'submit', '#value' => t('Submit')];
+    $form['bar'] = ['#type' => 'submit', '#value' => t('Submit')];
+    $form['beer'] = ['#type' => 'value', '#value' => 1000];
+    $form['baz']['foo'] = ['#type' => 'button', '#value' => t('Submit')];
+    $form['baz']['baz'] = ['#type' => 'submit', '#value' => t('Submit')];
+    $form['baz']['beer'] = ['#type' => 'value', '#value' => 2000];
 
     // Add an arbitrary element and manually set it to be cleaned.
     // Using $form_state->addCleanValueKey('wine'); didn't work here.
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupContainerForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupContainerForm.php
index a9298ef..b141b7c 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupContainerForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupContainerForm.php
@@ -21,19 +21,19 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['container'] = array(
+    $form['container'] = [
       '#type' => 'container',
-    );
-    $form['meta'] = array(
+    ];
+    $form['meta'] = [
       '#type' => 'details',
       '#title' => 'Group element',
       '#open' => TRUE,
       '#group' => 'container',
-    );
-    $form['meta']['element'] = array(
+    ];
+    $form['meta']['element'] = [
       '#type' => 'textfield',
       '#title' => 'Nest in details element',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupDetailsForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupDetailsForm.php
index faa83cc..002b07d 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupDetailsForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupDetailsForm.php
@@ -21,22 +21,22 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $required = FALSE) {
-    $form['details'] = array(
+    $form['details'] = [
       '#type' => 'details',
       '#title' => 'Root element',
       '#open' => TRUE,
       '#required' => !empty($required),
-    );
-    $form['meta'] = array(
+    ];
+    $form['meta'] = [
       '#type' => 'details',
       '#title' => 'Group element',
       '#open' => TRUE,
       '#group' => 'details',
-    );
-    $form['meta']['element'] = array(
+    ];
+    $form['meta']['element'] = [
       '#type' => 'textfield',
       '#title' => 'Nest in details element',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupFieldsetForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupFieldsetForm.php
index fd7d83b..37ef246 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupFieldsetForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupFieldsetForm.php
@@ -21,20 +21,20 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $required = FALSE) {
-    $form['fieldset'] = array(
+    $form['fieldset'] = [
       '#type' => 'fieldset',
       '#title' => 'Fieldset',
       '#required' => !empty($required),
-    );
-    $form['meta'] = array(
+    ];
+    $form['meta'] = [
       '#type' => 'container',
       '#title' => 'Group element',
       '#group' => 'fieldset',
-    );
-    $form['meta']['element'] = array(
+    ];
+    $form['meta']['element'] = [
       '#type' => 'textfield',
       '#title' => 'Nest in container element',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupVerticalTabsForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupVerticalTabsForm.php
index 842ae9d..2d2f98b 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupVerticalTabsForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestGroupVerticalTabsForm.php
@@ -21,27 +21,27 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['vertical_tabs'] = array(
+    $form['vertical_tabs'] = [
       '#type' => 'vertical_tabs',
-    );
-    $form['meta'] = array(
+    ];
+    $form['meta'] = [
       '#type' => 'details',
       '#title' => 'First group element',
       '#group' => 'vertical_tabs',
-    );
-    $form['meta']['element'] = array(
+    ];
+    $form['meta']['element'] = [
       '#type' => 'textfield',
       '#title' => 'First nested element in details element',
-    );
-    $form['meta_2'] = array(
+    ];
+    $form['meta_2'] = [
       '#type' => 'details',
       '#title' => 'Second group element',
       '#group' => 'vertical_tabs',
-    );
-    $form['meta_2']['element_2'] = array(
+    ];
+    $form['meta_2']['element_2'] = [
       '#type' => 'textfield',
       '#title' => 'Second nested element in details element',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestInputForgeryForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestInputForgeryForm.php
index 2eeaf7f..c8a82c8 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestInputForgeryForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestInputForgeryForm.php
@@ -21,18 +21,18 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     // For testing that a user can't submit a value not matching one of the
     // allowed options.
-    $form['checkboxes'] = array(
+    $form['checkboxes'] = [
       '#title' => t('Checkboxes'),
       '#type' => 'checkboxes',
-      '#options' => array(
+      '#options' => [
         'one' => 'One',
         'two' => 'Two',
-      ),
-    );
-    $form['submit'] = array(
+      ],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestLabelForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestLabelForm.php
index 1adaa18..74c92ab 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestLabelForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestLabelForm.php
@@ -21,108 +21,108 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['form_checkboxes_test'] = array(
+    $form['form_checkboxes_test'] = [
       '#type' => 'checkboxes',
       '#title' => t('Checkboxes test'),
-      '#options' => array(
+      '#options' => [
         'first-checkbox' => t('First checkbox'),
         'second-checkbox' => t('Second checkbox'),
         'third-checkbox' => t('Third checkbox'),
         '0' => t('0'),
-      ),
-    );
-    $form['form_radios_test'] = array(
+      ],
+    ];
+    $form['form_radios_test'] = [
       '#type' => 'radios',
       '#title' => t('Radios test'),
-      '#options' => array(
+      '#options' => [
         'first-radio' => t('First radio'),
         'second-radio' => t('Second radio'),
         'third-radio' => t('Third radio'),
         '0' => t('0'),
-      ),
+      ],
       // Test #field_prefix and #field_suffix placement.
       '#field_prefix' => '<span id="form-test-radios-field-prefix">' . t('Radios #field_prefix element') . '</span>',
       '#field_suffix' => '<span id="form-test-radios-field-suffix">' . t('Radios #field_suffix element') . '</span>',
-    );
-    $form['form_checkbox_test'] = array(
+    ];
+    $form['form_checkbox_test'] = [
       '#type' => 'checkbox',
       '#title' => t('Checkbox test'),
-    );
-    $form['form_textfield_test_title_and_required'] = array(
+    ];
+    $form['form_textfield_test_title_and_required'] = [
       '#type' => 'textfield',
       '#title' => t('Textfield test for required with title'),
       '#required' => TRUE,
-    );
-    $form['form_textfield_test_no_title_required'] = array(
+    ];
+    $form['form_textfield_test_no_title_required'] = [
       '#type' => 'textfield',
       // We use an empty title, since not setting #title suppresses the label
       // and required marker.
       '#title' => '',
       '#required' => TRUE,
-    );
-    $form['form_textfield_test_title'] = array(
+    ];
+    $form['form_textfield_test_title'] = [
       '#type' => 'textfield',
       '#title' => t('Textfield test for title only'),
       // Not required.
       // Test #prefix and #suffix placement.
       '#prefix' => '<div id="form-test-textfield-title-prefix">' . t('Textfield #prefix element') . '</div>',
       '#suffix' => '<div id="form-test-textfield-title-suffix">' . t('Textfield #suffix element') . '</div>',
-    );
-    $form['form_textfield_test_title_after'] = array(
+    ];
+    $form['form_textfield_test_title_after'] = [
       '#type' => 'textfield',
       '#title' => t('Textfield test for title after element'),
       '#title_display' => 'after',
-    );
-    $form['form_textfield_test_title_invisible'] = array(
+    ];
+    $form['form_textfield_test_title_invisible'] = [
       '#type' => 'textfield',
       '#title' => t('Textfield test for invisible title'),
       '#title_display' => 'invisible',
-    );
+    ];
     // Textfield test for title set not to display.
-    $form['form_textfield_test_title_no_show'] = array(
+    $form['form_textfield_test_title_no_show'] = [
       '#type' => 'textfield',
-    );
+    ];
     // Checkboxes & radios with title as attribute.
-    $form['form_checkboxes_title_attribute'] = array(
+    $form['form_checkboxes_title_attribute'] = [
       '#type' => 'checkboxes',
       '#title' => 'Checkboxes test',
       '#title_display' => 'attribute',
-      '#options' => array(
+      '#options' => [
         'first-checkbox' => 'First checkbox',
         'second-checkbox' => 'Second checkbox',
-      ),
+      ],
       '#required' => TRUE,
-    );
-    $form['form_radios_title_attribute'] = array(
+    ];
+    $form['form_radios_title_attribute'] = [
       '#type' => 'radios',
       '#title' => 'Radios test',
       '#title_display' => 'attribute',
-      '#options' => array(
+      '#options' => [
         'first-radio' => 'First radio',
         'second-radio' => 'Second radio',
-      ),
+      ],
       '#required' => TRUE,
-    );
-    $form['form_checkboxes_title_invisible'] = array(
+    ];
+    $form['form_checkboxes_title_invisible'] = [
       '#type' => 'checkboxes',
       '#title' => 'Checkboxes test invisible',
       '#title_display' => 'invisible',
-      '#options' => array(
+      '#options' => [
         'first-checkbox' => 'First checkbox',
         'second-checkbox' => 'Second checkbox',
-      ),
+      ],
       '#required' => TRUE,
-    );
-    $form['form_radios_title_invisible'] = array(
+    ];
+    $form['form_radios_title_invisible'] = [
       '#type' => 'radios',
       '#title' => 'Radios test invisible',
       '#title_display' => 'invisible',
-      '#options' => array(
+      '#options' => [
         'first-radio' => 'First radio',
         'second-radio' => 'Second radio',
-      ),
+      ],
       '#required' => TRUE,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestLanguageSelectForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestLanguageSelectForm.php
index 0479450..ba41e19 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestLanguageSelectForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestLanguageSelectForm.php
@@ -23,38 +23,38 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['languages_all'] = array(
+    $form['languages_all'] = [
       '#title' => t('Languages: All'),
       '#type' => 'language_select',
       '#languages' => LanguageInterface::STATE_ALL,
       '#default_value' => 'xx',
-    );
-    $form['languages_configurable'] = array(
+    ];
+    $form['languages_configurable'] = [
       '#title' => t('Languages: Configurable'),
       '#type' => 'language_select',
       '#languages' => LanguageInterface::STATE_CONFIGURABLE,
       '#default_value' => 'en',
-    );
-    $form['languages_locked'] = array(
+    ];
+    $form['languages_locked'] = [
       '#title' => t('Languages: Locked'),
       '#type' => 'language_select',
       '#languages' => LanguageInterface::STATE_LOCKED,
-    );
-    $form['languages_config_and_locked'] = array(
+    ];
+    $form['languages_config_and_locked'] = [
       '#title' => t('Languages: Configurable and locked'),
       '#type' => 'language_select',
       '#languages' => LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_LOCKED,
       '#default_value' => 'dummy_value',
-    );
-    $form['language_custom_options'] = array(
+    ];
+    $form['language_custom_options'] = [
       '#title' => t('Languages: Custom'),
       '#type' => 'language_select',
       '#languages' => LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_LOCKED,
-      '#options' => array('opt1' => 'First option', 'opt2' => 'Second option', 'opt3' => 'Third option'),
+      '#options' => ['opt1' => 'First option', 'opt2' => 'Second option', 'opt3' => 'Third option'],
       '#default_value' => 'opt2',
-    );
+    ];
 
-    $form['submit'] = array('#type' => 'submit', '#value' => 'Submit');
+    $form['submit'] = ['#type' => 'submit', '#value' => 'Submit'];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestLimitValidationErrorsForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestLimitValidationErrorsForm.php
index 2cb2293..deff0b4 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestLimitValidationErrorsForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestLimitValidationErrorsForm.php
@@ -21,62 +21,62 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => 'Title',
       '#required' => TRUE,
-    );
+    ];
 
-    $form['test'] = array(
+    $form['test'] = [
       '#title' => 'Test',
       '#type' => 'textfield',
-      '#element_validate' => array('::elementValidateLimitValidationErrors'),
-    );
-    $form['test_numeric_index'] = array(
+      '#element_validate' => ['::elementValidateLimitValidationErrors'],
+    ];
+    $form['test_numeric_index'] = [
       '#tree' => TRUE,
-    );
-    $form['test_numeric_index'][0] = array(
+    ];
+    $form['test_numeric_index'][0] = [
       '#title' => 'Test (numeric index)',
       '#type' => 'textfield',
-      '#element_validate' => array('::elementValidateLimitValidationErrors'),
-    );
+      '#element_validate' => ['::elementValidateLimitValidationErrors'],
+    ];
 
-    $form['test_substring'] = array(
+    $form['test_substring'] = [
       '#tree' => TRUE,
-    );
-    $form['test_substring']['foo'] = array(
+    ];
+    $form['test_substring']['foo'] = [
       '#title' => 'Test (substring) foo',
       '#type' => 'textfield',
-      '#element_validate' => array('::elementValidateLimitValidationErrors'),
-    );
-    $form['test_substring']['foobar'] = array(
+      '#element_validate' => ['::elementValidateLimitValidationErrors'],
+    ];
+    $form['test_substring']['foobar'] = [
       '#title' => 'Test (substring) foobar',
       '#type' => 'textfield',
-      '#element_validate' => array('::elementValidateLimitValidationErrors'),
-    );
+      '#element_validate' => ['::elementValidateLimitValidationErrors'],
+    ];
 
-    $form['actions']['partial'] = array(
+    $form['actions']['partial'] = [
       '#type' => 'submit',
-      '#limit_validation_errors' => array(array('test')),
-      '#submit' => array('::partialSubmitForm'),
+      '#limit_validation_errors' => [['test']],
+      '#submit' => ['::partialSubmitForm'],
       '#value' => t('Partial validate'),
-    );
-    $form['actions']['partial_numeric_index'] = array(
+    ];
+    $form['actions']['partial_numeric_index'] = [
       '#type' => 'submit',
-      '#limit_validation_errors' => array(array('test_numeric_index', 0)),
-      '#submit' => array('::partialSubmitForm'),
+      '#limit_validation_errors' => [['test_numeric_index', 0]],
+      '#submit' => ['::partialSubmitForm'],
       '#value' => t('Partial validate (numeric index)'),
-    );
-    $form['actions']['substring'] = array(
+    ];
+    $form['actions']['substring'] = [
       '#type' => 'submit',
-      '#limit_validation_errors' => array(array('test_substring', 'foo')),
-      '#submit' => array('::partialSubmitForm'),
+      '#limit_validation_errors' => [['test_substring', 'foo']],
+      '#submit' => ['::partialSubmitForm'],
       '#value' => t('Partial validate (substring)'),
-    );
-    $form['actions']['full'] = array(
+    ];
+    $form['actions']['full'] = [
       '#type' => 'submit',
       '#value' => t('Full validate'),
-    );
+    ];
     return $form;
   }
 
@@ -85,7 +85,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    */
   public function elementValidateLimitValidationErrors($element, FormStateInterface $form_state) {
     if ($element['#value'] == 'invalid') {
-      $form_state->setError($element, t('@label element is invalid', array('@label' => $element['#title'])));
+      $form_state->setError($element, t('@label element is invalid', ['@label' => $element['#title']]));
     }
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestNumberForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestNumberForm.php
index 6b9520b..ab28146 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestNumberForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestNumberForm.php
@@ -21,114 +21,114 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $element = 'number') {
-    $base = array(
+    $base = [
       '#type' => $element,
-    );
+    ];
 
-    $form['integer_no_number'] = $base + array(
+    $form['integer_no_number'] = $base + [
       '#title' => 'Integer test, #no_error',
       '#default_value' => '#no_number',
-    );
-    $form['integer_no_step'] = $base + array(
+    ];
+    $form['integer_no_step'] = $base + [
       '#title' => 'Integer test without step',
       '#default_value' => 5,
-    );
-    $form['integer_no_step_step_error'] = $base + array(
+    ];
+    $form['integer_no_step_step_error'] = $base + [
       '#title' => 'Integer test without step, #step_error',
       '#default_value' => 4.5,
-    );
-    $form['integer_step'] = $base + array(
+    ];
+    $form['integer_step'] = $base + [
       '#title' => 'Integer test with step',
       '#default_value' => 5,
       '#step' => 1,
-    );
-    $form['integer_step_error'] = $base + array(
+    ];
+    $form['integer_step_error'] = $base + [
       '#title' => 'Integer test, with step, #step_error',
       '#default_value' => 5,
       '#step' => 2,
-    );
-    $form['integer_step_min'] = $base + array(
+    ];
+    $form['integer_step_min'] = $base + [
       '#title' => 'Integer test with min value',
       '#default_value' => 5,
       '#min' => 0,
       '#step' => 1,
-    );
-    $form['integer_step_min_error'] = $base + array(
+    ];
+    $form['integer_step_min_error'] = $base + [
       '#title' => 'Integer test with min value, #min_error',
       '#default_value' => 5,
       '#min' => 6,
       '#step' => 1,
-    );
-    $form['integer_step_max'] = $base + array(
+    ];
+    $form['integer_step_max'] = $base + [
       '#title' => 'Integer test with max value',
       '#default_value' => 5,
       '#max' => 6,
       '#step' => 1,
-    );
-    $form['integer_step_max_error'] = $base + array(
+    ];
+    $form['integer_step_max_error'] = $base + [
       '#title' => 'Integer test with max value, #max_error',
       '#default_value' => 5,
       '#max' => 4,
       '#step' => 1,
-    );
-    $form['integer_step_min_border'] = $base + array(
+    ];
+    $form['integer_step_min_border'] = $base + [
       '#title' => 'Integer test with min border check',
       '#default_value' => -1,
       '#min' => -1,
       '#step' => 1,
-    );
-    $form['integer_step_max_border'] = $base + array(
+    ];
+    $form['integer_step_max_border'] = $base + [
       '#title' => 'Integer test with max border check',
       '#default_value' => 5,
       '#max' => 5,
       '#step' => 1,
-    );
-    $form['integer_step_based_on_min'] = $base + array(
+    ];
+    $form['integer_step_based_on_min'] = $base + [
       '#title' => 'Integer test with step based on min check',
       '#default_value' => 3,
       '#min' => -1,
       '#step' => 2,
-    );
-    $form['integer_step_based_on_min_error'] = $base + array(
+    ];
+    $form['integer_step_based_on_min_error'] = $base + [
       '#title' => 'Integer test with step based on min check, #step_error',
       '#default_value' => 4,
       '#min' => -1,
       '#step' => 2,
-    );
-    $form['float_small_step'] = $base + array(
+    ];
+    $form['float_small_step'] = $base + [
       '#title' => 'Float test with a small step',
       '#default_value' => 4,
       '#step' => 0.0000000000001,
-    );
-    $form['float_step_no_error'] = $base + array(
+    ];
+    $form['float_step_no_error'] = $base + [
       '#title' => 'Float test',
       '#default_value' => 1.2,
       '#step' => 0.3,
-    );
-    $form['float_step_error'] = $base + array(
+    ];
+    $form['float_step_error'] = $base + [
       '#title' => 'Float test, #step_error',
       '#default_value' => 1.3,
       '#step' => 0.3,
-    );
-    $form['float_step_hard_no_error'] = $base + array(
+    ];
+    $form['float_step_hard_no_error'] = $base + [
       '#title' => 'Float test hard',
       '#default_value' => 0.9411764729088,
       '#step' => 0.00392156863712,
-    );
-    $form['float_step_hard_error'] = $base + array(
+    ];
+    $form['float_step_hard_error'] = $base + [
       '#title' => 'Float test hard, #step_error',
       '#default_value' => 0.9411764,
       '#step' => 0.00392156863,
-    );
-    $form['float_step_any_no_error'] = $base + array(
+    ];
+    $form['float_step_any_no_error'] = $base + [
       '#title' => 'Arbitrary float',
       '#default_value' => 0.839562930284,
       '#step' => 'aNy',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestPatternForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestPatternForm.php
index 5780172..9180628 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestPatternForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestPatternForm.php
@@ -21,34 +21,34 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#type' => 'textfield',
       '#title' => 'One digit followed by lowercase letters',
       '#pattern' => '[0-9][a-z]+',
-    );
-    $form['tel'] = array(
+    ];
+    $form['tel'] = [
       '#type' => 'tel',
       '#title' => 'Everything except numbers',
       '#pattern' => '[^\d]*',
-    );
-    $form['password'] = array(
+    ];
+    $form['password'] = [
       '#type' => 'password',
       '#title' => 'Password',
       '#pattern' => '[01]+',
-    );
-    $form['url'] = array(
+    ];
+    $form['url'] = [
       '#type' => 'url',
       '#title' => 'Client side validation',
       '#decription' => 'Just client side validation, using the #pattern attribute.',
-      '#attributes' => array(
+      '#attributes' => [
         'pattern' => '.*foo.*',
-      ),
+      ],
       '#pattern' => 'ignored',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestPlaceholderForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestPlaceholderForm.php
index 21a50ff..9dd5321 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestPlaceholderForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestPlaceholderForm.php
@@ -21,12 +21,12 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    foreach (array('textfield', 'textarea', 'url', 'password', 'search', 'tel', 'email', 'number') as $type) {
-      $form[$type] = array(
+    foreach (['textfield', 'textarea', 'url', 'password', 'search', 'tel', 'email', 'number'] as $type) {
+      $form[$type] = [
         '#type' => $type,
         '#title' => $type,
         '#placeholder' => 'placeholder-text',
-      );
+      ];
     }
 
     return $form;
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestProgrammaticForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestProgrammaticForm.php
index 1e7a014..66928f0 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestProgrammaticForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestProgrammaticForm.php
@@ -21,61 +21,61 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#title' => 'Textfield',
       '#type' => 'textfield',
-    );
+    ];
 
-    $form['checkboxes'] = array(
+    $form['checkboxes'] = [
       '#title' => t('Checkboxes'),
       '#type' => 'checkboxes',
-      '#options' => array(
+      '#options' => [
         1 => 'First checkbox',
         2 => 'Second checkbox',
-      ),
+      ],
       // Both checkboxes are selected by default so that we can test the ability
       // of programmatic form submissions to uncheck them.
-      '#default_value' => array(1, 2),
-    );
+      '#default_value' => [1, 2],
+    ];
 
-    $form['field_to_validate'] = array(
+    $form['field_to_validate'] = [
       '#type' => 'radios',
       '#title' => 'Field to validate (in the case of limited validation)',
       '#description' => 'If the form is submitted by clicking the "Submit with limited validation" button, then validation can be limited based on the value of this radio button.',
-      '#options' => array(
+      '#options' => [
         'all' => 'Validate all fields',
         'textfield' => 'Validate the "Textfield" field',
         'field_to_validate' => 'Validate the "Field to validate" field',
-      ),
+      ],
       '#default_value' => 'all',
-    );
+    ];
 
-    $form['field_restricted'] = array(
+    $form['field_restricted'] = [
       '#type' => 'textfield',
       '#title' => 'Textfield (no access)',
       '#access' => FALSE,
-    );
+    ];
 
     // The main submit button for the form.
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     // A secondary submit button that allows validation to be limited based on
     // the value of the above radio selector.
-    $form['submit_limit_validation'] = array(
+    $form['submit_limit_validation'] = [
       '#type' => 'submit',
       '#value' => 'Submit with limited validation',
       // Use the same submit handler for this button as for the form itself.
       // (This must be set explicitly or otherwise the form API will ignore the
       // #limit_validation_errors property.)
-      '#submit' => array('::submitForm'),
-    );
+      '#submit' => ['::submitForm'],
+    ];
     $user_input = $form_state->getUserInput();
     if (!empty($user_input['field_to_validate']) && $user_input['field_to_validate'] != 'all') {
-      $form['submit_limit_validation']['#limit_validation_errors'] = array(
-        array($user_input['field_to_validate']),
-      );
+      $form['submit_limit_validation']['#limit_validation_errors'] = [
+        [$user_input['field_to_validate']],
+      ];
     }
 
     return $form;
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeForm.php
index 25cdc3e..94240e5 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeForm.php
@@ -22,7 +22,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['with_default_value'] = array(
+    $form['with_default_value'] = [
       '#type' => 'range',
       '#title' => 'Range with default value',
       '#min' => 10,
@@ -30,34 +30,34 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       '#step' => 2,
       '#default_value' => 18,
       '#description' => 'The default value is 18.',
-    );
-    $form['float'] = array(
+    ];
+    $form['float'] = [
       '#type' => 'range',
       '#title' => 'Float',
       '#min' => 10,
       '#max' => 11,
       '#step' => 'any',
       '#description' => 'Floating point number between 10 and 11.',
-    );
-    $form['integer'] = array(
+    ];
+    $form['integer'] = [
       '#type' => 'range',
       '#title' => 'Integer',
       '#min' => 2,
       '#max' => 8,
       '#step' => 2,
       '#description' => 'Even integer between 2 and 8.',
-    );
-    $form['offset'] = array(
+    ];
+    $form['offset'] = [
       '#type' => 'range',
       '#title' => 'Offset',
       '#min' => 2.9,
       '#max' => 10.9,
       '#description' => 'Value between 2.9 and 10.9.',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeInvalidForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeInvalidForm.php
index 49bb0b9..5415205 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeInvalidForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestRangeInvalidForm.php
@@ -21,17 +21,17 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['minmax'] = array(
+    $form['minmax'] = [
       '#type' => 'range',
       '#min' => 10,
       '#max' => 5,
       '#title' => 'Invalid range',
       '#description' => 'Minimum greater than maximum.',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestRebuildPreserveValuesForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestRebuildPreserveValuesForm.php
index d0d520e..58934a7 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestRebuildPreserveValuesForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestRebuildPreserveValuesForm.php
@@ -23,58 +23,58 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     // Start the form with two checkboxes, to test different defaults, and a
     // textfield, to test more than one element type.
-    $form = array(
-      'checkbox_1_default_off' => array(
+    $form = [
+      'checkbox_1_default_off' => [
         '#type' => 'checkbox',
         '#title' => t('This checkbox defaults to unchecked'),
         '#default_value' => FALSE,
-      ),
-      'checkbox_1_default_on' => array(
+      ],
+      'checkbox_1_default_on' => [
         '#type' => 'checkbox',
         '#title' => t('This checkbox defaults to checked'),
         '#default_value' => TRUE,
-      ),
-      'text_1' => array(
+      ],
+      'text_1' => [
         '#type' => 'textfield',
         '#title' => t('This textfield has a non-empty default value.'),
         '#default_value' => 'DEFAULT 1',
-      ),
-    );
+      ],
+    ];
     // Provide an 'add more' button that rebuilds the form with an additional two
     // checkboxes and a textfield. The test is to make sure that the rebuild
     // triggered by this button preserves the user input values for the initial
     // elements and initializes the new elements with the correct default values.
     if (!$form_state->has('add_more')) {
-      $form['add_more'] = array(
+      $form['add_more'] = [
         '#type' => 'submit',
         '#value' => 'Add more',
-        '#submit' => array('::addMoreSubmitForm'),
-      );
+        '#submit' => ['::addMoreSubmitForm'],
+      ];
     }
     else {
-      $form += array(
-        'checkbox_2_default_off' => array(
+      $form += [
+        'checkbox_2_default_off' => [
           '#type' => 'checkbox',
           '#title' => t('This checkbox defaults to unchecked'),
           '#default_value' => FALSE,
-        ),
-        'checkbox_2_default_on' => array(
+        ],
+        'checkbox_2_default_on' => [
           '#type' => 'checkbox',
           '#title' => t('This checkbox defaults to checked'),
           '#default_value' => TRUE,
-        ),
-        'text_2' => array(
+        ],
+        'text_2' => [
           '#type' => 'textfield',
           '#title' => t('This textfield has a non-empty default value.'),
           '#default_value' => 'DEFAULT 2',
-        ),
-      );
+        ],
+      ];
     }
     // A submit button that finishes the form workflow (does not rebuild).
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
@@ -92,7 +92,7 @@ public function addMoreSubmitForm(array &$form, FormStateInterface $form_state)
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     // Finish the workflow. Do not rebuild.
-    drupal_set_message(t('Form values: %values', array('%values' => var_export($form_state->getValues(), TRUE))));
+    drupal_set_message(t('Form values: %values', ['%values' => var_export($form_state->getValues(), TRUE)]));
   }
 
 }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestRedirectForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestRedirectForm.php
index c540fb7..4768acf 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestRedirectForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestRedirectForm.php
@@ -22,23 +22,23 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['redirection'] = array(
+    $form['redirection'] = [
       '#type' => 'checkbox',
       '#title' => t('Use redirection'),
-    );
-    $form['destination'] = array(
+    ];
+    $form['destination'] = [
       '#type' => 'textfield',
       '#title' => t('Redirect destination'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="redirection"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
-    $form['submit'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="redirection"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestRequiredAttributeForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestRequiredAttributeForm.php
index f11c3ca..b0aa1b0 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestRequiredAttributeForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestRequiredAttributeForm.php
@@ -21,17 +21,17 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    foreach (array('textfield', 'textarea', 'password') as $type) {
-      $form[$type] = array(
+    foreach (['textfield', 'textarea', 'password'] as $type) {
+      $form[$type] = [
         '#type' => $type,
         '#required' => TRUE,
         '#title' => $type,
-      );
+      ];
     }
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestResponseForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestResponseForm.php
index 47bc1b9..0ab3a0d 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestResponseForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestResponseForm.php
@@ -22,19 +22,19 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['content'] = array(
+    $form['content'] = [
       '#type' => 'textfield',
       '#title' => 'Content',
-    );
-    $form['status'] = array(
+    ];
+    $form['status'] = [
       '#type' => 'textfield',
       '#title' => 'Status',
       '#default_value' => 200,
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestSelectForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestSelectForm.php
index 76cdc1a..20242ec 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestSelectForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestSelectForm.php
@@ -22,100 +22,100 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $base = array(
+    $base = [
       '#type' => 'select',
-      '#options' => array('one' => 'one', 'two' => 'two', 'three' => 'three', 'four' => '<strong>four</strong>'),
-    );
+      '#options' => ['one' => 'one', 'two' => 'two', 'three' => 'three', 'four' => '<strong>four</strong>'],
+    ];
 
-    $form['select'] = $base + array(
+    $form['select'] = $base + [
       '#title' => '#default_value one',
       '#default_value' => 'one',
-    );
-    $form['select_required'] = $base + array(
+    ];
+    $form['select_required'] = $base + [
       '#title' => '#default_value one, #required',
       '#required' => TRUE,
       '#default_value' => 'one',
-    );
-    $form['select_optional'] = $base + array(
+    ];
+    $form['select_optional'] = $base + [
       '#title' => '#default_value one, not #required',
       '#required' => FALSE,
       '#default_value' => 'one',
-    );
-    $form['empty_value'] = $base + array(
+    ];
+    $form['empty_value'] = $base + [
       '#title' => '#default_value one, #required, #empty_value 0',
       '#required' => TRUE,
       '#default_value' => 'one',
       '#empty_value' => 0,
-    );
-    $form['empty_value_one'] = $base + array(
+    ];
+    $form['empty_value_one'] = $base + [
       '#title' => '#default_value = #empty_value, #required',
       '#required' => TRUE,
       '#default_value' => 'one',
       '#empty_value' => 'one',
-    );
+    ];
 
-    $form['no_default'] = $base + array(
+    $form['no_default'] = $base + [
       '#title' => 'No #default_value, #required',
       '#required' => TRUE,
-    );
-    $form['no_default_optional'] = $base + array(
+    ];
+    $form['no_default_optional'] = $base + [
       '#title' => 'No #default_value, not #required',
       '#required' => FALSE,
       '#description' => 'Should result in "one" because it is not required and there is no #empty_value requested, so default browser behavior of preselecting first option is in effect.',
-    );
-    $form['no_default_optional_empty_value'] = $base + array(
+    ];
+    $form['no_default_optional_empty_value'] = $base + [
       '#title' => 'No #default_value, not #required, #empty_value empty string',
       '#empty_value' => '',
       '#required' => FALSE,
       '#description' => 'Should result in an empty string (due to #empty_value) because it is optional.',
-    );
+    ];
 
-    $form['no_default_empty_option'] = $base + array(
+    $form['no_default_empty_option'] = $base + [
       '#title' => 'No #default_value, #required, #empty_option',
       '#required' => TRUE,
       '#empty_option' => '- Choose -',
-    );
-    $form['no_default_empty_option_optional'] = $base + array(
+    ];
+    $form['no_default_empty_option_optional'] = $base + [
       '#title' => 'No #default_value, not #required, #empty_option',
       '#empty_option' => '- Dismiss -',
       '#description' => 'Should result in an empty string (default of #empty_value) because it is optional.',
-    );
+    ];
 
-    $form['no_default_empty_value'] = $base + array(
+    $form['no_default_empty_value'] = $base + [
       '#title' => 'No #default_value, #required, #empty_value 0',
       '#required' => TRUE,
       '#empty_value' => 0,
       '#description' => 'Should never result in 0.',
-    );
-    $form['no_default_empty_value_one'] = $base + array(
+    ];
+    $form['no_default_empty_value_one'] = $base + [
       '#title' => 'No #default_value, #required, #empty_value one',
       '#required' => TRUE,
       '#empty_value' => 'one',
       '#description' => 'A mistakenly assigned #empty_value contained in #options should not be valid.',
-    );
-    $form['no_default_empty_value_optional'] = $base + array(
+    ];
+    $form['no_default_empty_value_optional'] = $base + [
       '#title' => 'No #default_value, not #required, #empty_value 0',
       '#required' => FALSE,
       '#empty_value' => 0,
       '#description' => 'Should result in 0 because it is optional.',
-    );
+    ];
 
-    $form['multiple'] = $base + array(
+    $form['multiple'] = $base + [
       '#title' => '#multiple, #default_value two',
-      '#default_value' => array('two'),
+      '#default_value' => ['two'],
       '#multiple' => TRUE,
-    );
-    $form['multiple_no_default'] = $base + array(
+    ];
+    $form['multiple_no_default'] = $base + [
       '#title' => '#multiple, no #default_value',
       '#multiple' => TRUE,
-    );
-    $form['multiple_no_default_required'] = $base + array(
+    ];
+    $form['multiple_no_default_required'] = $base + [
       '#title' => '#multiple, #required, no #default_value',
       '#required' => TRUE,
       '#multiple' => TRUE,
-    );
+    ];
 
-    $form['submit'] = array('#type' => 'submit', '#value' => 'Submit');
+    $form['submit'] = ['#type' => 'submit', '#value' => 'Submit'];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestStatePersistForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestStatePersistForm.php
index 2640805..e34af83 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestStatePersistForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestStatePersistForm.php
@@ -21,18 +21,18 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => 'title',
       '#default_value' => 'DEFAULT',
       '#required' => TRUE,
-    );
+    ];
     $form_state->set('value', 'State persisted.');
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
index 948c592..f9ae073 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestStorageForm.php
@@ -28,7 +28,7 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     if ($form_state->isRebuilding()) {
-      $form_state->setUserInput(array());
+      $form_state->setUserInput([]);
     }
     // Initialize
     $storage = $form_state->getStorage();
@@ -50,32 +50,32 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $_SESSION['constructions']++;
     drupal_set_message("Form constructions: " . $_SESSION['constructions']);
 
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => 'Title',
       '#default_value' => $storage['thing']['title'],
       '#required' => TRUE,
-    );
-    $form['value'] = array(
+    ];
+    $form['value'] = [
       '#type' => 'textfield',
       '#title' => 'Value',
       '#default_value' => $storage['thing']['value'],
-      '#element_validate' => array('::elementValidateValueCached'),
-    );
-    $form['continue_button'] = array(
+      '#element_validate' => ['::elementValidateValueCached'],
+    ];
+    $form['continue_button'] = [
       '#type' => 'button',
       '#value' => 'Reset',
       // Rebuilds the form without keeping the values.
-    );
-    $form['continue_submit'] = array(
+    ];
+    $form['continue_submit'] = [
       '#type' => 'submit',
       '#value' => 'Continue submit',
-      '#submit' => array('::continueSubmitForm'),
-    );
-    $form['submit'] = array(
+      '#submit' => ['::continueSubmitForm'],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
 
     // @todo Remove this in https://www.drupal.org/node/2524408, because form
     //   cache immutability is no longer necessary, because we no longer cache
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestStoragePageCacheForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestStoragePageCacheForm.php
index e7abbfd..adca384 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestStoragePageCacheForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestStoragePageCacheForm.php
@@ -18,30 +18,30 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => 'Title',
       '#required' => TRUE,
-    );
+    ];
 
-    $form['test_build_id_old'] = array(
+    $form['test_build_id_old'] = [
       '#type' => 'item',
       '#title' => 'Old build id',
       '#markup' => 'No old build id',
-    );
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
 
-    $form['rebuild'] = array(
+    $form['rebuild'] = [
       '#type' => 'submit',
       '#value' => 'Rebuild',
-      '#submit' => array(array($this, 'form_test_storage_page_cache_rebuild')),
-    );
+      '#submit' => [[$this, 'form_test_storage_page_cache_rebuild']],
+    ];
 
-    $form['#after_build'] = array(array($this, 'form_test_storage_page_cache_old_build_id'));
+    $form['#after_build'] = [[$this, 'form_test_storage_page_cache_old_build_id']];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectColspanForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectColspanForm.php
index bae573e..1c9628b 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectColspanForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectColspanForm.php
@@ -20,20 +20,20 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     list($header, $options) = _form_test_tableselect_get_data();
 
     // Change the data so that the third column has colspan=2.
-    $header['three'] = array('data' => 'Three', 'colspan' => 2);
+    $header['three'] = ['data' => 'Three', 'colspan' => 2];
     unset($header['four']);
     // Set the each row so that column 3 is an array.
     foreach ($options as $name => $row) {
-      $options[$name]['three'] = array($row['three'], $row['four']);
+      $options[$name]['three'] = [$row['three'], $row['four']];
       unset($options[$name]['four']);
     }
     // Combine cells in row 3.
-    $options['row3']['one'] = array('data' => $options['row3']['one'], 'colspan' => 2);
+    $options['row3']['one'] = ['data' => $options['row3']['one'], 'colspan' => 2];
     unset($options['row3']['two']);
-    $options['row3']['three'] = array('data' => $options['row3']['three'][0], 'colspan' => 2);
+    $options['row3']['three'] = ['data' => $options['row3']['three'][0], 'colspan' => 2];
     unset($options['row3']['four']);
 
-    return $this->tableselectFormBuilder($form, $form_state, array('#header' => $header, '#options' => $options));
+    return $this->tableselectFormBuilder($form, $form_state, ['#header' => $header, '#options' => $options]);
   }
 
   /**
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectEmptyForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectEmptyForm.php
index d7954f1..199a7d3 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectEmptyForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectEmptyForm.php
@@ -17,7 +17,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    return $this->tableselectFormBuilder($form, $form_state, array('#options' => array()));
+    return $this->tableselectFormBuilder($form, $form_state, ['#options' => []]);
   }
 
   /**
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectFormBase.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectFormBase.php
index 4431460..0a5bd62 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectFormBase.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectFormBase.php
@@ -28,7 +28,7 @@ function tableselectFormBuilder($form, FormStateInterface $form_state, $element_
 
     $form['tableselect'] = $element_properties;
 
-    $form['tableselect'] += array(
+    $form['tableselect'] += [
       '#prefix' => '<div id="tableselect-wrapper">',
       '#suffix' => '</div>',
       '#type' => 'tableselect',
@@ -36,16 +36,16 @@ function tableselectFormBuilder($form, FormStateInterface $form_state, $element_
       '#options' => $options,
       '#multiple' => FALSE,
       '#empty' => t('Empty text.'),
-      '#ajax' => array(
+      '#ajax' => [
         'callback' => 'form_test_tableselect_ajax_callback',
         'wrapper' => 'tableselect-wrapper',
-      ),
-    );
+      ],
+    ];
 
-    $form['submit'] = array(
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectJsSelectForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectJsSelectForm.php
index e548343..d6d606a 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectJsSelectForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectJsSelectForm.php
@@ -19,19 +19,19 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state, $test_action = NULL) {
     switch ($test_action) {
       case 'multiple-true-default':
-        $options = array('#multiple' => TRUE);
+        $options = ['#multiple' => TRUE];
         break;
 
       case 'multiple-false-default':
-        $options = array('#multiple' => FALSE);
+        $options = ['#multiple' => FALSE];
         break;
 
       case 'multiple-true-no-advanced-select':
-        $options = array('#multiple' => TRUE, '#js_select' => FALSE);
+        $options = ['#multiple' => TRUE, '#js_select' => FALSE];
         break;
 
       case 'multiple-false-advanced-select':
-        $options = array('#multiple' => FALSE, '#js_select' => TRUE);
+        $options = ['#multiple' => FALSE, '#js_select' => TRUE];
         break;
     }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleFalseForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleFalseForm.php
index 66fda87..f21ae3c 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleFalseForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleFalseForm.php
@@ -17,14 +17,14 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    return $this->tableselectFormBuilder($form, $form_state, array('#multiple' => FALSE));
+    return $this->tableselectFormBuilder($form, $form_state, ['#multiple' => FALSE]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    drupal_set_message(t('Submitted: @value', array('@value' => $form_state->getValue('tableselect'))));
+    drupal_set_message(t('Submitted: @value', ['@value' => $form_state->getValue('tableselect')]));
   }
 
 }
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleTrueForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleTrueForm.php
index 5d54b93..d4a0c1d 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleTrueForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestTableSelectMultipleTrueForm.php
@@ -17,7 +17,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    return $this->tableselectFormBuilder($form, $form_state, array('#multiple' => TRUE));
+    return $this->tableselectFormBuilder($form, $form_state, ['#multiple' => TRUE]);
   }
 
   /**
@@ -26,7 +26,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $selected = $form_state->getValue('tableselect');
     foreach ($selected as $key => $value) {
-      drupal_set_message(t('Submitted: @key = @value', array('@key' => $key, '@value' => $value)));
+      drupal_set_message(t('Submitted: @key = @value', ['@key' => $key, '@value' => $value]));
     }
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestUrlForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestUrlForm.php
index 88a6615..fff0e80 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestUrlForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestUrlForm.php
@@ -22,21 +22,21 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['url'] = array(
+    $form['url'] = [
       '#type' => 'url',
       '#title' => 'Optional URL',
       '#description' => 'An optional URL field.',
-    );
-    $form['url_required'] = array(
+    ];
+    $form['url_required'] = [
       '#type' => 'url',
       '#title' => 'Required URL',
       '#description' => 'A required URL field.',
       '#required' => TRUE,
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Submit',
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateForm.php
index d17dca4..41772da 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateForm.php
@@ -33,16 +33,16 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $object = new Callbacks();
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => 'Name',
       '#default_value' => '',
-      '#element_validate' => array(array($object, 'validateName')),
-    );
-    $form['submit'] = array(
+      '#element_validate' => [[$object, 'validateName']],
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
 
     return $form;
   }
@@ -57,7 +57,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
       // Alter the submitted value in $form_state.
       $form_state->setValueForElement($form['name'], 'value changed by setValueForElement() in #validate');
       // Output the element's value from $form_state.
-      drupal_set_message(t('@label value: @value', array('@label' => $form['name']['#title'], '@value' => $form_state->getValue('name'))));
+      drupal_set_message(t('@label value: @value', ['@label' => $form['name']['#title'], '@value' => $form_state->getValue('name')]));
 
       // Trigger a form validation error to see our changes.
       $form_state->setErrorByName('');
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredForm.php
index b5cf6ec..88e6b35 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredForm.php
@@ -21,50 +21,50 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $options = array('foo' => 'foo', 'bar' => 'bar');
-    $validate = array('::elementValidateRequired');
+    $options = ['foo' => 'foo', 'bar' => 'bar'];
+    $validate = ['::elementValidateRequired'];
 
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#type' => 'textfield',
       '#title' => 'Name',
       '#required' => TRUE,
       '#required_error' => t('Please enter a name.'),
-    );
-    $form['checkboxes'] = array(
+    ];
+    $form['checkboxes'] = [
       '#type' => 'checkboxes',
       '#title' => 'Checkboxes',
       '#options' => $options,
       '#required' => TRUE,
       '#form_test_required_error' => t('Please choose at least one option.'),
       '#element_validate' => $validate,
-    );
-    $form['select'] = array(
+    ];
+    $form['select'] = [
       '#type' => 'select',
       '#title' => 'Select',
       '#options' => $options,
       '#required' => TRUE,
       '#form_test_required_error' => t('Please select something.'),
       '#element_validate' => $validate,
-    );
-    $form['radios'] = array(
+    ];
+    $form['radios'] = [
       '#type' => 'radios',
       '#title' => 'Radios',
       '#options' => $options,
       '#required' => TRUE,
-    );
-    $form['radios_optional'] = array(
+    ];
+    $form['radios_optional'] = [
       '#type' => 'radios',
       '#title' => 'Radios (optional)',
       '#options' => $options,
-    );
-    $form['radios_optional_default_value_false'] = array(
+    ];
+    $form['radios_optional_default_value_false'] = [
       '#type' => 'radios',
       '#title' => 'Radios (optional, with a default value of FALSE)',
       '#options' => $options,
       '#default_value' => FALSE,
-    );
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array('#type' => 'submit', '#value' => 'Submit');
+    ];
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = ['#type' => 'submit', '#value' => 'Submit'];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredNoTitleForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredNoTitleForm.php
index 30bd76a..29b3b5f 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredNoTitleForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestValidateRequiredNoTitleForm.php
@@ -21,12 +21,12 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['textfield'] = array(
+    $form['textfield'] = [
       '#type' => 'textfield',
       '#required' => TRUE,
-    );
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array('#type' => 'submit', '#value' => 'Submit');
+    ];
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = ['#type' => 'submit', '#value' => 'Submit'];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsAccessForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsAccessForm.php
index bab4d19..cb171a6 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsAccessForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsAccessForm.php
@@ -18,81 +18,81 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['vertical_tabs1'] = array(
+    $form['vertical_tabs1'] = [
       '#type' => 'vertical_tabs',
-    );
-    $form['tab1'] = array(
+    ];
+    $form['tab1'] = [
       '#type' => 'fieldset',
       '#title' => t('Tab 1'),
       '#collapsible' => TRUE,
       '#group' => 'vertical_tabs1',
-    );
-    $form['tab1']['field1'] = array(
+    ];
+    $form['tab1']['field1'] = [
       '#title' => t('Field 1'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
-    $form['tab2'] = array(
+    ];
+    $form['tab2'] = [
       '#type' => 'fieldset',
       '#title' => t('Tab 2'),
       '#collapsible' => TRUE,
       '#group' => 'vertical_tabs1',
-    );
-    $form['tab2']['field2'] = array(
+    ];
+    $form['tab2']['field2'] = [
       '#title' => t('Field 2'),
       '#type' => 'textfield',
       '#default_value' => 'field2',
-    );
+    ];
 
-    $form['fieldset1'] = array(
+    $form['fieldset1'] = [
       '#type' => 'fieldset',
       '#title' => t('Fieldset'),
-    );
-    $form['fieldset1']['field3'] = array(
+    ];
+    $form['fieldset1']['field3'] = [
       '#type' => 'checkbox',
       '#title' => t('Field 3'),
       '#default_value' => TRUE,
-    );
+    ];
 
-    $form['container'] = array(
+    $form['container'] = [
       '#type' => 'container',
-    );
-    $form['container']['field4'] = array(
+    ];
+    $form['container']['field4'] = [
       '#type' => 'checkbox',
       '#title' => t('Field 4'),
       '#default_value' => TRUE,
-    );
-    $form['container']['subcontainer'] = array(
+    ];
+    $form['container']['subcontainer'] = [
       '#type' => 'container',
-    );
-    $form['container']['subcontainer']['field5'] = array(
+    ];
+    $form['container']['subcontainer']['field5'] = [
       '#type' => 'checkbox',
       '#title' => t('Field 5'),
       '#default_value' => TRUE,
-    );
+    ];
 
-    $form['vertical_tabs2'] = array(
+    $form['vertical_tabs2'] = [
       '#type' => 'vertical_tabs',
-    );
-    $form['tab3'] = array(
+    ];
+    $form['tab3'] = [
       '#type' => 'fieldset',
       '#title' => t('Tab 3'),
       '#collapsible' => TRUE,
       '#group' => 'vertical_tabs2',
-    );
-    $form['tab3']['field6'] = array(
+    ];
+    $form['tab3']['field6'] = [
       '#title' => t('Field 6'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
+    ];
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsForm.php b/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsForm.php
index 3457db8..b89636a 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/FormTestVerticalTabsForm.php
@@ -20,23 +20,23 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $tab_count = 3;
 
-    $form['vertical_tabs'] = array(
+    $form['vertical_tabs'] = [
       '#type' => 'vertical_tabs',
       '#default_tab' => 'edit-tab' . $tab_count,
-    );
+    ];
 
     for ($i = 1; $i <= $tab_count; $i++) {
-      $form['tab' . $i] = array(
+      $form['tab' . $i] = [
         '#type' => 'fieldset',
-        '#title' => t('Tab @num', array('@num' => $i)),
+        '#title' => t('Tab @num', ['@num' => $i]),
         '#group' => 'vertical_tabs',
         '#access' => \Drupal::currentUser()->hasPermission('access vertical_tab_test tabs'),
-      );
-      $form['tab' . $i]['field' . $i] = array(
-        '#title' => t('Field @num', array('@num' => $i)),
+      ];
+      $form['tab' . $i]['field' . $i] = [
+        '#title' => t('Field @num', ['@num' => $i]),
         '#type' => 'textfield',
 
-      );
+      ];
     }
 
     return $form;
diff --git a/core/modules/system/tests/modules/form_test/src/Form/RedirectBlockForm.php b/core/modules/system/tests/modules/form_test/src/Form/RedirectBlockForm.php
index 8963462..163ac22 100644
--- a/core/modules/system/tests/modules/form_test/src/Form/RedirectBlockForm.php
+++ b/core/modules/system/tests/modules/form_test/src/Form/RedirectBlockForm.php
@@ -23,8 +23,8 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array('#type' => 'submit', '#value' => $this->t('Submit'));
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = ['#type' => 'submit', '#value' => $this->t('Submit')];
 
     return $form;
   }
@@ -33,7 +33,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    $form_state->setRedirect('form_test.route1', array(), array('query' => array('test1' => 'test2')));
+    $form_state->setRedirect('form_test.route1', [], ['query' => ['test1' => 'test2']]);
   }
 
 }
diff --git a/core/modules/system/tests/modules/form_test/src/FormTestArgumentsObject.php b/core/modules/system/tests/modules/form_test/src/FormTestArgumentsObject.php
index 7bba8e0..7531ca8 100644
--- a/core/modules/system/tests/modules/form_test/src/FormTestArgumentsObject.php
+++ b/core/modules/system/tests/modules/form_test/src/FormTestArgumentsObject.php
@@ -28,19 +28,19 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, $arg = NULL) {
-    $form['element'] = array('#markup' => 'The FormTestArgumentsObject::buildForm() method was used for this form.');
+    $form['element'] = ['#markup' => 'The FormTestArgumentsObject::buildForm() method was used for this form.'];
 
-    $form['bananas'] = array(
+    $form['bananas'] = [
       '#type' => 'textfield',
       '#default_value' => $arg,
       '#title' => $this->t('Bananas'),
-    );
+    ];
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/FormTestAutocompleteForm.php b/core/modules/system/tests/modules/form_test/src/FormTestAutocompleteForm.php
index 5b2390c..019513d 100644
--- a/core/modules/system/tests/modules/form_test/src/FormTestAutocompleteForm.php
+++ b/core/modules/system/tests/modules/form_test/src/FormTestAutocompleteForm.php
@@ -21,17 +21,17 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['autocomplete_1'] = array(
+    $form['autocomplete_1'] = [
       '#type' => 'textfield',
       '#title' => 'Autocomplete 1',
       '#autocomplete_route_name' => 'form_test.autocomplete_1',
-    );
-    $form['autocomplete_2'] = array(
+    ];
+    $form['autocomplete_2'] = [
       '#type' => 'textfield',
       '#title' => 'Autocomplete 2',
       '#autocomplete_route_name' => 'form_test.autocomplete_2',
-      '#autocomplete_route_parameters' => array('param' => 'value'),
-    );
+      '#autocomplete_route_parameters' => ['param' => 'value'],
+    ];
 
     return $form;
   }
diff --git a/core/modules/system/tests/modules/form_test/src/FormTestControllerObject.php b/core/modules/system/tests/modules/form_test/src/FormTestControllerObject.php
index 826bf2c..7573253 100644
--- a/core/modules/system/tests/modules/form_test/src/FormTestControllerObject.php
+++ b/core/modules/system/tests/modules/form_test/src/FormTestControllerObject.php
@@ -40,21 +40,21 @@ public static function create(ContainerInterface $container) {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state, Request $request = NULL, $custom_attributes = NULL) {
-    $form['element'] = array('#markup' => 'The FormTestControllerObject::buildForm() method was used for this form.');
+    $form['element'] = ['#markup' => 'The FormTestControllerObject::buildForm() method was used for this form.'];
 
     $form['custom_attribute']['#markup'] = $custom_attributes;
     $form['request_attribute']['#markup'] = $request->attributes->get('request_attribute');
 
-    $form['bananas'] = array(
+    $form['bananas'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Bananas'),
-    );
+    ];
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/form_test/src/FormTestObject.php b/core/modules/system/tests/modules/form_test/src/FormTestObject.php
index e649030..f99fbe7 100644
--- a/core/modules/system/tests/modules/form_test/src/FormTestObject.php
+++ b/core/modules/system/tests/modules/form_test/src/FormTestObject.php
@@ -28,12 +28,12 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['element'] = array('#markup' => 'The FormTestObject::buildForm() method was used for this form.');
+    $form['element'] = ['#markup' => 'The FormTestObject::buildForm() method was used for this form.'];
 
-    $form['bananas'] = array(
+    $form['bananas'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Bananas'),
-    );
+    ];
     $form['strawberry'] = [
       '#type' => 'hidden',
       '#value' => 'red',
@@ -41,10 +41,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     ];
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
-    );
+    ];
 
     $form['#title'] = 'Test dynamic title';
 
diff --git a/core/modules/system/tests/modules/form_test/src/FormTestServiceObject.php b/core/modules/system/tests/modules/form_test/src/FormTestServiceObject.php
index 10ad61b..effd319 100644
--- a/core/modules/system/tests/modules/form_test/src/FormTestServiceObject.php
+++ b/core/modules/system/tests/modules/form_test/src/FormTestServiceObject.php
@@ -28,19 +28,19 @@ protected function getEditableConfigNames() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['element'] = array('#markup' => 'The FormTestServiceObject::buildForm() method was used for this form.');
+    $form['element'] = ['#markup' => 'The FormTestServiceObject::buildForm() method was used for this form.'];
 
-    $form['bananas'] = array(
+    $form['bananas'] = [
       '#type' => 'textfield',
       '#default_value' => 'brown',
       '#title' => $this->t('Bananas'),
-    );
+    ];
 
     $form['actions']['#type'] = 'actions';
-    $form['actions']['submit'] = array(
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/Operation/test/OperationBase.php b/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/Operation/test/OperationBase.php
index 6ac9532..e978f2a 100644
--- a/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/Operation/test/OperationBase.php
+++ b/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/Operation/test/OperationBase.php
@@ -13,7 +13,7 @@
    * {@inheritdoc}
    */
   public function arguments() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/TestToolkit.php b/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/TestToolkit.php
index 9766d09..a28c786 100644
--- a/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/TestToolkit.php
+++ b/core/modules/system/tests/modules/image_test/src/Plugin/ImageToolkit/TestToolkit.php
@@ -92,14 +92,14 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     $this->logCall('settings', func_get_args());
-    $form['test_parameter'] = array(
+    $form['test_parameter'] = [
       '#type' => 'number',
       '#title' => $this->t('Test toolkit parameter'),
       '#description' => $this->t('A toolkit parameter for testing purposes.'),
       '#min' => 0,
       '#max' => 100,
       '#default_value' => $this->configFactory->getEditable('system.image.test_toolkit')->get('test_parameter', FALSE),
-    );
+    ];
     return $form;
   }
 
@@ -117,7 +117,7 @@ public function validateConfigurationForm(array &$form, FormStateInterface $form
    */
   public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
     $this->configFactory->getEditable('system.image.test_toolkit')
-      ->set('test_parameter', $form_state->getValue(array('test', 'test_parameter')))
+      ->set('test_parameter', $form_state->getValue(['test', 'test_parameter']))
       ->save();
   }
 
@@ -165,7 +165,7 @@ public function save($destination) {
    * @see \Drupal\system\Tests\Image\ToolkitTestBase::imageTestGetAllCalls()
    */
   protected function logCall($op, $args) {
-    $results = $this->state->get('image_test.results') ?: array();
+    $results = $this->state->get('image_test.results') ?: [];
     $results[$op][] = $args;
     // A call to apply is also logged under its operation name whereby the
     // array of arguments are logged as separate arguments, this because at the
@@ -236,7 +236,7 @@ public static function isAvailable() {
    * {@inheritdoc}
    */
   public static function getSupportedExtensions() {
-    $extensions = array();
+    $extensions = [];
     foreach (static::supportedTypes() as $image_type) {
       $extensions[] = Unicode::strtolower(image_type_to_extension($image_type, FALSE));
     }
@@ -251,13 +251,13 @@ public static function getSupportedExtensions() {
    *   IMAGETYPE_* constant (e.g. IMAGETYPE_JPEG, IMAGETYPE_PNG, etc.).
    */
   protected static function supportedTypes() {
-    return array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF);
+    return [IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function apply($operation, array $arguments = array()) {
+  public function apply($operation, array $arguments = []) {
     $this->logCall('apply', func_get_args());
     return TRUE;
   }
diff --git a/core/modules/system/tests/modules/keyvalue_test/keyvalue_test.module b/core/modules/system/tests/modules/keyvalue_test/keyvalue_test.module
index ed05996..1e7da67 100644
--- a/core/modules/system/tests/modules/keyvalue_test/keyvalue_test.module
+++ b/core/modules/system/tests/modules/keyvalue_test/keyvalue_test.module
@@ -13,6 +13,6 @@ function keyvalue_test_entity_type_alter(array &$entity_types) {
   if (isset($entity_types['entity_test_label'])) {
     $entity_types['entity_test_label']->setStorageClass('Drupal\Core\Entity\KeyValueStore\KeyValueContentEntityStorage');
     $entity_keys = $entity_types['entity_test_label']->getKeys();
-    $entity_types['entity_test_label']->set('entity_keys', $entity_keys + array('uuid' => 'uuid'));
+    $entity_types['entity_test_label']->set('entity_keys', $entity_keys + ['uuid' => 'uuid']);
   }
 }
diff --git a/core/modules/system/tests/modules/menu_test/menu_test.module b/core/modules/system/tests/modules/menu_test/menu_test.module
index f891fce..79b4dae 100644
--- a/core/modules/system/tests/modules/menu_test/menu_test.module
+++ b/core/modules/system/tests/modules/menu_test/menu_test.module
@@ -19,35 +19,35 @@ function menu_test_menu_links_discovered_alter(&$links) {
   $links['menu_test.context']['title'] = \Drupal::config('menu_test.menu_item')->get('title');
 
   // Adds a custom menu link.
-  $links['menu_test.custom'] = array(
+  $links['menu_test.custom'] = [
     'title' => 'Custom link',
     'route_name' => 'menu_test.custom',
     'description' => 'Custom link used to check the integrity of manually added menu links.',
     'parent' => 'menu_test',
-  );
+  ];
 }
 
 /**
  * Implements hook_menu_local_tasks_alter().
  */
 function menu_test_menu_local_tasks_alter(&$data, $route_name, RefinableCacheableDependencyInterface &$cacheability) {
-  if (in_array($route_name, array('menu_test.tasks_default'))) {
-    $data['tabs'][0]['foo'] = array(
+  if (in_array($route_name, ['menu_test.tasks_default'])) {
+    $data['tabs'][0]['foo'] = [
       '#theme' => 'menu_local_task',
-      '#link' => array(
+      '#link' => [
         'title' => "Task 1 <script>alert('Welcome to the jungle!')</script>",
-        'url' => Url::fromRoute('menu_test.router_test1', array('bar' => '1')),
-      ),
+        'url' => Url::fromRoute('menu_test.router_test1', ['bar' => '1']),
+      ],
       '#weight' => 10,
-    );
-    $data['tabs'][0]['bar'] = array(
+    ];
+    $data['tabs'][0]['bar'] = [
       '#theme' => 'menu_local_task',
-      '#link' => array(
+      '#link' => [
         'title' => 'Task 2',
-        'url' => Url::fromRoute('menu_test.router_test2', array('bar' => '2')),
-      ),
+        'url' => Url::fromRoute('menu_test.router_test2', ['bar' => '2']),
+      ],
       '#weight' => 20,
-    );
+    ];
   }
   $cacheability->addCacheTags(['kittens:dwarf-cat']);
 }
diff --git a/core/modules/system/tests/modules/menu_test/src/Controller/MenuTestController.php b/core/modules/system/tests/modules/menu_test/src/Controller/MenuTestController.php
index c083269..fe6566c 100644
--- a/core/modules/system/tests/modules/menu_test/src/Controller/MenuTestController.php
+++ b/core/modules/system/tests/modules/menu_test/src/Controller/MenuTestController.php
@@ -83,8 +83,8 @@ public function menuTestCallback() {
    * @return string
    *   The route title.
    */
-  public function titleCallback(array $_title_arguments = array(), $_title = '') {
-    $_title_arguments += array('case_number' => '2', 'title' => $_title);
+  public function titleCallback(array $_title_arguments = [], $_title = '') {
+    $_title_arguments += ['case_number' => '2', 'title' => $_title];
     return t($_title_arguments['title']) . ' - Case ' . $_title_arguments['case_number'];
   }
 
diff --git a/core/modules/system/tests/modules/menu_test/src/Plugin/Derivative/LocalTaskTest.php b/core/modules/system/tests/modules/menu_test/src/Plugin/Derivative/LocalTaskTest.php
index 10c0810..decfd36 100644
--- a/core/modules/system/tests/modules/menu_test/src/Plugin/Derivative/LocalTaskTest.php
+++ b/core/modules/system/tests/modules/menu_test/src/Plugin/Derivative/LocalTaskTest.php
@@ -11,10 +11,10 @@ class LocalTaskTest extends DeriverBase {
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
     $weight = $base_plugin_definition['weight'];
-    foreach (array('derive1' => 'Derive 1', 'derive2' => 'Derive 2') as $key => $title) {
+    foreach (['derive1' => 'Derive 1', 'derive2' => 'Derive 2'] as $key => $title) {
       $this->derivatives[$key] = $base_plugin_definition;
       $this->derivatives[$key]['title'] = $title;
-      $this->derivatives[$key]['route_parameters'] = array('placeholder' => $key);
+      $this->derivatives[$key]['route_parameters'] = ['placeholder' => $key];
       $this->derivatives[$key]['weight'] = $weight++; // ensure weights for testing.
     }
     return $this->derivatives;
diff --git a/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalAction/TestLocalAction4.php b/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalAction/TestLocalAction4.php
index efd7579..1f8300a 100644
--- a/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalAction/TestLocalAction4.php
+++ b/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalAction/TestLocalAction4.php
@@ -16,7 +16,7 @@ class TestLocalAction4 extends LocalActionDefault {
    * {@inheritdoc}
    */
   public function getTitle() {
-    return $this->t('My @arg action', array('@arg' => 'dynamic-title'));
+    return $this->t('My @arg action', ['@arg' => 'dynamic-title']);
   }
 
 }
diff --git a/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalTask/TestTasksSettingsSub1.php b/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalTask/TestTasksSettingsSub1.php
index 72ef717..cadaa9a 100644
--- a/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalTask/TestTasksSettingsSub1.php
+++ b/core/modules/system/tests/modules/menu_test/src/Plugin/Menu/LocalTask/TestTasksSettingsSub1.php
@@ -13,7 +13,7 @@ class TestTasksSettingsSub1 extends LocalTaskDefault {
    * {@inheritdoc}
    */
   function getTitle() {
-    return $this->t('Dynamic title for @class', array('@class' => 'TestTasksSettingsSub1'));
+    return $this->t('Dynamic title for @class', ['@class' => 'TestTasksSettingsSub1']);
   }
 
   /**
diff --git a/core/modules/system/tests/modules/menu_test/src/TestControllers.php b/core/modules/system/tests/modules/menu_test/src/TestControllers.php
index 9ed7851..31fb341 100644
--- a/core/modules/system/tests/modules/menu_test/src/TestControllers.php
+++ b/core/modules/system/tests/modules/menu_test/src/TestControllers.php
@@ -59,7 +59,7 @@ public function testDerived() {
    */
   public function testDefaults($placeholder = NULL) {
     if ($placeholder) {
-      return ['#markup' => SafeMarkup::format("Sometimes there is a placeholder: '@placeholder'.", array('@placeholder' => $placeholder))];
+      return ['#markup' => SafeMarkup::format("Sometimes there is a placeholder: '@placeholder'.", ['@placeholder' => $placeholder])];
     }
     else {
       return ['#markup' => 'Sometimes there is no placeholder.'];
diff --git a/core/modules/system/tests/modules/module_test/module_test.file.inc b/core/modules/system/tests/modules/module_test/module_test.file.inc
index 0842944..b40e0f3 100644
--- a/core/modules/system/tests/modules/module_test/module_test.file.inc
+++ b/core/modules/system/tests/modules/module_test/module_test.file.inc
@@ -9,5 +9,5 @@
  * Implements hook_test_hook().
  */
 function module_test_test_hook() {
-  return array('module_test' => 'success!');
+  return ['module_test' => 'success!'];
 }
diff --git a/core/modules/system/tests/modules/module_test/module_test.install b/core/modules/system/tests/modules/module_test/module_test.install
index e90fc57..5f3f6f6 100644
--- a/core/modules/system/tests/modules/module_test/module_test.install
+++ b/core/modules/system/tests/modules/module_test/module_test.install
@@ -9,18 +9,18 @@
  * Implements hook_schema().
  */
 function module_test_schema() {
-  $schema['module_test'] = array(
+  $schema['module_test'] = [
     'description' => 'Dummy table to test the behavior of hook_schema() during module installation.',
-    'fields' => array(
-      'data' => array(
+    'fields' => [
+      'data' => [
         'type' => 'varchar',
         'length' => 255,
         'not null' => TRUE,
         'default' => '',
         'description' => 'An example data column for the module.',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
   return $schema;
 }
 
@@ -30,8 +30,8 @@ function module_test_schema() {
 function module_test_install() {
   $schema = drupal_get_module_schema('module_test', 'module_test');
   db_insert('module_test')
-    ->fields(array(
+    ->fields([
       'data' => $schema['fields']['data']['type'],
-    ))
+    ])
     ->execute();
 }
diff --git a/core/modules/system/tests/modules/module_test/module_test.module b/core/modules/system/tests/modules/module_test/module_test.module
index 9c5cd9a..dba4889 100644
--- a/core/modules/system/tests/modules/module_test/module_test.module
+++ b/core/modules/system/tests/modules/module_test/module_test.module
@@ -60,9 +60,9 @@ function module_test_system_info_alter(&$info, Extension $file, $type) {
  * Implements hook_hook_info().
  */
 function module_test_hook_info() {
-  $hooks['test_hook'] = array(
+  $hooks['test_hook'] = [
     'group' => 'file',
-  );
+  ];
   return $hooks;
 }
 
diff --git a/core/modules/system/tests/modules/pager_test/src/Controller/PagerTestController.php b/core/modules/system/tests/modules/pager_test/src/Controller/PagerTestController.php
index 39144c6..1964f74 100644
--- a/core/modules/system/tests/modules/pager_test/src/Controller/PagerTestController.php
+++ b/core/modules/system/tests/modules/pager_test/src/Controller/PagerTestController.php
@@ -28,7 +28,7 @@ protected function buildTestTable($element, $limit) {
     ];
     $query = db_select('watchdog', 'd')->extend('Drupal\Core\Database\Query\PagerSelectExtender')->element($element);
     $result = $query
-      ->fields('d', array('wid', 'type', 'timestamp'))
+      ->fields('d', ['wid', 'type', 'timestamp'])
       ->limit($limit)
       ->orderBy('d.wid')
       ->execute();
@@ -58,19 +58,19 @@ public function queryParameters() {
     // Counter of calls to the current pager.
     $query_params = pager_get_query_parameters();
     $pager_calls = isset($query_params['pager_calls']) ? ($query_params['pager_calls'] ? $query_params['pager_calls'] : 0) : 0;
-    $build['l_pager_pager_0'] = array('#markup' => $this->t('Pager calls: @pager_calls', array('@pager_calls' => $pager_calls)));
+    $build['l_pager_pager_0'] = ['#markup' => $this->t('Pager calls: @pager_calls', ['@pager_calls' => $pager_calls])];
 
     // Pager.
-    $build['pager_pager_0'] = array(
+    $build['pager_pager_0'] = [
       '#type' => 'pager',
       '#element' => 0,
-      '#parameters' => array(
+      '#parameters' => [
         'pager_calls' => ++$pager_calls,
-      ),
+      ],
       '#pre_render' => [
         'Drupal\pager_test\Controller\PagerTestController::showPagerCacheContext',
       ]
-    );
+    ];
 
     return $build;
   }
@@ -82,34 +82,34 @@ public function multiplePagers() {
 
     // Build three tables with same query and different pagers.
     $build['pager_table_0'] = $this->buildTestTable(0, 20);
-    $build['pager_pager_0'] = array(
+    $build['pager_pager_0'] = [
       '#type' => 'container',
       '#attributes' => ['class' => ['test-pager-0']],
       'pager' => [
         '#type' => 'pager',
         '#element' => 0,
       ],
-    );
+    ];
 
     $build['pager_table_1'] = $this->buildTestTable(1, 20);
-    $build['pager_pager_1'] = array(
+    $build['pager_pager_1'] = [
       '#type' => 'container',
       '#attributes' => ['class' => ['test-pager-1']],
       'pager' => [
         '#type' => 'pager',
         '#element' => 1,
       ],
-    );
+    ];
 
     $build['pager_table_4'] = $this->buildTestTable(4, 20);
-    $build['pager_pager_4'] = array(
+    $build['pager_pager_4'] = [
       '#type' => 'container',
       '#attributes' => ['class' => ['test-pager-4']],
       'pager' => [
         '#type' => 'pager',
         '#element' => 4,
       ],
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/system/tests/modules/path_test/path_test.module b/core/modules/system/tests/modules/path_test/path_test.module
index df03931..32489c0 100644
--- a/core/modules/system/tests/modules/path_test/path_test.module
+++ b/core/modules/system/tests/modules/path_test/path_test.module
@@ -9,14 +9,14 @@
  * Resets the path test results.
  */
 function path_test_reset() {
-  \Drupal::state()->set('path_test.results', array());
+  \Drupal::state()->set('path_test.results', []);
 }
 
 /**
  * Implements hook_path_update().
  */
 function path_test_path_update($path) {
-  $results = \Drupal::state()->get('path_test.results') ?: array();
+  $results = \Drupal::state()->get('path_test.results') ?: [];
   $results['hook_path_update'] = $path;
   \Drupal::state()->set('path_test.results', $results);
 }
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/Annotation/PluginExample.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/Annotation/PluginExample.php
index daca83b..b80460d 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/Annotation/PluginExample.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/Annotation/PluginExample.php
@@ -29,12 +29,12 @@ class PluginExample extends AnnotationBase {
    * {@inheritdoc}
    */
   public function get() {
-    return array(
+    return [
       'id' => $this->id,
       'custom' => $this->custom,
       'class' => $this->class,
       'provider' => $this->provider,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/DefaultsTestPluginManager.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/DefaultsTestPluginManager.php
index eda8f88..65d7078 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/DefaultsTestPluginManager.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/DefaultsTestPluginManager.php
@@ -28,27 +28,27 @@ public function __construct(ModuleHandlerInterface $module_handler) {
     $this->moduleHandler = $module_handler;
 
     // Specify default values.
-    $this->defaults = array(
-      'metadata' => array(
+    $this->defaults = [
+      'metadata' => [
         'default' => TRUE,
-      ),
-    );
+      ],
+    ];
 
     // Add a plugin with a custom value.
-    $this->discovery->setDefinition('test_block1', array(
+    $this->discovery->setDefinition('test_block1', [
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockTestBlock',
-      'metadata' => array(
+      'metadata' => [
         'custom' => TRUE,
-      ),
-    ));
+      ],
+    ]);
     // Add a plugin that overrides the default value.
-    $this->discovery->setDefinition('test_block2', array(
+    $this->discovery->setDefinition('test_block2', [
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockTestBlock',
-      'metadata' => array(
+      'metadata' => [
         'custom' => TRUE,
         'default' => FALSE,
-      ),
-    ));
+      ],
+    ]);
   }
 
 }
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/MockBlockManager.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/MockBlockManager.php
index db4a052..8748a7b 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/MockBlockManager.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/MockBlockManager.php
@@ -34,11 +34,11 @@ public function __construct() {
     // plugins to the system.
 
     // A simple plugin: the user login block.
-    $this->discovery->setDefinition('user_login', array(
+    $this->discovery->setDefinition('user_login', [
       'id' => 'user_login',
       'label' => t('User login'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockUserLoginBlock',
-    ));
+    ]);
 
     // A plugin that requires derivatives: the menu block plugin. We do not want
     // a generic "Menu" block showing up in the Block administration UI.
@@ -46,17 +46,17 @@ public function __construct() {
     // system and each one's title is user configurable. The
     // MockMenuBlockDeriver class ensures that only derivatives, and not the
     // base plugin, are available to the system.
-    $this->discovery->setDefinition('menu', array(
+    $this->discovery->setDefinition('menu', [
       'id' => 'menu',
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockMenuBlock',
       'deriver' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockMenuBlockDeriver',
-    ));
+    ]);
     // A plugin defining itself as a derivative.
-    $this->discovery->setDefinition('menu:foo', array(
+    $this->discovery->setDefinition('menu:foo', [
       'id' => 'menu',
       'label' => t('Base label'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockMenuBlock',
-    ));
+    ]);
 
     // A block plugin that can optionally be derived: the layout block plugin.
     // A layout is a special kind of block into which other blocks can be
@@ -64,51 +64,51 @@ public function __construct() {
     // administration UI as well as additional user-created custom layouts. The
     // MockLayoutBlockDeriver class ensures that both the base plugin and the
     // derivatives are available to the system.
-    $this->discovery->setDefinition('layout', array(
+    $this->discovery->setDefinition('layout', [
       'id' => 'layout',
       'label' => t('Layout'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockLayoutBlock',
       'deriver' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockLayoutBlockDeriver',
-    ));
+    ]);
 
     // A block plugin that requires context to function. This block requires a
     // user object in order to return the user name from the getTitle() method.
-    $this->discovery->setDefinition('user_name', array(
+    $this->discovery->setDefinition('user_name', [
       'id' => 'user_name',
       'label' => t('User name'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockUserNameBlock',
-      'context' => array(
+      'context' => [
         'user' => $this->createContextDefinition('entity:user', t('User')),
-      ),
-    ));
+      ],
+    ]);
 
     // An optional context version of the previous block plugin.
-    $this->discovery->setDefinition('user_name_optional', array(
+    $this->discovery->setDefinition('user_name_optional', [
       'id' => 'user_name_optional',
       'label' => t('User name optional'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockUserNameBlock',
-      'context' => array(
+      'context' => [
         'user' => $this->createContextDefinition('entity:user', t('User'), FALSE),
-      ),
-    ));
+      ],
+    ]);
 
     // A block plugin that requires a typed data string context to function.
-    $this->discovery->setDefinition('string_context', array(
+    $this->discovery->setDefinition('string_context', [
       'id' => 'string_context',
       'label' => t('String typed data'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\TypedDataStringBlock',
-    ));
+    ]);
 
     // A complex context plugin that requires both a user and node for context.
-    $this->discovery->setDefinition('complex_context', array(
+    $this->discovery->setDefinition('complex_context', [
       'id' => 'complex_context',
       'label' => t('Complex context'),
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockComplexContextBlock',
-      'context' => array(
+      'context' => [
         'user' => $this->createContextDefinition('entity:user', t('User')),
         'node' => $this->createContextDefinition('entity:node', t('Node')),
-      ),
-    ));
+      ],
+    ]);
 
     // In addition to finding all of the plugins available for a type, a plugin
     // type must also be able to create instances of that plugin. For example, a
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/TestLazyPluginCollection.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/TestLazyPluginCollection.php
index dd426e4..1009faa 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/TestLazyPluginCollection.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/TestLazyPluginCollection.php
@@ -34,14 +34,14 @@ public function __construct(PluginManagerInterface $manager) {
    * {@inheritdoc}
    */
   protected function initializePlugin($instance_id) {
-    $this->pluginInstances[$instance_id] = $this->manager->createInstance($instance_id, array());
+    $this->pluginInstances[$instance_id] = $this->manager->createInstance($instance_id, []);
   }
 
   /**
    * {@inheritdoc}
    */
   public function getConfiguration() {
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/TestPluginManager.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/TestPluginManager.php
index 60e74d8..ec464a5 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/TestPluginManager.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/TestPluginManager.php
@@ -19,10 +19,10 @@ public function __construct() {
     $this->discovery = new StaticDiscovery();
 
     // A simple plugin: a mock user login block.
-    $this->discovery->setDefinition('user_login', array(
+    $this->discovery->setDefinition('user_login', [
       'label' => 'User login',
       'class' => 'Drupal\plugin_test\Plugin\plugin_test\mock_block\MockUserLoginBlock',
-    ));
+    ]);
 
     // In addition to finding all of the plugins available for a type, a plugin
     // type must also be able to create instances of that plugin. For example, a
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockLayoutBlockDeriver.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockLayoutBlockDeriver.php
index d2fa3a4..93fca53 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockLayoutBlockDeriver.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockLayoutBlockDeriver.php
@@ -31,7 +31,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     // key from the returned definitions.
     unset($base_plugin_definition['deriver']);
 
-    $derivatives = array(
+    $derivatives = [
       // Adding a NULL key signifies that the base plugin may also be used in
       // addition to the derivatives. In this case, we allow the administrator
       // to add a generic layout block to the page.
@@ -40,10 +40,10 @@ public function getDerivativeDefinitions($base_plugin_definition) {
       // We also allow them to add a customized one. Here, we just mock the
       // customized one, but in a real implementation, this would be fetched
       // from some \Drupal::config() object.
-      'foo' => array(
+      'foo' => [
         'label' => t('Layout Foo'),
-      ) + $base_plugin_definition,
-    );
+      ] + $base_plugin_definition,
+    ];
 
     return $derivatives;
   }
diff --git a/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockMenuBlockDeriver.php b/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockMenuBlockDeriver.php
index 413eb13..d5f6d6c 100644
--- a/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockMenuBlockDeriver.php
+++ b/core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockMenuBlockDeriver.php
@@ -34,20 +34,20 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     // Here, we create some mock menu block definitions for menus that might
     // exist in a typical Drupal site. In a real implementation, we would query
     // Drupal's configuration to find out which menus actually exist.
-    $derivatives = array(
-      'main_menu' => array(
+    $derivatives = [
+      'main_menu' => [
         'label' => t('Main menu'),
-      ) + $base_plugin_definition,
-      'navigation' => array(
+      ] + $base_plugin_definition,
+      'navigation' => [
         'label' => t('Navigation'),
-      ) + $base_plugin_definition,
-      'foo' => array(
+      ] + $base_plugin_definition,
+      'foo' => [
         // Instead of the derivative label, the specific label will be used.
         'label' => t('Derivative label'),
         // This setting will be merged in.
          'setting' => 'default'
-      ) + $base_plugin_definition,
-    );
+      ] + $base_plugin_definition,
+    ];
 
     return $derivatives;
   }
diff --git a/core/modules/system/tests/modules/requirements1_test/requirements1_test.install b/core/modules/system/tests/modules/requirements1_test/requirements1_test.install
index c884893..e812161 100644
--- a/core/modules/system/tests/modules/requirements1_test/requirements1_test.install
+++ b/core/modules/system/tests/modules/requirements1_test/requirements1_test.install
@@ -9,15 +9,15 @@
  * Implements hook_requirements().
  */
 function requirements1_test_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   // Always fails requirements.
   if ('install' == $phase) {
-    $requirements['requirements1_test'] = array(
+    $requirements['requirements1_test'] = [
       'title' => t('Requirements 1 Test'),
       'severity' => REQUIREMENT_ERROR,
       'description' => t('Requirements 1 Test failed requirements.'),
-    );
+    ];
   }
 
   return $requirements;
diff --git a/core/modules/system/tests/modules/router_test_directory/src/RouterTestServiceProvider.php b/core/modules/system/tests/modules/router_test_directory/src/RouterTestServiceProvider.php
index 7635704..5430e8d 100644
--- a/core/modules/system/tests/modules/router_test_directory/src/RouterTestServiceProvider.php
+++ b/core/modules/system/tests/modules/router_test_directory/src/RouterTestServiceProvider.php
@@ -16,7 +16,7 @@ class RouterTestServiceProvider implements ServiceProviderInterface {
   public function register(ContainerBuilder $container) {
     $container->register('router_test.subscriber', 'Drupal\router_test\RouteTestSubscriber')->addTag('event_subscriber');
     $container->register('access_check.router_test', 'Drupal\router_test\Access\TestAccessCheck')
-      ->addTag('access_check', array('applies_to' => '_access_router_test'));
+      ->addTag('access_check', ['applies_to' => '_access_router_test']);
   }
 
 }
diff --git a/core/modules/system/tests/modules/router_test_directory/src/TestContent.php b/core/modules/system/tests/modules/router_test_directory/src/TestContent.php
index 9cbe023..f392a81 100644
--- a/core/modules/system/tests/modules/router_test_directory/src/TestContent.php
+++ b/core/modules/system/tests/modules/router_test_directory/src/TestContent.php
@@ -63,7 +63,7 @@ public function testAccount(UserInterface $user) {
    */
   public function subrequestTest(UserInterface $user) {
     $request = \Drupal::request();
-    $request = Request::create('/router_test/test13/' . $user->id(), 'GET', $request->query->all(), $request->cookies->all(), array(), $request->server->all());
+    $request = Request::create('/router_test/test13/' . $user->id(), 'GET', $request->query->all(), $request->cookies->all(), [], $request->server->all());
 
     return $this->httpKernel->handle($request, HttpKernelInterface::SUB_REQUEST);
   }
diff --git a/core/modules/system/tests/modules/service_provider_test/src/TestClass.php b/core/modules/system/tests/modules/service_provider_test/src/TestClass.php
index 9a87c97..542239f 100644
--- a/core/modules/system/tests/modules/service_provider_test/src/TestClass.php
+++ b/core/modules/system/tests/modules/service_provider_test/src/TestClass.php
@@ -58,8 +58,8 @@ public function onKernelResponseTest(FilterResponseEvent $event) {
    *   An array of event listener definitions.
    */
   static function getSubscribedEvents() {
-    $events[KernelEvents::REQUEST][] = array('onKernelRequestTest');
-    $events[KernelEvents::RESPONSE][] = array('onKernelResponseTest');
+    $events[KernelEvents::REQUEST][] = ['onKernelRequestTest'];
+    $events[KernelEvents::RESPONSE][] = ['onKernelResponseTest'];
     return $events;
   }
 
diff --git a/core/modules/system/tests/modules/session_test/src/Controller/SessionTestController.php b/core/modules/system/tests/modules/session_test/src/Controller/SessionTestController.php
index edde4fd..76a5462 100644
--- a/core/modules/system/tests/modules/session_test/src/Controller/SessionTestController.php
+++ b/core/modules/system/tests/modules/session_test/src/Controller/SessionTestController.php
@@ -21,7 +21,7 @@ class SessionTestController extends ControllerBase {
   public function get() {
     return empty($_SESSION['session_test_value'])
       ? []
-      : ['#markup' => $this->t('The current value of the stored session variable is: %val', array('%val' => $_SESSION['session_test_value']))];
+      : ['#markup' => $this->t('The current value of the stored session variable is: %val', ['%val' => $_SESSION['session_test_value']])];
   }
 
   /**
@@ -37,7 +37,7 @@ public function getFromSessionObject(Request $request) {
     $value = $request->getSession()->get("session_test_key");
     return empty($value)
       ? []
-      : ['#markup' => $this->t('The current value of the stored session variable is: %val', array('%val' => $value))];
+      : ['#markup' => $this->t('The current value of the stored session variable is: %val', ['%val' => $value])];
   }
 
   /**
@@ -84,7 +84,7 @@ public function getIdFromCookie(Request $request) {
   public function set($test_value) {
     $_SESSION['session_test_value'] = $test_value;
 
-    return ['#markup' => $this->t('The current value of the stored session variable has been set to %val', array('%val' => $test_value))];
+    return ['#markup' => $this->t('The current value of the stored session variable has been set to %val', ['%val' => $test_value])];
   }
 
   /**
@@ -100,7 +100,7 @@ public function set($test_value) {
   public function noSet($test_value) {
     \Drupal::service('session_handler.write_safe')->setSessionWritable(FALSE);
     $this->set($test_value);
-    return ['#markup' => $this->t('session saving was disabled, and then %val was set', array('%val' => $test_value))];
+    return ['#markup' => $this->t('session saving was disabled, and then %val was set', ['%val' => $test_value])];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/session_test/src/EventSubscriber/SessionTestSubscriber.php b/core/modules/system/tests/modules/session_test/src/EventSubscriber/SessionTestSubscriber.php
index ee03668..47c8c5b 100644
--- a/core/modules/system/tests/modules/session_test/src/EventSubscriber/SessionTestSubscriber.php
+++ b/core/modules/system/tests/modules/session_test/src/EventSubscriber/SessionTestSubscriber.php
@@ -49,8 +49,8 @@ public function onKernelResponseSessionTest(FilterResponseEvent $event) {
    *   An array of event listener definitions.
    */
   public static function getSubscribedEvents() {
-    $events[KernelEvents::RESPONSE][] = array('onKernelResponseSessionTest');
-    $events[KernelEvents::REQUEST][] = array('onKernelRequestSessionTest');
+    $events[KernelEvents::RESPONSE][] = ['onKernelResponseSessionTest'];
+    $events[KernelEvents::REQUEST][] = ['onKernelRequestSessionTest'];
     return $events;
   }
 
diff --git a/core/modules/system/tests/modules/session_test/src/Form/SessionTestForm.php b/core/modules/system/tests/modules/session_test/src/Form/SessionTestForm.php
index 70c4f83..bf250ac 100644
--- a/core/modules/system/tests/modules/session_test/src/Form/SessionTestForm.php
+++ b/core/modules/system/tests/modules/session_test/src/Form/SessionTestForm.php
@@ -22,17 +22,17 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['input'] = array(
+    $form['input'] = [
       '#type' => 'textfield',
       '#title' => 'Input',
       '#required' => TRUE,
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => 'Save',
-    );
+    ];
 
     return $form;
   }
@@ -41,7 +41,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
-    drupal_set_message(SafeMarkup::format('Ok: @input', array('@input' => $form_state->getValue('input'))));
+    drupal_set_message(SafeMarkup::format('Ok: @input', ['@input' => $form_state->getValue('input')]));
   }
 
 }
diff --git a/core/modules/system/tests/modules/system_test/src/Controller/SystemTestController.php b/core/modules/system/tests/modules/system_test/src/Controller/SystemTestController.php
index 8ef6457..5e49c24 100644
--- a/core/modules/system/tests/modules/system_test/src/Controller/SystemTestController.php
+++ b/core/modules/system/tests/modules/system_test/src/Controller/SystemTestController.php
@@ -206,15 +206,15 @@ public function lockPersist($lock_name) {
    * Set cache tag on on the returned render array.
    */
   public function system_test_cache_tags_page() {
-    $build['main'] = array(
-      '#cache' => array('tags' => array('system_test_cache_tags_page')),
-      '#pre_render' => array(
+    $build['main'] = [
+      '#cache' => ['tags' => ['system_test_cache_tags_page']],
+      '#pre_render' => [
         '\Drupal\system_test\Controller\SystemTestController::preRenderCacheTags',
-      ),
-      'message' => array(
+      ],
+      'message' => [
         '#markup' => 'Cache tags page example',
-      ),
-    );
+      ],
+    ];
     return $build;
   }
 
@@ -222,12 +222,12 @@ public function system_test_cache_tags_page() {
    * Set cache max-age on the returned render array.
    */
   public function system_test_cache_maxage_page() {
-    $build['main'] = array(
-      '#cache' => array('max-age' => 90),
-      'message' => array(
+    $build['main'] = [
+      '#cache' => ['max-age' => 90],
+      'message' => [
         '#markup' => 'Cache max-age page example',
-      ),
-    );
+      ],
+    ];
     return $build;
   }
 
@@ -245,8 +245,8 @@ public static function preRenderCacheTags($elements) {
    * @see system_authorized_init()
    */
   public function authorizeInit($page_title) {
-    $authorize_url = Url::fromUri('base:core/authorize.php', array('absolute' => TRUE))->toString();
-    system_authorized_init('system_test_authorize_run', __DIR__ . '/../../system_test.module', array(), $page_title);
+    $authorize_url = Url::fromUri('base:core/authorize.php', ['absolute' => TRUE])->toString();
+    system_authorized_init('system_test_authorize_run', __DIR__ . '/../../system_test.module', [], $page_title);
     return new RedirectResponse($authorize_url);
   }
 
@@ -258,7 +258,7 @@ public function setHeader(Request $request) {
     $response = new CacheableResponse();
     $response->headers->set($query['name'], $query['value']);
     $response->getCacheableMetadata()->addCacheContexts(['url.query_args:name', 'url.query_args:value']);
-    $response->setContent($this->t('The following header was set: %name: %value', array('%name' => $query['name'], '%value' => $query['value'])));
+    $response->setContent($this->t('The following header was set: %name: %value', ['%name' => $query['name'], '%value' => $query['value']]));
 
     return $response;
   }
diff --git a/core/modules/system/tests/modules/system_test/src/MockFileTransfer.php b/core/modules/system/tests/modules/system_test/src/MockFileTransfer.php
index de065af..b7ea3f2 100644
--- a/core/modules/system/tests/modules/system_test/src/MockFileTransfer.php
+++ b/core/modules/system/tests/modules/system_test/src/MockFileTransfer.php
@@ -21,11 +21,11 @@ public static function factory() {
    * Returns a settings form with a text field to input a username.
    */
   public function getSettingsForm() {
-    $form = array();
-    $form['system_test_username'] = array(
+    $form = [];
+    $form['system_test_username'] = [
       '#type' => 'textfield',
       '#title' => t('System Test Username'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/system/tests/modules/system_test/system_test.module b/core/modules/system/tests/modules/system_test/system_test.module
index 04fa2da..8173908 100644
--- a/core/modules/system/tests/modules/system_test/system_test.module
+++ b/core/modules/system/tests/modules/system_test/system_test.module
@@ -27,7 +27,7 @@ function system_test_help($route_name, RouteMatchInterface $route_match) {
 function system_test_modules_installed($modules) {
   if (\Drupal::state()->get('system_test.verbose_module_hooks')) {
     foreach ($modules as $module) {
-      drupal_set_message(t('hook_modules_installed fired for @module', array('@module' => $module)));
+      drupal_set_message(t('hook_modules_installed fired for @module', ['@module' => $module]));
     }
   }
 }
@@ -38,7 +38,7 @@ function system_test_modules_installed($modules) {
 function system_test_modules_uninstalled($modules) {
   if (\Drupal::state()->get('system_test.verbose_module_hooks')) {
     foreach ($modules as $module) {
-      drupal_set_message(t('hook_modules_uninstalled fired for @module', array('@module' => $module)));
+      drupal_set_message(t('hook_modules_uninstalled fired for @module', ['@module' => $module]));
     }
   }
 }
@@ -66,12 +66,12 @@ function system_test_system_info_alter(&$info, Extension $file, $type) {
   if ($file->getName() == 'system_dependencies_test') {
     $info['hidden'] = FALSE;
   }
-  if (in_array($file->getName(), array(
+  if (in_array($file->getName(), [
     'system_incompatible_module_version_dependencies_test',
     'system_incompatible_core_version_dependencies_test',
     'system_incompatible_module_version_test',
     'system_incompatible_core_version_test',
-  ))) {
+  ])) {
     $info['hidden'] = FALSE;
   }
   if ($file->getName() == 'requirements1_test' || $file->getName() == 'requirements2_test') {
@@ -99,7 +99,7 @@ function system_test_page_attachments(array &$page) {
  */
 function _system_test_first_shutdown_function($arg1, $arg2) {
   // Set something to ensure that this function got called.
-  \Drupal::state()->set('_system_test_first_shutdown_function', array($arg1, $arg2));
+  \Drupal::state()->set('_system_test_first_shutdown_function', [$arg1, $arg2]);
   drupal_register_shutdown_function('_system_test_second_shutdown_function', $arg1, $arg2);
 }
 
@@ -108,7 +108,7 @@ function _system_test_first_shutdown_function($arg1, $arg2) {
  */
 function _system_test_second_shutdown_function($arg1, $arg2) {
   // Set something to ensure that this function got called.
-  \Drupal::state()->set('_system_test_second_shutdown_function', array($arg1, $arg2));
+  \Drupal::state()->set('_system_test_second_shutdown_function', [$arg1, $arg2]);
 
   // Throw an exception with an HTML tag. Since this is called in a shutdown
   // function, it will not bubble up to the default exception handler but will
@@ -121,13 +121,13 @@ function _system_test_second_shutdown_function($arg1, $arg2) {
  * Implements hook_filetransfer_info().
  */
 function system_test_filetransfer_info() {
-  return array(
-    'system_test' => array(
+  return [
+    'system_test' => [
       'title' => t('System Test FileTransfer'),
       'class' => 'Drupal\system_test\MockFileTransfer',
       'weight' => -10,
-    ),
-  );
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/system/tests/modules/test_page_test/src/Controller/Test.php b/core/modules/system/tests/modules/test_page_test/src/Controller/Test.php
index 7ec5fc0..2de84e9 100644
--- a/core/modules/system/tests/modules/test_page_test/src/Controller/Test.php
+++ b/core/modules/system/tests/modules/test_page_test/src/Controller/Test.php
@@ -15,7 +15,7 @@ class Test {
    *   A render array as expected by drupal_render()
    */
   public function renderTitle() {
-    $build = array();
+    $build = [];
     $build['#markup'] = 'Hello Drupal';
     $build['#title'] = 'Foo';
 
@@ -29,7 +29,7 @@ public function renderTitle() {
    *   A render array as expected by drupal_render().
    */
   public function staticTitle() {
-    $build = array();
+    $build = [];
     $build['#markup'] = 'Hello Drupal';
 
     return $build;
@@ -66,9 +66,9 @@ public function controllerWithCache() {
    *   A render array as expected by drupal_render()
    */
   public function renderPage() {
-    return array(
+    return [
       '#markup' => 'Content',
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/theme_suggestions_test/theme_suggestions_test.module b/core/modules/system/tests/modules/theme_suggestions_test/theme_suggestions_test.module
index 974856a..50fb86d 100644
--- a/core/modules/system/tests/modules/theme_suggestions_test/theme_suggestions_test.module
+++ b/core/modules/system/tests/modules/theme_suggestions_test/theme_suggestions_test.module
@@ -9,11 +9,11 @@
  * Implements hook_theme().
  */
 function theme_suggestions_test_theme() {
-  $items['theme_suggestions_test_include'] = array(
+  $items['theme_suggestions_test_include'] = [
     'file' => 'theme_suggestions_test.inc',
-    'variables' => array(),
+    'variables' => [],
     'function' => 'theme_theme_suggestions_test_include',
-  );
+  ];
   return $items;
 }
 
diff --git a/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php b/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
index d5f9110..650d44d 100644
--- a/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
+++ b/core/modules/system/tests/modules/theme_test/src/EventSubscriber/ThemeTestSubscriber.php
@@ -63,11 +63,11 @@ public function onRequest(GetResponseEvent $event) {
       // theme_test_request_listener_page_callback() to test that even when the
       // theme system is initialized this early, it is still capable of
       // returning output and theming the page as a whole.
-      $more_link = array(
+      $more_link = [
         '#type' => 'more_link',
         '#url' => Url::fromRoute('user.page'),
-        '#attributes' => array('title' => 'Themed output generated in a KernelEvents::REQUEST listener'),
-      );
+        '#attributes' => ['title' => 'Themed output generated in a KernelEvents::REQUEST listener'],
+      ];
       $GLOBALS['theme_test_output'] = $this->renderer->renderPlain($more_link);
     }
   }
@@ -77,9 +77,9 @@ public function onRequest(GetResponseEvent $event) {
    */
   public function onView(GetResponseEvent $event) {
     $current_route = $this->currentRouteMatch->getRouteName();
-    $entity_autcomplete_route = array(
+    $entity_autcomplete_route = [
       'system.entity_autocomplete',
-    );
+    ];
 
     if (in_array($current_route, $entity_autcomplete_route)) {
       if ($this->container->initialized('theme.registry')) {
@@ -92,8 +92,8 @@ public function onView(GetResponseEvent $event) {
    * {@inheritdoc}
    */
   static function getSubscribedEvents() {
-    $events[KernelEvents::REQUEST][] = array('onRequest');
-    $events[KernelEvents::VIEW][] = array('onView', -1000);
+    $events[KernelEvents::REQUEST][] = ['onRequest'];
+    $events[KernelEvents::VIEW][] = ['onView', -1000];
     return $events;
   }
 
diff --git a/core/modules/system/tests/modules/theme_test/src/ThemeTestController.php b/core/modules/system/tests/modules/theme_test/src/ThemeTestController.php
index 639f1b7..89cd382 100644
--- a/core/modules/system/tests/modules/theme_test/src/ThemeTestController.php
+++ b/core/modules/system/tests/modules/theme_test/src/ThemeTestController.php
@@ -17,9 +17,9 @@ class ThemeTestController extends ControllerBase {
    *   Render array containing a theme.
    */
   public function functionTemplateOverridden() {
-    return array(
+    return [
       '#theme' => 'theme_test_function_template_override',
-    );
+    ];
   }
 
   /**
@@ -29,13 +29,13 @@ public function functionTemplateOverridden() {
    *   A render array containing custom stylesheets.
    */
   public function testInfoStylesheets() {
-    return array(
-      '#attached' => array(
-        'library' => array(
+    return [
+      '#attached' => [
+        'library' => [
           'theme_test/theme_stylesheets_override_and_remove_test',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -45,7 +45,7 @@ public function testInfoStylesheets() {
    *   A render array containing a theme override.
    */
   public function testTemplate() {
-    return ['#markup' => \Drupal::theme()->render('theme_test_template_test', array())];
+    return ['#markup' => \Drupal::theme()->render('theme_test_template_test', [])];
   }
 
   /**
@@ -55,12 +55,12 @@ public function testTemplate() {
    *   A render array containing an inline template.
    */
   public function testInlineTemplate() {
-    $element = array();
-    $element['test'] = array(
+    $element = [];
+    $element['test'] = [
       '#type' => 'inline_template',
       '#template' => 'test-with-context {{ llama }}',
-      '#context' => array('llama' => 'muuh'),
-    );
+      '#context' => ['llama' => 'muuh'],
+    ];
     return $element;
   }
 
@@ -71,7 +71,7 @@ public function testInlineTemplate() {
    *   An HTML string containing the themed output.
    */
   public function testSuggestion() {
-    return ['#markup' => \Drupal::theme()->render(array('theme_test__suggestion', 'theme_test'), array())];
+    return ['#markup' => \Drupal::theme()->render(['theme_test__suggestion', 'theme_test'], [])];
   }
 
   /**
@@ -88,35 +88,35 @@ public function testRequestListener() {
    * Menu callback for testing suggestion alter hooks with template files.
    */
   function suggestionProvided() {
-    return array('#theme' => 'theme_test_suggestion_provided');
+    return ['#theme' => 'theme_test_suggestion_provided'];
   }
 
   /**
    * Menu callback for testing suggestion alter hooks with template files.
    */
   function suggestionAlter() {
-    return array('#theme' => 'theme_test_suggestions');
+    return ['#theme' => 'theme_test_suggestions'];
   }
 
   /**
    * Menu callback for testing hook_theme_suggestions_alter().
    */
   function generalSuggestionAlter() {
-    return array('#theme' => 'theme_test_general_suggestions');
+    return ['#theme' => 'theme_test_general_suggestions'];
   }
 
   /**
    * Menu callback for testing suggestion alter hooks with specific suggestions.
    */
   function specificSuggestionAlter() {
-    return array('#theme' => 'theme_test_specific_suggestions__variant');
+    return ['#theme' => 'theme_test_specific_suggestions__variant'];
   }
 
   /**
    * Menu callback for testing suggestion alter hooks with theme functions.
    */
   function functionSuggestionAlter() {
-    return array('#theme' => 'theme_test_function_suggestions');
+    return ['#theme' => 'theme_test_function_suggestions'];
   }
 
 
@@ -124,7 +124,7 @@ function functionSuggestionAlter() {
    * Menu callback for testing includes with suggestion alter hooks.
    */
   function suggestionAlterInclude() {
-    return array('#theme' => 'theme_test_suggestions_include');
+    return ['#theme' => 'theme_test_suggestions_include'];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/theme_test/theme_test.module b/core/modules/system/tests/modules/theme_test/theme_test.module
index 540185e..2e6f164 100644
--- a/core/modules/system/tests/modules/theme_test/theme_test.module
+++ b/core/modules/system/tests/modules/theme_test/theme_test.module
@@ -11,55 +11,55 @@
  * Implements hook_theme().
  */
 function theme_test_theme($existing, $type, $theme, $path) {
-  $items['theme_test'] = array(
+  $items['theme_test'] = [
     'file' => 'theme_test.inc',
-    'variables' => array('foo' => ''),
+    'variables' => ['foo' => ''],
     'function' => 'theme_theme_test',
-  );
-  $items['theme_test_template_test'] = array(
+  ];
+  $items['theme_test_template_test'] = [
     'template' => 'theme_test.template_test',
-  );
-  $items['theme_test_template_test_2'] = array(
+  ];
+  $items['theme_test_template_test_2'] = [
     'template' => 'theme_test.template_test',
-  );
-  $items['theme_test_suggestion_provided'] = array(
-    'variables' => array(),
-  );
-  $items['theme_test_specific_suggestions'] = array(
-    'variables' => array(),
-  );
-  $items['theme_test_suggestions'] = array(
-    'variables' => array(),
-  );
-  $items['theme_test_general_suggestions'] = array(
-    'variables' => array(),
-  );
-  $items['theme_test_function_suggestions'] = array(
-    'variables' => array(),
+  ];
+  $items['theme_test_suggestion_provided'] = [
+    'variables' => [],
+  ];
+  $items['theme_test_specific_suggestions'] = [
+    'variables' => [],
+  ];
+  $items['theme_test_suggestions'] = [
+    'variables' => [],
+  ];
+  $items['theme_test_general_suggestions'] = [
+    'variables' => [],
+  ];
+  $items['theme_test_function_suggestions'] = [
+    'variables' => [],
     'function' => 'theme_theme_test_function_suggestions',
-  );
-  $items['theme_test_suggestions_include'] = array(
-    'variables' => array(),
+  ];
+  $items['theme_test_suggestions_include'] = [
+    'variables' => [],
     'function' => 'theme_theme_test_suggestions_include',
-  );
-  $items['theme_test_foo'] = array(
-    'variables' => array('foo' => NULL),
+  ];
+  $items['theme_test_foo'] = [
+    'variables' => ['foo' => NULL],
     'function' => 'theme_theme_test_foo',
-  );
-  $items['theme_test_render_element'] = array(
+  ];
+  $items['theme_test_render_element'] = [
     'render element' => 'elements',
-  );
-  $items['theme_test_render_element_children'] = array(
+  ];
+  $items['theme_test_render_element_children'] = [
     'render element' => 'element',
     'function' => 'theme_theme_test_render_element_children',
-  );
-  $items['theme_test_function_template_override'] = array(
-    'variables' => array(),
+  ];
+  $items['theme_test_function_template_override'] = [
+    'variables' => [],
     'function' => 'theme_theme_test_function_template_override',
-  );
-  $info['test_theme_not_existing_function'] = array(
+  ];
+  $info['test_theme_not_existing_function'] = [
     'function' => 'test_theme_not_existing_function',
-  );
+  ];
   $items['theme_test_preprocess_suggestions'] = [
     'variables' => [
       'foo' => '',
@@ -83,7 +83,7 @@ function theme_test_preprocess_html(&$variables) {
  * Implements hook_page_bottom().
  */
 function theme_test_page_bottom(array &$page_bottom) {
-  $page_bottom['theme_test_page_bottom'] = array('#markup' => 'theme test page bottom markup');
+  $page_bottom['theme_test_page_bottom'] = ['#markup' => 'theme test page bottom markup'];
 }
 
 /**
@@ -167,7 +167,7 @@ function theme_theme_test_function_suggestions($variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function theme_test_theme_suggestions_theme_test_suggestion_provided(array $variables) {
-  return array('theme_test_suggestion_provided__' . 'foo');
+  return ['theme_test_suggestion_provided__' . 'foo'];
 }
 
 /**
diff --git a/core/modules/system/tests/modules/twig_extension_test/src/TwigExtension/TestExtension.php b/core/modules/system/tests/modules/twig_extension_test/src/TwigExtension/TestExtension.php
index 78d1020..b364c59 100644
--- a/core/modules/system/tests/modules/twig_extension_test/src/TwigExtension/TestExtension.php
+++ b/core/modules/system/tests/modules/twig_extension_test/src/TwigExtension/TestExtension.php
@@ -21,9 +21,9 @@ class TestExtension extends \Twig_Extension {
    *   The value is a standard PHP callback that defines what the function does.
    */
   public function getFunctions() {
-    return array(
-      'testfunc' => new \Twig_Function_Function(array('Drupal\twig_extension_test\TwigExtension\TestExtension', 'testFunction')),
-    );
+    return [
+      'testfunc' => new \Twig_Function_Function(['Drupal\twig_extension_test\TwigExtension\TestExtension', 'testFunction']),
+    ];
   }
 
   /**
@@ -39,9 +39,9 @@ public function getFunctions() {
    *   The value is a standard PHP callback that defines what the filter does.
    */
   public function getFilters() {
-    return array(
-      'testfilter' => new \Twig_Filter_Function(array('Drupal\twig_extension_test\TwigExtension\TestExtension', 'testFilter')),
-    );
+    return [
+      'testfilter' => new \Twig_Filter_Function(['Drupal\twig_extension_test\TwigExtension\TestExtension', 'testFilter']),
+    ];
   }
 
   /**
@@ -93,7 +93,7 @@ public static function testFunction($upperCase = FALSE) {
    * @see \Drupal\system\Tests\Theme\TwigExtensionTest::testTwigExtensionFilter()
    */
   public static function testFilter($string) {
-    return str_replace(array('animal'), array('plant'), $string);
+    return str_replace(['animal'], ['plant'], $string);
   }
 
 }
diff --git a/core/modules/system/tests/modules/twig_extension_test/src/TwigExtensionTestController.php b/core/modules/system/tests/modules/twig_extension_test/src/TwigExtensionTestController.php
index 44e42d9..c15b16d 100644
--- a/core/modules/system/tests/modules/twig_extension_test/src/TwigExtensionTestController.php
+++ b/core/modules/system/tests/modules/twig_extension_test/src/TwigExtensionTestController.php
@@ -14,7 +14,7 @@ class TwigExtensionTestController {
    * Menu callback for testing Twig filters in a Twig template.
    */
   public function testFilterRender() {
-    return array(
+    return [
       '#theme' => 'twig_extension_test_filter',
       '#message' => 'Every animal is not a mineral.',
       '#safe_join_items' => [
@@ -22,14 +22,14 @@ public function testFilterRender() {
         $this->t('<em>will be markup</em>'),
         ['#markup' => '<strong>will be rendered</strong>']
       ]
-    );
+    ];
   }
 
   /**
    * Menu callback for testing Twig functions in a Twig template.
    */
   public function testFunctionRender() {
-    return array('#theme' => 'twig_extension_test_function');
+    return ['#theme' => 'twig_extension_test_function'];
   }
 
 }
diff --git a/core/modules/system/tests/modules/twig_extension_test/twig_extension_test.module b/core/modules/system/tests/modules/twig_extension_test/twig_extension_test.module
index f55e619..eb69e34 100644
--- a/core/modules/system/tests/modules/twig_extension_test/twig_extension_test.module
+++ b/core/modules/system/tests/modules/twig_extension_test/twig_extension_test.module
@@ -9,14 +9,14 @@
  * Implements hook_theme().
  */
 function twig_extension_test_theme($existing, $type, $theme, $path) {
-  return array(
-    'twig_extension_test_filter' => array(
-      'variables' => array('message' => NULL, 'safe_join_items' => NULL),
+  return [
+    'twig_extension_test_filter' => [
+      'variables' => ['message' => NULL, 'safe_join_items' => NULL],
       'template' => 'twig_extension_test.filter',
-    ),
-    'twig_extension_test_function' => array(
+    ],
+    'twig_extension_test_function' => [
       'render element' => 'element',
       'template' => 'twig_extension_test.function',
-    ),
-  );
+    ],
+  ];
 }
diff --git a/core/modules/system/tests/modules/twig_theme_test/src/TwigThemeTestController.php b/core/modules/system/tests/modules/twig_theme_test/src/TwigThemeTestController.php
index 7408ce8..8e1f69e 100644
--- a/core/modules/system/tests/modules/twig_theme_test/src/TwigThemeTestController.php
+++ b/core/modules/system/tests/modules/twig_theme_test/src/TwigThemeTestController.php
@@ -14,16 +14,16 @@ class TwigThemeTestController {
    * Menu callback for testing PHP variables in a Twig template.
    */
   public function phpVariablesRender() {
-    return ['#markup' => \Drupal::theme()->render('twig_theme_test_php_variables', array())];
+    return ['#markup' => \Drupal::theme()->render('twig_theme_test_php_variables', [])];
   }
 
   /**
    * Menu callback for testing translation blocks in a Twig template.
    */
   public function transBlockRender() {
-    return array(
+    return [
       '#theme' => 'twig_theme_test_trans',
-    );
+    ];
   }
 
   /**
@@ -40,9 +40,9 @@ public function placeholderOutsideTransRender() {
    * Renders for testing url_generator functions in a Twig template.
    */
   public function urlGeneratorRender() {
-    return array(
+    return [
       '#theme' => 'twig_theme_test_url_generator',
-    );
+    ];
   }
 
   /**
@@ -73,25 +73,25 @@ public function urlToStringRender() {
    * Renders for testing file_url functions in a Twig template.
    */
   public function fileUrlRender() {
-    return array(
+    return [
       '#theme' => 'twig_theme_test_file_url',
-    );
+    ];
   }
 
   /**
    * Renders for testing attach_library functions in a Twig template.
    */
   public function attachLibraryRender() {
-    return array(
+    return [
       '#theme' => 'twig_theme_test_attach_library',
-    );
+    ];
   }
 
   /**
    * Menu callback for testing the Twig registry loader.
    */
   public function registryLoaderRender() {
-    return array('#theme' => 'twig_registry_loader_test');
+    return ['#theme' => 'twig_registry_loader_test'];
   }
 
   /**
diff --git a/core/modules/system/tests/modules/twig_theme_test/twig_theme_test.module b/core/modules/system/tests/modules/twig_theme_test/twig_theme_test.module
index b3a75e5..a8b4086 100644
--- a/core/modules/system/tests/modules/twig_theme_test/twig_theme_test.module
+++ b/core/modules/system/tests/modules/twig_theme_test/twig_theme_test.module
@@ -9,70 +9,70 @@
  * Implements hook_theme().
  */
 function twig_theme_test_theme($existing, $type, $theme, $path) {
-  $items['twig_theme_test_filter'] = array(
-    'variables' => array('quote' => array(), 'attributes' => array()),
+  $items['twig_theme_test_filter'] = [
+    'variables' => ['quote' => [], 'attributes' => []],
     'template' => 'twig_theme_test.filter',
-  );
-  $items['twig_theme_test_php_variables'] = array(
+  ];
+  $items['twig_theme_test_php_variables'] = [
     'template' => 'twig_theme_test.php_variables',
-  );
-  $items['twig_theme_test_trans'] = array(
-    'variables' => array(),
+  ];
+  $items['twig_theme_test_trans'] = [
+    'variables' => [],
     'template' => 'twig_theme_test.trans',
-  );
-  $items['twig_theme_test_placeholder_outside_trans'] = array(
-    'variables' => array('var' => ''),
+  ];
+  $items['twig_theme_test_placeholder_outside_trans'] = [
+    'variables' => ['var' => ''],
     'template' => 'twig_theme_test.placeholder_outside_trans',
-  );
-  $items['twig_namespace_test'] = array(
-    'variables' => array(),
+  ];
+  $items['twig_namespace_test'] = [
+    'variables' => [],
     'template' => 'twig_namespace_test',
-  );
-  $items['twig_registry_loader_test'] = array(
-    'variables' => array(),
-  );
-  $items['twig_registry_loader_test_include'] = array(
-    'variables' => array(),
-  );
-  $items['twig_registry_loader_test_extend'] = array(
-    'variables' => array(),
-  );
-  $items['twig_raw_test'] = array(
-    'variables' => array('script' => ''),
-  );
-  $items['twig_autoescape_test'] = array(
-    'variables' => array('script' => ''),
-  );
-  $items['twig_theme_test_url_generator'] = array(
-    'variables' => array(),
+  ];
+  $items['twig_registry_loader_test'] = [
+    'variables' => [],
+  ];
+  $items['twig_registry_loader_test_include'] = [
+    'variables' => [],
+  ];
+  $items['twig_registry_loader_test_extend'] = [
+    'variables' => [],
+  ];
+  $items['twig_raw_test'] = [
+    'variables' => ['script' => ''],
+  ];
+  $items['twig_autoescape_test'] = [
+    'variables' => ['script' => ''],
+  ];
+  $items['twig_theme_test_url_generator'] = [
+    'variables' => [],
     'template' => 'twig_theme_test.url_generator',
-  );
-  $items['twig_theme_test_link_generator'] = array(
+  ];
+  $items['twig_theme_test_link_generator'] = [
     'variables' => [
       'test_url' => NULL,
       'test_url_attribute' => NULL,
       'attributes' => [],
     ],
     'template' => 'twig_theme_test.link_generator',
-  );
-  $items['twig_theme_test_url_to_string'] = array(
-    'variables' => array('test_url' => NULL),
+  ];
+  $items['twig_theme_test_url_to_string'] = [
+    'variables' => ['test_url' => NULL],
     'template' => 'twig_theme_test.url_to_string',
-  );
-  $items['twig_theme_test_file_url'] = array(
-    'variables' => array(),
+  ];
+  $items['twig_theme_test_file_url'] = [
+    'variables' => [],
     'template' => 'twig_theme_test.file_url',
-  );
-  $items['twig_theme_test_attach_library'] = array(
-    'variables' => array(),
+  ];
+  $items['twig_theme_test_attach_library'] = [
+    'variables' => [],
     'template' => 'twig_theme_test.attach_library',
-  );
-  $items['twig_theme_test_renderable'] = array(
-    'variables' => array(
+  ];
+  $items['twig_theme_test_renderable'] = [
+    'variables' => [
       'renderable' => NULL,
-    ),
+    ],
     'template' => 'twig_theme_test.renderable',
-  );
+  ];
   return $items;
 }
 
@@ -83,36 +83,36 @@ function _test_theme_twig_php_values() {
   // Prefix each variable with "twig_" so that Twig doesn't get confused
   // between a variable and a primitive. Arrays are not tested since they should
   // be a Drupal render array.
-  return array(
-    'twig_null' => array(
+  return [
+    'twig_null' => [
       'value' => NULL,
       'expected' => '',
-    ),
-    'twig_bool_false' => array(
+    ],
+    'twig_bool_false' => [
       'value' => FALSE,
       'expected' => '',
-    ),
-    'twig_bool_true' => array(
+    ],
+    'twig_bool_true' => [
       'value' => TRUE,
       'expected' => '1',
-    ),
-    'twig_int' => array(
+    ],
+    'twig_int' => [
       'value' => 1,
       'expected' => '1',
-    ),
-    'twig_int_0' => array(
+    ],
+    'twig_int_0' => [
       'value' => 0,
       'expected' => '0',
-    ),
-    'twig_float' => array(
+    ],
+    'twig_float' => [
       'value' => 122.34343,
       'expected' => '122.34343',
-    ),
-    'twig_string' => array(
+    ],
+    'twig_string' => [
       'value' => 'Hello world!',
       'expected' => 'Hello world!',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php b/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php
index b72ab1b..e1c21c2 100644
--- a/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php
+++ b/core/modules/system/tests/modules/update_script_test/src/Controller/UpdateScriptTestController.php
@@ -18,12 +18,12 @@ public function databaseUpdatesMenuItem(Request $request) {
     // @todo Simplify with https://www.drupal.org/node/2548095
     $base_url = str_replace('/update.php', '', $request->getBaseUrl());
     $url = (new Url('system.db_update'))->setOption('base_url', $base_url);
-    $build['main'] = array(
+    $build['main'] = [
       '#type' => 'link',
       '#title' => $this->t('Run database updates'),
       '#url' => $url,
       '#access' => $url->access($this->currentUser()),
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/system/tests/modules/update_script_test/update_script_test.install b/core/modules/system/tests/modules/update_script_test/update_script_test.install
index 0f1718d..ce38743 100644
--- a/core/modules/system/tests/modules/update_script_test/update_script_test.install
+++ b/core/modules/system/tests/modules/update_script_test/update_script_test.install
@@ -9,27 +9,27 @@
  * Implements hook_requirements().
  */
 function update_script_test_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
 
   if ($phase == 'update') {
     // Set a requirements warning or error when the test requests it.
     $requirement_type = \Drupal::config('update_script_test.settings')->get('requirement_type');
     switch ($requirement_type) {
       case REQUIREMENT_WARNING:
-        $requirements['update_script_test'] = array(
+        $requirements['update_script_test'] = [
           'title' => 'Update script test',
           'value' => 'Warning',
           'description' => 'This is a requirements warning provided by the update_script_test module.',
           'severity' => REQUIREMENT_WARNING,
-        );
+        ];
         break;
       case REQUIREMENT_ERROR:
-        $requirements['update_script_test'] = array(
+        $requirements['update_script_test'] = [
           'title' => 'Update script test',
           'value' => 'Error',
           'description' => 'This is a requirements error provided by the update_script_test module.',
           'severity' => REQUIREMENT_ERROR,
-        );
+        ];
         break;
     }
   }
diff --git a/core/modules/system/tests/modules/update_test_1/update_test_1.install b/core/modules/system/tests/modules/update_test_1/update_test_1.install
index 7ef5d98..1d632c7 100644
--- a/core/modules/system/tests/modules/update_test_1/update_test_1.install
+++ b/core/modules/system/tests/modules/update_test_1/update_test_1.install
@@ -18,21 +18,21 @@ function update_test_1_update_dependencies() {
   // the correct array structure. Therefore, we use updates from the
   // update_test_0 module (which will be installed first) that they will not
   // get in the way of other tests.
-  $dependencies['update_test_0'][8001] = array(
+  $dependencies['update_test_0'][8001] = [
     // Compare to update_test_2_update_dependencies(), where the same
     // update_test_0 module update function is forced to depend on an update
     // function from a different module. This allows us to test that both
     // dependencies are correctly recorded.
     'update_test_1' => 8001,
-  );
-  $dependencies['update_test_0'][8002] = array(
+  ];
+  $dependencies['update_test_0'][8002] = [
     // Compare to update_test_2_update_dependencies(), where the same
     // update_test_0 module update function is forced to depend on a
     // different update function within the same module. This allows us to
     // test that only the dependency on the higher-numbered update function
     // is recorded.
     'update_test_1' => 8003,
-  );
+  ];
   return $dependencies;
 }
 
diff --git a/core/modules/system/tests/modules/update_test_2/update_test_2.install b/core/modules/system/tests/modules/update_test_2/update_test_2.install
index 4202720..8818545 100644
--- a/core/modules/system/tests/modules/update_test_2/update_test_2.install
+++ b/core/modules/system/tests/modules/update_test_2/update_test_2.install
@@ -18,18 +18,18 @@ function update_test_2_update_dependencies() {
   // 2. update_test_3_update_8001()
   // 3. update_test_2_update_8002()
   // 4. update_test_2_update_8003()
-  $dependencies['update_test_2'][8002] = array(
+  $dependencies['update_test_2'][8002] = [
     'update_test_3' => 8001,
-  );
+  ];
 
   // These are coordinated with the corresponding dependencies declared in
   // update_test_1_update_dependencies().
-  $dependencies['update_test_0'][8001] = array(
+  $dependencies['update_test_0'][8001] = [
     'update_test_2' => 8002,
-  );
-  $dependencies['update_test_0'][8002] = array(
+  ];
+  $dependencies['update_test_0'][8002] = [
     'update_test_1' => 8002,
-  );
+  ];
 
   return $dependencies;
 }
diff --git a/core/modules/system/tests/modules/update_test_3/update_test_3.install b/core/modules/system/tests/modules/update_test_3/update_test_3.install
index ae2da4b..6a837b6 100644
--- a/core/modules/system/tests/modules/update_test_3/update_test_3.install
+++ b/core/modules/system/tests/modules/update_test_3/update_test_3.install
@@ -11,9 +11,9 @@
  * @see update_test_2_update_dependencies()
  */
 function update_test_3_update_dependencies() {
-  $dependencies['update_test_3'][8001] = array(
+  $dependencies['update_test_3'][8001] = [
     'update_test_2' => 8001,
-  );
+  ];
   return $dependencies;
 }
 
diff --git a/core/modules/system/tests/modules/url_alter_test/src/PathProcessor.php b/core/modules/system/tests/modules/url_alter_test/src/PathProcessor.php
index b59fe4c..3709907 100644
--- a/core/modules/system/tests/modules/url_alter_test/src/PathProcessor.php
+++ b/core/modules/system/tests/modules/url_alter_test/src/PathProcessor.php
@@ -16,7 +16,7 @@ class PathProcessor implements InboundPathProcessorInterface {
   public function processInbound($path, Request $request) {
     if (preg_match('!^/user/([^/]+)(/.*)?!', $path, $matches)) {
       if ($account = user_load_by_name($matches[1])) {
-        $matches += array(2 => '');
+        $matches += [2 => ''];
         $path = '/user/' . $account->id() . $matches[2];
       }
     }
diff --git a/core/modules/system/tests/modules/url_alter_test/src/PathProcessorTest.php b/core/modules/system/tests/modules/url_alter_test/src/PathProcessorTest.php
index b3ba568..9a89df9 100644
--- a/core/modules/system/tests/modules/url_alter_test/src/PathProcessorTest.php
+++ b/core/modules/system/tests/modules/url_alter_test/src/PathProcessorTest.php
@@ -20,7 +20,7 @@ public function processInbound($path, Request $request) {
     // Rewrite user/username to user/uid.
     if (preg_match('!^/user/([^/]+)(/.*)?!', $path, $matches)) {
       if ($account = user_load_by_name($matches[1])) {
-        $matches += array(2 => '');
+        $matches += [2 => ''];
         $path = '/user/' . $account->id() . $matches[2];
       }
     }
@@ -37,11 +37,11 @@ public function processInbound($path, Request $request) {
   /**
    * {@inheritdoc}
    */
-  public function processOutbound($path, &$options = array(), Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
+  public function processOutbound($path, &$options = [], Request $request = NULL, BubbleableMetadata $bubbleable_metadata = NULL) {
     // Rewrite user/uid to user/username.
     if (preg_match('!^/user/([0-9]+)(/.*)?!', $path, $matches)) {
       if ($account = User::load($matches[1])) {
-        $matches += array(2 => '');
+        $matches += [2 => ''];
         $path = '/user/' . $account->getUsername() . $matches[2];
         if ($bubbleable_metadata) {
           $bubbleable_metadata->addCacheTags($account->getCacheTags());
diff --git a/core/modules/system/tests/src/Functional/Bootstrap/DrupalSetMessageTest.php b/core/modules/system/tests/src/Functional/Bootstrap/DrupalSetMessageTest.php
index 1b0f31a..0931d65 100644
--- a/core/modules/system/tests/src/Functional/Bootstrap/DrupalSetMessageTest.php
+++ b/core/modules/system/tests/src/Functional/Bootstrap/DrupalSetMessageTest.php
@@ -16,7 +16,7 @@ class DrupalSetMessageTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   /**
    * Tests drupal_set_message().
diff --git a/core/modules/system/tests/src/Functional/Cache/ClearTest.php b/core/modules/system/tests/src/Functional/Cache/ClearTest.php
index 4b33987..fd9641c 100644
--- a/core/modules/system/tests/src/Functional/Cache/ClearTest.php
+++ b/core/modules/system/tests/src/Functional/Cache/ClearTest.php
@@ -35,7 +35,7 @@ function testFlushAllCaches() {
 
     foreach ($bins as $bin => $cache_backend) {
       $cid = 'test_cid_clear' . $bin;
-      $this->assertFalse($this->checkCacheExists($cid, $this->defaultValue, $bin), format_string('All cache entries removed from @bin.', array('@bin' => $bin)));
+      $this->assertFalse($this->checkCacheExists($cid, $this->defaultValue, $bin), format_string('All cache entries removed from @bin.', ['@bin' => $bin]));
     }
   }
 
diff --git a/core/modules/system/tests/src/Functional/Cache/PageCacheTagsTestBase.php b/core/modules/system/tests/src/Functional/Cache/PageCacheTagsTestBase.php
index de2b419..39a514f 100644
--- a/core/modules/system/tests/src/Functional/Cache/PageCacheTagsTestBase.php
+++ b/core/modules/system/tests/src/Functional/Cache/PageCacheTagsTestBase.php
@@ -44,12 +44,12 @@ protected function setUp() {
    */
   protected function verifyPageCache(Url $url, $hit_or_miss, $tags = FALSE) {
     $this->drupalGet($url);
-    $message = SafeMarkup::format('Page cache @hit_or_miss for %path.', array('@hit_or_miss' => $hit_or_miss, '%path' => $url->toString()));
+    $message = SafeMarkup::format('Page cache @hit_or_miss for %path.', ['@hit_or_miss' => $hit_or_miss, '%path' => $url->toString()]);
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), $hit_or_miss, $message);
 
     if ($hit_or_miss === 'HIT' && is_array($tags)) {
       $absolute_url = $url->setAbsolute()->toString();
-      $cid_parts = array($absolute_url, 'html');
+      $cid_parts = [$absolute_url, 'html'];
       $cid = implode(':', $cid_parts);
       $cache_entry = \Drupal::cache('render')->get($cid);
       sort($cache_entry->tags);
diff --git a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
index 8ac27b0..cc23f48 100644
--- a/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
+++ b/core/modules/system/tests/src/Functional/Datetime/DrupalDateTimeTest.php
@@ -16,7 +16,7 @@ class DrupalDateTimeTest extends BrowserTestBase {
   /**
    * Set up required modules.
    */
-  public static $modules = array();
+  public static $modules = [];
 
   /**
    * Test setup.
@@ -30,11 +30,11 @@ protected function setUp() {
    * Test that the AJAX Timezone Callback can deal with various formats.
    */
   public function testSystemTimezone() {
-    $options = array(
-      'query' => array(
+    $options = [
+      'query' => [
         'date' => 'Tue+Sep+17+2013+21%3A35%3A31+GMT%2B0100+(BST)#',
-      )
-    );
+      ]
+    ];
     // Query the AJAX Timezone Callback with a long-format date.
     $response = $this->drupalGet('system/timezone/BST/3600/1', $options);
     $this->assertEqual($response, '"Europe\/London"', 'Timezone AJAX callback successfully identifies and responds to a long-format date.');
@@ -80,11 +80,11 @@ public function testDateTimezone() {
 
     // Create user.
     $this->config('system.date')->set('timezone.user.configurable', 1)->save();
-    $test_user = $this->drupalCreateUser(array());
+    $test_user = $this->drupalCreateUser([]);
     $this->drupalLogin($test_user);
 
     // Set up the user with a different timezone than the site.
-    $edit = array('mail' => $test_user->getEmail(), 'timezone' => 'Asia/Manila');
+    $edit = ['mail' => $test_user->getEmail(), 'timezone' => 'Asia/Manila'];
     $this->drupalPostForm('user/' . $test_user->id() . '/edit', $edit, t('Save'));
 
     // Reload the user and reset the timezone in AccountProxy::setAccount().
@@ -109,7 +109,7 @@ function testTimezoneFormat() {
     $this->assertEqual($date->format('Y/m/d H:i:s e'), '1972/10/11 12:25:21 UTC', 'Date has default UTC time zone and correct date/time.');
 
     // Verify that the format method can override the time zone.
-    $this->assertEqual($date->format('Y/m/d H:i:s e', array('timezone' => 'America/New_York')), '1972/10/11 08:25:21 America/New_York', 'Date displayed overidden time zone and correct date/time');
+    $this->assertEqual($date->format('Y/m/d H:i:s e', ['timezone' => 'America/New_York']), '1972/10/11 08:25:21 America/New_York', 'Date displayed overidden time zone and correct date/time');
 
     // Verify that the date format method still displays the default time zone
     // for the date object.
diff --git a/core/modules/system/tests/src/Functional/DrupalKernel/ContentNegotiationTest.php b/core/modules/system/tests/src/Functional/DrupalKernel/ContentNegotiationTest.php
index 49817cc..82e2e92 100644
--- a/core/modules/system/tests/src/Functional/DrupalKernel/ContentNegotiationTest.php
+++ b/core/modules/system/tests/src/Functional/DrupalKernel/ContentNegotiationTest.php
@@ -20,7 +20,7 @@ class ContentNegotiationTest extends BrowserTestBase {
    * @see https://www.drupal.org/node/1716790
    */
   function testBogusAcceptHeader() {
-    $tests = array(
+    $tests = [
       // See https://bugs.webkit.org/show_bug.cgi?id=27267.
       'Firefox 3.5 (2009)' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
       'IE8 (2009)' => 'image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/xaml+xml, application/vnd.ms-xpsdocument, application/x-ms-xbap, application/x-ms-application, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-silverlight, */*',
@@ -34,9 +34,9 @@ function testBogusAcceptHeader() {
       'Safari (2010), iOS 4.2.1 (2012)' => 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
       'Android #1 (2012)' => 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5',
       'Android #2 (2012)' => 'text/xml,text/html,application/xhtml+xml,image/png,text/plain,*/*;q=0.8',
-    );
+    ];
     foreach ($tests as $case => $header) {
-      $this->drupalGet('', array(), array('Accept: ' . $header));
+      $this->drupalGet('', [], ['Accept: ' . $header]);
       $this->assertNoText('Unsupported Media Type', '"Unsupported Media Type" not found for ' . $case);
       $this->assertText(t('Log in'), '"Log in" found for ' . $case);
     }
diff --git a/core/modules/system/tests/src/Functional/Entity/ConfigEntityImportTest.php b/core/modules/system/tests/src/Functional/Entity/ConfigEntityImportTest.php
index c9243ea..6c5a9d6 100644
--- a/core/modules/system/tests/src/Functional/Entity/ConfigEntityImportTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/ConfigEntityImportTest.php
@@ -21,7 +21,7 @@ class ConfigEntityImportTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('action', 'block', 'filter', 'image', 'search', 'search_extra_type');
+  public static $modules = ['action', 'block', 'filter', 'image', 'search', 'search_extra_type'];
 
   /**
    * {@inheritdoc}
@@ -48,10 +48,10 @@ public function testConfigUpdateImport() {
   protected function doActionUpdate() {
     // Create a test action with a known label.
     $name = 'system.action.apple';
-    $entity = Action::create(array(
+    $entity = Action::create([
       'id' => 'apple',
       'plugin' => 'action_message_action',
-    ));
+    ]);
     $entity->save();
 
     $this->checkSinglePluginConfigSync($entity, 'configuration', 'message', '');
@@ -69,10 +69,10 @@ protected function doActionUpdate() {
   protected function doBlockUpdate() {
     // Create a test block with a known label.
     $name = 'block.block.apple';
-    $block = $this->drupalPlaceBlock('system_powered_by_block', array(
+    $block = $this->drupalPlaceBlock('system_powered_by_block', [
       'id' => 'apple',
       'label' => 'Red Delicious',
-    ));
+    ]);
 
     $this->checkSinglePluginConfigSync($block, 'settings', 'label', 'Red Delicious');
 
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityCacheTagsTestBase.php b/core/modules/system/tests/src/Functional/Entity/EntityCacheTagsTestBase.php
index 541a412..1476dfa 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityCacheTagsTestBase.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityCacheTagsTestBase.php
@@ -68,18 +68,18 @@ protected function setUp() {
     if ($this->entity->getEntityType()->get('field_ui_base_route')) {
       // Add field, so we can modify the field storage and field entities to
       // verify that changes to those indeed clear cache tags.
-      FieldStorageConfig::create(array(
+      FieldStorageConfig::create([
         'field_name' => 'configurable_field',
         'entity_type' => $this->entity->getEntityTypeId(),
         'type' => 'test_field',
-        'settings' => array(),
-      ))->save();
+        'settings' => [],
+      ])->save();
       FieldConfig::create([
         'entity_type' => $this->entity->getEntityTypeId(),
         'bundle' => $this->entity->bundle(),
         'field_name' => 'configurable_field',
         'label' => 'Configurable field',
-        'settings' => array(),
+        'settings' => [],
       ])->save();
 
       // Reload the entity now that a new field has been added to it.
@@ -110,11 +110,11 @@ protected function setUp() {
    * @see \Drupal\simpletest\TestBase::getInfo()
    */
   protected static function generateStandardizedInfo($entity_type_label, $group) {
-    return array(
+    return [
       'name' => "$entity_type_label entity cache tags",
       'description' => "Test the $entity_type_label entity's cache tags.",
       'group' => $group,
-    );
+    ];
   }
 
   /**
@@ -170,7 +170,7 @@ protected function getAdditionalCacheContextsForEntity(EntityInterface $entity)
    * @see \Drupal\system\Tests\Entity\EntityCacheTagsTestBase::createEntity()
    */
   protected function getAdditionalCacheTagsForEntity(EntityInterface $entity) {
-    return array();
+    return [];
   }
 
   /**
@@ -205,7 +205,7 @@ protected function getAdditionalCacheTagsForEntityListing() {
   protected function selectViewMode($entity_type) {
     $view_modes = \Drupal::entityManager()
       ->getStorage('entity_view_mode')
-      ->loadByProperties(array('targetEntityType' => $entity_type));
+      ->loadByProperties(['targetEntityType' => $entity_type]);
 
     if (empty($view_modes)) {
       return 'default';
@@ -241,46 +241,46 @@ protected function createReferenceTestEntities($referenced_entity) {
 
     // Add a field of the given type to the given entity type's "foo" bundle.
     $field_name = $referenced_entity->getEntityTypeId() . '_reference';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'type' => 'entity_reference',
       'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-      'settings' => array(
+      'settings' => [
         'target_type' => $referenced_entity->getEntityTypeId(),
-      ),
-    ))->save();
+      ],
+    ])->save();
     FieldConfig::create([
       'field_name' => $field_name,
       'entity_type' => $entity_type,
       'bundle' => $bundle,
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
-          'target_bundles' => array(
+        'handler_settings' => [
+          'target_bundles' => [
             $referenced_entity->bundle() => $referenced_entity->bundle(),
-          ),
-          'sort' => array('field' => '_none'),
+          ],
+          'sort' => ['field' => '_none'],
           'auto_create' => FALSE,
-        ),
-      ),
+        ],
+      ],
     ])->save();
     if (!$this->entity->getEntityType()->hasHandlerClass('view_builder')) {
       entity_get_display($entity_type, $bundle, 'full')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => 'entity_reference_label',
-        ))
+        ])
         ->save();
     }
     else {
       $referenced_entity_view_mode = $this->selectViewMode($this->entity->getEntityTypeId());
       entity_get_display($entity_type, $bundle, 'full')
-        ->setComponent($field_name, array(
+        ->setComponent($field_name, [
           'type' => 'entity_reference_entity_view',
-          'settings' => array(
+          'settings' => [
             'view_mode' => $referenced_entity_view_mode,
-          ),
-        ))
+          ],
+        ])
         ->save();
     }
 
@@ -288,28 +288,28 @@ protected function createReferenceTestEntities($referenced_entity) {
     $label_key = \Drupal::entityManager()->getDefinition($entity_type)->getKey('label');
     $referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         $label_key => 'Referencing ' . $entity_type,
         'status' => 1,
         'type' => $bundle,
-        $field_name => array('target_id' => $referenced_entity->id()),
-      ));
+        $field_name => ['target_id' => $referenced_entity->id()],
+      ]);
     $referencing_entity->save();
 
     // Create an entity that does not reference the entity being tested.
     $non_referencing_entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         $label_key => 'Non-referencing ' . $entity_type,
         'status' => 1,
         'type' => $bundle,
-      ));
+      ]);
     $non_referencing_entity->save();
 
-    return array(
+    return [
       $referencing_entity,
       $non_referencing_entity,
-    );
+    ];
   }
 
   /**
@@ -350,7 +350,7 @@ public function testReferencedEntity() {
 
     $page_cache_tags_referencing_entity = in_array('user.permissions', $this->getAccessCacheContextsForEntity($this->referencingEntity)) ? ['config:user.role.anonymous'] : [];
 
-    $view_cache_tag = array();
+    $view_cache_tag = [];
     if ($this->entity->getEntityType()->hasHandlerClass('view_builder')) {
       $view_cache_tag = \Drupal::entityManager()->getViewBuilder($entity_type)
         ->getCacheTags();
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityListBuilderTest.php b/core/modules/system/tests/src/Functional/Entity/EntityListBuilderTest.php
index 6d70760..94225f4 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityListBuilderTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityListBuilderTest.php
@@ -16,7 +16,7 @@ class EntityListBuilderTest extends BrowserTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('entity_test');
+  public static $modules = ['entity_test'];
 
   /**
    * {@inheritdoc}
@@ -25,9 +25,9 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'administer entity_test content',
-    ));
+    ]);
     $this->drupalLogin($this->webUser);
   }
 
@@ -37,7 +37,7 @@ protected function setUp() {
   public function testPager() {
     // Create 51 test entities.
     for ($i = 1; $i < 52; $i++) {
-      EntityTest::create(array('name' => 'Test entity ' . $i))->save();
+      EntityTest::create(['name' => 'Test entity ' . $i])->save();
     }
 
     // Load the listing page.
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityOperationsTest.php b/core/modules/system/tests/src/Functional/Entity/EntityOperationsTest.php
index 3919ad1..b020f42 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityOperationsTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityOperationsTest.php
@@ -16,13 +16,13 @@ class EntityOperationsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test');
+  public static $modules = ['entity_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $this->drupalLogin($this->drupalCreateUser(array('administer permissions')));
+    $this->drupalLogin($this->drupalCreateUser(['administer permissions']));
   }
 
   /**
@@ -36,7 +36,7 @@ public function testEntityOperationAlter() {
     $roles = user_roles();
     foreach ($roles as $role) {
       $this->assertLinkByHref($role->url() . '/test_operation');
-      $this->assertLink(format_string('Test Operation: @label', array('@label' => $role->label())));
+      $this->assertLink(format_string('Test Operation: @label', ['@label' => $role->label()]));
     }
   }
 
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityReferenceSelection/EntityReferenceSelectionAccessTest.php b/core/modules/system/tests/src/Functional/Entity/EntityReferenceSelection/EntityReferenceSelectionAccessTest.php
index b01d267..df33102 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityReferenceSelection/EntityReferenceSelectionAccessTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityReferenceSelection/EntityReferenceSelectionAccessTest.php
@@ -26,13 +26,13 @@ class EntityReferenceSelectionAccessTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment');
+  public static $modules = ['node', 'comment'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create an Article node type.
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
   }
 
   /**
@@ -50,10 +50,10 @@ protected function assertReferenceable(array $selection_options, $tests, $handle
 
     foreach ($tests as $test) {
       foreach ($test['arguments'] as $arguments) {
-        $result = call_user_func_array(array($handler, 'getReferenceableEntities'), $arguments);
-        $this->assertEqual($result, $test['result'], format_string('Valid result set returned by @handler.', array('@handler' => $handler_name)));
+        $result = call_user_func_array([$handler, 'getReferenceableEntities'], $arguments);
+        $this->assertEqual($result, $test['result'], format_string('Valid result set returned by @handler.', ['@handler' => $handler_name]));
 
-        $result = call_user_func_array(array($handler, 'countReferenceableEntities'), $arguments);
+        $result = call_user_func_array([$handler, 'countReferenceableEntities'], $arguments);
         if (!empty($test['result'])) {
           $bundle = key($test['result']);
           $count = count($test['result'][$bundle]);
@@ -62,7 +62,7 @@ protected function assertReferenceable(array $selection_options, $tests, $handle
           $count = 0;
         }
 
-        $this->assertEqual($result, $count, format_string('Valid count returned by @handler.', array('@handler' => $handler_name)));
+        $this->assertEqual($result, $count, format_string('Valid count returned by @handler.', ['@handler' => $handler_name]));
       }
     }
   }
@@ -71,39 +71,39 @@ protected function assertReferenceable(array $selection_options, $tests, $handle
    * Test the node-specific overrides of the entity handler.
    */
   public function testNodeHandler() {
-    $selection_options = array(
+    $selection_options = [
       'target_type' => 'node',
       'handler' => 'default',
-      'handler_settings' => array(
+      'handler_settings' => [
         'target_bundles' => NULL,
-      ),
-    );
+      ],
+    ];
 
     // Build a set of test data.
     // Titles contain HTML-special characters to test escaping.
-    $node_values = array(
-      'published1' => array(
+    $node_values = [
+      'published1' => [
         'type' => 'article',
         'status' => NodeInterface::PUBLISHED,
         'title' => 'Node published1 (<&>)',
         'uid' => 1,
-      ),
-      'published2' => array(
+      ],
+      'published2' => [
         'type' => 'article',
         'status' => NodeInterface::PUBLISHED,
         'title' => 'Node published2 (<&>)',
         'uid' => 1,
-      ),
-      'unpublished' => array(
+      ],
+      'unpublished' => [
         'type' => 'article',
         'status' => NodeInterface::NOT_PUBLISHED,
         'title' => 'Node unpublished (<&>)',
         'uid' => 1,
-      ),
-    );
+      ],
+    ];
 
-    $nodes = array();
-    $node_labels = array();
+    $nodes = [];
+    $node_labels = [];
     foreach ($node_values as $key => $values) {
       $node = Node::create($values);
       $node->save();
@@ -112,84 +112,84 @@ public function testNodeHandler() {
     }
 
     // Test as a non-admin.
-    $normal_user = $this->drupalCreateUser(array('access content'));
+    $normal_user = $this->drupalCreateUser(['access content']);
     \Drupal::currentUser()->setAccount($normal_user);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'article' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'article' => [
             $nodes['published1']->id() => $node_labels['published1'],
             $nodes['published2']->id() => $node_labels['published2'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('published1', 'CONTAINS'),
-          array('Published1', 'CONTAINS'),
-        ),
-        'result' => array(
-          'article' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['published1', 'CONTAINS'],
+          ['Published1', 'CONTAINS'],
+        ],
+        'result' => [
+          'article' => [
             $nodes['published1']->id() => $node_labels['published1'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('published2', 'CONTAINS'),
-          array('Published2', 'CONTAINS'),
-        ),
-        'result' => array(
-          'article' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['published2', 'CONTAINS'],
+          ['Published2', 'CONTAINS'],
+        ],
+        'result' => [
+          'article' => [
             $nodes['published2']->id() => $node_labels['published2'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('invalid node', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-      array(
-        'arguments' => array(
-          array('Node unpublished', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-    );
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['invalid node', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+      [
+        'arguments' => [
+          ['Node unpublished', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'Node handler');
 
     // Test as an admin.
-    $admin_user = $this->drupalCreateUser(array('access content', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'bypass node access']);
     \Drupal::currentUser()->setAccount($admin_user);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'article' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'article' => [
             $nodes['published1']->id() => $node_labels['published1'],
             $nodes['published2']->id() => $node_labels['published2'],
             $nodes['unpublished']->id() => $node_labels['unpublished'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('Node unpublished', 'CONTAINS'),
-        ),
-        'result' => array(
-          'article' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['Node unpublished', 'CONTAINS'],
+        ],
+        'result' => [
+          'article' => [
             $nodes['unpublished']->id() => $node_labels['unpublished'],
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'Node handler (admin)');
   }
 
@@ -197,39 +197,39 @@ public function testNodeHandler() {
    * Test the user-specific overrides of the entity handler.
    */
   public function testUserHandler() {
-    $selection_options = array(
+    $selection_options = [
       'target_type' => 'user',
       'handler' => 'default',
-      'handler_settings' => array(
+      'handler_settings' => [
         'target_bundles' => NULL,
         'include_anonymous' => TRUE,
-      ),
-    );
+      ],
+    ];
 
     // Build a set of test data.
-    $user_values = array(
+    $user_values = [
       'anonymous' => User::load(0),
       'admin' => User::load(1),
-      'non_admin' => array(
+      'non_admin' => [
         'name' => 'non_admin <&>',
         'mail' => 'non_admin@example.com',
-        'roles' => array(),
+        'roles' => [],
         'pass' => user_password(),
         'status' => 1,
-      ),
-      'blocked' => array(
+      ],
+      'blocked' => [
         'name' => 'blocked <&>',
         'mail' => 'blocked@example.com',
-        'roles' => array(),
+        'roles' => [],
         'pass' => user_password(),
         'status' => 0,
-      ),
-    );
+      ],
+    ];
 
     $user_values['anonymous']->name = $this->config('user.settings')->get('anonymous');
-    $users = array();
+    $users = [];
 
-    $user_labels = array();
+    $user_labels = [];
     foreach ($user_values as $key => $values) {
       if (is_array($values)) {
         $account = User::create($values);
@@ -244,113 +244,113 @@ public function testUserHandler() {
 
     // Test as a non-admin.
     \Drupal::currentUser()->setAccount($users['non_admin']);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'user' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'user' => [
             $users['admin']->id() => $user_labels['admin'],
             $users['non_admin']->id() => $user_labels['non_admin'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('non_admin', 'CONTAINS'),
-          array('NON_ADMIN', 'CONTAINS'),
-        ),
-        'result' => array(
-          'user' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['non_admin', 'CONTAINS'],
+          ['NON_ADMIN', 'CONTAINS'],
+        ],
+        'result' => [
+          'user' => [
             $users['non_admin']->id() => $user_labels['non_admin'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('invalid user', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-      array(
-        'arguments' => array(
-          array('blocked', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-    );
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['invalid user', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+      [
+        'arguments' => [
+          ['blocked', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'User handler');
 
     \Drupal::currentUser()->setAccount($users['admin']);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'user' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'user' => [
             $users['anonymous']->id() => $user_labels['anonymous'],
             $users['admin']->id() => $user_labels['admin'],
             $users['non_admin']->id() => $user_labels['non_admin'],
             $users['blocked']->id() => $user_labels['blocked'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('blocked', 'CONTAINS'),
-        ),
-        'result' => array(
-          'user' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['blocked', 'CONTAINS'],
+        ],
+        'result' => [
+          'user' => [
             $users['blocked']->id() => $user_labels['blocked'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('Anonymous', 'CONTAINS'),
-          array('anonymous', 'CONTAINS'),
-        ),
-        'result' => array(
-          'user' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['Anonymous', 'CONTAINS'],
+          ['anonymous', 'CONTAINS'],
+        ],
+        'result' => [
+          'user' => [
             $users['anonymous']->id() => $user_labels['anonymous'],
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'User handler (admin)');
 
     // Test the 'include_anonymous' option.
     $selection_options['handler_settings']['include_anonymous'] = FALSE;
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array('Anonymous', 'CONTAINS'),
-          array('anonymous', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-    );
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          ['Anonymous', 'CONTAINS'],
+          ['anonymous', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'User handler (does not include anonymous)');
 
     // Check that the Anonymous user is not included in the results when no
     // label matching is done, for example when using the 'options_select'
     // widget.
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL),
-        ),
-        'result' => array(
-          'user' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL],
+        ],
+        'result' => [
+          'user' => [
             $users['admin']->id() => $user_labels['admin'],
             $users['non_admin']->id() => $user_labels['non_admin'],
             $users['blocked']->id() => $user_labels['blocked'],
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'User handler (does not include anonymous)');
   }
 
@@ -358,30 +358,30 @@ public function testUserHandler() {
    * Test the comment-specific overrides of the entity handler.
    */
   public function testCommentHandler() {
-    $selection_options = array(
+    $selection_options = [
       'target_type' => 'comment',
       'handler' => 'default',
-      'handler_settings' => array(
+      'handler_settings' => [
         'target_bundles' => NULL,
-      ),
-    );
+      ],
+    ];
 
     // Build a set of test data.
-    $node_values = array(
-      'published' => array(
+    $node_values = [
+      'published' => [
         'type' => 'article',
         'status' => 1,
         'title' => 'Node published',
         'uid' => 1,
-      ),
-      'unpublished' => array(
+      ],
+      'unpublished' => [
         'type' => 'article',
         'status' => 0,
         'title' => 'Node unpublished',
         'uid' => 1,
-      ),
-    );
-    $nodes = array();
+      ],
+    ];
+    $nodes = [];
     foreach ($node_values as $key => $values) {
       $node = Node::create($values);
       $node->save();
@@ -391,8 +391,8 @@ public function testCommentHandler() {
     // Create comment field on article.
     $this->addDefaultCommentField('node', 'article');
 
-    $comment_values = array(
-      'published_published' => array(
+    $comment_values = [
+      'published_published' => [
         'entity_id' => $nodes['published']->id(),
         'entity_type' => 'node',
         'field_name' => 'comment',
@@ -402,8 +402,8 @@ public function testCommentHandler() {
         'status' => CommentInterface::PUBLISHED,
         'subject' => 'Comment Published <&>',
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      ),
-      'published_unpublished' => array(
+      ],
+      'published_unpublished' => [
         'entity_id' => $nodes['published']->id(),
         'entity_type' => 'node',
         'field_name' => 'comment',
@@ -413,8 +413,8 @@ public function testCommentHandler() {
         'status' => CommentInterface::NOT_PUBLISHED,
         'subject' => 'Comment Unpublished <&>',
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      ),
-      'unpublished_published' => array(
+      ],
+      'unpublished_published' => [
         'entity_id' => $nodes['unpublished']->id(),
         'entity_type' => 'node',
         'field_name' => 'comment',
@@ -424,11 +424,11 @@ public function testCommentHandler() {
         'status' => CommentInterface::NOT_PUBLISHED,
         'subject' => 'Comment Published on Unpublished node <&>',
         'language' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
-      ),
-    );
+      ],
+    ];
 
-    $comments = array();
-    $comment_labels = array();
+    $comments = [];
+    $comment_labels = [];
     foreach ($comment_values as $key => $values) {
       $comment = Comment::create($values);
       $comment->save();
@@ -437,79 +437,79 @@ public function testCommentHandler() {
     }
 
     // Test as a non-admin.
-    $normal_user = $this->drupalCreateUser(array('access content', 'access comments'));
+    $normal_user = $this->drupalCreateUser(['access content', 'access comments']);
     \Drupal::currentUser()->setAccount($normal_user);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'comment' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'comment' => [
             $comments['published_published']->cid->value => $comment_labels['published_published'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('Published', 'CONTAINS'),
-        ),
-        'result' => array(
-          'comment' => array(
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['Published', 'CONTAINS'],
+        ],
+        'result' => [
+          'comment' => [
             $comments['published_published']->cid->value => $comment_labels['published_published'],
-          ),
-        ),
-      ),
-      array(
-        'arguments' => array(
-          array('invalid comment', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-      array(
-        'arguments' => array(
-          array('Comment Unpublished', 'CONTAINS'),
-        ),
-        'result' => array(),
-      ),
-    );
+          ],
+        ],
+      ],
+      [
+        'arguments' => [
+          ['invalid comment', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+      [
+        'arguments' => [
+          ['Comment Unpublished', 'CONTAINS'],
+        ],
+        'result' => [],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'Comment handler');
 
     // Test as a comment admin.
-    $admin_user = $this->drupalCreateUser(array('access content', 'access comments', 'administer comments'));
+    $admin_user = $this->drupalCreateUser(['access content', 'access comments', 'administer comments']);
     \Drupal::currentUser()->setAccount($admin_user);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'comment' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'comment' => [
             $comments['published_published']->cid->value => $comment_labels['published_published'],
             $comments['published_unpublished']->cid->value => $comment_labels['published_unpublished'],
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'Comment handler (comment admin)');
 
     // Test as a node and comment admin.
-    $admin_user = $this->drupalCreateUser(array('access content', 'access comments', 'administer comments', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content', 'access comments', 'administer comments', 'bypass node access']);
     \Drupal::currentUser()->setAccount($admin_user);
-    $referenceable_tests = array(
-      array(
-        'arguments' => array(
-          array(NULL, 'CONTAINS'),
-        ),
-        'result' => array(
-          'comment' => array(
+    $referenceable_tests = [
+      [
+        'arguments' => [
+          [NULL, 'CONTAINS'],
+        ],
+        'result' => [
+          'comment' => [
             $comments['published_published']->cid->value => $comment_labels['published_published'],
             $comments['published_unpublished']->cid->value => $comment_labels['published_unpublished'],
             $comments['unpublished_published']->cid->value => $comment_labels['unpublished_published'],
-          ),
-        ),
-      ),
-    );
+          ],
+        ],
+      ],
+    ];
     $this->assertReferenceable($selection_options, $referenceable_tests, 'Comment handler (comment + node admin)');
   }
 
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityRevisionsTest.php b/core/modules/system/tests/src/Functional/Entity/EntityRevisionsTest.php
index ccc48df..38db0e9 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityRevisionsTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityRevisionsTest.php
@@ -19,7 +19,7 @@ class EntityRevisionsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'language');
+  public static $modules = ['entity_test', 'language'];
 
   /**
    * A user with permission to administer entity_test content.
@@ -32,10 +32,10 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in user.
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'administer entity_test content',
       'view test entity',
-    ));
+    ]);
     $this->drupalLogin($this->webUser);
 
     // Enable an additional language.
@@ -64,17 +64,17 @@ protected function runRevisionsTests($entity_type) {
     // Create initial entity.
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($entity_type)
-      ->create(array(
+      ->create([
         'name' => 'foo',
         'user_id' => $this->webUser->id(),
-      ));
+      ]);
     $entity->field_test_text->value = 'bar';
     $entity->save();
 
-    $names = array();
-    $texts = array();
-    $created = array();
-    $revision_ids = array();
+    $names = [];
+    $texts = [];
+    $created = [];
+    $revision_ids = [];
 
     // Create three revisions.
     $revision_count = 3;
@@ -93,9 +93,9 @@ protected function runRevisionsTests($entity_type) {
       $revision_ids[] = $entity->revision_id->value;
 
       // Check that the fields and properties contain new content.
-      $this->assertTrue($entity->revision_id->value > $legacy_revision_id, format_string('%entity_type: Revision ID changed.', array('%entity_type' => $entity_type)));
-      $this->assertNotEqual($entity->name->value, $legacy_name, format_string('%entity_type: Name changed.', array('%entity_type' => $entity_type)));
-      $this->assertNotEqual($entity->field_test_text->value, $legacy_text, format_string('%entity_type: Text changed.', array('%entity_type' => $entity_type)));
+      $this->assertTrue($entity->revision_id->value > $legacy_revision_id, format_string('%entity_type: Revision ID changed.', ['%entity_type' => $entity_type]));
+      $this->assertNotEqual($entity->name->value, $legacy_name, format_string('%entity_type: Name changed.', ['%entity_type' => $entity_type]));
+      $this->assertNotEqual($entity->field_test_text->value, $legacy_text, format_string('%entity_type: Text changed.', ['%entity_type' => $entity_type]));
     }
 
     $storage = $this->container->get('entity_type.manager')->getStorage($entity_type);
@@ -104,13 +104,13 @@ protected function runRevisionsTests($entity_type) {
       $entity_revision = $storage->loadRevision($revision_ids[$i]);
 
       // Check if properties and fields contain the revision specific content.
-      $this->assertEqual($entity_revision->revision_id->value, $revision_ids[$i], format_string('%entity_type: Revision ID matches.', array('%entity_type' => $entity_type)));
-      $this->assertEqual($entity_revision->name->value, $names[$i], format_string('%entity_type: Name matches.', array('%entity_type' => $entity_type)));
-      $this->assertEqual($entity_revision->field_test_text->value, $texts[$i], format_string('%entity_type: Text matches.', array('%entity_type' => $entity_type)));
+      $this->assertEqual($entity_revision->revision_id->value, $revision_ids[$i], format_string('%entity_type: Revision ID matches.', ['%entity_type' => $entity_type]));
+      $this->assertEqual($entity_revision->name->value, $names[$i], format_string('%entity_type: Name matches.', ['%entity_type' => $entity_type]));
+      $this->assertEqual($entity_revision->field_test_text->value, $texts[$i], format_string('%entity_type: Text matches.', ['%entity_type' => $entity_type]));
 
       // Check non-revisioned values are loaded.
-      $this->assertTrue(isset($entity_revision->created->value), format_string('%entity_type: Non-revisioned field is loaded.', array('%entity_type' => $entity_type)));
-      $this->assertEqual($entity_revision->created->value, $created[2], format_string('%entity_type: Non-revisioned field value is the same between revisions.', array('%entity_type' => $entity_type)));
+      $this->assertTrue(isset($entity_revision->created->value), format_string('%entity_type: Non-revisioned field is loaded.', ['%entity_type' => $entity_type]));
+      $this->assertEqual($entity_revision->created->value, $created[2], format_string('%entity_type: Non-revisioned field value is the same between revisions.', ['%entity_type' => $entity_type]));
     }
 
     // Confirm the correct revision text appears in the edit form.
@@ -118,8 +118,8 @@ protected function runRevisionsTests($entity_type) {
       ->getStorage($entity_type)
       ->load($entity->id->value);
     $this->drupalGet($entity_type . '/manage/' . $entity->id->value . '/edit');
-    $this->assertFieldById('edit-name-0-value', $entity->name->value, format_string('%entity_type: Name matches in UI.', array('%entity_type' => $entity_type)));
-    $this->assertFieldById('edit-field-test-text-0-value', $entity->field_test_text->value, format_string('%entity_type: Text matches in UI.', array('%entity_type' => $entity_type)));
+    $this->assertFieldById('edit-name-0-value', $entity->name->value, format_string('%entity_type: Name matches in UI.', ['%entity_type' => $entity_type]));
+    $this->assertFieldById('edit-field-test-text-0-value', $entity->field_test_text->value, format_string('%entity_type: Text matches in UI.', ['%entity_type' => $entity_type]));
   }
 
   /**
diff --git a/core/modules/system/tests/src/Functional/Entity/EntityViewControllerTest.php b/core/modules/system/tests/src/Functional/Entity/EntityViewControllerTest.php
index 8718929..11a9b2e 100644
--- a/core/modules/system/tests/src/Functional/Entity/EntityViewControllerTest.php
+++ b/core/modules/system/tests/src/Functional/Entity/EntityViewControllerTest.php
@@ -17,14 +17,14 @@ class EntityViewControllerTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('entity_test');
+  public static $modules = ['entity_test'];
 
   /**
    * Array of test entities.
    *
    * @var array
    */
-  protected $entities = array();
+  protected $entities = [];
 
   protected function setUp() {
     parent::setUp();
@@ -86,7 +86,7 @@ function testEntityViewController() {
   public function testFieldItemAttributes() {
     // Make sure the test field will be rendered.
     entity_get_display('entity_test', 'entity_test', 'default')
-      ->setComponent('field_test_text', array('type' => 'text_default'))
+      ->setComponent('field_test_text', ['type' => 'text_default'])
       ->save();
 
     // Create an entity and save test value in field_test_text.
@@ -98,24 +98,24 @@ public function testFieldItemAttributes() {
     // Browse to the entity and verify that the attribute is rendered in the
     // field item HTML markup.
     $this->drupalGet('entity_test/' . $entity->id());
-    $xpath = $this->xpath('//div[@data-field-item-attr="foobar"]/p[text()=:value]', array(':value' => $test_value));
+    $xpath = $this->xpath('//div[@data-field-item-attr="foobar"]/p[text()=:value]', [':value' => $test_value]);
     $this->assertTrue($xpath, 'The field item attribute has been found in the rendered output of the field.');
 
     // Enable the RDF module to ensure that two modules can add attributes to
     // the same field item.
-    \Drupal::service('module_installer')->install(array('rdf'));
+    \Drupal::service('module_installer')->install(['rdf']);
     $this->resetAll();
 
     // Set an RDF mapping for the field_test_text field. This RDF mapping will
     // be turned into RDFa attributes in the field item output.
     $mapping = rdf_get_mapping('entity_test', 'entity_test');
-    $mapping->setFieldMapping('field_test_text', array(
-      'properties' => array('schema:text'),
-    ))->save();
+    $mapping->setFieldMapping('field_test_text', [
+      'properties' => ['schema:text'],
+    ])->save();
     // Browse to the entity and verify that the attributes from both modules
     // are rendered in the field item HTML markup.
     $this->drupalGet('entity_test/' . $entity->id());
-    $xpath = $this->xpath('//div[@data-field-item-attr="foobar" and @property="schema:text"]/p[text()=:value]', array(':value' => $test_value));
+    $xpath = $this->xpath('//div[@data-field-item-attr="foobar" and @property="schema:text"]/p[text()=:value]', [':value' => $test_value]);
     $this->assertTrue($xpath, 'The field item attributes from both modules have been found in the rendered output of the field.');
   }
 
@@ -139,10 +139,10 @@ public function testEntityViewControllerViewBuilder() {
    *   The created entity.
    */
   protected function createTestEntity($entity_type) {
-    $data = array(
+    $data = [
       'bundle' => $entity_type,
       'name' => $this->randomMachineName(),
-    );
+    ];
     return $this->container->get('entity.manager')->getStorage($entity_type)->create($data);
   }
 
diff --git a/core/modules/system/tests/src/Functional/File/ConfigTest.php b/core/modules/system/tests/src/Functional/File/ConfigTest.php
index ea73322..9ac71dc 100644
--- a/core/modules/system/tests/src/Functional/File/ConfigTest.php
+++ b/core/modules/system/tests/src/Functional/File/ConfigTest.php
@@ -13,7 +13,7 @@ class ConfigTest extends BrowserTestBase {
 
   protected function setUp(){
     parent::setUp();
-    $this->drupalLogin ($this->drupalCreateUser(array('administer site configuration')));
+    $this->drupalLogin ($this->drupalCreateUser(['administer site configuration']));
   }
 
   /**
@@ -26,10 +26,10 @@ function testFileConfigurationPage() {
     // The respective directories are created automatically
     // upon form submission.
     $file_path = $this->publicFilesDirectory;
-    $fields = array(
+    $fields = [
       'file_temporary_path' => $file_path . '/file_config_page_test/temporary',
       'file_default_scheme' => 'private',
-    );
+    ];
 
     // Check that public and private can be selected as default scheme.
     $this->assertText('Public local files served by the webserver.');
@@ -43,10 +43,10 @@ function testFileConfigurationPage() {
 
     // Remove the private path, rebuild the container and verify that private
     // can no longer be selected in the UI.
-    $settings['settings']['file_private_path'] = (object) array(
+    $settings['settings']['file_private_path'] = (object) [
       'value' => '',
       'required' => TRUE,
-    );
+    ];
     $this->writeSettings($settings);
     $this->rebuildContainer();
 
diff --git a/core/modules/system/tests/src/Functional/FileTransfer/FileTransferTest.php b/core/modules/system/tests/src/Functional/FileTransfer/FileTransferTest.php
index 985e21a..85d624d 100644
--- a/core/modules/system/tests/src/Functional/FileTransfer/FileTransferTest.php
+++ b/core/modules/system/tests/src/Functional/FileTransfer/FileTransferTest.php
@@ -20,20 +20,20 @@ class FileTransferTest extends BrowserTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $this->testConnection = TestFileTransfer::factory(\Drupal::root(), array('hostname' => $this->hostname, 'username' => $this->username, 'password' => $this->password, 'port' => $this->port));
+    $this->testConnection = TestFileTransfer::factory(\Drupal::root(), ['hostname' => $this->hostname, 'username' => $this->username, 'password' => $this->password, 'port' => $this->port]);
   }
 
   function _getFakeModuleFiles() {
-    $files = array(
+    $files = [
       'fake.module',
       'fake.info.yml',
-      'theme' => array(
+      'theme' => [
         'fake.html.twig'
-      ),
-      'inc' => array(
+      ],
+      'inc' => [
         'fake.inc'
-      )
-    );
+      ]
+    ];
     return $files;
   }
 
@@ -41,7 +41,7 @@ function _buildFakeModule() {
     $location = 'temporary://fake';
     if (is_dir($location)) {
       $ret = 0;
-      $output = array();
+      $output = [];
       exec('rm -Rf ' . escapeshellarg($location), $output, $ret);
       if ($ret != 0) {
         throw new Exception('Error removing fake module directory.');
@@ -53,7 +53,7 @@ function _buildFakeModule() {
     return $location;
   }
 
-  function _writeDirectory($base, $files = array()) {
+  function _writeDirectory($base, $files = []) {
     mkdir($base);
     foreach ($files as $key => $file) {
       if (is_array($file)) {
diff --git a/core/modules/system/tests/src/Functional/FileTransfer/MockTestConnection.php b/core/modules/system/tests/src/Functional/FileTransfer/MockTestConnection.php
index 6d877b2..e645f4e 100644
--- a/core/modules/system/tests/src/Functional/FileTransfer/MockTestConnection.php
+++ b/core/modules/system/tests/src/Functional/FileTransfer/MockTestConnection.php
@@ -7,7 +7,7 @@
  */
 class MockTestConnection {
 
-  protected $commandsRun = array();
+  protected $commandsRun = [];
   public $connectionString;
 
   function run($cmd) {
@@ -16,7 +16,7 @@ function run($cmd) {
 
   function flushCommands() {
     $out = $this->commandsRun;
-    $this->commandsRun = array();
+    $this->commandsRun = [];
     return $out;
   }
 
diff --git a/core/modules/system/tests/src/Functional/FileTransfer/TestFileTransfer.php b/core/modules/system/tests/src/Functional/FileTransfer/TestFileTransfer.php
index 04e282f..e02ee98 100644
--- a/core/modules/system/tests/src/Functional/FileTransfer/TestFileTransfer.php
+++ b/core/modules/system/tests/src/Functional/FileTransfer/TestFileTransfer.php
@@ -46,7 +46,7 @@ function createDirectoryJailed($directory) {
 
   function removeFileJailed($destination) {
     if (!ftp_delete($this->connection, $item)) {
-      throw new FileTransferException('Unable to remove to file @file.', NULL, array('@file' => $item));
+      throw new FileTransferException('Unable to remove to file @file.', NULL, ['@file' => $item]);
     }
   }
 
diff --git a/core/modules/system/tests/src/Functional/Form/ElementsAccessTest.php b/core/modules/system/tests/src/Functional/Form/ElementsAccessTest.php
index 0684c3d..1a92893 100644
--- a/core/modules/system/tests/src/Functional/Form/ElementsAccessTest.php
+++ b/core/modules/system/tests/src/Functional/Form/ElementsAccessTest.php
@@ -16,7 +16,7 @@ class ElementsAccessTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   /**
    * Ensures that child values are still processed when #access = FALSE.
diff --git a/core/modules/system/tests/src/Functional/Form/FormObjectTest.php b/core/modules/system/tests/src/Functional/Form/FormObjectTest.php
index a031198..67d7ecb 100644
--- a/core/modules/system/tests/src/Functional/Form/FormObjectTest.php
+++ b/core/modules/system/tests/src/Functional/Form/FormObjectTest.php
@@ -17,19 +17,19 @@ class FormObjectTest extends SystemConfigFormTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test');
+  public static $modules = ['form_test'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->form = new FormTestObject($this->container->get('config.factory'));
-    $this->values = array(
-      'bananas' => array(
+    $this->values = [
+      'bananas' => [
         '#value' => $this->randomString(10),
         '#config_name' => 'form_test.object',
         '#config_key' => 'bananas',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -44,7 +44,7 @@ function testObjectFormCallback() {
     $this->assertText('The FormTestObject::buildForm() method was used for this form.');
     $elements = $this->xpath('//form[@id="form-test-form-test-object"]');
     $this->assertTrue(!empty($elements), 'The correct form ID was used.');
-    $this->drupalPostForm(NULL, array('bananas' => 'green'), t('Save'));
+    $this->drupalPostForm(NULL, ['bananas' => 'green'], t('Save'));
     $this->assertText('The FormTestObject::validateForm() method was used for this form.');
     $this->assertText('The FormTestObject::submitForm() method was used for this form.');
     $value = $config_factory->get('form_test.object')->get('bananas');
@@ -64,7 +64,7 @@ function testObjectFormCallback() {
     $this->assertText('The FormTestServiceObject::buildForm() method was used for this form.');
     $elements = $this->xpath('//form[@id="form-test-form-test-service-object"]');
     $this->assertTrue(!empty($elements), 'The correct form ID was used.');
-    $this->drupalPostForm(NULL, array('bananas' => 'brown'), t('Save'));
+    $this->drupalPostForm(NULL, ['bananas' => 'brown'], t('Save'));
     $this->assertText('The FormTestServiceObject::validateForm() method was used for this form.');
     $this->assertText('The FormTestServiceObject::submitForm() method was used for this form.');
     $value = $config_factory->get('form_test.object')->get('bananas');
@@ -77,7 +77,7 @@ function testObjectFormCallback() {
     $this->assertTrue(!empty($elements), 'The correct form ID was used.');
     $this->assertText('custom_value', 'Ensure parameters are injected from request attributes.');
     $this->assertText('request_value', 'Ensure the request object is injected.');
-    $this->drupalPostForm(NULL, array('bananas' => 'black'), t('Save'));
+    $this->drupalPostForm(NULL, ['bananas' => 'black'], t('Save'));
     $this->assertText('The FormTestControllerObject::validateForm() method was used for this form.');
     $this->assertText('The FormTestControllerObject::submitForm() method was used for this form.');
     $value = $config_factory->get('form_test.object')->get('bananas');
diff --git a/core/modules/system/tests/src/Functional/Form/ModulesListFormWebTest.php b/core/modules/system/tests/src/Functional/Form/ModulesListFormWebTest.php
index 640a60d..dc63e64 100644
--- a/core/modules/system/tests/src/Functional/Form/ModulesListFormWebTest.php
+++ b/core/modules/system/tests/src/Functional/Form/ModulesListFormWebTest.php
@@ -14,7 +14,7 @@ class ModulesListFormWebTest extends BrowserTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('system_test', 'help');
+  public static $modules = ['system_test', 'help'];
 
   /**
    * {@inheritdoc}
@@ -30,7 +30,7 @@ protected function setUp() {
   public function testModuleListForm() {
     $this->drupalLogin(
       $this->drupalCreateUser(
-        array('administer modules', 'administer permissions')
+        ['administer modules', 'administer permissions']
       )
     );
     $this->drupalGet('admin/modules');
diff --git a/core/modules/system/tests/src/Functional/Form/RedirectTest.php b/core/modules/system/tests/src/Functional/Form/RedirectTest.php
index d369b9c..6c09c2d 100644
--- a/core/modules/system/tests/src/Functional/Form/RedirectTest.php
+++ b/core/modules/system/tests/src/Functional/Form/RedirectTest.php
@@ -16,60 +16,60 @@ class RedirectTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('form_test', 'block');
+  public static $modules = ['form_test', 'block'];
 
   /**
    * Tests form redirection.
    */
   function testRedirect() {
     $path = 'form-test/redirect';
-    $options = array('query' => array('foo' => 'bar'));
+    $options = ['query' => ['foo' => 'bar']];
     $options['absolute'] = TRUE;
 
     // Test basic redirection.
-    $edit = array(
+    $edit = [
       'redirection' => TRUE,
       'destination' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'));
-    $this->assertUrl($edit['destination'], array(), 'Basic redirection works.');
+    $this->assertUrl($edit['destination'], [], 'Basic redirection works.');
 
 
     // Test without redirection.
-    $edit = array(
+    $edit = [
       'redirection' => FALSE,
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'));
-    $this->assertUrl($path, array(), 'When redirect is set to FALSE, there should be no redirection.');
+    $this->assertUrl($path, [], 'When redirect is set to FALSE, there should be no redirection.');
 
     // Test redirection with query parameters.
-    $edit = array(
+    $edit = [
       'redirection' => TRUE,
       'destination' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'), $options);
-    $this->assertUrl($edit['destination'], array(), 'Redirection with query parameters works.');
+    $this->assertUrl($edit['destination'], [], 'Redirection with query parameters works.');
 
     // Test without redirection but with query parameters.
-    $edit = array(
+    $edit = [
       'redirection' => FALSE,
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'), $options);
     $this->assertUrl($path, $options, 'When redirect is set to FALSE, there should be no redirection, and the query parameters should be passed along.');
 
     // Test redirection back to the original path.
-    $edit = array(
+    $edit = [
       'redirection' => TRUE,
       'destination' => '',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'));
-    $this->assertUrl($path, array(), 'When using an empty redirection string, there should be no redirection.');
+    $this->assertUrl($path, [], 'When using an empty redirection string, there should be no redirection.');
 
     // Test redirection back to the original path with query parameters.
-    $edit = array(
+    $edit = [
       'redirection' => TRUE,
       'destination' => '',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Submit'), $options);
     $this->assertUrl($path, $options, 'When using an empty redirection string, there should be no redirection, and the query parameters should be passed along.');
   }
@@ -82,15 +82,15 @@ public function testRedirectFromErrorPages() {
     $this->drupalPlaceBlock('redirect_form_block');
 
     // Create a user that does not have permission to administer blocks.
-    $user = $this->drupalCreateUser(array('administer themes'));
+    $user = $this->drupalCreateUser(['administer themes']);
     $this->drupalLogin($user);
 
     // Visit page 'foo' (404 page) and submit the form. Verify it ends up
     // at the right URL.
-    $expected = \Drupal::url('form_test.route1', array(), array('query' => array('test1' => 'test2'), 'absolute' => TRUE));
+    $expected = \Drupal::url('form_test.route1', [], ['query' => ['test1' => 'test2'], 'absolute' => TRUE]);
     $this->drupalGet('foo');
     $this->assertResponse(404);
-    $this->drupalPostForm(NULL, array(), t('Submit'));
+    $this->drupalPostForm(NULL, [], t('Submit'));
     $this->assertResponse(200);
     $this->assertUrl($expected, [], 'Redirected to correct URL/query.');
 
@@ -98,7 +98,7 @@ public function testRedirectFromErrorPages() {
     // ends up at the right URL.
     $this->drupalGet('admin/structure/block');
     $this->assertResponse(403);
-    $this->drupalPostForm(NULL, array(), t('Submit'));
+    $this->drupalPostForm(NULL, [], t('Submit'));
     $this->assertResponse(200);
     $this->assertUrl($expected, [], 'Redirected to correct URL/query.');
   }
diff --git a/core/modules/system/tests/src/Functional/Lock/LockFunctionalTest.php b/core/modules/system/tests/src/Functional/Lock/LockFunctionalTest.php
index 5e20121..0b13f18 100644
--- a/core/modules/system/tests/src/Functional/Lock/LockFunctionalTest.php
+++ b/core/modules/system/tests/src/Functional/Lock/LockFunctionalTest.php
@@ -16,7 +16,7 @@ class LockFunctionalTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   /**
    * Confirms that we can acquire and release locks in two parallel requests.
diff --git a/core/modules/system/tests/src/Functional/Mail/HtmlToTextTest.php b/core/modules/system/tests/src/Functional/Mail/HtmlToTextTest.php
index cbcf87f..bdbfd74 100644
--- a/core/modules/system/tests/src/Functional/Mail/HtmlToTextTest.php
+++ b/core/modules/system/tests/src/Functional/Mail/HtmlToTextTest.php
@@ -27,8 +27,8 @@ class HtmlToTextTest extends BrowserTestBase {
   protected function stringToHtml($text) {
     return '"' .
       str_replace(
-        array("\n", ' '),
-        array('\n', '&nbsp;'),
+        ["\n", ' '],
+        ['\n', '&nbsp;'],
         Html::escape($text)
       ) . '"';
   }
@@ -68,7 +68,7 @@ protected function assertHtmlToText($html, $text, $message, $allowed_tags = NULL
    */
   public function testTags() {
     global $base_path, $base_url;
-    $tests = array(
+    $tests = [
       // @todo Trailing linefeeds should be trimmed.
       '<a href = "https://www.drupal.org">Drupal.org</a>' => "Drupal.org [1]\n\n[1] https://www.drupal.org\n",
       // @todo Footer URLs should be absolute.
@@ -151,7 +151,7 @@ public function testTags() {
       // A couple of tests for Unicode characters.
       '<q>I <em>will</em> be back…</q>' => "I /will/ be back…\n",
       'FrançAIS is ÜBER-åwesome' => "FrançAIS is ÜBER-åwesome\n",
-    );
+    ];
 
     foreach ($tests as $html => $text) {
       $this->assertHtmlToText($html, $text, 'Supported tags');
@@ -168,27 +168,27 @@ public function testDrupalHtmlToTextArgs() {
       'Drupal <b>Drupal</b> Drupal',
       "Drupal *Drupal* Drupal\n",
       'Allowed <b> tag found',
-      array('b')
+      ['b']
     );
     $this->assertHtmlToText(
       'Drupal <h1>Drupal</h1> Drupal',
       "Drupal Drupal Drupal\n",
       'Disallowed <h1> tag not found',
-      array('b')
+      ['b']
     );
 
     $this->assertHtmlToText(
       'Drupal <p><em><b>Drupal</b></em><p> Drupal',
       "Drupal Drupal Drupal\n",
       'Disallowed <p>, <em>, and <b> tags not found',
-      array('a', 'br', 'h1')
+      ['a', 'br', 'h1']
     );
 
     $this->assertHtmlToText(
       '<html><body>Drupal</body></html>',
       "Drupal\n",
       'Unsupported <html> and <body> tags not found',
-      array('html', 'body')
+      ['html', 'body']
     );
   }
 
@@ -203,7 +203,7 @@ public function testDrupalHtmltoTextCollapsesWhitespace() {
       $input,
       $collapsed,
       'Whitespace is collapsed',
-      array('p')
+      ['p']
     );
   }
 
@@ -312,17 +312,17 @@ public function testFootnoteReferences() {
    * and spaces are properly handled.
    */
   public function testDrupalHtmlToTextParagraphs() {
-    $tests = array();
-    $tests[] = array(
+    $tests = [];
+    $tests[] = [
         'html' => "<p>line 1<br />\nline 2<br />line 3\n<br />line 4</p><p>paragraph</p>",
         // @todo Trailing line breaks should be trimmed.
         'text' => "line 1\nline 2\nline 3\nline 4\n\nparagraph\n\n",
-    );
-    $tests[] = array(
+    ];
+    $tests[] = [
       'html' => "<p>line 1<br /> line 2</p> <p>line 4<br /> line 5</p> <p>0</p>",
       // @todo Trailing line breaks should be trimmed.
       'text' => "line 1\nline 2\n\nline 4\nline 5\n\n0\n\n",
-    );
+    ];
     foreach ($tests as $test) {
       $this->assertHtmlToText($test['html'], $test['text'], 'Paragraph breaks');
     }
diff --git a/core/modules/system/tests/src/Functional/Mail/MailTest.php b/core/modules/system/tests/src/Functional/Mail/MailTest.php
index 6550f09..74549a3 100644
--- a/core/modules/system/tests/src/Functional/Mail/MailTest.php
+++ b/core/modules/system/tests/src/Functional/Mail/MailTest.php
@@ -18,7 +18,7 @@ class MailTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('simpletest', 'system_mail_failure_test');
+  public static $modules = ['simpletest', 'system_mail_failure_test'];
 
   /**
    * Assert that the pluggable mail system is functional.
@@ -28,7 +28,7 @@ public function testPluggableFramework() {
     $this->config('system.mail')->set('interface.default', 'test_php_mail_failure')->save();
 
     // Get the default MailInterface class instance.
-    $mail_backend = \Drupal::service('plugin.manager.mail')->getInstance(array('module' => 'default', 'key' => 'default'));
+    $mail_backend = \Drupal::service('plugin.manager.mail')->getInstance(['module' => 'default', 'key' => 'default']);
 
     // Assert whether the default mail backend is an instance of the expected
     // class.
@@ -38,7 +38,7 @@ public function testPluggableFramework() {
     $this->config('system.mail')->set('interface.mymodule_testkey', 'test_mail_collector')->save();
 
     // Get the added MailInterface class instance.
-    $mail_backend = \Drupal::service('plugin.manager.mail')->getInstance(array('module' => 'mymodule', 'key' => 'testkey'));
+    $mail_backend = \Drupal::service('plugin.manager.mail')->getInstance(['module' => 'mymodule', 'key' => 'testkey']);
 
     // Assert whether the added mail backend is an instance of the expected
     // class.
@@ -56,7 +56,7 @@ public function testCancelMessage() {
     // Use the state system collector mail backend.
     $this->config('system.mail')->set('interface.default', 'test_mail_collector')->save();
     // Reset the state variable that holds sent messages.
-    \Drupal::state()->set('system.test_mail_collector', array());
+    \Drupal::state()->set('system.test_mail_collector', []);
 
     // Send a test message that simpletest_mail_alter should cancel.
     \Drupal::service('plugin.manager.mail')->mail('simpletest', 'cancel_test', 'cancel@example.com', $language_interface->getId());
@@ -77,11 +77,11 @@ public function testFromAndReplyToHeader() {
     // Use the state system collector mail backend.
     $this->config('system.mail')->set('interface.default', 'test_mail_collector')->save();
     // Reset the state variable that holds sent messages.
-    \Drupal::state()->set('system.test_mail_collector', array());
+    \Drupal::state()->set('system.test_mail_collector', []);
     // Send an email with a reply-to address specified.
     $from_email = 'Drupal <simpletest@example.com>';
     $reply_email = 'someone_else@example.com';
-    \Drupal::service('plugin.manager.mail')->mail('simpletest', 'from_test', 'from_test@example.com', $language, array(), $reply_email);
+    \Drupal::service('plugin.manager.mail')->mail('simpletest', 'from_test', 'from_test@example.com', $language, [], $reply_email);
     // Test that the reply-to email is just the email and not the site name
     // and default sender email.
     $captured_emails = \Drupal::state()->get('system.test_mail_collector');
diff --git a/core/modules/system/tests/src/Functional/Menu/MenuAccessTest.php b/core/modules/system/tests/src/Functional/Menu/MenuAccessTest.php
index 3156823..10af396 100644
--- a/core/modules/system/tests/src/Functional/Menu/MenuAccessTest.php
+++ b/core/modules/system/tests/src/Functional/Menu/MenuAccessTest.php
@@ -56,10 +56,10 @@ public function testMenuBlockLinksAccessCheck() {
     // Attempt to access a restricted local task.
     $this->drupalGet('foo/asdf/c');
     $this->assertResponse(403);
-    $elements = $this->xpath('//ul[@class=:class]/li/a[@href=:href]', array(
+    $elements = $this->xpath('//ul[@class=:class]/li/a[@href=:href]', [
       ':class' => 'tabs primary',
       ':href' => Url::fromRoute('menu_test.router_test1', ['bar' => 'asdf'])->toString(),
-    ));
+    ]);
     $this->assertTrue(empty($elements), 'No tab linking to foo/asdf found');
     $this->assertNoLinkByHref('foo/asdf/b');
     $this->assertNoLinkByHref('foo/asdf/c');
diff --git a/core/modules/system/tests/src/Functional/Module/ClassLoaderTest.php b/core/modules/system/tests/src/Functional/Module/ClassLoaderTest.php
index a927239..9a81499a2 100644
--- a/core/modules/system/tests/src/Functional/Module/ClassLoaderTest.php
+++ b/core/modules/system/tests/src/Functional/Module/ClassLoaderTest.php
@@ -23,7 +23,7 @@ class ClassLoaderTest extends BrowserTestBase {
    */
   function testClassLoading() {
     // Enable the module_test and module_autoload_test modules.
-    \Drupal::service('module_installer')->install(array('module_test', 'module_autoload_test'), FALSE);
+    \Drupal::service('module_installer')->install(['module_test', 'module_autoload_test'], FALSE);
     $this->resetAll();
     // Check twice to test an unprimed and primed system_list() cache.
     for ($i = 0; $i < 2; $i++) {
@@ -40,7 +40,7 @@ function testClassLoading() {
    */
   function testClassLoadingNotInstalledModules() {
     // Enable the module_test module.
-    \Drupal::service('module_installer')->install(array('module_test'), FALSE);
+    \Drupal::service('module_installer')->install(['module_test'], FALSE);
     $this->resetAll();
     // Check twice to test an unprimed and primed system_list() cache.
     for ($i = 0; $i < 2; $i++) {
@@ -57,10 +57,10 @@ function testClassLoadingNotInstalledModules() {
    */
   function testClassLoadingDisabledModules() {
     // Enable the module_test and module_autoload_test modules.
-    \Drupal::service('module_installer')->install(array('module_test', 'module_autoload_test'), FALSE);
+    \Drupal::service('module_installer')->install(['module_test', 'module_autoload_test'], FALSE);
     $this->resetAll();
     // Ensure that module_autoload_test is disabled.
-    $this->container->get('module_installer')->uninstall(array('module_autoload_test'), FALSE);
+    $this->container->get('module_installer')->uninstall(['module_autoload_test'], FALSE);
     $this->resetAll();
     // Check twice to test an unprimed and primed system_list() cache.
     for ($i = 0; $i < 2; $i++) {
diff --git a/core/modules/system/tests/src/Functional/Module/InstallTest.php b/core/modules/system/tests/src/Functional/Module/InstallTest.php
index db0d1d3..ccbca6d 100644
--- a/core/modules/system/tests/src/Functional/Module/InstallTest.php
+++ b/core/modules/system/tests/src/Functional/Module/InstallTest.php
@@ -17,7 +17,7 @@ class InstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('module_test');
+  public static $modules = ['module_test'];
 
   /**
    * Verify that drupal_get_schema() can be used during module installation.
@@ -36,7 +36,7 @@ public function testGetSchemaAtInstallTime() {
    * be an array.
    */
   public function testEnableUserTwice() {
-    \Drupal::service('module_installer')->install(array('user'), FALSE);
+    \Drupal::service('module_installer')->install(['user'], FALSE);
     $this->assertIdentical($this->config('core.extension')->get('module.user'), 0);
   }
 
@@ -70,9 +70,9 @@ public function testUninstallPostUpdateFunctions() {
    */
   public function testModuleNameLength() {
     $module_name = 'invalid_module_name_over_the_maximum_allowed_character_length';
-    $message = format_string('Exception thrown when enabling module %name with a name length over the allowed maximum', array('%name' => $module_name));
+    $message = format_string('Exception thrown when enabling module %name with a name length over the allowed maximum', ['%name' => $module_name]);
     try {
-      $this->container->get('module_installer')->install(array($module_name));
+      $this->container->get('module_installer')->install([$module_name]);
       $this->fail($message);
     }
     catch (ExtensionNameLengthException $e) {
@@ -80,9 +80,9 @@ public function testModuleNameLength() {
     }
 
     // Since for the UI, the submit callback uses FALSE, test that too.
-    $message = format_string('Exception thrown when enabling as if via the UI the module %name with a name length over the allowed maximum', array('%name' => $module_name));
+    $message = format_string('Exception thrown when enabling as if via the UI the module %name with a name length over the allowed maximum', ['%name' => $module_name]);
     try {
-      $this->container->get('module_installer')->install(array($module_name), FALSE);
+      $this->container->get('module_installer')->install([$module_name], FALSE);
       $this->fail($message);
     }
     catch (ExtensionNameLengthException $e) {
diff --git a/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php b/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php
index df9fbc6..704cbba 100644
--- a/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php
+++ b/core/modules/system/tests/src/Functional/Module/ModuleTestBase.php
@@ -18,14 +18,14 @@
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   protected $adminUser;
 
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('access administration pages', 'administer modules'));
+    $this->adminUser = $this->drupalCreateUser(['access administration pages', 'administer modules']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -42,9 +42,9 @@ function assertTableCount($base_table, $count = TRUE) {
     $tables = db_find_tables(Database::getConnection()->prefixTables('{' . $base_table . '}') . '%');
 
     if ($count) {
-      return $this->assertTrue($tables, format_string('Tables matching "@base_table" found.', array('@base_table' => $base_table)));
+      return $this->assertTrue($tables, format_string('Tables matching "@base_table" found.', ['@base_table' => $base_table]));
     }
-    return $this->assertFalse($tables, format_string('Tables matching "@base_table" not found.', array('@base_table' => $base_table)));
+    return $this->assertFalse($tables, format_string('Tables matching "@base_table" not found.', ['@base_table' => $base_table]));
   }
 
   /**
@@ -61,7 +61,7 @@ function assertModuleTablesExist($module) {
         $tables_exist = FALSE;
       }
     }
-    return $this->assertTrue($tables_exist, format_string('All database tables defined by the @module module exist.', array('@module' => $module)));
+    return $this->assertTrue($tables_exist, format_string('All database tables defined by the @module module exist.', ['@module' => $module]));
   }
 
   /**
@@ -78,7 +78,7 @@ function assertModuleTablesDoNotExist($module) {
         $tables_exist = TRUE;
       }
     }
-    return $this->assertFalse($tables_exist, format_string('None of the database tables defined by the @module module exist.', array('@module' => $module)));
+    return $this->assertFalse($tables_exist, format_string('None of the database tables defined by the @module module exist.', ['@module' => $module]));
   }
 
   /**
@@ -120,7 +120,7 @@ function assertModuleConfig($module) {
     }
     // Verify that all configuration has been installed (which means that $names
     // is empty).
-    return $this->assertFalse($names, format_string('All default configuration of @module module found.', array('@module' => $module)));
+    return $this->assertFalse($names, format_string('All default configuration of @module module found.', ['@module' => $module]));
   }
 
   /**
@@ -134,7 +134,7 @@ function assertModuleConfig($module) {
    */
   function assertNoModuleConfig($module) {
     $names = \Drupal::configFactory()->listAll($module . '.');
-    return $this->assertFalse($names, format_string('No configuration found for @module module.', array('@module' => $module)));
+    return $this->assertFalse($names, format_string('No configuration found for @module module.', ['@module' => $module]));
   }
 
   /**
@@ -154,7 +154,7 @@ function assertModules(array $modules, $enabled) {
       else {
         $message = 'Module "@module" is not enabled.';
       }
-      $this->assertEqual($this->container->get('module_handler')->moduleExists($module), $enabled, format_string($message, array('@module' => $module)));
+      $this->assertEqual($this->container->get('module_handler')->moduleExists($module), $enabled, format_string($message, ['@module' => $module]));
     }
   }
 
@@ -178,7 +178,7 @@ function assertModules(array $modules, $enabled) {
    * @param $link
    *   A link to associate with the message.
    */
-  function assertLogMessage($type, $message, $variables = array(), $severity = RfcLogLevel::NOTICE, $link = '') {
+  function assertLogMessage($type, $message, $variables = [], $severity = RfcLogLevel::NOTICE, $link = '') {
     $count = db_select('watchdog', 'w')
       ->condition('type', $type)
       ->condition('message', $message)
@@ -188,7 +188,7 @@ function assertLogMessage($type, $message, $variables = array(), $severity = Rfc
       ->countQuery()
       ->execute()
       ->fetchField();
-    $this->assertTrue($count > 0, format_string('watchdog table contains @count rows for @message', array('@count' => $count, '@message' => format_string($message, $variables))));
+    $this->assertTrue($count > 0, format_string('watchdog table contains @count rows for @message', ['@count' => $count, '@message' => format_string($message, $variables)]));
   }
 
 }
diff --git a/core/modules/system/tests/src/Functional/Module/UninstallTest.php b/core/modules/system/tests/src/Functional/Module/UninstallTest.php
index 1977cd0..c5225ee 100644
--- a/core/modules/system/tests/src/Functional/Module/UninstallTest.php
+++ b/core/modules/system/tests/src/Functional/Module/UninstallTest.php
@@ -21,7 +21,7 @@ class UninstallTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('module_test', 'user', 'views', 'node');
+  public static $modules = ['module_test', 'user', 'views', 'node'];
 
   /**
    * Tests the hook_modules_uninstalled() of the user module.
@@ -29,7 +29,7 @@ class UninstallTest extends BrowserTestBase {
   function testUserPermsUninstalled() {
     // Uninstalls the module_test module, so hook_modules_uninstalled()
     // is executed.
-    $this->container->get('module_installer')->uninstall(array('module_test'));
+    $this->container->get('module_installer')->uninstall(['module_test']);
 
     // Are the perms defined by module_test removed?
     $this->assertFalse(user_roles(FALSE, 'module_test perm'), 'Permissions were all removed.');
@@ -39,7 +39,7 @@ function testUserPermsUninstalled() {
    * Tests the Uninstall page and Uninstall confirmation page.
    */
   function testUninstallPage() {
-    $account = $this->drupalCreateUser(array('administer modules'));
+    $account = $this->drupalCreateUser(['administer modules']);
     $this->drupalLogin($account);
 
     // Create a node type.
@@ -67,7 +67,7 @@ function testUninstallPage() {
     $node->delete();
 
     // Uninstall module_test.
-    $edit = array();
+    $edit = [];
     $edit['uninstall[module_test]'] = TRUE;
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->assertNoText(\Drupal::translation()->translate('Configuration deletions'), 'No configuration deletions listed on the module install confirmation page.');
@@ -78,14 +78,14 @@ function testUninstallPage() {
 
     // Uninstall node testing that the configuration that will be deleted is
     // listed.
-    $node_dependencies = \Drupal::service('config.manager')->findConfigEntityDependentsAsEntities('module', array('node'));
-    $edit = array();
+    $node_dependencies = \Drupal::service('config.manager')->findConfigEntityDependentsAsEntities('module', ['node']);
+    $edit = [];
     $edit['uninstall[node]'] = TRUE;
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->assertText(\Drupal::translation()->translate('Configuration deletions'), 'Configuration deletions listed on the module install confirmation page.');
     $this->assertNoText(\Drupal::translation()->translate('Configuration updates'), 'No configuration updates listed on the module install confirmation page.');
 
-    $entity_types = array();
+    $entity_types = [];
     foreach ($node_dependencies as $entity) {
       $label = $entity->label() ?: $entity->id();
       $this->assertText($label);
@@ -103,7 +103,7 @@ function testUninstallPage() {
     // cleared during the uninstall.
     \Drupal::cache()->set('uninstall_test', 'test_uninstall_page', Cache::PERMANENT);
     $cached = \Drupal::cache()->get('uninstall_test');
-    $this->assertEqual($cached->data, 'test_uninstall_page', SafeMarkup::format('Cache entry found: @bin', array('@bin' => $cached->data)));
+    $this->assertEqual($cached->data, 'test_uninstall_page', SafeMarkup::format('Cache entry found: @bin', ['@bin' => $cached->data]));
 
     $this->drupalPostForm(NULL, NULL, t('Uninstall'));
     $this->assertText(t('The selected modules have been uninstalled.'), 'Modules status has been updated.');
@@ -123,7 +123,7 @@ function testUninstallPage() {
     $this->assertTitle(t('Uninstall') . ' | Drupal');
 
     // Make sure the correct error is shown when no modules are selected.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->assertText(t('No modules selected.'), 'No module is selected to uninstall');
   }
@@ -132,12 +132,12 @@ function testUninstallPage() {
    * Tests that a module which fails to install can still be uninstalled.
    */
   public function testFailedInstallStatus() {
-    $account = $this->drupalCreateUser(array('administer modules'));
+    $account = $this->drupalCreateUser(['administer modules']);
     $this->drupalLogin($account);
 
     $message = 'Exception thrown when installing module_installer_config_test with an invalid configuration file.';
     try {
-      $this->container->get('module_installer')->install(array('module_installer_config_test'));
+      $this->container->get('module_installer')->install(['module_installer_config_test']);
       $this->fail($message);
     }
     catch (EntityMalformedException $e) {
diff --git a/core/modules/system/tests/src/Functional/ParamConverter/UpcastingTest.php b/core/modules/system/tests/src/Functional/ParamConverter/UpcastingTest.php
index 52cd134..faafe84 100644
--- a/core/modules/system/tests/src/Functional/ParamConverter/UpcastingTest.php
+++ b/core/modules/system/tests/src/Functional/ParamConverter/UpcastingTest.php
@@ -12,7 +12,7 @@
  */
 class UpcastingTest extends BrowserTestBase {
 
-  public static $modules = array('paramconverter_test', 'node', 'language');
+  public static $modules = ['paramconverter_test', 'node', 'language'];
 
   /**
    * Confirms that all parameters are converted as expected.
@@ -25,8 +25,8 @@ class UpcastingTest extends BrowserTestBase {
    * happening.
    */
   public function testUpcasting() {
-    $node = $this->drupalCreateNode(array('title' => $this->randomMachineName(8)));
-    $user = $this->drupalCreateUser(array('access content'));
+    $node = $this->drupalCreateNode(['title' => $this->randomMachineName(8)]);
+    $user = $this->drupalCreateUser(['access content']);
     $foo = 'bar';
 
     // paramconverter_test/test_user_node_foo/{user}/{node}/{foo}
@@ -48,8 +48,8 @@ public function testUpcasting() {
    * Confirms we can upcast to controller arguments of the same type.
    */
   public function testSameTypes() {
-    $node = $this->drupalCreateNode(array('title' => $this->randomMachineName(8)));
-    $parent = $this->drupalCreateNode(array('title' => $this->randomMachineName(8)));
+    $node = $this->drupalCreateNode(['title' => $this->randomMachineName(8)]);
+    $parent = $this->drupalCreateNode(['title' => $this->randomMachineName(8)]);
     // paramconverter_test/node/{node}/set/parent/{parent}
     // options.parameters.parent.type = entity:node
     $this->drupalGet("paramconverter_test/node/" . $node->id() . "/set/parent/" . $parent->id());
@@ -63,19 +63,19 @@ public function testEntityLanguage() {
     $language = ConfigurableLanguage::createFromLangcode('de');
     $language->save();
     \Drupal::configFactory()->getEditable('language.negotiation')
-      ->set('url.prefixes', array('de' => 'de'))
+      ->set('url.prefixes', ['de' => 'de'])
       ->save();
 
     // The container must be recreated after adding a new language.
     $this->rebuildContainer();
 
-    $node = $this->drupalCreateNode(array('title' => 'English label'));
+    $node = $this->drupalCreateNode(['title' => 'English label']);
     $translation = $node->addTranslation('de');
     $translation->setTitle('Deutscher Titel')->save();
 
     $this->drupalGet("/paramconverter_test/node/" . $node->id() . "/test_language");
     $this->assertRaw("English label");
-    $this->drupalGet("paramconverter_test/node/" . $node->id() . "/test_language", array('language' => $language));
+    $this->drupalGet("paramconverter_test/node/" . $node->id() . "/test_language", ['language' => $language]);
     $this->assertRaw("Deutscher Titel");
   }
 
diff --git a/core/modules/system/tests/src/Functional/Path/UrlAlterFunctionalTest.php b/core/modules/system/tests/src/Functional/Path/UrlAlterFunctionalTest.php
index a24ddf9..13c592d 100644
--- a/core/modules/system/tests/src/Functional/Path/UrlAlterFunctionalTest.php
+++ b/core/modules/system/tests/src/Functional/Path/UrlAlterFunctionalTest.php
@@ -19,7 +19,7 @@ class UrlAlterFunctionalTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('path', 'forum', 'url_alter_test');
+  public static $modules = ['path', 'forum', 'url_alter_test'];
 
   /**
    * Test that URL altering works and that it occurs in the correct order.
@@ -30,7 +30,7 @@ function testUrlAlter() {
 
     // User names can have quotes and plus signs so we should ensure that URL
     // altering works with this.
-    $account = $this->drupalCreateUser(array('administer url aliases'), "a'foo+bar");
+    $account = $this->drupalCreateUser(['administer url aliases'], "a'foo+bar");
     $this->drupalLogin($account);
 
     $uid = $account->id();
@@ -42,14 +42,14 @@ function testUrlAlter() {
     $this->assertUrlOutboundAlter("/user/$uid", "/user/$name");
 
     // Test that a path always uses its alias.
-    $path = array('source' => "/user/$uid/test1", 'alias' => '/alias/test1');
+    $path = ['source' => "/user/$uid/test1", 'alias' => '/alias/test1'];
     $this->container->get('path.alias_storage')->save($path['source'], $path['alias']);
     $this->rebuildContainer();
     $this->assertUrlInboundAlter('/alias/test1', "/user/$uid/test1");
     $this->assertUrlOutboundAlter("/user/$uid/test1", '/alias/test1');
 
     // Test adding an alias via the UI.
-    $edit = array('source' => "/user/$uid/edit", 'alias' => '/alias/test2');
+    $edit = ['source' => "/user/$uid/edit", 'alias' => '/alias/test2'];
     $this->drupalPostForm('admin/config/search/path/add', $edit, t('Save'));
     $this->assertText(t('The alias has been saved.'));
     $this->drupalGet('alias/test2');
@@ -95,7 +95,7 @@ function testUrlAlter() {
   protected function assertUrlOutboundAlter($original, $final) {
     // Test outbound altering.
     $result = $this->container->get('path_processor_manager')->processOutbound($original);
-    return $this->assertIdentical($result, $final, format_string('Altered outbound URL %original, expected %final, and got %result.', array('%original' => $original, '%final' => $final, '%result' => $result)));
+    return $this->assertIdentical($result, $final, format_string('Altered outbound URL %original, expected %final, and got %result.', ['%original' => $original, '%final' => $final, '%result' => $result]));
   }
 
   /**
@@ -112,7 +112,7 @@ protected function assertUrlOutboundAlter($original, $final) {
   protected function assertUrlInboundAlter($original, $final) {
     // Test inbound altering.
     $result = $this->container->get('path.alias_manager')->getPathByAlias($original);
-    return $this->assertIdentical($result, $final, format_string('Altered inbound URL %original, expected %final, and got %result.', array('%original' => $original, '%final' => $final, '%result' => $result)));
+    return $this->assertIdentical($result, $final, format_string('Altered inbound URL %original, expected %final, and got %result.', ['%original' => $original, '%final' => $final, '%result' => $result]));
   }
 
 }
diff --git a/core/modules/system/tests/src/Functional/Render/AjaxPageStateTest.php b/core/modules/system/tests/src/Functional/Render/AjaxPageStateTest.php
index 536fda9..6f5dc7d 100644
--- a/core/modules/system/tests/src/Functional/Render/AjaxPageStateTest.php
+++ b/core/modules/system/tests/src/Functional/Render/AjaxPageStateTest.php
@@ -43,7 +43,7 @@ protected function setUp() {
    * and available in code as scripts. Do this as the base test.
    */
   public function testLibrariesAvailable() {
-    $this->drupalGet('node', array());
+    $this->drupalGet('node', []);
     $this->assertRaw(
       '/core/assets/vendor/html5shiv/html5shiv.min.js',
       'The html5shiv library from core should be loaded.'
@@ -63,14 +63,14 @@ public function testLibrariesAvailable() {
    */
   public function testHtml5ShivIsNotLoaded() {
     $this->drupalGet('node',
-      array(
+      [
         "query" =>
-          array(
-            'ajax_page_state' => array(
+          [
+            'ajax_page_state' => [
               'libraries' => 'core/html5shiv'
-            )
-          )
-      )
+            ]
+          ]
+      ]
     );
     $this->assertNoRaw(
       '/core/assets/vendor/html5shiv/html5shiv.min.js',
diff --git a/core/modules/system/tests/src/Functional/Render/DisplayVariantTest.php b/core/modules/system/tests/src/Functional/Render/DisplayVariantTest.php
index 4eba3aa..4490462 100644
--- a/core/modules/system/tests/src/Functional/Render/DisplayVariantTest.php
+++ b/core/modules/system/tests/src/Functional/Render/DisplayVariantTest.php
@@ -16,7 +16,7 @@ class DisplayVariantTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('display_variant_test');
+  public static $modules = ['display_variant_test'];
 
   /**
    * Tests selecting the variant and passing configuration.
diff --git a/core/modules/system/tests/src/Functional/Routing/RouterPermissionTest.php b/core/modules/system/tests/src/Functional/Routing/RouterPermissionTest.php
index 5bc0bb5..62a511f 100644
--- a/core/modules/system/tests/src/Functional/Routing/RouterPermissionTest.php
+++ b/core/modules/system/tests/src/Functional/Routing/RouterPermissionTest.php
@@ -16,7 +16,7 @@ class RouterPermissionTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('router_test');
+  public static $modules = ['router_test'];
 
   /**
    * Tests permission requirements on routes.
@@ -29,7 +29,7 @@ public function testPermissionAccess() {
     $this->drupalGet('router_test/test8');
     $this->assertResponse(403, 'Access denied by default if no access specified');
 
-    $user = $this->drupalCreateUser(array('access test7'));
+    $user = $this->drupalCreateUser(['access test7']);
     $this->drupalLogin($user);
     $this->drupalGet('router_test/test7');
     $this->assertResponse(200);
diff --git a/core/modules/system/tests/src/Functional/ServiceProvider/ServiceProviderWebTest.php b/core/modules/system/tests/src/Functional/ServiceProvider/ServiceProviderWebTest.php
index 88a3ce6..73d6910 100644
--- a/core/modules/system/tests/src/Functional/ServiceProvider/ServiceProviderWebTest.php
+++ b/core/modules/system/tests/src/Functional/ServiceProvider/ServiceProviderWebTest.php
@@ -16,7 +16,7 @@ class ServiceProviderWebTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('file', 'service_provider_test');
+  public static $modules = ['file', 'service_provider_test'];
 
   /**
    * Tests that module service providers get registered to the DIC.
diff --git a/core/modules/system/tests/src/Functional/System/DateFormatsMachineNameTest.php b/core/modules/system/tests/src/Functional/System/DateFormatsMachineNameTest.php
index 29bb4c2..7ff8af1 100644
--- a/core/modules/system/tests/src/Functional/System/DateFormatsMachineNameTest.php
+++ b/core/modules/system/tests/src/Functional/System/DateFormatsMachineNameTest.php
@@ -18,7 +18,7 @@ class DateFormatsMachineNameTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
     // Create a new administrator user for the test.
-    $admin = $this->drupalCreateUser(array('administer site configuration'));
+    $admin = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin);
   }
 
@@ -28,49 +28,49 @@ protected function setUp() {
   public function testDateFormatsMachineNameAllowedValues() {
     // Try to create a date format with a not allowed character to test the date
     // format specific machine name replace pattern.
-    $edit = array(
+    $edit = [
       'label' => 'Something Not Allowed',
       'id' => 'something.bad',
       'date_format_pattern' => 'Y-m-d',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('The machine-readable name must be unique, and can only contain lowercase letters, numbers, and underscores. Additionally, it can not be the reserved word "custom".'), 'It is not possible to create a date format with the machine name that has any character other than lowercase letters, digits or underscore.');
 
     // Try to create a date format with the reserved machine name "custom".
-    $edit = array(
+    $edit = [
       'label' => 'Custom',
       'id' => 'custom',
       'date_format_pattern' => 'Y-m-d',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('The machine-readable name must be unique, and can only contain lowercase letters, numbers, and underscores. Additionally, it can not be the reserved word "custom".'), 'It is not possible to create a date format with the machine name "custom".');
 
     // Try to create a date format with a machine name, "fallback", that
     // already exists.
-    $edit = array(
+    $edit = [
       'label' => 'Fallback',
       'id' => 'fallback',
       'date_format_pattern' => 'j/m/Y',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('The machine-readable name is already in use. It must be unique.'), 'It is not possible to create a date format with the machine name "fallback". It is a built-in format that already exists.');
 
     // Create a date format with a machine name distinct from the previous two.
     $id = Unicode::strtolower($this->randomMachineName(16));
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(16),
       'id' => $id,
       'date_format_pattern' => 'd/m/Y',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('Custom date format added.'), 'It is possible to create a date format with a new machine name.');
 
     // Try to create a date format with same machine name as the previous one.
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(16),
       'id' => $id,
       'date_format_pattern' => 'd-m-Y',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertText(t('The machine-readable name is already in use. It must be unique.'), 'It is not possible to create a new date format with an existing machine name.');
   }
diff --git a/core/modules/system/tests/src/Functional/System/DateTimeTest.php b/core/modules/system/tests/src/Functional/System/DateTimeTest.php
index 98dd35e..1f3f977 100644
--- a/core/modules/system/tests/src/Functional/System/DateTimeTest.php
+++ b/core/modules/system/tests/src/Functional/System/DateTimeTest.php
@@ -25,14 +25,14 @@ protected function setUp() {
     parent::setUp();
 
     // Create admin user and log in admin user.
-    $this->drupalLogin ($this->drupalCreateUser(array(
+    $this->drupalLogin ($this->drupalCreateUser([
       'administer site configuration',
       'administer content types',
       'administer nodes',
       'administer node fields',
       'administer node form display',
       'administer node display',
-    )));
+    ]));
     $this->drupalPlaceBlock('local_actions_block');
   }
 
@@ -52,9 +52,9 @@ function testTimeZoneHandling() {
     // Create some nodes with different authored-on dates.
     $date1 = '2007-01-31 21:00:00 -1000';
     $date2 = '2007-07-31 21:00:00 -1000';
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $node1 = $this->drupalCreateNode(array('created' => strtotime($date1), 'type' => 'article'));
-    $node2 = $this->drupalCreateNode(array('created' => strtotime($date2), 'type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $node1 = $this->drupalCreateNode(['created' => strtotime($date1), 'type' => 'article']);
+    $node2 = $this->drupalCreateNode(['created' => strtotime($date2), 'type' => 'article']);
 
     // Confirm date format and time zone.
     $this->drupalGet('node/' . $node1->id());
@@ -64,7 +64,7 @@ function testTimeZoneHandling() {
 
     // Set time zone to Los Angeles time.
     $config->set('timezone.default', 'America/Los_Angeles')->save();
-    \Drupal::entityManager()->getViewBuilder('node')->resetCache(array($node1, $node2));
+    \Drupal::entityManager()->getViewBuilder('node')->resetCache([$node1, $node2]);
 
     // Confirm date format and time zone.
     $this->drupalGet('node/' . $node1->id());
@@ -85,11 +85,11 @@ function testDateFormatConfiguration() {
     $date_format_id = strtolower($this->randomMachineName(8));
     $name = ucwords($date_format_id);
     $date_format = 'd.m.Y - H:i';
-    $edit = array(
+    $edit = [
       'id' => $date_format_id,
       'label' => $name,
       'date_format_pattern' => $date_format,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertUrl(\Drupal::url('entity.date_format.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
     $this->assertText(t('Custom date format added.'), 'Date format added confirmation message appears.');
@@ -100,24 +100,24 @@ function testDateFormatConfiguration() {
     $this->drupalGet('admin/config/regional/date-time');
     $this->clickLink(t('Edit'));
     $this->drupalPostForm(NULL, NULL, t('Save format'));
-    $this->assertUrl('admin/config/regional/date-time', array('absolute' => TRUE), 'Correct page redirection.');
+    $this->assertUrl('admin/config/regional/date-time', ['absolute' => TRUE], 'Correct page redirection.');
     $this->assertText(t('Custom date format updated.'), 'Custom date format successfully updated.');
 
     // Edit custom date format.
     $this->drupalGet('admin/config/regional/date-time');
     $this->clickLink(t('Edit'));
-    $edit = array(
+    $edit = [
       'date_format_pattern' => 'Y m',
-    );
+    ];
     $this->drupalPostForm($this->getUrl(), $edit, t('Save format'));
     $this->assertUrl(\Drupal::url('entity.date_format.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
     $this->assertText(t('Custom date format updated.'), 'Custom date format successfully updated.');
 
     // Delete custom date format.
     $this->clickLink(t('Delete'));
-    $this->drupalPostForm('admin/config/regional/date-time/formats/manage/' . $date_format_id . '/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/config/regional/date-time/formats/manage/' . $date_format_id . '/delete', [], t('Delete'));
     $this->assertUrl(\Drupal::url('entity.date_format.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
-    $this->assertRaw(t('The date format %format has been deleted.', array('%format' => $name)), 'Custom date format removed.');
+    $this->assertRaw(t('The date format %format has been deleted.', ['%format' => $name]), 'Custom date format removed.');
 
     // Make sure the date does not exist in config.
     $date_format = DateFormat::load($date_format_id);
@@ -127,22 +127,22 @@ function testDateFormatConfiguration() {
     $date_format_id = strtolower($this->randomMachineName(8));
     $name = ucwords($date_format_id);
     $date_format = 'Y';
-    $edit = array(
+    $edit = [
       'id' => $date_format_id,
       'label' => $name,
       'date_format_pattern' => $date_format,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertUrl(\Drupal::url('entity.date_format.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
     $this->assertText(t('Custom date format added.'), 'Date format added confirmation message appears.');
     $this->assertText($name, 'Custom date format appears in the date format list.');
     $this->assertText(t('Delete'), 'Delete link for custom date format appears.');
 
-    $date_format = DateFormat::create(array(
+    $date_format = DateFormat::create([
       'id' => 'xss_short',
       'label' => 'XSS format',
       'pattern' => '\<\s\c\r\i\p\t\>\a\l\e\r\t\(\'\X\S\S\'\)\;\<\/\s\c\r\i\p\t\>',
-      ));
+      ]);
     $date_format->save();
 
     $this->drupalGet(Url::fromRoute('entity.date_format.collection'));
@@ -152,11 +152,11 @@ function testDateFormatConfiguration() {
     $date_format_id = strtolower($this->randomMachineName(8));
     $name = ucwords($date_format_id);
     $date_format = '& \<\e\m\>Y\<\/\e\m\>';
-    $edit = array(
+    $edit = [
       'id' => $date_format_id,
       'label' => $name,
       'date_format_pattern' => $date_format,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
     $this->assertUrl(\Drupal::url('entity.date_format.collection', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
     $this->assertText(t('Custom date format added.'), 'Date format added confirmation message appears.');
@@ -169,51 +169,51 @@ function testDateFormatConfiguration() {
    */
   function testEnteringDateTimeViaSelectors() {
 
-    $this->drupalCreateContentType(array('type' => 'page_with_date', 'name' => 'Page with date'));
+    $this->drupalCreateContentType(['type' => 'page_with_date', 'name' => 'Page with date']);
 
     $this->drupalGet('admin/structure/types/manage/page_with_date');
     $this->assertResponse(200, 'Content type created.');
 
     $this->drupalGet('admin/structure/types/manage/page_with_date/fields/add-field');
-    $edit = array(
+    $edit = [
       'new_storage_type' => 'datetime',
       'label' => 'dt',
       'field_name' => 'dt',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page_with_date/fields/add-field', $edit, t('Save and continue'));
     $this->assertText(t('These settings apply to the'), 'New datetime field created, now configuring');
 
     $this->drupalGet('admin/structure/types/manage/page_with_date/fields/node.page_with_date.field_dt/storage');
-    $edit = array(
+    $edit = [
       'settings[datetime_type]' => 'datetime',
       'cardinality' => 'number',
       'cardinality_number' => '1',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page_with_date/fields/node.page_with_date.field_dt/storage', $edit, t('Save field settings'));
 
     $this->drupalGet('admin/structure/types/manage/page_with_date/fields');
     $this->assertText('field_dt', 'New field is in place');
 
     $this->drupalGet('admin/structure/types/manage/page_with_date/form-display');
-    $edit = array(
+    $edit = [
       'fields[field_dt][type]' => 'datetime_datelist',
       'fields[field_dt][region]' => 'content',
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/page_with_date/form-display', $edit, t('Save'));
     $this->drupalLogout();
 
     // Now log in as a regular editor.
-    $this->drupalLogin($this->drupalCreateUser(array('create page_with_date content')));
+    $this->drupalLogin($this->drupalCreateUser(['create page_with_date content']));
 
     $this->drupalGet('node/add/page_with_date');
-    $edit = array(
+    $edit = [
       'title[0][value]' => 'sample doc',
       'field_dt[0][value][year]' => '2016',
       'field_dt[0][value][month]' => '2',
       'field_dt[0][value][day]' => '31',
       'field_dt[0][value][hour]' => '1',
       'field_dt[0][value][minute]' => '30',
-    );
+    ];
     $this->drupalPostForm('node/add/page_with_date', $edit, t('Save'));
     $this->assertText(t('Selected combination of day and month is not valid.'), 'Inorrect date failed validation');
 
diff --git a/core/modules/system/tests/src/Functional/System/IndexPhpTest.php b/core/modules/system/tests/src/Functional/System/IndexPhpTest.php
index fa43ad2..36cdb7b 100644
--- a/core/modules/system/tests/src/Functional/System/IndexPhpTest.php
+++ b/core/modules/system/tests/src/Functional/System/IndexPhpTest.php
@@ -20,10 +20,10 @@ protected function setUp() {
   function testIndexPhpHandling() {
     $index_php = $GLOBALS['base_url'] . '/index.php';
 
-    $this->drupalGet($index_php, array('external' => TRUE));
+    $this->drupalGet($index_php, ['external' => TRUE]);
     $this->assertResponse(200, 'Make sure index.php returns a valid page.');
 
-    $this->drupalGet($index_php . '/user', array('external' => TRUE));
+    $this->drupalGet($index_php . '/user', ['external' => TRUE]);
     $this->assertResponse(200, 'Make sure index.php/user returns a valid page.');
   }
 
diff --git a/core/modules/system/tests/src/Functional/System/MainContentFallbackTest.php b/core/modules/system/tests/src/Functional/System/MainContentFallbackTest.php
index 8d64feb..f953e09 100644
--- a/core/modules/system/tests/src/Functional/System/MainContentFallbackTest.php
+++ b/core/modules/system/tests/src/Functional/System/MainContentFallbackTest.php
@@ -16,7 +16,7 @@ class MainContentFallbackTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'system_test');
+  public static $modules = ['block', 'system_test'];
 
   protected $adminUser;
   protected $webUser;
@@ -25,22 +25,22 @@ protected function setUp() {
     parent::setUp();
 
     // Create and log in admin user.
-    $this->adminUser = $this->drupalCreateUser(array(
+    $this->adminUser = $this->drupalCreateUser([
       'access administration pages',
       'administer site configuration',
       'administer modules',
-    ));
+    ]);
     $this->drupalLogin($this->adminUser);
 
     // Create a web user.
-    $this->webUser = $this->drupalCreateUser(array('access user profiles'));
+    $this->webUser = $this->drupalCreateUser(['access user profiles']);
   }
 
   /**
    * Test availability of main content: Drupal falls back to SimplePageVariant.
    */
   function testMainContentFallback() {
-    $edit = array();
+    $edit = [];
     // Uninstall the block module.
     $edit['uninstall[block]'] = 'block';
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
@@ -63,7 +63,7 @@ function testMainContentFallback() {
 
     // Enable the block module again.
     $this->drupalLogin($this->adminUser);
-    $edit = array();
+    $edit = [];
     $edit['modules[block][enable]'] = 'block';
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     $this->assertText(t('Module Block has been enabled.'), 'Modules status has been updated.');
diff --git a/core/modules/system/tests/src/Functional/System/SitesDirectoryHardeningTest.php b/core/modules/system/tests/src/Functional/System/SitesDirectoryHardeningTest.php
index 6a4d3ee..fbe97f4 100644
--- a/core/modules/system/tests/src/Functional/System/SitesDirectoryHardeningTest.php
+++ b/core/modules/system/tests/src/Functional/System/SitesDirectoryHardeningTest.php
@@ -25,17 +25,17 @@ public function testSitesDirectoryHardening() {
     $settings_file = $this->settingsFile($site_path);
 
     // First, we check based on what the initial install has set.
-    $this->assertTrue(drupal_verify_install_file($site_path, FILE_NOT_WRITABLE, 'dir'), new FormattableMarkup('Verified permissions for @file.', array('@file' => $site_path)));
+    $this->assertTrue(drupal_verify_install_file($site_path, FILE_NOT_WRITABLE, 'dir'), new FormattableMarkup('Verified permissions for @file.', ['@file' => $site_path]));
 
     // We intentionally don't check for settings.local.php as that file is
     // not created by Drupal.
-    $this->assertTrue(drupal_verify_install_file($settings_file, FILE_EXIST | FILE_READABLE | FILE_NOT_WRITABLE), new FormattableMarkup('Verified permissions for @file.', array('@file' => $settings_file)));
+    $this->assertTrue(drupal_verify_install_file($settings_file, FILE_EXIST | FILE_READABLE | FILE_NOT_WRITABLE), new FormattableMarkup('Verified permissions for @file.', ['@file' => $settings_file]));
 
     $this->makeWritable($site_path);
     $this->checkSystemRequirements();
 
-    $this->assertTrue(drupal_verify_install_file($site_path, FILE_NOT_WRITABLE, 'dir'), new FormattableMarkup('Verified permissions for @file after manual permissions change.', array('@file' => $site_path)));
-    $this->assertTrue(drupal_verify_install_file($settings_file, FILE_EXIST | FILE_READABLE | FILE_NOT_WRITABLE), new FormattableMarkup('Verified permissions for @file after manual permissions change.', array('@file' => $settings_file)));
+    $this->assertTrue(drupal_verify_install_file($site_path, FILE_NOT_WRITABLE, 'dir'), new FormattableMarkup('Verified permissions for @file after manual permissions change.', ['@file' => $site_path]));
+    $this->assertTrue(drupal_verify_install_file($settings_file, FILE_EXIST | FILE_READABLE | FILE_NOT_WRITABLE), new FormattableMarkup('Verified permissions for @file after manual permissions change.', ['@file' => $settings_file]));
   }
 
   /**
diff --git a/core/modules/system/tests/src/Functional/System/StatusTest.php b/core/modules/system/tests/src/Functional/System/StatusTest.php
index 34d4f75..cb81d05 100644
--- a/core/modules/system/tests/src/Functional/System/StatusTest.php
+++ b/core/modules/system/tests/src/Functional/System/StatusTest.php
@@ -26,17 +26,17 @@ protected function setUp() {
 
     // Unset the sync directory in settings.php to trigger $config_directories
     // error.
-    $settings['config_directories']  = array(
-      CONFIG_SYNC_DIRECTORY => (object) array(
+    $settings['config_directories']  = [
+      CONFIG_SYNC_DIRECTORY => (object) [
         'value' => '',
         'required' => TRUE,
-      ),
-    );
+      ],
+    ];
     $this->writeSettings($settings);
 
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer site configuration',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
@@ -71,7 +71,7 @@ public function testStatusPage() {
     $this->assertNoText(t('Out of date'));
 
     // The global $config_directories is not properly formed.
-    $this->assertRaw(t('Your %file file must define the $config_directories variable as an array containing the names of directories in which configuration files can be found. It must contain a %sync_key key.', array('%file' => $this->siteDirectory . '/settings.php', '%sync_key' => CONFIG_SYNC_DIRECTORY)));
+    $this->assertRaw(t('Your %file file must define the $config_directories variable as an array containing the names of directories in which configuration files can be found. It must contain a %sync_key key.', ['%file' => $this->siteDirectory . '/settings.php', '%sync_key' => CONFIG_SYNC_DIRECTORY]));
 
     // Set the schema version of update_test_postupdate to a lower version, so
     // update_test_postupdate_update_8001() needs to be executed.
diff --git a/core/modules/system/tests/src/Functional/System/SystemAuthorizeTest.php b/core/modules/system/tests/src/Functional/System/SystemAuthorizeTest.php
index 6878d6c..01984a3 100644
--- a/core/modules/system/tests/src/Functional/System/SystemAuthorizeTest.php
+++ b/core/modules/system/tests/src/Functional/System/SystemAuthorizeTest.php
@@ -16,13 +16,13 @@ class SystemAuthorizeTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_test');
+  public static $modules = ['system_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create an administrator user.
-    $this->drupalLogin ($this->drupalCreateUser(array('administer software updates')));
+    $this->drupalLogin ($this->drupalCreateUser(['administer software updates']));
   }
 
   /**
@@ -46,7 +46,7 @@ function drupalGetAuthorizePHP($page_title = 'system-test-auth') {
   function testFileTransferHooks() {
     $page_title = $this->randomMachineName(16);
     $this->drupalGetAuthorizePHP($page_title);
-    $this->assertTitle(strtr('@title | Drupal', array('@title' => $page_title)), 'authorize.php page title is correct.');
+    $this->assertTitle(strtr('@title | Drupal', ['@title' => $page_title]), 'authorize.php page title is correct.');
     $this->assertNoText('It appears you have reached this page in error.');
     $this->assertText('To continue, provide your server connection details');
     // Make sure we see the new connection method added by system_test.
diff --git a/core/modules/system/tests/src/Functional/System/TrustedHostsTest.php b/core/modules/system/tests/src/Functional/System/TrustedHostsTest.php
index ade5e2b..7a65474 100644
--- a/core/modules/system/tests/src/Functional/System/TrustedHostsTest.php
+++ b/core/modules/system/tests/src/Functional/System/TrustedHostsTest.php
@@ -17,9 +17,9 @@ class TrustedHostsTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $admin_user = $this->drupalCreateUser(array(
+    $admin_user = $this->drupalCreateUser([
       'administer site configuration',
-    ));
+    ]);
     $this->drupalLogin($admin_user);
   }
 
@@ -39,10 +39,10 @@ public function testStatusPageWithoutConfiguration() {
    * Tests that the status page shows the trusted patterns from settings.php.
    */
   public function testStatusPageWithConfiguration() {
-    $settings['settings']['trusted_host_patterns'] = (object) array(
-      'value' => array('^' . preg_quote(\Drupal::request()->getHost()) . '$'),
+    $settings['settings']['trusted_host_patterns'] = (object) [
+      'value' => ['^' . preg_quote(\Drupal::request()->getHost()) . '$'],
       'required' => TRUE,
-    );
+    ];
 
     $this->writeSettings($settings);
 
@@ -63,10 +63,10 @@ public function testFakeRequests() {
     $this->container->get('router.builder')->rebuild();
 
     $host = $this->container->get('request_stack')->getCurrentRequest()->getHost();
-    $settings['settings']['trusted_host_patterns'] = (object) array(
-      'value' => array('^' . preg_quote($host) . '$'),
+    $settings['settings']['trusted_host_patterns'] = (object) [
+      'value' => ['^' . preg_quote($host) . '$'],
       'required' => TRUE,
-    );
+    ];
 
     $this->writeSettings($settings);
 
diff --git a/core/modules/system/tests/src/Functional/Theme/EngineNyanCatTest.php b/core/modules/system/tests/src/Functional/Theme/EngineNyanCatTest.php
index 2d279d5..6af0395 100644
--- a/core/modules/system/tests/src/Functional/Theme/EngineNyanCatTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/EngineNyanCatTest.php
@@ -16,11 +16,11 @@ class EngineNyanCatTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme_nyan_cat_engine'));
+    \Drupal::service('theme_handler')->install(['test_theme_nyan_cat_engine']);
   }
 
   /**
diff --git a/core/modules/system/tests/src/Functional/Theme/FastTest.php b/core/modules/system/tests/src/Functional/Theme/FastTest.php
index 198fd63..66426ee 100644
--- a/core/modules/system/tests/src/Functional/Theme/FastTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/FastTest.php
@@ -16,11 +16,11 @@ class FastTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   protected function setUp() {
     parent::setUp();
-    $this->account = $this->drupalCreateUser(array('access user profiles'));
+    $this->account = $this->drupalCreateUser(['access user profiles']);
   }
 
   /**
@@ -28,7 +28,7 @@ protected function setUp() {
    */
   function testUserAutocomplete() {
     $this->drupalLogin($this->account);
-    $this->drupalGet('user/autocomplete', array('query' => array('q' => $this->account->getUsername())));
+    $this->drupalGet('user/autocomplete', ['query' => ['q' => $this->account->getUsername()]]);
     $this->assertRaw($this->account->getUsername());
     $this->assertNoText('registry initialized', 'The registry was not initialized');
   }
diff --git a/core/modules/system/tests/src/Functional/Theme/ThemeEarlyInitializationTest.php b/core/modules/system/tests/src/Functional/Theme/ThemeEarlyInitializationTest.php
index 89424bd..f899eff 100644
--- a/core/modules/system/tests/src/Functional/Theme/ThemeEarlyInitializationTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/ThemeEarlyInitializationTest.php
@@ -17,7 +17,7 @@ class ThemeEarlyInitializationTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   /**
    * Test that the theme system can generate output in a request listener.
diff --git a/core/modules/system/tests/src/Functional/Theme/ThemeInfoTest.php b/core/modules/system/tests/src/Functional/Theme/ThemeInfoTest.php
index 7f59aa2..d81b6d7 100644
--- a/core/modules/system/tests/src/Functional/Theme/ThemeInfoTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/ThemeInfoTest.php
@@ -16,7 +16,7 @@ class ThemeInfoTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   /**
    * The theme handler used in this test for enabling themes.
@@ -54,7 +54,7 @@ protected function setUp() {
    * Tests stylesheets-remove.
    */
   function testStylesheets() {
-    $this->themeHandler->install(array('test_basetheme', 'test_subtheme'));
+    $this->themeHandler->install(['test_basetheme', 'test_subtheme']);
     $this->config('system.theme')
       ->set('default', 'test_subtheme')
       ->save();
@@ -66,16 +66,16 @@ function testStylesheets() {
     // should work nevertheless.
     $this->drupalGet('theme-test/info/stylesheets');
 
-    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', array(':href'  => "$base/base-add.css"))), "$base/base-add.css found");
-    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', array(':href'  => "base-remove.css"))), "base-remove.css not found");
+    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', [':href'  => "$base/base-add.css"])), "$base/base-add.css found");
+    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', [':href'  => "base-remove.css"])), "base-remove.css not found");
 
-    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', array(':href'  => "$sub/sub-add.css"))), "$sub/sub-add.css found");
-    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', array(':href'  => "sub-remove.css"))), "sub-remove.css not found");
-    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', array(':href' => "base-add.sub-remove.css"))), "base-add.sub-remove.css not found");
+    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', [':href'  => "$sub/sub-add.css"])), "$sub/sub-add.css found");
+    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', [':href'  => "sub-remove.css"])), "sub-remove.css not found");
+    $this->assertIdentical(0, count($this->xpath('//link[contains(@href, :href)]', [':href' => "base-add.sub-remove.css"])), "base-add.sub-remove.css not found");
 
     // Verify that CSS files with the same name are loaded from both the base theme and subtheme.
-    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', array(':href' => "$base/samename.css"))), "$base/samename.css found");
-    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', array(':href' => "$sub/samename.css"))), "$sub/samename.css found");
+    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', [':href' => "$base/samename.css"])), "$base/samename.css found");
+    $this->assertIdentical(1, count($this->xpath('//link[contains(@href, :href)]', [':href' => "$sub/samename.css"])), "$sub/samename.css found");
 
   }
 
@@ -83,7 +83,7 @@ function testStylesheets() {
    * Tests that changes to the info file are picked up.
    */
   public function testChanges() {
-    $this->themeHandler->install(array('test_theme'));
+    $this->themeHandler->install(['test_theme']);
     $this->config('system.theme')->set('default', 'test_theme')->save();
     $this->themeManager->resetActiveTheme();
 
diff --git a/core/modules/system/tests/src/Functional/Theme/TwigExtensionTest.php b/core/modules/system/tests/src/Functional/Theme/TwigExtensionTest.php
index 36bfe2d..f2491ac 100644
--- a/core/modules/system/tests/src/Functional/Theme/TwigExtensionTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/TwigExtensionTest.php
@@ -16,11 +16,11 @@ class TwigExtensionTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test', 'twig_extension_test');
+  public static $modules = ['theme_test', 'twig_extension_test'];
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme'));
+    \Drupal::service('theme_handler')->install(['test_theme']);
   }
 
   /**
diff --git a/core/modules/system/tests/src/Functional/Theme/TwigLoaderTest.php b/core/modules/system/tests/src/Functional/Theme/TwigLoaderTest.php
index b580719..d2b0b54 100644
--- a/core/modules/system/tests/src/Functional/Theme/TwigLoaderTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/TwigLoaderTest.php
@@ -25,10 +25,10 @@ public function testTwigLoaderAddition() {
     $environment = \Drupal::service('twig');
 
     $template = $environment->loadTemplate('kittens');
-    $this->assertEqual($template->render(array()), 'kittens', 'Passing "kittens" to the custom Twig loader returns "kittens".');
+    $this->assertEqual($template->render([]), 'kittens', 'Passing "kittens" to the custom Twig loader returns "kittens".');
 
     $template = $environment->loadTemplate('meow');
-    $this->assertEqual($template->render(array()), 'cats', 'Passing something other than "kittens" to the custom Twig loader returns "cats".');
+    $this->assertEqual($template->render([]), 'cats', 'Passing something other than "kittens" to the custom Twig loader returns "cats".');
   }
 
 }
diff --git a/core/modules/system/tests/src/Functional/Theme/TwigRegistryLoaderTest.php b/core/modules/system/tests/src/Functional/Theme/TwigRegistryLoaderTest.php
index a0161b1..2446289 100644
--- a/core/modules/system/tests/src/Functional/Theme/TwigRegistryLoaderTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/TwigRegistryLoaderTest.php
@@ -16,7 +16,7 @@ class TwigRegistryLoaderTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('twig_theme_test', 'block');
+  public static $modules = ['twig_theme_test', 'block'];
 
   /**
    * @var \Drupal\Core\Template\TwigEnvironment
@@ -25,7 +25,7 @@ class TwigRegistryLoaderTest extends BrowserTestBase {
 
   protected function setUp() {
     parent::setUp();
-    \Drupal::service('theme_handler')->install(array('test_theme_twig_registry_loader', 'test_theme_twig_registry_loader_theme', 'test_theme_twig_registry_loader_subtheme'));
+    \Drupal::service('theme_handler')->install(['test_theme_twig_registry_loader', 'test_theme_twig_registry_loader_theme', 'test_theme_twig_registry_loader_subtheme']);
     $this->twig = \Drupal::service('twig');
   }
 
diff --git a/core/modules/system/tests/src/Functional/Theme/TwigSettingsTest.php b/core/modules/system/tests/src/Functional/Theme/TwigSettingsTest.php
index 2dbeed1..58dcbc9 100644
--- a/core/modules/system/tests/src/Functional/Theme/TwigSettingsTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/TwigSettingsTest.php
@@ -17,7 +17,7 @@ class TwigSettingsTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('theme_test');
+  public static $modules = ['theme_test'];
 
   /**
    * Ensures Twig template auto reload setting can be overridden.
@@ -77,7 +77,7 @@ function testTwigDebugOverride() {
   function testTwigCacheOverride() {
     $extension = twig_extension();
     $theme_handler = $this->container->get('theme_handler');
-    $theme_handler->install(array('test_theme'));
+    $theme_handler->install(['test_theme']);
     $this->config('system.theme')->set('default', 'test_theme')->save();
 
     // The registry still works on theme globals, so set them here.
diff --git a/core/modules/system/tests/src/Kernel/Action/ActionTest.php b/core/modules/system/tests/src/Kernel/Action/ActionTest.php
index 4ca24fb..6c381d7 100644
--- a/core/modules/system/tests/src/Kernel/Action/ActionTest.php
+++ b/core/modules/system/tests/src/Kernel/Action/ActionTest.php
@@ -17,7 +17,7 @@ class ActionTest extends KernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('system', 'field', 'user', 'action_test');
+  public static $modules = ['system', 'field', 'user', 'action_test'];
 
   /**
    * The action manager.
@@ -34,7 +34,7 @@ protected function setUp() {
 
     $this->actionManager = $this->container->get('plugin.manager.action');
     $this->installEntitySchema('user');
-    $this->installSchema('system', array('sequences'));
+    $this->installSchema('system', ['sequences']);
   }
 
   /**
@@ -59,7 +59,7 @@ public function testOperations() {
     // Create a new unsaved user.
     $name = $this->randomMachineName();
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
-    $account = $user_storage->create(array('name' => $name, 'bundle' => 'user'));
+    $account = $user_storage->create(['name' => $name, 'bundle' => 'user']);
     $loaded_accounts = $user_storage->loadMultiple();
     $this->assertEqual(count($loaded_accounts), 0);
 
@@ -76,25 +76,25 @@ public function testOperations() {
    */
   public function testDependencies() {
     // Create a new action that depends on a user role.
-    $action = Action::create(array(
+    $action = Action::create([
       'id' => 'user_add_role_action.' . RoleInterface::ANONYMOUS_ID,
       'type' => 'user',
       'label' => t('Add the anonymous role to the selected users'),
-      'configuration' => array(
+      'configuration' => [
         'rid' => RoleInterface::ANONYMOUS_ID,
-      ),
+      ],
       'plugin' => 'user_add_role_action',
-    ));
+    ]);
     $action->save();
 
-    $expected = array(
-      'config' => array(
+    $expected = [
+      'config' => [
         'user.role.' . RoleInterface::ANONYMOUS_ID,
-      ),
-      'module' => array(
+      ],
+      'module' => [
         'user',
-      ),
-    );
+      ],
+    ];
     $this->assertIdentical($expected, $action->calculateDependencies()->getDependencies());
   }
 
diff --git a/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php b/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
index ca1c5af..6a9825e 100644
--- a/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
+++ b/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
@@ -31,7 +31,7 @@ class SystemMenuBlockTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'system',
     'block',
     'menu_test',
@@ -39,7 +39,7 @@ class SystemMenuBlockTest extends KernelTestBase {
     'field',
     'user',
     'link',
-  );
+  ];
 
   /**
    * The block under test.
@@ -97,16 +97,16 @@ protected function setUp() {
     $this->blockManager = $this->container->get('plugin.manager.block');
 
     $routes = new RouteCollection();
-    $requirements = array('_access' => 'TRUE');
-    $options = array('_access_checks' => array('access_check.default'));
-    $routes->add('example1', new Route('/example1', array(), $requirements, $options));
-    $routes->add('example2', new Route('/example2', array(), $requirements, $options));
-    $routes->add('example3', new Route('/example3', array(), $requirements, $options));
-    $routes->add('example4', new Route('/example4', array(), $requirements, $options));
-    $routes->add('example5', new Route('/example5', array(), $requirements, $options));
-    $routes->add('example6', new Route('/example6', array(), $requirements, $options));
-    $routes->add('example7', new Route('/example7', array(), $requirements, $options));
-    $routes->add('example8', new Route('/example8', array(), $requirements, $options));
+    $requirements = ['_access' => 'TRUE'];
+    $options = ['_access_checks' => ['access_check.default']];
+    $routes->add('example1', new Route('/example1', [], $requirements, $options));
+    $routes->add('example2', new Route('/example2', [], $requirements, $options));
+    $routes->add('example3', new Route('/example3', [], $requirements, $options));
+    $routes->add('example4', new Route('/example4', [], $requirements, $options));
+    $routes->add('example5', new Route('/example5', [], $requirements, $options));
+    $routes->add('example6', new Route('/example6', [], $requirements, $options));
+    $routes->add('example7', new Route('/example7', [], $requirements, $options));
+    $routes->add('example8', new Route('/example8', [], $requirements, $options));
 
     $mock_route_provider = new MockRouteProvider($routes);
     $this->container->set('router.route_provider', $mock_route_provider);
@@ -115,11 +115,11 @@ protected function setUp() {
     $menu_name = 'mock';
     $label = $this->randomMachineName(16);
 
-    $this->menu = Menu::create(array(
+    $this->menu = Menu::create([
       'id' => $menu_name,
       'label' => $label,
       'description' => 'Description text',
-    ));
+    ]);
     $this->menu->save();
 
     // This creates a tree with the following structure:
@@ -132,16 +132,16 @@ protected function setUp() {
     // - 6
     // - 8
     // With link 6 being the only external link.
-    $links = array(
-      1 => MenuLinkMock::create(array('id' => 'test.example1', 'route_name' => 'example1', 'title' => 'foo', 'parent' => '', 'weight' => 0)),
-      2 => MenuLinkMock::create(array('id' => 'test.example2', 'route_name' => 'example2', 'title' => 'bar', 'parent' => '', 'route_parameters' => array('foo' => 'bar'), 'weight' => 1)),
-      3 => MenuLinkMock::create(array('id' => 'test.example3', 'route_name' => 'example3', 'title' => 'baz', 'parent' => 'test.example2', 'weight' => 2)),
-      4 => MenuLinkMock::create(array('id' => 'test.example4', 'route_name' => 'example4', 'title' => 'qux', 'parent' => 'test.example3', 'weight' => 3)),
-      5 => MenuLinkMock::create(array('id' => 'test.example5', 'route_name' => 'example5', 'title' => 'foofoo', 'parent' => '', 'expanded' => TRUE, 'weight' => 4)),
-      6 => MenuLinkMock::create(array('id' => 'test.example6', 'route_name' => '', 'url' => 'https://www.drupal.org/', 'title' => 'barbar', 'parent' => '', 'weight' => 5)),
-      7 => MenuLinkMock::create(array('id' => 'test.example7', 'route_name' => 'example7', 'title' => 'bazbaz', 'parent' => 'test.example5', 'weight' => 6)),
-      8 => MenuLinkMock::create(array('id' => 'test.example8', 'route_name' => 'example8', 'title' => 'quxqux', 'parent' => '', 'weight' => 7)),
-    );
+    $links = [
+      1 => MenuLinkMock::create(['id' => 'test.example1', 'route_name' => 'example1', 'title' => 'foo', 'parent' => '', 'weight' => 0]),
+      2 => MenuLinkMock::create(['id' => 'test.example2', 'route_name' => 'example2', 'title' => 'bar', 'parent' => '', 'route_parameters' => ['foo' => 'bar'], 'weight' => 1]),
+      3 => MenuLinkMock::create(['id' => 'test.example3', 'route_name' => 'example3', 'title' => 'baz', 'parent' => 'test.example2', 'weight' => 2]),
+      4 => MenuLinkMock::create(['id' => 'test.example4', 'route_name' => 'example4', 'title' => 'qux', 'parent' => 'test.example3', 'weight' => 3]),
+      5 => MenuLinkMock::create(['id' => 'test.example5', 'route_name' => 'example5', 'title' => 'foofoo', 'parent' => '', 'expanded' => TRUE, 'weight' => 4]),
+      6 => MenuLinkMock::create(['id' => 'test.example6', 'route_name' => '', 'url' => 'https://www.drupal.org/', 'title' => 'barbar', 'parent' => '', 'weight' => 5]),
+      7 => MenuLinkMock::create(['id' => 'test.example7', 'route_name' => 'example7', 'title' => 'bazbaz', 'parent' => 'test.example5', 'weight' => 6]),
+      8 => MenuLinkMock::create(['id' => 'test.example8', 'route_name' => 'example8', 'title' => 'quxqux', 'parent' => '', 'weight' => 7]),
+    ];
     foreach ($links as $instance) {
       $this->menuLinkManager->addDefinition($instance->getPluginId(), $instance->getPluginDefinition());
     }
@@ -152,25 +152,25 @@ protected function setUp() {
    */
   public function testSystemMenuBlockConfigDependencies() {
 
-    $block = Block::create(array(
+    $block = Block::create([
       'plugin' => 'system_menu_block:' . $this->menu->id(),
       'region' => 'footer',
       'id' => 'machinename',
       'theme' => 'stark',
-    ));
+    ]);
 
     $dependencies = $block->calculateDependencies()->getDependencies();
-    $expected = array(
-      'config' => array(
+    $expected = [
+      'config' => [
         'system.menu.' . $this->menu->id()
-      ),
-      'module' => array(
+      ],
+      'module' => [
         'system'
-      ),
-      'theme' => array(
+      ],
+      'theme' => [
         'stark'
-      ),
-    );
+      ],
+    ];
     $this->assertIdentical($expected, $dependencies);
   }
 
@@ -180,13 +180,13 @@ public function testSystemMenuBlockConfigDependencies() {
   public function testConfigLevelDepth() {
     // Helper function to generate a configured block instance.
     $place_block = function ($level, $depth) {
-      return $this->blockManager->createInstance('system_menu_block:' . $this->menu->id(), array(
+      return $this->blockManager->createInstance('system_menu_block:' . $this->menu->id(), [
         'region' => 'footer',
         'id' => 'machinename',
         'theme' => 'stark',
         'level' => $level,
         'depth' => $depth,
-      ));
+      ]);
     };
 
     // All the different block instances we're going to test.
diff --git a/core/modules/system/tests/src/Kernel/Common/SystemListingTest.php b/core/modules/system/tests/src/Kernel/Common/SystemListingTest.php
index 7de7ecf..fc30a1c 100644
--- a/core/modules/system/tests/src/Kernel/Common/SystemListingTest.php
+++ b/core/modules/system/tests/src/Kernel/Common/SystemListingTest.php
@@ -17,14 +17,14 @@ class SystemListingTest extends KernelTestBase {
   function testDirectoryPrecedence() {
     // Define the module files we will search for, and the directory precedence
     // we expect.
-    $expected_directories = array(
+    $expected_directories = [
       // When both copies of the module are compatible with Drupal core, the
       // copy in the profile directory takes precedence.
-      'drupal_system_listing_compatible_test' => array(
+      'drupal_system_listing_compatible_test' => [
         'core/profiles/testing/modules',
         'core/modules/system/tests/modules',
-      ),
-    );
+      ],
+    ];
 
     // This test relies on two versions of the same module existing in
     // different places in the filesystem. Without that, the test has no
@@ -32,22 +32,22 @@ function testDirectoryPrecedence() {
     foreach ($expected_directories as $module => $directories) {
       foreach ($directories as $directory) {
         $filename = "$directory/$module/$module.info.yml";
-        $this->assertTrue(file_exists(\Drupal::root() . '/' . $filename), format_string('@filename exists.', array('@filename' => $filename)));
+        $this->assertTrue(file_exists(\Drupal::root() . '/' . $filename), format_string('@filename exists.', ['@filename' => $filename]));
       }
     }
 
     // Now scan the directories and check that the files take precedence as
     // expected.
     $listing = new ExtensionDiscovery(\Drupal::root());
-    $listing->setProfileDirectories(array('core/profiles/testing'));
+    $listing->setProfileDirectories(['core/profiles/testing']);
     $files = $listing->scan('module');
     foreach ($expected_directories as $module => $directories) {
       $expected_directory = array_shift($directories);
       $expected_uri = "$expected_directory/$module/$module.info.yml";
-      $this->assertEqual($files[$module]->getPathname(), $expected_uri, format_string('Module @actual was found at @expected.', array(
+      $this->assertEqual($files[$module]->getPathname(), $expected_uri, format_string('Module @actual was found at @expected.', [
         '@actual' => $files[$module]->getPathname(),
         '@expected' => $expected_uri,
-      )));
+      ]));
     }
   }
 
@@ -56,7 +56,7 @@ function testDirectoryPrecedence() {
    */
   public function testFileScanIgnoreDirectory() {
     $listing = new ExtensionDiscovery(\Drupal::root(), FALSE);
-    $listing->setProfileDirectories(array('core/profiles/testing'));
+    $listing->setProfileDirectories(['core/profiles/testing']);
     $files = $listing->scan('module');
     $this->assertArrayHasKey('drupal_system_listing_compatible_test', $files);
 
@@ -68,7 +68,7 @@ public function testFileScanIgnoreDirectory() {
 
     $this->setSetting('file_scan_ignore_directories', ['drupal_system_listing_compatible_test']);
     $listing = new ExtensionDiscovery(\Drupal::root(), FALSE);
-    $listing->setProfileDirectories(array('core/profiles/testing'));
+    $listing->setProfileDirectories(['core/profiles/testing']);
     $files = $listing->scan('module');
     $this->assertArrayNotHasKey('drupal_system_listing_compatible_test', $files);
   }
diff --git a/core/modules/system/tests/src/Kernel/Extension/ModuleHandlerTest.php b/core/modules/system/tests/src/Kernel/Extension/ModuleHandlerTest.php
index 8a3e98ed..8ee66ee 100644
--- a/core/modules/system/tests/src/Kernel/Extension/ModuleHandlerTest.php
+++ b/core/modules/system/tests/src/Kernel/Extension/ModuleHandlerTest.php
@@ -44,7 +44,7 @@ function testModuleList() {
     $this->assertModuleList($module_list, 'Initial');
 
     // Try to install a new module.
-    $this->moduleInstaller()->install(array('ban'));
+    $this->moduleInstaller()->install(['ban']);
     $module_list[] = 'ban';
     sort($module_list);
     $this->assertModuleList($module_list, 'After adding a module');
@@ -58,10 +58,10 @@ function testModuleList() {
     $this->assertModuleList($module_list, 'After changing weights');
 
     // Test the fixed list feature.
-    $fixed_list = array(
+    $fixed_list = [
       'system' => 'core/modules/system/system.module',
       'menu' => 'core/modules/menu/menu.module',
-    );
+    ];
     $this->moduleHandler()->setModuleList($fixed_list);
     $new_module_list = array_combine(array_keys($fixed_list), array_keys($fixed_list));
     $this->assertModuleList($new_module_list, t('When using a fixed list'));
@@ -77,7 +77,7 @@ function testModuleList() {
   protected function assertModuleList(array $expected_values, $condition) {
     $expected_values = array_values(array_unique($expected_values));
     $enabled_modules = array_keys($this->container->get('module_handler')->getModuleList());
-    $this->assertEqual($expected_values, $enabled_modules, format_string('@condition: extension handler returns correct results', array('@condition' => $condition)));
+    $this->assertEqual($expected_values, $enabled_modules, format_string('@condition: extension handler returns correct results', ['@condition' => $condition]));
   }
 
   /**
@@ -93,7 +93,7 @@ protected function assertModuleList(array $expected_values, $condition) {
    * @see https://www.drupal.org/files/issues/dep.gv__0.png
    */
   function testDependencyResolution() {
-    $this->enableModules(array('module_test'));
+    $this->enableModules(['module_test']);
     $this->assertTrue($this->moduleHandler()->moduleExists('module_test'), 'Test module is enabled.');
 
     // Ensure that modules are not enabled.
@@ -108,7 +108,7 @@ function testDependencyResolution() {
     drupal_static_reset('system_rebuild_module_data');
 
     try {
-      $result = $this->moduleInstaller()->install(array('color'));
+      $result = $this->moduleInstaller()->install(['color']);
       $this->fail(t('ModuleInstaller::install() throws an exception if dependencies are missing.'));
     }
     catch (MissingDependencyException $e) {
@@ -122,7 +122,7 @@ function testDependencyResolution() {
     \Drupal::state()->set('module_test.dependency', 'dependency');
     drupal_static_reset('system_rebuild_module_data');
 
-    $result = $this->moduleInstaller()->install(array('color'));
+    $result = $this->moduleInstaller()->install(['color']);
     $this->assertTrue($result, 'ModuleInstaller::install() returns the correct value.');
 
     // Verify that the fake dependency chain was installed.
@@ -132,20 +132,20 @@ function testDependencyResolution() {
     $this->assertTrue($this->moduleHandler()->moduleExists('color'), 'Module installation with dependencies succeeded.');
 
     // Verify that the modules were enabled in the correct order.
-    $module_order = \Drupal::state()->get('module_test.install_order') ?: array();
-    $this->assertEqual($module_order, array('help', 'config', 'color'));
+    $module_order = \Drupal::state()->get('module_test.install_order') ?: [];
+    $this->assertEqual($module_order, ['help', 'config', 'color']);
 
     // Uninstall all three modules explicitly, but in the incorrect order,
     // and make sure that ModuleInstaller::uninstall() uninstalled them in the
     // correct sequence.
-    $result = $this->moduleInstaller()->uninstall(array('config', 'help', 'color'));
+    $result = $this->moduleInstaller()->uninstall(['config', 'help', 'color']);
     $this->assertTrue($result, 'ModuleInstaller::uninstall() returned TRUE.');
 
-    foreach (array('color', 'config', 'help') as $module) {
+    foreach (['color', 'config', 'help'] as $module) {
       $this->assertEqual(drupal_get_installed_schema_version($module), SCHEMA_UNINSTALLED, "$module module was uninstalled.");
     }
-    $uninstalled_modules = \Drupal::state()->get('module_test.uninstall_order') ?: array();
-    $this->assertEqual($uninstalled_modules, array('color', 'config', 'help'), 'Modules were uninstalled in the correct order.');
+    $uninstalled_modules = \Drupal::state()->get('module_test.uninstall_order') ?: [];
+    $this->assertEqual($uninstalled_modules, ['color', 'config', 'help'], 'Modules were uninstalled in the correct order.');
 
     // Enable Color module again, which should enable both the Config module and
     // Help module. But, this time do it with Config module declaring a
@@ -154,7 +154,7 @@ function testDependencyResolution() {
     \Drupal::state()->set('module_test.dependency', 'version dependency');
     drupal_static_reset('system_rebuild_module_data');
 
-    $result = $this->moduleInstaller()->install(array('color'));
+    $result = $this->moduleInstaller()->install(['color']);
     $this->assertTrue($result, 'ModuleInstaller::install() returns the correct value.');
 
     // Verify that the fake dependency chain was installed.
@@ -164,8 +164,8 @@ function testDependencyResolution() {
     $this->assertTrue($this->moduleHandler()->moduleExists('color'), 'Module installation with version dependencies succeeded.');
 
     // Finally, verify that the modules were enabled in the correct order.
-    $enable_order = \Drupal::state()->get('module_test.install_order') ?: array();
-    $this->assertIdentical($enable_order, array('help', 'config', 'color'));
+    $enable_order = \Drupal::state()->get('module_test.install_order') ?: [];
+    $this->assertIdentical($enable_order, ['help', 'config', 'color']);
   }
 
   /**
@@ -180,23 +180,23 @@ function testUninstallProfileDependency() {
     // yet have any cached way to retrieve its location.
     // @todo Remove as part of https://www.drupal.org/node/2186491
     drupal_get_filename('profile', $profile, 'core/profiles/' . $profile . '/' . $profile . '.info.yml');
-    $this->enableModules(array('module_test', $profile));
+    $this->enableModules(['module_test', $profile]);
 
     drupal_static_reset('system_rebuild_module_data');
     $data = system_rebuild_module_data();
     $this->assertTrue(isset($data[$profile]->requires[$dependency]));
 
-    $this->moduleInstaller()->install(array($dependency));
+    $this->moduleInstaller()->install([$dependency]);
     $this->assertTrue($this->moduleHandler()->moduleExists($dependency));
 
     // Uninstall the profile module "dependency".
-    $result = $this->moduleInstaller()->uninstall(array($dependency));
+    $result = $this->moduleInstaller()->uninstall([$dependency]);
     $this->assertTrue($result, 'ModuleInstaller::uninstall() returns TRUE.');
     $this->assertFalse($this->moduleHandler()->moduleExists($dependency));
     $this->assertEqual(drupal_get_installed_schema_version($dependency), SCHEMA_UNINSTALLED, "$dependency module was uninstalled.");
 
     // Verify that the installation profile itself was not uninstalled.
-    $uninstalled_modules = \Drupal::state()->get('module_test.uninstall_order') ?: array();
+    $uninstalled_modules = \Drupal::state()->get('module_test.uninstall_order') ?: [];
     $this->assertTrue(in_array($dependency, $uninstalled_modules), "$dependency module is in the list of uninstalled modules.");
     $this->assertFalse(in_array($profile, $uninstalled_modules), 'The installation profile is not in the list of uninstalled modules.');
   }
@@ -205,7 +205,7 @@ function testUninstallProfileDependency() {
    * Tests uninstalling a module that has content.
    */
   function testUninstallContentDependency() {
-    $this->enableModules(array('module_test', 'entity_test', 'text', 'user', 'help'));
+    $this->enableModules(['module_test', 'entity_test', 'text', 'user', 'help']);
     $this->assertTrue($this->moduleHandler()->moduleExists('entity_test'), 'Test module is enabled.');
     $this->assertTrue($this->moduleHandler()->moduleExists('module_test'), 'Test module is enabled.');
 
@@ -224,13 +224,13 @@ function testUninstallContentDependency() {
     drupal_static_reset('system_rebuild_module_data');
 
     // Create an entity so that the modules can not be disabled.
-    $entity = EntityTest::create(array('name' => $this->randomString()));
+    $entity = EntityTest::create(['name' => $this->randomString()]);
     $entity->save();
 
     // Uninstalling entity_test is not possible when there is content.
     try {
       $message = 'ModuleInstaller::uninstall() throws ModuleUninstallValidatorException upon uninstalling a module which does not pass validation.';
-      $this->moduleInstaller()->uninstall(array('entity_test'));
+      $this->moduleInstaller()->uninstall(['entity_test']);
       $this->fail($message);
     }
     catch (ModuleUninstallValidatorException $e) {
@@ -240,7 +240,7 @@ function testUninstallContentDependency() {
     // Uninstalling help needs entity_test to be un-installable.
     try {
       $message = 'ModuleInstaller::uninstall() throws ModuleUninstallValidatorException upon uninstalling a module which does not pass validation.';
-      $this->moduleInstaller()->uninstall(array('help'));
+      $this->moduleInstaller()->uninstall(['help']);
       $this->fail($message);
     }
     catch (ModuleUninstallValidatorException $e) {
@@ -250,7 +250,7 @@ function testUninstallContentDependency() {
     // Deleting the entity.
     $entity->delete();
 
-    $result = $this->moduleInstaller()->uninstall(array('help'));
+    $result = $this->moduleInstaller()->uninstall(['help']);
     $this->assertTrue($result, 'ModuleInstaller::uninstall() returns TRUE.');
     $this->assertEqual(drupal_get_installed_schema_version('entity_test'), SCHEMA_UNINSTALLED, "entity_test module was uninstalled.");
   }
diff --git a/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateDateFormatTest.php b/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateDateFormatTest.php
index 54aaac2..b45a360 100644
--- a/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateDateFormatTest.php
+++ b/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateDateFormatTest.php
@@ -37,7 +37,7 @@ public function testDateFormats() {
     // Test that we can re-import using the EntityDateFormat destination.
     Database::getConnection('default', 'migrate')
       ->update('variable')
-      ->fields(array('value' => serialize('\S\H\O\R\T d/m/Y - H:i')))
+      ->fields(['value' => serialize('\S\H\O\R\T d/m/Y - H:i')])
       ->condition('name', 'date_format_short')
       ->execute();
 
diff --git a/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateMenuTest.php b/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateMenuTest.php
index aff0c3f..51c9377 100644
--- a/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateMenuTest.php
+++ b/core/modules/system/tests/src/Kernel/Migrate/d6/MigrateMenuTest.php
@@ -36,7 +36,7 @@ public function testMenu() {
     // Test that we can re-import using the ConfigEntityBase destination.
     Database::getConnection('default', 'migrate')
       ->update('menu_custom')
-      ->fields(array('title' => 'Home Navigation'))
+      ->fields(['title' => 'Home Navigation'])
       ->condition('menu_name', 'navigation')
       ->execute();
 
diff --git a/core/modules/system/tests/src/Kernel/Migrate/d7/MigrateMenuTest.php b/core/modules/system/tests/src/Kernel/Migrate/d7/MigrateMenuTest.php
index 4a03afe..455be2a 100644
--- a/core/modules/system/tests/src/Kernel/Migrate/d7/MigrateMenuTest.php
+++ b/core/modules/system/tests/src/Kernel/Migrate/d7/MigrateMenuTest.php
@@ -51,7 +51,7 @@ public function testMenu() {
     // Test that we can re-import using the ConfigEntityBase destination.
     Database::getConnection('default', 'migrate')
       ->update('menu_custom')
-      ->fields(array('title' => 'Home Navigation'))
+      ->fields(['title' => 'Home Navigation'])
       ->condition('menu_name', 'navigation')
       ->execute();
 
diff --git a/core/modules/system/tests/src/Kernel/PhpStorage/PhpStorageFactoryTest.php b/core/modules/system/tests/src/Kernel/PhpStorage/PhpStorageFactoryTest.php
index 8adee9d..4d1c258 100644
--- a/core/modules/system/tests/src/Kernel/PhpStorage/PhpStorageFactoryTest.php
+++ b/core/modules/system/tests/src/Kernel/PhpStorage/PhpStorageFactoryTest.php
@@ -57,19 +57,19 @@ public function testGetOverride() {
     $this->assertTrue($php instanceof MockPhpStorage, 'A MockPhpStorage instance was returned from overridden settings.');
 
     // Test that the name is used for the bin when it is NULL.
-    $this->setSettings('test', array('bin' => NULL));
+    $this->setSettings('test', ['bin' => NULL]);
     $php = PhpStorageFactory::get('test');
     $this->assertTrue($php instanceof MockPhpStorage, 'An MockPhpStorage instance was returned from overridden settings.');
     $this->assertSame('test', $php->getConfigurationValue('bin'), 'Name value was used for bin.');
 
     // Test that a default directory is set if it's empty.
-    $this->setSettings('test', array('directory' => NULL));
+    $this->setSettings('test', ['directory' => NULL]);
     $php = PhpStorageFactory::get('test');
     $this->assertTrue($php instanceof MockPhpStorage, 'An MockPhpStorage instance was returned from overridden settings.');
     $this->assertSame(PublicStream::basePath() . '/php', $php->getConfigurationValue('directory'), 'Default file directory was used.');
 
     // Test that a default storage class is set if it's empty.
-    $this->setSettings('test', array('class' => NULL));
+    $this->setSettings('test', ['class' => NULL]);
     $php = PhpStorageFactory::get('test');
     $this->assertTrue($php instanceof MTimeProtectedFileStorage, 'An MTimeProtectedFileStorage instance was returned from overridden settings with no class.');
 
@@ -79,7 +79,7 @@ public function testGetOverride() {
     $this->assertNotEquals('mock hash salt', $php->getConfigurationValue('secret'), 'The default secret is not used if a secret is set in the overridden settings.');
 
     // Test that a default secret is set if it's empty.
-    $this->setSettings('test', array('secret' => NULL));
+    $this->setSettings('test', ['secret' => NULL]);
     $php = PhpStorageFactory::get('test');
     $this->assertSame('mock hash salt', $php->getConfigurationValue('secret'), 'The default secret is used if one is not set in the overridden settings.');
   }
@@ -92,13 +92,13 @@ public function testGetOverride() {
    * @param array $configuration
    *   An array of configuration to set. Will be merged with default values.
    */
-  protected function setSettings($name = 'default', array $configuration = array()) {
-    $settings['php_storage'][$name] = $configuration + array(
+  protected function setSettings($name = 'default', array $configuration = []) {
+    $settings['php_storage'][$name] = $configuration + [
       'class' => 'Drupal\system\PhpStorage\MockPhpStorage',
       'directory' => 'tmp://',
       'secret' => $this->randomString(),
       'bin' => 'test',
-    );
+    ];
     $settings['hash_salt'] = 'mock hash salt';
     new Settings($settings);
   }
diff --git a/core/modules/system/tests/src/Kernel/Render/ClassyTest.php b/core/modules/system/tests/src/Kernel/Render/ClassyTest.php
index 76cf23e..776cb2e 100644
--- a/core/modules/system/tests/src/Kernel/Render/ClassyTest.php
+++ b/core/modules/system/tests/src/Kernel/Render/ClassyTest.php
@@ -14,7 +14,7 @@ class ClassyTest extends KernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('system', 'twig_theme_test');
+  public static $modules = ['system', 'twig_theme_test'];
 
   /**
    * {@inheritdoc}
@@ -39,9 +39,9 @@ public function setUp() {
   function testClassyTheme() {
     drupal_set_message('An error occurred', 'error');
     drupal_set_message('But then something nice happened');
-    $messages = array(
+    $messages = [
       '#type' => 'status_messages',
-    );
+    ];
     $this->render($messages);
     $this->assertNoText('custom-test-messages-class', 'The custom class attribute value added in the status messages preprocess function is not displayed as page content.');
   }
diff --git a/core/modules/system/tests/src/Kernel/Scripts/DbImportCommandTest.php b/core/modules/system/tests/src/Kernel/Scripts/DbImportCommandTest.php
index c90d226..8a292e5 100644
--- a/core/modules/system/tests/src/Kernel/Scripts/DbImportCommandTest.php
+++ b/core/modules/system/tests/src/Kernel/Scripts/DbImportCommandTest.php
@@ -51,10 +51,10 @@ class DbImportCommandTest extends KernelTestBase {
    * @requires extension pdo_sqlite
    */
   public function testDbImportCommand() {
-    $connection_info = array(
+    $connection_info = [
       'driver' => 'sqlite',
       'database' => ':memory:',
-    );
+    ];
     Database::addConnectionInfo($this->databasePrefix, 'default', $connection_info);
 
     $command = new DbImportCommand();
diff --git a/core/modules/system/tests/src/Kernel/System/CronQueueTest.php b/core/modules/system/tests/src/Kernel/System/CronQueueTest.php
index c51ee5a..649a2c7 100644
--- a/core/modules/system/tests/src/Kernel/System/CronQueueTest.php
+++ b/core/modules/system/tests/src/Kernel/System/CronQueueTest.php
@@ -55,7 +55,7 @@ public function testExceptions() {
     $queue = $this->container->get('queue')->get('cron_queue_test_exception');
 
     // Enqueue an item for processing.
-    $queue->createItem(array($this->randomMachineName() => $this->randomMachineName()));
+    $queue->createItem([$this->randomMachineName() => $this->randomMachineName()]);
 
     // Run cron; the worker for this queue should throw an exception and handle
     // it.
diff --git a/core/modules/system/tests/src/Kernel/System/InfoAlterTest.php b/core/modules/system/tests/src/Kernel/System/InfoAlterTest.php
index 8e6f79e..f896327 100644
--- a/core/modules/system/tests/src/Kernel/System/InfoAlterTest.php
+++ b/core/modules/system/tests/src/Kernel/System/InfoAlterTest.php
@@ -11,7 +11,7 @@
  */
 class InfoAlterTest extends KernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Tests that theme .info.yml data is rebuild after enabling a module.
@@ -26,7 +26,7 @@ function testSystemInfoAlter() {
     $this->assertFalse(isset($info['node']->info['required']), 'Before the module_required_test is installed the node module is not required.');
 
     // Enable the test module.
-    \Drupal::service('module_installer')->install(array('module_required_test'), FALSE);
+    \Drupal::service('module_installer')->install(['module_required_test'], FALSE);
     $this->assertTrue(\Drupal::moduleHandler()->moduleExists('module_required_test'), 'Test required module is enabled.');
 
     $info = system_rebuild_module_data();
diff --git a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
index 040cf1a..b334e64 100644
--- a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
+++ b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTest.php
@@ -29,25 +29,25 @@ protected function setUp() {
    */
   public function testSystemTokenRecognition() {
     // Generate prefixes and suffixes for the token context.
-    $tests = array(
-      array('prefix' => 'this is the ', 'suffix' => ' site'),
-      array('prefix' => 'this is the', 'suffix' => 'site'),
-      array('prefix' => '[', 'suffix' => ']'),
-      array('prefix' => '', 'suffix' => ']]]'),
-      array('prefix' => '[[[', 'suffix' => ''),
-      array('prefix' => ':[:', 'suffix' => '--]'),
-      array('prefix' => '-[-', 'suffix' => ':]:'),
-      array('prefix' => '[:', 'suffix' => ']'),
-      array('prefix' => '[site:', 'suffix' => ':name]'),
-      array('prefix' => '[site:', 'suffix' => ']'),
-    );
+    $tests = [
+      ['prefix' => 'this is the ', 'suffix' => ' site'],
+      ['prefix' => 'this is the', 'suffix' => 'site'],
+      ['prefix' => '[', 'suffix' => ']'],
+      ['prefix' => '', 'suffix' => ']]]'],
+      ['prefix' => '[[[', 'suffix' => ''],
+      ['prefix' => ':[:', 'suffix' => '--]'],
+      ['prefix' => '-[-', 'suffix' => ':]:'],
+      ['prefix' => '[:', 'suffix' => ']'],
+      ['prefix' => '[site:', 'suffix' => ':name]'],
+      ['prefix' => '[site:', 'suffix' => ']'],
+    ];
 
     // Check if the token is recognized in each of the contexts.
     foreach ($tests as $test) {
       $input = $test['prefix'] . '[site:name]' . $test['suffix'];
       $expected = $test['prefix'] . 'Drupal' . $test['suffix'];
-      $output = $this->tokenService->replace($input, array(), array('langcode' => $this->interfaceLanguage->getId()));
-      $this->assertTrue($output == $expected, format_string('Token recognized in string %string', array('%string' => $input)));
+      $output = $this->tokenService->replace($input, [], ['langcode' => $this->interfaceLanguage->getId()]);
+      $this->assertTrue($output == $expected, format_string('Token recognized in string %string', ['%string' => $input]));
     }
 
     // Test token replacement when the string contains no tokens.
@@ -67,12 +67,12 @@ public function testClear() {
 
     // Replace with the clear parameter, only the valid token should remain.
     $target = Html::escape($this->config('system.site')->get('name'));
-    $result = $this->tokenService->replace($source, array(), array('langcode' => $this->interfaceLanguage->getId(), 'clear' => TRUE));
+    $result = $this->tokenService->replace($source, [], ['langcode' => $this->interfaceLanguage->getId(), 'clear' => TRUE]);
     $this->assertEqual($target, $result, 'Valid tokens replaced while invalid tokens ignored.');
 
     $target .= '[user:name]';
     $target .= '[bogus:token]';
-    $result = $this->tokenService->replace($source, array(), array('langcode' => $this->interfaceLanguage->getId()));
+    $result = $this->tokenService->replace($source, [], ['langcode' => $this->interfaceLanguage->getId()]);
     $this->assertEqual($target, $result, 'Valid tokens replaced while invalid tokens ignored.');
   }
 
@@ -80,10 +80,10 @@ public function testClear() {
    * Tests the generation of all system site information tokens.
    */
   public function testSystemSiteTokenReplacement() {
-    $url_options = array(
+    $url_options = [
       'absolute' => TRUE,
       'language' => $this->interfaceLanguage,
-    );
+    ];
 
     $slogan = '<blink>Slogan</blink>';
     $safe_slogan = Xss::filterAdmin($slogan);
@@ -98,12 +98,12 @@ public function testSystemSiteTokenReplacement() {
 
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $tests['[site:name]'] = Html::escape($config->get('name'));
     $tests['[site:slogan]'] = $safe_slogan;
     $tests['[site:mail]'] = $config->get('mail');
     $tests['[site:url]'] = \Drupal::url('<front>', [], $url_options);
-    $tests['[site:url-brief]'] = preg_replace(array('!^https?://!', '!/$!'), '', \Drupal::url('<front>', [], $url_options));
+    $tests['[site:url-brief]'] = preg_replace(['!^https?://!', '!/$!'], '', \Drupal::url('<front>', [], $url_options));
     $tests['[site:login-url]'] = \Drupal::url('user.page', [], $url_options);
 
     $base_bubbleable_metadata = new BubbleableMetadata();
@@ -122,7 +122,7 @@ public function testSystemSiteTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $this->tokenService->replace($input, array(), array('langcode' => $this->interfaceLanguage->getId()), $bubbleable_metadata);
+      $output = $this->tokenService->replace($input, [], ['langcode' => $this->interfaceLanguage->getId()], $bubbleable_metadata);
       $this->assertEqual($output, $expected, new FormattableMarkup('System site information token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
@@ -136,21 +136,21 @@ public function testSystemDateTokenReplacement() {
     $date = REQUEST_TIME - 3600;
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $date_formatter = \Drupal::service('date.formatter');
     $tests['[date:short]'] = $date_formatter->format($date, 'short', '', NULL, $this->interfaceLanguage->getId());
     $tests['[date:medium]'] = $date_formatter->format($date, 'medium', '', NULL, $this->interfaceLanguage->getId());
     $tests['[date:long]'] = $date_formatter->format($date, 'long', '', NULL, $this->interfaceLanguage->getId());
     $tests['[date:custom:m/j/Y]'] = $date_formatter->format($date, 'custom', 'm/j/Y', NULL, $this->interfaceLanguage->getId());
-    $tests['[date:since]'] = $date_formatter->formatTimeDiffSince($date, array('langcode' => $this->interfaceLanguage->getId()));
+    $tests['[date:since]'] = $date_formatter->formatTimeDiffSince($date, ['langcode' => $this->interfaceLanguage->getId()]);
     $tests['[date:raw]'] = Xss::filter($date);
 
     // Test to make sure that we generated something for each token.
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
 
     foreach ($tests as $input => $expected) {
-      $output = $this->tokenService->replace($input, array('date' => $date), array('langcode' => $this->interfaceLanguage->getId()));
-      $this->assertEqual($output, $expected, format_string('Date token %token replaced.', array('%token' => $input)));
+      $output = $this->tokenService->replace($input, ['date' => $date], ['langcode' => $this->interfaceLanguage->getId()]);
+      $this->assertEqual($output, $expected, format_string('Date token %token replaced.', ['%token' => $input]));
     }
   }
 
diff --git a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTestBase.php b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTestBase.php
index 0e2a3fc..2c83390 100644
--- a/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTestBase.php
+++ b/core/modules/system/tests/src/Kernel/Token/TokenReplaceKernelTestBase.php
@@ -28,12 +28,12 @@
    *
    * @var array
    */
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   protected function setUp() {
     parent::setUp();
     // Install default system configuration.
-    $this->installConfig(array('system'));
+    $this->installConfig(['system']);
     \Drupal::service('router.builder')->rebuild();
 
     $this->interfaceLanguage = \Drupal::languageManager()->getCurrentLanguage();
diff --git a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
index eb095a7..d1eb8fb 100644
--- a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
+++ b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
@@ -94,7 +94,7 @@ protected function setUp() {
 
     $this->requestMatcher = $this->getMock('\Symfony\Component\Routing\Matcher\RequestMatcherInterface');
 
-    $config_factory = $this->getConfigFactoryStub(array('system.site' => array('front' => 'test_frontpage')));
+    $config_factory = $this->getConfigFactoryStub(['system.site' => ['front' => 'test_frontpage']]);
 
     $this->pathProcessor = $this->getMock('\Drupal\Core\PathProcessor\InboundPathProcessorInterface');
     $this->context = $this->getMock('\Drupal\Core\Routing\RequestContext');
@@ -182,11 +182,11 @@ public function testBuildWithTwoPathElements() {
       ->method('matchRequest')
       ->will($this->returnCallback(function(Request $request) use ($route_1) {
         if ($request->getPathInfo() == '/example') {
-          return array(
+          return [
             RouteObjectInterface::ROUTE_NAME => 'example',
             RouteObjectInterface::ROUTE_OBJECT => $route_1,
-            '_raw_variables' => new ParameterBag(array()),
-          );
+            '_raw_variables' => new ParameterBag([]),
+          ];
         }
       }));
 
@@ -218,18 +218,18 @@ public function testBuildWithThreePathElements() {
       ->method('matchRequest')
       ->will($this->returnCallback(function(Request $request) use ($route_1, $route_2) {
         if ($request->getPathInfo() == '/example/bar') {
-          return array(
+          return [
             RouteObjectInterface::ROUTE_NAME => 'example_bar',
             RouteObjectInterface::ROUTE_OBJECT => $route_1,
-            '_raw_variables' => new ParameterBag(array()),
-          );
+            '_raw_variables' => new ParameterBag([]),
+          ];
         }
         elseif ($request->getPathInfo() == '/example') {
-          return array(
+          return [
             RouteObjectInterface::ROUTE_NAME => 'example',
             RouteObjectInterface::ROUTE_OBJECT => $route_2,
-            '_raw_variables' => new ParameterBag(array()),
-          );
+            '_raw_variables' => new ParameterBag([]),
+          ];
         }
       }));
 
@@ -286,11 +286,11 @@ public function testBuildWithException($exception_class, $exception_argument) {
    * @see \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithException()
    */
   public function providerTestBuildWithException() {
-    return array(
-      array('Drupal\Core\ParamConverter\ParamNotConvertedException', ''),
-      array('Symfony\Component\Routing\Exception\MethodNotAllowedException', array()),
-      array('Symfony\Component\Routing\Exception\ResourceNotFoundException', ''),
-    );
+    return [
+      ['Drupal\Core\ParamConverter\ParamNotConvertedException', ''],
+      ['Symfony\Component\Routing\Exception\MethodNotAllowedException', []],
+      ['Symfony\Component\Routing\Exception\ResourceNotFoundException', ''],
+    ];
   }
 
   /**
@@ -310,7 +310,7 @@ public function testBuildWithNonProcessedPath() {
 
     $this->requestMatcher->expects($this->any())
       ->method('matchRequest')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
 
     $breadcrumb = $this->builder->build($this->getMock('Drupal\Core\Routing\RouteMatchInterface'));
 
@@ -348,11 +348,11 @@ public function testBuildWithUserPath() {
       ->method('matchRequest')
       ->will($this->returnCallback(function(Request $request) use ($route_1) {
         if ($request->getPathInfo() == '/user/1') {
-          return array(
+          return [
             RouteObjectInterface::ROUTE_NAME => 'user_page',
             RouteObjectInterface::ROUTE_OBJECT => $route_1,
-            '_raw_variables' => new ParameterBag(array()),
-          );
+            '_raw_variables' => new ParameterBag([]),
+          ];
         }
       }));
 
diff --git a/core/modules/system/tests/src/Unit/Installer/InstallTranslationFilePatternTest.php b/core/modules/system/tests/src/Unit/Installer/InstallTranslationFilePatternTest.php
index fd2b884..0dd7510 100644
--- a/core/modules/system/tests/src/Unit/Installer/InstallTranslationFilePatternTest.php
+++ b/core/modules/system/tests/src/Unit/Installer/InstallTranslationFilePatternTest.php
@@ -45,11 +45,11 @@ public function testFilesPatternValid($langcode, $filename) {
    * @return array
    */
   public function providerValidTranslationFiles() {
-    return array(
-      array('hu', 'drupal-8.0.0-alpha1.hu.po'),
-      array('ta', 'drupal-8.10.10-beta12.ta.po'),
-      array('hi', 'drupal-8.0.0.hi.po'),
-    );
+    return [
+      ['hu', 'drupal-8.0.0-alpha1.hu.po'],
+      ['ta', 'drupal-8.10.10-beta12.ta.po'],
+      ['hi', 'drupal-8.0.0.hi.po'],
+    ];
   }
 
   /**
@@ -64,13 +64,13 @@ public function testFilesPatternInvalid($langcode, $filename) {
    * @return array
    */
   public function providerInvalidTranslationFiles() {
-    return array(
-      array('hu', 'drupal-alpha1-*-hu.po'),
-      array('ta', 'drupal-beta12.ta'),
-      array('hi', 'drupal-hi.po'),
-      array('de', 'drupal-dummy-de.po'),
-      array('hu', 'drupal-10.0.1.alpha1-hu.po'),
-    );
+    return [
+      ['hu', 'drupal-alpha1-*-hu.po'],
+      ['ta', 'drupal-beta12.ta'],
+      ['hi', 'drupal-hi.po'],
+      ['de', 'drupal-dummy-de.po'],
+      ['hu', 'drupal-10.0.1.alpha1-hu.po'],
+    ];
   }
 
 }
diff --git a/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php b/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
index 9f0afc6..c632a3e 100644
--- a/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
+++ b/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
@@ -25,20 +25,20 @@ class SystemLocalTasksTest extends LocalTaskIntegrationTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->directoryList = array(
+    $this->directoryList = [
       'system' => 'core/modules/system',
-    );
+    ];
 
     $this->themeHandler = $this->getMock('Drupal\Core\Extension\ThemeHandlerInterface');
 
     $theme = new Extension($this->root, 'theme', '/core/themes/bartik', 'bartik.info.yml');
     $theme->status = 1;
-    $theme->info = array('name' => 'bartik');
+    $theme->info = ['name' => 'bartik'];
     $this->themeHandler->expects($this->any())
       ->method('listInfo')
-      ->will($this->returnValue(array(
+      ->will($this->returnValue([
         'bartik' => $theme,
-      )));
+      ]));
     $this->themeHandler->expects($this->any())
       ->method('hasUi')
       ->with('bartik')
@@ -59,13 +59,13 @@ public function testSystemAdminLocalTasks($route, $expected) {
    * Provides a list of routes to test.
    */
   public function getSystemAdminRoutes() {
-    return array(
-      array('system.admin_content', array(array('system.admin_content'))),
-      array('system.theme_settings_theme', array(
-        array('system.themes_page', 'system.theme_settings'),
-        array('system.theme_settings_global', 'system.theme_settings_theme:bartik'),
-      )),
-    );
+    return [
+      ['system.admin_content', [['system.admin_content']]],
+      ['system.theme_settings_theme', [
+        ['system.themes_page', 'system.theme_settings'],
+        ['system.theme_settings_global', 'system.theme_settings_theme:bartik'],
+      ]],
+    ];
   }
 
 }
diff --git a/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php b/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
index 90696fd..689c178 100644
--- a/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
+++ b/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
@@ -53,21 +53,21 @@ protected function setUp() {
    *     - The expected content of the JSONresponse.
    */
   public function providerTestMachineNameController() {
-    $valid_data = array(
-      array(array('text' => 'Bob', 'langcode' => 'en'), '"Bob"'),
-      array(array('text' => 'Bob', 'langcode' => 'en', 'lowercase' => TRUE), '"bob"'),
-      array(array('text' => 'Bob', 'langcode' => 'en', 'replace' => 'Alice', 'replace_pattern' => 'Bob'), '"Alice"'),
-      array(array('text' => 'Bob', 'langcode' => 'en', 'replace' => 'Alice', 'replace_pattern' => 'Tom'), '"Bob"'),
-      array(array('text' => 'Äwesome', 'langcode' => 'en', 'lowercase' => TRUE), '"awesome"'),
-      array(array('text' => 'Äwesome', 'langcode' => 'de', 'lowercase' => TRUE), '"aewesome"'),
+    $valid_data = [
+      [['text' => 'Bob', 'langcode' => 'en'], '"Bob"'],
+      [['text' => 'Bob', 'langcode' => 'en', 'lowercase' => TRUE], '"bob"'],
+      [['text' => 'Bob', 'langcode' => 'en', 'replace' => 'Alice', 'replace_pattern' => 'Bob'], '"Alice"'],
+      [['text' => 'Bob', 'langcode' => 'en', 'replace' => 'Alice', 'replace_pattern' => 'Tom'], '"Bob"'],
+      [['text' => 'Äwesome', 'langcode' => 'en', 'lowercase' => TRUE], '"awesome"'],
+      [['text' => 'Äwesome', 'langcode' => 'de', 'lowercase' => TRUE], '"aewesome"'],
       // Tests special characters replacement in the input text.
-      array(array('text' => 'B?!"@\/-ob@e', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => '_', 'replace_pattern' => '[^a-z0-9_.]+'), '"b_ob_e"'),
+      [['text' => 'B?!"@\/-ob@e', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => '_', 'replace_pattern' => '[^a-z0-9_.]+'], '"b_ob_e"'],
       // Tests @ character in the replace_pattern regex.
-      array(array('text' => 'Bob@e\0', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => '_', 'replace_pattern' => '[^a-z0-9_.@]+'), '"bob@e_0"'),
+      [['text' => 'Bob@e\0', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => '_', 'replace_pattern' => '[^a-z0-9_.@]+'], '"bob@e_0"'],
       // Tests null byte in the replace_pattern regex.
-      array(array('text' => 'Bob', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => 'fail()', 'replace_pattern' => ".*@e\0"), '"bob"'),
-      array(array('text' => 'Bob@e', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => 'fail()', 'replace_pattern' => ".*@e\0"), '"fail()"'),
-    );
+      [['text' => 'Bob', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => 'fail()', 'replace_pattern' => ".*@e\0"], '"bob"'],
+      [['text' => 'Bob@e', 'langcode' => 'en', 'lowercase' => TRUE, 'replace' => 'fail()', 'replace_pattern' => ".*@e\0"], '"fail()"'],
+    ];
 
     $valid_data = array_map(function ($data) {
       if (isset($data[0]['replace_pattern'])) {
diff --git a/core/modules/system/tests/themes/engines/nyan_cat/nyan_cat.engine b/core/modules/system/tests/themes/engines/nyan_cat/nyan_cat.engine
index 04666dc..21cf116 100644
--- a/core/modules/system/tests/themes/engines/nyan_cat/nyan_cat.engine
+++ b/core/modules/system/tests/themes/engines/nyan_cat/nyan_cat.engine
@@ -21,7 +21,7 @@ function nyan_cat_init(Extension $theme) {
  * Implements hook_theme().
  */
 function nyan_cat_theme($existing, $type, $theme, $path) {
-  $templates = drupal_find_theme_functions($existing, array($theme));
+  $templates = drupal_find_theme_functions($existing, [$theme]);
   $templates += drupal_find_theme_templates($existing, '.nyan-cat.html', $path);
   return $templates;
 }
diff --git a/core/modules/system/tests/themes/test_subtheme/test_subtheme.theme b/core/modules/system/tests/themes/test_subtheme/test_subtheme.theme
index cd312db..78333a9 100644
--- a/core/modules/system/tests/themes/test_subtheme/test_subtheme.theme
+++ b/core/modules/system/tests/themes/test_subtheme/test_subtheme.theme
@@ -23,7 +23,7 @@ function test_subtheme_views_post_render(ViewExecutable $view, &$output, CachePl
   // We append the function name to the title for test to check for.
   $view->setTitle($view->getTitle() . ":" . __FUNCTION__);
   if ($view->id() == 'test_page_display') {
-    $output['#rows'][0]['#title'] = t('%total_rows items found.', array('%total_rows' => $view->total_rows));
+    $output['#rows'][0]['#title'] = t('%total_rows items found.', ['%total_rows' => $view->total_rows]);
   }
 }
 
diff --git a/core/modules/taxonomy/src/Controller/TaxonomyController.php b/core/modules/taxonomy/src/Controller/TaxonomyController.php
index 843cdd7..27b1ec0 100644
--- a/core/modules/taxonomy/src/Controller/TaxonomyController.php
+++ b/core/modules/taxonomy/src/Controller/TaxonomyController.php
@@ -22,7 +22,7 @@ class TaxonomyController extends ControllerBase {
    *   The taxonomy term add form.
    */
   public function addForm(VocabularyInterface $taxonomy_vocabulary) {
-    $term = $this->entityManager()->getStorage('taxonomy_term')->create(array('vid' => $taxonomy_vocabulary->id()));
+    $term = $this->entityManager()->getStorage('taxonomy_term')->create(['vid' => $taxonomy_vocabulary->id()]);
     return $this->entityFormBuilder()->getForm($term);
   }
 
diff --git a/core/modules/taxonomy/src/Entity/Term.php b/core/modules/taxonomy/src/Entity/Term.php
index 7aca19f..535fa8c 100644
--- a/core/modules/taxonomy/src/Entity/Term.php
+++ b/core/modules/taxonomy/src/Entity/Term.php
@@ -61,7 +61,7 @@ public static function postDelete(EntityStorageInterface $storage, array $entiti
     parent::postDelete($storage, $entities);
 
     // See if any of the term's children are about to be become orphans.
-    $orphans = array();
+    $orphans = [];
     foreach (array_keys($entities) as $tid) {
       if ($children = $storage->loadChildren($tid)) {
         foreach ($children as $child) {
@@ -92,7 +92,7 @@ public function postSave(EntityStorageInterface $storage, $update = TRUE) {
     // Only change the parents if a value is set, keep the existing values if
     // not.
     if (isset($this->parent->target_id)) {
-      $storage->deleteTermHierarchy(array($this->id()));
+      $storage->deleteTermHierarchy([$this->id()]);
       $storage->updateTermHierarchy($this);
     }
   }
@@ -119,30 +119,30 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setTranslatable(TRUE)
       ->setRequired(TRUE)
       ->setSetting('max_length', 255)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'string',
         'weight' => -5,
-      ))
-      ->setDisplayOptions('form', array(
+      ])
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => -5,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['description'] = BaseFieldDefinition::create('text_long')
       ->setLabel(t('Description'))
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
         'label' => 'hidden',
         'type' => 'text_default',
         'weight' => 0,
-      ))
+      ])
       ->setDisplayConfigurable('view', TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'text_textfield',
         'weight' => 0,
-      ))
+      ])
       ->setDisplayConfigurable('form', TRUE);
 
     $fields['weight'] = BaseFieldDefinition::create('integer')
diff --git a/core/modules/taxonomy/src/Entity/Vocabulary.php b/core/modules/taxonomy/src/Entity/Vocabulary.php
index a2d7eef..b0d1ac1 100644
--- a/core/modules/taxonomy/src/Entity/Vocabulary.php
+++ b/core/modules/taxonomy/src/Entity/Vocabulary.php
@@ -140,13 +140,13 @@ public static function postDelete(EntityStorageInterface $storage, array $entiti
       return;
     }
 
-    $vocabularies = array();
+    $vocabularies = [];
     foreach ($entities as $vocabulary) {
       $vocabularies[$vocabulary->id()] = $vocabulary->id();
     }
     // Load all Taxonomy module fields and delete those which use only this
     // vocabulary.
-    $field_storages = entity_load_multiple_by_properties('field_storage_config', array('module' => 'taxonomy'));
+    $field_storages = entity_load_multiple_by_properties('field_storage_config', ['module' => 'taxonomy']);
     foreach ($field_storages as $field_storage) {
       $modified_storage = FALSE;
       // Term reference fields may reference terms from more than one
diff --git a/core/modules/taxonomy/src/Form/OverviewTerms.php b/core/modules/taxonomy/src/Form/OverviewTerms.php
index 4c8cee3..b5014bb 100644
--- a/core/modules/taxonomy/src/Form/OverviewTerms.php
+++ b/core/modules/taxonomy/src/Form/OverviewTerms.php
@@ -101,10 +101,10 @@ public function buildForm(array $form, FormStateInterface $form_state, Vocabular
     $forward_step = 0;
 
     // An array of the terms to be displayed on this page.
-    $current_page = array();
+    $current_page = [];
 
     $delta = 0;
-    $term_deltas = array();
+    $term_deltas = [];
     $tree = $this->storageController->loadTree($taxonomy_vocabulary->id(), 0, NULL, TRUE);
     $tree_index = 0;
     do {
@@ -199,93 +199,93 @@ public function buildForm(array $form, FormStateInterface $form_state, Vocabular
     $destination = $this->getDestinationArray();
     $row_position = 0;
     // Build the actual form.
-    $form['terms'] = array(
+    $form['terms'] = [
       '#type' => 'table',
-      '#header' => array($this->t('Name'), $this->t('Weight'), $this->t('Operations')),
-      '#empty' => $this->t('No terms available. <a href=":link">Add term</a>.', array(':link' => $this->url('entity.taxonomy_term.add_form', array('taxonomy_vocabulary' => $taxonomy_vocabulary->id())))),
-      '#attributes' => array(
+      '#header' => [$this->t('Name'), $this->t('Weight'), $this->t('Operations')],
+      '#empty' => $this->t('No terms available. <a href=":link">Add term</a>.', [':link' => $this->url('entity.taxonomy_term.add_form', ['taxonomy_vocabulary' => $taxonomy_vocabulary->id()])]),
+      '#attributes' => [
         'id' => 'taxonomy',
-      ),
-    );
+      ],
+    ];
     foreach ($current_page as $key => $term) {
       /** @var $term \Drupal\Core\Entity\EntityInterface */
       $form['terms'][$key]['#term'] = $term;
-      $indentation = array();
+      $indentation = [];
       if (isset($term->depth) && $term->depth > 0) {
-        $indentation = array(
+        $indentation = [
           '#theme' => 'indentation',
           '#size' => $term->depth,
-        );
+        ];
       }
-      $form['terms'][$key]['term'] = array(
+      $form['terms'][$key]['term'] = [
         '#prefix' => !empty($indentation) ? drupal_render($indentation) : '',
         '#type' => 'link',
         '#title' => $term->getName(),
         '#url' => $term->urlInfo(),
-      );
+      ];
       if ($taxonomy_vocabulary->getHierarchy() != VocabularyInterface::HIERARCHY_MULTIPLE && count($tree) > 1) {
         $parent_fields = TRUE;
-        $form['terms'][$key]['term']['tid'] = array(
+        $form['terms'][$key]['term']['tid'] = [
           '#type' => 'hidden',
           '#value' => $term->id(),
-          '#attributes' => array(
-            'class' => array('term-id'),
-          ),
-        );
-        $form['terms'][$key]['term']['parent'] = array(
+          '#attributes' => [
+            'class' => ['term-id'],
+          ],
+        ];
+        $form['terms'][$key]['term']['parent'] = [
           '#type' => 'hidden',
           // Yes, default_value on a hidden. It needs to be changeable by the
           // javascript.
           '#default_value' => $term->parents[0],
-          '#attributes' => array(
-            'class' => array('term-parent'),
-          ),
-        );
-        $form['terms'][$key]['term']['depth'] = array(
+          '#attributes' => [
+            'class' => ['term-parent'],
+          ],
+        ];
+        $form['terms'][$key]['term']['depth'] = [
           '#type' => 'hidden',
           // Same as above, the depth is modified by javascript, so it's a
           // default_value.
           '#default_value' => $term->depth,
-          '#attributes' => array(
-            'class' => array('term-depth'),
-          ),
-        );
+          '#attributes' => [
+            'class' => ['term-depth'],
+          ],
+        ];
       }
-      $form['terms'][$key]['weight'] = array(
+      $form['terms'][$key]['weight'] = [
         '#type' => 'weight',
         '#delta' => $delta,
         '#title' => $this->t('Weight for added term'),
         '#title_display' => 'invisible',
         '#default_value' => $term->getWeight(),
-        '#attributes' => array(
-          'class' => array('term-weight'),
-        ),
-      );
-      $operations = array(
-        'edit' => array(
+        '#attributes' => [
+          'class' => ['term-weight'],
+        ],
+      ];
+      $operations = [
+        'edit' => [
           'title' => $this->t('Edit'),
           'query' => $destination,
           'url' => $term->urlInfo('edit-form'),
-        ),
-        'delete' => array(
+        ],
+        'delete' => [
           'title' => $this->t('Delete'),
           'query' => $destination,
           'url' => $term->urlInfo('delete-form'),
-        ),
-      );
+        ],
+      ];
       if ($this->moduleHandler->moduleExists('content_translation') && content_translation_translate_access($term)->isAllowed()) {
-        $operations['translate'] = array(
+        $operations['translate'] = [
           'title' => $this->t('Translate'),
           'query' => $destination,
           'url' => $term->urlInfo('drupal:content-translation-overview'),
-        );
+        ];
       }
-      $form['terms'][$key]['operations'] = array(
+      $form['terms'][$key]['operations'] = [
         '#type' => 'operations',
         '#links' => $operations,
-      );
+      ];
 
-      $form['terms'][$key]['#attributes']['class'] = array();
+      $form['terms'][$key]['#attributes']['class'] = [];
       if ($parent_fields) {
         $form['terms'][$key]['#attributes']['class'][] = 'draggable';
       }
@@ -314,44 +314,44 @@ public function buildForm(array $form, FormStateInterface $form_state, Vocabular
     }
 
     if ($parent_fields) {
-      $form['terms']['#tabledrag'][] = array(
+      $form['terms']['#tabledrag'][] = [
         'action' => 'match',
         'relationship' => 'parent',
         'group' => 'term-parent',
         'subgroup' => 'term-parent',
         'source' => 'term-id',
         'hidden' => FALSE,
-      );
-      $form['terms']['#tabledrag'][] = array(
+      ];
+      $form['terms']['#tabledrag'][] = [
         'action' => 'depth',
         'relationship' => 'group',
         'group' => 'term-depth',
         'hidden' => FALSE,
-      );
+      ];
       $form['terms']['#attached']['library'][] = 'taxonomy/drupal.taxonomy';
       $form['terms']['#attached']['drupalSettings']['taxonomy'] = [
         'backStep' => $back_step,
         'forwardStep' => $forward_step,
       ];
     }
-    $form['terms']['#tabledrag'][] = array(
+    $form['terms']['#tabledrag'][] = [
       'action' => 'order',
       'relationship' => 'sibling',
       'group' => 'term-weight',
-    );
+    ];
 
     if ($taxonomy_vocabulary->getHierarchy() != VocabularyInterface::HIERARCHY_MULTIPLE && count($tree) > 1) {
-      $form['actions'] = array('#type' => 'actions', '#tree' => FALSE);
-      $form['actions']['submit'] = array(
+      $form['actions'] = ['#type' => 'actions', '#tree' => FALSE];
+      $form['actions']['submit'] = [
         '#type' => 'submit',
         '#value' => $this->t('Save'),
         '#button_type' => 'primary',
-      );
-      $form['actions']['reset_alphabetical'] = array(
+      ];
+      $form['actions']['reset_alphabetical'] = [
         '#type' => 'submit',
-        '#submit' => array('::submitReset'),
+        '#submit' => ['::submitReset'],
         '#value' => $this->t('Reset to alphabetical'),
-      );
+      ];
     }
 
     $form['pager_pager'] = ['#type' => 'pager'];
@@ -378,13 +378,13 @@ public function buildForm(array $form, FormStateInterface $form_state, Vocabular
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     // Sort term order based on weight.
-    uasort($form_state->getValue('terms'), array('Drupal\Component\Utility\SortArray', 'sortByWeightElement'));
+    uasort($form_state->getValue('terms'), ['Drupal\Component\Utility\SortArray', 'sortByWeightElement']);
 
     $vocabulary = $form_state->get(['taxonomy', 'vocabulary']);
     // Update the current hierarchy type as we go.
     $hierarchy = VocabularyInterface::HIERARCHY_DISABLED;
 
-    $changed_terms = array();
+    $changed_terms = [];
     $tree = $this->storageController->loadTree($vocabulary->id(), 0, NULL, TRUE);
 
     if (empty($tree)) {
@@ -405,7 +405,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     }
 
     // Renumber the current page weights and assign any new parents.
-    $level_weights = array();
+    $level_weights = [];
     foreach ($form_state->getValue('terms') as $tid => $values) {
       if (isset($form['terms'][$tid]['#term'])) {
         $term = $form['terms'][$tid]['#term'];
diff --git a/core/modules/taxonomy/src/Form/TermDeleteForm.php b/core/modules/taxonomy/src/Form/TermDeleteForm.php
index 22ab19b..0e97ff6 100644
--- a/core/modules/taxonomy/src/Form/TermDeleteForm.php
+++ b/core/modules/taxonomy/src/Form/TermDeleteForm.php
@@ -38,7 +38,7 @@ public function getDescription() {
    * {@inheritdoc}
    */
   protected function getDeletionMessage() {
-    return $this->t('Deleted term %name.', array('%name' => $this->entity->label()));
+    return $this->t('Deleted term %name.', ['%name' => $this->entity->label()]);
   }
 
   /**
@@ -54,7 +54,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $vocabulary = $storage->load($this->entity->bundle());
 
       // @todo Move to storage http://drupal.org/node/1988712
-      taxonomy_check_vocabulary_hierarchy($vocabulary, array('tid' => $term->id()));
+      taxonomy_check_vocabulary_hierarchy($vocabulary, ['tid' => $term->id()]);
     }
   }
 
diff --git a/core/modules/taxonomy/src/Form/VocabularyDeleteForm.php b/core/modules/taxonomy/src/Form/VocabularyDeleteForm.php
index bada5d6..7c91b78 100644
--- a/core/modules/taxonomy/src/Form/VocabularyDeleteForm.php
+++ b/core/modules/taxonomy/src/Form/VocabularyDeleteForm.php
@@ -20,7 +20,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to delete the vocabulary %title?', array('%title' => $this->entity->label()));
+    return $this->t('Are you sure you want to delete the vocabulary %title?', ['%title' => $this->entity->label()]);
   }
 
   /**
@@ -34,7 +34,7 @@ public function getDescription() {
    * {@inheritdoc}
    */
   protected function getDeletionMessage() {
-    return $this->t('Deleted vocabulary %name.', array('%name' => $this->entity->label()));
+    return $this->t('Deleted vocabulary %name.', ['%name' => $this->entity->label()]);
   }
 
 }
diff --git a/core/modules/taxonomy/src/Form/VocabularyResetForm.php b/core/modules/taxonomy/src/Form/VocabularyResetForm.php
index fb33e35..e036ff9 100644
--- a/core/modules/taxonomy/src/Form/VocabularyResetForm.php
+++ b/core/modules/taxonomy/src/Form/VocabularyResetForm.php
@@ -49,7 +49,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Are you sure you want to reset the vocabulary %title to alphabetical order?', array('%title' => $this->entity->label()));
+    return $this->t('Are you sure you want to reset the vocabulary %title to alphabetical order?', ['%title' => $this->entity->label()]);
   }
 
   /**
@@ -80,8 +80,8 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     parent::submitForm($form, $form_state);
     $this->termStorage->resetWeights($this->entity->id());
 
-    drupal_set_message($this->t('Reset vocabulary %name to alphabetical order.', array('%name' => $this->entity->label())));
-    $this->logger('taxonomy')->notice('Reset vocabulary %name to alphabetical order.', array('%name' => $this->entity->label()));
+    drupal_set_message($this->t('Reset vocabulary %name to alphabetical order.', ['%name' => $this->entity->label()]));
+    $this->logger('taxonomy')->notice('Reset vocabulary %name to alphabetical order.', ['%name' => $this->entity->label()]);
     $form_state->setRedirectUrl($this->getCancelUrl());
   }
 
diff --git a/core/modules/taxonomy/src/Plugin/EntityReferenceSelection/TermSelection.php b/core/modules/taxonomy/src/Plugin/EntityReferenceSelection/TermSelection.php
index 7dd4aa2..b8f4d14 100644
--- a/core/modules/taxonomy/src/Plugin/EntityReferenceSelection/TermSelection.php
+++ b/core/modules/taxonomy/src/Plugin/EntityReferenceSelection/TermSelection.php
@@ -53,7 +53,7 @@ public function getReferenceableEntities($match = NULL, $match_operator = 'CONTA
       return parent::getReferenceableEntities($match, $match_operator, $limit);
     }
 
-    $options = array();
+    $options = [];
 
     $bundles = $this->entityManager->getBundleInfo('taxonomy_term');
     $handler_settings = $this->configuration['handler_settings'];
diff --git a/core/modules/taxonomy/src/Plugin/Field/FieldFormatter/EntityReferenceTaxonomyTermRssFormatter.php b/core/modules/taxonomy/src/Plugin/Field/FieldFormatter/EntityReferenceTaxonomyTermRssFormatter.php
index 11e8325..0d0d917 100644
--- a/core/modules/taxonomy/src/Plugin/Field/FieldFormatter/EntityReferenceTaxonomyTermRssFormatter.php
+++ b/core/modules/taxonomy/src/Plugin/Field/FieldFormatter/EntityReferenceTaxonomyTermRssFormatter.php
@@ -25,16 +25,16 @@ class EntityReferenceTaxonomyTermRssFormatter extends EntityReferenceFormatterBa
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
     $parent_entity = $items->getEntity();
-    $elements = array();
+    $elements = [];
 
     foreach ($this->getEntitiesToView($items, $langcode) as $delta => $entity) {
-      $parent_entity->rss_elements[] = array(
+      $parent_entity->rss_elements[] = [
         'key' => 'category',
         'value' => $entity->label(),
-        'attributes' => array(
-          'domain' => $entity->id() ? \Drupal::url('entity.taxonomy_term.canonical', ['taxonomy_term' => $entity->id()], array('absolute' => TRUE)) : '',
-        ),
-      );
+        'attributes' => [
+          'domain' => $entity->id() ? \Drupal::url('entity.taxonomy_term.canonical', ['taxonomy_term' => $entity->id()], ['absolute' => TRUE]) : '',
+        ],
+      ];
     }
 
     return $elements;
diff --git a/core/modules/taxonomy/src/Plugin/migrate/cckfield/TaxonomyTermReference.php b/core/modules/taxonomy/src/Plugin/migrate/cckfield/TaxonomyTermReference.php
index c3035c4..2d4e719 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/cckfield/TaxonomyTermReference.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/cckfield/TaxonomyTermReference.php
@@ -20,20 +20,20 @@ class TaxonomyTermReference extends CckFieldPluginBase {
    * {@inheritdoc}
    */
   public function getFieldFormatterMap() {
-    return array();
+    return [];
   }
 
   /**
    * {@inheritdoc}
    */
   public function processCckFieldValues(MigrationInterface $migration, $field_name, $data) {
-    $process = array(
+    $process = [
       'plugin' => 'iterator',
       'source' => $field_name,
-      'process' => array(
+      'process' => [
         'target_id' => 'tid',
-      ),
-    );
+      ],
+    ];
     $migration->setProcessOfProperty($field_name, $process);
   }
 
diff --git a/core/modules/taxonomy/src/Plugin/migrate/source/Term.php b/core/modules/taxonomy/src/Plugin/migrate/source/Term.php
index ce468a2..545d205 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/source/Term.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/source/Term.php
@@ -64,14 +64,14 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'tid' => $this->t('The term ID.'),
       'vid' => $this->t('Existing term VID'),
       'name' => $this->t('The name of the term.'),
       'description' => $this->t('The term description.'),
       'weight' => $this->t('Weight'),
       'parent' => $this->t("The Drupal term IDs of the term's parents."),
-    );
+    ];
     if ($this->getModuleSchemaVersion('taxonomy') >= 7000) {
       $fields['format'] = $this->t('Format of the term description.');
     }
@@ -84,7 +84,7 @@ public function fields() {
   public function prepareRow(Row $row) {
     // Find parents for this row.
     $parents = $this->select($this->termHierarchyTable, 'th')
-      ->fields('th', array('parent', 'tid'))
+      ->fields('th', ['parent', 'tid'])
       ->condition('tid', $row->getSourceProperty('tid'))
       ->execute()
       ->fetchCol();
diff --git a/core/modules/taxonomy/src/Plugin/migrate/source/d6/TermNode.php b/core/modules/taxonomy/src/Plugin/migrate/source/d6/TermNode.php
index 2635aaa..2b1c806 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/source/d6/TermNode.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/source/d6/TermNode.php
@@ -26,10 +26,10 @@ class TermNode extends DrupalSqlBase {
   public function query() {
     $query = $this->select('term_node', 'tn')
       ->distinct()
-      ->fields('tn', array('nid', 'vid'))
-      ->fields('n', array('type'));
+      ->fields('tn', ['nid', 'vid'])
+      ->fields('n', ['type']);
     // Because this is an inner join it enforces the current revision.
-    $query->innerJoin('term_data', 'td', 'td.tid = tn.tid AND td.vid = :vid', array(':vid' => $this->configuration['vid']));
+    $query->innerJoin('term_data', 'td', 'td.tid = tn.tid AND td.vid = :vid', [':vid' => $this->configuration['vid']]);
     $query->innerJoin('node', 'n', static::JOIN);
     return $query;
   }
@@ -38,11 +38,11 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'nid' => $this->t('The node revision ID.'),
       'vid' => $this->t('The node revision ID.'),
       'tid' => $this->t('The term ID.'),
-    );
+    ];
   }
 
   /**
@@ -51,10 +51,10 @@ public function fields() {
   public function prepareRow(Row $row) {
     // Select the terms belonging to the revision selected.
     $query = $this->select('term_node', 'tn')
-      ->fields('tn', array('tid'))
+      ->fields('tn', ['tid'])
       ->condition('n.nid', $row->getSourceProperty('nid'));
     $query->join('node', 'n', static::JOIN);
-    $query->innerJoin('term_data', 'td', 'td.tid = tn.tid AND td.vid = :vid', array(':vid' => $this->configuration['vid']));
+    $query->innerJoin('term_data', 'td', 'td.tid = tn.tid AND td.vid = :vid', [':vid' => $this->configuration['vid']]);
     $row->setSourceProperty('tid', $query->execute()->fetchCol());
     return parent::prepareRow($row);
   }
diff --git a/core/modules/taxonomy/src/Plugin/migrate/source/d6/Vocabulary.php b/core/modules/taxonomy/src/Plugin/migrate/source/d6/Vocabulary.php
index 2573033..714fa93 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/source/d6/Vocabulary.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/source/d6/Vocabulary.php
@@ -21,7 +21,7 @@ class Vocabulary extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('vocabulary', 'v')
-      ->fields('v', array(
+      ->fields('v', [
         'vid',
         'name',
         'description',
@@ -33,7 +33,7 @@ public function query() {
         'tags',
         'module',
         'weight',
-      ));
+      ]);
     return $query;
   }
 
@@ -41,7 +41,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'vid' => $this->t('The vocabulary ID.'),
       'name' => $this->t('The name of the vocabulary.'),
       'description' => $this->t('The description of the vocabulary.'),
@@ -54,7 +54,7 @@ public function fields() {
       'weight' => $this->t('The weight of the vocabulary in relation to other vocabularies.'),
       'parents' => $this->t("The Drupal term IDs of the term's parents."),
       'node_types' => $this->t('The names of the node types the vocabulary may be used with.'),
-    );
+    ];
   }
 
   /**
@@ -63,7 +63,7 @@ public function fields() {
   public function prepareRow(Row $row) {
     // Find node types for this row.
     $node_types = $this->select('vocabulary_node_types', 'nt')
-      ->fields('nt', array('type', 'vid'))
+      ->fields('nt', ['type', 'vid'])
       ->condition('vid', $row->getSourceProperty('vid'))
       ->execute()
       ->fetchCol();
diff --git a/core/modules/taxonomy/src/Plugin/migrate/source/d6/VocabularyPerType.php b/core/modules/taxonomy/src/Plugin/migrate/source/d6/VocabularyPerType.php
index ac7a2fe..40a0094 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/source/d6/VocabularyPerType.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/source/d6/VocabularyPerType.php
@@ -18,7 +18,7 @@ class VocabularyPerType extends Vocabulary {
   public function query() {
     $query = parent::query();
     $query->join('vocabulary_node_types', 'nt', 'v.vid = nt.vid');
-    $query->fields('nt', array('type'));
+    $query->fields('nt', ['type']);
     return $query;
   }
 
diff --git a/core/modules/taxonomy/src/Plugin/migrate/source/d7/Vocabulary.php b/core/modules/taxonomy/src/Plugin/migrate/source/d7/Vocabulary.php
index e9eb4aa..31103a8 100644
--- a/core/modules/taxonomy/src/Plugin/migrate/source/d7/Vocabulary.php
+++ b/core/modules/taxonomy/src/Plugin/migrate/source/d7/Vocabulary.php
@@ -19,7 +19,7 @@ class Vocabulary extends DrupalSqlBase {
    */
   public function query() {
     $query = $this->select('taxonomy_vocabulary', 'v')
-      ->fields('v', array(
+      ->fields('v', [
         'vid',
         'name',
         'description',
@@ -27,7 +27,7 @@ public function query() {
         'module',
         'weight',
         'machine_name',
-      ));
+      ]);
     return $query;
   }
 
@@ -35,7 +35,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'vid' => $this->t('The vocabulary ID.'),
       'name' => $this->t('The name of the vocabulary.'),
       'description' => $this->t('The description of the vocabulary.'),
@@ -43,7 +43,7 @@ public function fields() {
       'module' => $this->t('Module responsible for the vocabulary.'),
       'weight' => $this->t('The weight of the vocabulary in relation to other vocabularies.'),
       'machine_name' => $this->t('Unique machine name of the vocabulary.')
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/taxonomy/src/Plugin/views/argument/IndexTid.php b/core/modules/taxonomy/src/Plugin/views/argument/IndexTid.php
index 8ab40e3..8d18545 100644
--- a/core/modules/taxonomy/src/Plugin/views/argument/IndexTid.php
+++ b/core/modules/taxonomy/src/Plugin/views/argument/IndexTid.php
@@ -15,7 +15,7 @@
 class IndexTid extends ManyToOne {
 
   public function titleQuery() {
-    $titles = array();
+    $titles = [];
     $terms = Term::loadMultiple($this->value);
     foreach ($terms as $term) {
       $titles[] = \Drupal::entityManager()->getTranslationFromContext($term)->label();
diff --git a/core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php b/core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php
index 97ee595..a41b801 100644
--- a/core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php
+++ b/core/modules/taxonomy/src/Plugin/views/argument/IndexTidDepth.php
@@ -45,27 +45,27 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['depth'] = array('default' => 0);
-    $options['break_phrase'] = array('default' => FALSE);
-    $options['use_taxonomy_term_path'] = array('default' => FALSE);
+    $options['depth'] = ['default' => 0];
+    $options['break_phrase'] = ['default' => FALSE];
+    $options['use_taxonomy_term_path'] = ['default' => FALSE];
 
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['depth'] = array(
+    $form['depth'] = [
       '#type' => 'weight',
       '#title' => $this->t('Depth'),
       '#default_value' => $this->options['depth'],
       '#description' => $this->t('The depth will match nodes tagged with terms in the hierarchy. For example, if you have the term "fruit" and a child term "apple", with a depth of 1 (or higher) then filtering for the term "fruit" will get nodes that are tagged with "apple" as well as "fruit". If negative, the reverse is true; searching for "apple" will also pick up nodes tagged with "fruit" if depth is -1 (or lower).'),
-    );
+    ];
 
-    $form['break_phrase'] = array(
+    $form['break_phrase'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple values'),
       '#description' => $this->t('If selected, users can enter multiple values in the form of 1+2+3. Due to the number of JOINs it would require, AND will be treated as OR with this filter.'),
       '#default_value' => !empty($this->options['break_phrase']),
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
@@ -75,7 +75,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   protected function defaultActions($which = NULL) {
     if ($which) {
-      if (in_array($which, array('ignore', 'not found', 'empty', 'default'))) {
+      if (in_array($which, ['ignore', 'not found', 'empty', 'default'])) {
         return parent::defaultActions($which);
       }
       return;
@@ -93,7 +93,7 @@ public function query($group_by = FALSE) {
 
     if (!empty($this->options['break_phrase'])) {
       $break = static::breakString($this->argument);
-      if ($break->value === array(-1)) {
+      if ($break->value === [-1]) {
         return FALSE;
       }
 
diff --git a/core/modules/taxonomy/src/Plugin/views/argument_default/Tid.php b/core/modules/taxonomy/src/Plugin/views/argument_default/Tid.php
index 33517b1..fa18654 100644
--- a/core/modules/taxonomy/src/Plugin/views/argument_default/Tid.php
+++ b/core/modules/taxonomy/src/Plugin/views/argument_default/Tid.php
@@ -96,11 +96,11 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['term_page'] = array('default' => TRUE);
-    $options['node'] = array('default' => FALSE);
-    $options['anyall'] = array('default' => ',');
-    $options['limit'] = array('default' => FALSE);
-    $options['vids'] = array('default' => array());
+    $options['term_page'] = ['default' => TRUE];
+    $options['node'] = ['default' => FALSE];
+    $options['anyall'] = ['default' => ','];
+    $options['limit'] = ['default' => FALSE];
+    $options['vids'] = ['default' => []];
 
     return $options;
   }
@@ -109,67 +109,67 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['term_page'] = array(
+    $form['term_page'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Load default filter from term page'),
       '#default_value' => $this->options['term_page'],
-    );
-    $form['node'] = array(
+    ];
+    $form['node'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Load default filter from node page, that\'s good for related taxonomy blocks'),
       '#default_value' => $this->options['node'],
-    );
+    ];
 
-    $form['limit'] = array(
+    $form['limit'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Limit terms by vocabulary'),
       '#default_value' => $this->options['limit'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[argument_default][taxonomy_tid][node]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[argument_default][taxonomy_tid][node]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $options = array();
+    $options = [];
     $vocabularies = $this->vocabularyStorage->loadMultiple();
     foreach ($vocabularies as $voc) {
       $options[$voc->id()] = $voc->label();
     }
 
-    $form['vids'] = array(
+    $form['vids'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Vocabularies'),
       '#options' => $options,
       '#default_value' => $this->options['vids'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[argument_default][taxonomy_tid][limit]"]' => array('checked' => TRUE),
-          ':input[name="options[argument_default][taxonomy_tid][node]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[argument_default][taxonomy_tid][limit]"]' => ['checked' => TRUE],
+          ':input[name="options[argument_default][taxonomy_tid][node]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $form['anyall'] = array(
+    $form['anyall'] = [
       '#type' => 'radios',
       '#title' => $this->t('Multiple-value handling'),
       '#default_value' => $this->options['anyall'],
-      '#options' => array(
+      '#options' => [
         ',' => $this->t('Filter to items that share all terms'),
         '+' => $this->t('Filter to items that share any term'),
-      ),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[argument_default][taxonomy_tid][node]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      ],
+      '#states' => [
+        'visible' => [
+          ':input[name="options[argument_default][taxonomy_tid][node]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = array()) {
+  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = []) {
     // Filter unselected items so we don't unnecessarily store giant arrays.
     $options['vids'] = array_filter($options['vids']);
   }
@@ -188,7 +188,7 @@ public function getArgument() {
     if (!empty($this->options['node'])) {
       // Just check, if a node could be detected.
       if (($node = $this->routeMatch->getParameter('node')) && $node instanceof NodeInterface) {
-        $taxonomy = array();
+        $taxonomy = [];
         foreach ($node->getFieldDefinitions() as $field) {
           if ($field->getType() == 'entity_reference' && $field->getSetting('target_type') == 'taxonomy_term') {
             $taxonomy_terms = $node->{$field->getName()}->referencedEntities();
@@ -199,7 +199,7 @@ public function getArgument() {
           }
         }
         if (!empty($this->options['limit'])) {
-          $tids = array();
+          $tids = [];
           // filter by vocabulary
           foreach ($taxonomy as $tid => $vocab) {
             if (!empty($this->options['vids'][$vocab])) {
diff --git a/core/modules/taxonomy/src/Plugin/views/argument_validator/TermName.php b/core/modules/taxonomy/src/Plugin/views/argument_validator/TermName.php
index eb30ff5..ac7bad0 100644
--- a/core/modules/taxonomy/src/Plugin/views/argument_validator/TermName.php
+++ b/core/modules/taxonomy/src/Plugin/views/argument_validator/TermName.php
@@ -39,7 +39,7 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['transform'] = array('default' => FALSE);
+    $options['transform'] = ['default' => FALSE];
 
     return $options;
   }
@@ -50,11 +50,11 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['transform'] = array(
+    $form['transform'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Transform dashes in URL to spaces in term name filter values'),
       '#default_value' => $this->options['transform'],
-    );
+    ];
   }
 
   /**
@@ -64,7 +64,7 @@ public function validateArgument($argument) {
     if ($this->options['transform']) {
       $argument = str_replace('-', ' ', $argument);
     }
-    $terms = $this->termStorage->loadByProperties(array('name' => $argument));
+    $terms = $this->termStorage->loadByProperties(['name' => $argument]);
 
     if (!$terms) {
       // Returned empty array no terms with the name.
diff --git a/core/modules/taxonomy/src/Plugin/views/field/TaxonomyIndexTid.php b/core/modules/taxonomy/src/Plugin/views/field/TaxonomyIndexTid.php
index f33421a..1bab446 100644
--- a/core/modules/taxonomy/src/Plugin/views/field/TaxonomyIndexTid.php
+++ b/core/modules/taxonomy/src/Plugin/views/field/TaxonomyIndexTid.php
@@ -62,19 +62,19 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     // @todo: Wouldn't it be possible to use $this->base_table and no if here?
     if ($view->storage->get('base_table') == 'node_field_revision') {
-      $this->additional_fields['nid'] = array('table' => 'node_field_revision', 'field' => 'nid');
+      $this->additional_fields['nid'] = ['table' => 'node_field_revision', 'field' => 'nid'];
     }
     else {
-      $this->additional_fields['nid'] = array('table' => 'node_field_data', 'field' => 'nid');
+      $this->additional_fields['nid'] = ['table' => 'node_field_data', 'field' => 'nid'];
     }
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['link_to_taxonomy'] = array('default' => TRUE);
-    $options['limit'] = array('default' => FALSE);
-    $options['vids'] = array('default' => array());
+    $options['link_to_taxonomy'] = ['default' => TRUE];
+    $options['limit'] = ['default' => FALSE];
+    $options['vids'] = ['default' => []];
 
     return $options;
   }
@@ -83,36 +83,36 @@ protected function defineOptions() {
    * Provide "link to term" option.
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['link_to_taxonomy'] = array(
+    $form['link_to_taxonomy'] = [
       '#title' => $this->t('Link this field to its term page'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['link_to_taxonomy']),
-    );
+    ];
 
-    $form['limit'] = array(
+    $form['limit'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Limit terms by vocabulary'),
       '#default_value' => $this->options['limit'],
-    );
+    ];
 
-    $options = array();
+    $options = [];
     $vocabularies = $this->vocabularyStorage->loadMultiple();
     foreach ($vocabularies as $voc) {
       $options[$voc->id()] = $voc->label();
     }
 
-    $form['vids'] = array(
+    $form['vids'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Vocabularies'),
       '#options' => $options,
       '#default_value' => $this->options['vids'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[limit]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[limit]"]' => ['checked' => TRUE],
+        ],
+      ],
 
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
@@ -127,7 +127,7 @@ public function query() {
   public function preRender(&$values) {
     $vocabularies = $this->vocabularyStorage->loadMultiple();
     $this->field_alias = $this->aliases['nid'];
-    $nids = array();
+    $nids = [];
     foreach ($values as $result) {
       if (!empty($result->{$this->aliases['nid']})) {
         $nids[] = $result->{$this->aliases['nid']};
@@ -137,7 +137,7 @@ public function preRender(&$values) {
     if ($nids) {
       $vocabs = array_filter($this->options['vids']);
       if (empty($this->options['limit'])) {
-        $vocabs = array();
+        $vocabs = [];
       }
       $result = \Drupal::entityManager()->getStorage('taxonomy_term')->getNodeTerms($nids, $vocabs);
 
@@ -169,7 +169,7 @@ protected function documentSelfTokens(&$tokens) {
   }
 
   protected function addSelfTokens(&$tokens, $item) {
-    foreach (array('tid', 'name', 'vocabulary_vid', 'vocabulary') as $token) {
+    foreach (['tid', 'name', 'vocabulary_vid', 'vocabulary'] as $token) {
       $tokens['{{ ' . $this->options['id'] . '__' . $token . ' }}'] = isset($item[$token]) ? $item[$token] : '';
     }
   }
diff --git a/core/modules/taxonomy/src/Plugin/views/field/TermName.php b/core/modules/taxonomy/src/Plugin/views/field/TermName.php
index 2fcd529..0a777e9 100644
--- a/core/modules/taxonomy/src/Plugin/views/field/TermName.php
+++ b/core/modules/taxonomy/src/Plugin/views/field/TermName.php
@@ -37,7 +37,7 @@ public function getItems(ResultRow $values) {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['convert_spaces'] = array('default' => FALSE);
+    $options['convert_spaces'] = ['default' => FALSE];
     return $options;
   }
 
@@ -45,11 +45,11 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['convert_spaces'] = array(
+    $form['convert_spaces'] = [
       '#title' => $this->t('Convert spaces in term names to hyphens'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['convert_spaces']),
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
diff --git a/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTid.php b/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTid.php
index d769bb0..a68c3c8 100644
--- a/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTid.php
+++ b/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTid.php
@@ -94,18 +94,18 @@ public function getValueOptions() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['type'] = array('default' => 'textfield');
-    $options['limit'] = array('default' => TRUE);
-    $options['vid'] = array('default' => '');
-    $options['hierarchy'] = array('default' => FALSE);
-    $options['error_message'] = array('default' => TRUE);
+    $options['type'] = ['default' => 'textfield'];
+    $options['limit'] = ['default' => TRUE];
+    $options['vid'] = ['default' => ''];
+    $options['hierarchy'] = ['default' => FALSE];
+    $options['error_message'] = ['default' => TRUE];
 
     return $options;
   }
 
   public function buildExtraOptionsForm(&$form, FormStateInterface $form_state) {
     $vocabularies = $this->vocabularyStorage->loadMultiple();
-    $options = array();
+    $options = [];
     foreach ($vocabularies as $voc) {
       $options[$voc->id()] = $voc->label();
     }
@@ -118,56 +118,56 @@ public function buildExtraOptionsForm(&$form, FormStateInterface $form_state) {
       }
 
       if (empty($this->definition['vocabulary'])) {
-        $form['vid'] = array(
+        $form['vid'] = [
           '#type' => 'radios',
           '#title' => $this->t('Vocabulary'),
           '#options' => $options,
           '#description' => $this->t('Select which vocabulary to show terms for in the regular options.'),
           '#default_value' => $this->options['vid'],
-        );
+        ];
       }
     }
 
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'radios',
       '#title' => $this->t('Selection type'),
-      '#options' => array('select' => $this->t('Dropdown'), 'textfield' => $this->t('Autocomplete')),
+      '#options' => ['select' => $this->t('Dropdown'), 'textfield' => $this->t('Autocomplete')],
       '#default_value' => $this->options['type'],
-    );
+    ];
 
-    $form['hierarchy'] = array(
+    $form['hierarchy'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show hierarchy in dropdown'),
       '#default_value' => !empty($this->options['hierarchy']),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[type]"]' => array('value' => 'select'),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[type]"]' => ['value' => 'select'],
+        ],
+      ],
+    ];
   }
 
   protected function valueForm(&$form, FormStateInterface $form_state) {
     $vocabulary = $this->vocabularyStorage->load($this->options['vid']);
     if (empty($vocabulary) && $this->options['limit']) {
-      $form['markup'] = array(
+      $form['markup'] = [
         '#markup' => '<div class="js-form-item form-item">' . $this->t('An invalid vocabulary is selected. Please change it in the options.') . '</div>',
-      );
+      ];
       return;
     }
 
     if ($this->options['type'] == 'textfield') {
-      $terms = $this->value ? Term::loadMultiple(($this->value)) : array();
-      $form['value'] = array(
-        '#title' => $this->options['limit'] ? $this->t('Select terms from vocabulary @voc', array('@voc' => $vocabulary->label())) : $this->t('Select terms'),
+      $terms = $this->value ? Term::loadMultiple(($this->value)) : [];
+      $form['value'] = [
+        '#title' => $this->options['limit'] ? $this->t('Select terms from vocabulary @voc', ['@voc' => $vocabulary->label()]) : $this->t('Select terms'),
         '#type' => 'textfield',
         '#default_value' => EntityAutocomplete::getEntityLabels($terms),
-      );
+      ];
 
       if ($this->options['limit']) {
         $form['value']['#type'] = 'entity_autocomplete';
         $form['value']['#target_type'] = 'taxonomy_term';
-        $form['value']['#selection_settings']['target_bundles'] = array($vocabulary->id());
+        $form['value']['#selection_settings']['target_bundles'] = [$vocabulary->id()];
         $form['value']['#tags'] = TRUE;
         $form['value']['#process_default_value'] = FALSE;
       }
@@ -175,18 +175,18 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
     else {
       if (!empty($this->options['hierarchy']) && $this->options['limit']) {
         $tree = $this->termStorage->loadTree($vocabulary->id(), 0, NULL, TRUE);
-        $options = array();
+        $options = [];
 
         if ($tree) {
           foreach ($tree as $term) {
             $choice = new \stdClass();
-            $choice->option = array($term->id() => str_repeat('-', $term->depth) . \Drupal::entityManager()->getTranslationFromContext($term)->label());
+            $choice->option = [$term->id() => str_repeat('-', $term->depth) . \Drupal::entityManager()->getTranslationFromContext($term)->label()];
             $options[] = $choice;
           }
         }
       }
       else {
-        $options = array();
+        $options = [];
         $query = \Drupal::entityQuery('taxonomy_term')
           // @todo Sorting on vocabulary properties -
           //   https://www.drupal.org/node/1821274.
@@ -211,7 +211,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
           $options = $this->reduceValueOptions($options);
 
           if (!empty($this->options['expose']['multiple']) && empty($this->options['expose']['required'])) {
-            $default_value = array();
+            $default_value = [];
           }
         }
 
@@ -225,7 +225,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
           }
           // Due to #1464174 there is a chance that array('') was saved in the admin ui.
           // Let's choose a safe default value.
-          elseif ($default_value == array('')) {
+          elseif ($default_value == ['']) {
             $default_value = 'All';
           }
           else {
@@ -234,14 +234,14 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
           }
         }
       }
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => 'select',
-        '#title' => $this->options['limit'] ? $this->t('Select terms from vocabulary @voc', array('@voc' => $vocabulary->label())) : $this->t('Select terms'),
+        '#title' => $this->options['limit'] ? $this->t('Select terms from vocabulary @voc', ['@voc' => $vocabulary->label()]) : $this->t('Select terms'),
         '#multiple' => TRUE,
         '#options' => $options,
         '#size' => min(9, count($options)),
         '#default_value' => $default_value,
-      );
+      ];
 
       $user_input = $form_state->getUserInput();
       if ($exposed && isset($identifier) && !isset($user_input[$identifier])) {
@@ -265,13 +265,13 @@ protected function valueValidate($form, FormStateInterface $form_state) {
       return;
     }
 
-    $tids = array();
-    if ($values = $form_state->getValue(array('options', 'value'))) {
+    $tids = [];
+    if ($values = $form_state->getValue(['options', 'value'])) {
       foreach ($values as $value) {
         $tids[] = $value['target_id'];
       }
     }
-    $form_state->setValue(array('options', 'value'), $tids);
+    $form_state->setValue(['options', 'value'], $tids);
   }
 
   public function acceptExposedInput($input) {
@@ -348,16 +348,16 @@ public function buildExposeForm(&$form, FormStateInterface $form_state) {
     if ($this->options['type'] != 'select') {
       unset($form['expose']['reduce']);
     }
-    $form['error_message'] = array(
+    $form['error_message'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Display error message'),
       '#default_value' => !empty($this->options['error_message']),
-    );
+    ];
   }
 
   public function adminSummary() {
     // set up $this->valueOptions for the parent summary
-    $this->valueOptions = array();
+    $this->valueOptions = [];
 
     if ($this->value) {
       $this->value = array_filter($this->value);
diff --git a/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTidDepth.php b/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTidDepth.php
index ecd32eb..9311558 100644
--- a/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTidDepth.php
+++ b/core/modules/taxonomy/src/Plugin/views/filter/TaxonomyIndexTidDepth.php
@@ -18,15 +18,15 @@
 class TaxonomyIndexTidDepth extends TaxonomyIndexTid {
 
   public function operatorOptions($which = 'title') {
-    return array(
+    return [
       'or' => $this->t('Is one of'),
-    );
+    ];
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['depth'] = array('default' => 0);
+    $options['depth'] = ['default' => 0];
 
     return $options;
   }
@@ -34,12 +34,12 @@ protected function defineOptions() {
   public function buildExtraOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildExtraOptionsForm($form, $form_state);
 
-    $form['depth'] = array(
+    $form['depth'] = [
       '#type' => 'weight',
       '#title' => $this->t('Depth'),
       '#default_value' => $this->options['depth'],
       '#description' => $this->t('The depth will match nodes tagged with terms in the hierarchy. For example, if you have the term "fruit" and a child term "apple", with a depth of 1 (or higher) then filtering for the term "fruit" will get nodes that are tagged with "apple" as well as "fruit". If negative, the reverse is true; searching for "apple" will also pick up nodes tagged with "fruit" if depth is -1 (or lower).'),
-    );
+    ];
   }
 
   public function query() {
diff --git a/core/modules/taxonomy/src/Plugin/views/relationship/NodeTermData.php b/core/modules/taxonomy/src/Plugin/views/relationship/NodeTermData.php
index b1c72e4..13fd056 100644
--- a/core/modules/taxonomy/src/Plugin/views/relationship/NodeTermData.php
+++ b/core/modules/taxonomy/src/Plugin/views/relationship/NodeTermData.php
@@ -74,24 +74,24 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['vids'] = array('default' => array());
+    $options['vids'] = ['default' => []];
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $vocabularies = $this->vocabularyStorage->loadMultiple();
-    $options = array();
+    $options = [];
     foreach ($vocabularies as $voc) {
       $options[$voc->id()] = $voc->label();
     }
 
-    $form['vids'] = array(
+    $form['vids'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Vocabularies'),
       '#options' => $options,
       '#default_value' => $this->options['vids'],
       '#description' => $this->t('Choose which vocabularies you wish to relate. Remember that every term found will create a new record, so this relationship is best used on just one vocabulary that has only one term per node.'),
-    );
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
@@ -134,7 +134,7 @@ public function query() {
       $query->condition('td.vid', array_filter($this->options['vids']), 'IN');
       $query->addTag('taxonomy_term_access');
       $query->fields('td');
-      $query->fields('tn', array('nid'));
+      $query->fields('tn', ['nid']);
       $def['table formula'] = $query;
     }
 
diff --git a/core/modules/taxonomy/src/TermBreadcrumbBuilder.php b/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
index 838011d..73588d1 100644
--- a/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
+++ b/core/modules/taxonomy/src/TermBreadcrumbBuilder.php
@@ -68,7 +68,7 @@ public function build(RouteMatchInterface $route_match) {
     foreach (array_reverse($parents) as $term) {
       $term = $this->entityManager->getTranslationFromContext($term);
       $breadcrumb->addCacheableDependency($term);
-      $breadcrumb->addLink(Link::createFromRoute($term->getName(), 'entity.taxonomy_term.canonical', array('taxonomy_term' => $term->id())));
+      $breadcrumb->addLink(Link::createFromRoute($term->getName(), 'entity.taxonomy_term.canonical', ['taxonomy_term' => $term->id()]));
     }
 
     // This breadcrumb builder is based on a route parameter, and hence it
diff --git a/core/modules/taxonomy/src/TermForm.php b/core/modules/taxonomy/src/TermForm.php
index 1f56351..6e307ca 100644
--- a/core/modules/taxonomy/src/TermForm.php
+++ b/core/modules/taxonomy/src/TermForm.php
@@ -23,12 +23,12 @@ public function form(array $form, FormStateInterface $form_state) {
     $form_state->set(['taxonomy', 'parent'], $parent);
     $form_state->set(['taxonomy', 'vocabulary'], $vocabulary);
 
-    $form['relations'] = array(
+    $form['relations'] = [
       '#type' => 'details',
       '#title' => $this->t('Relations'),
       '#open' => $vocabulary->getHierarchy() == VocabularyInterface::HIERARCHY_MULTIPLE,
       '#weight' => 10,
-    );
+    ];
 
     // \Drupal\taxonomy\TermStorageInterface::loadTree() and
     // \Drupal\taxonomy\TermStorageInterface::loadParents() may contain large
@@ -46,9 +46,9 @@ public function form(array $form, FormStateInterface $form_state) {
       $exclude[] = $term->id();
 
       $tree = $taxonomy_storage->loadTree($vocabulary->id());
-      $options = array('<' . $this->t('root') . '>');
+      $options = ['<' . $this->t('root') . '>'];
       if (empty($parent)) {
-        $parent = array(0);
+        $parent = [0];
       }
 
       foreach ($tree as $item) {
@@ -57,33 +57,33 @@ public function form(array $form, FormStateInterface $form_state) {
         }
       }
 
-      $form['relations']['parent'] = array(
+      $form['relations']['parent'] = [
         '#type' => 'select',
         '#title' => $this->t('Parent terms'),
         '#options' => $options,
         '#default_value' => $parent,
         '#multiple' => TRUE,
-      );
+      ];
     }
 
-    $form['relations']['weight'] = array(
+    $form['relations']['weight'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Weight'),
       '#size' => 6,
       '#default_value' => $term->getWeight(),
       '#description' => $this->t('Terms are displayed in ascending order by weight.'),
       '#required' => TRUE,
-    );
+    ];
 
-    $form['vid'] = array(
+    $form['vid'] = [
       '#type' => 'value',
       '#value' => $vocabulary->id(),
-    );
+    ];
 
-    $form['tid'] = array(
+    $form['tid'] = [
       '#type' => 'value',
       '#value' => $term->id(),
-    );
+    ];
 
     return parent::form($form, $form_state, $term);
   }
@@ -127,21 +127,21 @@ public function save(array $form, FormStateInterface $form_state) {
     $view_link = $term->link($term->getName());
     switch ($result) {
       case SAVED_NEW:
-        drupal_set_message($this->t('Created new term %term.', array('%term' => $view_link)));
-        $this->logger('taxonomy')->notice('Created new term %term.', array('%term' => $term->getName(), 'link' => $edit_link));
+        drupal_set_message($this->t('Created new term %term.', ['%term' => $view_link]));
+        $this->logger('taxonomy')->notice('Created new term %term.', ['%term' => $term->getName(), 'link' => $edit_link]);
         break;
       case SAVED_UPDATED:
-        drupal_set_message($this->t('Updated term %term.', array('%term' => $view_link)));
-        $this->logger('taxonomy')->notice('Updated term %term.', array('%term' => $term->getName(), 'link' => $edit_link));
+        drupal_set_message($this->t('Updated term %term.', ['%term' => $view_link]));
+        $this->logger('taxonomy')->notice('Updated term %term.', ['%term' => $term->getName(), 'link' => $edit_link]);
         break;
     }
 
     $current_parent_count = count($form_state->getValue('parent'));
     $previous_parent_count = count($form_state->get(['taxonomy', 'parent']));
     // Root doesn't count if it's the only parent.
-    if ($current_parent_count == 1 && $form_state->hasValue(array('parent', 0))) {
+    if ($current_parent_count == 1 && $form_state->hasValue(['parent', 0])) {
       $current_parent_count = 0;
-      $form_state->setValue('parent', array());
+      $form_state->setValue('parent', []);
     }
 
     // If the number of parents has been reduced to one or none, do a check on the
diff --git a/core/modules/taxonomy/src/TermStorage.php b/core/modules/taxonomy/src/TermStorage.php
index bc44c22..0a00c13 100644
--- a/core/modules/taxonomy/src/TermStorage.php
+++ b/core/modules/taxonomy/src/TermStorage.php
@@ -15,49 +15,49 @@ class TermStorage extends SqlContentEntityStorage implements TermStorageInterfac
    *
    * @var array
    */
-  protected $parents = array();
+  protected $parents = [];
 
   /**
    * Array of all loaded term ancestry keyed by ancestor term ID.
    *
    * @var array
    */
-  protected $parentsAll = array();
+  protected $parentsAll = [];
 
   /**
    * Array of child terms keyed by parent term ID.
    *
    * @var array
    */
-  protected $children = array();
+  protected $children = [];
 
   /**
    * Array of term parents keyed by vocabulary ID and child term ID.
    *
    * @var array
    */
-  protected $treeParents = array();
+  protected $treeParents = [];
 
   /**
    * Array of term ancestors keyed by vocabulary ID and parent term ID.
    *
    * @var array
    */
-  protected $treeChildren = array();
+  protected $treeChildren = [];
 
   /**
    * Array of terms in a tree keyed by vocabulary ID and term ID.
    *
    * @var array
    */
-  protected $treeTerms = array();
+  protected $treeTerms = [];
 
   /**
    * Array of loaded trees keyed by a cache id matching tree arguments.
    *
    * @var array
    */
-  protected $trees = array();
+  protected $trees = [];
 
   /**
    * {@inheritdoc}
@@ -66,10 +66,10 @@ class TermStorage extends SqlContentEntityStorage implements TermStorageInterfac
    *   An array of values to set, keyed by property name. A value for the
    *   vocabulary ID ('vid') is required.
    */
-  public function create(array $values = array()) {
+  public function create(array $values = []) {
     // Save new terms with no parents by default.
     if (empty($values['parent'])) {
-      $values['parent'] = array(0);
+      $values['parent'] = [0];
     }
     $entity = parent::create($values);
     return $entity;
@@ -80,13 +80,13 @@ public function create(array $values = array()) {
    */
   public function resetCache(array $ids = NULL) {
     drupal_static_reset('taxonomy_term_count_nodes');
-    $this->parents = array();
-    $this->parentsAll = array();
-    $this->children = array();
-    $this->treeChildren = array();
-    $this->treeParents = array();
-    $this->treeTerms = array();
-    $this->trees = array();
+    $this->parents = [];
+    $this->parentsAll = [];
+    $this->children = [];
+    $this->treeChildren = [];
+    $this->treeParents = [];
+    $this->treeTerms = [];
+    $this->trees = [];
     parent::resetCache($ids);
   }
 
@@ -104,13 +104,13 @@ public function deleteTermHierarchy($tids) {
    */
   public function updateTermHierarchy(EntityInterface $term) {
     $query = $this->database->insert('taxonomy_term_hierarchy')
-      ->fields(array('tid', 'parent'));
+      ->fields(['tid', 'parent']);
 
     foreach ($term->parent as $parent) {
-      $query->values(array(
+      $query->values([
         'tid' => $term->id(),
         'parent' => (int) $parent->target_id,
-      ));
+      ]);
     }
     $query->execute();
   }
@@ -120,7 +120,7 @@ public function updateTermHierarchy(EntityInterface $term) {
    */
   public function loadParents($tid) {
     if (!isset($this->parents[$tid])) {
-      $parents = array();
+      $parents = [];
       $query = $this->database->select('taxonomy_term_field_data', 't');
       $query->join('taxonomy_term_hierarchy', 'h', 'h.parent = t.tid');
       $query->addField('t', 'tid');
@@ -142,7 +142,7 @@ public function loadParents($tid) {
    */
   public function loadAllParents($tid) {
     if (!isset($this->parentsAll[$tid])) {
-      $parents = array();
+      $parents = [];
       if ($term = $this->load($tid)) {
         $parents[$term->id()] = $term;
         $terms_to_search[] = $term->id();
@@ -169,7 +169,7 @@ public function loadAllParents($tid) {
    */
   public function loadChildren($tid, $vid = NULL) {
     if (!isset($this->children[$tid])) {
-      $children = array();
+      $children = [];
       $query = $this->database->select('taxonomy_term_field_data', 't');
       $query->join('taxonomy_term_hierarchy', 'h', 'h.tid = t.tid');
       $query->addField('t', 'tid');
@@ -198,15 +198,15 @@ public function loadTree($vid, $parent = 0, $max_depth = NULL, $load_entities =
       // We cache trees, so it's not CPU-intensive to call on a term and its
       // children, too.
       if (!isset($this->treeChildren[$vid])) {
-        $this->treeChildren[$vid] = array();
-        $this->treeParents[$vid] = array();
-        $this->treeTerms[$vid] = array();
+        $this->treeChildren[$vid] = [];
+        $this->treeParents[$vid] = [];
+        $this->treeTerms[$vid] = [];
         $query = $this->database->select('taxonomy_term_field_data', 't');
         $query->join('taxonomy_term_hierarchy', 'h', 'h.tid = t.tid');
         $result = $query
           ->addTag('taxonomy_term_access')
           ->fields('t')
-          ->fields('h', array('parent'))
+          ->fields('h', ['parent'])
           ->condition('t.vid', $vid)
           ->condition('t.default_langcode', 1)
           ->orderBy('t.weight')
@@ -221,17 +221,17 @@ public function loadTree($vid, $parent = 0, $max_depth = NULL, $load_entities =
 
       // Load full entities, if necessary. The entity controller statically
       // caches the results.
-      $term_entities = array();
+      $term_entities = [];
       if ($load_entities) {
         $term_entities = $this->loadMultiple(array_keys($this->treeTerms[$vid]));
       }
 
       $max_depth = (!isset($max_depth)) ? count($this->treeChildren[$vid]) : $max_depth;
-      $tree = array();
+      $tree = [];
 
       // Keeps track of the parents we have to process, the last entry is used
       // for the next processing step.
-      $process_parents = array();
+      $process_parents = [];
       $process_parents[] = $parent;
 
       // Loops over the parent terms and adds its children to the tree array.
@@ -304,7 +304,7 @@ public function nodeCount($vid) {
    */
   public function resetWeights($vid) {
     $this->database->update('taxonomy_term_field_data')
-      ->fields(array('weight' => 0))
+      ->fields(['weight' => 0])
       ->condition('vid', $vid)
       ->execute();
   }
@@ -312,10 +312,10 @@ public function resetWeights($vid) {
   /**
    * {@inheritdoc}
    */
-  public function getNodeTerms(array $nids, array $vocabs = array(), $langcode = NULL) {
+  public function getNodeTerms(array $nids, array $vocabs = [], $langcode = NULL) {
     $query = db_select('taxonomy_term_field_data', 'td');
     $query->innerJoin('taxonomy_index', 'tn', 'td.tid = tn.tid');
-    $query->fields('td', array('tid'));
+    $query->fields('td', ['tid']);
     $query->addField('tn', 'nid', 'node_nid');
     $query->orderby('td.weight');
     $query->orderby('td.name');
@@ -328,15 +328,15 @@ public function getNodeTerms(array $nids, array $vocabs = array(), $langcode = N
       $query->condition('td.langcode', $langcode);
     }
 
-    $results = array();
-    $all_tids = array();
+    $results = [];
+    $all_tids = [];
     foreach ($query->execute() as $term_record) {
       $results[$term_record->node_nid][] = $term_record->tid;
       $all_tids[] = $term_record->tid;
     }
 
     $all_terms = $this->loadMultiple($all_tids);
-    $terms = array();
+    $terms = [];
     foreach ($results as $nid => $tids) {
       foreach ($tids as $tid) {
         $terms[$nid][$tid] = $all_terms[$tid];
@@ -361,13 +361,13 @@ public function __sleep() {
   public function __wakeup() {
     parent::__wakeup();
     // Initialize static caches.
-    $this->parents = array();
-    $this->parentsAll = array();
-    $this->children = array();
-    $this->treeChildren = array();
-    $this->treeParents = array();
-    $this->treeTerms = array();
-    $this->trees = array();
+    $this->parents = [];
+    $this->parentsAll = [];
+    $this->children = [];
+    $this->treeChildren = [];
+    $this->treeParents = [];
+    $this->treeTerms = [];
+    $this->trees = [];
   }
 
 }
diff --git a/core/modules/taxonomy/src/TermStorageInterface.php b/core/modules/taxonomy/src/TermStorageInterface.php
index 9916711..05d8d7f 100644
--- a/core/modules/taxonomy/src/TermStorageInterface.php
+++ b/core/modules/taxonomy/src/TermStorageInterface.php
@@ -116,6 +116,6 @@ public function resetWeights($vid);
    * @return array
    *   An array of nids and the term entities they were tagged with.
    */
-  public function getNodeTerms(array $nids, array $vocabs = array(), $langcode = NULL);
+  public function getNodeTerms(array $nids, array $vocabs = [], $langcode = NULL);
 
 }
diff --git a/core/modules/taxonomy/src/TermStorageSchema.php b/core/modules/taxonomy/src/TermStorageSchema.php
index 5534821..5bcb088 100644
--- a/core/modules/taxonomy/src/TermStorageSchema.php
+++ b/core/modules/taxonomy/src/TermStorageSchema.php
@@ -17,93 +17,93 @@ class TermStorageSchema extends SqlContentEntityStorageSchema {
   protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $reset = FALSE) {
     $schema = parent::getEntitySchema($entity_type, $reset = FALSE);
 
-    $schema['taxonomy_term_field_data']['indexes'] += array(
-      'taxonomy_term__tree' => array('vid', 'weight', 'name'),
-      'taxonomy_term__vid_name' => array('vid', 'name'),
-    );
+    $schema['taxonomy_term_field_data']['indexes'] += [
+      'taxonomy_term__tree' => ['vid', 'weight', 'name'],
+      'taxonomy_term__vid_name' => ['vid', 'name'],
+    ];
 
-    $schema['taxonomy_term_hierarchy'] = array(
+    $schema['taxonomy_term_hierarchy'] = [
       'description' => 'Stores the hierarchical relationship between terms.',
-      'fields' => array(
-        'tid' => array(
+      'fields' => [
+        'tid' => [
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
           'description' => 'Primary Key: The {taxonomy_term_data}.tid of the term.',
-        ),
-        'parent' => array(
+        ],
+        'parent' => [
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
           'description' => "Primary Key: The {taxonomy_term_data}.tid of the term's parent. 0 indicates no parent.",
-        ),
-      ),
-      'indexes' => array(
-        'parent' => array('parent'),
-      ),
-      'foreign keys' => array(
-        'taxonomy_term_data' => array(
+        ],
+      ],
+      'indexes' => [
+        'parent' => ['parent'],
+      ],
+      'foreign keys' => [
+        'taxonomy_term_data' => [
           'table' => 'taxonomy_term_data',
-          'columns' => array('tid' => 'tid'),
-        ),
-      ),
-      'primary key' => array('tid', 'parent'),
-    );
+          'columns' => ['tid' => 'tid'],
+        ],
+      ],
+      'primary key' => ['tid', 'parent'],
+    ];
 
-    $schema['taxonomy_index'] = array(
+    $schema['taxonomy_index'] = [
       'description' => 'Maintains denormalized information about node/term relationships.',
-      'fields' => array(
-        'nid' => array(
+      'fields' => [
+        'nid' => [
           'description' => 'The {node}.nid this record tracks.',
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'tid' => array(
+        ],
+        'tid' => [
           'description' => 'The term ID.',
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'status' => array(
+        ],
+        'status' => [
           'description' => 'Boolean indicating whether the node is published (visible to non-administrators).',
           'type' => 'int',
           'not null' => TRUE,
           'default' => 1,
-        ),
-        'sticky' => array(
+        ],
+        'sticky' => [
           'description' => 'Boolean indicating whether the node is sticky.',
           'type' => 'int',
           'not null' => FALSE,
           'default' => 0,
           'size' => 'tiny',
-        ),
-        'created' => array(
+        ],
+        'created' => [
           'description' => 'The Unix timestamp when the node was created.',
           'type' => 'int',
           'not null' => TRUE,
           'default' => 0,
-        ),
-      ),
-      'primary key' => array('nid', 'tid'),
-      'indexes' => array(
-        'term_node' => array('tid', 'status', 'sticky', 'created'),
-      ),
-      'foreign keys' => array(
-        'tracked_node' => array(
+        ],
+      ],
+      'primary key' => ['nid', 'tid'],
+      'indexes' => [
+        'term_node' => ['tid', 'status', 'sticky', 'created'],
+      ],
+      'foreign keys' => [
+        'tracked_node' => [
           'table' => 'node',
-          'columns' => array('nid' => 'nid'),
-        ),
-        'term' => array(
+          'columns' => ['nid' => 'nid'],
+        ],
+        'term' => [
           'table' => 'taxonomy_term_data',
-          'columns' => array('tid' => 'tid'),
-        ),
-      ),
-    );
+          'columns' => ['tid' => 'tid'],
+        ],
+      ],
+    ];
 
     return $schema;
   }
diff --git a/core/modules/taxonomy/src/TermTranslationHandler.php b/core/modules/taxonomy/src/TermTranslationHandler.php
index 72539b5..8339267 100644
--- a/core/modules/taxonomy/src/TermTranslationHandler.php
+++ b/core/modules/taxonomy/src/TermTranslationHandler.php
@@ -16,7 +16,7 @@ class TermTranslationHandler extends ContentTranslationHandler {
    */
   public function entityFormAlter(array &$form, FormStateInterface $form_state, EntityInterface $entity) {
     parent::entityFormAlter($form, $form_state, $entity);
-    $form['actions']['submit']['#submit'][] = array($this, 'entityFormSave');
+    $form['actions']['submit']['#submit'][] = [$this, 'entityFormSave'];
   }
 
   /**
diff --git a/core/modules/taxonomy/src/TermViewBuilder.php b/core/modules/taxonomy/src/TermViewBuilder.php
index ca74535..6748a4b 100644
--- a/core/modules/taxonomy/src/TermViewBuilder.php
+++ b/core/modules/taxonomy/src/TermViewBuilder.php
@@ -16,10 +16,10 @@ class TermViewBuilder extends EntityViewBuilder {
    */
   protected function alterBuild(array &$build, EntityInterface $entity, EntityViewDisplayInterface $display, $view_mode) {
     parent::alterBuild($build, $entity, $display, $view_mode);
-    $build['#contextual_links']['taxonomy_term'] = array(
-      'route_parameters' => array('taxonomy_term' => $entity->id()),
-      'metadata' => array('changed' => $entity->getChangedTime()),
-    );
+    $build['#contextual_links']['taxonomy_term'] = [
+      'route_parameters' => ['taxonomy_term' => $entity->id()],
+      'metadata' => ['changed' => $entity->getChangedTime()],
+    ];
   }
 
 }
diff --git a/core/modules/taxonomy/src/TermViewsData.php b/core/modules/taxonomy/src/TermViewsData.php
index 32a238b..5e98bfe 100644
--- a/core/modules/taxonomy/src/TermViewsData.php
+++ b/core/modules/taxonomy/src/TermViewsData.php
@@ -19,13 +19,13 @@ public function getViewsData() {
     $data['taxonomy_term_field_data']['table']['base']['access query tag'] = 'taxonomy_term_access';
     $data['taxonomy_term_field_data']['table']['wizard_id'] = 'taxonomy_term';
 
-    $data['taxonomy_term_field_data']['table']['join'] = array(
+    $data['taxonomy_term_field_data']['table']['join'] = [
       // This is provided for the many_to_one argument.
-      'taxonomy_index' => array(
+      'taxonomy_index' => [
         'field' => 'tid',
         'left_field' => 'tid',
-      ),
-    );
+      ],
+    ];
 
     $data['taxonomy_term_field_data']['tid']['help'] = $this->t('The tid of a taxonomy term.');
 
@@ -39,18 +39,18 @@ public function getViewsData() {
     $data['taxonomy_term_field_data']['tid']['filter']['hierarchy table'] = 'taxonomy_term_hierarchy';
     $data['taxonomy_term_field_data']['tid']['filter']['numeric'] = TRUE;
 
-    $data['taxonomy_term_field_data']['tid_raw'] = array(
+    $data['taxonomy_term_field_data']['tid_raw'] = [
       'title' => $this->t('Term ID'),
       'help' => $this->t('The tid of a taxonomy term.'),
       'real field' => 'tid',
-      'filter' => array(
+      'filter' => [
         'id' => 'numeric',
         'allow empty' => TRUE,
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['tid_representative'] = array(
-      'relationship' => array(
+    $data['taxonomy_term_field_data']['tid_representative'] = [
+      'relationship' => [
         'title' => $this->t('Representative node'),
         'label'  => $this->t('Representative node'),
         'help' => $this->t('Obtains a single representative node for each term, according to a chosen sort criterion.'),
@@ -62,8 +62,8 @@ public function getViewsData() {
         'base'   => 'node_field_data',
         'field'  => 'nid',
         'relationship' => 'node_field_data:term_node_tid'
-      ),
-    );
+      ],
+    ];
 
     $data['taxonomy_term_field_data']['vid']['help'] = $this->t('Filter the results of "Taxonomy: Term" to a particular vocabulary.');
     unset($data['taxonomy_term_field_data']['vid']['field']);
@@ -79,114 +79,114 @@ public function getViewsData() {
     $data['taxonomy_term_field_data']['changed']['title'] = $this->t('Updated date');
     $data['taxonomy_term_field_data']['changed']['help'] = $this->t('The date the term was last updated.');
 
-    $data['taxonomy_term_field_data']['changed_fulldate'] = array(
+    $data['taxonomy_term_field_data']['changed_fulldate'] = [
       'title' => $this->t('Updated date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['changed_year_month'] = array(
+    $data['taxonomy_term_field_data']['changed_year_month'] = [
       'title' => $this->t('Updated year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['changed_year'] = array(
+    $data['taxonomy_term_field_data']['changed_year'] = [
       'title' => $this->t('Updated year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['changed_month'] = array(
+    $data['taxonomy_term_field_data']['changed_month'] = [
       'title' => $this->t('Updated month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['changed_day'] = array(
+    $data['taxonomy_term_field_data']['changed_day'] = [
       'title' => $this->t('Updated day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_field_data']['changed_week'] = array(
+    $data['taxonomy_term_field_data']['changed_week'] = [
       'title' => $this->t('Updated week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
     $data['taxonomy_index']['table']['group']  = $this->t('Taxonomy term');
 
-    $data['taxonomy_index']['table']['join'] = array(
-      'taxonomy_term_field_data' => array(
+    $data['taxonomy_index']['table']['join'] = [
+      'taxonomy_term_field_data' => [
         // links directly to taxonomy_term_field_data via tid
         'left_field' => 'tid',
         'field' => 'tid',
-      ),
-      'node_field_data' => array(
+      ],
+      'node_field_data' => [
         // links directly to node via nid
         'left_field' => 'nid',
         'field' => 'nid',
-      ),
-      'taxonomy_term_hierarchy' => array(
+      ],
+      'taxonomy_term_hierarchy' => [
         'left_field' => 'tid',
         'field' => 'tid',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_index']['nid'] = array(
+    $data['taxonomy_index']['nid'] = [
       'title' => $this->t('Content with term'),
       'help' => $this->t('Relate all content tagged with a term.'),
-      'relationship' => array(
+      'relationship' => [
         'id' => 'standard',
         'base' => 'node',
         'base field' => 'nid',
         'label' => $this->t('node'),
         'skip base' => 'node',
-      ),
-    );
+      ],
+    ];
 
     // @todo This stuff needs to move to a node field since really it's all
     //   about nodes.
-    $data['taxonomy_index']['tid'] = array(
+    $data['taxonomy_index']['tid'] = [
       'group' => $this->t('Content'),
       'title' => $this->t('Has taxonomy term ID'),
       'help' => $this->t('Display content if it has the selected taxonomy terms.'),
-      'argument' => array(
+      'argument' => [
         'id' => 'taxonomy_index_tid',
         'name table' => 'taxonomy_term_field_data',
         'name field' => 'name',
         'empty field name' => $this->t('Uncategorized'),
         'numeric' => TRUE,
         'skip base' => 'taxonomy_term_field_data',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'title' => $this->t('Has taxonomy term'),
         'id' => 'taxonomy_index_tid',
         'hierarchy table' => 'taxonomy_term_hierarchy',
         'numeric' => TRUE,
         'skip base' => 'taxonomy_term_field_data',
         'allow empty' => TRUE,
-      ),
-    );
+      ],
+    ];
 
     $data['taxonomy_index']['status'] = [
       'title' => $this->t('Publish status'),
@@ -226,37 +226,37 @@ public function getViewsData() {
     $data['taxonomy_term_hierarchy']['table']['group']  = $this->t('Taxonomy term');
     $data['taxonomy_term_hierarchy']['table']['provider']  = 'taxonomy';
 
-    $data['taxonomy_term_hierarchy']['table']['join'] = array(
-      'taxonomy_term_hierarchy' => array(
+    $data['taxonomy_term_hierarchy']['table']['join'] = [
+      'taxonomy_term_hierarchy' => [
         // Link to self through left.parent = right.tid (going down in depth).
         'left_field' => 'tid',
         'field' => 'parent',
-      ),
-      'taxonomy_term_field_data' => array(
+      ],
+      'taxonomy_term_field_data' => [
         // Link directly to taxonomy_term_field_data via tid.
         'left_field' => 'tid',
         'field' => 'tid',
-      ),
-    );
+      ],
+    ];
 
-    $data['taxonomy_term_hierarchy']['parent'] = array(
+    $data['taxonomy_term_hierarchy']['parent'] = [
       'title' => $this->t('Parent term'),
       'help' => $this->t('The parent term of the term. This can produce duplicate entries if you are using a vocabulary that allows multiple parents.'),
-      'relationship' => array(
+      'relationship' => [
         'base' => 'taxonomy_term_field_data',
         'field' => 'parent',
         'label' => $this->t('Parent'),
         'id' => 'standard',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'help' => $this->t('Filter the results of "Taxonomy: Term" by the parent pid.'),
         'id' => 'numeric',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'help' => $this->t('The parent term of the term.'),
         'id' => 'taxonomy',
-      ),
-    );
+      ],
+    ];
 
     return $data;
   }
diff --git a/core/modules/taxonomy/src/Tests/RssTest.php b/core/modules/taxonomy/src/Tests/RssTest.php
index f26cb07..315f64d 100644
--- a/core/modules/taxonomy/src/Tests/RssTest.php
+++ b/core/modules/taxonomy/src/Tests/RssTest.php
@@ -18,7 +18,7 @@ class RssTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'field_ui', 'views');
+  public static $modules = ['node', 'field_ui', 'views'];
 
   /**
    * Vocabulary for testing.
@@ -41,23 +41,23 @@ protected function setUp() {
     $this->vocabulary = $this->createVocabulary();
     $this->fieldName = 'taxonomy_' . $this->vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -72,21 +72,21 @@ function testTaxonomyRss() {
 
     // RSS display must be added manually.
     $this->drupalGet("admin/structure/types/manage/article/display");
-    $edit = array(
+    $edit = [
       "display_modes_custom[rss]" => '1',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Change the format to 'RSS category'.
     $this->drupalGet("admin/structure/types/manage/article/display/rss");
-    $edit = array(
+    $edit = [
       "fields[taxonomy_" . $this->vocabulary->id() . "][type]" => 'entity_reference_rss_category',
       "fields[taxonomy_" . $this->vocabulary->id() . "][region]" => 'content',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     // Post an article.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit[$this->fieldName . '[]'] = $term1->id();
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
@@ -95,7 +95,7 @@ function testTaxonomyRss() {
     $this->drupalGet('rss.xml');
     $test_element = sprintf(
       '<category %s>%s</category>',
-      'domain="' . $term1->url('canonical', array('absolute' => TRUE)) . '"',
+      'domain="' . $term1->url('canonical', ['absolute' => TRUE]) . '"',
       $term1->getName()
     );
     $this->assertRaw($test_element, 'Term is displayed when viewing the rss feed.');
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php b/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php
index 306e160..7d2ee2b 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyImageTest.php
@@ -26,48 +26,48 @@ class TaxonomyImageTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('image');
+  public static $modules = ['image'];
 
   protected function setUp() {
     parent::setUp();
 
     // Remove access content permission from registered users.
-    user_role_revoke_permissions(RoleInterface::AUTHENTICATED_ID, array('access content'));
+    user_role_revoke_permissions(RoleInterface::AUTHENTICATED_ID, ['access content']);
 
     $this->vocabulary = $this->createVocabulary();
     // Add a field to the vocabulary.
     $entity_type = 'taxonomy_term';
     $name = 'field_test';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $name,
       'entity_type' => $entity_type,
       'type' => 'image',
-      'settings' => array(
+      'settings' => [
         'uri_scheme' => 'private',
-      ),
-    ))->save();
+      ],
+    ])->save();
     FieldConfig::create([
       'field_name' => $name,
       'entity_type' => $entity_type,
       'bundle' => $this->vocabulary->id(),
-      'settings' => array(),
+      'settings' => [],
     ])->save();
     entity_get_display($entity_type, $this->vocabulary->id(), 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'image',
-        'settings' => array(),
-      ))
+        'settings' => [],
+      ])
       ->save();
     entity_get_form_display($entity_type, $this->vocabulary->id(), 'default')
-      ->setComponent($name, array(
+      ->setComponent($name, [
         'type' => 'image_image',
-        'settings' => array(),
-      ))
+        'settings' => [],
+      ])
       ->save();
   }
 
   public function testTaxonomyImageAccess() {
-    $user = $this->drupalCreateUser(array('administer site configuration', 'administer taxonomy', 'access user profiles'));
+    $user = $this->drupalCreateUser(['administer site configuration', 'administer taxonomy', 'access user profiles']);
     $this->drupalLogin($user);
 
     // Create a term and upload the image.
@@ -77,12 +77,12 @@ public function testTaxonomyImageAccess() {
     $edit['files[field_test_0]'] = drupal_realpath($image->uri);
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add', $edit, t('Save'));
     $this->drupalPostForm(NULL, ['field_test[0][alt]' => $this->randomMachineName()], t('Save'));
-    $terms = entity_load_multiple_by_properties('taxonomy_term', array('name' => $edit['name[0][value]']));
+    $terms = entity_load_multiple_by_properties('taxonomy_term', ['name' => $edit['name[0][value]']]);
     $term = reset($terms);
-    $this->assertText(t('Created new term @name.', array('@name' => $term->getName())));
+    $this->assertText(t('Created new term @name.', ['@name' => $term->getName()]));
 
     // Create a user that should have access to the file and one that doesn't.
-    $access_user = $this->drupalCreateUser(array('access content'));
+    $access_user = $this->drupalCreateUser(['access content']);
     $no_access_user = $this->drupalCreateUser();
     $image = File::load($term->field_test->target_id);
     $this->drupalLogin($access_user);
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyQueryAlterTest.php b/core/modules/taxonomy/src/Tests/TaxonomyQueryAlterTest.php
index 543910b..e5e787b 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyQueryAlterTest.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyQueryAlterTest.php
@@ -26,7 +26,7 @@ class TaxonomyQueryAlterTest extends WebTestBase {
   public function testTaxonomyQueryAlter() {
     // Create a new vocabulary and add a few terms to it.
     $vocabulary = $this->createVocabulary();
-    $terms = array();
+    $terms = [];
     for ($i = 0; $i < 5; $i++) {
       $terms[$i] = $this->createTerm($vocabulary);
     }
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyTermIndentationTest.php b/core/modules/taxonomy/src/Tests/TaxonomyTermIndentationTest.php
index 6043d77..b48de1a 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyTermIndentationTest.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyTermIndentationTest.php
@@ -14,7 +14,7 @@ class TaxonomyTermIndentationTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * Vocabulary for testing.
@@ -42,12 +42,12 @@ function testTermIndentation() {
     $taxonomy_storage = $this->container->get('entity.manager')->getStorage('taxonomy_term');
 
     // Indent the second term under the first one.
-    $edit = array(
+    $edit = [
       'terms[tid:' . $term2->id() . ':0][term][tid]' => 2,
       'terms[tid:' . $term2->id() . ':0][term][parent]' => 1,
       'terms[tid:' . $term2->id() . ':0][term][depth]' => 1,
       'terms[tid:' . $term2->id() . ':0][weight]' => 1,
-    );
+    ];
 
     // Submit the edited form and check for HTML indentation element presence.
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->get('vid') . '/overview', $edit, t('Save'));
@@ -58,12 +58,12 @@ function testTermIndentation() {
     $this->assertEqual(key($parents), 1, 'Term 1 is the term 2\'s parent');
 
     // Move the second term back out to the root level.
-    $edit = array(
+    $edit = [
       'terms[tid:' . $term2->id() . ':0][term][tid]' => 2,
       'terms[tid:' . $term2->id() . ':0][term][parent]' => 0,
       'terms[tid:' . $term2->id() . ':0][term][depth]' => 0,
       'terms[tid:' . $term2->id() . ':0][weight]' => 1,
-    );
+    ];
 
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->get('vid' ) . '/overview', $edit, t('Save'));
     // All terms back at the root level, no indentation should be present.
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyTestBase.php b/core/modules/taxonomy/src/Tests/TaxonomyTestBase.php
index 12c30c7..838a9b0 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyTestBase.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyTestBase.php
@@ -21,7 +21,7 @@
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'block');
+  public static $modules = ['taxonomy', 'block'];
 
   /**
    * {@inheritdoc}
@@ -32,7 +32,7 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyTestTrait.php b/core/modules/taxonomy/src/Tests/TaxonomyTestTrait.php
index f04be00..dae42f3 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyTestTrait.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyTestTrait.php
@@ -40,7 +40,7 @@ function createVocabulary() {
    * @return \Drupal\taxonomy\Entity\Term
    *   The new taxonomy term object.
    */
-  function createTerm(Vocabulary $vocabulary, $values = array()) {
+  function createTerm(Vocabulary $vocabulary, $values = []) {
     $filter_formats = filter_formats();
     $format = array_pop($filter_formats);
     $term = Term::create($values + [
diff --git a/core/modules/taxonomy/src/Tests/TaxonomyTranslationTestTrait.php b/core/modules/taxonomy/src/Tests/TaxonomyTranslationTestTrait.php
index 5ae6270..3607fc6 100644
--- a/core/modules/taxonomy/src/Tests/TaxonomyTranslationTestTrait.php
+++ b/core/modules/taxonomy/src/Tests/TaxonomyTranslationTestTrait.php
@@ -79,26 +79,26 @@ protected function enableTranslation() {
    *   to FALSE.
    */
   protected function setUpTermReferenceField() {
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->termFieldName, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
     $field_storage = FieldStorageConfig::loadByName('node', $this->termFieldName);
     $field_storage->setTranslatable(FALSE);
     $field_storage->save();
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->termFieldName, array(
+      ->setComponent($this->termFieldName, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->termFieldName, array(
+      ->setComponent($this->termFieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/taxonomy/src/Tests/TermTest.php b/core/modules/taxonomy/src/Tests/TermTest.php
index 311ed6b..cba983dd 100644
--- a/core/modules/taxonomy/src/Tests/TermTest.php
+++ b/core/modules/taxonomy/src/Tests/TermTest.php
@@ -52,24 +52,24 @@ protected function setUp() {
 
     $field_name = 'taxonomy_' . $this->vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $field_name, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
     $this->field = FieldConfig::loadByName('node', 'article', $field_name);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -89,8 +89,8 @@ function testTaxonomyTermHierarchy() {
     $this->assertEqual(0, $vocabulary->getHierarchy(), 'Vocabulary is flat.');
 
     // Edit $term2, setting $term1 as parent.
-    $edit = array();
-    $edit['parent[]'] = array($term1->id());
+    $edit = [];
+    $edit['parent[]'] = [$term1->id()];
     $this->drupalPostForm('taxonomy/term/' . $term2->id() . '/edit', $edit, t('Save'));
 
     // Check the hierarchy.
@@ -107,7 +107,7 @@ function testTaxonomyTermHierarchy() {
 
     // Create a third term and save this as a parent of term2.
     $term3 = $this->createTerm($this->vocabulary);
-    $term2->parent = array($term1->id(), $term3->id());
+    $term2->parent = [$term1->id(), $term3->id()];
     $term2->save();
     $parents = $taxonomy_storage->loadParents($term2->id());
     $this->assertTrue(isset($parents[$term1->id()]) && isset($parents[$term3->id()]), 'Both parents found successfully.');
@@ -127,7 +127,7 @@ function testTaxonomyTermChildTerms() {
     // Create 40 terms. Terms 1-12 get parent of $term1. All others are
     // individual terms.
     for ($x = 1; $x <= 40; $x++) {
-      $edit = array();
+      $edit = [];
       // Set terms in order so we know which terms will be on which pages.
       $edit['weight'] = $x;
 
@@ -149,14 +149,14 @@ function testTaxonomyTermChildTerms() {
     }
 
     // Get Page 2.
-    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', array('query' => array('page' => 1)));
+    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', ['query' => ['page' => 1]]);
     $this->assertText($term1->getName(), 'Parent Term is displayed on Page 2');
     for ($x = 1; $x <= 18; $x++) {
       $this->assertText($terms_array[$x]->getName(), $terms_array[$x]->getName() . ' found on Page 2');
     }
 
     // Get Page 3.
-    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', array('query' => array('page' => 2)));
+    $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', ['query' => ['page' => 2]]);
     $this->assertNoText($term1->getName(), 'Parent Term is not displayed on Page 3');
     for ($x = 1; $x <= 17; $x++) {
       $this->assertNoText($terms_array[$x]->getName(), $terms_array[$x]->getName() . ' not found on Page 3');
@@ -177,7 +177,7 @@ function testTaxonomyNode() {
     $term2 = $this->createTerm($this->vocabulary);
 
     // Post an article.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['body[0][value]'] = $this->randomMachineName();
     $edit[$this->field->getName() . '[]'] = $term1->id();
@@ -190,7 +190,7 @@ function testTaxonomyNode() {
 
     $this->clickLink(t('Edit'));
     $this->assertText($term1->getName(), 'Term is displayed when editing the node.');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText($term1->getName(), 'Term is displayed after saving the node with no changes.');
 
     // Edit the node with a different term.
@@ -214,24 +214,24 @@ function testNodeTermCreationAndDeletion() {
     // Enable tags in the vocabulary.
     $field = $this->field;
     entity_get_form_display($field->getTargetEntityTypeId(), $field->getTargetBundle(), 'default')
-      ->setComponent($field->getName(), array(
+      ->setComponent($field->getName(), [
         'type' => 'entity_reference_autocomplete_tags',
-        'settings' => array(
+        'settings' => [
           'placeholder' => 'Start typing here.',
-        ),
-      ))
+        ],
+      ])
       ->save();
     // Prefix the terms with a letter to ensure there is no clash in the first
     // three letters.
     // @see https://www.drupal.org/node/2397691
-    $terms = array(
+    $terms = [
       'term1' => 'a' . $this->randomMachineName(),
       'term2' => 'b' . $this->randomMachineName(),
       'term3' => 'c' . $this->randomMachineName() . ', ' . $this->randomMachineName(),
       'term4' => 'd' . $this->randomMachineName(),
-    );
+    ];
 
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['body[0][value]'] = $this->randomMachineName();
     // Insert the terms in a comma separated list. Vocabulary 1 is a
@@ -255,10 +255,10 @@ function testNodeTermCreationAndDeletion() {
 
     // Save, creating the terms.
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
-    $this->assertText(t('@type @title has been created.', array('@type' => t('Article'), '@title' => $edit['title[0][value]'])), 'The node was created successfully.');
+    $this->assertText(t('@type @title has been created.', ['@type' => t('Article'), '@title' => $edit['title[0][value]']]), 'The node was created successfully.');
 
     // Verify that the creation message contains a link to a node.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'node/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'node/']);
     $this->assert(isset($view_link), 'The message area contains a link to a node');
 
     foreach ($terms as $term) {
@@ -266,7 +266,7 @@ function testNodeTermCreationAndDeletion() {
     }
 
     // Get the created terms.
-    $term_objects = array();
+    $term_objects = [];
     foreach ($terms as $key => $term) {
       $term_objects[$key] = taxonomy_term_load_multiple_by_name($term);
       $term_objects[$key] = reset($term_objects[$key]);
@@ -288,30 +288,30 @@ function testNodeTermCreationAndDeletion() {
 
     // Delete term 2 from the term delete page.
     $this->drupalGet('taxonomy/term/' . $term_objects['term2']->id() . '/delete');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
-    $term_names = array($term_objects['term3']->getName(), $term_objects['term4']->getName());
+    $this->drupalPostForm(NULL, [], t('Delete'));
+    $term_names = [$term_objects['term3']->getName(), $term_objects['term4']->getName()];
 
     $this->drupalGet('node/' . $node->id());
 
     foreach ($term_names as $term_name) {
-      $this->assertText($term_name, format_string('The term %name appears on the node page after two terms, %deleted1 and %deleted2, were deleted.', array('%name' => $term_name, '%deleted1' => $term_objects['term1']->getName(), '%deleted2' => $term_objects['term2']->getName())));
+      $this->assertText($term_name, format_string('The term %name appears on the node page after two terms, %deleted1 and %deleted2, were deleted.', ['%name' => $term_name, '%deleted1' => $term_objects['term1']->getName(), '%deleted2' => $term_objects['term2']->getName()]));
     }
-    $this->assertNoText($term_objects['term1']->getName(), format_string('The deleted term %name does not appear on the node page.', array('%name' => $term_objects['term1']->getName())));
-    $this->assertNoText($term_objects['term2']->getName(), format_string('The deleted term %name does not appear on the node page.', array('%name' => $term_objects['term2']->getName())));
+    $this->assertNoText($term_objects['term1']->getName(), format_string('The deleted term %name does not appear on the node page.', ['%name' => $term_objects['term1']->getName()]));
+    $this->assertNoText($term_objects['term2']->getName(), format_string('The deleted term %name does not appear on the node page.', ['%name' => $term_objects['term2']->getName()]));
   }
 
   /**
    * Save, edit and delete a term using the user interface.
    */
   function testTermInterface() {
-    \Drupal::service('module_installer')->install(array('views'));
-    $edit = array(
+    \Drupal::service('module_installer')->install(['views']);
+    $edit = [
       'name[0][value]' => $this->randomMachineName(12),
       'description[0][value]' => $this->randomMachineName(100),
-    );
+    ];
     // Explicitly set the parents field to 'root', to ensure that
     // TermForm::save() handles the invalid term ID correctly.
-    $edit['parent[]'] = array(0);
+    $edit['parent[]'] = [0];
 
     // Create the term to edit.
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add', $edit, t('Save'));
@@ -328,10 +328,10 @@ function testTermInterface() {
     $this->assertRaw($edit['name[0][value]'], 'The randomly generated term name is present.');
     $this->assertText($edit['description[0][value]'], 'The randomly generated term description is present.');
 
-    $edit = array(
+    $edit = [
       'name[0][value]' => $this->randomMachineName(14),
       'description[0][value]' => $this->randomMachineName(102),
-    );
+    ];
 
     // Edit the term.
     $this->drupalPostForm('taxonomy/term/' . $term->id() . '/edit', $edit, t('Save'));
@@ -398,7 +398,7 @@ function testTermReorder() {
     // "tid:1:0[depth]", and "tid:1:0[weight]". Change the order to term2,
     // term3, term1 by setting weight property, make term3 a child of term2 by
     // setting the parent and depth properties, and update all hidden fields.
-    $edit = array(
+    $edit = [
       'terms[tid:' . $term2->id() . ':0][term][tid]' => $term2->id(),
       'terms[tid:' . $term2->id() . ':0][term][parent]' => 0,
       'terms[tid:' . $term2->id() . ':0][term][depth]' => 0,
@@ -411,18 +411,18 @@ function testTermReorder() {
       'terms[tid:' . $term1->id() . ':0][term][parent]' => 0,
       'terms[tid:' . $term1->id() . ':0][term][depth]' => 0,
       'terms[tid:' . $term1->id() . ':0][weight]' => 2,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
 
     $taxonomy_storage->resetCache();
     $terms = $taxonomy_storage->loadTree($this->vocabulary->id());
     $this->assertEqual($terms[0]->tid, $term2->id(), 'Term 2 was moved above term 1.');
-    $this->assertEqual($terms[1]->parents, array($term2->id()), 'Term 3 was made a child of term 2.');
+    $this->assertEqual($terms[1]->parents, [$term2->id()], 'Term 3 was made a child of term 2.');
     $this->assertEqual($terms[2]->tid, $term1->id(), 'Term 1 was moved below term 2.');
 
-    $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', array(), t('Reset to alphabetical'));
+    $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview', [], t('Reset to alphabetical'));
     // Submit confirmation form.
-    $this->drupalPostForm(NULL, array(), t('Reset to alphabetical'));
+    $this->drupalPostForm(NULL, [], t('Reset to alphabetical'));
     // Ensure form redirected back to overview.
     $this->assertUrl('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/overview');
 
@@ -431,7 +431,7 @@ function testTermReorder() {
     $this->assertEqual($terms[0]->id(), $term1->id(), 'Term 1 was moved to back above term 2.');
     $this->assertEqual($terms[1]->id(), $term2->id(), 'Term 2 was moved to back below term 1.');
     $this->assertEqual($terms[2]->id(), $term3->id(), 'Term 3 is still below term 2.');
-    $this->assertEqual($terms[2]->parents, array($term2->id()), 'Term 3 is still a child of term 2.');
+    $this->assertEqual($terms[2]->parents, [$term2->id()], 'Term 3 is still a child of term 2.');
   }
 
   /**
@@ -442,11 +442,11 @@ function testTermMultipleParentsInterface() {
     $parent = $this->createTerm($this->vocabulary);
 
     // Add a new term with multiple parents.
-    $edit = array(
+    $edit = [
       'name[0][value]' => $this->randomMachineName(12),
       'description[0][value]' => $this->randomMachineName(100),
-      'parent[]' => array(0, $parent->id()),
-    );
+      'parent[]' => [0, $parent->id()],
+    ];
     // Save the new term.
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add', $edit, t('Save'));
 
@@ -530,14 +530,14 @@ function testReSavingTags() {
     // Enable tags in the vocabulary.
     $field = $this->field;
     entity_get_form_display($field->getTargetEntityTypeId(), $field->getTargetBundle(), 'default')
-      ->setComponent($field->getName(), array(
+      ->setComponent($field->getName(), [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
 
     // Create a term and a node using it.
     $term = $this->createTerm($this->vocabulary);
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName(8);
     $edit['body[0][value]'] = $this->randomMachineName(16);
     $edit[$this->field->getName() . '[target_id]'] = $term->getName();
@@ -547,7 +547,7 @@ function testReSavingTags() {
     // changes.
     $this->clickLink(t('Edit'));
     $this->assertRaw($term->getName(), 'Term is displayed when editing the node.');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertRaw($term->getName(), 'Term is displayed after saving the node with no changes.');
   }
 
diff --git a/core/modules/taxonomy/src/Tests/TermTranslationTest.php b/core/modules/taxonomy/src/Tests/TermTranslationTest.php
index 91b13b1..c1425b7 100644
--- a/core/modules/taxonomy/src/Tests/TermTranslationTest.php
+++ b/core/modules/taxonomy/src/Tests/TermTranslationTest.php
@@ -20,23 +20,23 @@ class TermTranslationTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  protected $termTranslationMap = array(
+  protected $termTranslationMap = [
     'one' => 'translatedOne',
     'two' => 'translatedTwo',
     'three' => 'translatedThree',
-  );
+  ];
 
   /**
    * Created terms.
    *
    * @var \Drupal\taxonomy\Entity\Term[]
    */
-  protected $terms = array();
+  protected $terms = [];
 
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy', 'language', 'content_translation');
+  public static $modules = ['taxonomy', 'language', 'content_translation'];
 
   /**
    * {@inheritdoc}
@@ -55,7 +55,7 @@ protected function setUp() {
    */
   public function testTranslatedBreadcrumbs() {
     // Ensure non-translated breadcrumb is correct.
-    $breadcrumb = array(Url::fromRoute('<front>')->toString() => 'Home');
+    $breadcrumb = [Url::fromRoute('<front>')->toString() => 'Home'];
     foreach ($this->terms as $term) {
       $breadcrumb[$term->url()] = $term->label();
     }
@@ -69,7 +69,7 @@ public function testTranslatedBreadcrumbs() {
     $languages = \Drupal::languageManager()->getLanguages();
 
     // Construct the expected translated breadcrumb.
-    $breadcrumb = array(Url::fromRoute('<front>', [], ['language' => $languages[$this->translateToLangcode]])->toString() => 'Home');
+    $breadcrumb = [Url::fromRoute('<front>', [], ['language' => $languages[$this->translateToLangcode]])->toString() => 'Home'];
     foreach ($this->terms as $term) {
       $translated = $term->getTranslation($this->translateToLangcode);
       $url = $translated->url('canonical', ['language' => $languages[$this->translateToLangcode]]);
@@ -92,9 +92,9 @@ protected function testTermsTranslation() {
     // Set the display of the term reference field on the article content type
     // to "Check boxes/radio buttons".
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->termFieldName, array(
+      ->setComponent($this->termFieldName, [
         'type' => 'options_buttons',
-      ))
+      ])
       ->save();
     $this->drupalLogin($this->drupalCreateUser(['create article content']));
 
@@ -118,15 +118,15 @@ protected function setUpTerms() {
     $parent_vid = 0;
     foreach ($this->termTranslationMap as $name => $translation) {
 
-      $term = $this->createTerm($this->vocabulary, array(
+      $term = $this->createTerm($this->vocabulary, [
         'name' => $name,
         'langcode' => $this->baseLangcode,
         'parent' => $parent_vid,
-      ));
+      ]);
 
-      $term->addTranslation($this->translateToLangcode, array(
+      $term->addTranslation($this->translateToLangcode, [
         'name' => $translation,
-      ));
+      ]);
       $term->save();
 
       // Each term is nested under the last.
diff --git a/core/modules/taxonomy/src/Tests/TermTranslationUITest.php b/core/modules/taxonomy/src/Tests/TermTranslationUITest.php
index fa9652d..5e82ffc 100644
--- a/core/modules/taxonomy/src/Tests/TermTranslationUITest.php
+++ b/core/modules/taxonomy/src/Tests/TermTranslationUITest.php
@@ -25,7 +25,7 @@ class TermTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'taxonomy');
+  public static $modules = ['language', 'content_translation', 'taxonomy'];
 
   protected function setUp() {
     $this->entityTypeId = 'taxonomy_term';
@@ -54,14 +54,14 @@ protected function setupBundle() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('administer taxonomy'));
+    return array_merge(parent::getTranslatorPermissions(), ['administer taxonomy']);
   }
 
   /**
    * {@inheritdoc}
    */
   protected function getNewEntityValues($langcode) {
-    return array('name' => $this->randomMachineName()) + parent::getNewEntityValues($langcode);
+    return ['name' => $this->randomMachineName()] + parent::getNewEntityValues($langcode);
   }
 
   /**
@@ -73,7 +73,7 @@ protected function getEditValues($values, $langcode, $new = FALSE) {
     // To be able to post values for the configurable base fields (name,
     // description) have to be suffixed with [0][value].
     foreach ($edit as $property => $value) {
-      foreach (array('name', 'description') as $key) {
+      foreach (['name', 'description'] as $key) {
         if ($property == $key) {
           $edit[$key . '[0][value]'] = $value;
           unset($edit[$property]);
@@ -91,7 +91,7 @@ public function testTranslationUI() {
 
     // Make sure that no row was inserted for taxonomy vocabularies which do
     // not have translations enabled.
-    $rows = db_query('SELECT tid, count(tid) AS count FROM {taxonomy_term_field_data} WHERE vid <> :vid GROUP BY tid', array(':vid' => $this->bundle))->fetchAll();
+    $rows = db_query('SELECT tid, count(tid) AS count FROM {taxonomy_term_field_data} WHERE vid <> :vid GROUP BY tid', [':vid' => $this->bundle])->fetchAll();
     foreach ($rows as $row) {
       $this->assertTrue($row->count < 2, 'Term does not have translations.');
     }
@@ -103,9 +103,9 @@ public function testTranslationUI() {
   function testTranslateLinkVocabularyAdminPage() {
     $this->drupalLogin($this->drupalCreateUser(array_merge(parent::getTranslatorPermissions(), ['access administration pages', 'administer taxonomy'])));
 
-    $values = array(
+    $values = [
       'name' => $this->randomMachineName(),
-    );
+    ];
     $translatable_tid = $this->createEntity($values, $this->langcodes[0], $this->vocabulary->id());
 
     // Create an untranslatable vocabulary.
@@ -118,9 +118,9 @@ function testTranslateLinkVocabularyAdminPage() {
     ]);
     $untranslatable_vocabulary->save();
 
-    $values = array(
+    $values = [
       'name' => $this->randomMachineName(),
-    );
+    ];
     $untranslatable_tid = $this->createEntity($values, $this->langcodes[0], $untranslatable_vocabulary->id());
 
     // Verify translation links.
@@ -148,14 +148,14 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('@title [%language translation]', array(
+        $title = t('@title [%language translation]', [
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/taxonomy/src/Tests/ThemeTest.php b/core/modules/taxonomy/src/Tests/ThemeTest.php
index 54ad6e4..fc7f2cf 100644
--- a/core/modules/taxonomy/src/Tests/ThemeTest.php
+++ b/core/modules/taxonomy/src/Tests/ThemeTest.php
@@ -14,7 +14,7 @@ protected function setUp() {
 
     // Make sure we are using distinct default and administrative themes for
     // the duration of these tests.
-    \Drupal::service('theme_handler')->install(array('bartik', 'seven'));
+    \Drupal::service('theme_handler')->install(['bartik', 'seven']);
     $this->config('system.theme')
       ->set('default', 'bartik')
       ->set('admin', 'seven')
@@ -22,7 +22,7 @@ protected function setUp() {
 
     // Create and log in as a user who has permission to add and edit taxonomy
     // terms and view the administrative theme.
-    $admin_user = $this->drupalCreateUser(array('administer taxonomy', 'view the administration theme'));
+    $admin_user = $this->drupalCreateUser(['administer taxonomy', 'view the administration theme']);
     $this->drupalLogin($admin_user);
   }
 
diff --git a/core/modules/taxonomy/src/Tests/Views/RelationshipNodeTermDataTest.php b/core/modules/taxonomy/src/Tests/Views/RelationshipNodeTermDataTest.php
index c38c45c..e76d815 100644
--- a/core/modules/taxonomy/src/Tests/Views/RelationshipNodeTermDataTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/RelationshipNodeTermDataTest.php
@@ -16,7 +16,7 @@ class RelationshipNodeTermDataTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_taxonomy_node_term_data');
+  public static $testViews = ['test_taxonomy_node_term_data'];
 
   function testViewsHandlerRelationshipNodeTermData() {
     $view = Views::getView('test_taxonomy_node_term_data');
@@ -30,16 +30,16 @@ function testViewsHandlerRelationshipNodeTermData() {
       ],
     ];
     $this->assertIdentical($expected, $view->getDependencies());
-    $this->executeView($view, array($this->term1->id(), $this->term2->id()));
-    $expected_result = array(
-      array(
+    $this->executeView($view, [$this->term1->id(), $this->term2->id()]);
+    $expected_result = [
+      [
         'nid' => $this->nodes[1]->id(),
-      ),
-      array(
+      ],
+      [
         'nid' => $this->nodes[0]->id(),
-      ),
-    );
-    $column_map = array('nid' => 'nid');
+      ],
+    ];
+    $column_map = ['nid' => 'nid'];
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
 
     // Change the view to test relation limited by vocabulary.
@@ -51,7 +51,7 @@ function testViewsHandlerRelationshipNodeTermData() {
     // Tests \Drupal\taxonomy\Plugin\views\relationship\NodeTermData::calculateDependencies().
     $expected['config'][] = 'taxonomy.vocabulary.views_testing_tags';
     $this->assertIdentical($expected, $view->getDependencies());
-    $this->executeView($view, array($this->term1->id(), $this->term2->id()));
+    $this->executeView($view, [$this->term1->id(), $this->term2->id()]);
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
   }
 
diff --git a/core/modules/taxonomy/src/Tests/Views/RelationshipRepresentativeNodeTest.php b/core/modules/taxonomy/src/Tests/Views/RelationshipRepresentativeNodeTest.php
index d049f82..aa85c9e 100644
--- a/core/modules/taxonomy/src/Tests/Views/RelationshipRepresentativeNodeTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/RelationshipRepresentativeNodeTest.php
@@ -16,7 +16,7 @@ class RelationshipRepresentativeNodeTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_groupwise_term');
+  public static $testViews = ['test_groupwise_term'];
 
   /**
    * Tests the relationship.
@@ -24,17 +24,17 @@ class RelationshipRepresentativeNodeTest extends TaxonomyTestBase {
   public function testRelationship() {
     $view = Views::getView('test_groupwise_term');
     $this->executeView($view);
-    $map = array('node_field_data_taxonomy_term_field_data_nid' => 'nid', 'tid' => 'tid');
-    $expected_result = array(
-      array(
+    $map = ['node_field_data_taxonomy_term_field_data_nid' => 'nid', 'tid' => 'tid'];
+    $expected_result = [
+      [
         'nid' => $this->nodes[1]->id(),
         'tid' => $this->term2->id(),
-      ),
-      array(
+      ],
+      [
         'nid' => $this->nodes[1]->id(),
         'tid' => $this->term1->id(),
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $map);
   }
 
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyDefaultArgumentTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyDefaultArgumentTest.php
index c08266f..8b263b4 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyDefaultArgumentTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyDefaultArgumentTest.php
@@ -19,7 +19,7 @@ class TaxonomyDefaultArgumentTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $testViews = array('taxonomy_default_argument_test');
+  public static $testViews = ['taxonomy_default_argument_test'];
 
   /**
    * Tests the relationship.
@@ -37,7 +37,7 @@ public function testNodePath() {
     $view->setResponse($response);
 
     $view->initHandlers();
-    $expected = implode(',', array($this->term1->id(), $this->term2->id()));
+    $expected = implode(',', [$this->term1->id(), $this->term2->id()]);
     $this->assertEqual($expected, $view->argument['tid']->getDefaultArgument());
     $view->destroy();
   }
@@ -68,7 +68,7 @@ public function testNodePathWithViewSelection() {
     $view->setResponse($response);
 
     $view->initHandlers();
-    $expected = implode(',', array($this->term1->id(), $this->term2->id()));
+    $expected = implode(',', [$this->term1->id(), $this->term2->id()]);
     $this->assertEqual($expected, $view->argument['tid']->getDefaultArgument());
   }
 
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldAllTermsTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldAllTermsTest.php
index 75894ce..a75f16a 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldAllTermsTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldAllTermsTest.php
@@ -17,7 +17,7 @@ class TaxonomyFieldAllTermsTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $testViews = array('taxonomy_all_terms_test');
+  public static $testViews = ['taxonomy_all_terms_test'];
 
   /**
    * Tests the "all terms" field handler.
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php
index fb0c0df..2e9602d 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldFilterTest.php
@@ -22,14 +22,14 @@ class TaxonomyFieldFilterTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('language', 'taxonomy', 'taxonomy_test_views', 'text', 'views', 'node');
+  public static $modules = ['language', 'taxonomy', 'taxonomy_test_views', 'text', 'views', 'node'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_field_filters');
+  public static $testViews = ['test_field_filters'];
 
   /**
    * The vocabulary used for creating terms.
@@ -53,11 +53,11 @@ function setUp() {
     ConfigurableLanguage::createFromLangcode('es')->save();
 
     // Set up term names.
-    $this->termNames = array(
+    $this->termNames = [
       'en' => 'Food in Paris',
       'es' => 'Comida en Paris',
       'fr' => 'Nouriture en Paris',
-    );
+    ];
 
     // Create a vocabulary.
     $this->vocabulary = Vocabulary::create([
@@ -67,11 +67,11 @@ function setUp() {
     $this->vocabulary->save();
 
     // Add a translatable field to the vocabulary.
-    $field = FieldStorageConfig::create(array(
+    $field = FieldStorageConfig::create([
       'field_name' => 'field_foo',
       'entity_type' => 'taxonomy_term',
       'type' => 'text',
-    ));
+    ]);
     $field->save();
     FieldConfig::create([
       'field_name' => 'field_foo',
@@ -81,9 +81,9 @@ function setUp() {
     ])->save();
 
     // Create term with translations.
-    $taxonomy = $this->createTermWithProperties(array('name' => $this->termNames['en'], 'langcode' => 'en', 'description' => $this->termNames['en'], 'field_foo' => $this->termNames['en']));
-    foreach (array('es', 'fr') as $langcode) {
-      $translation = $taxonomy->addTranslation($langcode, array('name' => $this->termNames[$langcode]));
+    $taxonomy = $this->createTermWithProperties(['name' => $this->termNames['en'], 'langcode' => 'en', 'description' => $this->termNames['en'], 'field_foo' => $this->termNames['en']]);
+    foreach (['es', 'fr'] as $langcode) {
+      $translation = $taxonomy->addTranslation($langcode, ['name' => $this->termNames[$langcode]]);
       $translation->description->value = $this->termNames[$langcode];
       $translation->field_foo->value = $this->termNames[$langcode];
     }
@@ -91,7 +91,7 @@ function setUp() {
 
     Views::viewsData()->clear();
 
-    ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['taxonomy_test_views']);
     $this->container->get('router.builder')->rebuild();
   }
 
@@ -101,27 +101,27 @@ function setUp() {
   public function testFilters() {
     // Test the name filter page, which filters for name contains 'Comida'.
     // Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-name-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida name filter');
+    $this->assertPageCounts('test-name-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida name filter');
 
     // Test the description filter page, which filters for description contains
     // 'Comida'. Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-desc-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida description filter');
+    $this->assertPageCounts('test-desc-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida description filter');
 
     // Test the field filter page, which filters for field_foo contains
     // 'Comida'. Should show just the Spanish translation, once.
-    $this->assertPageCounts('test-field-filter', array('es' => 1, 'fr' => 0, 'en' => 0), 'Comida field filter');
+    $this->assertPageCounts('test-field-filter', ['es' => 1, 'fr' => 0, 'en' => 0], 'Comida field filter');
 
     // Test the name Paris filter page, which filters for name contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-name-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris name filter');
+    $this->assertPageCounts('test-name-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris name filter');
 
     // Test the description Paris page, which filters for description contains
     // 'Paris'. Should show each translation, once.
-    $this->assertPageCounts('test-desc-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris description filter');
+    $this->assertPageCounts('test-desc-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris description filter');
 
     // Test the field Paris filter page, which filters for field_foo contains
     // 'Paris'. Should show each translation once.
-    $this->assertPageCounts('test-field-paris', array('es' => 1, 'fr' => 1, 'en' => 1), 'Paris field filter');
+    $this->assertPageCounts('test-field-paris', ['es' => 1, 'fr' => 1, 'en' => 1], 'Paris field filter');
 
   }
 
@@ -163,12 +163,12 @@ protected function createTermWithProperties($properties) {
     $filter_formats = filter_formats();
     $format = array_pop($filter_formats);
 
-    $properties += array(
+    $properties += [
       'name' => $this->randomMachineName(),
       'description' => $this->randomMachineName(),
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
       'field_foo' => $this->randomMachineName(),
-    );
+    ];
 
     $term = Term::create([
       'name' => $properties['name'],
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldTidTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldTidTest.php
index 6480491..51489ac 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldTidTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyFieldTidTest.php
@@ -17,7 +17,7 @@ class TaxonomyFieldTidTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_taxonomy_tid_field');
+  public static $testViews = ['test_taxonomy_tid_field'];
 
   function testViewsHandlerTidField() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidFilterTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidFilterTest.php
index 9935aa9..aa5054f 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidFilterTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidFilterTest.php
@@ -58,7 +58,7 @@ protected function setUp() {
     $term->save();
     $this->terms[$term->id()] = $term;
 
-    ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['taxonomy_test_views']);
   }
 
   /**
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidUiTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidUiTest.php
index 7dff50a..efa5191 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidUiTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyIndexTidUiTest.php
@@ -24,7 +24,7 @@ class TaxonomyIndexTidUiTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_taxonomy_index_tid', 'test_taxonomy_term_name');
+  public static $testViews = ['test_filter_taxonomy_index_tid', 'test_taxonomy_term_name'];
 
   /**
    * Modules to enable.
@@ -71,7 +71,7 @@ protected function setUp() {
         $term->save();
       }
     }
-    ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['taxonomy_test_views']);
 
     Vocabulary::create([
       'vid' => 'empty_vocabulary',
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyParentUITest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyParentUITest.php
index c79a406..a57a09a 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyParentUITest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyParentUITest.php
@@ -18,14 +18,14 @@ class TaxonomyParentUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_taxonomy_parent');
+  public static $testViews = ['test_taxonomy_parent'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'taxonomy_test_views');
+  public static $modules = ['taxonomy', 'taxonomy_test_views'];
 
   /**
    * {@inheritdoc}
@@ -33,7 +33,7 @@ class TaxonomyParentUITest extends UITestBase {
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['taxonomy_test_views']);
   }
 
   /**
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyRelationshipTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyRelationshipTest.php
index bada7fa..7024e64 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyRelationshipTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyRelationshipTest.php
@@ -18,14 +18,14 @@ class TaxonomyRelationshipTest extends TaxonomyTestBase {
    *
    * @var \Drupal\taxonomy\TermInterface[]
    */
-  protected $terms = array();
+  protected $terms = [];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_taxonomy_term_relationship');
+  public static $testViews = ['test_taxonomy_term_relationship'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyTermViewTest.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyTermViewTest.php
index ef6da47..bfd65cf 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyTermViewTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyTermViewTest.php
@@ -21,7 +21,7 @@ class TaxonomyTermViewTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'views');
+  public static $modules = ['taxonomy', 'views'];
 
   /**
    * An user with permissions to administer taxonomy.
@@ -51,23 +51,23 @@ protected function setUp() {
 
     $this->fieldName1 = Unicode::strtolower($this->randomMachineName());
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName1, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName1, array(
+      ->setComponent($this->fieldName1, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->fieldName1, array(
+      ->setComponent($this->fieldName1, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -79,7 +79,7 @@ public function testTaxonomyTermView() {
     $term = $this->createTerm();
 
     // Post an article.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $original_title = $this->randomMachineName();
     $edit['body[0][value]'] = $this->randomMachineName();
     $edit["{$this->fieldName1}[]"] = $term->id();
@@ -90,7 +90,7 @@ public function testTaxonomyTermView() {
     $this->assertText($term->label());
     $this->assertText($node->label());
 
-    \Drupal::service('module_installer')->install(array('language', 'content_translation'));
+    \Drupal::service('module_installer')->install(['language', 'content_translation']);
     $language = ConfigurableLanguage::createFromLangcode('ur');
     $language->save();
     // Enable translation for the article content type and ensure the change is
diff --git a/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php b/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php
index dc57559..6ff5514 100644
--- a/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php
+++ b/core/modules/taxonomy/src/Tests/Views/TaxonomyTestBase.php
@@ -22,14 +22,14 @@
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'taxonomy_test_views');
+  public static $modules = ['taxonomy', 'taxonomy_test_views'];
 
   /**
    * Stores the nodes used for the different tests.
    *
    * @var \Drupal\node\NodeInterface[]
    */
-  protected $nodes = array();
+  protected $nodes = [];
 
   /**
    * The vocabulary used for creating terms.
@@ -60,13 +60,13 @@ protected function setUp($import_test_views = TRUE) {
     $this->mockStandardInstall();
 
     if ($import_test_views) {
-      ViewTestData::createTestViews(get_class($this), array('taxonomy_test_views'));
+      ViewTestData::createTestViews(get_class($this), ['taxonomy_test_views']);
     }
 
     $this->term1 = $this->createTerm();
     $this->term2 = $this->createTerm();
 
-    $node = array();
+    $node = [];
     $node['type'] = 'article';
     $node['field_views_testing_tags'][]['target_id'] = $this->term1->id();
     $node['field_views_testing_tags'][]['target_id'] = $this->term2->id();
@@ -80,9 +80,9 @@ protected function setUp($import_test_views = TRUE) {
    * @see https://www.drupal.org/node/1708692
    */
   protected function mockStandardInstall() {
-    $this->drupalCreateContentType(array(
+    $this->drupalCreateContentType([
       'type' => 'article',
-    ));
+    ]);
     // Create the vocabulary for the tag field.
     $this->vocabulary = Vocabulary::create([
       'name' => 'Views testing tags',
@@ -91,32 +91,32 @@ protected function mockStandardInstall() {
     $this->vocabulary->save();
     $field_name = 'field_' . $this->vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $field_name, 'Tags', 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'entity_reference_autocomplete_tags',
         'weight' => -4,
-      ))
+      ])
       ->save();
 
     entity_get_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'entity_reference_label',
         'weight' => 10,
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'teaser')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'entity_reference_label',
         'weight' => 10,
-      ))
+      ])
       ->save();
   }
 
diff --git a/core/modules/taxonomy/src/Tests/Views/TermNameFieldTest.php b/core/modules/taxonomy/src/Tests/Views/TermNameFieldTest.php
index 2effe72..98d1ab4 100644
--- a/core/modules/taxonomy/src/Tests/Views/TermNameFieldTest.php
+++ b/core/modules/taxonomy/src/Tests/Views/TermNameFieldTest.php
@@ -16,7 +16,7 @@ class TermNameFieldTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $testViews = array('test_taxonomy_term_name');
+  public static $testViews = ['test_taxonomy_term_name'];
 
   /**
    * Tests term name field plugin functionality.
diff --git a/core/modules/taxonomy/src/Tests/VocabularyUiTest.php b/core/modules/taxonomy/src/Tests/VocabularyUiTest.php
index 76fcac2..e3710d6 100644
--- a/core/modules/taxonomy/src/Tests/VocabularyUiTest.php
+++ b/core/modules/taxonomy/src/Tests/VocabularyUiTest.php
@@ -37,13 +37,13 @@ function testVocabularyInterface() {
 
     // Create a new vocabulary.
     $this->clickLink(t('Add vocabulary'));
-    $edit = array();
+    $edit = [];
     $vid = Unicode::strtolower($this->randomMachineName());
     $edit['name'] = $this->randomMachineName();
     $edit['description'] = $this->randomMachineName();
     $edit['vid'] = $vid;
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertRaw(t('Created new vocabulary %name.', array('%name' => $edit['name'])), 'Vocabulary created successfully.');
+    $this->assertRaw(t('Created new vocabulary %name.', ['%name' => $edit['name']]), 'Vocabulary created successfully.');
 
     // Edit the vocabulary.
     $this->drupalGet('admin/structure/taxonomy');
@@ -51,7 +51,7 @@ function testVocabularyInterface() {
     $this->assertText($edit['description'], 'Vocabulary description found in the vocabulary overview listing.');
     $this->assertLinkByHref(Url::fromRoute('entity.taxonomy_term.add_form', ['taxonomy_vocabulary' => $edit['vid']])->toString());
     $this->clickLink(t('Edit vocabulary'));
-    $edit = array();
+    $edit = [];
     $edit['name'] = $this->randomMachineName();
     $edit['description'] = $this->randomMachineName();
     $this->drupalPostForm(NULL, $edit, t('Save'));
@@ -70,15 +70,15 @@ function testVocabularyInterface() {
     $this->assertText(t('The machine-readable name must contain only lowercase letters, numbers, and underscores.'));
 
     // Ensure that vocabulary titles are escaped properly.
-    $edit = array();
+    $edit = [];
     $edit['name'] = 'Don\'t Panic';
     $edit['description'] = $this->randomMachineName();
     $edit['vid'] = 'don_t_panic';
     $this->drupalPostForm('admin/structure/taxonomy/add', $edit, t('Save'));
 
     $site_name = $this->config('system.site')->get('name');
-    $this->assertTitle(t('Don\'t Panic | @site-name', array('@site-name' => $site_name)), 'The page title contains the escaped character.');
-    $this->assertNoTitle(t('Don&#039;t Panic | @site-name', array('@site-name' => $site_name)), 'The page title does not contain an encoded character.');
+    $this->assertTitle(t('Don\'t Panic | @site-name', ['@site-name' => $site_name]), 'The page title contains the escaped character.');
+    $this->assertNoTitle(t('Don&#039;t Panic | @site-name', ['@site-name' => $site_name]), 'The page title does not contain an encoded character.');
   }
 
   /**
@@ -91,7 +91,7 @@ function testTaxonomyAdminChangingWeights() {
     }
     // Get all vocabularies and change their weights.
     $vocabularies = Vocabulary::loadMultiple();
-    $edit = array();
+    $edit = [];
     foreach ($vocabularies as $key => $vocabulary) {
       $weight = -$vocabulary->get('weight');
       $vocabularies[$key]->set('weight', $weight);
@@ -132,10 +132,10 @@ function testTaxonomyAdminNoVocabularies() {
   function testTaxonomyAdminDeletingVocabulary() {
     // Create a vocabulary.
     $vid = Unicode::strtolower($this->randomMachineName());
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(),
       'vid' => $vid,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/add', $edit, t('Save'));
     $this->assertText(t('Created new vocabulary'), 'New vocabulary was created.');
 
@@ -147,12 +147,12 @@ function testTaxonomyAdminDeletingVocabulary() {
     // Delete the vocabulary.
     $this->drupalGet('admin/structure/taxonomy/manage/' . $vocabulary->id());
     $this->clickLink(t('Delete'));
-    $this->assertRaw(t('Are you sure you want to delete the vocabulary %name?', array('%name' => $vocabulary->label())), '[confirm deletion] Asks for confirmation.');
+    $this->assertRaw(t('Are you sure you want to delete the vocabulary %name?', ['%name' => $vocabulary->label()]), '[confirm deletion] Asks for confirmation.');
     $this->assertText(t('Deleting a vocabulary will delete all the terms in it. This action cannot be undone.'), '[confirm deletion] Inform that all terms will be deleted.');
 
     // Confirm deletion.
     $this->drupalPostForm(NULL, NULL, t('Delete'));
-    $this->assertRaw(t('Deleted vocabulary %name.', array('%name' => $vocabulary->label())), 'Vocabulary deleted.');
+    $this->assertRaw(t('Deleted vocabulary %name.', ['%name' => $vocabulary->label()]), 'Vocabulary deleted.');
     $this->container->get('entity.manager')->getStorage('taxonomy_vocabulary')->resetCache();
     $this->assertFalse(Vocabulary::load($vid), 'Vocabulary not found.');
   }
diff --git a/core/modules/taxonomy/src/VocabularyForm.php b/core/modules/taxonomy/src/VocabularyForm.php
index 1868ddc..63f0ccb 100644
--- a/core/modules/taxonomy/src/VocabularyForm.php
+++ b/core/modules/taxonomy/src/VocabularyForm.php
@@ -52,59 +52,59 @@ public function form(array $form, FormStateInterface $form_state) {
       $form['#title'] = $this->t('Edit vocabulary');
     }
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Name'),
       '#default_value' => $vocabulary->label(),
       '#maxlength' => 255,
       '#required' => TRUE,
-    );
-    $form['vid'] = array(
+    ];
+    $form['vid'] = [
       '#type' => 'machine_name',
       '#default_value' => $vocabulary->id(),
       '#maxlength' => EntityTypeInterface::BUNDLE_MAX_LENGTH,
-      '#machine_name' => array(
-        'exists' => array($this, 'exists'),
-        'source' => array('name'),
-      ),
-    );
-    $form['description'] = array(
+      '#machine_name' => [
+        'exists' => [$this, 'exists'],
+        'source' => ['name'],
+      ],
+    ];
+    $form['description'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Description'),
       '#default_value' => $vocabulary->getDescription(),
-    );
+    ];
 
     // $form['langcode'] is not wrapped in an
     // if ($this->moduleHandler->moduleExists('language')) check because the
     // language_select form element works also without the language module being
     // installed. https://www.drupal.org/node/1749954 documents the new element.
-    $form['langcode'] = array(
+    $form['langcode'] = [
       '#type' => 'language_select',
       '#title' => $this->t('Vocabulary language'),
       '#languages' => LanguageInterface::STATE_ALL,
       '#default_value' => $vocabulary->language()->getId(),
-    );
+    ];
     if ($this->moduleHandler->moduleExists('language')) {
-      $form['default_terms_language'] = array(
+      $form['default_terms_language'] = [
         '#type' => 'details',
         '#title' => $this->t('Terms language'),
         '#open' => TRUE,
-      );
-      $form['default_terms_language']['default_language'] = array(
+      ];
+      $form['default_terms_language']['default_language'] = [
         '#type' => 'language_configuration',
-        '#entity_information' => array(
+        '#entity_information' => [
           'entity_type' => 'taxonomy_term',
           'bundle' => $vocabulary->id(),
-        ),
+        ],
         '#default_value' => ContentLanguageSettings::loadByEntityTypeBundle('taxonomy_term', $vocabulary->id()),
-      );
+      ];
     }
     // Set the hierarchy to "multiple parents" by default. This simplifies the
     // vocabulary form and standardizes the term form.
-    $form['hierarchy'] = array(
+    $form['hierarchy'] = [
       '#type' => 'value',
       '#value' => '0',
-    );
+    ];
 
     $form = parent::form($form, $form_state);
     return $this->protectBundleIdElement($form);
@@ -123,14 +123,14 @@ public function save(array $form, FormStateInterface $form_state) {
     $edit_link = $this->entity->link($this->t('Edit'));
     switch ($status) {
       case SAVED_NEW:
-        drupal_set_message($this->t('Created new vocabulary %name.', array('%name' => $vocabulary->label())));
-        $this->logger('taxonomy')->notice('Created new vocabulary %name.', array('%name' => $vocabulary->label(), 'link' => $edit_link));
+        drupal_set_message($this->t('Created new vocabulary %name.', ['%name' => $vocabulary->label()]));
+        $this->logger('taxonomy')->notice('Created new vocabulary %name.', ['%name' => $vocabulary->label(), 'link' => $edit_link]);
         $form_state->setRedirectUrl($vocabulary->urlInfo('overview-form'));
         break;
 
       case SAVED_UPDATED:
-        drupal_set_message($this->t('Updated vocabulary %name.', array('%name' => $vocabulary->label())));
-        $this->logger('taxonomy')->notice('Updated vocabulary %name.', array('%name' => $vocabulary->label(), 'link' => $edit_link));
+        drupal_set_message($this->t('Updated vocabulary %name.', ['%name' => $vocabulary->label()]));
+        $this->logger('taxonomy')->notice('Updated vocabulary %name.', ['%name' => $vocabulary->label(), 'link' => $edit_link]);
         $form_state->setRedirectUrl($vocabulary->urlInfo('collection'));
         break;
     }
diff --git a/core/modules/taxonomy/src/VocabularyListBuilder.php b/core/modules/taxonomy/src/VocabularyListBuilder.php
index 9c24311..8503c28 100644
--- a/core/modules/taxonomy/src/VocabularyListBuilder.php
+++ b/core/modules/taxonomy/src/VocabularyListBuilder.php
@@ -36,16 +36,16 @@ public function getDefaultOperations(EntityInterface $entity) {
       $operations['edit']['title'] = t('Edit vocabulary');
     }
 
-    $operations['list'] = array(
+    $operations['list'] = [
       'title' => t('List terms'),
       'weight' => 0,
       'url' => $entity->urlInfo('overview-form'),
-    );
-    $operations['add'] = array(
+    ];
+    $operations['add'] = [
       'title' => t('Add terms'),
       'weight' => 10,
       'url' => Url::fromRoute('entity.taxonomy_term.add_form', ['taxonomy_vocabulary' => $entity->id()]),
-    );
+    ];
     unset($operations['delete']);
 
     return $operations;
@@ -80,7 +80,7 @@ public function render() {
       unset($this->weightKey);
     }
     $build = parent::render();
-    $build['table']['#empty'] = t('No vocabularies available. <a href=":link">Add vocabulary</a>.', array(':link' => \Drupal::url('entity.taxonomy_vocabulary.add_form')));
+    $build['table']['#empty'] = t('No vocabularies available. <a href=":link">Add vocabulary</a>.', [':link' => \Drupal::url('entity.taxonomy_vocabulary.add_form')]);
     return $build;
   }
 
@@ -89,7 +89,7 @@ public function render() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     $form = parent::buildForm($form, $form_state);
-    $form['vocabularies']['#attributes'] = array('id' => 'taxonomy');
+    $form['vocabularies']['#attributes'] = ['id' => 'taxonomy'];
     $form['actions']['submit']['#value'] = t('Save');
 
     return $form;
diff --git a/core/modules/taxonomy/src/VocabularyStorage.php b/core/modules/taxonomy/src/VocabularyStorage.php
index 4b08b29..bdbf893 100644
--- a/core/modules/taxonomy/src/VocabularyStorage.php
+++ b/core/modules/taxonomy/src/VocabularyStorage.php
@@ -21,7 +21,7 @@ public function resetCache(array $ids = NULL) {
    * {@inheritdoc}
    */
   public function getToplevelTids($vids) {
-    return db_query('SELECT t.tid FROM {taxonomy_term_data} t INNER JOIN {taxonomy_term_hierarchy} th ON th.tid = t.tid WHERE t.vid IN ( :vids[] ) AND th.parent = 0', array(':vids[]' => $vids))->fetchCol();
+    return db_query('SELECT t.tid FROM {taxonomy_term_data} t INNER JOIN {taxonomy_term_hierarchy} th ON th.tid = t.tid WHERE t.vid IN ( :vids[] ) AND th.parent = 0', [':vids[]' => $vids])->fetchCol();
   }
 
 }
diff --git a/core/modules/taxonomy/taxonomy.module b/core/modules/taxonomy/taxonomy.module
index 8088432..4a93989 100644
--- a/core/modules/taxonomy/taxonomy.module
+++ b/core/modules/taxonomy/taxonomy.module
@@ -47,23 +47,23 @@
 function taxonomy_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.taxonomy':
-      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#';
+      $field_ui_url = \Drupal::moduleHandler()->moduleExists('field_ui') ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#';
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Taxonomy module allows users who have permission to create and edit content to categorize (tag) content of that type. Users who have the <em>Administer vocabularies and terms</em> <a href=":permissions" title="Taxonomy module permissions">permission</a> can add <em>vocabularies</em> that contain a set of related <em>terms</em>. The terms in a vocabulary can either be pre-set by an administrator or built gradually as content is added and edited. Terms may be organized hierarchically if desired.', array(':permissions' => \Drupal::url('user.admin_permissions', array(), array('fragment' => 'module-taxonomy')))) . '</p>';
-      $output .= '<p>' . t('For more information, see the <a href=":taxonomy">online documentation for the Taxonomy module</a>.', array(':taxonomy' => 'https://www.drupal.org/documentation/modules/taxonomy/')) . '</p>';
+      $output .= '<p>' . t('The Taxonomy module allows users who have permission to create and edit content to categorize (tag) content of that type. Users who have the <em>Administer vocabularies and terms</em> <a href=":permissions" title="Taxonomy module permissions">permission</a> can add <em>vocabularies</em> that contain a set of related <em>terms</em>. The terms in a vocabulary can either be pre-set by an administrator or built gradually as content is added and edited. Terms may be organized hierarchically if desired.', [':permissions' => \Drupal::url('user.admin_permissions', [], ['fragment' => 'module-taxonomy'])]) . '</p>';
+      $output .= '<p>' . t('For more information, see the <a href=":taxonomy">online documentation for the Taxonomy module</a>.', [':taxonomy' => 'https://www.drupal.org/documentation/modules/taxonomy/']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing vocabularies') . '</dt>';
-      $output .= '<dd>' . t('Users who have the <em>Administer vocabularies and terms</em> permission can add and edit vocabularies from the <a href=":taxonomy_admin">Taxonomy administration page</a>. Vocabularies can be deleted from their <em>Edit vocabulary</em> page. Users with the <em>Taxonomy term: Administer fields</em> permission may add additional fields for terms in that vocabulary using the <a href=":field_ui">Field UI module</a>.', array(':taxonomy_admin' => \Drupal::url('entity.taxonomy_vocabulary.collection'), ':field_ui' => $field_ui_url)) . '</dd>';
+      $output .= '<dd>' . t('Users who have the <em>Administer vocabularies and terms</em> permission can add and edit vocabularies from the <a href=":taxonomy_admin">Taxonomy administration page</a>. Vocabularies can be deleted from their <em>Edit vocabulary</em> page. Users with the <em>Taxonomy term: Administer fields</em> permission may add additional fields for terms in that vocabulary using the <a href=":field_ui">Field UI module</a>.', [':taxonomy_admin' => \Drupal::url('entity.taxonomy_vocabulary.collection'), ':field_ui' => $field_ui_url]) . '</dd>';
       $output .= '<dt>' . t('Managing terms') . '</dt>';
-      $output .= '<dd>' . t('Users who have the <em>Administer vocabularies and terms</em> permission or the <em>Edit terms</em> permission for a particular vocabulary can add, edit, and organize the terms in a vocabulary from a vocabulary\'s term listing page, which can be accessed by going to the <a href=":taxonomy_admin">Taxonomy administration page</a> and clicking <em>List terms</em> in the <em>Operations</em> column. Users must have the <em>Administer vocabularies and terms</em> permission or the <em>Delete terms</em> permission for a particular vocabulary to delete terms.', array(':taxonomy_admin' => \Drupal::url('entity.taxonomy_vocabulary.collection'))) . ' </dd>';
+      $output .= '<dd>' . t('Users who have the <em>Administer vocabularies and terms</em> permission or the <em>Edit terms</em> permission for a particular vocabulary can add, edit, and organize the terms in a vocabulary from a vocabulary\'s term listing page, which can be accessed by going to the <a href=":taxonomy_admin">Taxonomy administration page</a> and clicking <em>List terms</em> in the <em>Operations</em> column. Users must have the <em>Administer vocabularies and terms</em> permission or the <em>Delete terms</em> permission for a particular vocabulary to delete terms.', [':taxonomy_admin' => \Drupal::url('entity.taxonomy_vocabulary.collection')]) . ' </dd>';
       $output .= '<dt>' . t('Classifying entity content') . '</dt>';
-      $output .= '<dd>' . t('A user with the <em>Administer fields</em> permission for a certain entity type may add <em>Taxonomy term</em> reference fields to the entity type, which will allow entities to be classified using taxonomy terms. See the <a href=":entity_reference">Entity Reference help</a> for more information about reference fields. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them.', array(':field_ui' => $field_ui_url, ':field' => \Drupal::url('help.page', array('name' => 'field')), ':entity_reference' => \Drupal::url('help.page', array('name' => 'entity_reference')))) . '</dd>';
+      $output .= '<dd>' . t('A user with the <em>Administer fields</em> permission for a certain entity type may add <em>Taxonomy term</em> reference fields to the entity type, which will allow entities to be classified using taxonomy terms. See the <a href=":entity_reference">Entity Reference help</a> for more information about reference fields. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them.', [':field_ui' => $field_ui_url, ':field' => \Drupal::url('help.page', ['name' => 'field']), ':entity_reference' => \Drupal::url('help.page', ['name' => 'entity_reference'])]) . '</dd>';
       $output .= '<dt>' . t('Adding new terms during content creation') . '</dt>';
       $output .= '<dd>' . t('Allowing users to add new terms gradually builds a vocabulary as content is added and edited. Users can add new terms if either of the two <em>Autocomplete</em> widgets is chosen for the Taxonomy term reference field in the <em>Manage form display</em> page for the field. You will also need to enable the <em>Create referenced entities if they don\'t already exist</em> option, and restrict the field to one vocabulary.') . '</dd>';
       $output .= '<dt>' . t('Configuring displays and form displays') . '</dt>';
-      $output .= '<dd>' . t('See the <a href=":entity_reference">Entity Reference help</a> page for the field widgets and formatters that can be configured for any reference field on the <em>Manage display</em> and <em>Manage form display</em> pages. Taxonomy additionally provides an <em>RSS category</em> formatter that displays nothing when the entity item is displayed as HTML, but displays an RSS category instead of a list when the entity item is displayed in an RSS feed.', array(':entity_reference' => \Drupal::url('help.page', array('name' => 'entity_reference')))) . '</li>';
+      $output .= '<dd>' . t('See the <a href=":entity_reference">Entity Reference help</a> page for the field widgets and formatters that can be configured for any reference field on the <em>Manage display</em> and <em>Manage form display</em> pages. Taxonomy additionally provides an <em>RSS category</em> formatter that displays nothing when the entity item is displayed as HTML, but displays an RSS category instead of a list when the entity item is displayed in an RSS feed.', [':entity_reference' => \Drupal::url('help.page', ['name' => 'entity_reference'])]) . '</li>';
       $output .= '</ul>';
       $output .= '</dd>';
       $output .= '</dl>';
@@ -77,11 +77,11 @@ function taxonomy_help($route_name, RouteMatchInterface $route_match) {
       $vocabulary = $route_match->getParameter('taxonomy_vocabulary');
       switch ($vocabulary->getHierarchy()) {
         case VocabularyInterface::HIERARCHY_DISABLED:
-          return '<p>' . t('You can reorganize the terms in %capital_name using their drag-and-drop handles, and group terms under a parent term by sliding them under and to the right of the parent.', array('%capital_name' => Unicode::ucfirst($vocabulary->label()), '%name' => $vocabulary->label())) . '</p>';
+          return '<p>' . t('You can reorganize the terms in %capital_name using their drag-and-drop handles, and group terms under a parent term by sliding them under and to the right of the parent.', ['%capital_name' => Unicode::ucfirst($vocabulary->label()), '%name' => $vocabulary->label()]) . '</p>';
         case VocabularyInterface::HIERARCHY_SINGLE:
-          return '<p>' . t('%capital_name contains terms grouped under parent terms. You can reorganize the terms in %capital_name using their drag-and-drop handles.', array('%capital_name' => Unicode::ucfirst($vocabulary->label()), '%name' => $vocabulary->label())) . '</p>';
+          return '<p>' . t('%capital_name contains terms grouped under parent terms. You can reorganize the terms in %capital_name using their drag-and-drop handles.', ['%capital_name' => Unicode::ucfirst($vocabulary->label()), '%name' => $vocabulary->label()]) . '</p>';
         case VocabularyInterface::HIERARCHY_MULTIPLE:
-          return '<p>' . t('%capital_name contains terms with multiple parents. Drag and drop of terms with multiple parents is not supported, but you can re-enable drag-and-drop support by editing each term to include only a single parent.', array('%capital_name' => Unicode::ucfirst($vocabulary->label()))) . '</p>';
+          return '<p>' . t('%capital_name contains terms with multiple parents. Drag and drop of terms with multiple parents is not supported, but you can re-enable drag-and-drop support by editing each term to include only a single parent.', ['%capital_name' => Unicode::ucfirst($vocabulary->label())]) . '</p>';
       }
   }
 }
@@ -90,9 +90,9 @@ function taxonomy_help($route_name, RouteMatchInterface $route_match) {
  * Entity URI callback.
  */
 function taxonomy_term_uri($term) {
-  return new Url('entity.taxonomy_term.canonical', array(
+  return new Url('entity.taxonomy_term.canonical', [
     'taxonomy_term' => $term->id(),
-  ));
+  ]);
 }
 
 /**
@@ -103,24 +103,24 @@ function taxonomy_page_attachments_alter(array &$page) {
   if ($route_match->getRouteName() == 'entity.taxonomy_term.canonical' && ($term = $route_match->getParameter('taxonomy_term')) && $term instanceof TermInterface) {
     foreach ($term->uriRelationships() as $rel) {
       // Set the URI relationships, like canonical.
-      $page['#attached']['html_head_link'][] = array(
-        array(
+      $page['#attached']['html_head_link'][] = [
+        [
           'rel' => $rel,
           'href' => $term->url($rel),
-        ),
+        ],
         TRUE,
-      );
+      ];
 
       // Set the term path as the canonical URL to prevent duplicate content.
       if ($rel == 'canonical') {
         // Set the non-aliased canonical path as a default shortlink.
-        $page['#attached']['html_head_link'][] = array(
-          array(
+        $page['#attached']['html_head_link'][] = [
+          [
             'rel' => 'shortlink',
-            'href' => $term->url($rel, array('alias' => TRUE)),
-          ),
+            'href' => $term->url($rel, ['alias' => TRUE]),
+          ],
           TRUE,
-        );
+        ];
       }
     }
   }
@@ -130,11 +130,11 @@ function taxonomy_page_attachments_alter(array &$page) {
  * Implements hook_theme().
  */
 function taxonomy_theme() {
-  return array(
-    'taxonomy_term' => array(
+  return [
+    'taxonomy_term' => [
       'render element' => 'elements',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -223,7 +223,7 @@ function taxonomy_term_view_multiple(array $terms, $view_mode = 'full', $langcod
  * Implements hook_theme_suggestions_HOOK().
  */
 function taxonomy_theme_suggestions_taxonomy_term(array $variables) {
-  $suggestions = array();
+  $suggestions = [];
 
   /** @var \Drupal\taxonomy\TermInterface $term */
   $term = $variables['elements']['#taxonomy_term'];
@@ -261,7 +261,7 @@ function template_preprocess_taxonomy_term(&$variables) {
   $variables['page'] = $variables['view_mode'] == 'full' && taxonomy_term_is_page($term);
 
   // Helpful $content variable for templates.
-  $variables['content'] = array();
+  $variables['content'] = [];
   foreach (Element::children($variables['elements']) as $key) {
     $variables['content'][$key] = $variables['elements'][$key];
   }
@@ -307,7 +307,7 @@ function taxonomy_vocabulary_get_names() {
   $names = &drupal_static(__FUNCTION__);
 
   if (!isset($names)) {
-    $names = array();
+    $names = [];
     $config_names = \Drupal::configFactory()->listAll('taxonomy.vocabulary.');
     foreach ($config_names as $config_name) {
       $id = substr($config_name, strlen('taxonomy.vocabulary.'));
@@ -333,7 +333,7 @@ function taxonomy_vocabulary_get_names() {
  *   An array of matching term objects.
  */
 function taxonomy_term_load_multiple_by_name($name, $vocabulary = NULL) {
-  $values = array('name' => trim($name));
+  $values = ['name' => trim($name)];
   if (isset($vocabulary)) {
     $vocabularies = taxonomy_vocabulary_get_names();
     if (isset($vocabularies[$vocabulary])) {
@@ -341,7 +341,7 @@ function taxonomy_term_load_multiple_by_name($name, $vocabulary = NULL) {
     }
     else {
       // Return an empty array when filtering by a non-existing vocabulary.
-      return array();
+      return [];
     }
   }
   return entity_load_multiple_by_properties('taxonomy_term', $values);
@@ -436,7 +436,7 @@ function taxonomy_term_load($tid) {
  * @see \Drupal\Component\Utility\Tags::explode()
  */
 function taxonomy_implode_tags($tags, $vid = NULL) {
-  $typed_tags = array();
+  $typed_tags = [];
   foreach ($tags as $tag) {
     // Extract terms belonging to the vocabulary in question.
     if (!isset($vid) || $tag->bundle() == $vid) {
@@ -510,7 +510,7 @@ function taxonomy_build_node_index($node) {
   // We only maintain the taxonomy index for published nodes.
   if ($status && $node->isDefaultRevision()) {
     // Collect a unique list of all the term IDs from all node fields.
-    $tid_all = array();
+    $tid_all = [];
     $entity_reference_class = 'Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem';
     foreach ($node->getFieldDefinitions() as $field) {
       $field_name = $field->getName();
@@ -530,8 +530,8 @@ function taxonomy_build_node_index($node) {
     if (!empty($tid_all)) {
       foreach ($tid_all as $tid) {
         db_merge('taxonomy_index')
-          ->key(array('nid' => $node->id(), 'tid' => $tid, 'status' => $node->isPublished()))
-          ->fields(array('sticky' => $sticky, 'created' => $node->getCreatedTime()))
+          ->key(['nid' => $node->id(), 'tid' => $tid, 'status' => $node->isPublished()])
+          ->fields(['sticky' => $sticky, 'created' => $node->getCreatedTime()])
           ->execute();
       }
     }
diff --git a/core/modules/taxonomy/taxonomy.tokens.inc b/core/modules/taxonomy/taxonomy.tokens.inc
index 20251f2..211a121 100644
--- a/core/modules/taxonomy/taxonomy.tokens.inc
+++ b/core/modules/taxonomy/taxonomy.tokens.inc
@@ -12,80 +12,80 @@
  * Implements hook_token_info().
  */
 function taxonomy_token_info() {
-  $types['term'] = array(
+  $types['term'] = [
     'name' => t("Taxonomy terms"),
     'description' => t("Tokens related to taxonomy terms."),
     'needs-data' => 'term',
-  );
-  $types['vocabulary'] = array(
+  ];
+  $types['vocabulary'] = [
     'name' => t("Vocabularies"),
     'description' => t("Tokens related to taxonomy vocabularies."),
     'needs-data' => 'vocabulary',
-  );
+  ];
 
   // Taxonomy term related variables.
-  $term['tid'] = array(
+  $term['tid'] = [
     'name' => t("Term ID"),
     'description' => t("The unique ID of the taxonomy term."),
-  );
-  $term['name'] = array(
+  ];
+  $term['name'] = [
     'name' => t("Name"),
     'description' => t("The name of the taxonomy term."),
-  );
-  $term['description'] = array(
+  ];
+  $term['description'] = [
     'name' => t("Description"),
     'description' => t("The optional description of the taxonomy term."),
-  );
-  $term['node-count'] = array(
+  ];
+  $term['node-count'] = [
     'name' => t("Node count"),
     'description' => t("The number of nodes tagged with the taxonomy term."),
-  );
-  $term['url'] = array(
+  ];
+  $term['url'] = [
     'name' => t("URL"),
     'description' => t("The URL of the taxonomy term."),
-  );
+  ];
 
   // Taxonomy vocabulary related variables.
-  $vocabulary['vid'] = array(
+  $vocabulary['vid'] = [
     'name' => t("Vocabulary ID"),
     'description' => t("The unique ID of the taxonomy vocabulary."),
-  );
-  $vocabulary['name'] = array(
+  ];
+  $vocabulary['name'] = [
     'name' => t("Name"),
     'description' => t("The name of the taxonomy vocabulary."),
-  );
-  $vocabulary['description'] = array(
+  ];
+  $vocabulary['description'] = [
     'name' => t("Description"),
     'description' => t("The optional description of the taxonomy vocabulary."),
-  );
-  $vocabulary['node-count'] = array(
+  ];
+  $vocabulary['node-count'] = [
     'name' => t("Node count"),
     'description' => t("The number of nodes tagged with terms belonging to the taxonomy vocabulary."),
-  );
-  $vocabulary['term-count'] = array(
+  ];
+  $vocabulary['term-count'] = [
     'name' => t("Term count"),
     'description' => t("The number of terms belonging to the taxonomy vocabulary."),
-  );
+  ];
 
   // Chained tokens for taxonomies
-  $term['vocabulary'] = array(
+  $term['vocabulary'] = [
     'name' => t("Vocabulary"),
     'description' => t("The vocabulary the taxonomy term belongs to."),
     'type' => 'vocabulary',
-  );
-  $term['parent'] = array(
+  ];
+  $term['parent'] = [
     'name' => t("Parent term"),
     'description' => t("The parent term of the taxonomy term, if one exists."),
     'type' => 'term',
-  );
+  ];
 
-  return array(
+  return [
     'types' => $types,
-    'tokens' => array(
+    'tokens' => [
       'term' => $term,
       'vocabulary' => $vocabulary,
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -94,7 +94,7 @@ function taxonomy_token_info() {
 function taxonomy_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
   $token_service = \Drupal::token();
 
-  $replacements = array();
+  $replacements = [];
   $taxonomy_storage = \Drupal::entityManager()->getStorage('taxonomy_term');
   if ($type == 'term' && !empty($data['term'])) {
     $term = $data['term'];
@@ -116,7 +116,7 @@ function taxonomy_tokens($type, $tokens, array $data, array $options, Bubbleable
           break;
 
         case 'url':
-          $replacements[$original] = $term->url('canonical', array('absolute' => TRUE));
+          $replacements[$original] = $term->url('canonical', ['absolute' => TRUE]);
           break;
 
         case 'node-count':
@@ -145,12 +145,12 @@ function taxonomy_tokens($type, $tokens, array $data, array $options, Bubbleable
 
     if ($vocabulary_tokens = $token_service->findWithPrefix($tokens, 'vocabulary')) {
       $vocabulary = Vocabulary::load($term->bundle());
-      $replacements += $token_service->generate('vocabulary', $vocabulary_tokens, array('vocabulary' => $vocabulary), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('vocabulary', $vocabulary_tokens, ['vocabulary' => $vocabulary], $options, $bubbleable_metadata);
     }
 
     if (($vocabulary_tokens = $token_service->findWithPrefix($tokens, 'parent')) && $parents = $taxonomy_storage->loadParents($term->id())) {
       $parent = array_pop($parents);
-      $replacements += $token_service->generate('term', $vocabulary_tokens, array('term' => $parent), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('term', $vocabulary_tokens, ['term' => $parent], $options, $bubbleable_metadata);
     }
   }
 
diff --git a/core/modules/taxonomy/taxonomy.views.inc b/core/modules/taxonomy/taxonomy.views.inc
index 5360d50..1eedbbe 100644
--- a/core/modules/taxonomy/taxonomy.views.inc
+++ b/core/modules/taxonomy/taxonomy.views.inc
@@ -11,44 +11,44 @@
  * Implements hook_views_data_alter().
  */
 function taxonomy_views_data_alter(&$data) {
-  $data['node_field_data']['term_node_tid'] = array(
+  $data['node_field_data']['term_node_tid'] = [
     'title' => t('Taxonomy terms on node'),
     'help' => t('Relate nodes to taxonomy terms, specifying which vocabulary or vocabularies to use. This relationship will cause duplicated records if there are multiple terms.'),
-    'relationship' => array(
+    'relationship' => [
       'id' => 'node_term_data',
       'label' => t('term'),
       'base' => 'taxonomy_term_field_data',
-    ),
-    'field' => array(
+    ],
+    'field' => [
       'title' => t('All taxonomy terms'),
       'help' => t('Display all taxonomy terms associated with a node from specified vocabularies.'),
       'id' => 'taxonomy_index_tid',
       'no group by' => TRUE,
       'click sortable' => FALSE,
-    ),
-  );
+    ],
+  ];
 
-  $data['node_field_data']['term_node_tid_depth'] = array(
+  $data['node_field_data']['term_node_tid_depth'] = [
     'help' => t('Display content if it has the selected taxonomy terms, or children of the selected terms. Due to additional complexity, this has fewer options than the versions without depth.'),
     'real field' => 'nid',
-    'argument' => array(
+    'argument' => [
       'title' => t('Has taxonomy term ID (with depth)'),
       'id' => 'taxonomy_index_tid_depth',
       'accept depth modifier' => TRUE,
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'title' => t('Has taxonomy terms (with depth)'),
       'id' => 'taxonomy_index_tid_depth',
-    ),
-  );
+    ],
+  ];
 
-  $data['node_field_data']['term_node_tid_depth_modifier'] = array(
+  $data['node_field_data']['term_node_tid_depth_modifier'] = [
     'title' => t('Has taxonomy term ID depth modifier'),
     'help' => t('Allows the "depth" for Taxonomy: Term ID (with depth) to be modified via an additional contextual filter value.'),
-    'argument' => array(
+    'argument' => [
       'id' => 'taxonomy_index_tid_depth_modifier',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
diff --git a/core/modules/taxonomy/tests/src/Functional/EfqTest.php b/core/modules/taxonomy/tests/src/Functional/EfqTest.php
index 1f788c8..945c0b1 100644
--- a/core/modules/taxonomy/tests/src/Functional/EfqTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/EfqTest.php
@@ -26,7 +26,7 @@ protected function setUp() {
    * Tests that a basic taxonomy entity query works.
    */
   function testTaxonomyEfq() {
-    $terms = array();
+    $terms = [];
     for ($i = 0; $i < 5; $i++) {
       $term = $this->createTerm($this->vocabulary);
       $terms[$term->id()] = $term;
@@ -35,17 +35,17 @@ function testTaxonomyEfq() {
     sort($result);
     $this->assertEqual(array_keys($terms), $result, 'Taxonomy terms were retrieved by entity query.');
     $tid = reset($result);
-    $ids = (object) array(
+    $ids = (object) [
       'entity_type' => 'taxonomy_term',
       'entity_id' => $tid,
       'bundle' => $this->vocabulary->id(),
-    );
+    ];
     $term = _field_create_entity_from_ids($ids);
     $this->assertEqual($term->id(), $tid, 'Taxonomy term can be created based on the IDs.');
 
     // Create a second vocabulary and five more terms.
     $vocabulary2 = $this->createVocabulary();
-    $terms2 = array();
+    $terms2 = [];
     for ($i = 0; $i < 5; $i++) {
       $term = $this->createTerm($vocabulary2);
       $terms2[$term->id()] = $term;
@@ -55,13 +55,13 @@ function testTaxonomyEfq() {
       ->condition('vid', $vocabulary2->id())
       ->execute();
     sort($result);
-    $this->assertEqual(array_keys($terms2), $result, format_string('Taxonomy terms from the %name vocabulary were retrieved by entity query.', array('%name' => $vocabulary2->label())));
+    $this->assertEqual(array_keys($terms2), $result, format_string('Taxonomy terms from the %name vocabulary were retrieved by entity query.', ['%name' => $vocabulary2->label()]));
     $tid = reset($result);
-    $ids = (object) array(
+    $ids = (object) [
       'entity_type' => 'taxonomy_term',
       'entity_id' => $tid,
       'bundle' => $vocabulary2->id(),
-    );
+    ];
     $term = _field_create_entity_from_ids($ids);
     $this->assertEqual($term->id(), $tid, 'Taxonomy term can be created based on the IDs.');
   }
diff --git a/core/modules/taxonomy/tests/src/Functional/LegacyTest.php b/core/modules/taxonomy/tests/src/Functional/LegacyTest.php
index fbbe16f9..f3b0a74 100644
--- a/core/modules/taxonomy/tests/src/Functional/LegacyTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/LegacyTest.php
@@ -18,7 +18,7 @@ class LegacyTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'datetime');
+  public static $modules = ['node', 'datetime'];
 
   protected function setUp() {
     parent::setUp();
@@ -31,18 +31,18 @@ protected function setUp() {
     $vocabulary->save();
     $field_name = 'field_' . $vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $vocabulary->id() => $vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $field_name, 'Tags', 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
 
     $this->drupalLogin($this->drupalCreateUser(['administer taxonomy', 'administer nodes', 'bypass node access']));
@@ -54,7 +54,7 @@ protected function setUp() {
   function testTaxonomyLegacyNode() {
     // Posts an article with a taxonomy term and a date prior to 1970.
     $date = new DrupalDateTime('1969-01-01 00:00:00');
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['created[0][value][date]'] = $date->format('Y-m-d');
     $edit['created[0][value][time]'] = $date->format('H:i:s');
diff --git a/core/modules/taxonomy/tests/src/Functional/LoadMultipleTest.php b/core/modules/taxonomy/tests/src/Functional/LoadMultipleTest.php
index 4955992..ce41b2f 100644
--- a/core/modules/taxonomy/tests/src/Functional/LoadMultipleTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/LoadMultipleTest.php
@@ -31,9 +31,9 @@ function testTaxonomyTermMultipleLoad() {
       $this->createTerm($vocabulary);
     }
     // Load the terms from the vocabulary.
-    $terms = entity_load_multiple_by_properties('taxonomy_term', array('vid' => $vocabulary->id()));
+    $terms = entity_load_multiple_by_properties('taxonomy_term', ['vid' => $vocabulary->id()]);
     $count = count($terms);
-    $this->assertEqual($count, 5, format_string('Correct number of terms were loaded. @count terms.', array('@count' => $count)));
+    $this->assertEqual($count, 5, format_string('Correct number of terms were loaded. @count terms.', ['@count' => $count]));
 
     // Load the same terms again by tid.
     $terms2 = Term::loadMultiple(array_keys($terms));
@@ -47,13 +47,13 @@ function testTaxonomyTermMultipleLoad() {
     $this->assertFalse($deleted_term);
 
     // Load terms from the vocabulary by vid.
-    $terms3 = entity_load_multiple_by_properties('taxonomy_term', array('vid' => $vocabulary->id()));
+    $terms3 = entity_load_multiple_by_properties('taxonomy_term', ['vid' => $vocabulary->id()]);
     $this->assertEqual(count($terms3), 4, 'Correct number of terms were loaded.');
     $this->assertFalse(isset($terms3[$deleted->id()]));
 
     // Create a single term and load it by name.
     $term = $this->createTerm($vocabulary);
-    $loaded_terms = entity_load_multiple_by_properties('taxonomy_term', array('name' => $term->getName()));
+    $loaded_terms = entity_load_multiple_by_properties('taxonomy_term', ['name' => $term->getName()]);
     $this->assertEqual(count($loaded_terms), 1, 'One term was loaded.');
     $loaded_term = reset($loaded_terms);
     $this->assertEqual($term->id(), $loaded_term->id(), 'Term loaded by name successfully.');
diff --git a/core/modules/taxonomy/tests/src/Functional/TaxonomyTestBase.php b/core/modules/taxonomy/tests/src/Functional/TaxonomyTestBase.php
index 2625af0..ed8b95f 100644
--- a/core/modules/taxonomy/tests/src/Functional/TaxonomyTestBase.php
+++ b/core/modules/taxonomy/tests/src/Functional/TaxonomyTestBase.php
@@ -19,7 +19,7 @@
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'block');
+  public static $modules = ['taxonomy', 'block'];
 
   /**
    * {@inheritdoc}
@@ -30,7 +30,7 @@ protected function setUp() {
 
     // Create Basic page and Article node types.
     if ($this->profile != 'standard') {
-      $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     }
   }
 
diff --git a/core/modules/taxonomy/tests/src/Functional/TermCacheTagsTest.php b/core/modules/taxonomy/tests/src/Functional/TermCacheTagsTest.php
index 10f24e8..35b7d6b 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermCacheTagsTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermCacheTagsTest.php
@@ -16,7 +16,7 @@ class TermCacheTagsTest extends EntityWithUriCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/taxonomy/tests/src/Functional/TermEntityReferenceTest.php b/core/modules/taxonomy/tests/src/Functional/TermEntityReferenceTest.php
index 9cdafa3..2deeb41 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermEntityReferenceTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermEntityReferenceTest.php
@@ -37,41 +37,41 @@ function testSelectionTestVocabularyRestriction() {
 
     // Create an entity reference field.
     $field_name = 'taxonomy_' . $vocabulary->id();
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'translatable' => FALSE,
-      'settings' => array(
+      'settings' => [
         'target_type' => 'taxonomy_term',
-      ),
+      ],
       'type' => 'entity_reference',
       'cardinality' => 1,
-    ));
+    ]);
     $field_storage->save();
-    $field = FieldConfig::create(array(
+    $field = FieldConfig::create([
       'field_storage' => $field_storage,
       'entity_type' => 'entity_test',
       'bundle' => 'test_bundle',
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
+        'handler_settings' => [
           // Restrict selection of terms to a single vocabulary.
-          'target_bundles' => array(
+          'target_bundles' => [
             $vocabulary->id() => $vocabulary->id(),
-          ),
-        ),
-      ),
-    ));
+          ],
+        ],
+      ],
+    ]);
     $field->save();
 
     $handler = $this->container->get('plugin.manager.entity_reference_selection')->getSelectionHandler($field);
     $result = $handler->getReferenceableEntities();
 
-    $expected_result = array(
-      $vocabulary->id() => array(
+    $expected_result = [
+      $vocabulary->id() => [
         $term->id() => $term->getName(),
-      ),
-    );
+      ],
+    ];
 
     $this->assertIdentical($result, $expected_result, 'Terms selection restricted to a single vocabulary.');
   }
diff --git a/core/modules/taxonomy/tests/src/Functional/TermIndexTest.php b/core/modules/taxonomy/tests/src/Functional/TermIndexTest.php
index 7516939..5266b8f 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermIndexTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermIndexTest.php
@@ -17,7 +17,7 @@ class TermIndexTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('views');
+  public static $modules = ['views'];
 
   /**
    * Vocabulary for testing.
@@ -50,37 +50,37 @@ protected function setUp() {
     $this->vocabulary = $this->createVocabulary();
 
     $this->fieldName1 = Unicode::strtolower($this->randomMachineName());
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-       ),
+       ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName1, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName1, array(
+      ->setComponent($this->fieldName1, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->fieldName1, array(
+      ->setComponent($this->fieldName1, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
 
     $this->fieldName2 = Unicode::strtolower($this->randomMachineName());
     $this->createEntityReferenceField('node', 'article', $this->fieldName2, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName2, array(
+      ->setComponent($this->fieldName2, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->fieldName2, array(
+      ->setComponent($this->fieldName2, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -94,7 +94,7 @@ function testTaxonomyIndex() {
     $term_2 = $this->createTerm($this->vocabulary);
 
     // Post an article.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $this->randomMachineName();
     $edit['body[0][value]'] = $this->randomMachineName();
     $edit["{$this->fieldName1}[]"] = $term_1->id();
@@ -103,10 +103,10 @@ function testTaxonomyIndex() {
 
     // Check that the term is indexed, and only once.
     $node = $this->drupalGetNodeByTitle($edit['title[0][value]']);
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 1 is indexed once.');
 
     // Update the article to change one term.
@@ -114,15 +114,15 @@ function testTaxonomyIndex() {
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
 
     // Check that both terms are indexed.
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 1 is indexed.');
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_2->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 2 is indexed.');
 
     // Update the article to change another term.
@@ -130,19 +130,19 @@ function testTaxonomyIndex() {
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
 
     // Check that only one term is indexed.
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(0, $index_count, 'Term 1 is not indexed.');
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_2->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 2 is indexed once.');
 
     // Redo the above tests without interface.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $node = $node_storage->load($node->id());
     $node->title = $this->randomMachineName();
 
@@ -150,47 +150,47 @@ function testTaxonomyIndex() {
     $node->save();
 
     // Check that the index was not changed.
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(0, $index_count, 'Term 1 is not indexed.');
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_2->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 2 is indexed once.');
 
     // Update the article to change one term.
-    $node->{$this->fieldName1} = array(array('target_id' => $term_1->id()));
+    $node->{$this->fieldName1} = [['target_id' => $term_1->id()]];
     $node->save();
 
     // Check that both terms are indexed.
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 1 is indexed.');
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_2->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 2 is indexed.');
 
     // Update the article to change another term.
-    $node->{$this->fieldName2} = array(array('target_id' => $term_1->id()));
+    $node->{$this->fieldName2} = [['target_id' => $term_1->id()]];
     $node->save();
 
     // Check that only one term is indexed.
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_1->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(1, $index_count, 'Term 1 is indexed once.');
-    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', array(
+    $index_count = db_query('SELECT COUNT(*) FROM {taxonomy_index} WHERE nid = :nid AND tid = :tid', [
       ':nid' => $node->id(),
       ':tid' => $term_2->id(),
-    ))->fetchField();
+    ])->fetchField();
     $this->assertEqual(0, $index_count, 'Term 2 is not indexed.');
   }
 
@@ -201,7 +201,7 @@ function testTaxonomyTermHierarchyBreadcrumbs() {
     // Create two taxonomy terms and set term2 as the parent of term1.
     $term1 = $this->createTerm($this->vocabulary);
     $term2 = $this->createTerm($this->vocabulary);
-    $term1->parent = array($term2->id());
+    $term1->parent = [$term2->id()];
     $term1->save();
 
     // Verify that the page breadcrumbs include a link to the parent term.
diff --git a/core/modules/taxonomy/tests/src/Functional/TermLanguageTest.php b/core/modules/taxonomy/tests/src/Functional/TermLanguageTest.php
index 1ab8d48..ce87396 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermLanguageTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermLanguageTest.php
@@ -12,7 +12,7 @@
  */
 class TermLanguageTest extends TaxonomyTestBase {
 
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   /**
    * Vocabulary for testing.
@@ -31,19 +31,19 @@ protected function setUp() {
     $this->vocabulary = $this->createVocabulary();
 
     // Add some custom languages.
-    foreach (array('aa', 'bb', 'cc') as $language_code) {
-      ConfigurableLanguage::create(array(
+    foreach (['aa', 'bb', 'cc'] as $language_code) {
+      ConfigurableLanguage::create([
         'id' => $language_code,
         'label' => $this->randomMachineName(),
-      ))->save();
+      ])->save();
     }
   }
 
   function testTermLanguage() {
     // Configure the vocabulary to not hide the language selector.
-    $edit = array(
+    $edit = [
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id(), $edit, t('Save'));
 
     // Add a term.
@@ -51,10 +51,10 @@ function testTermLanguage() {
     // Check that we have the language selector.
     $this->assertField('edit-langcode-0-value', t('The language selector field was found on the page.'));
     // Submit the term.
-    $edit = array(
+    $edit = [
       'name[0][value]' => $this->randomMachineName(),
       'langcode[0][value]' => 'aa',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $terms = taxonomy_term_load_multiple_by_name($edit['name[0][value]']);
     $term = reset($terms);
@@ -76,19 +76,19 @@ function testTermLanguage() {
   function testDefaultTermLanguage() {
     // Configure the vocabulary to not hide the language selector, and make the
     // default language of the terms fixed.
-    $edit = array(
+    $edit = [
       'default_language[langcode]' => 'bb',
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id(), $edit, t('Save'));
     $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
     $this->assertOptionSelected('edit-langcode-0-value', 'bb', 'The expected langcode was selected.');
 
     // Make the default language of the terms to be the current interface.
-    $edit = array(
+    $edit = [
       'default_language[langcode]' => 'current_interface',
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id(), $edit, t('Save'));
     $this->drupalGet('aa/admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
     $this->assertOptionSelected('edit-langcode-0-value', 'aa', "The expected langcode, 'aa', was selected.");
@@ -98,10 +98,10 @@ function testDefaultTermLanguage() {
     // Change the default language of the site and check if the default terms
     // language is still correctly selected.
     $this->config('system.site')->set('default_langcode', 'cc')->save();
-    $edit = array(
+    $edit = [
       'default_language[langcode]' => LanguageInterface::LANGCODE_SITE_DEFAULT,
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $this->vocabulary->id(), $edit, t('Save'));
     $this->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary->id() . '/add');
     $this->assertOptionSelected('edit-langcode-0-value', 'cc', "The expected langcode, 'cc', was selected.");
diff --git a/core/modules/taxonomy/tests/src/Functional/TermTranslationFieldViewTest.php b/core/modules/taxonomy/tests/src/Functional/TermTranslationFieldViewTest.php
index 9588e4d..c5df74d 100644
--- a/core/modules/taxonomy/tests/src/Functional/TermTranslationFieldViewTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TermTranslationFieldViewTest.php
@@ -40,7 +40,7 @@ class TermTranslationFieldViewTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'taxonomy');
+  public static $modules = ['language', 'content_translation', 'taxonomy'];
 
   protected function setUp() {
     parent::setUp();
@@ -79,7 +79,7 @@ protected function setUpNode() {
         'value' => $this->randomMachineName(),
         'format' => 'basic_html'
       ]],
-      $this->termFieldName => array(array('target_id' => $this->term->id())),
+      $this->termFieldName => [['target_id' => $this->term->id()]],
       'langcode' => $this->baseLangcode,
     ]);
     $node->save();
@@ -92,14 +92,14 @@ protected function setUpNode() {
    * Creates a test subject term, with translation.
    */
   protected function setUpTerm() {
-    $this->term = $this->createTerm($this->vocabulary, array(
+    $this->term = $this->createTerm($this->vocabulary, [
       'name' => $this->baseTagName,
       'langcode' => $this->baseLangcode,
-    ));
+    ]);
 
-    $this->term->addTranslation($this->translateToLangcode, array(
+    $this->term->addTranslation($this->translateToLangcode, [
       'name' => $this->translatedTagName,
-    ));
+    ]);
     $this->term->save();
   }
 
diff --git a/core/modules/taxonomy/tests/src/Functional/TokenReplaceTest.php b/core/modules/taxonomy/tests/src/Functional/TokenReplaceTest.php
index 1c8b7ea..e6836f6 100644
--- a/core/modules/taxonomy/tests/src/Functional/TokenReplaceTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/TokenReplaceTest.php
@@ -33,23 +33,23 @@ protected function setUp() {
     $this->vocabulary = $this->createVocabulary();
     $this->fieldName = 'taxonomy_' . $this->vocabulary->id();
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->vocabulary->id() => $this->vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'article', $this->fieldName, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'options_select',
-      ))
+      ])
       ->save();
     entity_get_display('node', 'article', 'default')
-      ->setComponent($this->fieldName, array(
+      ->setComponent($this->fieldName, [
         'type' => 'entity_reference_label',
-      ))
+      ])
       ->save();
   }
 
@@ -65,23 +65,23 @@ function testTaxonomyTokenReplacement() {
     $term2 = $this->createTerm($this->vocabulary);
 
     // Edit $term2, setting $term1 as parent.
-    $edit = array();
+    $edit = [];
     $edit['name[0][value]'] = '<blink>Blinking Text</blink>';
-    $edit['parent[]'] = array($term1->id());
+    $edit['parent[]'] = [$term1->id()];
     $this->drupalPostForm('taxonomy/term/' . $term2->id() . '/edit', $edit, t('Save'));
 
     // Create node with term2.
-    $edit = array();
-    $node = $this->drupalCreateNode(array('type' => 'article'));
+    $edit = [];
+    $node = $this->drupalCreateNode(['type' => 'article']);
     $edit[$this->fieldName . '[]'] = $term2->id();
     $this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
 
     // Generate and test sanitized tokens for term1.
-    $tests = array();
+    $tests = [];
     $tests['[term:tid]'] = $term1->id();
     $tests['[term:name]'] = $term1->getName();
     $tests['[term:description]'] = $term1->description->processed;
-    $tests['[term:url]'] = $term1->url('canonical', array('absolute' => TRUE));
+    $tests['[term:url]'] = $term1->url('canonical', ['absolute' => TRUE]);
     $tests['[term:node-count]'] = 0;
     $tests['[term:parent:name]'] = '[term:parent:name]';
     $tests['[term:vocabulary:name]'] = $this->vocabulary->label();
@@ -89,7 +89,7 @@ function testTaxonomyTokenReplacement() {
 
     $base_bubbleable_metadata = BubbleableMetadata::createFromObject($term1);
 
-    $metadata_tests = array();
+    $metadata_tests = [];
     $metadata_tests['[term:tid]'] = $base_bubbleable_metadata;
     $metadata_tests['[term:name]'] = $base_bubbleable_metadata;
     $metadata_tests['[term:description]'] = $base_bubbleable_metadata;
@@ -102,20 +102,20 @@ function testTaxonomyTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_service->replace($input, array('term' => $term1), array('langcode' => $language_interface->getId()), $bubbleable_metadata);
-      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy term token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['term' => $term1], ['langcode' => $language_interface->getId()], $bubbleable_metadata);
+      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy term token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
 
     // Generate and test sanitized tokens for term2.
-    $tests = array();
+    $tests = [];
     $tests['[term:tid]'] = $term2->id();
     $tests['[term:name]'] = $term2->getName();
     $tests['[term:description]'] = $term2->description->processed;
-    $tests['[term:url]'] = $term2->url('canonical', array('absolute' => TRUE));
+    $tests['[term:url]'] = $term2->url('canonical', ['absolute' => TRUE]);
     $tests['[term:node-count]'] = 1;
     $tests['[term:parent:name]'] = $term1->getName();
-    $tests['[term:parent:url]'] = $term1->url('canonical', array('absolute' => TRUE));
+    $tests['[term:parent:url]'] = $term1->url('canonical', ['absolute' => TRUE]);
     $tests['[term:parent:parent:name]'] = '[term:parent:parent:name]';
     $tests['[term:vocabulary:name]'] = $this->vocabulary->label();
 
@@ -123,12 +123,12 @@ function testTaxonomyTokenReplacement() {
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
 
     foreach ($tests as $input => $expected) {
-      $output = $token_service->replace($input, array('term' => $term2), array('langcode' => $language_interface->getId()));
-      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy term token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['term' => $term2], ['langcode' => $language_interface->getId()]);
+      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy term token %token replaced.', ['%token' => $input]));
     }
 
     // Generate and test sanitized tokens.
-    $tests = array();
+    $tests = [];
     $tests['[vocabulary:vid]'] = $this->vocabulary->id();
     $tests['[vocabulary:name]'] = $this->vocabulary->label();
     $tests['[vocabulary:description]'] = $this->vocabulary->getDescription();
@@ -139,8 +139,8 @@ function testTaxonomyTokenReplacement() {
     $this->assertFalse(in_array(0, array_map('strlen', $tests)), 'No empty tokens generated.');
 
     foreach ($tests as $input => $expected) {
-      $output = $token_service->replace($input, array('vocabulary' => $this->vocabulary), array('langcode' => $language_interface->getId()));
-      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy vocabulary token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['vocabulary' => $this->vocabulary], ['langcode' => $language_interface->getId()]);
+      $this->assertEqual($output, $expected, format_string('Sanitized taxonomy vocabulary token %token replaced.', ['%token' => $input]));
     }
   }
 
diff --git a/core/modules/taxonomy/tests/src/Functional/VocabularyCrudTest.php b/core/modules/taxonomy/tests/src/Functional/VocabularyCrudTest.php
index 2705ab0..d32fb0f 100644
--- a/core/modules/taxonomy/tests/src/Functional/VocabularyCrudTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/VocabularyCrudTest.php
@@ -19,12 +19,12 @@ class VocabularyCrudTest extends TaxonomyTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test', 'taxonomy_crud');
+  public static $modules = ['field_test', 'taxonomy_crud'];
 
   protected function setUp() {
     parent::setUp();
 
-    $admin_user = $this->drupalCreateUser(array('create article content', 'administer taxonomy'));
+    $admin_user = $this->drupalCreateUser(['create article content', 'administer taxonomy']);
     $this->drupalLogin($admin_user);
     $this->vocabulary = $this->createVocabulary();
   }
@@ -42,15 +42,15 @@ function testTaxonomyVocabularyDeleteWithTerms() {
     // Assert that there are no terms left.
     $this->assertEqual(0, $query->execute(), 'There are no terms remaining.');
 
-    $terms = array();
+    $terms = [];
     for ($i = 0; $i < 5; $i++) {
       $terms[$i] = $this->createTerm($vocabulary);
     }
 
     // Set up hierarchy. term 2 is a child of 1 and 4 a child of 1 and 2.
-    $terms[2]->parent = array($terms[1]->id());
+    $terms[2]->parent = [$terms[1]->id()];
     $terms[2]->save();
-    $terms[4]->parent = array($terms[1]->id(), $terms[2]->id());
+    $terms[4]->parent = [$terms[1]->id(), $terms[2]->id()];
     $terms[4]->save();
 
     // Assert that there are now 5 terms.
@@ -119,22 +119,22 @@ function testTaxonomyVocabularyLoadMultiple() {
 
     // Fetch the vocabularies with entity_load_multiple(), specifying IDs.
     // Ensure they are returned in the same order as the original array.
-    $vocabularies = Vocabulary::loadMultiple(array($vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id()));
+    $vocabularies = Vocabulary::loadMultiple([$vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id()]);
     $loaded_order = array_keys($vocabularies);
-    $expected_order = array($vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id());
+    $expected_order = [$vocabulary3->id(), $vocabulary2->id(), $vocabulary1->id()];
     $this->assertIdentical($loaded_order, $expected_order);
 
     // Test loading vocabularies by their properties.
     $controller = $this->container->get('entity.manager')->getStorage('taxonomy_vocabulary');
     // Fetch vocabulary 1 by name.
-    $vocabulary = current($controller->loadByProperties(array('name' => $vocabulary1->label())));
+    $vocabulary = current($controller->loadByProperties(['name' => $vocabulary1->label()]));
     $this->assertEqual($vocabulary->id(), $vocabulary1->id(), 'Vocabulary loaded successfully by name.');
 
     // Fetch vocabulary 2 by name and ID.
-    $vocabulary = current($controller->loadByProperties(array(
+    $vocabulary = current($controller->loadByProperties([
       'name' => $vocabulary2->label(),
       'vid' => $vocabulary2->id(),
-    )));
+    ]));
     $this->assertEqual($vocabulary->id(), $vocabulary2->id(), 'Vocabulary loaded successfully by name and ID.');
   }
 
@@ -145,19 +145,19 @@ function testUninstallReinstall() {
     // Field storages and fields attached to taxonomy term bundles should be
     // removed when the module is uninstalled.
     $field_name = Unicode::strtolower($this->randomMachineName() . '_field_name');
-    $storage_definition = array(
+    $storage_definition = [
       'field_name' => $field_name,
       'entity_type' => 'taxonomy_term',
       'type' => 'text',
       'cardinality' => 4
-    );
+    ];
     FieldStorageConfig::create($storage_definition)->save();
-    $field_definition = array(
+    $field_definition = [
       'field_name' => $field_name,
       'entity_type' => 'taxonomy_term',
       'bundle' => $this->vocabulary->id(),
       'label' => $this->randomMachineName() . '_label',
-    );
+    ];
     FieldConfig::create($field_definition)->save();
 
     // Remove the third party setting from the memory copy of the vocabulary.
@@ -166,8 +166,8 @@ function testUninstallReinstall() {
     $this->vocabulary->unsetThirdPartySetting('taxonomy_crud', 'foo');
 
     require_once \Drupal::root() . '/core/includes/install.inc';
-    $this->container->get('module_installer')->uninstall(array('taxonomy'));
-    $this->container->get('module_installer')->install(array('taxonomy'));
+    $this->container->get('module_installer')->uninstall(['taxonomy']);
+    $this->container->get('module_installer')->install(['taxonomy']);
 
     // Now create a vocabulary with the same name. All fields
     // connected to this vocabulary name should have been removed when the
diff --git a/core/modules/taxonomy/tests/src/Functional/VocabularyLanguageTest.php b/core/modules/taxonomy/tests/src/Functional/VocabularyLanguageTest.php
index da78589..5b9cbfe 100644
--- a/core/modules/taxonomy/tests/src/Functional/VocabularyLanguageTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/VocabularyLanguageTest.php
@@ -13,7 +13,7 @@
  */
 class VocabularyLanguageTest extends TaxonomyTestBase {
 
-  public static $modules = array('language');
+  public static $modules = ['language'];
 
   protected function setUp() {
     parent::setUp();
@@ -22,15 +22,15 @@ protected function setUp() {
     $this->drupalLogin($this->drupalCreateUser(['administer taxonomy']));
 
     // Add some custom languages.
-    ConfigurableLanguage::create(array(
+    ConfigurableLanguage::create([
       'id' => 'aa',
       'label' => $this->randomMachineName(),
-    ))->save();
+    ])->save();
 
-    ConfigurableLanguage::create(array(
+    ConfigurableLanguage::create([
       'id' => 'bb',
       'label' => $this->randomMachineName(),
-    ))->save();
+    ])->save();
   }
 
   /**
@@ -70,12 +70,12 @@ function testVocabularyLanguage() {
   function testVocabularyDefaultLanguageForTerms() {
     // Add a new vocabulary and check that the default language settings are for
     // the terms are saved.
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(),
       'vid' => Unicode::strtolower($this->randomMachineName()),
       'default_language[langcode]' => 'bb',
       'default_language[language_alterable]' => TRUE,
-    );
+    ];
     $vid = $edit['vid'];
     $this->drupalPostForm('admin/structure/taxonomy/add', $edit, t('Save'));
 
@@ -93,10 +93,10 @@ function testVocabularyDefaultLanguageForTerms() {
     $this->assertFieldChecked('edit-default-language-language-alterable', 'Show language selection option is checked.');
 
     // Edit the vocabulary and check that the new settings are updated.
-    $edit = array(
+    $edit = [
       'default_language[langcode]' => 'aa',
       'default_language[language_alterable]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $vid, $edit, t('Save'));
 
     // And check again the settings and also the interface.
@@ -109,11 +109,11 @@ function testVocabularyDefaultLanguageForTerms() {
     $this->assertNoFieldChecked('edit-default-language-language-alterable', 'Show language selection option is not checked.');
 
     // Check that language settings are changed after editing vocabulary.
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(),
       'default_language[langcode]' => 'authors_default',
       'default_language[language_alterable]' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/taxonomy/manage/' . $vid, $edit, t('Save'));
 
     // Check that we have the new settings.
diff --git a/core/modules/taxonomy/tests/src/Functional/VocabularyPermissionsTest.php b/core/modules/taxonomy/tests/src/Functional/VocabularyPermissionsTest.php
index 1b83d84..c5f1f94 100644
--- a/core/modules/taxonomy/tests/src/Functional/VocabularyPermissionsTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/VocabularyPermissionsTest.php
@@ -23,7 +23,7 @@ function testVocabularyPermissionsTaxonomyTerm() {
     $vocabulary = $this->createVocabulary();
 
     // Test as admin user.
-    $user = $this->drupalCreateUser(array('administer taxonomy'));
+    $user = $this->drupalCreateUser(['administer taxonomy']);
     $this->drupalLogin($user);
 
     // Visit the main taxonomy administration page.
@@ -32,14 +32,14 @@ function testVocabularyPermissionsTaxonomyTerm() {
     $this->assertField('edit-name-0-value', 'Add taxonomy term form opened successfully.');
 
     // Submit the term.
-    $edit = array();
+    $edit = [];
     $edit['name[0][value]'] = $this->randomMachineName();
 
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('Created new term @name.', array('@name' => $edit['name[0][value]'])), 'Term created successfully.');
+    $this->assertText(t('Created new term @name.', ['@name' => $edit['name[0][value]']]), 'Term created successfully.');
 
     // Verify that the creation message contains a link to a term.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'term/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'term/']);
     $this->assert(isset($view_link), 'The message area contains a link to a term');
 
     $terms = taxonomy_term_load_multiple_by_name($edit['name[0][value]']);
@@ -52,18 +52,18 @@ function testVocabularyPermissionsTaxonomyTerm() {
 
     $edit['name[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('Updated term @name.', array('@name' => $edit['name[0][value]'])), 'Term updated successfully.');
+    $this->assertText(t('Updated term @name.', ['@name' => $edit['name[0][value]']]), 'Term updated successfully.');
 
     // Delete the vocabulary.
     $this->drupalGet('taxonomy/term/' . $term->id() . '/delete');
-    $this->assertRaw(t('Are you sure you want to delete the @entity-type %label?', array('@entity-type' => 'taxonomy term', '%label' => $edit['name[0][value]'])), 'Delete taxonomy term form opened successfully.');
+    $this->assertRaw(t('Are you sure you want to delete the @entity-type %label?', ['@entity-type' => 'taxonomy term', '%label' => $edit['name[0][value]']]), 'Delete taxonomy term form opened successfully.');
 
     // Confirm deletion.
     $this->drupalPostForm(NULL, NULL, t('Delete'));
-    $this->assertRaw(t('Deleted term %name.', array('%name' => $edit['name[0][value]'])), 'Term deleted.');
+    $this->assertRaw(t('Deleted term %name.', ['%name' => $edit['name[0][value]']]), 'Term deleted.');
 
     // Test as user with "edit" permissions.
-    $user = $this->drupalCreateUser(array("edit terms in {$vocabulary->id()}"));
+    $user = $this->drupalCreateUser(["edit terms in {$vocabulary->id()}"]);
     $this->drupalLogin($user);
 
     // Visit the main taxonomy administration page.
@@ -80,10 +80,10 @@ function testVocabularyPermissionsTaxonomyTerm() {
 
     $edit['name[0][value]'] = $this->randomMachineName();
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('Updated term @name.', array('@name' => $edit['name[0][value]'])), 'Term updated successfully.');
+    $this->assertText(t('Updated term @name.', ['@name' => $edit['name[0][value]']]), 'Term updated successfully.');
 
     // Verify that the update message contains a link to a term.
-    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', array(':href' => 'term/'));
+    $view_link = $this->xpath('//div[@class="messages"]//a[contains(@href, :href)]', [':href' => 'term/']);
     $this->assert(isset($view_link), 'The message area contains a link to a term');
 
     // Delete the vocabulary.
@@ -91,7 +91,7 @@ function testVocabularyPermissionsTaxonomyTerm() {
     $this->assertResponse(403, 'Delete taxonomy term form open failed.');
 
     // Test as user with "delete" permissions.
-    $user = $this->drupalCreateUser(array("delete terms in {$vocabulary->id()}"));
+    $user = $this->drupalCreateUser(["delete terms in {$vocabulary->id()}"]);
     $this->drupalLogin($user);
 
     // Visit the main taxonomy administration page.
@@ -107,11 +107,11 @@ function testVocabularyPermissionsTaxonomyTerm() {
 
     // Delete the vocabulary.
     $this->drupalGet('taxonomy/term/' . $term->id() . '/delete');
-    $this->assertRaw(t('Are you sure you want to delete the @entity-type %label?', array('@entity-type' => 'taxonomy term', '%label' => $term->getName())), 'Delete taxonomy term form opened successfully.');
+    $this->assertRaw(t('Are you sure you want to delete the @entity-type %label?', ['@entity-type' => 'taxonomy term', '%label' => $term->getName()]), 'Delete taxonomy term form opened successfully.');
 
     // Confirm deletion.
     $this->drupalPostForm(NULL, NULL, t('Delete'));
-    $this->assertRaw(t('Deleted term %name.', array('%name' => $term->getName())), 'Term deleted.');
+    $this->assertRaw(t('Deleted term %name.', ['%name' => $term->getName()]), 'Term deleted.');
 
     // Test as user without proper permissions.
     $user = $this->drupalCreateUser();
diff --git a/core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php b/core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php
index 5c41f6c..3679b79 100644
--- a/core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php
@@ -14,7 +14,7 @@ class VocabularyTranslationTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('content_translation', 'language');
+  public static $modules = ['content_translation', 'language'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/MigrateTaxonomyConfigsTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/MigrateTaxonomyConfigsTest.php
index 6705fbb..92ebe59 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/MigrateTaxonomyConfigsTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/MigrateTaxonomyConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateTaxonomyConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyTermTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyTermTest.php
index b0311f3..1252833 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyTermTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyTermTest.php
@@ -15,7 +15,7 @@ class MigrateTaxonomyTermTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
@@ -30,44 +30,44 @@ protected function setUp() {
    * Tests the Drupal 6 taxonomy term to Drupal 8 migration.
    */
   public function testTaxonomyTerms() {
-    $expected_results = array(
-      '1' => array(
+    $expected_results = [
+      '1' => [
         'source_vid' => 1,
         'vid' => 'vocabulary_1_i_0_',
         'weight' => 0,
-        'parent' => array(0),
-      ),
-      '2' => array(
+        'parent' => [0],
+      ],
+      '2' => [
         'source_vid' => 2,
         'vid' => 'vocabulary_2_i_1_',
         'weight' => 3,
-        'parent' => array(0),
-      ),
-      '3' => array(
+        'parent' => [0],
+      ],
+      '3' => [
         'source_vid' => 2,
         'vid' => 'vocabulary_2_i_1_',
         'weight' => 4,
-        'parent' => array(2),
-      ),
-      '4' => array(
+        'parent' => [2],
+      ],
+      '4' => [
         'source_vid' => 3,
         'vid' => 'vocabulary_3_i_2_',
         'weight' => 6,
-        'parent' => array(0),
-      ),
-      '5' => array(
+        'parent' => [0],
+      ],
+      '5' => [
         'source_vid' => 3,
         'vid' => 'vocabulary_3_i_2_',
         'weight' => 7,
-        'parent' => array(4),
-      ),
-      '6' => array(
+        'parent' => [4],
+      ],
+      '6' => [
         'source_vid' => 3,
         'vid' => 'vocabulary_3_i_2_',
         'weight' => 8,
-        'parent' => array(4, 5),
-      ),
-    );
+        'parent' => [4, 5],
+      ],
+    ];
     $terms = Term::loadMultiple(array_keys($expected_results));
 
     // Find each term in the tree.
@@ -87,11 +87,11 @@ public function testTaxonomyTerms() {
       $this->assertIdentical("description of term {$tid} of vocabulary {$values['source_vid']}", $term->description->value);
       $this->assertIdentical($values['vid'], $term->vid->target_id);
       $this->assertIdentical((string) $values['weight'], $term->weight->value);
-      if ($values['parent'] === array(0)) {
+      if ($values['parent'] === [0]) {
         $this->assertNull($term->parent->target_id);
       }
       else {
-        $parents = array();
+        $parents = [];
         foreach (\Drupal::entityManager()->getStorage('taxonomy_term')->loadParents($tid) as $parent) {
           $parents[] = (int) $parent->id();
         }
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyVocabularyTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyVocabularyTest.php
index c2d4ab6..6c66598 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyVocabularyTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateTaxonomyVocabularyTest.php
@@ -15,7 +15,7 @@ class MigrateTaxonomyVocabularyTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
@@ -32,7 +32,7 @@ public function testTaxonomyVocabulary() {
     for ($i = 0; $i < 3; $i++) {
       $j = $i + 1;
       $vocabulary = Vocabulary::load("vocabulary_{$j}_i_{$i}_");
-      $this->assertIdentical($this->getMigration('d6_taxonomy_vocabulary')->getIdMap()->lookupDestinationID(array($j)), array($vocabulary->id()));
+      $this->assertIdentical($this->getMigration('d6_taxonomy_vocabulary')->getIdMap()->lookupDestinationID([$j]), [$vocabulary->id()]);
       $this->assertIdentical("vocabulary $j (i=$i)", $vocabulary->label());
       $this->assertIdentical("description of vocabulary $j (i=$i)", $vocabulary->getDescription());
       $this->assertIdentical($i, $vocabulary->getHierarchy());
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityDisplayTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityDisplayTest.php
index 42f864e..40f094e 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityDisplayTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityDisplayTest.php
@@ -34,7 +34,7 @@ public function testVocabularyEntityDisplay() {
     $this->assertIdentical('entity_reference_label', $component['type']);
     $this->assertIdentical(20, $component['weight']);
     // Test the Id map.
-    $this->assertIdentical(array('node', 'article', 'default', 'tags'), $this->getMigration('d6_vocabulary_entity_display')->getIdMap()->lookupDestinationID(array(4, 'article')));
+    $this->assertIdentical(['node', 'article', 'default', 'tags'], $this->getMigration('d6_vocabulary_entity_display')->getIdMap()->lookupDestinationID([4, 'article']));
   }
 
 }
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityFormDisplayTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityFormDisplayTest.php
index a2e26c7..32370f2 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityFormDisplayTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyEntityFormDisplayTest.php
@@ -34,7 +34,7 @@ public function testVocabularyEntityFormDisplay() {
     $this->assertIdentical('options_select', $component['type']);
     $this->assertIdentical(20, $component['weight']);
     // Test the Id map.
-    $this->assertIdentical(array('node', 'article', 'default', 'tags'), $this->getMigration('d6_vocabulary_entity_form_display')->getIdMap()->lookupDestinationID(array(4, 'article')));
+    $this->assertIdentical(['node', 'article', 'default', 'tags'], $this->getMigration('d6_vocabulary_entity_form_display')->getIdMap()->lookupDestinationID([4, 'article']));
 
     // Test the term widget tags setting.
     $entity_form_display = EntityFormDisplay::load('node.story.default');
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldInstanceTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldInstanceTest.php
index 2534c3e..45db4a8 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldInstanceTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldInstanceTest.php
@@ -48,7 +48,7 @@ public function testVocabularyFieldInstance() {
     $this->assertIdentical(['tags'], $settings['handler_settings']['target_bundles'], 'The target_bundles handler setting is correct.');
     $this->assertIdentical(TRUE, $settings['handler_settings']['auto_create'], 'The "auto_create" setting is correct.');
 
-    $this->assertIdentical(array('node', 'article', 'tags'), $this->getMigration('d6_vocabulary_field_instance')->getIdMap()->lookupDestinationID(array(4, 'article')));
+    $this->assertIdentical(['node', 'article', 'tags'], $this->getMigration('d6_vocabulary_field_instance')->getIdMap()->lookupDestinationID([4, 'article']));
 
     // Test the the field vocabulary_1_i_0_
     $field_id = 'node.story.vocabulary_1_i_0_';
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldTest.php
index eb0c480..6c3631b 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d6/MigrateVocabularyFieldTest.php
@@ -39,7 +39,7 @@ public function testVocabularyField() {
     $this->assertIdentical('taxonomy_term', $settings['target_type'], "Target type is correct.");
     $this->assertIdentical(1, $field_storage->getCardinality(), "Field cardinality in 1.");
 
-    $this->assertIdentical(array('node', 'tags'), $this->getMigration('d6_vocabulary_field')->getIdMap()->lookupDestinationID(array(4)), "Test IdMap");
+    $this->assertIdentical(['node', 'tags'], $this->getMigration('d6_vocabulary_field')->getIdMap()->lookupDestinationID([4]), "Test IdMap");
   }
 
 }
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateNodeTaxonomyTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateNodeTaxonomyTest.php
index d57e334..0d985e2 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateNodeTaxonomyTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateNodeTaxonomyTest.php
@@ -14,7 +14,7 @@
  */
 class MigrateNodeTaxonomyTest extends MigrateDrupal7TestBase {
 
-  public static $modules = array(
+  public static $modules = [
     'datetime',
     'field',
     'filter',
@@ -24,7 +24,7 @@ class MigrateNodeTaxonomyTest extends MigrateDrupal7TestBase {
     'taxonomy',
     'telephone',
     'text',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -40,21 +40,21 @@ protected function setUp() {
 
     $this->executeMigration('d7_node_type');
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'type' => 'entity_reference',
       'field_name' => 'field_tags',
       'entity_type' => 'node',
-      'settings' => array(
+      'settings' => [
         'target_type' => 'taxonomy_term',
-      ),
+      ],
       'cardinality' => FieldStorageConfigInterface::CARDINALITY_UNLIMITED,
-    ))->save();
+    ])->save();
 
-    FieldConfig::create(array(
+    FieldConfig::create([
       'entity_type' => 'node',
       'field_name' => 'field_tags',
       'bundle' => 'article',
-    ))->save();
+    ])->save();
 
     $this->executeMigrations([
       'd7_taxonomy_vocabulary',
diff --git a/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyVocabularyTest.php b/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyVocabularyTest.php
index 3f29fbf..7f2ceef 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyVocabularyTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Migrate/d7/MigrateTaxonomyVocabularyTest.php
@@ -16,7 +16,7 @@ class MigrateTaxonomyVocabularyTest extends MigrateDrupal7TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/taxonomy/tests/src/Kernel/TermKernelTest.php b/core/modules/taxonomy/tests/src/Kernel/TermKernelTest.php
index 1e2b232..0d70d84 100644
--- a/core/modules/taxonomy/tests/src/Kernel/TermKernelTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/TermKernelTest.php
@@ -18,14 +18,14 @@ class TermKernelTest extends KernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array( 'filter', 'taxonomy', 'text', 'user' );
+  public static $modules = [ 'filter', 'taxonomy', 'text', 'user' ];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->installConfig(array('filter'));
+    $this->installConfig(['filter']);
     $this->installEntitySchema('taxonomy_term');
   }
 
@@ -38,11 +38,11 @@ public function testTermDelete() {
     $valid_term = $this->createTerm($vocabulary);
     // Delete a valid term.
     $valid_term->delete();
-    $terms = entity_load_multiple_by_properties('taxonomy_term', array('vid' => $vocabulary->id()));
+    $terms = entity_load_multiple_by_properties('taxonomy_term', ['vid' => $vocabulary->id()]);
     $this->assertTrue(empty($terms), 'Vocabulary is empty after deletion');
 
     // Delete an invalid term. Should not throw any notices.
-    entity_delete_multiple('taxonomy_term', array(42));
+    entity_delete_multiple('taxonomy_term', [42]);
   }
 
   /**
@@ -53,18 +53,18 @@ public function testMultipleParentDelete() {
     $parent_term1 = $this->createTerm($vocabulary);
     $parent_term2 = $this->createTerm($vocabulary);
     $child_term = $this->createTerm($vocabulary);
-    $child_term->parent = array($parent_term1->id(), $parent_term2->id());
+    $child_term->parent = [$parent_term1->id(), $parent_term2->id()];
     $child_term->save();
     $child_term_id = $child_term->id();
 
     $parent_term1->delete();
     $term_storage = $this->container->get('entity.manager')->getStorage('taxonomy_term');
-    $term_storage->resetCache(array($child_term_id));
+    $term_storage->resetCache([$child_term_id]);
     $child_term = Term::load($child_term_id);
     $this->assertTrue(!empty($child_term), 'Child term is not deleted if only one of its parents is removed.');
 
     $parent_term2->delete();
-    $term_storage->resetCache(array($child_term_id));
+    $term_storage->resetCache([$child_term_id]);
     $child_term = Term::load($child_term_id);
     $this->assertTrue(empty($child_term), 'Child term is deleted if all of its parents are removed.');
   }
@@ -75,7 +75,7 @@ public function testMultipleParentDelete() {
   public function testTaxonomyVocabularyTree() {
     // Create a new vocabulary with 6 terms.
     $vocabulary = $this->createVocabulary();
-    $term = array();
+    $term = [];
     for ($i = 0; $i < 6; $i++) {
       $term[$i] = $this->createTerm($vocabulary);
     }
@@ -90,13 +90,13 @@ public function testTaxonomyVocabularyTree() {
     $term[1]->save();
 
     // $term[2] is a child of 1 and 5.
-    $term[2]->parent = array($term[1]->id(), $term[5]->id());
+    $term[2]->parent = [$term[1]->id(), $term[5]->id()];
     $term[2]->save();
     // $term[3] is a child of 2.
-    $term[3]->parent = array($term[2]->id());
+    $term[3]->parent = [$term[2]->id()];
     $term[3]->save();
     // $term[5] is a child of 4.
-    $term[5]->parent = array($term[4]->id());
+    $term[5]->parent = [$term[4]->id()];
     $term[5]->save();
 
     /**
diff --git a/core/modules/taxonomy/tests/src/Kernel/TermValidationTest.php b/core/modules/taxonomy/tests/src/Kernel/TermValidationTest.php
index 3d9cfb7..437a305 100644
--- a/core/modules/taxonomy/tests/src/Kernel/TermValidationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/TermValidationTest.php
@@ -16,7 +16,7 @@ class TermValidationTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
@@ -30,14 +30,14 @@ protected function setUp() {
    * Tests the term validation constraints.
    */
   public function testValidation() {
-    $this->entityManager->getStorage('taxonomy_vocabulary')->create(array(
+    $this->entityManager->getStorage('taxonomy_vocabulary')->create([
       'vid' => 'tags',
       'name' => 'Tags',
-    ))->save();
-    $term = $this->entityManager->getStorage('taxonomy_term')->create(array(
+    ])->save();
+    $term = $this->entityManager->getStorage('taxonomy_term')->create([
       'name' => 'test',
       'vid' => 'tags',
-    ));
+    ]);
     $violations = $term->validate();
     $this->assertEqual(count($violations), 0, 'No violations when validating a default term.');
 
@@ -46,7 +46,7 @@ public function testValidation() {
     $this->assertEqual(count($violations), 1, 'Violation found when name is too long.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'name.0.value');
     $field_label = $term->get('name')->getFieldDefinition()->getLabel();
-    $this->assertEqual($violations[0]->getMessage(), t('%name: may not be longer than @max characters.', array('%name' => $field_label, '@max' => 255)));
+    $this->assertEqual($violations[0]->getMessage(), t('%name: may not be longer than @max characters.', ['%name' => $field_label, '@max' => 255]));
 
     $term->set('name', NULL);
     $violations = $term->validate();
@@ -58,7 +58,7 @@ public function testValidation() {
     $term->set('parent', 9999);
     $violations = $term->validate();
     $this->assertEqual(count($violations), 1, 'Violation found when term parent is invalid.');
-    $this->assertEqual($violations[0]->getMessage(), format_string('The referenced entity (%type: %id) does not exist.', array('%type' => 'taxonomy_term', '%id' => 9999)));
+    $this->assertEqual($violations[0]->getMessage(), format_string('The referenced entity (%type: %id) does not exist.', ['%type' => 'taxonomy_term', '%id' => 9999]));
 
     $term->set('parent', 0);
     $violations = $term->validate();
diff --git a/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php b/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
index dcd4967..a2df099 100644
--- a/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
+++ b/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
@@ -12,7 +12,7 @@
 class TaxonomyLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('taxonomy' => 'core/modules/taxonomy');
+    $this->directoryList = ['taxonomy' => 'core/modules/taxonomy'];
     parent::setUp();
   }
 
@@ -21,10 +21,10 @@ protected function setUp() {
    *
    * @dataProvider getTaxonomyPageRoutes
    */
-  public function testTaxonomyPageLocalTasks($route, $subtask = array()) {
-    $tasks = array(
-      0 => array('entity.taxonomy_term.canonical', 'entity.taxonomy_term.edit_form'),
-    );
+  public function testTaxonomyPageLocalTasks($route, $subtask = []) {
+    $tasks = [
+      0 => ['entity.taxonomy_term.canonical', 'entity.taxonomy_term.edit_form'],
+    ];
     if ($subtask) $tasks[] = $subtask;
     $this->assertLocalTasks($route, $tasks);
   }
@@ -33,10 +33,10 @@ public function testTaxonomyPageLocalTasks($route, $subtask = array()) {
    * Provides a list of routes to test.
    */
   public function getTaxonomyPageRoutes() {
-    return array(
-      array('entity.taxonomy_term.canonical'),
-      array('entity.taxonomy_term.edit_form'),
-    );
+    return [
+      ['entity.taxonomy_term.canonical'],
+      ['entity.taxonomy_term.edit_form'],
+    ];
   }
 
 }
diff --git a/core/modules/telephone/src/Plugin/Field/FieldFormatter/TelephoneLinkFormatter.php b/core/modules/telephone/src/Plugin/Field/FieldFormatter/TelephoneLinkFormatter.php
index f77b751..afdf541 100644
--- a/core/modules/telephone/src/Plugin/Field/FieldFormatter/TelephoneLinkFormatter.php
+++ b/core/modules/telephone/src/Plugin/Field/FieldFormatter/TelephoneLinkFormatter.php
@@ -24,20 +24,20 @@ class TelephoneLinkFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'title' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $elements['title'] = array(
+    $elements['title'] = [
       '#type' => 'textfield',
       '#title' => t('Title to replace basic numeric telephone number display'),
       '#default_value' => $this->getSetting('title'),
-    );
+    ];
 
     return $elements;
   }
@@ -46,11 +46,11 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
     $settings = $this->getSettings();
 
     if (!empty($settings['title'])) {
-      $summary[] = t('Link using text: @title', array('@title' => $settings['title']));
+      $summary[] = t('Link using text: @title', ['@title' => $settings['title']]);
     }
     else {
       $summary[] = t('Link using provided telephone number.');
@@ -63,23 +63,23 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $element = array();
+    $element = [];
     $title_setting = $this->getSetting('title');
 
     foreach ($items as $delta => $item) {
       // Render each element as link.
-      $element[$delta] = array(
+      $element[$delta] = [
         '#type' => 'link',
         // Use custom title if available, otherwise use the telephone number
         // itself as title.
         '#title' => $title_setting ?: $item->value,
         // Prepend 'tel:' to the telephone number.
         '#url' => Url::fromUri('tel:' . rawurlencode(preg_replace('/\s+/', '', $item->value))),
-        '#options' => array('external' => TRUE),
-      );
+        '#options' => ['external' => TRUE],
+      ];
 
       if (!empty($item->_attributes)) {
-        $element[$delta]['#options'] += array('attributes' => array());
+        $element[$delta]['#options'] += ['attributes' => []];
         $element[$delta]['#options']['attributes'] += $item->_attributes;
         // Unset field item attributes since they have been included in the
         // formatter output and should not be rendered in the field template.
diff --git a/core/modules/telephone/src/Plugin/Field/FieldType/TelephoneItem.php b/core/modules/telephone/src/Plugin/Field/FieldType/TelephoneItem.php
index 20950e5..f2aa1cc 100644
--- a/core/modules/telephone/src/Plugin/Field/FieldType/TelephoneItem.php
+++ b/core/modules/telephone/src/Plugin/Field/FieldType/TelephoneItem.php
@@ -25,14 +25,14 @@ class TelephoneItem extends FieldItemBase {
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'varchar',
           'length' => 256,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -62,14 +62,14 @@ public function getConstraints() {
     $constraints = parent::getConstraints();
 
     $max_length = 256;
-    $constraints[] = $constraint_manager->create('ComplexData', array(
-      'value' => array(
-        'Length' => array(
+    $constraints[] = $constraint_manager->create('ComplexData', [
+      'value' => [
+        'Length' => [
           'max' => $max_length,
-          'maxMessage' => t('%name: the telephone number may not be longer than @max characters.', array('%name' => $this->getFieldDefinition()->getLabel(), '@max' => $max_length)),
-        )
-      ),
-    ));
+          'maxMessage' => t('%name: the telephone number may not be longer than @max characters.', ['%name' => $this->getFieldDefinition()->getLabel(), '@max' => $max_length]),
+        ]
+      ],
+    ]);
 
     return $constraints;
   }
diff --git a/core/modules/telephone/src/Plugin/Field/FieldWidget/TelephoneDefaultWidget.php b/core/modules/telephone/src/Plugin/Field/FieldWidget/TelephoneDefaultWidget.php
index f585067..1ea1837 100644
--- a/core/modules/telephone/src/Plugin/Field/FieldWidget/TelephoneDefaultWidget.php
+++ b/core/modules/telephone/src/Plugin/Field/FieldWidget/TelephoneDefaultWidget.php
@@ -23,21 +23,21 @@ class TelephoneDefaultWidget extends WidgetBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'placeholder' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['placeholder'] = array(
+    $element['placeholder'] = [
       '#type' => 'textfield',
       '#title' => t('Placeholder'),
       '#default_value' => $this->getSetting('placeholder'),
       '#description' => t('Text that will be shown inside the field until a value is entered. This hint is usually a sample value or a brief description of the expected format.'),
-    );
+    ];
     return $element;
   }
 
@@ -45,11 +45,11 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
+    $summary = [];
 
     $placeholder = $this->getSetting('placeholder');
     if (!empty($placeholder)) {
-      $summary[] = t('Placeholder: @placeholder', array('@placeholder' => $placeholder));
+      $summary[] = t('Placeholder: @placeholder', ['@placeholder' => $placeholder]);
     }
     else {
       $summary[] = t('No placeholder');
@@ -62,11 +62,11 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
-    $element['value'] = $element + array(
+    $element['value'] = $element + [
       '#type' => 'tel',
       '#default_value' => isset($items[$delta]->value) ? $items[$delta]->value : NULL,
       '#placeholder' => $this->getSetting('placeholder'),
-    );
+    ];
     return $element;
   }
 
diff --git a/core/modules/telephone/telephone.module b/core/modules/telephone/telephone.module
index e088958..df2acc2 100644
--- a/core/modules/telephone/telephone.module
+++ b/core/modules/telephone/telephone.module
@@ -15,11 +15,11 @@ function telephone_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.telephone':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Telephone module allows you to create fields that contain telephone numbers. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":telephone_documentation">online documentation for the Telephone module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':telephone_documentation' => 'https://www.drupal.org/documentation/modules/telephone')) . '</p>';
+      $output .= '<p>' . t('The Telephone module allows you to create fields that contain telephone numbers. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":telephone_documentation">online documentation for the Telephone module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':telephone_documentation' => 'https://www.drupal.org/documentation/modules/telephone']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying telephone fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the telephone field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and the <em>display</em> of the telephone field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Displaying telephone numbers as links') . '</dt>';
       $output .= '<dd>' . t('Telephone numbers can be displayed as links with the scheme name <em>tel:</em> by choosing the <em>Telephone</em> display format on the <em>Manage display</em> page. Any spaces will be stripped out of the link text. This semantic markup improves the user experience on mobile and assistive technology devices.') . '</dd>';
       $output .= '</dl>';
diff --git a/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php b/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
index 7f536c4..7256c9d 100644
--- a/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
+++ b/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
@@ -18,11 +18,11 @@ class TelephoneFieldTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'field',
     'node',
     'telephone'
-  );
+  ];
 
   /**
    * A user with permission to create articles.
@@ -34,8 +34,8 @@ class TelephoneFieldTest extends BrowserTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $this->webUser = $this->drupalCreateUser(array('create article content', 'edit own article content'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $this->webUser = $this->drupalCreateUser(['create article content', 'edit own article content']);
     $this->drupalLogin($this->webUser);
   }
 
@@ -47,11 +47,11 @@ protected function setUp() {
   function testTelephoneField() {
 
     // Add the telephone field to the article content type.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_telephone',
       'entity_type' => 'node',
       'type' => 'telephone',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'field_name' => 'field_telephone',
       'label' => 'Telephone Number',
@@ -60,19 +60,19 @@ function testTelephoneField() {
     ])->save();
 
     entity_get_form_display('node', 'article', 'default')
-      ->setComponent('field_telephone', array(
+      ->setComponent('field_telephone', [
         'type' => 'telephone_default',
-        'settings' => array(
+        'settings' => [
           'placeholder' => '123-456-7890',
-        ),
-      ))
+        ],
+      ])
       ->save();
 
     entity_get_display('node', 'article', 'default')
-      ->setComponent('field_telephone', array(
+      ->setComponent('field_telephone', [
         'type' => 'telephone_link',
         'weight' => 1,
-      ))
+      ])
       ->save();
 
     // Display creation form.
@@ -81,19 +81,19 @@ function testTelephoneField() {
     $this->assertRaw('placeholder="123-456-7890"');
 
     // Test basic entry of telephone field.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'field_telephone[0][value]' => "123456789",
-    );
+    ];
 
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertRaw('<a href="tel:123456789">', 'A telephone link is provided on the article node page.');
 
     // Add number with a space in it. Need to ensure it is stripped on output.
-    $edit = array(
+    $edit = [
       'title[0][value]' => $this->randomMachineName(),
       'field_telephone[0][value]' => "1234 56789",
-    );
+    ];
 
     $this->drupalPostForm('node/add/article', $edit, t('Save'));
     $this->assertRaw('<a href="tel:123456789">', 'Telephone link is output with whitespace removed.');
diff --git a/core/modules/telephone/tests/src/Kernel/TelephoneItemTest.php b/core/modules/telephone/tests/src/Kernel/TelephoneItemTest.php
index 7f94ba3..7226940 100644
--- a/core/modules/telephone/tests/src/Kernel/TelephoneItemTest.php
+++ b/core/modules/telephone/tests/src/Kernel/TelephoneItemTest.php
@@ -21,17 +21,17 @@ class TelephoneItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('telephone');
+  public static $modules = ['telephone'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create a telephone field storage and field for validation.
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'field_test',
       'entity_type' => 'entity_test',
       'type' => 'telephone',
-    ))->save();
+    ])->save();
     FieldConfig::create([
       'entity_type' => 'entity_test',
       'field_name' => 'field_test',
diff --git a/core/modules/text/src/Plugin/Field/FieldFormatter/TextDefaultFormatter.php b/core/modules/text/src/Plugin/Field/FieldFormatter/TextDefaultFormatter.php
index 0a78114..e746716 100644
--- a/core/modules/text/src/Plugin/Field/FieldFormatter/TextDefaultFormatter.php
+++ b/core/modules/text/src/Plugin/Field/FieldFormatter/TextDefaultFormatter.php
@@ -24,17 +24,17 @@ class TextDefaultFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     // The ProcessedText element already handles cache context & tag bubbling.
     // @see \Drupal\filter\Element\ProcessedText::preRenderText()
     foreach ($items as $delta => $item) {
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#type' => 'processed_text',
         '#text' => $item->value,
         '#format' => $item->format,
         '#langcode' => $item->getLangcode(),
-      );
+      ];
     }
 
     return $elements;
diff --git a/core/modules/text/src/Plugin/Field/FieldFormatter/TextTrimmedFormatter.php b/core/modules/text/src/Plugin/Field/FieldFormatter/TextTrimmedFormatter.php
index 8d69571..6585238 100644
--- a/core/modules/text/src/Plugin/Field/FieldFormatter/TextTrimmedFormatter.php
+++ b/core/modules/text/src/Plugin/Field/FieldFormatter/TextTrimmedFormatter.php
@@ -33,24 +33,24 @@ class TextTrimmedFormatter extends FormatterBase {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'trim_length' => '600',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
-    $element['trim_length'] = array(
+    $element['trim_length'] = [
       '#title' => t('Trimmed limit'),
       '#type' => 'number',
       '#field_suffix' => t('characters'),
       '#default_value' => $this->getSetting('trim_length'),
-      '#description' => t('If the summary is not set, the trimmed %label field will end at the last full sentence before this character limit.', array('%label' => $this->fieldDefinition->getLabel())),
+      '#description' => t('If the summary is not set, the trimmed %label field will end at the last full sentence before this character limit.', ['%label' => $this->fieldDefinition->getLabel()]),
       '#min' => 1,
       '#required' => TRUE,
-    );
+    ];
     return $element;
   }
 
@@ -58,8 +58,8 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function settingsSummary() {
-    $summary = array();
-    $summary[] = t('Trimmed limit: @trim_length characters', array('@trim_length' => $this->getSetting('trim_length')));
+    $summary = [];
+    $summary[] = t('Trimmed limit: @trim_length characters', ['@trim_length' => $this->getSetting('trim_length')]);
     return $summary;
   }
 
@@ -67,7 +67,7 @@ public function settingsSummary() {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     $render_as_summary = function (&$element) {
       // Make sure any default #pre_render callbacks are set on the element,
@@ -82,12 +82,12 @@ public function viewElements(FieldItemListInterface $items, $langcode) {
     // The ProcessedText element already handles cache context & tag bubbling.
     // @see \Drupal\filter\Element\ProcessedText::preRenderText()
     foreach ($items as $delta => $item) {
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#type' => 'processed_text',
         '#text' => NULL,
         '#format' => $item->format,
         '#langcode' => $item->getLangcode(),
-      );
+      ];
 
       if ($this->getPluginId() == 'text_summary_or_trimmed' && !empty($item->summary)) {
         $elements[$delta]['#text'] = $item->summary;
diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextItem.php
index ed896ad..447a0b1 100644
--- a/core/modules/text/src/Plugin/Field/FieldType/TextItem.php
+++ b/core/modules/text/src/Plugin/Field/FieldType/TextItem.php
@@ -23,30 +23,30 @@ class TextItem extends TextItemBase {
    * {@inheritdoc}
    */
   public static function defaultStorageSettings() {
-    return array(
+    return [
       'max_length' => 255,
-    ) + parent::defaultStorageSettings();
+    ] + parent::defaultStorageSettings();
   }
 
   /**
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'varchar',
           'length' => $field_definition->getSetting('max_length'),
-        ),
-        'format' => array(
+        ],
+        'format' => [
           'type' => 'varchar',
           'length' => 255,
-        ),
-      ),
-      'indexes' => array(
-        'format' => array('format'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'format' => ['format'],
+      ],
+    ];
   }
 
   /**
@@ -57,14 +57,14 @@ public function getConstraints() {
     $constraints = parent::getConstraints();
 
     if ($max_length = $this->getSetting('max_length')) {
-      $constraints[] = $constraint_manager->create('ComplexData', array(
-        'value' => array(
-          'Length' => array(
+      $constraints[] = $constraint_manager->create('ComplexData', [
+        'value' => [
+          'Length' => [
             'max' => $max_length,
-            'maxMessage' => t('%name: the text may not be longer than @max characters.', array('%name' => $this->getFieldDefinition()->getLabel(), '@max' => $max_length)),
-          )
-        ),
-      ));
+            'maxMessage' => t('%name: the text may not be longer than @max characters.', ['%name' => $this->getFieldDefinition()->getLabel(), '@max' => $max_length]),
+          ]
+        ],
+      ]);
     }
 
     return $constraints;
@@ -74,9 +74,9 @@ public function getConstraints() {
    * {@inheritdoc}
    */
   public function storageSettingsForm(array &$form, FormStateInterface $form_state, $has_data) {
-    $element = array();
+    $element = [];
 
-    $element['max_length'] = array(
+    $element['max_length'] = [
       '#type' => 'number',
       '#title' => t('Maximum length'),
       '#default_value' => $this->getSetting('max_length'),
@@ -84,7 +84,7 @@ public function storageSettingsForm(array &$form, FormStateInterface $form_state
       '#description' => t('The maximum length of the field in characters.'),
       '#min' => 1,
       '#disabled' => $has_data,
-    );
+    ];
     $element += parent::storageSettingsForm($form, $form_state, $has_data);
 
     return $element;
diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php
index 83cea4f..6dd4339 100644
--- a/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php
+++ b/core/modules/text/src/Plugin/Field/FieldType/TextItemBase.php
@@ -39,7 +39,7 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    */
   public function applyDefaultValue($notify = TRUE) {
     // @todo: Add in the filter default format here.
-    $this->setValue(array('format' => NULL), $notify);
+    $this->setValue(['format' => NULL], $notify);
     return $this;
   }
 
@@ -82,11 +82,11 @@ public static function generateSampleValue(FieldDefinitionInterface $field_defin
       $value = substr($random->sentences(mt_rand(1, $settings['max_length'] / 3), FALSE), 0, $settings['max_length']);
     }
 
-    $values = array(
+    $values = [
       'value' => $value,
       'summary' => $value,
       'format' => filter_fallback_format(),
-    );
+    ];
     return $values;
   }
 
diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php
index cf1f616..15e4eb6 100644
--- a/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php
+++ b/core/modules/text/src/Plugin/Field/FieldType/TextLongItem.php
@@ -22,21 +22,21 @@ class TextLongItem extends TextItemBase {
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'text',
           'size' => 'big',
-        ),
-        'format' => array(
+        ],
+        'format' => [
           'type' => 'varchar_ascii',
           'length' => 255,
-        ),
-      ),
-      'indexes' => array(
-        'format' => array('format'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'format' => ['format'],
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php b/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php
index d42e3a7..6af6d04 100644
--- a/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php
+++ b/core/modules/text/src/Plugin/Field/FieldType/TextWithSummaryItem.php
@@ -24,9 +24,9 @@ class TextWithSummaryItem extends TextItemBase {
    * {@inheritdoc}
    */
   public static function defaultFieldSettings() {
-    return array(
+    return [
       'display_summary' => 0,
-    ) + parent::defaultFieldSettings();
+    ] + parent::defaultFieldSettings();
   }
 
   /**
@@ -52,25 +52,25 @@ public static function propertyDefinitions(FieldStorageDefinitionInterface $fiel
    * {@inheritdoc}
    */
   public static function schema(FieldStorageDefinitionInterface $field_definition) {
-    return array(
-      'columns' => array(
-        'value' => array(
+    return [
+      'columns' => [
+        'value' => [
           'type' => 'text',
           'size' => 'big',
-        ),
-        'summary' => array(
+        ],
+        'summary' => [
           'type' => 'text',
           'size' => 'big',
-        ),
-        'format' => array(
+        ],
+        'format' => [
           'type' => 'varchar_ascii',
           'length' => 255,
-        ),
-      ),
-      'indexes' => array(
-        'format' => array('format'),
-      ),
-    );
+        ],
+      ],
+      'indexes' => [
+        'format' => ['format'],
+      ],
+    ];
   }
 
   /**
@@ -85,15 +85,15 @@ public function isEmpty() {
    * {@inheritdoc}
    */
   public function fieldSettingsForm(array $form, FormStateInterface $form_state) {
-    $element = array();
+    $element = [];
     $settings = $this->getSettings();
 
-    $element['display_summary'] = array(
+    $element['display_summary'] = [
       '#type' => 'checkbox',
       '#title' => t('Summary input'),
       '#default_value' => $settings['display_summary'],
       '#description' => t('This allows authors to input an explicit summary, to be displayed instead of the automatically trimmed text when using the "Summary or trimmed" display type.'),
-    );
+    ];
 
     return $element;
   }
diff --git a/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWidget.php b/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWidget.php
index 8688efb..69a660e 100644
--- a/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWidget.php
+++ b/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWidget.php
@@ -46,7 +46,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
    * {@inheritdoc}
    */
   public function errorElement(array $element, ConstraintViolationInterface $violation, array $form, FormStateInterface $form_state) {
-    if ($violation->arrayPropertyPath == array('format') && isset($element['format']['#access']) && !$element['format']['#access']) {
+    if ($violation->arrayPropertyPath == ['format'] && isset($element['format']['#access']) && !$element['format']['#access']) {
       // Ignore validation errors for formats if formats may not be changed,
       // i.e. when existing formats become invalid. See filter_process_format().
       return FALSE;
diff --git a/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWithSummaryWidget.php b/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWithSummaryWidget.php
index 2afd14b..e50e5cb 100644
--- a/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWithSummaryWidget.php
+++ b/core/modules/text/src/Plugin/Field/FieldWidget/TextareaWithSummaryWidget.php
@@ -23,11 +23,11 @@ class TextareaWithSummaryWidget extends TextareaWidget {
    * {@inheritdoc}
    */
   public static function defaultSettings() {
-    return array(
+    return [
       'rows' => '9',
       'summary_rows' => '3',
       'placeholder' => '',
-    ) + parent::defaultSettings();
+    ] + parent::defaultSettings();
   }
 
   /**
@@ -35,14 +35,14 @@ public static function defaultSettings() {
    */
   public function settingsForm(array $form, FormStateInterface $form_state) {
     $element = parent::settingsForm($form, $form_state);
-    $element['summary_rows'] = array(
+    $element['summary_rows'] = [
       '#type' => 'number',
       '#title' => t('Summary rows'),
       '#default_value' => $this->getSetting('summary_rows'),
       '#description' => $element['rows']['#description'],
       '#required' => TRUE,
       '#min' => 1,
-    );
+    ];
     return $element;
   }
 
@@ -52,7 +52,7 @@ public function settingsForm(array $form, FormStateInterface $form_state) {
   public function settingsSummary() {
     $summary = parent::settingsSummary();
 
-    $summary[] = t('Number of summary rows: @rows', array('@rows' => $this->getSetting('summary_rows')));
+    $summary[] = t('Number of summary rows: @rows', ['@rows' => $this->getSetting('summary_rows')]);
 
     return $summary;
   }
@@ -64,20 +64,20 @@ function formElement(FieldItemListInterface $items, $delta, array $element, arra
     $element = parent::formElement($items, $delta, $element, $form, $form_state);
 
     $display_summary = $items[$delta]->summary || $this->getFieldSetting('display_summary');
-    $element['summary'] = array(
+    $element['summary'] = [
       '#type' => $display_summary ? 'textarea' : 'value',
       '#default_value' => $items[$delta]->summary,
       '#title' => t('Summary'),
       '#rows' => $this->getSetting('summary_rows'),
       '#description' => t('Leave blank to use trimmed value of full text as the summary.'),
-      '#attached' => array(
-        'library' => array('text/drupal.text'),
-      ),
-      '#attributes' => array('class' => array('js-text-summary', 'text-summary')),
+      '#attached' => [
+        'library' => ['text/drupal.text'],
+      ],
+      '#attributes' => ['class' => ['js-text-summary', 'text-summary']],
       '#prefix' => '<div class="js-text-summary-wrapper text-summary-wrapper">',
       '#suffix' => '</div>',
       '#weight' => -10,
-    );
+    ];
 
     return $element;
   }
diff --git a/core/modules/text/src/Plugin/Field/FieldWidget/TextfieldWidget.php b/core/modules/text/src/Plugin/Field/FieldWidget/TextfieldWidget.php
index 5a3ed05..af8493d 100644
--- a/core/modules/text/src/Plugin/Field/FieldWidget/TextfieldWidget.php
+++ b/core/modules/text/src/Plugin/Field/FieldWidget/TextfieldWidget.php
@@ -37,7 +37,7 @@ public function formElement(FieldItemListInterface $items, $delta, array $elemen
    * {@inheritdoc}
    */
   public function errorElement(array $element, ConstraintViolationInterface $violation, array $form, FormStateInterface $form_state) {
-    if ($violation->arrayPropertyPath == array('format') && isset($element['format']['#access']) && !$element['format']['#access']) {
+    if ($violation->arrayPropertyPath == ['format'] && isset($element['format']['#access']) && !$element['format']['#access']) {
       // Ignore validation errors for formats if formats may not be changed,
       // i.e. when existing formats become invalid. See filter_process_format().
       return FALSE;
diff --git a/core/modules/text/src/Plugin/migrate/cckfield/TextField.php b/core/modules/text/src/Plugin/migrate/cckfield/TextField.php
index 89475ff..24dd450 100644
--- a/core/modules/text/src/Plugin/migrate/cckfield/TextField.php
+++ b/core/modules/text/src/Plugin/migrate/cckfield/TextField.php
@@ -87,11 +87,11 @@ public function processCckFieldValues(MigrationInterface $migration, $field_name
       ];
     }
 
-    $process = array(
+    $process = [
       'plugin' => 'iterator',
       'source' => $field_name,
       'process' => $process,
-    );
+    ];
     $migration->setProcessOfProperty($field_name, $process);
   }
 
diff --git a/core/modules/text/src/Tests/TextFieldTest.php b/core/modules/text/src/Tests/TextFieldTest.php
index 993346a..5bd6d6f 100644
--- a/core/modules/text/src/Tests/TextFieldTest.php
+++ b/core/modules/text/src/Tests/TextFieldTest.php
@@ -26,7 +26,7 @@ class TextFieldTest extends StringFieldTest {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer filters'));
+    $this->adminUser = $this->drupalCreateUser(['administer filters']);
   }
 
   // Test fields.
@@ -38,14 +38,14 @@ function testTextFieldValidation() {
     // Create a field with settings to validate.
     $max_length = 3;
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => 'text',
-      'settings' => array(
+      'settings' => [
         'max_length' => $max_length,
-      )
-    ));
+      ]
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -72,11 +72,11 @@ function testTextFieldValidation() {
   function testRequiredLongTextWithFileUpload() {
     // Create a text field.
     $text_field_name = 'text_long';
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $text_field_name,
       'entity_type' => 'entity_test',
       'type' => 'text_with_summary',
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -87,11 +87,11 @@ function testRequiredLongTextWithFileUpload() {
 
     // Create a file field.
     $file_field_name = 'file_field';
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $file_field_name,
       'entity_type' => 'entity_test',
       'type' => 'file'
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -100,12 +100,12 @@ function testRequiredLongTextWithFileUpload() {
     ])->save();
 
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($text_field_name, array(
+      ->setComponent($text_field_name, [
         'type' => 'text_textarea_with_summary',
-      ))
-      ->setComponent($file_field_name, array(
+      ])
+      ->setComponent($file_field_name, [
         'type' => 'file_generic',
-      ))
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
       ->setComponent($text_field_name)
@@ -116,9 +116,9 @@ function testRequiredLongTextWithFileUpload() {
     $edit['files[file_field_0]'] = drupal_realpath($test_file->uri);
     $this->drupalPostForm('entity_test/add', $edit, 'Upload');
     $this->assertResponse(200);
-    $edit = array(
+    $edit = [
       'text_long[0][value]' => 'Long text'
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, 'Save');
     $this->assertResponse(200);
     $this->drupalGet('entity_test/1');
@@ -150,11 +150,11 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
 
     // Create a field.
     $field_name = Unicode::strtolower($this->randomMachineName());
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'entity_test',
       'type' => $field_type
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
@@ -162,9 +162,9 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
       'label' => $this->randomMachineName() . '_label',
     ])->save();
     entity_get_form_display('entity_test', 'entity_test', 'default')
-      ->setComponent($field_name, array(
+      ->setComponent($field_name, [
         'type' => $widget_type,
-      ))
+      ])
       ->save();
     entity_get_display('entity_test', 'entity_test', 'full')
       ->setComponent($field_name)
@@ -174,7 +174,7 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
     $this->drupalLogin($this->adminUser);
     foreach (filter_formats() as $format) {
       if (!$format->isFallbackFormat()) {
-        $this->drupalPostForm('admin/config/content/formats/manage/' . $format->id() . '/disable', array(), t('Disable'));
+        $this->drupalPostForm('admin/config/content/formats/manage/' . $format->id() . '/disable', [], t('Disable'));
       }
     }
     $this->drupalLogin($this->webUser);
@@ -187,13 +187,13 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
 
     // Submit with data that should be filtered.
     $value = '<em>' . $this->randomMachineName() . '</em>';
-    $edit = array(
+    $edit = [
       "{$field_name}[0][value]" => $value,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     preg_match('|entity_test/manage/(\d+)|', $this->url, $match);
     $id = $match[1];
-    $this->assertText(t('entity_test @id has been created.', array('@id' => $id)), 'Entity was created');
+    $this->assertText(t('entity_test @id has been created.', ['@id' => $id]), 'Entity was created');
 
     // Display the entity.
     $entity = EntityTest::load($id);
@@ -206,10 +206,10 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
     // Create a new text format that does not escape HTML, and grant the user
     // access to it.
     $this->drupalLogin($this->adminUser);
-    $edit = array(
+    $edit = [
       'format' => Unicode::strtolower($this->randomMachineName()),
       'name' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('admin/config/content/formats/add', $edit, t('Save configuration'));
     filter_formats_reset();
     $format = FilterFormat::load($edit['format']);
@@ -217,7 +217,7 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
     $permission = $format->getPermissionName();
     $roles = $this->webUser->getRoles();
     $rid = $roles[0];
-    user_role_grant_permissions($rid, array($permission));
+    user_role_grant_permissions($rid, [$permission]);
     $this->drupalLogin($this->webUser);
 
     // Display edition form.
@@ -227,14 +227,14 @@ function _testTextfieldWidgetsFormatted($field_type, $widget_type) {
     $this->assertFieldByName("{$field_name}[0][format]", NULL, 'Format selector is displayed');
 
     // Edit and change the text format to the new one that was created.
-    $edit = array(
+    $edit = [
       "{$field_name}[0][format]" => $format_id,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText(t('entity_test @id has been updated.', array('@id' => $id)), 'Entity was updated');
+    $this->assertText(t('entity_test @id has been updated.', ['@id' => $id]), 'Entity was updated');
 
     // Display the entity.
-    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache(array($id));
+    $this->container->get('entity.manager')->getStorage('entity_test')->resetCache([$id]);
     $entity = EntityTest::load($id);
     $display = entity_get_display($entity->getEntityTypeId(), $entity->bundle(), 'full');
     $content = $display->build($entity);
diff --git a/core/modules/text/tests/src/Kernel/TextFormatterTest.php b/core/modules/text/tests/src/Kernel/TextFormatterTest.php
index 747a06f..c75ac34 100644
--- a/core/modules/text/tests/src/Kernel/TextFormatterTest.php
+++ b/core/modules/text/tests/src/Kernel/TextFormatterTest.php
@@ -33,7 +33,7 @@ class TextFormatterTest extends EntityKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('text');
+  public static $modules = ['text'];
 
   /**
    * {@inheritdoc}
@@ -41,23 +41,23 @@ class TextFormatterTest extends EntityKernelTestBase {
   protected function setUp() {
     parent::setUp();
 
-    FilterFormat::create(array(
+    FilterFormat::create([
       'format' => 'my_text_format',
       'name' => 'My text format',
-      'filters' => array(
-        'filter_autop' => array(
+      'filters' => [
+        'filter_autop' => [
           'module' => 'filter',
           'status' => TRUE,
-        ),
-      ),
-    ))->save();
+        ],
+      ],
+    ])->save();
 
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => 'formatted_text',
       'entity_type' => $this->entityType,
       'type' => 'text',
-      'settings' => array(),
-    ))->save();
+      'settings' => [],
+    ])->save();
     FieldConfig::create([
       'entity_type' => $this->entityType,
       'bundle' => $this->bundle,
@@ -70,28 +70,28 @@ protected function setUp() {
    * Tests all text field formatters.
    */
   public function testFormatters() {
-    $formatters = array(
+    $formatters = [
       'text_default',
       'text_trimmed',
       'text_summary_or_trimmed',
-    );
+    ];
 
     // Create the entity to be referenced.
     $entity = $this->container->get('entity_type.manager')
       ->getStorage($this->entityType)
-      ->create(array('name' => $this->randomMachineName()));
-    $entity->formatted_text = array(
+      ->create(['name' => $this->randomMachineName()]);
+    $entity->formatted_text = [
       'value' => 'Hello, world!',
       'format' => 'my_text_format',
-    );
+    ];
     $entity->save();
 
     foreach ($formatters as $formatter) {
       // Verify the text field formatter's render array.
-      $build = $entity->get('formatted_text')->view(array('type' => $formatter));
+      $build = $entity->get('formatted_text')->view(['type' => $formatter]);
       \Drupal::service('renderer')->renderRoot($build[0]);
       $this->assertEqual($build[0]['#markup'], "<p>Hello, world!</p>\n");
-      $this->assertEqual($build[0]['#cache']['tags'], FilterFormat::load('my_text_format')->getCacheTags(), format_string('The @formatter formatter has the expected cache tags when formatting a formatted text field.', array('@formatter' => $formatter)));
+      $this->assertEqual($build[0]['#cache']['tags'], FilterFormat::load('my_text_format')->getCacheTags(), format_string('The @formatter formatter has the expected cache tags when formatting a formatted text field.', ['@formatter' => $formatter]));
     }
   }
 
diff --git a/core/modules/text/tests/src/Kernel/TextSummaryTest.php b/core/modules/text/tests/src/Kernel/TextSummaryTest.php
index abc0b68..62464e3 100644
--- a/core/modules/text/tests/src/Kernel/TextSummaryTest.php
+++ b/core/modules/text/tests/src/Kernel/TextSummaryTest.php
@@ -12,12 +12,12 @@
  */
 class TextSummaryTest extends KernelTestBase {
 
-  public static $modules = array('system', 'user', 'filter', 'text');
+  public static $modules = ['system', 'user', 'filter', 'text'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('text'));
+    $this->installConfig(['text']);
   }
 
   /**
@@ -50,25 +50,25 @@ function testLongSentence() {
    * Test various summary length edge cases.
    */
   function testLength() {
-    FilterFormat::create(array(
+    FilterFormat::create([
       'format' => 'autop',
-      'filters' => array(
-        'filter_autop' => array(
+      'filters' => [
+        'filter_autop' => [
           'status' => 1,
-        ),
-      ),
-    ))->save();
-    FilterFormat::create(array(
+        ],
+      ],
+    ])->save();
+    FilterFormat::create([
       'format' => 'autop_correct',
-      'filters' => array(
-        'filter_autop' => array(
+      'filters' => [
+        'filter_autop' => [
           'status' => 1,
-        ),
-        'filter_htmlcorrector' => array(
+        ],
+        'filter_htmlcorrector' => [
           'status' => 1,
-        ),
-      ),
-    ))->save();
+        ],
+      ],
+    ])->save();
 
     // This string tests a number of edge cases.
     $text = "<p>\nHi\n</p>\n<p>\nfolks\n<br />\n!\n</p>";
@@ -207,10 +207,10 @@ function testLength() {
    */
   function assertTextSummary($text, $expected, $format = NULL, $size = NULL) {
     $summary = text_summary($text, $format, $size);
-    $this->assertIdentical($summary, $expected, format_string('<pre style="white-space: pre-wrap">@actual</pre> is identical to <pre style="white-space: pre-wrap">@expected</pre>', array(
+    $this->assertIdentical($summary, $expected, format_string('<pre style="white-space: pre-wrap">@actual</pre> is identical to <pre style="white-space: pre-wrap">@expected</pre>', [
       '@actual' => $summary,
       '@expected' => $expected,
-    )));
+    ]));
   }
 
 }
diff --git a/core/modules/text/tests/src/Kernel/TextWithSummaryItemTest.php b/core/modules/text/tests/src/Kernel/TextWithSummaryItemTest.php
index fc02daa..a48c191 100644
--- a/core/modules/text/tests/src/Kernel/TextWithSummaryItemTest.php
+++ b/core/modules/text/tests/src/Kernel/TextWithSummaryItemTest.php
@@ -21,7 +21,7 @@ class TextWithSummaryItemTest extends FieldKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('filter');
+  public static $modules = ['filter'];
 
   /**
    * Field storage entity.
@@ -44,11 +44,11 @@ protected function setUp() {
     $this->installEntitySchema('entity_test_rev');
 
     // Create the necessary formats.
-    $this->installConfig(array('filter'));
-    FilterFormat::create(array(
+    $this->installConfig(['filter']);
+    FilterFormat::create([
       'format' => 'no_filters',
-      'filters' => array(),
-    ))->save();
+      'filters' => [],
+    ])->save();
   }
 
   /**
@@ -100,14 +100,14 @@ public function testCrudAndUpdate() {
    */
   protected function createField($entity_type) {
     // Create a field .
-    $this->fieldStorage = FieldStorageConfig::create(array(
+    $this->fieldStorage = FieldStorageConfig::create([
       'field_name' => 'summary_field',
       'entity_type' => $entity_type,
       'type' => 'text_with_summary',
-      'settings' => array(
+      'settings' => [
         'max_length' => 10,
-      )
-    ));
+      ]
+    ]);
     $this->fieldStorage->save();
     $this->field = FieldConfig::create([
       'field_storage' => $this->fieldStorage,
diff --git a/core/modules/text/tests/src/Unit/Migrate/TextFieldTest.php b/core/modules/text/tests/src/Unit/Migrate/TextFieldTest.php
index 323fbce..d7dfcc6 100644
--- a/core/modules/text/tests/src/Unit/Migrate/TextFieldTest.php
+++ b/core/modules/text/tests/src/Unit/Migrate/TextFieldTest.php
@@ -71,12 +71,12 @@ public function testProcessFilteredTextFieldValues() {
    * @covers ::processCckFieldValues
    */
   public function testProcessBooleanTextImplicitValues() {
-    $info = array(
+    $info = [
       'widget_type' => 'optionwidgets_onoff',
-      'global_settings' => array(
+      'global_settings' => [
         'allowed_values' => "foo\nbar",
-      )
-    );
+      ]
+    ];
     $this->plugin->processCckFieldValues($this->migration, 'field', $info);
 
     $expected = [
@@ -96,12 +96,12 @@ public function testProcessBooleanTextImplicitValues() {
    * @covers ::processCckFieldValues
    */
   public function testProcessBooleanTextExplicitValues() {
-    $info = array(
+    $info = [
       'widget_type' => 'optionwidgets_onoff',
-      'global_settings' => array(
+      'global_settings' => [
         'allowed_values' => "foo|Foo\nbaz|Baz",
-      )
-    );
+      ]
+    ];
     $this->plugin->processCckFieldValues($this->migration, 'field', $info);
 
     $expected = [
@@ -121,43 +121,43 @@ public function testProcessBooleanTextExplicitValues() {
    * Data provider for testGetFieldType().
    */
   public function getFieldTypeProvider() {
-    return array(
-      array('string_long', 'text_textfield', array(
+    return [
+      ['string_long', 'text_textfield', [
         'text_processing' => FALSE,
-      )),
-      array('string', 'text_textfield', array(
+      ]],
+      ['string', 'text_textfield', [
         'text_processing' => FALSE,
         'max_length' => 128,
-      )),
-      array('string_long', 'text_textfield', array(
+      ]],
+      ['string_long', 'text_textfield', [
         'text_processing' => FALSE,
         'max_length' => 4096,
-      )),
-      array('text_long', 'text_textfield', array(
+      ]],
+      ['text_long', 'text_textfield', [
         'text_processing' => TRUE,
-      )),
-      array('text', 'text_textfield', array(
+      ]],
+      ['text', 'text_textfield', [
         'text_processing' => TRUE,
         'max_length' => 128,
-      )),
-      array('text_long', 'text_textfield', array(
+      ]],
+      ['text_long', 'text_textfield', [
         'text_processing' => TRUE,
         'max_length' => 4096,
-      )),
-      array('list_string', 'optionwidgets_buttons'),
-      array('list_string', 'optionwidgets_select'),
-      array('boolean', 'optionwidgets_onoff'),
-      array('text_long', 'text_textarea'),
-      array(NULL, 'undefined'),
-    );
+      ]],
+      ['list_string', 'optionwidgets_buttons'],
+      ['list_string', 'optionwidgets_select'],
+      ['boolean', 'optionwidgets_onoff'],
+      ['text_long', 'text_textarea'],
+      [NULL, 'undefined'],
+    ];
   }
 
   /**
    * @covers ::getFieldType
    * @dataProvider getFieldTypeProvider
    */
-  public function testGetFieldType($expected_type, $widget_type, array $settings = array()) {
-    $row = new Row(array('widget_type' => $widget_type), array('widget_type' => array()));
+  public function testGetFieldType($expected_type, $widget_type, array $settings = []) {
+    $row = new Row(['widget_type' => $widget_type], ['widget_type' => []]);
     $row->setSourceProperty('global_settings', $settings);
     $this->assertSame($expected_type, $this->plugin->getFieldType($row));
   }
diff --git a/core/modules/text/text.module b/core/modules/text/text.module
index 906b461..1932e61 100644
--- a/core/modules/text/text.module
+++ b/core/modules/text/text.module
@@ -18,11 +18,11 @@ function text_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.text':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Text module allows you to create short and long text fields with optional summaries. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":text_documentation">online documentation for the Text module</a>.', array(':field' => \Drupal::url('help.page', array('name' => 'field')), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#', ':text_documentation' => 'https://www.drupal.org/documentation/modules/text')) . '</p>';
+      $output .= '<p>' . t('The Text module allows you to create short and long text fields with optional summaries. See the <a href=":field">Field module help</a> and the <a href=":field_ui">Field UI help</a> pages for general information on fields and how to create and manage them. For more information, see the <a href=":text_documentation">online documentation for the Text module</a>.', [':field' => \Drupal::url('help.page', ['name' => 'field']), ':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#', ':text_documentation' => 'https://www.drupal.org/documentation/modules/text']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Managing and displaying text fields') . '</dt>';
-      $output .= '<dd>' . t('The <em>settings</em> and <em>display</em> of the text field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', array(':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', array('name' => 'field_ui')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('The <em>settings</em> and <em>display</em> of the text field can be configured separately. See the <a href=":field_ui">Field UI help</a> for more information on how to manage fields and their display.', [':field_ui' => (\Drupal::moduleHandler()->moduleExists('field_ui')) ? \Drupal::url('help.page', ['name' => 'field_ui']) : '#']) . '</dd>';
       $output .= '<dt>' . t('Creating short text fields') . '</dt>';
       $output .= '<dd>' . t('If you choose <em>Text (plain)</em> or <em>Text (formatted)</em> as the field type on the <em>Manage fields</em> page, then a field with a single row is displayed. You can change the maximum text length in the <em>Field settings</em> when you set up the field.') . '</dd>';
       $output .= '<dt>' . t('Creating long text fields') . '</dt>';
@@ -32,7 +32,7 @@ function text_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<dt>' . t('Displaying summaries instead of trimmed text') . '</dt>';
       $output .= '<dd>' . t('As an alternative to using a trimmed version of the text, you can enter a separate summary by choosing the <em>Text (formatted, long, with summary)</em> field type on the <em>Manage fields</em> page. Even when <em>Summary input</em> is enabled, and summaries are provided, you can display <em>trimmed</em> text nonetheless by choosing the appropriate format on the <em>Manage display</em> page.') . '</dd>';
       $output .= '<dt>' . t('Using text formats and editors') . '</dt>';
-      $output .= '<dd>' . t('If you choose <em>Text (plain)</em> or <em>Text (plain, long)</em> you restrict the input to <em>Plain text</em> only. If you choose <em>Text (formatted)</em>, <em>Text (formatted, long)</em>, or <em>Text (formatted, long with summary)</em> you allow users to write formatted text. Which options are available to individual users depends on the settings on the <a href=":formats">Text formats and editors page</a>.', array(':formats' => \Drupal::url('filter.admin_overview'))) . '</dd>';
+      $output .= '<dd>' . t('If you choose <em>Text (plain)</em> or <em>Text (plain, long)</em> you restrict the input to <em>Plain text</em> only. If you choose <em>Text (formatted)</em>, <em>Text (formatted, long)</em>, or <em>Text (formatted, long with summary)</em> you allow users to write formatted text. Which options are available to individual users depends on the settings on the <a href=":formats">Text formats and editors page</a>.', [':formats' => \Drupal::url('filter.admin_overview')]) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -115,13 +115,13 @@ function text_summary($text, $format = NULL, $size = NULL) {
   $reversed = strrev($summary);
 
   // Build an array of arrays of break points grouped by preference.
-  $break_points = array();
+  $break_points = [];
 
   // A paragraph near the end of sliced summary is most preferable.
-  $break_points[] = array('</p>' => 0);
+  $break_points[] = ['</p>' => 0];
 
   // If no complete paragraph then treat line breaks as paragraphs.
-  $line_breaks = array('<br />' => 6, '<br>' => 4);
+  $line_breaks = ['<br />' => 6, '<br>' => 4];
   // Newline only indicates a line break if line break converter
   // filter is present.
   if (isset($format) && $filters->has('filter_autop') && $filters->get('filter_autop')->status) {
@@ -130,7 +130,7 @@ function text_summary($text, $format = NULL, $size = NULL) {
   $break_points[] = $line_breaks;
 
   // If the first paragraph is too long, split at the end of a sentence.
-  $break_points[] = array('. ' => 1, '! ' => 1, '? ' => 1, '。' => 0, '؟ ' => 1);
+  $break_points[] = ['. ' => 1, '! ' => 1, '? ' => 1, '。' => 0, '؟ ' => 1];
 
   // Iterate over the groups of break points until a break point is found.
   foreach ($break_points as $points) {
diff --git a/core/modules/toolbar/src/Element/Toolbar.php b/core/modules/toolbar/src/Element/Toolbar.php
index 69a53db..d92330b 100644
--- a/core/modules/toolbar/src/Element/Toolbar.php
+++ b/core/modules/toolbar/src/Element/Toolbar.php
@@ -18,35 +18,35 @@ class Toolbar extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#pre_render' => array(
-        array($class, 'preRenderToolbar'),
-      ),
+    return [
+      '#pre_render' => [
+        [$class, 'preRenderToolbar'],
+      ],
       '#theme' => 'toolbar',
-      '#attached' => array(
-        'library' => array(
+      '#attached' => [
+        'library' => [
           'toolbar/toolbar',
-        ),
-      ),
+        ],
+      ],
       // Metadata for the toolbar wrapping element.
-      '#attributes' => array(
+      '#attributes' => [
         // The id cannot be simply "toolbar" or it will clash with the
         // simpletest tests listing which produces a checkbox with attribute
         // id="toolbar".
         'id' => 'toolbar-administration',
         'role' => 'group',
         'aria-label' => $this->t('Site administration toolbar'),
-      ),
+      ],
       // Metadata for the administration bar.
-      '#bar' => array(
+      '#bar' => [
         '#heading' => $this->t('Toolbar items'),
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'toolbar-bar',
           'role' => 'navigation',
           'aria-label' => $this->t('Toolbar items'),
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
@@ -68,7 +68,7 @@ public static function preRenderToolbar($element) {
     // toolbar presentation.
     $breakpoints = static::breakpointManager()->getBreakpointsByGroup('toolbar');
     if (!empty($breakpoints)) {
-      $media_queries = array();
+      $media_queries = [];
       foreach ($breakpoints as $id => $breakpoint) {
         $media_queries[$id] = $breakpoint->getMediaQuery();
       }
@@ -82,7 +82,7 @@ public static function preRenderToolbar($element) {
     // Allow for altering of hook_toolbar().
     $module_handler->alter('toolbar', $items);
     // Sort the children.
-    uasort($items, array('\Drupal\Component\Utility\SortArray', 'sortByWeightProperty'));
+    uasort($items, ['\Drupal\Component\Utility\SortArray', 'sortByWeightProperty']);
 
     // Merge in the original toolbar values.
     $element = array_merge($element, $items);
diff --git a/core/modules/toolbar/src/Element/ToolbarItem.php b/core/modules/toolbar/src/Element/ToolbarItem.php
index e39295f..79cbed2 100644
--- a/core/modules/toolbar/src/Element/ToolbarItem.php
+++ b/core/modules/toolbar/src/Element/ToolbarItem.php
@@ -19,16 +19,16 @@ class ToolbarItem extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#pre_render' => array(
-        array($class, 'preRenderToolbarItem'),
-      ),
-      'tab' => array(
+    return [
+      '#pre_render' => [
+        [$class, 'preRenderToolbarItem'],
+      ],
+      'tab' => [
         '#type' => 'link',
         '#title' => NULL,
         '#url' => Url::fromRoute('<front>'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -47,33 +47,33 @@ public static function preRenderToolbarItem($element) {
     $id = $element['#id'];
 
     // Provide attributes for a toolbar item.
-    $attributes = array(
+    $attributes = [
       'id' => $id,
-    );
+    ];
 
     // If tray content is present, markup the tray and its associated trigger.
     if (!empty($element['tray'])) {
       // Provide attributes necessary for trays.
-      $attributes += array(
+      $attributes += [
         'data-toolbar-tray' => $id . '-tray',
         'aria-owns' => $id . '-tray',
         'role' => 'button',
         'aria-pressed' => 'false',
-      );
+      ];
 
       // Merge in module-provided attributes.
-      $element['tab'] += array('#attributes' => array());
+      $element['tab'] += ['#attributes' => []];
       $element['tab']['#attributes'] += $attributes;
       $element['tab']['#attributes']['class'][] = 'trigger';
 
       // Provide attributes for the tray theme wrapper.
-      $attributes = array(
+      $attributes = [
         'id' => $id . '-tray',
         'data-toolbar-tray' => $id . '-tray',
-      );
+      ];
       // Merge in module-provided attributes.
       if (!isset($element['tray']['#wrapper_attributes'])) {
-        $element['tray']['#wrapper_attributes'] = array();
+        $element['tray']['#wrapper_attributes'] = [];
       }
       $element['tray']['#wrapper_attributes'] += $attributes;
       $element['tray']['#wrapper_attributes']['class'][] = 'toolbar-tray';
diff --git a/core/modules/toolbar/src/Menu/ToolbarMenuLinkTree.php b/core/modules/toolbar/src/Menu/ToolbarMenuLinkTree.php
index 873ebec..24ef4e7 100644
--- a/core/modules/toolbar/src/Menu/ToolbarMenuLinkTree.php
+++ b/core/modules/toolbar/src/Menu/ToolbarMenuLinkTree.php
@@ -15,7 +15,7 @@ class ToolbarMenuLinkTree extends MenuLinkTree {
   public function build(array $tree, $level = 0) {
     if ($level == 0) {
       if (!$tree) {
-        return array();
+        return [];
       }
       $build = parent::build($tree, $level);
 
diff --git a/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php b/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
index dde6b51..e78f463 100644
--- a/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
+++ b/core/modules/toolbar/src/Tests/ToolbarAdminMenuTest.php
@@ -53,12 +53,12 @@ class ToolbarAdminMenuTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'block', 'menu_ui', 'user', 'taxonomy', 'toolbar', 'language', 'test_page_test', 'locale');
+  public static $modules = ['node', 'block', 'menu_ui', 'user', 'taxonomy', 'toolbar', 'language', 'test_page_test', 'locale'];
 
   protected function setUp() {
     parent::setUp();
 
-    $perms = array(
+    $perms = [
       'access toolbar',
       'access administration pages',
       'administer site configuration',
@@ -75,7 +75,7 @@ protected function setUp() {
       'administer taxonomy',
       'administer languages',
       'translate interface',
-    );
+    ];
 
     // Create an administrative user and log it in.
     $this->adminUser = $this->drupalCreateUser($perms);
@@ -99,11 +99,11 @@ protected function setUp() {
    */
   function testModuleStatusChangeSubtreesHashCacheClear() {
     // Uninstall a module.
-    $edit = array();
+    $edit = [];
     $edit['uninstall[taxonomy]'] = TRUE;
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     // Confirm the uninstall form.
-    $this->drupalPostForm(NULL, array(), t('Uninstall'));
+    $this->drupalPostForm(NULL, [], t('Uninstall'));
     $this->rebuildContainer();
 
     // Assert that the subtrees hash has been altered because the subtrees
@@ -111,7 +111,7 @@ function testModuleStatusChangeSubtreesHashCacheClear() {
     $this->assertDifferentHash();
 
     // Enable a module.
-    $edit = array();
+    $edit = [];
     $edit['modules[taxonomy][enable]'] = TRUE;
     $this->drupalPostForm('admin/modules', $edit, t('Install'));
     $this->rebuildContainer();
@@ -129,7 +129,7 @@ function testMenuLinkUpdateSubtreesHashCacheClear() {
     $admin_menu_link_id = 'system.admin_config_development';
 
     // Disable the link.
-    $edit = array();
+    $edit = [];
     $edit['enabled'] = FALSE;
     $this->drupalPostForm("admin/structure/menu/link/" . $admin_menu_link_id . "/edit", $edit, t('Save'));
     $this->assertResponse(200);
@@ -150,7 +150,7 @@ function testUserRoleUpdateSubtreesHashCacheClear() {
     unset($all_rids[array_search(RoleInterface::AUTHENTICATED_ID, $all_rids)]);
     $rid = reset($all_rids);
 
-    $edit = array();
+    $edit = [];
     $edit[$rid . '[administer taxonomy]'] = FALSE;
     $this->drupalPostForm('admin/people/permissions', $edit, t('Save permissions'));
 
@@ -179,10 +179,10 @@ function testUserRoleUpdateSubtreesHashCacheClear() {
 
     $this->hash = $this->getSubtreesHash();
 
-    $rid = $this->drupalCreateRole(array('administer content types',));
+    $rid = $this->drupalCreateRole(['administer content types',]);
 
     // Assign the role to the user.
-    $this->drupalPostForm('user/' . $this->adminUser->id() . '/edit', array("roles[$rid]" => $rid), t('Save'));
+    $this->drupalPostForm('user/' . $this->adminUser->id() . '/edit', ["roles[$rid]" => $rid], t('Save'));
     $this->assertText(t('The changes have been saved.'));
 
     // Assert that the subtrees hash has been altered because the subtrees
@@ -214,7 +214,7 @@ function testNonCurrentUserAccountUpdates() {
 
     // adminUser2 will add a role to adminUser.
     $this->drupalLogin($this->adminUser2);
-    $rid = $this->drupalCreateRole(array('administer content types',));
+    $rid = $this->drupalCreateRole(['administer content types',]);
 
     // Get the subtree hash for adminUser2 to check later that it has not
     // changed. Request a new page to refresh the drupalSettings object.
@@ -223,7 +223,7 @@ function testNonCurrentUserAccountUpdates() {
     $admin_user_2_hash = $this->getSubtreesHash();
 
     // Assign the role to the user.
-    $this->drupalPostForm('user/' . $admin_user_id . '/edit', array("roles[$rid]" => $rid), t('Save'));
+    $this->drupalPostForm('user/' . $admin_user_id . '/edit', ["roles[$rid]" => $rid], t('Save'));
     $this->assertText(t('The changes have been saved.'));
 
     // Log in adminUser and assert that the subtrees hash has changed.
@@ -246,7 +246,7 @@ function testNonCurrentUserAccountUpdates() {
   function testLocaleTranslationSubtreesHashCacheClear() {
     $admin_user = $this->adminUser;
     // User to translate and delete string.
-    $translate_user = $this->drupalCreateUser(array('translate interface', 'access administration pages'));
+    $translate_user = $this->drupalCreateUser(['translate interface', 'access administration pages']);
 
     // Create a new language with the langcode 'xx'.
     $langcode = 'xx';
@@ -257,14 +257,14 @@ function testLocaleTranslationSubtreesHashCacheClear() {
 
     // Add custom language.
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
-    t($name, array(), array('langcode' => $langcode));
+    t($name, [], ['langcode' => $langcode]);
     // Reset locale cache.
     $this->container->get('string_translation')->reset();
     $this->assertRaw('"edit-languages-' . $langcode . '-weight"', 'Language code found.');
@@ -285,11 +285,11 @@ function testLocaleTranslationSubtreesHashCacheClear() {
     // should create a new menu hash if the toolbar subtrees cache is correctly
     // invalidated.
     $this->drupalLogin($translate_user);
-    $search = array(
+    $search = [
       'string' => 'Search and metadata',
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     $this->assertNoText(t('No strings available'));
     $this->assertText($name, 'Search found the string as untranslated.');
@@ -298,9 +298,9 @@ function testLocaleTranslationSubtreesHashCacheClear() {
     // Translate the string to a random string.
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $translation,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
     $this->assertText(t('The strings have been saved.'), 'The strings have been saved.');
     $this->assertUrl(\Drupal::url('locale.translate_page', [], ['absolute' => TRUE]), [], 'Correct page redirection.');
@@ -350,7 +350,7 @@ function testLanguageSwitching() {
     $this->rebuildContainer();
 
     // Get a page with the new language langcode in the URL.
-    $this->drupalGet('test-page', array('language' => $language));
+    $this->drupalGet('test-page', ['language' => $language]);
     // Assert different hash.
     $new_subtree_hash = $this->getSubtreesHash();
 
diff --git a/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php b/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
index 8fa2bed5..a98dacf 100644
--- a/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
+++ b/core/modules/toolbar/src/Tests/ToolbarMenuTranslationTest.php
@@ -23,13 +23,13 @@ class ToolbarMenuTranslationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('toolbar', 'toolbar_test', 'locale', 'locale_test');
+  public static $modules = ['toolbar', 'toolbar_test', 'locale', 'locale_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create an administrative user and log it in.
-    $this->adminUser = $this->drupalCreateUser(array('access toolbar', 'translate interface', 'administer languages', 'access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['access toolbar', 'translate interface', 'administer languages', 'access administration pages']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -50,11 +50,11 @@ function testToolbarClasses() {
     $this->drupalGet($langcode . '/admin/structure');
 
     // Search for the menu item.
-    $search = array(
+    $search = [
       'string' => $menu_item,
       'langcode' => $langcode,
       'translation' => 'untranslated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // Make sure will be able to translate the menu item.
     $this->assertNoText('No strings available.', 'Search found the menu item as untranslated.');
@@ -67,17 +67,17 @@ function testToolbarClasses() {
     $menu_item_translated = $this->randomMachineName();
     $textarea = current($this->xpath('//textarea'));
     $lid = (string) $textarea[0]['name'];
-    $edit = array(
+    $edit = [
       $lid => $menu_item_translated,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $edit, t('Save translations'));
 
     // Search for the translated menu item.
-    $search = array(
+    $search = [
       'string' => $menu_item,
       'langcode' => $langcode,
       'translation' => 'translated',
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/translate', $search, t('Filter'));
     // Make sure the menu item string was translated.
     $this->assertText($menu_item_translated, 'Search found the menu item as translated: ' . $menu_item_translated . '.');
diff --git a/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module b/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
index 4a82ca7..323af16 100644
--- a/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
+++ b/core/modules/toolbar/tests/modules/toolbar_test/toolbar_test.module
@@ -12,38 +12,38 @@
  */
 function toolbar_test_toolbar() {
 
-  $items['testing'] = array(
+  $items['testing'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => t('Test tab'),
       '#url' => Url::fromRoute('<front>'),
-      '#options' => array(
-        'attributes' => array(
+      '#options' => [
+        'attributes' => [
           'id' => 'toolbar-tab-testing',
           'title' => t('Test tab'),
-        ),
-      ),
-    ),
-    'tray' => array(
+        ],
+      ],
+    ],
+    'tray' => [
       '#heading' => t('Test tray'),
-      '#wrapper_attributes' => array(
+      '#wrapper_attributes' => [
         'id' => 'toolbar-tray-testing',
-      ),
-      'content' => array(
+      ],
+      'content' => [
         '#theme' => 'item_list',
-        '#items' => array(
-          \Drupal::l(t('link 1'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 1 title')))),
-          \Drupal::l(t('link 2'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 2 title')))),
-          \Drupal::l(t('link 3'), new Url('<front>', [], array('attributes' => array('title' => 'Test link 3 title')))),
-        ),
-        '#attributes' => array(
-          'class' => array('toolbar-menu'),
-        ),
-      ),
-    ),
+        '#items' => [
+          \Drupal::l(t('link 1'), new Url('<front>', [], ['attributes' => ['title' => 'Test link 1 title']])),
+          \Drupal::l(t('link 2'), new Url('<front>', [], ['attributes' => ['title' => 'Test link 2 title']])),
+          \Drupal::l(t('link 3'), new Url('<front>', [], ['attributes' => ['title' => 'Test link 3 title']])),
+        ],
+        '#attributes' => [
+          'class' => ['toolbar-menu'],
+        ],
+      ],
+    ],
     '#weight' => 50,
-  );
+  ];
 
   return $items;
 }
diff --git a/core/modules/toolbar/tests/src/Functional/ToolbarHookToolbarTest.php b/core/modules/toolbar/tests/src/Functional/ToolbarHookToolbarTest.php
index 1bf6e82..6369946 100644
--- a/core/modules/toolbar/tests/src/Functional/ToolbarHookToolbarTest.php
+++ b/core/modules/toolbar/tests/src/Functional/ToolbarHookToolbarTest.php
@@ -23,13 +23,13 @@ class ToolbarHookToolbarTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('toolbar', 'toolbar_test', 'test_page_test');
+  public static $modules = ['toolbar', 'toolbar_test', 'test_page_test'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create an administrative user and log it in.
-    $this->adminUser = $this->drupalCreateUser(array('access toolbar'));
+    $this->adminUser = $this->drupalCreateUser(['access toolbar']);
     $this->drupalLogin($this->adminUser);
   }
 
diff --git a/core/modules/toolbar/toolbar.api.php b/core/modules/toolbar/toolbar.api.php
index b2d0409..b623082 100644
--- a/core/modules/toolbar/toolbar.api.php
+++ b/core/modules/toolbar/toolbar.api.php
@@ -45,45 +45,45 @@
  * @ingroup toolbar_tabs
  */
 function hook_toolbar() {
-  $items = array();
+  $items = [];
 
   // Add a search field to the toolbar. The search field employs no toolbar
   // module theming functions.
-  $items['global_search'] = array(
+  $items['global_search'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'search',
-      '#attributes' => array(
+      '#attributes' => [
         'placeholder' => t('Search the site'),
-        'class' => array('search-global'),
-      ),
-    ),
+        'class' => ['search-global'],
+      ],
+    ],
     '#weight' => 200,
     // Custom CSS, JS or a library can be associated with the toolbar item.
-    '#attached' => array(
-      'library' => array(
+    '#attached' => [
+      'library' => [
         'search/global',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   // The 'Home' tab is a simple link, which is wrapped in markup associated
   // with a visual tab styling.
-  $items['home'] = array(
+  $items['home'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => t('Home'),
       '#url' => Url::fromRoute('<front>'),
-      '#options' => array(
-        'attributes' => array(
+      '#options' => [
+        'attributes' => [
           'title' => t('Home page'),
-          'class' => array('toolbar-icon', 'toolbar-icon-home'),
-        ),
-      ),
-    ),
+          'class' => ['toolbar-icon', 'toolbar-icon-home'],
+        ],
+      ],
+    ],
     '#weight' => -20,
-  );
+  ];
 
   // A tray may be associated with a tab.
   //
@@ -93,27 +93,27 @@ function hook_toolbar() {
   // The tray should contain a renderable array. An optional #heading property
   // can be passed. This text is written to a heading tag in the tray as a
   // landmark for accessibility.
-  $items['commerce'] = array(
+  $items['commerce'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => t('Shopping cart'),
       '#url' => Url::fromRoute('cart'),
-      '#options' => array(
-        'attributes' => array(
+      '#options' => [
+        'attributes' => [
           'title' => t('Shopping cart'),
-        ),
-      ),
-    ),
-    'tray' => array(
+        ],
+      ],
+    ],
+    'tray' => [
       '#heading' => t('Shopping cart actions'),
-      'shopping_cart' => array(
+      'shopping_cart' => [
         '#theme' => 'item_list',
-        '#items' => array( /* An item list renderable array */ ),
-      ),
-    ),
+        '#items' => [ /* An item list renderable array */ ],
+      ],
+    ],
     '#weight' => 150,
-  );
+  ];
 
   // The tray can be used to render arbitrary content.
   //
@@ -123,28 +123,28 @@ function hook_toolbar() {
   // If the default behavior and styling of a toolbar tray is not desired, one
   // can render content to the toolbar element and apply custom theming and
   // behaviors.
-  $items['user_messages'] = array(
+  $items['user_messages'] = [
     // Include the toolbar_tab_wrapper to style the link like a toolbar tab.
     // Exclude the theme wrapper if custom styling is desired.
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#theme' => 'user_message_toolbar_tab',
-      '#theme_wrappers' => array(),
+      '#theme_wrappers' => [],
       '#title' => t('Messages'),
       '#url' => Url::fromRoute('user.message'),
-      '#options' => array(
-        'attributes' => array(
+      '#options' => [
+        'attributes' => [
           'title' => t('Messages'),
-        ),
-      ),
-    ),
-    'tray' => array(
+        ],
+      ],
+    ],
+    'tray' => [
       '#heading' => t('User messages'),
-      'messages' => array(/* renderable content */),
-    ),
+      'messages' => [/* renderable content */],
+    ],
     '#weight' => 125,
-  );
+  ];
 
   return $items;
 }
diff --git a/core/modules/toolbar/toolbar.module b/core/modules/toolbar/toolbar.module
index 281f3ab..4791f87 100644
--- a/core/modules/toolbar/toolbar.module
+++ b/core/modules/toolbar/toolbar.module
@@ -20,7 +20,7 @@ function toolbar_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.toolbar':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Toolbar module provides a toolbar for site administrators, which displays tabs and trays provided by the Toolbar module itself and other modules. For more information, see the <a href=":toolbar_docs">online documentation for the Toolbar module</a>.', array(':toolbar_docs' => 'https://www.drupal.org/documentation/modules/toolbar')) . '</p>';
+      $output .= '<p>' . t('The Toolbar module provides a toolbar for site administrators, which displays tabs and trays provided by the Toolbar module itself and other modules. For more information, see the <a href=":toolbar_docs">online documentation for the Toolbar module</a>.', [':toolbar_docs' => 'https://www.drupal.org/documentation/modules/toolbar']) . '</p>';
       $output .= '<h4>' . t('Terminology') . '</h4>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Tabs') . '</dt>';
@@ -36,13 +36,13 @@ function toolbar_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function toolbar_theme($existing, $type, $theme, $path) {
-  $items['toolbar'] = array(
+  $items['toolbar'] = [
     'render element' => 'element',
-  );
-  $items['menu__toolbar'] = array(
+  ];
+  $items['menu__toolbar'] = [
     'base hook' => 'menu',
-    'variables' => array('items' => array(), 'attributes' => array()),
-  );
+    'variables' => ['items' => [], 'attributes' => []],
+  ];
 
   return $items;
 }
@@ -53,14 +53,14 @@ function toolbar_theme($existing, $type, $theme, $path) {
  * Add admin toolbar to the top of the page automatically.
  */
 function toolbar_page_top(array &$page_top) {
-  $page_top['toolbar'] = array(
+  $page_top['toolbar'] = [
     '#type' => 'toolbar',
     '#access' => \Drupal::currentUser()->hasPermission('access toolbar'),
     '#cache' => [
       'keys' => ['toolbar'],
       'contexts' => ['user.permissions'],
     ],
-  );
+  ];
 }
 
 /**
@@ -83,9 +83,9 @@ function template_preprocess_toolbar(&$variables) {
 
   // Prepare the trays and tabs for each toolbar item as well as the remainder
   // variable that will hold any non-tray, non-tab elements.
-  $variables['trays'] = array();
-  $variables['tabs'] = array();
-  $variables['remainder'] = array();
+  $variables['trays'] = [];
+  $variables['tabs'] = [];
+  $variables['remainder'] = [];
   foreach (Element::children($element) as $key) {
     // Early rendering to collect the wrapper attributes from
     // ToolbarItem elements.
@@ -94,14 +94,14 @@ function template_preprocess_toolbar(&$variables) {
     }
     // Add the tray.
     if (isset($element[$key]['tray'])) {
-      $attributes = array();
+      $attributes = [];
       if (!empty($element[$key]['tray']['#wrapper_attributes'])) {
         $attributes = $element[$key]['tray']['#wrapper_attributes'];
       }
-      $variables['trays'][$key] = array(
+      $variables['trays'][$key] = [
         'links' => $element[$key]['tray'],
         'attributes' => new Attribute($attributes),
-      );
+      ];
       if (array_key_exists('#heading', $element[$key]['tray'])) {
         $variables['trays'][$key]['label'] = $element[$key]['tray']['#heading'];
       }
@@ -109,22 +109,22 @@ function template_preprocess_toolbar(&$variables) {
 
     // Add the tab.
     if (isset($element[$key]['tab'])) {
-      $attributes = array();
+      $attributes = [];
       // Pass the wrapper attributes along.
       if (!empty($element[$key]['#wrapper_attributes'])) {
         $attributes = $element[$key]['#wrapper_attributes'];
       }
 
-      $variables['tabs'][$key] = array(
+      $variables['tabs'][$key] = [
         'link' => $element[$key]['tab'],
         'attributes' => new Attribute($attributes),
-      );
+      ];
     }
 
     // Add other non-tray, non-tab child elements to the remainder variable for
     // later rendering.
     foreach (Element::children($element[$key]) as $child_key) {
-      if (!in_array($child_key, array('tray', 'tab'))) {
+      if (!in_array($child_key, ['tray', 'tab'])) {
         $variables['remainder'][$key][$child_key] = $element[$key][$child_key];
       }
     }
@@ -136,28 +136,28 @@ function template_preprocess_toolbar(&$variables) {
  */
 function toolbar_toolbar() {
   // The 'Home' tab is a simple link, with no corresponding tray.
-  $items['home'] = array(
+  $items['home'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => t('Back to site'),
       '#url' => Url::fromRoute('<front>'),
-      '#attributes' => array(
+      '#attributes' => [
         'title' => t('Return to site content'),
-        'class' => array('toolbar-icon', 'toolbar-icon-escape-admin'),
+        'class' => ['toolbar-icon', 'toolbar-icon-escape-admin'],
         'data-toolbar-escape-admin' => TRUE,
-      ),
-    ),
-    '#wrapper_attributes' => array(
-      'class' => array('hidden', 'home-toolbar-tab'),
-    ),
-    '#attached' => array(
-      'library' => array(
+      ],
+    ],
+    '#wrapper_attributes' => [
+      'class' => ['hidden', 'home-toolbar-tab'],
+    ],
+    '#attached' => [
+      'library' => [
         'toolbar/toolbar.escapeAdmin',
-      ),
-    ),
+      ],
+    ],
     '#weight' => -20,
-  );
+  ];
 
   // To conserve bandwidth, we only include the top-level links in the HTML.
   // The subtrees are fetched through a JSONP script that is generated at the
@@ -171,38 +171,38 @@ function toolbar_toolbar() {
 
   // The administration element has a link that is themed to correspond to
   // a toolbar tray. The tray contains the full administrative menu of the site.
-  $items['administration'] = array(
+  $items['administration'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => t('Manage'),
       '#url' => Url::fromRoute('system.admin'),
-      '#attributes' => array(
+      '#attributes' => [
         'title' => t('Admin menu'),
-        'class' => array('toolbar-icon', 'toolbar-icon-menu'),
+        'class' => ['toolbar-icon', 'toolbar-icon-menu'],
         // A data attribute that indicates to the client to defer loading of
         // the admin menu subtrees until this tab is activated. Admin menu
         // subtrees will not render to the DOM if this attribute is removed.
         // The value of the attribute is intentionally left blank. Only the
         // presence of the attribute is necessary.
         'data-drupal-subtrees' => '',
-      ),
-    ),
-    'tray' => array(
+      ],
+    ],
+    'tray' => [
       '#heading' => t('Administration menu'),
       '#attached' => $subtrees_attached,
-      'toolbar_administration' => array(
-        '#pre_render' => array(
+      'toolbar_administration' => [
+        '#pre_render' => [
           'toolbar_prerender_toolbar_administration_tray',
-        ),
+        ],
         '#type' => 'container',
-        '#attributes' => array(
-          'class' => array('toolbar-menu-administration'),
-        ),
-      ),
-    ),
+        '#attributes' => [
+          'class' => ['toolbar-menu-administration'],
+        ],
+      ],
+    ],
     '#weight' => -15,
-  );
+  ];
   $hash_cacheability->applyTo($items['administration']);
 
   return $items;
@@ -228,11 +228,11 @@ function toolbar_prerender_toolbar_administration_tray(array $element) {
   $parameters->setMinDepth(2)->setMaxDepth(2)->onlyEnabledLinks();
   // @todo Make the menu configurable in https://www.drupal.org/node/1869638.
   $tree = $menu_tree->load('admin', $parameters);
-  $manipulators = array(
-    array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-    array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    array('callable' => 'toolbar_menu_navigation_links'),
-  );
+  $manipulators = [
+    ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+    ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ['callable' => 'toolbar_menu_navigation_links'],
+  ];
   $tree = $menu_tree->transform($tree, $manipulators);
   $element['administration_menu'] = $menu_tree->build($tree);
   return $element;
@@ -262,7 +262,7 @@ function toolbar_menu_navigation_links(array $tree) {
       $id = substr(Crypt::hashBase64($url->getUri()), 0, 16);
     }
     else {
-      $id = str_replace(array('.', '<', '>'), array('-', '', ''), $url->getRouteName());
+      $id = str_replace(['.', '<', '>'], ['-', '', ''], $url->getRouteName());
     }
 
     // Get the non-localized title to make the icon class.
@@ -270,7 +270,7 @@ function toolbar_menu_navigation_links(array $tree) {
 
     $element->options['attributes']['id'] = 'toolbar-link-' . $id;
     $element->options['attributes']['class'][] = 'toolbar-icon';
-    $element->options['attributes']['class'][] = 'toolbar-icon-' . strtolower(str_replace(array('.', ' ', '_'), array('-', '-', '-'), $definition['id']));
+    $element->options['attributes']['class'][] = 'toolbar-icon-' . strtolower(str_replace(['.', ' ', '_'], ['-', '-', '-'], $definition['id']));
     $element->options['attributes']['title'] = $link->getDescription();
   }
   return $tree;
@@ -310,13 +310,13 @@ function _toolbar_do_get_rendered_subtrees(array $data) {
   $parameters->setMinDepth(2)->setMaxDepth(4)->onlyEnabledLinks();
   // @todo Make the menu configurable in https://www.drupal.org/node/1869638.
   $tree = $menu_tree->load('admin', $parameters);
-  $manipulators = array(
-    array('callable' => 'menu.default_tree_manipulators:checkAccess'),
-    array('callable' => 'menu.default_tree_manipulators:generateIndexAndSort'),
-    array('callable' => 'toolbar_menu_navigation_links'),
-  );
+  $manipulators = [
+    ['callable' => 'menu.default_tree_manipulators:checkAccess'],
+    ['callable' => 'menu.default_tree_manipulators:generateIndexAndSort'],
+    ['callable' => 'toolbar_menu_navigation_links'],
+  ];
   $tree = $menu_tree->transform($tree, $manipulators);
-  $subtrees = array();
+  $subtrees = [];
   // Calculated the combined cacheability of all subtrees.
   $cacheability = new CacheableMetadata();
   foreach ($tree as $element) {
@@ -333,7 +333,7 @@ function _toolbar_do_get_rendered_subtrees(array $data) {
     // Many routes have dots as route name, while some special ones like <front>
     // have <> characters in them.
     $url = $link->getUrlObject();
-    $id = str_replace(array('.', '<', '>'), array('-', '', '' ), $url->isRouted() ? $url->getRouteName() : $url->getUri());
+    $id = str_replace(['.', '<', '>'], ['-', '', '' ], $url->isRouted() ? $url->getRouteName() : $url->getUri());
 
     $subtrees[$id] = $output;
   }
diff --git a/core/modules/tour/src/Entity/Tour.php b/core/modules/tour/src/Entity/Tour.php
index 290d3f8..6f4038d 100644
--- a/core/modules/tour/src/Entity/Tour.php
+++ b/core/modules/tour/src/Entity/Tour.php
@@ -59,7 +59,7 @@ class Tour extends ConfigEntityBase implements TourInterface {
    *
    * @var array
    */
-  protected $routes = array();
+  protected $routes = [];
 
   /**
    * The routes on which this tour should be displayed, keyed by route id.
@@ -80,7 +80,7 @@ class Tour extends ConfigEntityBase implements TourInterface {
    *
    * @var array
    */
-  protected $tips = array();
+  protected $tips = [];
 
   /**
    * {@inheritdoc}
@@ -109,7 +109,7 @@ public function getTip($id) {
    * {@inheritdoc}
    */
   public function getTips() {
-    $tips = array();
+    $tips = [];
     foreach ($this->tips as $id => $tip) {
       $tips[] = $this->getTip($id);
     }
@@ -136,9 +136,9 @@ public function getModule() {
    */
   public function hasMatchingRoute($route_name, $route_params) {
     if (!isset($this->keyedRoutes)) {
-      $this->keyedRoutes = array();
+      $this->keyedRoutes = [];
       foreach ($this->getRoutes() as $route) {
-        $this->keyedRoutes[$route['route_name']] = isset($route['route_params']) ? $route['route_params'] : array();
+        $this->keyedRoutes[$route['route_name']] = isset($route['route_params']) ? $route['route_params'] : [];
       }
     }
     if (!isset($this->keyedRoutes[$route_name])) {
diff --git a/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php b/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
index f7d2793..268741a 100644
--- a/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
+++ b/core/modules/tour/src/Plugin/tour/tip/TipPluginText.php
@@ -116,7 +116,7 @@ public function getAttributes() {
   public function getOutput() {
     $output = '<h2 class="tour-tip-label" id="tour-tip-' . $this->getAriaId() . '-label">' . Html::escape($this->getLabel()) . '</h2>';
     $output .= '<p class="tour-tip-body" id="tour-tip-' . $this->getAriaId() . '-contents">' . $this->token->replace($this->getBody()) . '</p>';
-    return array('#markup' => $output);
+    return ['#markup' => $output];
   }
 
 }
diff --git a/core/modules/tour/src/Tests/TourTest.php b/core/modules/tour/src/Tests/TourTest.php
index 78304c6..749e7c5 100644
--- a/core/modules/tour/src/Tests/TourTest.php
+++ b/core/modules/tour/src/Tests/TourTest.php
@@ -25,7 +25,7 @@ class TourTest extends TourTestBasic {
    * @var array
    *   A list of permissions.
    */
-  protected $permissions = array('access tour', 'administer languages');
+  protected $permissions = ['access tour', 'administer languages'];
 
   /**
    * Tour tip attributes to be tested. Keyed by the path.
@@ -33,9 +33,9 @@ class TourTest extends TourTestBasic {
    * @var array
    *   An array of tip attributes, keyed by path.
    */
-  protected $tips = array(
-    'tour-test-1' => array(),
-  );
+  protected $tips = [
+    'tour-test-1' => [],
+  ];
 
   /**
    * {@inheritdoc}
@@ -57,18 +57,18 @@ public function testTourFunctionality() {
     $this->drupalGet('tour-test-1');
 
     // Test the TourTestBase class assertTourTips() method.
-    $tips = array();
-    $tips[] = array('data-id' => 'tour-test-1');
-    $tips[] = array('data-class' => 'tour-test-5');
+    $tips = [];
+    $tips[] = ['data-id' => 'tour-test-1'];
+    $tips[] = ['data-class' => 'tour-test-5'];
     $this->assertTourTips($tips);
     $this->assertTourTips();
 
-    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./p//a[@href=:href and contains(., :text)]]', array(
+    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./p//a[@href=:href and contains(., :text)]]', [
       ':classes' => 'tip-module-tour-test tip-type-text tip-tour-test-1',
       ':data_id' => 'tour-test-1',
       ':href' => \Drupal::url('<front>', [], ['absolute' => TRUE]),
       ':text' => 'Drupal',
-    ));
+    ]);
     $this->assertEqual(count($elements), 1, 'Found Token replacement.');
 
     $elements = $this->cssSelect("li[data-id=tour-test-1] h2:contains('The first tip')");
@@ -104,43 +104,43 @@ public function testTourFunctionality() {
     $this->assertNotEqual(count($elements), 1, 'Did not find English variant of tip 1.');
 
     // Programmatically create a tour for use through the remainder of the test.
-    $tour = Tour::create(array(
+    $tour = Tour::create([
       'id' => 'tour-entity-create-test-en',
       'label' => 'Tour test english',
       'langcode' => 'en',
       'module' => 'system',
-      'routes' => array(
-        array('route_name' => 'tour_test.1'),
-      ),
-      'tips' => array(
-        'tour-test-1' => array(
+      'routes' => [
+        ['route_name' => 'tour_test.1'],
+      ],
+      'tips' => [
+        'tour-test-1' => [
           'id' => 'tour-code-test-1',
           'plugin' => 'text',
           'label' => 'The rain in spain',
           'body' => 'Falls mostly on the plain.',
           'weight' => '100',
-          'attributes' => array(
+          'attributes' => [
             'data-id' => 'tour-code-test-1',
-          ),
-        ),
-        'tour-code-test-2' => array(
+          ],
+        ],
+        'tour-code-test-2' => [
           'id' => 'tour-code-test-2',
           'plugin' => 'image',
           'label' => 'The awesome image',
           'url' => 'http://local/image.png',
           'weight' => 1,
-          'attributes' => array(
+          'attributes' => [
             'data-id' => 'tour-code-test-2'
-          ),
-        ),
-      ),
-    ));
+          ],
+        ],
+      ],
+    ]);
     $tour->save();
 
     // Ensure that a tour entity has the expected dependencies based on plugin
     // providers and the module named in the configuration entity.
     $dependencies = $tour->calculateDependencies()->getDependencies();
-    $this->assertEqual($dependencies['module'], array('system', 'tour_test'));
+    $this->assertEqual($dependencies['module'], ['system', 'tour_test']);
 
     $this->drupalGet('tour-test-1');
 
@@ -167,21 +167,21 @@ public function testTourFunctionality() {
     // Navigate to tour-test-3 and verify the tour_test_1 tip is found with
     // appropriate classes.
     $this->drupalGet('tour-test-3/foo');
-    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./h2[contains(., :text)]]', array(
+    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./h2[contains(., :text)]]', [
       ':classes' => 'tip-module-tour-test tip-type-text tip-tour-test-1',
       ':data_id' => 'tour-test-1',
       ':text' => 'The first tip',
-    ));
+    ]);
     $this->assertEqual(count($elements), 1, 'Found English variant of tip 1.');
 
     // Navigate to tour-test-3 and verify the tour_test_1 tip is not found with
     // appropriate classes.
     $this->drupalGet('tour-test-3/bar');
-    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./h2[contains(., :text)]]', array(
+    $elements = $this->xpath('//li[@data-id=:data_id and @class=:classes and ./h2[contains(., :text)]]', [
       ':classes' => 'tip-module-tour-test tip-type-text tip-tour-test-1',
       ':data_id' => 'tour-test-1',
       ':text' => 'The first tip',
-    ));
+    ]);
     $this->assertEqual(count($elements), 0, 'Did not find English variant of tip 1.');
   }
 
diff --git a/core/modules/tour/src/Tests/TourTestBase.php b/core/modules/tour/src/Tests/TourTestBase.php
index 8383c99..198051d 100644
--- a/core/modules/tour/src/Tests/TourTestBase.php
+++ b/core/modules/tour/src/Tests/TourTestBase.php
@@ -29,7 +29,7 @@
    * $this->assertTourTips($tips);
    * @endcode
    */
-  public function assertTourTips($tips = array()) {
+  public function assertTourTips($tips = []) {
     // Get the rendered tips and their data-id and data-class attributes.
     if (empty($tips)) {
       // Tips are rendered as <li> elements inside <ol id="tour">.
@@ -51,11 +51,11 @@ public function assertTourTips($tips = array()) {
       foreach ($tips as $tip) {
         if (!empty($tip['data-id'])) {
           $elements = \PHPUnit_Util_XML::cssSelect('#' . $tip['data-id'], TRUE, $this->content, TRUE);
-          $this->assertTrue(!empty($elements) && count($elements) === 1, format_string('Found corresponding page element for tour tip with id #%data-id', array('%data-id' => $tip['data-id'])));
+          $this->assertTrue(!empty($elements) && count($elements) === 1, format_string('Found corresponding page element for tour tip with id #%data-id', ['%data-id' => $tip['data-id']]));
         }
         elseif (!empty($tip['data-class'])) {
           $elements = \PHPUnit_Util_XML::cssSelect('.' . $tip['data-class'], TRUE, $this->content, TRUE);
-          $this->assertFalse(empty($elements), format_string('Found corresponding page element for tour tip with class .%data-class', array('%data-class' => $tip['data-class'])));
+          $this->assertFalse(empty($elements), format_string('Found corresponding page element for tour tip with class .%data-class', ['%data-class' => $tip['data-class']]));
         }
         else {
           // It's a modal.
@@ -63,7 +63,7 @@ public function assertTourTips($tips = array()) {
         }
         $total++;
       }
-      $this->pass(format_string('Total %total Tips tested of which %modals modal(s).', array('%total' => $total, '%modals' => $modals)));
+      $this->pass(format_string('Total %total Tips tested of which %modals modal(s).', ['%total' => $total, '%modals' => $modals]));
     }
   }
 
diff --git a/core/modules/tour/src/Tests/TourTestBasic.php b/core/modules/tour/src/Tests/TourTestBasic.php
index e79eb2b..1db8bc5 100644
--- a/core/modules/tour/src/Tests/TourTestBasic.php
+++ b/core/modules/tour/src/Tests/TourTestBasic.php
@@ -22,7 +22,7 @@
    * );
    * @endcode
    */
-  protected $tips = array();
+  protected $tips = [];
 
   /**
    * An admin user with administrative permissions for tour.
@@ -37,14 +37,14 @@
    * @var array
    *   A list of permissions.
    */
-  protected $permissions = array('access tour');
+  protected $permissions = ['access tour'];
 
   protected function setUp() {
     parent::setUp();
 
     // Make sure we are using distinct default and administrative themes for
     // the duration of these tests.
-    $this->container->get('theme_handler')->install(array('bartik', 'seven'));
+    $this->container->get('theme_handler')->install(['bartik', 'seven']);
     $this->config('system.theme')
       ->set('default', 'bartik')
       ->set('admin', 'seven')
diff --git a/core/modules/tour/src/TourViewBuilder.php b/core/modules/tour/src/TourViewBuilder.php
index 34172de..a9bfe5a 100644
--- a/core/modules/tour/src/TourViewBuilder.php
+++ b/core/modules/tour/src/TourViewBuilder.php
@@ -13,35 +13,35 @@ class TourViewBuilder extends EntityViewBuilder {
   /**
    * {@inheritdoc}
    */
-  public function viewMultiple(array $entities = array(), $view_mode = 'full', $langcode = NULL) {
+  public function viewMultiple(array $entities = [], $view_mode = 'full', $langcode = NULL) {
     /** @var \Drupal\tour\TourInterface[] $entities */
-    $build = array();
+    $build = [];
     foreach ($entities as $entity_id => $entity) {
       $tips = $entity->getTips();
       $count = count($tips);
-      $list_items = array();
+      $list_items = [];
       foreach ($tips as $index => $tip) {
         if ($output = $tip->getOutput()) {
-          $attributes = array(
-            'class' => array(
+          $attributes = [
+            'class' => [
               'tip-module-' . Html::cleanCssIdentifier($entity->getModule()),
               'tip-type-' . Html::cleanCssIdentifier($tip->getPluginId()),
               'tip-' . Html::cleanCssIdentifier($tip->id()),
-            ),
-          );
-          $list_items[] = array(
+            ],
+          ];
+          $list_items[] = [
             'output' => $output,
-            'counter' => array(
+            'counter' => [
               '#type' => 'container',
-              '#attributes' => array(
-                'class' => array(
+              '#attributes' => [
+                'class' => [
                   'tour-progress',
-                ),
-              ),
-              '#children' => t('@tour_item of @total', array('@tour_item' => $index + 1, '@total' => $count)),
-            ),
+                ],
+              ],
+              '#children' => t('@tour_item of @total', ['@tour_item' => $index + 1, '@total' => $count]),
+            ],
             '#wrapper_attributes' => $tip->getAttributes() + $attributes,
-          );
+          ];
         }
       }
       // If there is at least one tour item, build the tour.
@@ -49,20 +49,20 @@ public function viewMultiple(array $entities = array(), $view_mode = 'full', $la
         end($list_items);
         $key = key($list_items);
         $list_items[$key]['#wrapper_attributes']['data-text'] = t('End tour');
-        $build[$entity_id] = array(
+        $build[$entity_id] = [
           '#theme' => 'item_list',
           '#items' => $list_items,
           '#list_type' => 'ol',
-          '#attributes' => array(
+          '#attributes' => [
             'id' => 'tour',
-            'class' => array(
+            'class' => [
               'hidden',
-            ),
-          ),
+            ],
+          ],
           '#cache' => [
             'tags' => $entity->getCacheTags(),
           ],
-        );
+        ];
       }
     }
     // If at least one tour was built, attach the tour library.
diff --git a/core/modules/tour/tests/src/Functional/TourCacheTagsTest.php b/core/modules/tour/tests/src/Functional/TourCacheTagsTest.php
index c7048fb..ff2e9e5 100644
--- a/core/modules/tour/tests/src/Functional/TourCacheTagsTest.php
+++ b/core/modules/tour/tests/src/Functional/TourCacheTagsTest.php
@@ -18,7 +18,7 @@ class TourCacheTagsTest extends PageCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('tour', 'tour_test');
+  public static $modules = ['tour', 'tour_test'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/tour/tests/src/Kernel/TourPluginTest.php b/core/modules/tour/tests/src/Kernel/TourPluginTest.php
index 9278e2e..ce47467 100644
--- a/core/modules/tour/tests/src/Kernel/TourPluginTest.php
+++ b/core/modules/tour/tests/src/Kernel/TourPluginTest.php
@@ -16,7 +16,7 @@ class TourPluginTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('tour');
+  public static $modules = ['tour'];
 
   /**
    * Stores the tour plugin manager.
@@ -28,7 +28,7 @@ class TourPluginTest extends KernelTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->installConfig(array('tour'));
+    $this->installConfig(['tour']);
     $this->pluginManager = $this->container->get('plugin.manager.tour.tip');
   }
 
diff --git a/core/modules/tour/tests/src/Unit/Entity/TourTest.php b/core/modules/tour/tests/src/Unit/Entity/TourTest.php
index 2c71aa9..08944ee 100644
--- a/core/modules/tour/tests/src/Unit/Entity/TourTest.php
+++ b/core/modules/tour/tests/src/Unit/Entity/TourTest.php
@@ -29,7 +29,7 @@ class TourTest extends UnitTestCase {
   public function testHasMatchingRoute($routes, $route_name, $route_params, $result) {
     $tour = $this->getMockBuilder('\Drupal\tour\Entity\Tour')
       ->disableOriginalConstructor()
-      ->setMethods(array('getRoutes'))
+      ->setMethods(['getRoutes'])
       ->getMock();
 
     $tour->expects($this->any())
@@ -45,94 +45,94 @@ public function testHasMatchingRoute($routes, $route_name, $route_params, $resul
    * Provides sample routes for testing.
    */
   public function routeProvider() {
-    return array(
+    return [
       // Simple match.
-      array(
-        array(
-          array('route_name' => 'some.route'),
-        ),
+      [
+        [
+          ['route_name' => 'some.route'],
+        ],
         'some.route',
-        array(),
+        [],
         TRUE,
-      ),
+      ],
       // Simple non-match.
-      array(
-        array(
-          array('route_name' => 'another.route'),
-        ),
+      [
+        [
+          ['route_name' => 'another.route'],
+        ],
         'some.route',
-        array(),
+        [],
         FALSE,
-      ),
+      ],
       // Empty params.
-      array(
-        array(
-          array(
+      [
+        [
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'bar'),
-          ),
-        ),
+            'route_params' => ['foo' => 'bar'],
+          ],
+        ],
         'some.route',
-        array(),
+        [],
         FALSE,
-      ),
+      ],
       // Match on params.
-      array(
-        array(
-          array(
+      [
+        [
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'bar'),
-          ),
-        ),
+            'route_params' => ['foo' => 'bar'],
+          ],
+        ],
         'some.route',
-        array('foo' => 'bar'),
+        ['foo' => 'bar'],
         TRUE,
-      ),
+      ],
       // Non-matching params.
-      array(
-        array(
-          array(
+      [
+        [
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'bar'),
-          ),
-        ),
+            'route_params' => ['foo' => 'bar'],
+          ],
+        ],
         'some.route',
-        array('bar' => 'foo'),
+        ['bar' => 'foo'],
         FALSE,
-      ),
+      ],
       // One matching, one not.
-      array(
-        array(
-          array(
+      [
+        [
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'bar'),
-          ),
-          array(
+            'route_params' => ['foo' => 'bar'],
+          ],
+          [
             'route_name' => 'some.route',
-            'route_params' => array('bar' => 'foo'),
-          ),
-        ),
+            'route_params' => ['bar' => 'foo'],
+          ],
+        ],
         'some.route',
-        array('bar' => 'foo'),
+        ['bar' => 'foo'],
         TRUE,
-      ),
+      ],
       // One matching, one not.
-      array(
-        array(
-          array(
+      [
+        [
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'bar'),
-          ),
-          array(
+            'route_params' => ['foo' => 'bar'],
+          ],
+          [
             'route_name' => 'some.route',
-            'route_params' => array('foo' => 'baz'),
-          ),
-        ),
+            'route_params' => ['foo' => 'baz'],
+          ],
+        ],
         'some.route',
-        array('foo' => 'baz'),
+        ['foo' => 'baz'],
         TRUE,
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/tour/tests/tour_test/src/Controller/TourTestController.php b/core/modules/tour/tests/tour_test/src/Controller/TourTestController.php
index 87b817d..56505aa 100644
--- a/core/modules/tour/tests/tour_test/src/Controller/TourTestController.php
+++ b/core/modules/tour/tests/tour_test/src/Controller/TourTestController.php
@@ -18,56 +18,56 @@ class TourTestController {
    *   Array of markup.
    */
   public function tourTest1($locale = 'foo') {
-    return array(
-      'tip-1' => array(
+    return [
+      'tip-1' => [
         '#type' => 'container',
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'tour-test-1',
-        ),
+        ],
         '#children' => t('Where does the rain in Spain fail?'),
-      ),
-      'tip-3' => array(
+      ],
+      'tip-3' => [
         '#type' => 'container',
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'tour-test-3',
-        ),
+        ],
         '#children' => t('Tip created now?'),
-      ),
-      'tip-4' => array(
+      ],
+      'tip-4' => [
         '#type' => 'container',
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'tour-test-4',
-        ),
+        ],
         '#children' => t('Tip created later?'),
-      ),
-      'tip-5' => array(
+      ],
+      'tip-5' => [
         '#type' => 'container',
-        '#attributes' => array(
-          'class' => array('tour-test-5'),
-        ),
+        '#attributes' => [
+          'class' => ['tour-test-5'],
+        ],
         '#children' => t('Tip created later?'),
-      ),
-      'code-tip-1' => array(
+      ],
+      'code-tip-1' => [
         '#type' => 'container',
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'tour-code-test-1',
-        ),
+        ],
         '#children' => t('Tip created now?'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
    * Outputs some content for testing tours.
    */
   public function tourTest2() {
-    return array(
+    return [
       '#type' => 'container',
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'tour-test-2',
-      ),
+      ],
       '#children' => t('Pangram example'),
-    );
+    ];
 
   }
 
diff --git a/core/modules/tour/tour.module b/core/modules/tour/tour.module
index e456361..1de8399 100644
--- a/core/modules/tour/tour.module
+++ b/core/modules/tour/tour.module
@@ -16,13 +16,13 @@ function tour_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.tour':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t("The Tour module provides users with guided tours of the site interface. Each tour consists of several tips that highlight elements of the user interface, guide the user through a workflow, or explain key concepts of the website. For more information, see the <a href=':tour'>online documentation for the Tour module</a>.", array(':tour' => 'https://www.drupal.org/documentation/modules/tour')) . '</p>';
+      $output .= '<p>' . t("The Tour module provides users with guided tours of the site interface. Each tour consists of several tips that highlight elements of the user interface, guide the user through a workflow, or explain key concepts of the website. For more information, see the <a href=':tour'>online documentation for the Tour module</a>.", [':tour' => 'https://www.drupal.org/documentation/modules/tour']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Viewing tours') . '</dt>';
       $output .= '<dd>' . t("If a tour is available on a page, a <em>Tour</em> button will be visible in the toolbar. If you click this button the first tip of the tour will appear. The tour continues after clicking the <em>Next</em> button in the tip. To see a tour users must have the permission <em>Access tour</em> and JavaScript must be enabled in the browser") . '</dd>';
       $output .= '<dt>' . t('Creating tours') . '</dt>';
-      $output .= '<dd>' . t("Tours can be written as YAML-documents with a text editor, or using the contributed <a href=':tour_ui'>Tour UI</a> module. For more information, see <a href=':doc_url'>the online documentation for writing tours</a>.", array(':doc_url' => 'https://www.drupal.org/developing/api/tour', ':tour_ui' => 'https://www.drupal.org/project/tour_ui')) . '</dd>';
+      $output .= '<dd>' . t("Tours can be written as YAML-documents with a text editor, or using the contributed <a href=':tour_ui'>Tour UI</a> module. For more information, see <a href=':doc_url'>the online documentation for writing tours</a>.", [':doc_url' => 'https://www.drupal.org/developing/api/tour', ':tour_ui' => 'https://www.drupal.org/project/tour_ui']) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -45,27 +45,27 @@ function tour_toolbar() {
     return $items;
   }
 
-  $items['tour'] += array(
+  $items['tour'] += [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'html_tag',
       '#tag' => 'button',
       '#value' => t('Tour'),
-      '#attributes' => array(
-        'class' => array('toolbar-icon', 'toolbar-icon-help'),
+      '#attributes' => [
+        'class' => ['toolbar-icon', 'toolbar-icon-help'],
         'aria-pressed' => 'false',
-      ),
-    ),
-    '#wrapper_attributes' => array(
-      'class' => array('tour-toolbar-tab', 'hidden'),
+      ],
+    ],
+    '#wrapper_attributes' => [
+      'class' => ['tour-toolbar-tab', 'hidden'],
       'id' => 'toolbar-tab-tour',
-    ),
-    '#attached' => array(
-      'library' => array(
+    ],
+    '#attached' => [
+      'library' => [
         'tour/tour',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   return $items;
 }
diff --git a/core/modules/tracker/src/Plugin/Menu/UserTrackerTab.php b/core/modules/tracker/src/Plugin/Menu/UserTrackerTab.php
index 1cd4217..9526480 100644
--- a/core/modules/tracker/src/Plugin/Menu/UserTrackerTab.php
+++ b/core/modules/tracker/src/Plugin/Menu/UserTrackerTab.php
@@ -37,7 +37,7 @@ protected function currentUser() {
    * {@inheritdoc}
    */
   public function getRouteParameters(RouteMatchInterface $route_match) {
-    return array('user' => $this->currentUser()->Id());
+    return ['user' => $this->currentUser()->Id()];
   }
 
 }
diff --git a/core/modules/tracker/src/Tests/TrackerTest.php b/core/modules/tracker/src/Tests/TrackerTest.php
index a927e89..2ac7cef 100644
--- a/core/modules/tracker/src/Tests/TrackerTest.php
+++ b/core/modules/tracker/src/Tests/TrackerTest.php
@@ -46,16 +46,16 @@ class TrackerTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
-    $permissions = array('access comments', 'create page content', 'post comments', 'skip comment approval');
+    $permissions = ['access comments', 'create page content', 'post comments', 'skip comment approval'];
     $this->user = $this->drupalCreateUser($permissions);
     $this->otherUser = $this->drupalCreateUser($permissions);
     $this->addDefaultCommentField('node', 'page');
-    user_role_grant_permissions(AccountInterface::ANONYMOUS_ROLE, array(
+    user_role_grant_permissions(AccountInterface::ANONYMOUS_ROLE, [
       'access content',
       'access user profiles',
-    ));
+    ]);
     $this->drupalPlaceBlock('local_tasks_block', ['id' => 'page_tabs_block']);
     $this->drupalPlaceBlock('local_actions_block', ['id' => 'page_actions_block']);
   }
@@ -66,14 +66,14 @@ protected function setUp() {
   function testTrackerAll() {
     $this->drupalLogin($this->user);
 
-    $unpublished = $this->drupalCreateNode(array(
+    $unpublished = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'status' => 0,
-    ));
-    $published = $this->drupalCreateNode(array(
+    ]);
+    $published = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'status' => 1,
-    ));
+    ]);
 
     $this->drupalGet('activity');
     $this->assertNoText($unpublished->label(), 'Unpublished node does not show up in the tracker listing.');
@@ -132,30 +132,30 @@ function testTrackerAll() {
   function testTrackerUser() {
     $this->drupalLogin($this->user);
 
-    $unpublished = $this->drupalCreateNode(array(
+    $unpublished = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'uid' => $this->user->id(),
       'status' => 0,
-    ));
-    $my_published = $this->drupalCreateNode(array(
+    ]);
+    $my_published = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'uid' => $this->user->id(),
       'status' => 1,
-    ));
-    $other_published_no_comment = $this->drupalCreateNode(array(
+    ]);
+    $other_published_no_comment = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'uid' => $this->otherUser->id(),
       'status' => 1,
-    ));
-    $other_published_my_comment = $this->drupalCreateNode(array(
+    ]);
+    $other_published_my_comment = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'uid' => $this->otherUser->id(),
       'status' => 1,
-    ));
-    $comment = array(
+    ]);
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $other_published_my_comment->id() . '/comment', $comment, t('Save'));
 
     $this->drupalGet('user/' . $this->user->id() . '/activity');
@@ -197,12 +197,12 @@ function testTrackerUser() {
     $this->assertNoLink($unpublished->label());
     // Verify that title and tab title have been set correctly.
     $this->assertText('Activity', 'The user activity tab has the name "Activity".');
-    $this->assertTitle(t('@name | @site', array('@name' => $this->user->getUsername(), '@site' => $this->config('system.site')->get('name'))), 'The user tracker page has the correct page title.');
+    $this->assertTitle(t('@name | @site', ['@name' => $this->user->getUsername(), '@site' => $this->config('system.site')->get('name')]), 'The user tracker page has the correct page title.');
 
     // Verify that unpublished comments are removed from the tracker.
-    $admin_user = $this->drupalCreateUser(array('post comments', 'administer comments', 'access user profiles'));
+    $admin_user = $this->drupalCreateUser(['post comments', 'administer comments', 'access user profiles']);
     $this->drupalLogin($admin_user);
-    $this->drupalPostForm('comment/1/edit', array('status' => CommentInterface::NOT_PUBLISHED), t('Save'));
+    $this->drupalPostForm('comment/1/edit', ['status' => CommentInterface::NOT_PUBLISHED], t('Save'));
     $this->drupalGet('user/' . $this->user->id() . '/activity');
     $this->assertNoText($other_published_my_comment->label(), 'Unpublished comments are not counted on the tracker listing.');
 
@@ -227,9 +227,9 @@ function testTrackerHistoryMetadata() {
     $this->drupalLogin($this->user);
 
     // Create a page node.
-    $edit = array(
+    $edit = [
       'title' => $this->randomMachineName(8),
-    );
+    ];
     $node = $this->drupalCreateNode($edit);
 
     // Verify that the history metadata is present.
@@ -243,10 +243,10 @@ function testTrackerHistoryMetadata() {
     // Add a comment to the page, make sure it is created after the node by
     // sleeping for one second, to ensure the last comment timestamp is
     // different from before.
-    $comment = array(
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     sleep(1);
     $this->drupalPostForm('comment/reply/node/' . $node->id() . '/comment', $comment, t('Save'));
     // Reload the node so that comment.module's hook_node_load()
@@ -277,22 +277,22 @@ function testTrackerHistoryMetadata() {
   function testTrackerOrderingNewComments() {
     $this->drupalLogin($this->user);
 
-    $node_one = $this->drupalCreateNode(array(
+    $node_one = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
-    ));
+    ]);
 
-    $node_two = $this->drupalCreateNode(array(
+    $node_two = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
-    ));
+    ]);
 
     // Now get otherUser to track these pieces of content.
     $this->drupalLogin($this->otherUser);
 
     // Add a comment to the first page.
-    $comment = array(
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $node_one->id() . '/comment', $comment, t('Save'));
 
     // If the comment is posted in the same second as the last one then Drupal
@@ -300,10 +300,10 @@ function testTrackerOrderingNewComments() {
     sleep(1);
 
     // Add a comment to the second page.
-    $comment = array(
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $node_two->id() . '/comment', $comment, t('Save'));
 
     // We should at this point have in our tracker for otherUser:
@@ -320,10 +320,10 @@ function testTrackerOrderingNewComments() {
     sleep(1);
 
     // Add a comment to the second page.
-    $comment = array(
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $node_one->id() . '/comment', $comment, t('Save'));
 
     // Switch back to the otherUser and assert that the order has swapped.
@@ -344,21 +344,21 @@ function testTrackerCronIndexing() {
     $this->drupalLogin($this->user);
 
     // Create 3 nodes.
-    $edits = array();
-    $nodes = array();
+    $edits = [];
+    $nodes = [];
     for ($i = 1; $i <= 3; $i++) {
-      $edits[$i] = array(
+      $edits[$i] = [
         'title' => $this->randomMachineName(),
-      );
+      ];
       $nodes[$i] = $this->drupalCreateNode($edits[$i]);
     }
 
     // Add a comment to the last node as other user.
     $this->drupalLogin($this->otherUser);
-    $comment = array(
+    $comment = [
       'subject[0][value]' => $this->randomMachineName(),
       'comment_body[0][value]' => $this->randomMachineName(20),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $nodes[3]->id() . '/comment', $comment, t('Save'));
 
     // Start indexing backwards from node 3.
@@ -378,7 +378,7 @@ function testTrackerCronIndexing() {
 
     // Assert that all node titles are displayed.
     foreach ($nodes as $i => $node) {
-      $this->assertText($node->label(), format_string('Node @i is displayed on the tracker listing pages.', array('@i' => $i)));
+      $this->assertText($node->label(), format_string('Node @i is displayed on the tracker listing pages.', ['@i' => $i]));
     }
 
     // Fetch the site-wide tracker.
@@ -386,7 +386,7 @@ function testTrackerCronIndexing() {
 
     // Assert that all node titles are displayed.
     foreach ($nodes as $i => $node) {
-      $this->assertText($node->label(), format_string('Node @i is displayed on the tracker listing pages.', array('@i' => $i)));
+      $this->assertText($node->label(), format_string('Node @i is displayed on the tracker listing pages.', ['@i' => $i]));
     }
   }
 
@@ -394,24 +394,24 @@ function testTrackerCronIndexing() {
    * Tests that publish/unpublish works at admin/content/node.
    */
   function testTrackerAdminUnpublish() {
-    \Drupal::service('module_installer')->install(array('views'));
+    \Drupal::service('module_installer')->install(['views']);
     \Drupal::service('router.builder')->rebuild();
-    $admin_user = $this->drupalCreateUser(array('access content overview', 'administer nodes', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access content overview', 'administer nodes', 'bypass node access']);
     $this->drupalLogin($admin_user);
 
-    $node = $this->drupalCreateNode(array(
+    $node = $this->drupalCreateNode([
       'title' => $this->randomMachineName(),
-    ));
+    ]);
 
     // Assert that the node is displayed.
     $this->drupalGet('activity');
     $this->assertText($node->label(), 'A node is displayed on the tracker listing pages.');
 
     // Unpublish the node and ensure that it's no longer displayed.
-    $edit = array(
+    $edit = [
       'action' => 'node_unpublish_action',
       'node_bulk_form[0]' => $node->id(),
-    );
+    ];
     $this->drupalPostForm('admin/content', $edit, t('Apply to selected items'));
 
     $this->drupalGet('activity');
diff --git a/core/modules/tracker/src/Tests/Views/TrackerTestBase.php b/core/modules/tracker/src/Tests/Views/TrackerTestBase.php
index 7b2f946..53c21f9 100644
--- a/core/modules/tracker/src/Tests/Views/TrackerTestBase.php
+++ b/core/modules/tracker/src/Tests/Views/TrackerTestBase.php
@@ -20,7 +20,7 @@
    *
    * @var array
    */
-  public static $modules = array('comment', 'tracker', 'tracker_test_views');
+  public static $modules = ['comment', 'tracker', 'tracker_test_views'];
 
   /**
    * The node used for testing.
@@ -39,30 +39,30 @@
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('tracker_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['tracker_test_views']);
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     // Add a comment field.
     $this->addDefaultCommentField('node', 'page');
 
-    $permissions = array('access comments', 'create page content', 'post comments', 'skip comment approval');
+    $permissions = ['access comments', 'create page content', 'post comments', 'skip comment approval'];
     $account = $this->drupalCreateUser($permissions);
 
     $this->drupalLogin($account);
 
-    $this->node = $this->drupalCreateNode(array(
+    $this->node = $this->drupalCreateNode([
       'title' => $this->randomMachineName(8),
       'uid' => $account->id(),
       'status' => 1,
-    ));
+    ]);
 
-    $this->comment = Comment::create(array(
+    $this->comment = Comment::create([
       'entity_id' => $this->node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment',
       'subject' => $this->randomMachineName(),
       'comment_body[' . LanguageInterface::LANGCODE_NOT_SPECIFIED . '][0][value]' => $this->randomMachineName(20),
-    ));
+    ]);
 
   }
 
diff --git a/core/modules/tracker/src/Tests/Views/TrackerUserUidTest.php b/core/modules/tracker/src/Tests/Views/TrackerUserUidTest.php
index 68b7777..54732a0 100644
--- a/core/modules/tracker/src/Tests/Views/TrackerUserUidTest.php
+++ b/core/modules/tracker/src/Tests/Views/TrackerUserUidTest.php
@@ -16,29 +16,29 @@ class TrackerUserUidTest extends TrackerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_tracker_user_uid');
+  public static $testViews = ['test_tracker_user_uid'];
 
   /**
    * Tests the user uid filter and argument.
    */
   public function testUserUid() {
-    $map = array(
+    $map = [
       'nid' => 'nid',
       'title' => 'title',
-    );
+    ];
 
-    $expected = array(
-      array(
+    $expected = [
+      [
         'nid' => $this->node->id(),
         'title' => $this->node->label(),
-      )
-    );
+      ]
+    ];
 
     $view = Views::getView('test_tracker_user_uid');
     $this->executeView($view);
 
     // We should have no results as the filter is set for uid 0.
-    $this->assertIdenticalResultSet($view, array(), $map);
+    $this->assertIdenticalResultSet($view, [], $map);
     $view->destroy();
 
     // Change the filter value to our user.
@@ -55,13 +55,13 @@ public function testUserUid() {
 
     // Test the incorrect argument UID.
     $view->initHandlers();
-    $this->executeView($view, array(rand()));
-    $this->assertIdenticalResultSet($view, array(), $map);
+    $this->executeView($view, [rand()]);
+    $this->assertIdenticalResultSet($view, [], $map);
     $view->destroy();
 
     // Test the correct argument UID.
     $view->initHandlers();
-    $this->executeView($view, array($this->node->getOwnerId()));
+    $this->executeView($view, [$this->node->getOwnerId()]);
     $this->assertIdenticalResultSet($view, $expected, $map);
   }
 
diff --git a/core/modules/tracker/tests/src/Functional/TrackerNodeAccessTest.php b/core/modules/tracker/tests/src/Functional/TrackerNodeAccessTest.php
index 1d33a23..ae9a6e0 100644
--- a/core/modules/tracker/tests/src/Functional/TrackerNodeAccessTest.php
+++ b/core/modules/tracker/tests/src/Functional/TrackerNodeAccessTest.php
@@ -21,12 +21,12 @@ class TrackerNodeAccessTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment', 'tracker', 'node_access_test');
+  public static $modules = ['node', 'comment', 'tracker', 'node_access_test'];
 
   protected function setUp() {
     parent::setUp();
     node_access_rebuild();
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     node_access_test_add_field(NodeType::load('page'));
     $this->addDefaultCommentField('node', 'page', 'comment', CommentItemInterface::OPEN);
     \Drupal::state()->set('node_access_test.private', TRUE);
@@ -37,22 +37,22 @@ protected function setUp() {
    */
   function testTrackerNodeAccess() {
     // Create user with node test view permission.
-    $access_user = $this->drupalCreateUser(array('node test view', 'access user profiles'));
+    $access_user = $this->drupalCreateUser(['node test view', 'access user profiles']);
 
     // Create user without node test view permission.
-    $no_access_user = $this->drupalCreateUser(array('access user profiles'));
+    $no_access_user = $this->drupalCreateUser(['access user profiles']);
 
     $this->drupalLogin($access_user);
 
     // Create some nodes.
-    $private_node = $this->drupalCreateNode(array(
+    $private_node = $this->drupalCreateNode([
       'title' => t('Private node test'),
       'private' => TRUE,
-    ));
-    $public_node = $this->drupalCreateNode(array(
+    ]);
+    $public_node = $this->drupalCreateNode([
       'title' => t('Public node test'),
       'private' => FALSE,
-    ));
+    ]);
 
     // User with access should see both nodes created.
     $this->drupalGet('activity');
diff --git a/core/modules/tracker/tracker.install b/core/modules/tracker/tracker.install
index 5f3e5a0..bc9ebc5 100644
--- a/core/modules/tracker/tracker.install
+++ b/core/modules/tracker/tracker.install
@@ -29,90 +29,90 @@ function tracker_install() {
  * Implements hook_schema().
  */
 function tracker_schema() {
-  $schema['tracker_node'] = array(
+  $schema['tracker_node'] = [
     'description' => 'Tracks when nodes were last changed or commented on.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'description' => 'The {node}.nid this record tracks.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'published' => array(
+      ],
+      'published' => [
         'description' => 'Boolean indicating whether the node is published.',
         'type' => 'int',
         'not null' => FALSE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-      'changed' => array(
+      ],
+      'changed' => [
         'description' => 'The Unix timestamp when the node was most recently saved or commented on.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'indexes' => array(
-      'tracker' => array('published', 'changed'),
-    ),
-    'primary key' => array('nid'),
-    'foreign keys' => array(
-      'tracked_node' => array(
+      ],
+    ],
+    'indexes' => [
+      'tracker' => ['published', 'changed'],
+    ],
+    'primary key' => ['nid'],
+    'foreign keys' => [
+      'tracked_node' => [
         'table' => 'node',
-        'columns' => array('nid' => 'nid'),
-      ),
-    ),
-  );
+        'columns' => ['nid' => 'nid'],
+      ],
+    ],
+  ];
 
-  $schema['tracker_user'] = array(
+  $schema['tracker_user'] = [
     'description' => 'Tracks when nodes were last changed or commented on, for each user that authored the node or one of its comments.',
-    'fields' => array(
-      'nid' => array(
+    'fields' => [
+      'nid' => [
         'description' => 'The {node}.nid this record tracks.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'uid' => array(
+      ],
+      'uid' => [
         'description' => 'The {users}.uid of the node author or commenter.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'published' => array(
+      ],
+      'published' => [
         'description' => 'Boolean indicating whether the node is published.',
         'type' => 'int',
         'not null' => FALSE,
         'default' => 0,
         'size' => 'tiny',
-      ),
-      'changed' => array(
+      ],
+      'changed' => [
         'description' => 'The Unix timestamp when the node was most recently saved or commented on.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'indexes' => array(
-      'tracker' => array('uid', 'published', 'changed'),
-    ),
-    'primary key' => array('nid', 'uid'),
-    'foreign keys' => array(
-      'tracked_node' => array(
+      ],
+    ],
+    'indexes' => [
+      'tracker' => ['uid', 'published', 'changed'],
+    ],
+    'primary key' => ['nid', 'uid'],
+    'foreign keys' => [
+      'tracked_node' => [
         'table' => 'node',
-        'columns' => array('nid' => 'nid'),
-      ),
-      'tracked_user' => array(
+        'columns' => ['nid' => 'nid'],
+      ],
+      'tracked_user' => [
         'table' => 'users',
-        'columns' => array('uid' => 'uid'),
-      ),
-    ),
-  );
+        'columns' => ['uid' => 'uid'],
+      ],
+    ],
+  ];
 
   return $schema;
 }
diff --git a/core/modules/tracker/tracker.module b/core/modules/tracker/tracker.module
index 1b2f648..dbde704 100644
--- a/core/modules/tracker/tracker.module
+++ b/core/modules/tracker/tracker.module
@@ -19,11 +19,11 @@ function tracker_help($route_name, RouteMatchInterface $route_match) {
   switch ($route_name) {
     case 'help.page.tracker':
       $output = '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Activity Tracker module displays the most recently added and updated content on your site, and allows you to follow new content created by each user. This module has no configuration options. For more information, see the <a href=":tracker">online documentation for the Activity Tracker module</a>.', array(':tracker' => 'https://www.drupal.org/documentation/modules/tracker')) . '</p>';
+      $output .= '<p>' . t('The Activity Tracker module displays the most recently added and updated content on your site, and allows you to follow new content created by each user. This module has no configuration options. For more information, see the <a href=":tracker">online documentation for the Activity Tracker module</a>.', [':tracker' => 'https://www.drupal.org/documentation/modules/tracker']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Tracking new and updated site content') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":recent">Recent content</a> page shows new and updated content in reverse chronological order, listing the content type, title, author\'s name, number of comments, and time of last update. Content is considered updated when changes occur in the text, or when new comments are added. The <em>My recent content</em> tab limits the list to the currently logged-in user.', array(':recent' => \Drupal::url('tracker.page'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":recent">Recent content</a> page shows new and updated content in reverse chronological order, listing the content type, title, author\'s name, number of comments, and time of last update. Content is considered updated when changes occur in the text, or when new comments are added. The <em>My recent content</em> tab limits the list to the currently logged-in user.', [':recent' => \Drupal::url('tracker.page')]) . '</dd>';
       $output .= '<dt>' . t('Tracking user-specific content') . '</dt>';
       $output .= '<dd>' . t("To follow a specific user's new and updated content, select the <em>Activity</em> tab from the user's profile page.") . '</dd>';
       $output .= '</dl>';
@@ -70,21 +70,21 @@ function tracker_cron() {
 
       // Insert the node-level data.
       db_insert('tracker_node')
-        ->fields(array(
+        ->fields([
           'nid' => $nid,
           'published' => $node->isPublished(),
           'changed' => $changed,
-        ))
+        ])
         ->execute();
 
       // Insert the user-level data for the node's author.
       db_insert('tracker_user')
-        ->fields(array(
+        ->fields([
           'nid' => $nid,
           'published' => $node->isPublished(),
           'changed' => $changed,
           'uid' => $node->getOwnerId(),
-        ))
+        ])
         ->execute();
 
       // Insert the user-level data for the commenters (except if a commenter
@@ -103,12 +103,12 @@ function tracker_cron() {
       if ($result) {
         $query = db_insert('tracker_user');
         foreach ($result as $row) {
-          $query->fields(array(
+          $query->fields([
             'uid' => $row['uid'],
             'nid' => $nid,
             'published' => CommentInterface::PUBLISHED,
             'changed' => $changed,
-          ));
+          ]);
         }
         $query->execute();
       }
@@ -123,7 +123,7 @@ function tracker_cron() {
       // Prepare a starting point for the next run.
       $state->set('tracker.index_nid', $last_nid - 1);
 
-      \Drupal::logger('tracker')->notice('Indexed %count content items for tracking.', array('%count' => $count));
+      \Drupal::logger('tracker')->notice('Indexed %count content items for tracking.', ['%count' => $count]);
     }
     else {
       // If all nodes have been indexed, set to zero to skip future cron runs.
@@ -242,7 +242,7 @@ function tracker_comment_delete(CommentInterface $comment) {
 function _tracker_add($nid, $uid, $changed) {
   // @todo This should be actually filtering on the desired language and just
   //   fall back to the default language.
-  $node = db_query('SELECT nid, status, uid, changed FROM {node_field_data} WHERE nid = :nid AND default_langcode = 1 ORDER BY changed DESC, status DESC', array(':nid' => $nid))->fetchObject();
+  $node = db_query('SELECT nid, status, uid, changed FROM {node_field_data} WHERE nid = :nid AND default_langcode = 1 ORDER BY changed DESC, status DESC', [':nid' => $nid])->fetchObject();
 
   // Adding a comment can only increase the changed timestamp, so our
   // calculation here is simple.
@@ -251,30 +251,30 @@ function _tracker_add($nid, $uid, $changed) {
   // Update the node-level data.
   db_merge('tracker_node')
     ->key('nid', $nid)
-    ->fields(array(
+    ->fields([
       'changed' => $changed,
       'published' => $node->status,
-    ))
+    ])
     ->execute();
 
   // Create or update the user-level data, first for the user posting.
   db_merge('tracker_user')
-    ->keys(array(
+    ->keys([
       'nid' => $nid,
       'uid' => $uid,
-    ))
-    ->fields(array(
+    ])
+    ->fields([
       'changed' => $changed,
       'published' => $node->status,
-    ))
+    ])
     ->execute();
   // Update the times for all the other users tracking the post.
   db_update('tracker_user')
     ->condition('nid', $nid)
-    ->fields(array(
+    ->fields([
       'changed' => $changed,
       'published' => $node->status,
-    ))
+    ])
     ->execute();
 }
 
@@ -293,7 +293,7 @@ function _tracker_add($nid, $uid, $changed) {
  */
 function _tracker_calculate_changed($node) {
   $changed = $node->getChangedTime();
-  $latest_comment = \Drupal::service('comment.statistics')->read(array($node), 'node', FALSE);
+  $latest_comment = \Drupal::service('comment.statistics')->read([$node], 'node', FALSE);
   if ($latest_comment && $latest_comment->last_comment_timestamp > $changed) {
     $changed = $latest_comment->last_comment_timestamp;
   }
@@ -343,7 +343,7 @@ function _tracker_remove($nid, $uid = NULL, $changed = NULL) {
     // and the node itself.
     // We only need to do this if the removed item has a timestamp that equals
     // or exceeds the listed changed timestamp for the node.
-    $tracker_node = db_query('SELECT nid, changed FROM {tracker_node} WHERE nid = :nid', array(':nid' => $nid))->fetchObject();
+    $tracker_node = db_query('SELECT nid, changed FROM {tracker_node} WHERE nid = :nid', [':nid' => $nid])->fetchObject();
     if ($tracker_node && $changed >= $tracker_node->changed) {
       // If we're here, the item being removed is *possibly* the item that
       // established the node's changed timestamp.
@@ -354,17 +354,17 @@ function _tracker_remove($nid, $uid = NULL, $changed = NULL) {
       // And then we push the out the new changed timestamp to our denormalized
       // tables.
       db_update('tracker_node')
-        ->fields(array(
+        ->fields([
           'changed' => $changed,
           'published' => $node->isPublished(),
-        ))
+        ])
         ->condition('nid', $nid)
         ->execute();
       db_update('tracker_node')
-        ->fields(array(
+        ->fields([
           'changed' => $changed,
           'published' => $node->isPublished(),
-        ))
+        ])
         ->condition('nid', $nid)
         ->execute();
     }
diff --git a/core/modules/tracker/tracker.pages.inc b/core/modules/tracker/tracker.pages.inc
index e3082ac..76a775f 100644
--- a/core/modules/tracker/tracker.pages.inc
+++ b/core/modules/tracker/tracker.pages.inc
@@ -30,7 +30,7 @@ function tracker_page($account = NULL) {
       ->condition('t.uid', $account->id());
   }
   else {
-    $query = db_select('tracker_node', 't', array('target' => 'replica'))
+    $query = db_select('tracker_node', 't', ['target' => 'replica'])
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender')
       ->addMetaData('base_table', 'tracker_node');
   }
@@ -39,7 +39,7 @@ function tracker_page($account = NULL) {
   // while keeping the correct order.
   $tracker_data = $query
     ->addTag('node_access')
-    ->fields('t', array('nid', 'changed'))
+    ->fields('t', ['nid', 'changed'])
     ->condition('t.published', 1)
     ->orderBy('t.changed', 'DESC')
     ->limit(25)
@@ -86,34 +86,34 @@ function tracker_page($account = NULL) {
         $comments = $node->comment_count;
       }
 
-      $row = array(
+      $row = [
         'type' => node_get_type_label($node),
-        'title' => array(
-          'data' => array(
+        'title' => [
+          'data' => [
             '#type' => 'link',
             '#url' => $node->urlInfo(),
             '#title' => $node->getTitle(),
-          ),
+          ],
           'data-history-node-id' => $node->id(),
           'data-history-node-timestamp' => $node->getChangedTime(),
-        ),
-        'author' => array(
-          'data' => array(
+        ],
+        'author' => [
+          'data' => [
             '#theme' => 'username',
             '#account' => $node->getOwner(),
-          ),
-        ),
-        'comments' => array(
-          'class' => array('comments'),
+          ],
+        ],
+        'comments' => [
+          'class' => ['comments'],
           'data' => $comments,
           'data-history-node-last-comment-timestamp' => $node->last_comment_timestamp,
-        ),
-        'last updated' => array(
-          'data' => t('@time ago', array(
+        ],
+        'last updated' => [
+          'data' => t('@time ago', [
             '@time' => \Drupal::service('date.formatter')->formatTimeDiffSince($node->last_activity),
-          )),
-        ),
-      );
+          ]),
+        ],
+      ];
 
       $rows[] = $row;
 
@@ -128,16 +128,16 @@ function tracker_page($account = NULL) {
   // Add the list cache tag for nodes.
   $cache_tags = Cache::mergeTags($cache_tags, \Drupal::entityManager()->getDefinition('node')->getListCacheTags());
 
-  $page['tracker'] = array(
+  $page['tracker'] = [
     '#rows' => $rows,
-    '#header' => array(t('Type'), t('Title'), t('Author'), t('Comments'), t('Last updated')),
+    '#header' => [t('Type'), t('Title'), t('Author'), t('Comments'), t('Last updated')],
     '#type' => 'table',
     '#empty' => t('No content available.'),
-  );
-  $page['pager'] = array(
+  ];
+  $page['pager'] = [
     '#type' => 'pager',
     '#weight' => 10,
-  );
+  ];
   $page['#sorted'] = TRUE;
   $page['#cache']['tags'] = $cache_tags;
   $page['#cache']['contexts'][] = 'user.node_grants:view';
diff --git a/core/modules/tracker/tracker.views.inc b/core/modules/tracker/tracker.views.inc
index b7e4b95..5440287 100644
--- a/core/modules/tracker/tracker.views.inc
+++ b/core/modules/tracker/tracker.views.inc
@@ -9,146 +9,146 @@
  * Implements hook_views_data().
  */
 function tracker_views_data() {
-  $data = array();
+  $data = [];
 
   $data['tracker_node']['table']['group'] = t('Tracker');
-  $data['tracker_node']['table']['join'] = array(
-    'node_field_data' => array(
+  $data['tracker_node']['table']['join'] = [
+    'node_field_data' => [
       'type' => 'INNER',
       'left_field' => 'nid',
       'field' => 'nid',
-    ),
-  );
-  $data['tracker_node']['nid'] = array(
+    ],
+  ];
+  $data['tracker_node']['nid'] = [
     'title' => t('Nid'),
     'help' => t('The node ID of the node.'),
-    'field' => array(
+    'field' => [
       'id' => 'node',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'node_nid',
       'name field' => 'title',
       'numeric' => TRUE,
       'validate type' => 'nid',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
-  $data['tracker_node']['published'] = array(
+    ],
+  ];
+  $data['tracker_node']['published'] = [
     'title' => t('Published'),
     'help' => t('Whether or not the node is published.'),
-    'field' => array(
+    'field' => [
       'id' => 'boolean',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'boolean',
       'label' => t('Published'),
       'type' => 'yes-no',
       'accept null' => TRUE,
       'use_equal' => TRUE,
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
-  $data['tracker_node']['changed'] = array(
+    ],
+  ];
+  $data['tracker_node']['changed'] = [
     'title' => t('Updated date'),
     'help' => t('The date the node was last updated.'),
-    'field' => array(
+    'field' => [
       'id' => 'date',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'date',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
   $data['tracker_user']['table']['group'] = t('Tracker - User');
-  $data['tracker_user']['table']['join'] = array(
-    'node_field_data' => array(
+  $data['tracker_user']['table']['join'] = [
+    'node_field_data' => [
       'type' => 'INNER',
       'left_field' => 'nid',
       'field' => 'nid',
-    ),
-    'user_field_data' => array(
+    ],
+    'user_field_data' => [
       'type' => 'INNER',
       'left_field' => 'uid',
       'field' => 'uid',
-    ),
-  );
-  $data['tracker_user']['nid'] = array(
+    ],
+  ];
+  $data['tracker_user']['nid'] = [
     'title' => t('Nid'),
     'help' => t('The node ID of the node a user created or commented on. You must use an argument or filter on UID or you will get misleading results using this field.'),
-    'field' => array(
+    'field' => [
       'id' => 'node',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'node_nid',
       'name field' => 'title',
       'numeric' => TRUE,
       'validate type' => 'nid',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'numeric',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
-  $data['tracker_user']['uid'] = array(
+    ],
+  ];
+  $data['tracker_user']['uid'] = [
     'title' => t('Uid'),
     'help' => t('The user ID of a user who touched the node (either created or commented on it).'),
-    'field' => array(
+    'field' => [
       'id' => 'user_name',
-    ),
-    'argument' => array(
+    ],
+    'argument' => [
       'id' => 'user_uid',
       'name field' => 'name',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'title' => t('Name'),
       'id' => 'user_name',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
-  $data['tracker_user']['published'] = array(
+    ],
+  ];
+  $data['tracker_user']['published'] = [
     'title' => t('Published'),
     'help' => t('Whether or not the node is published. You must use an argument or filter on UID or you will get misleading results using this field.'),
-    'field' => array(
+    'field' => [
       'id' => 'boolean',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'boolean',
       'label' => t('Published'),
       'type' => 'yes-no',
       'accept null' => TRUE,
       'use_equal' => TRUE,
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'standard',
-    ),
-  );
-  $data['tracker_user']['changed'] = array(
+    ],
+  ];
+  $data['tracker_user']['changed'] = [
     'title' => t('Updated date'),
     'help' => t('The date the node was last updated or commented on. You must use an argument or filter on UID or you will get misleading results using this field.'),
-    'field' => array(
+    'field' => [
       'id' => 'date',
-    ),
-    'sort' => array(
+    ],
+    'sort' => [
       'id' => 'date',
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
@@ -158,22 +158,22 @@ function tracker_views_data() {
  */
 function tracker_views_data_alter(&$data) {
   // Provide additional uid_touch handlers which are handled by tracker
-  $data['node_field_data']['uid_touch_tracker'] = array(
+  $data['node_field_data']['uid_touch_tracker'] = [
     'group' => t('Tracker - User'),
     'title' => t('User posted or commented'),
     'help' => t('Display nodes only if a user posted the node or commented on the node.'),
-    'argument' => array(
+    'argument' => [
       'field' => 'uid',
       'name table' => 'users_field_data',
       'name field' => 'name',
       'id' => 'tracker_user_uid',
       'no group by' => TRUE,
-    ),
-    'filter' => array(
+    ],
+    'filter' => [
       'field' => 'uid',
       'name table' => 'users_field_data',
       'name field' => 'name',
       'id' => 'tracker_user_uid'
-    ),
-  );
+    ],
+  ];
 }
diff --git a/core/modules/update/src/Controller/UpdateController.php b/core/modules/update/src/Controller/UpdateController.php
index cdd63b8..30b25c2 100644
--- a/core/modules/update/src/Controller/UpdateController.php
+++ b/core/modules/update/src/Controller/UpdateController.php
@@ -44,9 +44,9 @@ public static function create(ContainerInterface $container) {
    *   A build array with the update status of projects.
    */
   public function updateStatus() {
-    $build = array(
+    $build = [
       '#theme' => 'update_report'
-    );
+    ];
     if ($available = update_get_available(TRUE)) {
       $this->moduleHandler()->loadInclude('update', 'compare.inc');
       $build['#data'] = update_calculate_project_data($available);
@@ -59,15 +59,15 @@ public function updateStatus() {
    */
   public function updateStatusManually() {
     $this->updateManager->refreshUpdateData();
-    $batch = array(
-      'operations' => array(
-        array(array($this->updateManager, 'fetchDataBatch'), array()),
-      ),
+    $batch = [
+      'operations' => [
+        [[$this->updateManager, 'fetchDataBatch'], []],
+      ],
       'finished' => 'update_fetch_data_finished',
       'title' => t('Checking available update data'),
       'progress_message' => t('Trying to check available update data ...'),
       'error_message' => t('Error checking available update data.'),
-    );
+    ];
     batch_set($batch);
     return batch_process('admin/reports/updates');
   }
diff --git a/core/modules/update/src/Form/UpdateManagerInstall.php b/core/modules/update/src/Form/UpdateManagerInstall.php
index 3bc2c78..b141182 100644
--- a/core/modules/update/src/Form/UpdateManagerInstall.php
+++ b/core/modules/update/src/Form/UpdateManagerInstall.php
@@ -79,41 +79,41 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       return $form;
     }
 
-    $form['help_text'] = array(
+    $form['help_text'] = [
       '#prefix' => '<p>',
-      '#markup' => $this->t('You can find <a href=":module_url">modules</a> and <a href=":theme_url">themes</a> on <a href=":drupal_org_url">drupal.org</a>. The following file extensions are supported: %extensions.', array(
+      '#markup' => $this->t('You can find <a href=":module_url">modules</a> and <a href=":theme_url">themes</a> on <a href=":drupal_org_url">drupal.org</a>. The following file extensions are supported: %extensions.', [
         ':module_url' => 'https://www.drupal.org/project/modules',
         ':theme_url' => 'https://www.drupal.org/project/themes',
         ':drupal_org_url' => 'https://www.drupal.org',
         '%extensions' => archiver_get_extensions(),
-      )),
+      ]),
       '#suffix' => '</p>',
-    );
+    ];
 
-    $form['project_url'] = array(
+    $form['project_url'] = [
       '#type' => 'url',
       '#title' => $this->t('Install from a URL'),
-      '#description' => $this->t('For example: %url', array('%url' => 'http://ftp.drupal.org/files/projects/name.tar.gz')),
-    );
+      '#description' => $this->t('For example: %url', ['%url' => 'http://ftp.drupal.org/files/projects/name.tar.gz']),
+    ];
 
-    $form['information'] = array(
+    $form['information'] = [
       '#prefix' => '<strong>',
       '#markup' => $this->t('Or'),
       '#suffix' => '</strong>',
-    );
+    ];
 
-    $form['project_upload'] = array(
+    $form['project_upload'] = [
       '#type' => 'file',
       '#title' => $this->t('Upload a module or theme archive to install'),
-      '#description' => $this->t('For example: %filename from your local computer', array('%filename' => 'name.tar.gz')),
-    );
+      '#description' => $this->t('For example: %filename from your local computer', ['%filename' => 'name.tar.gz']),
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#button_type' => 'primary',
       '#value' => $this->t('Install'),
-    );
+    ];
 
     return $form;
   }
@@ -136,12 +136,12 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if ($form_state->getValue('project_url')) {
       $local_cache = update_manager_file_get($form_state->getValue('project_url'));
       if (!$local_cache) {
-        drupal_set_message($this->t('Unable to retrieve Drupal project from %url.', array('%url' => $form_state->getValue('project_url'))), 'error');
+        drupal_set_message($this->t('Unable to retrieve Drupal project from %url.', ['%url' => $form_state->getValue('project_url')]), 'error');
         return;
       }
     }
     elseif ($_FILES['files']['name']['project_upload']) {
-      $validators = array('file_validate_extensions' => array(archiver_get_extensions()));
+      $validators = ['file_validate_extensions' => [archiver_get_extensions()]];
       if (!($finfo = file_save_upload('project_upload', $validators, NULL, 0, FILE_EXISTS_REPLACE))) {
         // Failed to upload the file. file_save_upload() calls
         // drupal_set_message() on failure.
@@ -170,7 +170,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     // MODULE/) and others list an actual file (i.e., MODULE/README.TXT).
     $project = strtok($files[0], '/\\');
 
-    $archive_errors = $this->moduleHandler->invokeAll('verify_update_archive', array($project, $local_cache, $directory));
+    $archive_errors = $this->moduleHandler->invokeAll('verify_update_archive', [$project, $local_cache, $directory]);
     if (!empty($archive_errors)) {
       drupal_set_message(array_shift($archive_errors), 'error');
       // @todo: Fix me in D8: We need a way to set multiple errors on the same
@@ -204,20 +204,20 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     }
 
     if (!$project_title) {
-      drupal_set_message($this->t('Unable to determine %project name.', array('%project' => $project)), 'error');
+      drupal_set_message($this->t('Unable to determine %project name.', ['%project' => $project]), 'error');
     }
 
     if ($updater->isInstalled()) {
-      drupal_set_message($this->t('%project is already installed.', array('%project' => $project_title)), 'error');
+      drupal_set_message($this->t('%project is already installed.', ['%project' => $project_title]), 'error');
       return;
     }
 
     $project_real_location = drupal_realpath($project_location);
-    $arguments = array(
+    $arguments = [
       'project' => $project,
       'updater_name' => get_class($updater),
       'local_url' => $project_real_location,
-    );
+    ];
 
     // This process is inherently difficult to test therefore use a state flag.
     $test_authorize = FALSE;
@@ -232,7 +232,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if (fileowner($project_real_location) == fileowner($this->sitePath) && !$test_authorize) {
       $this->moduleHandler->loadInclude('update', 'inc', 'update.authorize');
       $filetransfer = new Local($this->root);
-      $response = call_user_func_array('update_authorize_run_install', array_merge(array($filetransfer), $arguments));
+      $response = call_user_func_array('update_authorize_run_install', array_merge([$filetransfer], $arguments));
       if ($response instanceof Response) {
         $form_state->setResponse($response);
       }
diff --git a/core/modules/update/src/Form/UpdateManagerUpdate.php b/core/modules/update/src/Form/UpdateManagerUpdate.php
index 44b7f62..db497c2 100644
--- a/core/modules/update/src/Form/UpdateManagerUpdate.php
+++ b/core/modules/update/src/Form/UpdateManagerUpdate.php
@@ -64,13 +64,13 @@ public static function create(ContainerInterface $container) {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $this->moduleHandler->loadInclude('update', 'inc', 'update.manager');
 
-    $last_markup = array(
+    $last_markup = [
       '#theme' => 'update_last_check',
       '#last' => $this->state->get('update.last_check') ?: 0,
-    );
-    $form['last_check'] = array(
+    ];
+    $form['last_check'] = [
       '#markup' => drupal_render($last_markup),
-    );
+    ];
 
     if (!_update_manager_check_backends($form, 'update')) {
       return $form;
@@ -78,9 +78,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $available = update_get_available(TRUE);
     if (empty($available)) {
-      $form['message'] = array(
+      $form['message'] = [
         '#markup' => $this->t('There was a problem getting update information. Try again later.'),
-      );
+      ];
       return $form;
     }
 
@@ -91,11 +91,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // manual updates, such as core). Then, each subarray is an array of
     // projects of that type, indexed by project short name, and containing an
     // array of data for cells in that project's row in the appropriate table.
-    $projects = array();
+    $projects = [];
 
     // This stores the actual download link we're going to update from for each
     // project in the form, regardless of if it's enabled or disabled.
-    $form['project_downloads'] = array('#tree' => TRUE);
+    $form['project_downloads'] = ['#tree' => TRUE];
     $this->moduleHandler->loadInclude('update', 'inc', 'update.compare');
     $project_data = update_calculate_project_data($available);
     foreach ($project_data as $name => $project) {
@@ -134,25 +134,25 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         $recommended_version .= '<div title="{{ major_update_warning_title }}" class="update-major-version-warning">{{ major_update_warning_text }}</div>';
       }
 
-      $recommended_version = array(
+      $recommended_version = [
         '#type' => 'inline_template',
         '#template' => $recommended_version,
-        '#context' => array(
+        '#context' => [
           'release_version' => $recommended_release['version'],
           'release_link' => $recommended_release['release_link'],
-          'project_title' => $this->t('Release notes for @project_title', array('@project_title' => $project['title'])),
+          'project_title' => $this->t('Release notes for @project_title', ['@project_title' => $project['title']]),
           'major_update_warning_title' => $this->t('Major upgrade warning'),
           'major_update_warning_text' => $this->t('This update is a major version update which means that it may not be backwards compatible with your currently running version. It is recommended that you read the release notes and proceed at your own risk.'),
           'release_notes' => $this->t('Release notes'),
-        ),
-      );
+        ],
+      ];
 
       // Create an entry for this project.
-      $entry = array(
+      $entry = [
         'title' => $project_name,
         'installed_version' => $project['existing_version'],
-        'recommended_version' => array('data' => $recommended_version),
-      );
+        'recommended_version' => ['data' => $recommended_version],
+      ];
 
       switch ($project['status']) {
         case UPDATE_NOT_SECURE:
@@ -181,11 +181,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
 
       // Use the project title for the tableselect checkboxes.
-      $entry['title'] = array('data' => array(
+      $entry['title'] = ['data' => [
         '#title' => $entry['title'],
         '#markup' => $entry['title'],
-      ));
-      $entry['#attributes'] = array('class' => array('update-' . $type));
+      ]];
+      $entry['#attributes'] = ['class' => ['update-' . $type]];
 
       // Drupal core needs to be upgraded manually.
       $needs_manual = $project['project_type'] == 'core';
@@ -198,15 +198,15 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         unset($entry['#weight']);
         $attributes = $entry['#attributes'];
         unset($entry['#attributes']);
-        $entry = array(
+        $entry = [
           'data' => $entry,
-        ) + $attributes;
+        ] + $attributes;
       }
       else {
-        $form['project_downloads'][$name] = array(
+        $form['project_downloads'][$name] = [
           '#type' => 'value',
           '#value' => $recommended_release['download_link'],
-        );
+        ];
       }
 
       // Based on what kind of project this is, save the entry into the
@@ -230,62 +230,62 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     if (empty($projects)) {
-      $form['message'] = array(
+      $form['message'] = [
         '#markup' => $this->t('All of your projects are up to date.'),
-      );
+      ];
       return $form;
     }
 
-    $headers = array(
-      'title' => array(
+    $headers = [
+      'title' => [
         'data' => $this->t('Name'),
-        'class' => array('update-project-name'),
-      ),
+        'class' => ['update-project-name'],
+      ],
       'installed_version' => $this->t('Installed version'),
       'recommended_version' => $this->t('Recommended version'),
-    );
+    ];
 
     if (!empty($projects['enabled'])) {
-      $form['projects'] = array(
+      $form['projects'] = [
         '#type' => 'tableselect',
         '#header' => $headers,
         '#options' => $projects['enabled'],
-      );
+      ];
       if (!empty($projects['disabled'])) {
         $form['projects']['#prefix'] = '<h2>' . $this->t('Enabled') . '</h2>';
       }
     }
 
     if (!empty($projects['disabled'])) {
-      $form['disabled_projects'] = array(
+      $form['disabled_projects'] = [
         '#type' => 'tableselect',
         '#header' => $headers,
         '#options' => $projects['disabled'],
         '#weight' => 1,
         '#prefix' => '<h2>' . $this->t('Disabled') . '</h2>',
-      );
+      ];
     }
 
     // If either table has been printed yet, we need a submit button and to
     // validate the checkboxes.
     if (!empty($projects['enabled']) || !empty($projects['disabled'])) {
-      $form['actions'] = array('#type' => 'actions');
-      $form['actions']['submit'] = array(
+      $form['actions'] = ['#type' => 'actions'];
+      $form['actions']['submit'] = [
         '#type' => 'submit',
         '#value' => $this->t('Download these updates'),
-      );
+      ];
     }
 
     if (!empty($projects['manual'])) {
       $prefix = '<h2>' . $this->t('Manual updates required') . '</h2>';
       $prefix .= '<p>' . $this->t('Updates of Drupal core are not supported at this time.') . '</p>';
-      $form['manual_updates'] = array(
+      $form['manual_updates'] = [
         '#type' => 'table',
         '#header' => $headers,
         '#rows' => $projects['manual'],
         '#prefix' => $prefix,
         '#weight' => 120,
-      );
+      ];
     }
 
     return $form;
@@ -311,29 +311,29 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->moduleHandler->loadInclude('update', 'inc', 'update.manager');
-    $projects = array();
-    foreach (array('projects', 'disabled_projects') as $type) {
+    $projects = [];
+    foreach (['projects', 'disabled_projects'] as $type) {
       if (!$form_state->isValueEmpty($type)) {
         $projects = array_merge($projects, array_keys(array_filter($form_state->getValue($type))));
       }
     }
-    $operations = array();
+    $operations = [];
     foreach ($projects as $project) {
-      $operations[] = array(
+      $operations[] = [
         'update_manager_batch_project_get',
-        array(
+        [
           $project,
-          $form_state->getValue(array('project_downloads', $project)),
-        ),
-      );
+          $form_state->getValue(['project_downloads', $project]),
+        ],
+      ];
     }
-    $batch = array(
+    $batch = [
       'title' => $this->t('Downloading updates'),
       'init_message' => $this->t('Preparing to download selected updates'),
       'operations' => $operations,
       'finished' => 'update_manager_download_batch_finished',
       'file' => drupal_get_path('module', 'update') . '/update.manager.inc',
-    );
+    ];
     batch_set($batch);
   }
 
diff --git a/core/modules/update/src/Form/UpdateReady.php b/core/modules/update/src/Form/UpdateReady.php
index c8f64a3..ef9a2f1 100644
--- a/core/modules/update/src/Form/UpdateReady.php
+++ b/core/modules/update/src/Form/UpdateReady.php
@@ -91,23 +91,23 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       return $form;
     }
 
-    $form['backup'] = array(
+    $form['backup'] = [
       '#prefix' => '<strong>',
-      '#markup' => $this->t('Back up your database and site before you continue. <a href=":backup_url">Learn how</a>.', array(':backup_url' => 'https://www.drupal.org/node/22281')),
+      '#markup' => $this->t('Back up your database and site before you continue. <a href=":backup_url">Learn how</a>.', [':backup_url' => 'https://www.drupal.org/node/22281']),
       '#suffix' => '</strong>',
-    );
+    ];
 
-    $form['maintenance_mode'] = array(
+    $form['maintenance_mode'] = [
       '#title' => $this->t('Perform updates with site in maintenance mode (strongly recommended)'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Continue'),
-    );
+    ];
 
     return $form;
   }
@@ -126,7 +126,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       // Make sure the Updater registry is loaded.
       drupal_get_updaters();
 
-      $updates = array();
+      $updates = [];
       $directory = _update_manager_extract_directory();
 
       $projects = $_SESSION['update_manager_update_projects'];
@@ -137,11 +137,11 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         $project_location = $directory . '/' . $project;
         $updater = Updater::factory($project_location, $this->root);
         $project_real_location = drupal_realpath($project_location);
-        $updates[] = array(
+        $updates[] = [
           'project' => $project,
           'updater_name' => get_class($updater),
           'local_url' => $project_real_location,
-        );
+        ];
       }
 
       // If the owner of the last directory we extracted is the same as the
@@ -164,7 +164,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         // The page title must be passed here to ensure it is initially used
         // when authorize.php loads for the first time with the FTP/SSH
         // credentials form.
-        system_authorized_init('update_authorize_run_update', __DIR__ . '/../../update.authorize.inc', array($updates), $this->t('Update manager'));
+        system_authorized_init('update_authorize_run_update', __DIR__ . '/../../update.authorize.inc', [$updates], $this->t('Update manager'));
         $form_state->setRedirectUrl(system_authorized_get_url());
       }
     }
diff --git a/core/modules/update/src/Tests/FileTransferAuthorizeFormTest.php b/core/modules/update/src/Tests/FileTransferAuthorizeFormTest.php
index 0d0989b..9d1819f 100644
--- a/core/modules/update/src/Tests/FileTransferAuthorizeFormTest.php
+++ b/core/modules/update/src/Tests/FileTransferAuthorizeFormTest.php
@@ -14,11 +14,11 @@ class FileTransferAuthorizeFormTest extends UpdateTestBase {
    *
    * @var array
    */
-  public static $modules = array('update', 'update_test');
+  public static $modules = ['update', 'update_test'];
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer software updates', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer software updates', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     // Create a local cache so the module is not downloaded from drupal.org.
diff --git a/core/modules/update/src/Tests/UpdateContribTest.php b/core/modules/update/src/Tests/UpdateContribTest.php
index 88cf378..2a7c675 100644
--- a/core/modules/update/src/Tests/UpdateContribTest.php
+++ b/core/modules/update/src/Tests/UpdateContribTest.php
@@ -18,11 +18,11 @@ class UpdateContribTest extends UpdateTestBase {
    *
    * @var array
    */
-  public static $modules = array('update_test', 'update', 'aaa_update_test', 'bbb_update_test', 'ccc_update_test');
+  public static $modules = ['update_test', 'update', 'aaa_update_test', 'bbb_update_test', 'ccc_update_test'];
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
   }
 
@@ -30,18 +30,18 @@ protected function setUp() {
    * Tests when there is no available release data for a contrib module.
    */
   function testNoReleasesAvailable() {
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
-      'aaa_update_test' => array(
+      ],
+      'aaa_update_test' => [
         'project' => 'aaa_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
-    $this->refreshUpdateStatus(array('drupal' => '0.0', 'aaa_update_test' => 'no-releases'));
+    $this->refreshUpdateStatus(['drupal' => '0.0', 'aaa_update_test' => 'no-releases']);
     $this->drupalGet('admin/reports/updates');
     // Cannot use $this->standardTests() because we need to check for the
     // 'No available releases found' string.
@@ -62,22 +62,22 @@ function testNoReleasesAvailable() {
    */
   function testUpdateContribBasic() {
     $project_link = \Drupal::l(t('AAA Update test'), Url::fromUri('http://example.com/project/aaa_update_test'));
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
-      'aaa_update_test' => array(
+      ],
+      'aaa_update_test' => [
         'project' => 'aaa_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
     $this->refreshUpdateStatus(
-      array(
+      [
         'drupal' => '0.0',
         'aaa_update_test' => '1_0',
-      )
+      ]
     );
     $this->standardTests();
     $this->assertText(t('Up to date'));
@@ -90,10 +90,10 @@ function testUpdateContribBasic() {
     $system_info['aaa_update_test']['hidden'] = TRUE;
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
     $this->refreshUpdateStatus(
-      array(
+      [
         'drupal' => '0.0',
         'aaa_update_test' => '1_0',
-      )
+      ]
     );
     $this->assertNoRaw($project_link, 'Link to aaa_update_test project does not appear.');
 
@@ -101,10 +101,10 @@ function testUpdateContribBasic() {
     $system_info['aaa_update_test']['package'] = 'aaa_update_test';
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
     $this->refreshUpdateStatus(
-      array(
+      [
         'drupal' => '0.0',
         'aaa_update_test' => '1_0',
-      )
+      ]
     );
     $this->assertRaw($project_link, 'Link to aaa_update_test project appears.');
   }
@@ -124,38 +124,38 @@ function testUpdateContribBasic() {
    */
   function testUpdateContribOrder() {
     // We want core to be version 8.0.0.
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
+      ],
       // All the rest should be visible as contrib modules at version 8.x-1.0.
 
       // aaa_update_test needs to be part of the "CCC Update test" project,
       // which would throw off the report if we weren't properly sorting by
       // the project names.
-      'aaa_update_test' => array(
+      'aaa_update_test' => [
         'project' => 'ccc_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
+      ],
 
       // This should be its own project, and listed first on the report.
-      'bbb_update_test' => array(
+      'bbb_update_test' => [
         'project' => 'bbb_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
+      ],
 
       // This will contain both aaa_update_test and ccc_update_test, and
       // should come after the bbb_update_test project.
-      'ccc_update_test' => array(
+      'ccc_update_test' => [
         'project' => 'ccc_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
-    $this->refreshUpdateStatus(array('drupal' => '0.0', '#all' => '1_0'));
+    $this->refreshUpdateStatus(['drupal' => '0.0', '#all' => '1_0']);
     $this->standardTests();
     // We're expecting the report to say all projects are up to date.
     $this->assertText(t('Up to date'));
@@ -188,33 +188,33 @@ function testUpdateBaseThemeSecurityUpdate() {
     // @todo https://www.drupal.org/node/2338175 base themes have to be
     //  installed.
     // Only install the subtheme, not the base theme.
-    \Drupal::service('theme_handler')->install(array('update_test_subtheme'));
+    \Drupal::service('theme_handler')->install(['update_test_subtheme']);
 
     // Define the initial state for core and the subtheme.
-    $system_info = array(
+    $system_info = [
       // We want core to be version 8.0.0.
-      '#all' => array(
+      '#all' => [
         'version' => '8.0.0',
-      ),
+      ],
       // Show the update_test_basetheme
-      'update_test_basetheme' => array(
+      'update_test_basetheme' => [
         'project' => 'update_test_basetheme',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
+      ],
       // Show the update_test_subtheme
-      'update_test_subtheme' => array(
+      'update_test_subtheme' => [
         'project' => 'update_test_subtheme',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
-    $xml_mapping = array(
+    $xml_mapping = [
       'drupal' => '0.0',
       'update_test_subtheme' => '1_0',
       'update_test_basetheme' => '1_1-sec',
-    );
+    ];
     $this->refreshUpdateStatus($xml_mapping);
     $this->assertText(t('Security update required!'));
     $this->assertRaw(\Drupal::l(t('Update test base theme'), Url::fromUri('http://example.com/project/update_test_basetheme')), 'Link to the Update test base theme project appears.');
@@ -238,38 +238,38 @@ function testUpdateShowDisabledThemes() {
     $extension_config->save();
 
     // Define the initial state for core and the test contrib themes.
-    $system_info = array(
+    $system_info = [
       // We want core to be version 8.0.0.
-      '#all' => array(
+      '#all' => [
         'version' => '8.0.0',
-      ),
+      ],
       // The update_test_basetheme should be visible and up to date.
-      'update_test_basetheme' => array(
+      'update_test_basetheme' => [
         'project' => 'update_test_basetheme',
         'version' => '8.x-1.1',
         'hidden' => FALSE,
-      ),
+      ],
       // The update_test_subtheme should be visible and up to date.
-      'update_test_subtheme' => array(
+      'update_test_subtheme' => [
         'project' => 'update_test_subtheme',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     // When there are contributed modules in the site's file system, the
     // total number of attempts made in the test may exceed the default value
     // of update_max_fetch_attempts. Therefore this variable is set very high
     // to avoid test failures in those cases.
     $update_settings->set('fetch.max_attempts', 99999)->save();
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
-    $xml_mapping = array(
+    $xml_mapping = [
       'drupal' => '0.0',
       'update_test_subtheme' => '1_0',
       'update_test_basetheme' => '1_1-sec',
-    );
+    ];
     $base_theme_project_link = \Drupal::l(t('Update test base theme'), Url::fromUri('http://example.com/project/update_test_basetheme'));
     $sub_theme_project_link = \Drupal::l(t('Update test subtheme'), Url::fromUri('http://example.com/project/update_test_subtheme'));
-    foreach (array(TRUE, FALSE) as $check_disabled) {
+    foreach ([TRUE, FALSE] as $check_disabled) {
       $update_settings->set('check.disabled_extensions', $check_disabled)->save();
       $this->refreshUpdateStatus($xml_mapping);
       // In neither case should we see the "Themes" heading for installed
@@ -295,21 +295,21 @@ function testUpdateHiddenBaseTheme() {
     module_load_include('compare.inc', 'update');
 
     // Install the subtheme.
-    \Drupal::service('theme_handler')->install(array('update_test_subtheme'));
+    \Drupal::service('theme_handler')->install(['update_test_subtheme']);
 
     // Add a project and initial state for base theme and subtheme.
-    $system_info = array(
+    $system_info = [
       // Hide the update_test_basetheme.
-      'update_test_basetheme' => array(
+      'update_test_basetheme' => [
         'project' => 'update_test_basetheme',
         'hidden' => TRUE,
-      ),
+      ],
       // Show the update_test_subtheme.
-      'update_test_subtheme' => array(
+      'update_test_subtheme' => [
         'project' => 'update_test_subtheme',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
     $projects = \Drupal::service('update.manager')->getProjects();
     $theme_data = \Drupal::service('theme_handler')->rebuildThemeData();
@@ -323,37 +323,37 @@ function testUpdateHiddenBaseTheme() {
    * Makes sure that if we fetch from a broken URL, sane things happen.
    */
   function testUpdateBrokenFetchURL() {
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
-      'aaa_update_test' => array(
+      ],
+      'aaa_update_test' => [
         'project' => 'aaa_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-      'bbb_update_test' => array(
+      ],
+      'bbb_update_test' => [
         'project' => 'bbb_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-      'ccc_update_test' => array(
+      ],
+      'ccc_update_test' => [
         'project' => 'ccc_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
 
     // Ensure that the update information is correct before testing.
     $this->drupalGet('admin/reports/updates');
 
-    $xml_mapping = array(
+    $xml_mapping = [
       'drupal' => '0.0',
       'aaa_update_test' => '1_0',
       'bbb_update_test' => 'does-not-exist',
       'ccc_update_test' => '1_0',
-    );
+    ];
     $this->refreshUpdateStatus($xml_mapping);
 
     $this->assertText(t('Up to date'));
@@ -388,31 +388,31 @@ function testUpdateBrokenFetchURL() {
    */
   function testHookUpdateStatusAlter() {
     $update_test_config = $this->config('update_test.settings');
-    $update_admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer software updates'));
+    $update_admin_user = $this->drupalCreateUser(['administer site configuration', 'administer software updates']);
     $this->drupalLogin($update_admin_user);
 
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
-      'aaa_update_test' => array(
+      ],
+      'aaa_update_test' => [
         'project' => 'aaa_update_test',
         'version' => '8.x-1.0',
         'hidden' => FALSE,
-      ),
-    );
+      ],
+    ];
     $update_test_config->set('system_info', $system_info)->save();
-    $update_status = array(
-      'aaa_update_test' => array(
+    $update_status = [
+      'aaa_update_test' => [
         'status' => UPDATE_NOT_SECURE,
-      ),
-    );
+      ],
+    ];
     $update_test_config->set('update_status', $update_status)->save();
     $this->refreshUpdateStatus(
-      array(
+      [
         'drupal' => '0.0',
         'aaa_update_test' => '1_0',
-      )
+      ]
     );
     $this->drupalGet('admin/reports/updates');
     $this->assertRaw('<h3>' . t('Modules') . '</h3>');
@@ -421,7 +421,7 @@ function testHookUpdateStatusAlter() {
 
     // Visit the reports page again without the altering and make sure the
     // status is back to normal.
-    $update_test_config->set('update_status', array())->save();
+    $update_test_config->set('update_status', [])->save();
     $this->drupalGet('admin/reports/updates');
     $this->assertRaw('<h3>' . t('Modules') . '</h3>');
     $this->assertNoText(t('Security update required!'));
@@ -433,7 +433,7 @@ function testHookUpdateStatusAlter() {
     $this->assertText(t('Security update'));
 
     // Turn the altering back off and visit the Update manager UI.
-    $update_test_config->set('update_status', array())->save();
+    $update_test_config->set('update_status', [])->save();
     $this->drupalGet('admin/modules/update');
     $this->assertNoText(t('Security update'));
   }
diff --git a/core/modules/update/src/Tests/UpdateCoreTest.php b/core/modules/update/src/Tests/UpdateCoreTest.php
index baecde8..48b3fcd 100644
--- a/core/modules/update/src/Tests/UpdateCoreTest.php
+++ b/core/modules/update/src/Tests/UpdateCoreTest.php
@@ -21,7 +21,7 @@ class UpdateCoreTest extends UpdateTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer modules', 'administer themes'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration', 'administer modules', 'administer themes']);
     $this->drupalLogin($admin_user);
     $this->drupalPlaceBlock('local_actions_block');
   }
@@ -33,11 +33,11 @@ protected function setUp() {
    *   The version.
    */
   protected function setSystemInfo($version) {
-    $setting = array(
-      '#all' => array(
+    $setting = [
+      '#all' => [
         'version' => $version,
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $setting)->save();
   }
 
@@ -45,11 +45,11 @@ protected function setSystemInfo($version) {
    * Tests the Update Manager module when no updates are available.
    */
   function testNoUpdatesAvailable() {
-    foreach (array(0, 1) as $minor_version) {
-      foreach (array(0, 1) as $patch_version) {
-        foreach (array('-alpha1', '-beta1', '') as $extra_version) {
+    foreach ([0, 1] as $minor_version) {
+      foreach ([0, 1] as $patch_version) {
+        foreach (['-alpha1', '-beta1', ''] as $extra_version) {
           $this->setSystemInfo("8.$minor_version.$patch_version" . $extra_version);
-          $this->refreshUpdateStatus(array('drupal' => "$minor_version.$patch_version" . $extra_version));
+          $this->refreshUpdateStatus(['drupal' => "$minor_version.$patch_version" . $extra_version]);
           $this->standardTests();
           $this->assertText(t('Up to date'));
           $this->assertNoText(t('Update available'));
@@ -70,9 +70,9 @@ function testNormalUpdateAvailable() {
     $this->drupalGet('admin/reports/updates/check');
     $this->assertResponse(403, 'Accessing admin/reports/updates/check without a CSRF token results in access denied.');
 
-    foreach (array(0, 1) as $minor_version) {
-      foreach (array('-alpha1', '-beta1', '') as $extra_version) {
-        $this->refreshUpdateStatus(array('drupal' => "$minor_version.1" . $extra_version));
+    foreach ([0, 1] as $minor_version) {
+      foreach (['-alpha1', '-beta1', ''] as $extra_version) {
+        $this->refreshUpdateStatus(['drupal' => "$minor_version.1" . $extra_version]);
         $this->standardTests();
         $this->drupalGet('admin/reports/updates');
         $this->clickLink(t('Check manually'));
@@ -131,11 +131,11 @@ function testNormalUpdateAvailable() {
    * Tests the Update Manager module when a major update is available.
    */
   function testMajorUpdateAvailable() {
-    foreach (array(0, 1) as $minor_version) {
-      foreach (array(0, 1) as $patch_version) {
-        foreach (array('-alpha1', '-beta1', '') as $extra_version) {
+    foreach ([0, 1] as $minor_version) {
+      foreach ([0, 1] as $patch_version) {
+        foreach (['-alpha1', '-beta1', ''] as $extra_version) {
           $this->setSystemInfo("8.$minor_version.$patch_version" . $extra_version);
-          $this->refreshUpdateStatus(array('drupal' => '9'));
+          $this->refreshUpdateStatus(['drupal' => '9']);
           $this->standardTests();
           $this->drupalGet('admin/reports/updates');
           $this->clickLink(t('Check manually'));
@@ -157,9 +157,9 @@ function testMajorUpdateAvailable() {
    * Tests the Update Manager module when a security update is available.
    */
   function testSecurityUpdateAvailable() {
-    foreach (array(0, 1) as $minor_version) {
+    foreach ([0, 1] as $minor_version) {
       $this->setSystemInfo("8.$minor_version.0");
-      $this->refreshUpdateStatus(array('drupal' => "$minor_version.2-sec"));
+      $this->refreshUpdateStatus(['drupal' => "$minor_version.2-sec"]);
       $this->standardTests();
       $this->assertNoText(t('Up to date'));
       $this->assertNoText(t('Update available'));
@@ -175,19 +175,19 @@ function testSecurityUpdateAvailable() {
    * Ensures proper results where there are date mismatches among modules.
    */
   function testDatestampMismatch() {
-    $system_info = array(
-      '#all' => array(
+    $system_info = [
+      '#all' => [
         // We need to think we're running a -dev snapshot to see dates.
         'version' => '8.1.0-dev',
         'datestamp' => time(),
-      ),
-      'block' => array(
+      ],
+      'block' => [
         // This is 2001-09-09 01:46:40 GMT, so test for "2001-Sep-".
         'datestamp' => '1000000000',
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')->set('system_info', $system_info)->save();
-    $this->refreshUpdateStatus(array('drupal' => 'dev'));
+    $this->refreshUpdateStatus(['drupal' => 'dev']);
     $this->assertNoText(t('2001-Sep-'));
     $this->assertText(t('Up to date'));
     $this->assertNoText(t('Update available'));
@@ -203,7 +203,7 @@ function testModulePageRunCron() {
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
       ->save();
     $this->config('update_test.settings')
-      ->set('xml_map', array('drupal' => '0.0'))
+      ->set('xml_map', ['drupal' => '0.0'])
       ->save();
 
     $this->cronRun();
@@ -221,7 +221,7 @@ function testModulePageUpToDate() {
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
       ->save();
     $this->config('update_test.settings')
-      ->set('xml_map', array('drupal' => '0.0'))
+      ->set('xml_map', ['drupal' => '0.0'])
       ->save();
 
     $this->drupalGet('admin/reports/updates');
@@ -242,7 +242,7 @@ function testModulePageRegularUpdate() {
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
       ->save();
     $this->config('update_test.settings')
-      ->set('xml_map', array('drupal' => '0.1'))
+      ->set('xml_map', ['drupal' => '0.1'])
       ->save();
 
     $this->drupalGet('admin/reports/updates');
@@ -263,7 +263,7 @@ function testModulePageSecurityUpdate() {
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
       ->save();
     $this->config('update_test.settings')
-      ->set('xml_map', array('drupal' => '0.2-sec'))
+      ->set('xml_map', ['drupal' => '0.2-sec'])
       ->save();
 
     $this->drupalGet('admin/reports/updates');
@@ -296,7 +296,7 @@ function testModulePageSecurityUpdate() {
    * Tests the Update Manager module when the update server returns 503 errors.
    */
   function testServiceUnavailable() {
-    $this->refreshUpdateStatus(array(), '503-error');
+    $this->refreshUpdateStatus([], '503-error');
     // Ensure that no "Warning: SimpleXMLElement..." parse errors are found.
     $this->assertNoText('SimpleXMLElement');
     $this->assertUniqueText(t('Failed to get available update data for one project.'));
@@ -306,12 +306,12 @@ function testServiceUnavailable() {
    * Tests that exactly one fetch task per project is created and not more.
    */
   function testFetchTasks() {
-    $projecta = array(
+    $projecta = [
       'name' => 'aaa_update_test',
-    );
-    $projectb = array(
+    ];
+    $projectb = [
       'name' => 'bbb_update_test',
-    );
+    ];
     $queue = \Drupal::queue('update_fetch_tasks');
     $this->assertEqual($queue->numberOfItems(), 0, 'Queue is empty');
     update_create_fetch_task($projecta);
@@ -338,7 +338,7 @@ function testLanguageModuleUpdate() {
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
       ->save();
     $this->config('update_test.settings')
-      ->set('xml_map', array('drupal' => '0.1'))
+      ->set('xml_map', ['drupal' => '0.1'])
       ->save();
 
     $this->drupalGet('admin/reports/updates');
@@ -349,7 +349,7 @@ function testLanguageModuleUpdate() {
    * Ensures that the local actions appear.
    */
   public function testLocalActions() {
-    $admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer modules', 'administer software updates', 'administer themes'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration', 'administer modules', 'administer software updates', 'administer themes']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('admin/modules');
diff --git a/core/modules/update/src/Tests/UpdateDeleteFileIfStaleTest.php b/core/modules/update/src/Tests/UpdateDeleteFileIfStaleTest.php
index 63c2889..96f3ca8 100644
--- a/core/modules/update/src/Tests/UpdateDeleteFileIfStaleTest.php
+++ b/core/modules/update/src/Tests/UpdateDeleteFileIfStaleTest.php
@@ -14,7 +14,7 @@ class UpdateDeleteFileIfStaleTest extends UpdateTestBase {
    *
    * @var array
    */
-  public static $modules = array('update');
+  public static $modules = ['update'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/update/src/Tests/UpdateTestBase.php b/core/modules/update/src/Tests/UpdateTestBase.php
index 9cb3c20..fc39d1a 100644
--- a/core/modules/update/src/Tests/UpdateTestBase.php
+++ b/core/modules/update/src/Tests/UpdateTestBase.php
@@ -63,7 +63,7 @@ protected function setUp() {
   protected function refreshUpdateStatus($xml_map, $url = 'update-test') {
     // Tell the Update Manager module to fetch from the URL provided by
     // update_test module.
-    $this->config('update.settings')->set('fetch.url', Url::fromUri('base:' . $url, array('absolute' => TRUE))->toString())->save();
+    $this->config('update.settings')->set('fetch.url', Url::fromUri('base:' . $url, ['absolute' => TRUE])->toString())->save();
     // Save the map for UpdateTestController::updateTest() to use.
     $this->config('update_test.settings')->set('xml_map', $xml_map)->save();
     // Manually check the update status.
diff --git a/core/modules/update/src/Tests/UpdateUploadTest.php b/core/modules/update/src/Tests/UpdateUploadTest.php
index 9b52962..c3de290 100644
--- a/core/modules/update/src/Tests/UpdateUploadTest.php
+++ b/core/modules/update/src/Tests/UpdateUploadTest.php
@@ -18,11 +18,11 @@ class UpdateUploadTest extends UpdateTestBase {
    *
    * @var array
    */
-  public static $modules = array('update', 'update_test');
+  public static $modules = ['update', 'update_test'];
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer modules', 'administer software updates', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer modules', 'administer software updates', 'administer site configuration']);
     $this->drupalLogin($admin_user);
   }
 
@@ -39,23 +39,23 @@ public function testUploadModule() {
     // emits a notice in strict mode.
     $imageTestFiles = $this->drupalGetTestFiles('image');
     $invalidArchiveFile = reset($imageTestFiles);
-    $edit = array(
+    $edit = [
       'files[project_upload]' => $invalidArchiveFile->uri,
-    );
+    ];
     // This also checks that the correct archive extensions are allowed.
     $this->drupalPostForm('admin/modules/install', $edit, t('Install'));
-    $this->assertText(t('Only files with the following extensions are allowed: @archive_extensions.', array('@archive_extensions' => archiver_get_extensions())), 'Only valid archives can be uploaded.');
+    $this->assertText(t('Only files with the following extensions are allowed: @archive_extensions.', ['@archive_extensions' => archiver_get_extensions()]), 'Only valid archives can be uploaded.');
     $this->assertUrl('admin/modules/install');
 
     // Check to ensure an existing module can't be reinstalled. Also checks that
     // the archive was extracted since we can't know if the module is already
     // installed until after extraction.
     $validArchiveFile = __DIR__ . '/../../tests/aaa_update_test.tar.gz';
-    $edit = array(
+    $edit = [
       'files[project_upload]' => $validArchiveFile,
-    );
+    ];
     $this->drupalPostForm('admin/modules/install', $edit, t('Install'));
-    $this->assertText(t('@module_name is already installed.', array('@module_name' => 'AAA Update test')), 'Existing module was extracted and not reinstalled.');
+    $this->assertText(t('@module_name is already installed.', ['@module_name' => 'AAA Update test']), 'Existing module was extracted and not reinstalled.');
     $this->assertUrl('admin/modules/install');
 
     // Ensure that a new module can be extracted and installed.
@@ -64,16 +64,16 @@ public function testUploadModule() {
     $installedInfoFilePath = $this->container->get('update.root') . '/' . $moduleUpdater::getRootDirectoryRelativePath() . '/update_test_new_module/update_test_new_module.info.yml';
     $this->assertFalse(file_exists($installedInfoFilePath), 'The new module does not exist in the filesystem before it is installed with the Update Manager.');
     $validArchiveFile = __DIR__ . '/../../tests/update_test_new_module/8.x-1.0/update_test_new_module.tar.gz';
-    $edit = array(
+    $edit = [
       'files[project_upload]' => $validArchiveFile,
-    );
+    ];
     $this->drupalPostForm('admin/modules/install', $edit, t('Install'));
     // Check that submitting the form takes the user to authorize.php.
     $this->assertUrl('core/authorize.php');
     $this->assertTitle('Update manager | Drupal');
     // Check for a success message on the page, and check that the installed
     // module now exists in the expected place in the filesystem.
-    $this->assertRaw(t('Installed %project_name successfully', array('%project_name' => 'update_test_new_module')));
+    $this->assertRaw(t('Installed %project_name successfully', ['%project_name' => 'update_test_new_module']));
     $this->assertTrue(file_exists($installedInfoFilePath), 'The new module exists in the filesystem after it is installed with the Update Manager.');
     // Ensure the links are relative to the site root and not
     // core/authorize.php.
@@ -98,27 +98,27 @@ public function testUploadModule() {
     $this->assertEqual($info['version'], '8.x-1.0');
 
     // Enable the module.
-    $this->drupalPostForm('admin/modules', array('modules[update_test_new_module][enable]' => TRUE), t('Install'));
+    $this->drupalPostForm('admin/modules', ['modules[update_test_new_module][enable]' => TRUE], t('Install'));
 
     // Define the update XML such that the new module downloaded above needs an
     // update from 8.x-1.0 to 8.x-1.1.
     $update_test_config = $this->config('update_test.settings');
-    $system_info = array(
-      'update_test_new_module' => array(
+    $system_info = [
+      'update_test_new_module' => [
         'project' => 'update_test_new_module',
-      ),
-    );
+      ],
+    ];
     $update_test_config->set('system_info', $system_info)->save();
-    $xml_mapping = array(
+    $xml_mapping = [
       'update_test_new_module' => '1_1',
-    );
+    ];
     $this->refreshUpdateStatus($xml_mapping);
 
     // Run the updates for the new module.
-    $this->drupalPostForm('admin/reports/updates/update', array('projects[update_test_new_module]' => TRUE), t('Download these updates'));
-    $this->drupalPostForm(NULL, array('maintenance_mode' => FALSE), t('Continue'));
+    $this->drupalPostForm('admin/reports/updates/update', ['projects[update_test_new_module]' => TRUE], t('Download these updates'));
+    $this->drupalPostForm(NULL, ['maintenance_mode' => FALSE], t('Continue'));
     $this->assertText(t('Update was completed successfully.'));
-    $this->assertRaw(t('Installed %project_name successfully', array('%project_name' => 'update_test_new_module')));
+    $this->assertRaw(t('Installed %project_name successfully', ['%project_name' => 'update_test_new_module']));
 
     // Parse the info file again to check that the module has been updated to
     // 8.x-1.1.
@@ -141,14 +141,14 @@ function testFileNameExtensionMerging() {
    * Checks the messages on update manager pages when missing a security update.
    */
   function testUpdateManagerCoreSecurityUpdateMessages() {
-    $setting = array(
-      '#all' => array(
+    $setting = [
+      '#all' => [
         'version' => '8.0.0',
-      ),
-    );
+      ],
+    ];
     $this->config('update_test.settings')
       ->set('system_info', $setting)
-      ->set('xml_map', array('drupal' => '0.2-sec'))
+      ->set('xml_map', ['drupal' => '0.2-sec'])
       ->save();
     $this->config('update.settings')
       ->set('fetch.url', Url::fromRoute('update_test.update_test')->setAbsolute()->toString())
diff --git a/core/modules/update/src/UpdateFetcher.php b/core/modules/update/src/UpdateFetcher.php
index 29d5582..2b03c9c 100644
--- a/core/modules/update/src/UpdateFetcher.php
+++ b/core/modules/update/src/UpdateFetcher.php
@@ -62,7 +62,7 @@ public function fetchProjectData(array $project, $site_key = '') {
     $data = '';
     try {
       $data = (string) $this->httpClient
-        ->get($url, array('headers' => array('Accept' => 'text/xml')))
+        ->get($url, ['headers' => ['Accept' => 'text/xml']])
         ->getBody();
     }
     catch (RequestException $exception) {
diff --git a/core/modules/update/src/UpdateManager.php b/core/modules/update/src/UpdateManager.php
index 52a7eb2..0741691 100644
--- a/core/modules/update/src/UpdateManager.php
+++ b/core/modules/update/src/UpdateManager.php
@@ -91,7 +91,7 @@ public function __construct(ConfigFactoryInterface $config_factory, ModuleHandle
     $this->keyValueStore = $key_value_expirable_factory->get('update');
     $this->themeHandler = $theme_handler;
     $this->availableReleasesTempStore = $key_value_expirable_factory->get('update_available_releases');
-    $this->projects = array();
+    $this->projects = [];
   }
 
   /**
@@ -151,11 +151,11 @@ public function getProjects() {
    * {@inheritdoc}
    */
   public function projectStorage($key) {
-    $projects = array();
+    $projects = [];
 
     // On certain paths, we should clear the data and recompute the projects for
     // update status of the site to avoid presenting stale information.
-    $route_names = array(
+    $route_names = [
       'update.theme_update',
       'system.modules_list',
       'system.theme_install',
@@ -169,12 +169,12 @@ public function projectStorage($key) {
       'update.manual_status',
       'update.confirmation_page',
       'system.themes_page',
-    );
+    ];
     if (in_array(\Drupal::routeMatch()->getRouteName(), $route_names)) {
       $this->keyValueStore->delete($key);
     }
     else {
-      $projects = $this->keyValueStore->get($key, array());
+      $projects = $this->keyValueStore->get($key, []);
     }
     return $projects;
   }
@@ -198,10 +198,10 @@ public function fetchDataBatch(&$context) {
       if ($item = $this->updateProcessor->claimQueueItem()) {
         if ($this->updateProcessor->processFetchTask($item->data)) {
           $context['results']['updated']++;
-          $context['message'] = $this->t('Checked available update data for %title.', array('%title' => $item->data['info']['name']));
+          $context['message'] = $this->t('Checked available update data for %title.', ['%title' => $item->data['info']['name']]);
         }
         else {
-          $context['message'] = $this->t('Failed to check available update data for %title.', array('%title' => $item->data['info']['name']));
+          $context['message'] = $this->t('Failed to check available update data for %title.', ['%title' => $item->data['info']['name']]);
           $context['results']['failures']++;
         }
         $context['sandbox']['progress']++;
diff --git a/core/modules/update/src/UpdateProcessor.php b/core/modules/update/src/UpdateProcessor.php
index 75e3241..25dfc7a 100644
--- a/core/modules/update/src/UpdateProcessor.php
+++ b/core/modules/update/src/UpdateProcessor.php
@@ -104,8 +104,8 @@ public function __construct(ConfigFactoryInterface $config_factory, QueueFactory
     $this->availableReleasesTempStore = $key_value_expirable_factory->get('update_available_releases');
     $this->stateStore = $state_store;
     $this->privateKey = $private_key;
-    $this->fetchTasks = array();
-    $this->failed = array();
+    $this->fetchTasks = [];
+    $this->failed = [];
   }
 
   /**
@@ -151,7 +151,7 @@ public function processFetchTask($project) {
     $max_fetch_attempts = $this->updateSettings->get('fetch.max_attempts');
 
     $success = FALSE;
-    $available = array();
+    $available = [];
     $site_key = Crypt::hmacBase64($base_url, $this->privateKey->get());
     $fetch_url_base = $this->updateFetcher->getFetchBaseUrl($project);
     $project_name = $project['name'];
@@ -219,23 +219,23 @@ protected function parseXml($raw_xml) {
     if (!isset($xml->short_name)) {
       return NULL;
     }
-    $data = array();
+    $data = [];
     foreach ($xml as $k => $v) {
       $data[$k] = (string) $v;
     }
-    $data['releases'] = array();
+    $data['releases'] = [];
     if (isset($xml->releases)) {
       foreach ($xml->releases->children() as $release) {
         $version = (string) $release->version;
-        $data['releases'][$version] = array();
+        $data['releases'][$version] = [];
         foreach ($release->children() as $k => $v) {
           $data['releases'][$version][$k] = (string) $v;
         }
-        $data['releases'][$version]['terms'] = array();
+        $data['releases'][$version]['terms'] = [];
         if ($release->terms) {
           foreach ($release->terms->children() as $term) {
             if (!isset($data['releases'][$version]['terms'][(string) $term->name])) {
-              $data['releases'][$version]['terms'][(string) $term->name] = array();
+              $data['releases'][$version]['terms'][(string) $term->name] = [];
             }
             $data['releases'][$version]['terms'][(string) $term->name][] = (string) $term->value;
           }
diff --git a/core/modules/update/src/UpdateSettingsForm.php b/core/modules/update/src/UpdateSettingsForm.php
index d830de5..1860269 100644
--- a/core/modules/update/src/UpdateSettingsForm.php
+++ b/core/modules/update/src/UpdateSettingsForm.php
@@ -59,42 +59,42 @@ protected function getEditableConfigNames() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('update.settings');
 
-    $form['update_check_frequency'] = array(
+    $form['update_check_frequency'] = [
       '#type' => 'radios',
       '#title' => t('Check for updates'),
       '#default_value' => $config->get('check.interval_days'),
-      '#options' => array(
+      '#options' => [
         '1' => t('Daily'),
         '7' => t('Weekly'),
-      ),
+      ],
       '#description' => t('Select how frequently you want to automatically check for new releases of your currently installed modules and themes.'),
-    );
+    ];
 
-    $form['update_check_disabled'] = array(
+    $form['update_check_disabled'] = [
       '#type' => 'checkbox',
       '#title' => t('Check for updates of uninstalled modules and themes'),
       '#default_value' => $config->get('check.disabled_extensions'),
-    );
+    ];
 
     $notification_emails = $config->get('notification.emails');
-    $form['update_notify_emails'] = array(
+    $form['update_notify_emails'] = [
       '#type' => 'textarea',
       '#title' => t('Email addresses to notify when updates are available'),
       '#rows' => 4,
       '#default_value' => implode("\n", $notification_emails),
       '#description' => t('Whenever your site checks for available updates and finds new releases, it can notify a list of users via email. Put each address on a separate line. If blank, no emails will be sent.'),
-    );
+    ];
 
-    $form['update_notification_threshold'] = array(
+    $form['update_notification_threshold'] = [
       '#type' => 'radios',
       '#title' => t('Email notification threshold'),
       '#default_value' => $config->get('notification.threshold'),
-      '#options' => array(
+      '#options' => [
         'all' => t('All newer versions'),
         'security' => t('Only security updates'),
-      ),
-      '#description' => t('You can choose to send email only if a security update is available, or to be notified about all newer versions. If there are updates available of Drupal core or any of your installed modules and themes, your site will always print a message on the <a href=":status_report">status report</a> page, and will also display an error message on administration pages if there is a security update.', array(':status_report' => $this->url('system.status')))
-    );
+      ],
+      '#description' => t('You can choose to send email only if a security update is available, or to be notified about all newer versions. If there are updates available of Drupal core or any of your installed modules and themes, your site will always print a message on the <a href=":status_report">status report</a> page, and will also display an error message on administration pages if there is a security update.', [':status_report' => $this->url('system.status')])
+    ];
 
     return parent::buildForm($form, $form_state);
   }
@@ -105,8 +105,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
   public function validateForm(array &$form, FormStateInterface $form_state) {
     $form_state->set('notify_emails', []);
     if (!$form_state->isValueEmpty('update_notify_emails')) {
-      $valid = array();
-      $invalid = array();
+      $valid = [];
+      $invalid = [];
       foreach (explode("\n", trim($form_state->getValue('update_notify_emails'))) as $email) {
         $email = trim($email);
         if (!empty($email)) {
@@ -122,10 +122,10 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
         $form_state->set('notify_emails', $valid);
       }
       elseif (count($invalid) == 1) {
-        $form_state->setErrorByName('update_notify_emails', $this->t('%email is not a valid email address.', array('%email' => reset($invalid))));
+        $form_state->setErrorByName('update_notify_emails', $this->t('%email is not a valid email address.', ['%email' => reset($invalid)]));
       }
       else {
-        $form_state->setErrorByName('update_notify_emails', $this->t('%emails are not valid email addresses.', array('%emails' => implode(', ', $invalid))));
+        $form_state->setErrorByName('update_notify_emails', $this->t('%emails are not valid email addresses.', ['%emails' => implode(', ', $invalid)]));
       }
     }
 
diff --git a/core/modules/update/tests/modules/update_test/src/Controller/UpdateTestController.php b/core/modules/update/tests/modules/update_test/src/Controller/UpdateTestController.php
index bdf6d34..3ca46ba 100644
--- a/core/modules/update/tests/modules/update_test/src/Controller/UpdateTestController.php
+++ b/core/modules/update/tests/modules/update_test/src/Controller/UpdateTestController.php
@@ -64,7 +64,7 @@ public function updateTest($project_name, $version) {
     }
 
     $file = __DIR__ . "/../../$project_name.$availability_scenario.xml";
-    $headers = array('Content-Type' => 'text/xml; charset=utf-8');
+    $headers = ['Content-Type' => 'text/xml; charset=utf-8'];
     if (!is_file($file)) {
       // Return an empty response.
       return new Response('', 200, $headers);
diff --git a/core/modules/update/tests/modules/update_test/src/Plugin/Archiver/UpdateTestArchiver.php b/core/modules/update/tests/modules/update_test/src/Plugin/Archiver/UpdateTestArchiver.php
index a9e499a..ffa4e46 100644
--- a/core/modules/update/tests/modules/update_test/src/Plugin/Archiver/UpdateTestArchiver.php
+++ b/core/modules/update/tests/modules/update_test/src/Plugin/Archiver/UpdateTestArchiver.php
@@ -32,7 +32,7 @@ public function remove($path) {
   /**
    * {@inheritdoc}
    */
-  public function extract($path, array $files = array()) {
+  public function extract($path, array $files = []) {
     return $this;
   }
 
@@ -40,7 +40,7 @@ public function extract($path, array $files = array()) {
    * {@inheritdoc}
    */
   public function listContents() {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php b/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
index 5737c09..4afcade 100644
--- a/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
+++ b/core/modules/update/tests/modules/update_test/src/TestFileTransferWithSettingsForm.php
@@ -29,11 +29,11 @@ public static function factory($jail, $settings) {
    * Returns a settings form with a text field to input a username.
    */
   public function getSettingsForm() {
-    $form = array();
-    $form['update_test_username'] = array(
+    $form = [];
+    $form['update_test_username'] = [
       '#type' => 'textfield',
       '#title' => t('Update Test Username'),
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/update/tests/modules/update_test/update_test.module b/core/modules/update/tests/modules/update_test/update_test.module
index 90b6cdc..5dd2070 100644
--- a/core/modules/update/tests/modules/update_test/update_test.module
+++ b/core/modules/update/tests/modules/update_test/update_test.module
@@ -20,7 +20,7 @@
  */
 function update_test_system_info_alter(&$info, Extension $file) {
   $setting = \Drupal::config('update_test.settings')->get('system_info');
-  foreach (array('#all', $file->getName()) as $id) {
+  foreach (['#all', $file->getName()] as $id) {
     if (!empty($setting[$id])) {
       foreach ($setting[$id] as $key => $value) {
         $info[$key] = $value;
@@ -44,7 +44,7 @@ function update_test_update_status_alter(&$projects) {
   $setting = \Drupal::config('update_test.settings')->get('update_status');
   if (!empty($setting)) {
     foreach ($projects as $project_name => &$project) {
-      foreach (array('#all', $project_name) as $id) {
+      foreach (['#all', $project_name] as $id) {
         if (!empty($setting[$id])) {
           foreach ($setting[$id] as $key => $value) {
             $project[$key] = $value;
@@ -62,11 +62,11 @@ function update_test_filetransfer_info() {
   // Define a test file transfer method, to ensure that there will always be at
   // least one method available in the user interface (regardless of the
   // environment in which the update manager tests are run).
-  return array(
-    'system_test' => array(
+  return [
+    'system_test' => [
       'title' => t('Update Test FileTransfer'),
       'class' => 'Drupal\update_test\TestFileTransferWithSettingsForm',
       'weight' => -20,
-    ),
-  );
+    ],
+  ];
 }
diff --git a/core/modules/update/tests/src/Kernel/Migrate/d6/MigrateUpdateConfigsTest.php b/core/modules/update/tests/src/Kernel/Migrate/d6/MigrateUpdateConfigsTest.php
index 6213892..aa3563c 100644
--- a/core/modules/update/tests/src/Kernel/Migrate/d6/MigrateUpdateConfigsTest.php
+++ b/core/modules/update/tests/src/Kernel/Migrate/d6/MigrateUpdateConfigsTest.php
@@ -17,7 +17,7 @@ class MigrateUpdateConfigsTest extends MigrateDrupal6TestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('update');
+  public static $modules = ['update'];
 
   /**
    * {@inheritdoc}
@@ -35,7 +35,7 @@ public function testUpdateSettings() {
     $this->assertIdentical(2, $config->get('fetch.max_attempts'));
     $this->assertIdentical('http://updates.drupal.org/release-history', $config->get('fetch.url'));
     $this->assertIdentical('all', $config->get('notification.threshold'));
-    $this->assertIdentical(array(), $config->get('notification.emails'));
+    $this->assertIdentical([], $config->get('notification.emails'));
     $this->assertIdentical(7, $config->get('check.interval_days'));
     $this->assertConfigSchema(\Drupal::service('config.typed'), 'update.settings', $config->get());
   }
diff --git a/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php b/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
index f57997f..113f006 100644
--- a/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
+++ b/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
@@ -12,7 +12,7 @@
 class UpdateLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('update' => 'core/modules/update');
+    $this->directoryList = ['update' => 'core/modules/update'];
     parent::setUp();
   }
 
@@ -22,20 +22,20 @@ protected function setUp() {
    * @dataProvider getUpdateReportRoutes
    */
   public function testUpdateReportLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('update.status', 'update.settings', 'update.report_update'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['update.status', 'update.settings', 'update.report_update'],
+    ]);
   }
 
   /**
    * Provides a list of report routes to test.
    */
   public function getUpdateReportRoutes() {
-    return array(
-      array('update.status'),
-      array('update.settings'),
-      array('update.report_update'),
-    );
+    return [
+      ['update.status'],
+      ['update.settings'],
+      ['update.report_update'],
+    ];
   }
 
   /**
@@ -44,9 +44,9 @@ public function getUpdateReportRoutes() {
    * @dataProvider getUpdateModuleRoutes
    */
   public function testUpdateModuleLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('update.module_update'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['update.module_update'],
+    ]);
     ;
   }
 
@@ -54,9 +54,9 @@ public function testUpdateModuleLocalTasks($route) {
    * Provides a list of module routes to test.
    */
   public function getUpdateModuleRoutes() {
-    return array(
-      array('update.module_update'),
-    );
+    return [
+      ['update.module_update'],
+    ];
   }
 
   /**
@@ -65,9 +65,9 @@ public function getUpdateModuleRoutes() {
    * @dataProvider getUpdateThemeRoutes
    */
   public function testUpdateThemeLocalTasks($route) {
-    $this->assertLocalTasks($route, array(
-      0 => array('update.theme_update'),
-    ));
+    $this->assertLocalTasks($route, [
+      0 => ['update.theme_update'],
+    ]);
     ;
   }
 
@@ -75,9 +75,9 @@ public function testUpdateThemeLocalTasks($route) {
    * Provides a list of theme routes to test.
    */
   public function getUpdateThemeRoutes() {
-    return array(
-      array('update.theme_update'),
-    );
+    return [
+      ['update.theme_update'],
+    ];
   }
 
 }
diff --git a/core/modules/update/tests/src/Unit/UpdateFetcherTest.php b/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
index c203f3b..c3e447d 100644
--- a/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
+++ b/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
@@ -27,7 +27,7 @@ class UpdateFetcherTest extends UnitTestCase {
    * {@inheritdoc}
    */
   protected function setUp() {
-    $config_factory = $this->getConfigFactoryStub(array('update.settings' => array('fetch_url' => 'http://www.example.com')));
+    $config_factory = $this->getConfigFactoryStub(['update.settings' => ['fetch_url' => 'http://www.example.com']]);
     $http_client_mock = $this->getMock('\GuzzleHttp\ClientInterface');
     $this->updateFetcher = new UpdateFetcher($config_factory, $http_client_mock);
   }
@@ -62,25 +62,25 @@ public function testUpdateBuildFetchUrl(array $project, $site_key, $expected) {
    *   - 'expected' - The expected url from UpdateFetcher::buildFetchUrl().
    */
   public function providerTestUpdateBuildFetchUrl() {
-    $data = array();
+    $data = [];
 
     // First test that we didn't break the trivial case.
     $project['name'] = 'update_test';
     $project['project_type'] = '';
     $project['info']['version'] = '';
     $project['info']['project status url'] = 'http://www.example.com';
-    $project['includes'] = array('module1' => 'Module 1', 'module2' => 'Module 2');
+    $project['includes'] = ['module1' => 'Module 1', 'module2' => 'Module 2'];
     $site_key = '';
     $expected = 'http://www.example.com/' . $project['name'] . '/' . DRUPAL_CORE_COMPATIBILITY;
 
-    $data[] = array($project, $site_key, $expected);
+    $data[] = [$project, $site_key, $expected];
 
     // For disabled projects it shouldn't add the site key either.
     $site_key = 'site_key';
     $project['project_type'] = 'disabled';
     $expected = 'http://www.example.com/' . $project['name'] . '/' . DRUPAL_CORE_COMPATIBILITY;
 
-    $data[] = array($project, $site_key, $expected);
+    $data[] = [$project, $site_key, $expected];
 
     // For enabled projects, test adding the site key.
     $project['project_type'] = '';
@@ -88,7 +88,7 @@ public function providerTestUpdateBuildFetchUrl() {
     $expected .= '?site_key=site_key';
     $expected .= '&list=' . rawurlencode('module1,module2');
 
-    $data[] = array($project, $site_key, $expected);
+    $data[] = [$project, $site_key, $expected];
 
     // Test when the URL contains a question mark.
     $project['info']['project status url'] = 'http://www.example.com/?project=';
@@ -96,7 +96,7 @@ public function providerTestUpdateBuildFetchUrl() {
     $expected .= '&site_key=site_key';
     $expected .= '&list=' . rawurlencode('module1,module2');
 
-    $data[] = array($project, $site_key, $expected);
+    $data[] = [$project, $site_key, $expected];
 
     return $data;
   }
diff --git a/core/modules/update/update.api.php b/core/modules/update/update.api.php
index 37ef66a..48216eb 100644
--- a/core/modules/update/update.api.php
+++ b/core/modules/update/update.api.php
@@ -40,11 +40,11 @@ function hook_update_projects_alter(&$projects) {
 
   // Add a disabled module to the list.
   // The key for the array should be the machine-readable project "short name".
-  $projects['disabled_project_name'] = array(
+  $projects['disabled_project_name'] = [
     // Machine-readable project short name (same as the array key above).
     'name' => 'disabled_project_name',
     // Array of values from the main .info.yml file for this project.
-    'info' => array(
+    'info' => [
       'name' => 'Some disabled module',
       'description' => 'A module not enabled on the site that you want to see in the available updates report.',
       'version' => '8.x-1.0',
@@ -52,7 +52,7 @@ function hook_update_projects_alter(&$projects) {
       // The maximum file change time (the "ctime" returned by the filectime()
       // PHP method) for all of the .info.yml files included in this project.
       '_info_file_ctime' => 1243888165,
-    ),
+    ],
     // The date stamp when the project was released, if known. If the disabled
     // project was an officially packaged release from drupal.org, this will
     // be included in the .info.yml file as the 'datestamp' field. This only
@@ -62,15 +62,15 @@ function hook_update_projects_alter(&$projects) {
     // Any modules (or themes) included in this project. Keyed by machine-
     // readable "short name", value is the human-readable project name printed
     // in the UI.
-    'includes' => array(
+    'includes' => [
       'disabled_project' => 'Disabled module',
       'disabled_project_helper' => 'Disabled module helper module',
       'disabled_project_foo' => 'Disabled module foo add-on module',
-    ),
+    ],
     // Does this project contain a 'module', 'theme', 'disabled-module', or
     // 'disabled-theme'?
     'project_type' => 'disabled-module',
-  );
+  ];
 }
 
 /**
@@ -92,11 +92,11 @@ function hook_update_status_alter(&$projects) {
       $projects[$project]['status'] = UPDATE_NOT_CHECKED;
       $projects[$project]['reason'] = t('Ignored from settings');
       if (!empty($settings[$project]['notes'])) {
-        $projects[$project]['extra'][] = array(
-          'class' => array('admin-note'),
+        $projects[$project]['extra'][] = [
+          'class' => ['admin-note'],
           'label' => t('Administrator note'),
           'data' => $settings[$project]['notes'],
-        );
+        ];
       }
     }
   }
@@ -120,9 +120,9 @@ function hook_update_status_alter(&$projects) {
  * @ingroup update_manager_file
  */
 function hook_verify_update_archive($project, $archive_file, $directory) {
-  $errors = array();
+  $errors = [];
   if (!file_exists($directory)) {
-    $errors[] = t('The %directory does not exist.', array('%directory' => $directory));
+    $errors[] = t('The %directory does not exist.', ['%directory' => $directory]);
   }
   // Add other checks on the archive integrity here.
   return $errors;
diff --git a/core/modules/update/update.authorize.inc b/core/modules/update/update.authorize.inc
index 58f1464..1c2cc60 100644
--- a/core/modules/update/update.authorize.inc
+++ b/core/modules/update/update.authorize.inc
@@ -36,25 +36,25 @@
  *   should use that response for the current page request.
  */
 function update_authorize_run_update($filetransfer, $projects) {
-  $operations = array();
+  $operations = [];
   foreach ($projects as $project_info) {
-    $operations[] = array(
+    $operations[] = [
       'update_authorize_batch_copy_project',
-      array(
+      [
         $project_info['project'],
         $project_info['updater_name'],
         $project_info['local_url'],
         $filetransfer,
-      ),
-    );
+      ],
+    ];
   }
 
-  $batch = array(
+  $batch = [
     'init_message' => t('Preparing to update your site'),
     'operations' => $operations,
     'finished' => 'update_authorize_update_batch_finished',
     'file' => drupal_get_path('module', 'update') . '/update.authorize.inc',
-  );
+  ];
   batch_set($batch);
 
   // Since authorize.php has its own method for setting the page title, set it
@@ -91,30 +91,30 @@ function update_authorize_run_update($filetransfer, $projects) {
  *   should use that response for the current page request.
  */
 function update_authorize_run_install($filetransfer, $project, $updater_name, $local_url) {
-  $operations[] = array(
+  $operations[] = [
     'update_authorize_batch_copy_project',
-    array(
+    [
       $project,
       $updater_name,
       $local_url,
       $filetransfer,
-    ),
-  );
+    ],
+  ];
 
   // @todo Instantiate our Updater to set the human-readable title?
-  $batch = array(
+  $batch = [
     'init_message' => t('Preparing to install'),
     'operations' => $operations,
     // @todo Use a different finished callback for different messages?
     'finished' => 'update_authorize_install_batch_finished',
     'file' => drupal_get_path('module', 'update') . '/update.authorize.inc',
-  );
+  ];
   batch_set($batch);
 
   // Since authorize.php has its own method for setting the page title, set it
   // manually here rather than passing it in to batch_set() as would normally
   // be done.
-  $_SESSION['authorize_page_title'] = t('Installing %project', array('%project' => $project));
+  $_SESSION['authorize_page_title'] = t('Installing %project', ['%project' => $project]);
 
   // Invoke the batch via authorize.php.
   return system_authorized_batch_process();
@@ -142,14 +142,14 @@ function update_authorize_batch_copy_project($project, $updater_name, $local_url
 
   // Initialize some variables in the Batch API $context array.
   if (!isset($context['results']['log'])) {
-    $context['results']['log'] = array();
+    $context['results']['log'] = [];
   }
   if (!isset($context['results']['log'][$project])) {
-    $context['results']['log'][$project] = array();
+    $context['results']['log'][$project] = [];
   }
 
   if (!isset($context['results']['tasks'])) {
-    $context['results']['tasks'] = array();
+    $context['results']['tasks'] = [];
   }
 
   // The batch API uses a session, and since all the arguments are serialized
@@ -184,7 +184,7 @@ function update_authorize_batch_copy_project($project, $updater_name, $local_url
     return;
   }
 
-  _update_batch_create_message($context['results']['log'][$project], t('Installed %project_name successfully', array('%project_name' => $project)));
+  _update_batch_create_message($context['results']['log'][$project], t('Installed %project_name successfully', ['%project_name' => $project]));
   if (!empty($tasks)) {
     $context['results']['tasks'] += $tasks;
   }
@@ -221,29 +221,29 @@ function update_authorize_update_batch_finished($success, $results) {
     // Take the site out of maintenance mode if it was previously that way.
     if ($offline && isset($_SESSION['maintenance_mode']) && $_SESSION['maintenance_mode'] == FALSE) {
       \Drupal::state()->set('system.maintenance_mode', FALSE);
-      $page_message = array(
+      $page_message = [
         'message' => t('Update was completed successfully. Your site has been taken out of maintenance mode.'),
         'type' => 'status',
-      );
+      ];
     }
     else {
-      $page_message = array(
+      $page_message = [
         'message' => t('Update was completed successfully.'),
         'type' => 'status',
-      );
+      ];
     }
   }
   elseif (!$offline) {
-    $page_message = array(
+    $page_message = [
       'message' => t('Update failed! See the log below for more information.'),
       'type' => 'error',
-    );
+    ];
   }
   else {
-    $page_message = array(
+    $page_message = [
       'message' => t('Update failed! See the log below for more information. Your site is still in maintenance mode.'),
       'type' => 'error',
-    );
+    ];
   }
   // Since we're doing an update of existing code, always add a task for
   // running update.php.
@@ -300,29 +300,29 @@ function update_authorize_install_batch_finished($success, $results) {
     // Take the site out of maintenance mode if it was previously that way.
     if ($offline && isset($_SESSION['maintenance_mode']) && $_SESSION['maintenance_mode'] == FALSE) {
       \Drupal::state()->set('system.maintenance_mode', FALSE);
-      $page_message = array(
+      $page_message = [
         'message' => t('Installation was completed successfully. Your site has been taken out of maintenance mode.'),
         'type' => 'status',
-      );
+      ];
     }
     else {
-      $page_message = array(
+      $page_message = [
         'message' => t('Installation was completed successfully.'),
         'type' => 'status',
-      );
+      ];
     }
   }
   elseif (!$success && !$offline) {
-    $page_message = array(
+    $page_message = [
       'message' => t('Installation failed! See the log below for more information.'),
       'type' => 'error',
-    );
+    ];
   }
   else {
-    $page_message = array(
+    $page_message = [
       'message' => t('Installation failed! See the log below for more information. Your site is still in maintenance mode.'),
       'type' => 'error',
-    );
+    ];
   }
 
   // Unset the variable since it is no longer needed.
@@ -348,7 +348,7 @@ function update_authorize_install_batch_finished($success, $results) {
  *   if there were errors. Defaults to TRUE.
  */
 function _update_batch_create_message(&$project_results, $message, $success = TRUE) {
-  $project_results[] = array('message' => $message, 'success' => $success);
+  $project_results[] = ['message' => $message, 'success' => $success];
 }
 
 /**
diff --git a/core/modules/update/update.compare.inc b/core/modules/update/update.compare.inc
index a077c38..2ba5fdc 100644
--- a/core/modules/update/update.compare.inc
+++ b/core/modules/update/update.compare.inc
@@ -32,7 +32,7 @@ function update_process_project_info(&$projects) {
       // Figure out what the currently installed major version is. We need
       // to handle both contribution (e.g. "5.x-1.3", major = 1) and core
       // (e.g. "5.1", major = 5) version strings.
-      $matches = array();
+      $matches = [];
       if (preg_match('/^(\d+\.x-)?(\d+)\..*$/', $info['version'], $matches)) {
         $info['major'] = $matches[2];
       }
@@ -171,7 +171,7 @@ function update_calculate_project_data($available) {
  *   Data about available project releases of a specific project.
  */
 function update_calculate_project_update_status(&$project_data, $available) {
-  foreach (array('title', 'link') as $attribute) {
+  foreach (['title', 'link'] as $attribute) {
     if (!isset($project_data[$attribute]) && isset($available[$attribute])) {
       $project_data[$attribute] = $available[$attribute];
     }
@@ -184,33 +184,33 @@ function update_calculate_project_update_status(&$project_data, $available) {
       case 'insecure':
         $project_data['status'] = UPDATE_NOT_SECURE;
         if (empty($project_data['extra'])) {
-          $project_data['extra'] = array();
+          $project_data['extra'] = [];
         }
-        $project_data['extra'][] = array(
+        $project_data['extra'][] = [
           'label' => t('Project not secure'),
           'data' => t('This project has been labeled insecure by the Drupal security team, and is no longer available for download. Immediately disabling everything included by this project is strongly recommended!'),
-        );
+        ];
         break;
       case 'unpublished':
       case 'revoked':
         $project_data['status'] = UPDATE_REVOKED;
         if (empty($project_data['extra'])) {
-          $project_data['extra'] = array();
+          $project_data['extra'] = [];
         }
-        $project_data['extra'][] = array(
+        $project_data['extra'][] = [
           'label' => t('Project revoked'),
           'data' => t('This project has been revoked, and is no longer available for download. Disabling everything included by this project is strongly recommended!'),
-        );
+        ];
         break;
       case 'unsupported':
         $project_data['status'] = UPDATE_NOT_SUPPORTED;
         if (empty($project_data['extra'])) {
-          $project_data['extra'] = array();
+          $project_data['extra'] = [];
         }
-        $project_data['extra'][] = array(
+        $project_data['extra'][] = [
           'label' => t('Project not supported'),
           'data' => t('This project is no longer supported, and is no longer available for download. Disabling everything included by this project is strongly recommended!'),
-        );
+        ];
         break;
       case 'not-fetched':
         $project_data['status'] = UPDATE_NOT_FETCHED;
@@ -233,7 +233,7 @@ function update_calculate_project_update_status(&$project_data, $available) {
 
   // Figure out the target major version.
   $existing_major = $project_data['existing_major'];
-  $supported_majors = array();
+  $supported_majors = [];
   if (isset($available['supported_majors'])) {
     $supported_majors = explode(',', $available['supported_majors']);
   }
@@ -303,25 +303,25 @@ function update_calculate_project_update_status(&$project_data, $available) {
       elseif ($release['status'] == 'unpublished') {
         $project_data['status'] = UPDATE_REVOKED;
         if (empty($project_data['extra'])) {
-          $project_data['extra'] = array();
+          $project_data['extra'] = [];
         }
-        $project_data['extra'][] = array(
-          'class' => array('release-revoked'),
+        $project_data['extra'][] = [
+          'class' => ['release-revoked'],
           'label' => t('Release revoked'),
           'data' => t('Your currently installed release has been revoked, and is no longer available for download. Disabling everything included in this release or upgrading is strongly recommended!'),
-        );
+        ];
       }
       elseif (isset($release['terms']['Release type']) &&
               in_array('Unsupported', $release['terms']['Release type'])) {
         $project_data['status'] = UPDATE_NOT_SUPPORTED;
         if (empty($project_data['extra'])) {
-          $project_data['extra'] = array();
+          $project_data['extra'] = [];
         }
-        $project_data['extra'][] = array(
-          'class' => array('release-not-supported'),
+        $project_data['extra'][] = [
+          'class' => ['release-not-supported'],
           'label' => t('Release not supported'),
           'data' => t('Your currently installed release is now unsupported, and is no longer available for download. Disabling everything included in this release or upgrading is strongly recommended!'),
-        );
+        ];
       }
     }
 
@@ -341,7 +341,7 @@ function update_calculate_project_update_status(&$project_data, $available) {
     if (isset($release['version_major']) && $release['version_major'] > $target_major) {
       if (in_array($release['version_major'], $supported_majors)) {
         if (!isset($project_data['also'])) {
-          $project_data['also'] = array();
+          $project_data['also'] = [];
         }
         if (!isset($project_data['also'][$release['version_major']])) {
           $project_data['also'][$release['version_major']] = $version;
diff --git a/core/modules/update/update.fetch.inc b/core/modules/update/update.fetch.inc
index a710dd9..9964910 100644
--- a/core/modules/update/update.fetch.inc
+++ b/core/modules/update/update.fetch.inc
@@ -18,9 +18,9 @@ function _update_cron_notify() {
   $update_config = \Drupal::config('update.settings');
   module_load_install('update');
   $status = update_requirements('runtime');
-  $params = array();
+  $params = [];
   $notify_all = ($update_config->get('notification.threshold') == 'all');
-  foreach (array('core', 'contrib') as $report_type) {
+  foreach (['core', 'contrib'] as $report_type) {
     $type = 'update_' . $report_type;
     if (isset($status[$type]['severity'])
         && ($status[$type]['severity'] == REQUIREMENT_ERROR || ($notify_all && $status[$type]['reason'] == UPDATE_NOT_CURRENT))) {
diff --git a/core/modules/update/update.install b/core/modules/update/update.install
index e810129..d76d09e 100644
--- a/core/modules/update/update.install
+++ b/core/modules/update/update.install
@@ -28,7 +28,7 @@
  * @see _update_cron_notify()
  */
 function update_requirements($phase) {
-  $requirements = array();
+  $requirements = [];
   if ($phase == 'runtime') {
     if ($available = update_get_available(FALSE)) {
       module_load_include('inc', 'update', 'update.compare');
@@ -97,7 +97,7 @@ function update_uninstall() {
  * @see update_calculate_project_data()
  */
 function _update_requirement_check($project, $type) {
-  $requirement = array();
+  $requirement = [];
   if ($type == 'core') {
     $requirement['title'] = t('Drupal core update status');
   }
@@ -143,7 +143,7 @@ function _update_requirement_check($project, $type) {
       $requirement_label = t('Up to date');
   }
   if ($status != UPDATE_CURRENT && $type == 'core' && isset($project['recommended'])) {
-    $requirement_label .= ' ' . t('(version @version available)', array('@version' => $project['recommended']));
+    $requirement_label .= ' ' . t('(version @version available)', ['@version' => $project['recommended']]);
   }
   $requirement['value'] = \Drupal::l($requirement_label, new Url(_update_manager_access() ? 'update.report_update' : 'update.status'));
   return $requirement;
diff --git a/core/modules/update/update.manager.inc b/core/modules/update/update.manager.inc
index f9c7c5f..541ab6f 100644
--- a/core/modules/update/update.manager.inc
+++ b/core/modules/update/update.manager.inc
@@ -48,11 +48,11 @@
  */
 function update_manager_download_batch_finished($success, $results) {
   if (!empty($results['errors'])) {
-    $item_list = array(
+    $item_list = [
       '#theme' => 'item_list',
       '#title' => t('Downloading updates failed:'),
       '#items' => $results['errors'],
-    );
+    ];
     drupal_set_message(drupal_render($item_list), 'error');
   }
   elseif ($success) {
@@ -91,23 +91,23 @@ function _update_manager_check_backends(&$form, $operation) {
   }
 
   // Otherwise, show the available backends.
-  $form['available_backends'] = array(
+  $form['available_backends'] = [
     '#prefix' => '<p>',
     '#suffix' => '</p>',
-  );
+  ];
 
   $available_backends = drupal_get_filetransfer_info();
   if (empty($available_backends)) {
     if ($operation == 'update') {
-      $form['available_backends']['#markup'] = t('Your server does not support updating modules and themes from this interface. Instead, update modules and themes by uploading the new versions directly to the server, as described in the <a href=":handbook_url">handbook</a>.', array(':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib'));
+      $form['available_backends']['#markup'] = t('Your server does not support updating modules and themes from this interface. Instead, update modules and themes by uploading the new versions directly to the server, as described in the <a href=":handbook_url">handbook</a>.', [':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib']);
     }
     else {
-      $form['available_backends']['#markup'] = t('Your server does not support installing modules and themes from this interface. Instead, install modules and themes by uploading them directly to the server, as described in the <a href=":handbook_url">handbook</a>.', array(':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib'));
+      $form['available_backends']['#markup'] = t('Your server does not support installing modules and themes from this interface. Instead, install modules and themes by uploading them directly to the server, as described in the <a href=":handbook_url">handbook</a>.', [':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib']);
     }
     return FALSE;
   }
 
-  $backend_names = array();
+  $backend_names = [];
   foreach ($available_backends as $backend) {
     $backend_names[] = $backend['title'];
   }
@@ -116,20 +116,20 @@ function _update_manager_check_backends(&$form, $operation) {
       count($available_backends),
       'Updating modules and themes requires <strong>@backends access</strong> to your server. See the <a href=":handbook_url">handbook</a> for other update methods.',
       'Updating modules and themes requires access to your server via one of the following methods: <strong>@backends</strong>. See the <a href=":handbook_url">handbook</a> for other update methods.',
-      array(
+      [
         '@backends' => implode(', ', $backend_names),
         ':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib',
-      ));
+      ]);
   }
   else {
     $form['available_backends']['#markup'] = \Drupal::translation()->formatPlural(
       count($available_backends),
       'Installing modules and themes requires <strong>@backends access</strong> to your server. See the <a href=":handbook_url">handbook</a> for other installation methods.',
       'Installing modules and themes requires access to your server via one of the following methods: <strong>@backends</strong>. See the <a href=":handbook_url">handbook</a> for other installation methods.',
-      array(
+      [
         '@backends' => implode(', ', $backend_names),
         ':handbook_url' => 'https://www.drupal.org/getting-started/install-contrib',
-      ));
+      ]);
   }
   return TRUE;
 }
@@ -150,7 +150,7 @@ function _update_manager_check_backends(&$form, $operation) {
 function update_manager_archive_extract($file, $directory) {
   $archiver = archiver_get_archiver($file);
   if (!$archiver) {
-    throw new Exception(t('Cannot extract %file, not a valid archive.', array ('%file' => $file)));
+    throw new Exception(t('Cannot extract %file, not a valid archive.',  ['%file' => $file]));
   }
 
   // Remove the directory if it exists, otherwise it might contain a mixture of
@@ -189,7 +189,7 @@ function update_manager_archive_extract($file, $directory) {
  *   are no errors, it will be an empty array.
  */
 function update_manager_archive_verify($project, $archive_file, $directory) {
-  return \Drupal::moduleHandler()->invokeAll('verify_update_archive', array($project, $archive_file, $directory));
+  return \Drupal::moduleHandler()->invokeAll('verify_update_archive', [$project, $archive_file, $directory]);
 }
 
 /**
@@ -205,7 +205,7 @@ function update_manager_archive_verify($project, $archive_file, $directory) {
  */
 function update_manager_file_get($url) {
   $parsed_url = parse_url($url);
-  $remote_schemes = array('http', 'https', 'ftp', 'ftps', 'smb', 'nfs');
+  $remote_schemes = ['http', 'https', 'ftp', 'ftps', 'smb', 'nfs'];
   if (!isset($parsed_url['scheme']) || !in_array($parsed_url['scheme'], $remote_schemes)) {
     // This is a local file, just return the path.
     return drupal_realpath($url);
@@ -245,14 +245,14 @@ function update_manager_batch_project_get($project, $url, &$context) {
   // This is here to show the user that we are in the process of downloading.
   if (!isset($context['sandbox']['started'])) {
     $context['sandbox']['started'] = TRUE;
-    $context['message'] = t('Downloading %project', array('%project' => $project));
+    $context['message'] = t('Downloading %project', ['%project' => $project]);
     $context['finished'] = 0;
     return;
   }
 
   // Actually try to download the file.
   if (!($local_cache = update_manager_file_get($url))) {
-    $context['results']['errors'][$project] = t('Failed to download %project from %url', array('%project' => $project, '%url' => $url));
+    $context['results']['errors'][$project] = t('Failed to download %project from %url', ['%project' => $project, '%url' => $url]);
     return;
   }
 
diff --git a/core/modules/update/update.module b/core/modules/update/update.module
index 6ef4628..32b5b8c 100644
--- a/core/modules/update/update.module
+++ b/core/modules/update/update.module
@@ -98,7 +98,7 @@ function update_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.update':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Update Manager module periodically checks for new versions of your site\'s software (including contributed modules and themes), and alerts administrators to available updates. The Update Manager system is also used by some other modules to manage updates and downloads; for example, the Interface Translation module uses the Update Manager to download translations from the localization server. Note that whenever the Update Manager system is used, anonymous usage statistics are sent to Drupal.org. If desired, you may disable the Update Manager module from the <a href=":modules">Extend page</a>; if you do so, functionality that depends on the Update Manager system will not work. For more information, see the <a href=":update">online documentation for the Update Manager module</a>.', array(':update' => 'https://www.drupal.org/documentation/modules/update', ':modules' => \Drupal::url('system.modules_list'))) . '</p>';
+      $output .= '<p>' . t('The Update Manager module periodically checks for new versions of your site\'s software (including contributed modules and themes), and alerts administrators to available updates. The Update Manager system is also used by some other modules to manage updates and downloads; for example, the Interface Translation module uses the Update Manager to download translations from the localization server. Note that whenever the Update Manager system is used, anonymous usage statistics are sent to Drupal.org. If desired, you may disable the Update Manager module from the <a href=":modules">Extend page</a>; if you do so, functionality that depends on the Update Manager system will not work. For more information, see the <a href=":update">online documentation for the Update Manager module</a>.', [':update' => 'https://www.drupal.org/documentation/modules/update', ':modules' => \Drupal::url('system.modules_list')]) . '</p>';
       // Only explain the Update manager if it has not been disabled.
       if (_update_manager_access()) {
         $output .= '<p>' . t('The Update Manager also allows administrators to update and install modules and themes through the administration interface.') . '</p>';
@@ -106,13 +106,13 @@ function update_help($route_name, RouteMatchInterface $route_match) {
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Checking for available updates') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":update-report">Available updates report</a> displays core, contributed modules, and themes for which there are new releases available for download. On the report page, you can also check manually for updates. You can configure the frequency of update checks, which are performed during cron runs, and whether notifications are sent on the <a href=":update-settings">Update Manager settings page</a>.', array(':update-report' => \Drupal::url('update.status'), ':update-settings' => \Drupal::url('update.settings'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":update-report">Available updates report</a> displays core, contributed modules, and themes for which there are new releases available for download. On the report page, you can also check manually for updates. You can configure the frequency of update checks, which are performed during cron runs, and whether notifications are sent on the <a href=":update-settings">Update Manager settings page</a>.', [':update-report' => \Drupal::url('update.status'), ':update-settings' => \Drupal::url('update.settings')]) . '</dd>';
       // Only explain the Update manager if it has not been disabled.
       if (_update_manager_access()) {
         $output .= '<dt>' . t('Performing updates through the Update page') . '</dt>';
-        $output .= '<dd>' . t('The Update Manager module allows administrators to perform updates directly from the <a href=":update-page">Update page</a>. It lists all available updates, and you can confirm whether you want to download them. If you don\'t have sufficient access rights to your web server, you could be prompted for your FTP/SSH password. Afterwards the files are transferred into your site installation, overwriting your old files. Direct links to the Update page are also displayed on the <a href=":modules_page">Extend page</a> and the <a href=":themes_page">Appearance page</a>.', array(':modules_page' => \Drupal::url('system.modules_list'), ':themes_page' => \Drupal::url('system.themes_page'), ':update-page' => \Drupal::url('update.report_update'))) . '</dd>';
+        $output .= '<dd>' . t('The Update Manager module allows administrators to perform updates directly from the <a href=":update-page">Update page</a>. It lists all available updates, and you can confirm whether you want to download them. If you don\'t have sufficient access rights to your web server, you could be prompted for your FTP/SSH password. Afterwards the files are transferred into your site installation, overwriting your old files. Direct links to the Update page are also displayed on the <a href=":modules_page">Extend page</a> and the <a href=":themes_page">Appearance page</a>.', [':modules_page' => \Drupal::url('system.modules_list'), ':themes_page' => \Drupal::url('system.themes_page'), ':update-page' => \Drupal::url('update.report_update')]) . '</dd>';
         $output .= '<dt>' . t('Installing new modules and themes through the Install page') . '</dt>';
-        $output .= '<dd>' . t('You can also install new modules and themes in the same fashion, through the <a href=":install">Install page</a>, or by clicking the <em>Install new module/theme</em> links at the top of the <a href=":modules_page">Extend page</a> and the <a href=":themes_page">Appearance page</a>. In this case, you are prompted to provide either the URL to the download, or to upload a packaged release file from your local computer.', array(':modules_page' => \Drupal::url('system.modules_list'), ':themes_page' => \Drupal::url('system.themes_page'), ':install' => \Drupal::url('update.report_install'))) . '</dd>';
+        $output .= '<dd>' . t('You can also install new modules and themes in the same fashion, through the <a href=":install">Install page</a>, or by clicking the <em>Install new module/theme</em> links at the top of the <a href=":modules_page">Extend page</a> and the <a href=":themes_page">Appearance page</a>. In this case, you are prompted to provide either the URL to the download, or to upload a packaged release file from your local computer.', [':modules_page' => \Drupal::url('system.modules_list'), ':themes_page' => \Drupal::url('system.themes_page'), ':install' => \Drupal::url('update.report_install')]) . '</dd>';
       }
       $output .= '</dl>';
       return $output;
@@ -122,10 +122,10 @@ function update_help($route_name, RouteMatchInterface $route_match) {
 
     case 'system.modules_list':
       if (_update_manager_access()) {
-        $output = '<p>' . t('Regularly review and install <a href=":updates">available updates</a> to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated.', array(':update-php' => \Drupal::url('system.db_update'), ':updates' => \Drupal::url('update.status'))) . '</p>';
+        $output = '<p>' . t('Regularly review and install <a href=":updates">available updates</a> to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated.', [':update-php' => \Drupal::url('system.db_update'), ':updates' => \Drupal::url('update.status')]) . '</p>';
       }
       else {
-        $output = '<p>' . t('Regularly review <a href=":updates">available updates</a> to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated.', array(':update-php' => \Drupal::url('system.db_update'), ':updates' => \Drupal::url('update.status'))) . '</p>';
+        $output = '<p>' . t('Regularly review <a href=":updates">available updates</a> to maintain a secure and current site. Always run the <a href=":update-php">update script</a> each time a module is updated.', [':update-php' => \Drupal::url('system.db_update'), ':updates' => \Drupal::url('update.status')]) . '</p>';
       }
       return $output;
   }
@@ -164,7 +164,7 @@ function update_page_top() {
     }
     module_load_install('update');
     $status = update_requirements('runtime');
-    foreach (array('core', 'contrib') as $report_type) {
+    foreach (['core', 'contrib'] as $report_type) {
       $type = 'update_' . $report_type;
       // hook_requirements() supports render arrays therefore we need to render
       // them before using drupal_set_message().
@@ -212,25 +212,25 @@ function _update_manager_access() {
  * Implements hook_theme().
  */
 function update_theme() {
-  return array(
-    'update_last_check' => array(
-      'variables' => array('last' => 0),
-    ),
-    'update_report' => array(
-      'variables' => array('data' => NULL),
+  return [
+    'update_last_check' => [
+      'variables' => ['last' => 0],
+    ],
+    'update_report' => [
+      'variables' => ['data' => NULL],
       'file' => 'update.report.inc',
-    ),
-    'update_project_status' => array(
-      'variables' => array('project' => array()),
+    ],
+    'update_project_status' => [
+      'variables' => ['project' => []],
       'file' => 'update.report.inc',
-    ),
+    ],
     // We are using template instead of '#type' => 'table' here to keep markup
     // out of preprocess and allow for easier changes to markup.
-    'update_version' => array(
-      'variables' => array('version' => NULL, 'title' => NULL, 'attributes' => array()),
+    'update_version' => [
+      'variables' => ['version' => NULL, 'title' => NULL, 'attributes' => []],
       'file' => 'update.report.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -312,10 +312,10 @@ function update_storage_clear_submit($form, FormStateInterface $form_state) {
  */
 function _update_no_data() {
   $destination = \Drupal::destination()->getAsArray();
-  return t('No update information available. <a href=":run_cron">Run cron</a> or <a href=":check_manually">check manually</a>.', array(
+  return t('No update information available. <a href=":run_cron">Run cron</a> or <a href=":check_manually">check manually</a>.', [
     ':run_cron' => \Drupal::url('system.run_cron', [], ['query' => $destination]),
     ':check_manually' => \Drupal::url('update.manual_status', [], ['query' => $destination]),
-  ));
+  ]);
 }
 
 /**
@@ -471,20 +471,20 @@ function update_fetch_data_finished($success, $results) {
 function update_mail($key, &$message, $params) {
   $langcode = $message['langcode'];
   $language = \Drupal::languageManager()->getLanguage($langcode);
-  $message['subject'] .= t('New release(s) available for @site_name', array('@site_name' => \Drupal::config('system.site')->get('name')), array('langcode' => $langcode));
+  $message['subject'] .= t('New release(s) available for @site_name', ['@site_name' => \Drupal::config('system.site')->get('name')], ['langcode' => $langcode]);
   foreach ($params as $msg_type => $msg_reason) {
     $message['body'][] = _update_message_text($msg_type, $msg_reason, $langcode);
   }
-  $message['body'][] = t('See the available updates page for more information:', array(), array('langcode' => $langcode)) . "\n" . \Drupal::url('update.status', [], ['absolute' => TRUE, 'language' => $language]);
+  $message['body'][] = t('See the available updates page for more information:', [], ['langcode' => $langcode]) . "\n" . \Drupal::url('update.status', [], ['absolute' => TRUE, 'language' => $language]);
   if (_update_manager_access()) {
-    $message['body'][] = t('You can automatically install your missing updates using the Update manager:', array(), array('langcode' => $langcode)) . "\n" . \Drupal::url('update.report_update', [], ['absolute' => TRUE, 'language' => $language]);
+    $message['body'][] = t('You can automatically install your missing updates using the Update manager:', [], ['langcode' => $langcode]) . "\n" . \Drupal::url('update.report_update', [], ['absolute' => TRUE, 'language' => $language]);
   }
   $settings_url = \Drupal::url('update.settings', [], ['absolute' => TRUE]);
   if (\Drupal::config('update.settings')->get('notification.threshold') == 'all') {
-    $message['body'][] = t('Your site is currently configured to send these emails when any updates are available. To get notified only for security updates, @url.', array('@url' => $settings_url));
+    $message['body'][] = t('Your site is currently configured to send these emails when any updates are available. To get notified only for security updates, @url.', ['@url' => $settings_url]);
   }
   else {
-    $message['body'][] = t('Your site is currently configured to send these emails only when security updates are available. To get notified for any available updates, @url.', array('@url' => $settings_url));
+    $message['body'][] = t('Your site is currently configured to send these emails only when security updates are available. To get notified for any available updates, @url.', ['@url' => $settings_url]);
   }
 }
 
@@ -511,37 +511,37 @@ function _update_message_text($msg_type, $msg_reason, $langcode = NULL) {
   switch ($msg_reason) {
     case UPDATE_NOT_SECURE:
       if ($msg_type == 'core') {
-        $text = t('There is a security update available for your version of Drupal. To ensure the security of your server, you should update immediately!', array(), array('langcode' => $langcode));
+        $text = t('There is a security update available for your version of Drupal. To ensure the security of your server, you should update immediately!', [], ['langcode' => $langcode]);
       }
       else {
-        $text = t('There are security updates available for one or more of your modules or themes. To ensure the security of your server, you should update immediately!', array(), array('langcode' => $langcode));
+        $text = t('There are security updates available for one or more of your modules or themes. To ensure the security of your server, you should update immediately!', [], ['langcode' => $langcode]);
       }
       break;
 
     case UPDATE_REVOKED:
       if ($msg_type == 'core') {
-        $text = t('Your version of Drupal has been revoked and is no longer available for download. Upgrading is strongly recommended!', array(), array('langcode' => $langcode));
+        $text = t('Your version of Drupal has been revoked and is no longer available for download. Upgrading is strongly recommended!', [], ['langcode' => $langcode]);
       }
       else {
-        $text = t('The installed version of at least one of your modules or themes has been revoked and is no longer available for download. Upgrading or disabling is strongly recommended!', array(), array('langcode' => $langcode));
+        $text = t('The installed version of at least one of your modules or themes has been revoked and is no longer available for download. Upgrading or disabling is strongly recommended!', [], ['langcode' => $langcode]);
       }
       break;
 
     case UPDATE_NOT_SUPPORTED:
       if ($msg_type == 'core') {
-        $text = t('Your version of Drupal is no longer supported. Upgrading is strongly recommended!', array(), array('langcode' => $langcode));
+        $text = t('Your version of Drupal is no longer supported. Upgrading is strongly recommended!', [], ['langcode' => $langcode]);
       }
       else {
-        $text = t('The installed version of at least one of your modules or themes is no longer supported. Upgrading or disabling is strongly recommended. See the project homepage for more details.', array(), array('langcode' => $langcode));
+        $text = t('The installed version of at least one of your modules or themes is no longer supported. Upgrading or disabling is strongly recommended. See the project homepage for more details.', [], ['langcode' => $langcode]);
       }
       break;
 
     case UPDATE_NOT_CURRENT:
       if ($msg_type == 'core') {
-        $text = t('There are updates available for your version of Drupal. To ensure the proper functioning of your site, you should update as soon as possible.', array(), array('langcode' => $langcode));
+        $text = t('There are updates available for your version of Drupal. To ensure the proper functioning of your site, you should update as soon as possible.', [], ['langcode' => $langcode]);
       }
       else {
-        $text = t('There are updates available for one or more of your modules or themes. To ensure the proper functioning of your site, you should update as soon as possible.', array(), array('langcode' => $langcode));
+        $text = t('There are updates available for one or more of your modules or themes. To ensure the proper functioning of your site, you should update as soon as possible.', [], ['langcode' => $langcode]);
       }
       break;
 
@@ -550,10 +550,10 @@ function _update_message_text($msg_type, $msg_reason, $langcode = NULL) {
     case UPDATE_NOT_FETCHED:
     case UPDATE_FETCH_PENDING:
       if ($msg_type == 'core') {
-        $text = t('There was a problem checking <a href=":update-report">available updates</a> for Drupal.', array(':update-report' => \Drupal::url('update.status')), array('langcode' => $langcode));
+        $text = t('There was a problem checking <a href=":update-report">available updates</a> for Drupal.', [':update-report' => \Drupal::url('update.status')], ['langcode' => $langcode]);
       }
       else {
-        $text = t('There was a problem checking <a href=":update-report">available updates</a> for your modules or themes.', array(':update-report' => \Drupal::url('update.status')), array('langcode' => $langcode));
+        $text = t('There was a problem checking <a href=":update-report">available updates</a> for your modules or themes.', [':update-report' => \Drupal::url('update.status')], ['langcode' => $langcode]);
       }
       break;
   }
@@ -593,7 +593,7 @@ function _update_project_status_sort($a, $b) {
  */
 function template_preprocess_update_last_check(&$variables) {
   $variables['time'] = \Drupal::service('date.formatter')->formatTimeDiffSince($variables['last']);
-  $variables['link'] = \Drupal::l(t('Check manually'), new Url('update.manual_status', array(), array('query' => \Drupal::destination()->getAsArray())));
+  $variables['link'] = \Drupal::l(t('Check manually'), new Url('update.manual_status', [], ['query' => \Drupal::destination()->getAsArray()]));
 }
 
 /**
@@ -610,7 +610,7 @@ function template_preprocess_update_last_check(&$variables) {
  * @see _system_rebuild_module_data()
  */
 function update_verify_update_archive($project, $archive_file, $directory) {
-  $errors = array();
+  $errors = [];
 
   // Make sure this isn't a tarball of Drupal core.
   if (
@@ -620,9 +620,9 @@ function update_verify_update_archive($project, $archive_file, $directory) {
     && file_exists("$directory/$project/core/modules/node/node.module")
     && file_exists("$directory/$project/core/modules/system/system.module")
   ) {
-    return array(
-      'no-core' => t('Automatic updating of Drupal core is not supported. See the <a href=":upgrade-guide">upgrade guide</a> for information on how to update Drupal core manually.', array(':upgrade-guide' => 'https://www.drupal.org/upgrade')),
-    );
+    return [
+      'no-core' => t('Automatic updating of Drupal core is not supported. See the <a href=":upgrade-guide">upgrade guide</a> for information on how to update Drupal core manually.', [':upgrade-guide' => 'https://www.drupal.org/upgrade']),
+    ];
   }
 
   // Parse all the .info.yml files and make sure at least one is compatible with
@@ -631,8 +631,8 @@ function update_verify_update_archive($project, $archive_file, $directory) {
   // with some out-of-date modules that are not necessary for its overall
   // functionality).
   $compatible_project = FALSE;
-  $incompatible = array();
-  $files = file_scan_directory("$directory/$project", '/^' . DRUPAL_PHP_FUNCTION_PATTERN . '\.info.yml$/', array('key' => 'name', 'min_depth' => 0));
+  $incompatible = [];
+  $files = file_scan_directory("$directory/$project", '/^' . DRUPAL_PHP_FUNCTION_PATTERN . '\.info.yml$/', ['key' => 'name', 'min_depth' => 0]);
   foreach ($files as $file) {
     // Get the .info.yml file for the module or theme this file belongs to.
     $info = \Drupal::service('info_parser')->parse($file->uri);
@@ -648,14 +648,14 @@ function update_verify_update_archive($project, $archive_file, $directory) {
   }
 
   if (empty($files)) {
-    $errors[] = t('%archive_file does not contain any .info.yml files.', array('%archive_file' => drupal_basename($archive_file)));
+    $errors[] = t('%archive_file does not contain any .info.yml files.', ['%archive_file' => drupal_basename($archive_file)]);
   }
   elseif (!$compatible_project) {
     $errors[] = \Drupal::translation()->formatPlural(
       count($incompatible),
       '%archive_file contains a version of %names that is not compatible with Drupal @version.',
       '%archive_file contains versions of modules or themes that are not compatible with Drupal @version: %names',
-      array('@version' => \Drupal::CORE_COMPATIBILITY, '%archive_file' => drupal_basename($archive_file), '%names' => implode(', ', $incompatible))
+      ['@version' => \Drupal::CORE_COMPATIBILITY, '%archive_file' => drupal_basename($archive_file), '%names' => implode(', ', $incompatible)]
     );
   }
 
@@ -734,14 +734,14 @@ function _update_manager_cache_directory($create = TRUE) {
 function update_clear_update_disk_cache() {
   // List of update module cache directories. Do not create the directories if
   // they do not exist.
-  $directories = array(
+  $directories = [
     _update_manager_cache_directory(FALSE),
     _update_manager_extract_directory(FALSE),
-  );
+  ];
 
   // Search for files and directories in base folder only without recursion.
   foreach ($directories as $directory) {
-    file_scan_directory($directory, '/.*/', array('callback' => 'update_delete_file_if_stale', 'recurse' => FALSE));
+    file_scan_directory($directory, '/.*/', ['callback' => 'update_delete_file_if_stale', 'recurse' => FALSE]);
   }
 }
 
diff --git a/core/modules/update/update.report.inc b/core/modules/update/update.report.inc
index 5f198d9..7b14a05 100644
--- a/core/modules/update/update.report.inc
+++ b/core/modules/update/update.report.inc
@@ -23,36 +23,36 @@ function template_preprocess_update_report(&$variables) {
 
   $last = \Drupal::state()->get('update.last_check') ?: 0;
 
-  $variables['last_checked'] = array(
+  $variables['last_checked'] = [
     '#theme' => 'update_last_check',
     '#last' => $last,
     // Attach the library to a variable that gets printed always.
-    '#attached' => array(
-      'library' => array(
+    '#attached' => [
+      'library' => [
         'update/drupal.update.admin',
-      ),
-    )
-  );
+      ],
+    ]
+  ];
 
   // For no project update data, populate no data message.
   if (empty($data)) {
     $variables['no_updates_message'] = _update_no_data();
   }
 
-  $rows = array();
+  $rows = [];
 
   foreach ($data as $project) {
-    $project_status = array(
+    $project_status = [
       '#theme' => 'update_project_status',
       '#project' => $project,
-    );
+    ];
 
     // Build project rows.
     if (!isset($rows[$project['project_type']])) {
-      $rows[$project['project_type']] = array(
+      $rows[$project['project_type']] = [
         '#type' => 'table',
-        '#attributes' => array('class' => array('update')),
-      );
+        '#attributes' => ['class' => ['update']],
+      ];
     }
     $row_key = !empty($project['title']) ? Unicode::strtolower($project['title']) : Unicode::strtolower($project['name']);
 
@@ -62,7 +62,7 @@ function template_preprocess_update_report(&$variables) {
     // Add project status class attribute to the table row.
     switch ($project['status']) {
       case UPDATE_CURRENT:
-        $rows[$project['project_type']][$row_key]['#attributes'] = array('class' => array('color-success'));
+        $rows[$project['project_type']][$row_key]['#attributes'] = ['class' => ['color-success']];
         break;
       case UPDATE_UNKNOWN:
       case UPDATE_FETCH_PENDING:
@@ -70,32 +70,32 @@ function template_preprocess_update_report(&$variables) {
       case UPDATE_NOT_SECURE:
       case UPDATE_REVOKED:
       case UPDATE_NOT_SUPPORTED:
-        $rows[$project['project_type']][$row_key]['#attributes'] = array('class' => array('color-error'));
+        $rows[$project['project_type']][$row_key]['#attributes'] = ['class' => ['color-error']];
         break;
       case UPDATE_NOT_CHECKED:
       case UPDATE_NOT_CURRENT:
       default:
-        $rows[$project['project_type']][$row_key]['#attributes'] = array('class' => array('color-warning'));
+        $rows[$project['project_type']][$row_key]['#attributes'] = ['class' => ['color-warning']];
         break;
     }
   }
 
-  $project_types = array(
+  $project_types = [
     'core' => t('Drupal core'),
     'module' => t('Modules'),
     'theme' => t('Themes'),
     'module-disabled' => t('Uninstalled modules'),
     'theme-disabled' => t('Uninstalled themes'),
-  );
+  ];
 
-  $variables['project_types'] = array();
+  $variables['project_types'] = [];
   foreach ($project_types as $type_name => $type_label) {
     if (!empty($rows[$type_name])) {
       ksort($rows[$type_name]);
-      $variables['project_types'][] = array(
+      $variables['project_types'][] = [
         'label' => $type_label,
         'table' => $rows[$type_name],
-      );
+      ];
     }
   }
 }
@@ -124,9 +124,9 @@ function template_preprocess_update_project_status(&$variables) {
 
   $variables['existing_version'] = $project['existing_version'];
 
-  $versions_inner = array();
-  $security_class = array();
-  $version_class = array();
+  $versions_inner = [];
+  $security_class = [];
+  $version_class = [];
   if (isset($project['recommended'])) {
     if ($project['status'] != UPDATE_CURRENT || $project['existing_version'] !== $project['recommended']) {
 
@@ -156,57 +156,57 @@ function template_preprocess_update_project_status(&$variables) {
         ) {
           $version_class[] = 'project-update__version--recommended-strong';
         }
-        $versions_inner[] = array(
+        $versions_inner[] = [
           '#theme' => 'update_version',
           '#version' => $project['releases'][$project['recommended']],
           '#title' => t('Recommended version:'),
-          '#attributes' => array('class' => $version_class),
-        );
+          '#attributes' => ['class' => $version_class],
+        ];
       }
 
       // Now, print any security updates.
       if (!empty($project['security updates'])) {
         $security_class[] = 'version-security';
         foreach ($project['security updates'] as $security_update) {
-          $versions_inner[] = array(
+          $versions_inner[] = [
             '#theme' => 'update_version',
             '#version' => $security_update,
             '#title' => t('Security update:'),
-            '#attributes' => array('class' => $security_class),
-          );
+            '#attributes' => ['class' => $security_class],
+          ];
         }
       }
     }
 
     if ($project['recommended'] !== $project['latest_version']) {
-      $versions_inner[] = array(
+      $versions_inner[] = [
         '#theme' => 'update_version',
         '#version' => $project['releases'][$project['latest_version']],
         '#title' => t('Latest version:'),
-        '#attributes' => array('class' => array('version-latest')),
-      );
+        '#attributes' => ['class' => ['version-latest']],
+      ];
     }
     if ($project['install_type'] == 'dev'
       && $project['status'] != UPDATE_CURRENT
       && isset($project['dev_version'])
       && $project['recommended'] !== $project['dev_version']) {
-      $versions_inner[] = array(
+      $versions_inner[] = [
         '#theme' => 'update_version',
         '#version' => $project['releases'][$project['dev_version']],
         '#title' => t('Development version:'),
-        '#attributes' => array('class' => array('version-latest')),
-      );
+        '#attributes' => ['class' => ['version-latest']],
+      ];
     }
   }
 
   if (isset($project['also'])) {
     foreach ($project['also'] as $also) {
-      $versions_inner[] = array(
+      $versions_inner[] = [
         '#theme' => 'update_version',
         '#version' => $project['releases'][$also],
         '#title' => t('Also available:'),
-        '#attributes' => array('class' => array('version-also-available')),
-      );
+        '#attributes' => ['class' => ['version-also-available']],
+      ];
     }
   }
 
@@ -222,10 +222,10 @@ function template_preprocess_update_project_status(&$variables) {
   sort($project['includes']);
   $variables['includes'] = $project['includes'];
 
-  $variables['extras'] = array();
+  $variables['extras'] = [];
   if (!empty($project['extra'])) {
     foreach ($project['extra'] as $value) {
-      $extra_item = array();
+      $extra_item = [];
       $extra_item['attributes'] = new Attribute();
       $extra_item['label'] = $value['label'];
       $extra_item['data'] = [
@@ -285,12 +285,12 @@ function template_preprocess_update_project_status(&$variables) {
       break;
   }
 
-  $variables['status']['icon'] = array(
+  $variables['status']['icon'] = [
     '#theme' => 'image',
     '#width' => 18,
     '#height' => 18,
     '#uri' => $uri,
     '#alt' => $text,
     '#title' => $text,
-  );
+  ];
 }
diff --git a/core/modules/user/src/AccountForm.php b/core/modules/user/src/AccountForm.php
index 5f4d820..f5e2e49 100644
--- a/core/modules/user/src/AccountForm.php
+++ b/core/modules/user/src/AccountForm.php
@@ -72,48 +72,48 @@ public function form(array $form, FormStateInterface $form_state) {
     $admin = $user->hasPermission('administer users');
 
     // Account information.
-    $form['account'] = array(
+    $form['account'] = [
       '#type'   => 'container',
       '#weight' => -10,
-    );
+    ];
 
     // The mail field is NOT required if account originally had no mail set
     // and the user performing the edit has 'administer users' permission.
     // This allows users without email address to be edited and deleted.
     // Also see \Drupal\user\Plugin\Validation\Constraint\UserMailRequired.
-    $form['account']['mail'] = array(
+    $form['account']['mail'] = [
       '#type' => 'email',
       '#title' => $this->t('Email address'),
       '#description' => $this->t('A valid email address. All emails from the system will be sent to this address. The email address is not made public and will only be used if you wish to receive a new password or wish to receive certain news or notifications by email.'),
       '#required' => !(!$account->getEmail() && $user->hasPermission('administer users')),
       '#default_value' => (!$register ? $account->getEmail() : ''),
-    );
+    ];
 
     // Only show name field on registration form or user can change own username.
-    $form['account']['name'] = array(
+    $form['account']['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Username'),
       '#maxlength' => USERNAME_MAX_LENGTH,
       '#description' => $this->t("Several special characters are allowed, including space, period (.), hyphen (-), apostrophe ('), underscore (_), and the @ sign."),
       '#required' => TRUE,
-      '#attributes' => array(
-        'class' => array('username'),
+      '#attributes' => [
+        'class' => ['username'],
         'autocorrect' => 'off',
         'autocapitalize' => 'off',
         'spellcheck' => 'false',
-      ),
+      ],
       '#default_value' => (!$register ? $account->getAccountName() : ''),
       '#access' => ($register || ($user->id() == $account->id() && $user->hasPermission('change own username')) || $admin),
-    );
+    ];
 
     // Display password field only for existing users or when user is allowed to
     // assign a password during registration.
     if (!$register) {
-      $form['account']['pass'] = array(
+      $form['account']['pass'] = [
         '#type' => 'password_confirm',
         '#size' => 25,
         '#description' => $this->t('To change the current user password, enter the new password in both fields.'),
-      );
+      ];
 
       // To skip the current password field, the user must have logged in via a
       // one-time link and have the token in the URL. Store this in $form_state
@@ -126,7 +126,7 @@ public function form(array $form, FormStateInterface $form_state) {
 
       // The user must enter their current password to change to a new one.
       if ($user->id() == $account->id()) {
-        $form['account']['current_pass'] = array(
+        $form['account']['current_pass'] = [
           '#type' => 'password',
           '#title' => $this->t('Current password'),
           '#size' => 25,
@@ -135,34 +135,34 @@ public function form(array $form, FormStateInterface $form_state) {
           // Do not let web browsers remember this password, since we are
           // trying to confirm that the person submitting the form actually
           // knows the current one.
-          '#attributes' => array('autocomplete' => 'off'),
-        );
+          '#attributes' => ['autocomplete' => 'off'],
+        ];
         $form_state->set('user', $account);
 
         // The user may only change their own password without their current
         // password if they logged in via a one-time login link.
         if (!$form_state->get('user_pass_reset')) {
-          $form['account']['current_pass']['#description'] = $this->t('Required if you want to change the %mail or %pass below. <a href=":request_new_url" title="Send password reset instructions via email.">Reset your password</a>.', array(
+          $form['account']['current_pass']['#description'] = $this->t('Required if you want to change the %mail or %pass below. <a href=":request_new_url" title="Send password reset instructions via email.">Reset your password</a>.', [
             '%mail' => $form['account']['mail']['#title'],
             '%pass' => $this->t('Password'),
             ':request_new_url' => $this->url('user.pass'),
-          ));
+          ]);
         }
       }
     }
     elseif (!$config->get('verify_mail') || $admin) {
-      $form['account']['pass'] = array(
+      $form['account']['pass'] = [
         '#type' => 'password_confirm',
         '#size' => 25,
         '#description' => $this->t('Provide a password for the new account in both fields.'),
         '#required' => TRUE,
-      );
+      ];
     }
 
     // When not building the user registration form, prevent web browsers from
     // autofilling/prefilling the email, username, and password fields.
     if ($this->getOperation() != 'register') {
-      foreach (array('mail', 'name', 'pass') as $key) {
+      foreach (['mail', 'name', 'pass'] as $key) {
         if (isset($form['account'][$key])) {
           $form['account'][$key]['#attributes']['autocomplete'] = 'off';
         }
@@ -176,35 +176,35 @@ public function form(array $form, FormStateInterface $form_state) {
       $status = $config->get('register') == USER_REGISTER_VISITORS ? 1 : 0;
     }
 
-    $form['account']['status'] = array(
+    $form['account']['status'] = [
       '#type' => 'radios',
       '#title' => $this->t('Status'),
       '#default_value' => $status,
-      '#options' => array($this->t('Blocked'), $this->t('Active')),
+      '#options' => [$this->t('Blocked'), $this->t('Active')],
       '#access' => $admin,
-    );
+    ];
 
-    $roles = array_map(array('\Drupal\Component\Utility\Html', 'escape'), user_role_names(TRUE));
+    $roles = array_map(['\Drupal\Component\Utility\Html', 'escape'], user_role_names(TRUE));
 
-    $form['account']['roles'] = array(
+    $form['account']['roles'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Roles'),
-      '#default_value' => (!$register ? $account->getRoles() : array()),
+      '#default_value' => (!$register ? $account->getRoles() : []),
       '#options' => $roles,
       '#access' => $roles && $user->hasPermission('administer permissions'),
-    );
+    ];
 
     // Special handling for the inevitable "Authenticated user" role.
-    $form['account']['roles'][RoleInterface::AUTHENTICATED_ID] = array(
+    $form['account']['roles'][RoleInterface::AUTHENTICATED_ID] = [
       '#default_value' => TRUE,
       '#disabled' => TRUE,
-    );
+    ];
 
-    $form['account']['notify'] = array(
+    $form['account']['notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user of new account'),
       '#access' => $register && $admin,
-    );
+    ];
 
     $user_preferred_langcode = $register ? $language_interface->getId() : $account->getPreferredLangcode();
 
@@ -216,16 +216,16 @@ public function form(array $form, FormStateInterface $form_state) {
       $negotiator = $this->languageManager->getNegotiator();
       $user_language_added = $negotiator && $negotiator->isNegotiationMethodEnabled(LanguageNegotiationUser::METHOD_ID, LanguageInterface::TYPE_INTERFACE);
     }
-    $form['language'] = array(
+    $form['language'] = [
       '#type' => $this->languageManager->isMultilingual() ? 'details' : 'container',
       '#title' => $this->t('Language settings'),
       '#open' => TRUE,
       // Display language selector when either creating a user on the admin
       // interface or editing a user account.
       '#access' => !$register || $user->hasPermission('administer users'),
-    );
+    ];
 
-    $form['language']['preferred_langcode'] = array(
+    $form['language']['preferred_langcode'] = [
       '#type' => 'language_select',
       '#title' => $this->t('Site language'),
       '#languages' => LanguageInterface::STATE_CONFIGURABLE,
@@ -235,7 +235,7 @@ public function form(array $form, FormStateInterface $form_state) {
       // language are synchronized. It can be removed if a different behavior is
       // desired.
       '#pre_render' => ['user_langcode' => [$this, 'alterPreferredLangcodeDescription']],
-    );
+    ];
 
     // Only show the account setting for Administration pages language to users
     // if one of the detection and selection methods uses it.
@@ -244,7 +244,7 @@ public function form(array $form, FormStateInterface $form_state) {
       $negotiator = $this->languageManager->getNegotiator();
       $show_admin_language = $negotiator && $negotiator->isNegotiationMethodEnabled(LanguageNegotiationUserAdmin::METHOD_ID);
     }
-    $form['language']['preferred_admin_langcode'] = array(
+    $form['language']['preferred_admin_langcode'] = [
       '#type' => 'language_select',
       '#title' => $this->t('Administration pages language'),
       '#languages' => LanguageInterface::STATE_CONFIGURABLE,
@@ -252,7 +252,7 @@ public function form(array $form, FormStateInterface $form_state) {
       '#access' => $show_admin_language,
       '#empty_option' => $this->t('- No preference -'),
       '#empty_value' => '',
-    );
+    ];
 
     // User entities contain both a langcode property (for identifying the
     // language of the entity data) and a preferred_langcode property (see
@@ -317,7 +317,7 @@ public function buildEntity(array $form, FormStateInterface $form_state) {
     $account = parent::buildEntity($form, $form_state);
 
     // Translate the empty value '' of language selects to an unset field.
-    foreach (array('preferred_langcode', 'preferred_admin_langcode') as $field_name) {
+    foreach (['preferred_langcode', 'preferred_admin_langcode'] as $field_name) {
       if ($form_state->getValue($field_name) === '') {
         $account->$field_name = NULL;
       }
@@ -340,7 +340,7 @@ public function buildEntity(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   protected function getEditedFieldNames(FormStateInterface $form_state) {
-    return array_merge(array(
+    return array_merge([
       'name',
       'pass',
       'mail',
@@ -348,7 +348,7 @@ protected function getEditedFieldNames(FormStateInterface $form_state) {
       'langcode',
       'preferred_langcode',
       'preferred_admin_langcode'
-    ), parent::getEditedFieldNames($form_state));
+    ], parent::getEditedFieldNames($form_state));
   }
 
   /**
@@ -358,7 +358,7 @@ protected function flagViolations(EntityConstraintViolationListInterface $violat
     // Manually flag violations of fields not handled by the form display. This
     // is necessary as entity form displays only flag violations for fields
     // contained in the display.
-    $field_names = array(
+    $field_names = [
       'name',
       'pass',
       'mail',
@@ -366,7 +366,7 @@ protected function flagViolations(EntityConstraintViolationListInterface $violat
       'langcode',
       'preferred_langcode',
       'preferred_admin_langcode'
-    );
+    ];
     foreach ($violations->getByFields($field_names) as $violation) {
       list($field_name) = explode('.', $violation->getPropertyPath(), 2);
       $form_state->setErrorByName($field_name, $violation->getMessage());
diff --git a/core/modules/user/src/AccountSettingsForm.php b/core/modules/user/src/AccountSettingsForm.php
index 1e5cd49..eacc378 100644
--- a/core/modules/user/src/AccountSettingsForm.php
+++ b/core/modules/user/src/AccountSettingsForm.php
@@ -85,25 +85,25 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $form['#attached']['library'][] = 'user/drupal.user.admin';
 
     // Settings for anonymous users.
-    $form['anonymous_settings'] = array(
+    $form['anonymous_settings'] = [
       '#type' => 'details',
       '#title' => $this->t('Anonymous users'),
       '#open' => TRUE,
-    );
-    $form['anonymous_settings']['anonymous'] = array(
+    ];
+    $form['anonymous_settings']['anonymous'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Name'),
       '#default_value' => $config->get('anonymous'),
       '#description' => $this->t('The name used to indicate anonymous users.'),
       '#required' => TRUE,
-    );
+    ];
 
     // Administrative role option.
-    $form['admin_role'] = array(
+    $form['admin_role'] = [
       '#type' => 'details',
       '#title' => $this->t('Administrator role'),
       '#open' => TRUE,
-    );
+    ];
     // Do not allow users to set the anonymous or authenticated user roles as the
     // administrator role.
     $roles = user_role_names(TRUE);
@@ -114,7 +114,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       ->execute();
     $default_value = reset($admin_roles);
 
-    $form['admin_role']['user_admin_role'] = array(
+    $form['admin_role']['user_admin_role'] = [
       '#type' => 'select',
       '#title' => $this->t('Administrator role'),
       '#empty_value' => '',
@@ -124,53 +124,53 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       // Don't allow to select a single admin role in case multiple roles got
       // marked as admin role already.
       '#access' => count($admin_roles) <= 1,
-    );
+    ];
 
     // @todo Remove this check once language settings are generalized.
     if ($this->moduleHandler->moduleExists('content_translation')) {
-      $form['language'] = array(
+      $form['language'] = [
         '#type' => 'details',
         '#title' => $this->t('Language settings'),
         '#open' => TRUE,
         '#tree' => TRUE,
-      );
+      ];
       $form_state->set(['content_translation', 'key'], 'language');
       $form['language'] += content_translation_enable_widget('user', 'user', $form, $form_state);
     }
 
     // User registration settings.
-    $form['registration_cancellation'] = array(
+    $form['registration_cancellation'] = [
       '#type' => 'details',
       '#title' => $this->t('Registration and cancellation'),
       '#open' => TRUE,
-    );
-    $form['registration_cancellation']['user_register'] = array(
+    ];
+    $form['registration_cancellation']['user_register'] = [
       '#type' => 'radios',
       '#title' => $this->t('Who can register accounts?'),
       '#default_value' => $config->get('register'),
-      '#options' => array(
+      '#options' => [
         USER_REGISTER_ADMINISTRATORS_ONLY => $this->t('Administrators only'),
         USER_REGISTER_VISITORS => $this->t('Visitors'),
         USER_REGISTER_VISITORS_ADMINISTRATIVE_APPROVAL => $this->t('Visitors, but administrator approval is required'),
-      )
-    );
-    $form['registration_cancellation']['user_email_verification'] = array(
+      ]
+    ];
+    $form['registration_cancellation']['user_email_verification'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Require email verification when a visitor creates an account'),
       '#default_value' => $config->get('verify_mail'),
       '#description' => $this->t('New users will be required to validate their email address prior to logging into the site, and will be assigned a system-generated password. With this setting disabled, users will be logged in immediately upon registering, and may select their own passwords during registration.')
-    );
-    $form['registration_cancellation']['user_password_strength'] = array(
+    ];
+    $form['registration_cancellation']['user_password_strength'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Enable password strength indicator'),
       '#default_value' => $config->get('password_strength'),
-    );
-    $form['registration_cancellation']['user_cancel_method'] = array(
+    ];
+    $form['registration_cancellation']['user_cancel_method'] = [
       '#type' => 'radios',
       '#title' => $this->t('When cancelling a user account'),
       '#default_value' => $config->get('cancel_method'),
-      '#description' => $this->t('Users with the %select-cancel-method or %administer-users <a href=":permissions-url">permissions</a> can override this default method.', array('%select-cancel-method' => $this->t('Select method for cancelling account'), '%administer-users' => $this->t('Administer users'), ':permissions-url' => $this->url('user.admin_permissions'))),
-    );
+      '#description' => $this->t('Users with the %select-cancel-method or %administer-users <a href=":permissions-url">permissions</a> can override this default method.', ['%select-cancel-method' => $this->t('Select method for cancelling account'), '%administer-users' => $this->t('Administer users'), ':permissions-url' => $this->url('user.admin_permissions')]),
+    ];
     $form['registration_cancellation']['user_cancel_method'] += user_cancel_methods();
     foreach (Element::children($form['registration_cancellation']['user_cancel_method']) as $key) {
       // All account cancellation methods that specify #access cannot be
@@ -182,239 +182,239 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Default notifications address.
-    $form['mail_notification_address'] = array(
+    $form['mail_notification_address'] = [
       '#type' => 'email',
       '#title' => $this->t('Notification email address'),
       '#default_value' => $site_config->get('mail_notification'),
-      '#description' => $this->t("The email address to be used as the 'from' address for all account notifications listed below. If <em>'Visitors, but administrator approval is required'</em> is selected above, a notification email will also be sent to this address for any new registrations. Leave empty to use the default system email address <em>(%site-email).</em>", array('%site-email' => $site_config->get('mail'))),
+      '#description' => $this->t("The email address to be used as the 'from' address for all account notifications listed below. If <em>'Visitors, but administrator approval is required'</em> is selected above, a notification email will also be sent to this address for any new registrations. Leave empty to use the default system email address <em>(%site-email).</em>", ['%site-email' => $site_config->get('mail')]),
       '#maxlength' => 180,
-    );
+    ];
 
-    $form['email'] = array(
+    $form['email'] = [
       '#type' => 'vertical_tabs',
       '#title' => $this->t('Emails'),
-    );
+    ];
     // These email tokens are shared for all settings, so just define
     // the list once to help ensure they stay in sync.
     $email_token_help = $this->t('Available variables are: [site:name], [site:url], [user:display-name], [user:account-name], [user:mail], [site:login-url], [site:url-brief], [user:edit-url], [user:one-time-login-url], [user:cancel-url].');
 
-    $form['email_admin_created'] = array(
+    $form['email_admin_created'] = [
       '#type' => 'details',
       '#title' => $this->t('Welcome (new user created by administrator)'),
       '#open' => $config->get('register') == USER_REGISTER_ADMINISTRATORS_ONLY,
       '#description' => $this->t('Edit the welcome email messages sent to new member accounts created by an administrator.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_admin_created']['user_mail_register_admin_created_subject'] = array(
+    ];
+    $form['email_admin_created']['user_mail_register_admin_created_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('register_admin_created.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_admin_created']['user_mail_register_admin_created_body'] = array(
+    ];
+    $form['email_admin_created']['user_mail_register_admin_created_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('register_admin_created.body'),
       '#rows' => 15,
-    );
+    ];
 
-    $form['email_pending_approval'] = array(
+    $form['email_pending_approval'] = [
       '#type' => 'details',
       '#title' => $this->t('Welcome (awaiting approval)'),
       '#open' => $config->get('register') == USER_REGISTER_VISITORS_ADMINISTRATIVE_APPROVAL,
       '#description' => $this->t('Edit the welcome email messages sent to new members upon registering, when administrative approval is required.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_pending_approval']['user_mail_register_pending_approval_subject'] = array(
+    ];
+    $form['email_pending_approval']['user_mail_register_pending_approval_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('register_pending_approval.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_pending_approval']['user_mail_register_pending_approval_body'] = array(
+    ];
+    $form['email_pending_approval']['user_mail_register_pending_approval_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('register_pending_approval.body'),
       '#rows' => 8,
-    );
+    ];
 
-    $form['email_pending_approval_admin'] = array(
+    $form['email_pending_approval_admin'] = [
       '#type' => 'details',
       '#title' => $this->t('Admin (user awaiting approval)'),
       '#open' => $config->get('register') == USER_REGISTER_VISITORS_ADMINISTRATIVE_APPROVAL,
       '#description' => $this->t('Edit the email notifying the site administrator that there are new members awaiting administrative approval.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_pending_approval_admin']['register_pending_approval_admin_subject'] = array(
+    ];
+    $form['email_pending_approval_admin']['register_pending_approval_admin_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('register_pending_approval_admin.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_pending_approval_admin']['register_pending_approval_admin_body'] = array(
+    ];
+    $form['email_pending_approval_admin']['register_pending_approval_admin_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('register_pending_approval_admin.body'),
       '#rows' => 8,
-    );
+    ];
 
-    $form['email_no_approval_required'] = array(
+    $form['email_no_approval_required'] = [
       '#type' => 'details',
       '#title' => $this->t('Welcome (no approval required)'),
       '#open' => $config->get('register') == USER_REGISTER_VISITORS,
       '#description' => $this->t('Edit the welcome email messages sent to new members upon registering, when no administrator approval is required.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_no_approval_required']['user_mail_register_no_approval_required_subject'] = array(
+    ];
+    $form['email_no_approval_required']['user_mail_register_no_approval_required_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('register_no_approval_required.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_no_approval_required']['user_mail_register_no_approval_required_body'] = array(
+    ];
+    $form['email_no_approval_required']['user_mail_register_no_approval_required_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('register_no_approval_required.body'),
       '#rows' => 15,
-    );
+    ];
 
-    $form['email_password_reset'] = array(
+    $form['email_password_reset'] = [
       '#type' => 'details',
       '#title' => $this->t('Password recovery'),
       '#description' => $this->t('Edit the email messages sent to users who request a new password.') . ' ' . $email_token_help,
       '#group' => 'email',
       '#weight' => 10,
-    );
-    $form['email_password_reset']['user_mail_password_reset_subject'] = array(
+    ];
+    $form['email_password_reset']['user_mail_password_reset_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('password_reset.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_password_reset']['user_mail_password_reset_body'] = array(
+    ];
+    $form['email_password_reset']['user_mail_password_reset_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('password_reset.body'),
       '#rows' => 12,
-    );
+    ];
 
-    $form['email_activated'] = array(
+    $form['email_activated'] = [
       '#type' => 'details',
       '#title' => $this->t('Account activation'),
       '#description' => $this->t('Enable and edit email messages sent to users upon account activation (when an administrator activates an account of a user who has already registered, on a site where administrative approval is required).') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_activated']['user_mail_status_activated_notify'] = array(
+    ];
+    $form['email_activated']['user_mail_status_activated_notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user when account is activated'),
       '#default_value' => $config->get('notify.status_activated'),
-    );
-    $form['email_activated']['settings'] = array(
+    ];
+    $form['email_activated']['settings'] = [
       '#type' => 'container',
-      '#states' => array(
+      '#states' => [
         // Hide the additional settings when this email is disabled.
-        'invisible' => array(
-          'input[name="user_mail_status_activated_notify"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
-    $form['email_activated']['settings']['user_mail_status_activated_subject'] = array(
+        'invisible' => [
+          'input[name="user_mail_status_activated_notify"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
+    $form['email_activated']['settings']['user_mail_status_activated_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('status_activated.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_activated']['settings']['user_mail_status_activated_body'] = array(
+    ];
+    $form['email_activated']['settings']['user_mail_status_activated_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('status_activated.body'),
       '#rows' => 15,
-    );
+    ];
 
-    $form['email_blocked'] = array(
+    $form['email_blocked'] = [
       '#type' => 'details',
       '#title' => $this->t('Account blocked'),
       '#description' => $this->t('Enable and edit email messages sent to users when their accounts are blocked.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_blocked']['user_mail_status_blocked_notify'] = array(
+    ];
+    $form['email_blocked']['user_mail_status_blocked_notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user when account is blocked'),
       '#default_value' => $config->get('notify.status_blocked'),
-    );
-    $form['email_blocked']['settings'] = array(
+    ];
+    $form['email_blocked']['settings'] = [
       '#type' => 'container',
-      '#states' => array(
+      '#states' => [
         // Hide the additional settings when the blocked email is disabled.
-        'invisible' => array(
-          'input[name="user_mail_status_blocked_notify"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
-    $form['email_blocked']['settings']['user_mail_status_blocked_subject'] = array(
+        'invisible' => [
+          'input[name="user_mail_status_blocked_notify"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
+    $form['email_blocked']['settings']['user_mail_status_blocked_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('status_blocked.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_blocked']['settings']['user_mail_status_blocked_body'] = array(
+    ];
+    $form['email_blocked']['settings']['user_mail_status_blocked_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('status_blocked.body'),
       '#rows' => 3,
-    );
+    ];
 
-    $form['email_cancel_confirm'] = array(
+    $form['email_cancel_confirm'] = [
       '#type' => 'details',
       '#title' => $this->t('Account cancellation confirmation'),
       '#description' => $this->t('Edit the email messages sent to users when they attempt to cancel their accounts.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_cancel_confirm']['user_mail_cancel_confirm_subject'] = array(
+    ];
+    $form['email_cancel_confirm']['user_mail_cancel_confirm_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('cancel_confirm.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_cancel_confirm']['user_mail_cancel_confirm_body'] = array(
+    ];
+    $form['email_cancel_confirm']['user_mail_cancel_confirm_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('cancel_confirm.body'),
       '#rows' => 3,
-    );
+    ];
 
-    $form['email_canceled'] = array(
+    $form['email_canceled'] = [
       '#type' => 'details',
       '#title' => $this->t('Account canceled'),
       '#description' => $this->t('Enable and edit email messages sent to users when their accounts are canceled.') . ' ' . $email_token_help,
       '#group' => 'email',
-    );
-    $form['email_canceled']['user_mail_status_canceled_notify'] = array(
+    ];
+    $form['email_canceled']['user_mail_status_canceled_notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user when account is canceled'),
       '#default_value' => $config->get('notify.status_canceled'),
-    );
-    $form['email_canceled']['settings'] = array(
+    ];
+    $form['email_canceled']['settings'] = [
       '#type' => 'container',
-      '#states' => array(
+      '#states' => [
         // Hide the settings when the cancel notify checkbox is disabled.
-        'invisible' => array(
-          'input[name="user_mail_status_canceled_notify"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
-    $form['email_canceled']['settings']['user_mail_status_canceled_subject'] = array(
+        'invisible' => [
+          'input[name="user_mail_status_canceled_notify"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
+    $form['email_canceled']['settings']['user_mail_status_canceled_subject'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subject'),
       '#default_value' => $mail_config->get('status_canceled.subject'),
       '#maxlength' => 180,
-    );
-    $form['email_canceled']['settings']['user_mail_status_canceled_body'] = array(
+    ];
+    $form['email_canceled']['settings']['user_mail_status_canceled_body'] = [
       '#type' => 'textarea',
       '#title' => $this->t('Body'),
       '#default_value' => $mail_config->get('status_canceled.body'),
       '#rows' => 3,
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/user/src/Controller/UserController.php b/core/modules/user/src/Controller/UserController.php
index 779cf90..be15fac 100644
--- a/core/modules/user/src/Controller/UserController.php
+++ b/core/modules/user/src/Controller/UserController.php
@@ -121,7 +121,7 @@ public function resetPass(Request $request, $uid, $timestamp, $hash) {
         /** @var \Drupal\user\UserInterface $reset_link_user */
         if ($reset_link_user = $this->userStorage->load($uid)) {
           drupal_set_message($this->t('Another user (%other_user) is already logged into the site on this computer, but you tried to use a one-time link for user %resetting_user. Please <a href=":logout">log out</a> and try using the link again.',
-            array('%other_user' => $account->getUsername(), '%resetting_user' => $reset_link_user->getUsername(), ':logout' => $this->url('user.logout'))), 'warning');
+            ['%other_user' => $account->getUsername(), '%resetting_user' => $reset_link_user->getUsername(), ':logout' => $this->url('user.logout')]), 'warning');
         }
         else {
           // Invalid one-time link specifies an unknown user.
@@ -254,7 +254,7 @@ public function resetPassLogin($uid, $timestamp, $hash) {
    *   Returns a redirect to the profile of the currently logged in user.
    */
   public function userPage() {
-    return $this->redirect('entity.user.canonical', array('user' => $this->currentUser()->id()));
+    return $this->redirect('entity.user.canonical', ['user' => $this->currentUser()->id()]);
   }
 
   /**
@@ -305,9 +305,9 @@ public function confirmCancel(UserInterface $user, $timestamp = 0, $hashed_pass
     if (isset($account_data['cancel_method']) && !empty($timestamp) && !empty($hashed_pass)) {
       // Validate expiration and hashed password/login.
       if ($timestamp <= $current && $current - $timestamp < $timeout && $user->id() && $timestamp >= $user->getLastLoginTime() && Crypt::hashEquals($hashed_pass, user_pass_rehash($user, $timestamp))) {
-        $edit = array(
+        $edit = [
           'user_cancel_notify' => isset($account_data['cancel_notify']) ? $account_data['cancel_notify'] : $this->config('user.settings')->get('notify.status_canceled'),
-        );
+        ];
         user_cancel($edit, $user->id(), $account_data['cancel_method']);
         // Since user_cancel() is not invoked via Form API, batch processing
         // needs to be invoked manually and should redirect to the front page
diff --git a/core/modules/user/src/Entity/Role.php b/core/modules/user/src/Entity/Role.php
index a0b709c..0e7ef0e 100644
--- a/core/modules/user/src/Entity/Role.php
+++ b/core/modules/user/src/Entity/Role.php
@@ -72,7 +72,7 @@ class Role extends ConfigEntityBase implements RoleInterface {
    *
    * @var array
    */
-  protected $permissions = array();
+  protected $permissions = [];
 
   /**
    * An indicator whether the role has all permissions.
@@ -136,7 +136,7 @@ public function revokePermission($permission) {
     if ($this->isAdmin()) {
       return $this;
     }
-    $this->permissions = array_diff($this->permissions, array($permission));
+    $this->permissions = array_diff($this->permissions, [$permission]);
     return $this;
   }
 
diff --git a/core/modules/user/src/Entity/User.php b/core/modules/user/src/Entity/User.php
index 062af44..38f0f39 100644
--- a/core/modules/user/src/Entity/User.php
+++ b/core/modules/user/src/Entity/User.php
@@ -82,13 +82,13 @@ public function preSave(EntityStorageInterface $storage) {
 
     // Make sure that the authenticated/anonymous roles are not persisted.
     foreach ($this->get('roles') as $index => $item) {
-      if (in_array($item->target_id, array(RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID))) {
+      if (in_array($item->target_id, [RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID])) {
         $this->get('roles')->offsetUnset($index);
       }
     }
 
     // Store account cancellation information.
-    foreach (array('user_cancel_method', 'user_cancel_notify') as $key) {
+    foreach (['user_cancel_method', 'user_cancel_notify'] as $key) {
       if (isset($this->{$key})) {
         \Drupal::service('user.data')->set('user', $this->id(), substr($key, 5), $this->{$key});
       }
@@ -140,7 +140,7 @@ public static function postDelete(EntityStorageInterface $storage, array $entiti
    * {@inheritdoc}
    */
   public function getRoles($exclude_locked_roles = FALSE) {
-    $roles = array();
+    $roles = [];
 
     // Users with an ID always have the authenticated user role.
     if (!$exclude_locked_roles) {
@@ -186,7 +186,7 @@ public function addRole($rid) {
    * {@inheritdoc}
    */
   public function removeRole($rid) {
-    $this->set('roles', array_diff($this->getRoles(TRUE), array($rid)));
+    $this->set('roles', array_diff($this->getRoles(TRUE), [$rid]));
   }
 
   /**
@@ -445,9 +445,9 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setDescription(t("The user's preferred language code for receiving emails and viewing the site."))
       // @todo: Define this via an options provider once
       // https://www.drupal.org/node/2329937 is completed.
-      ->addPropertyConstraints('value', array(
-        'AllowedValues' => array('callback' => __CLASS__ . '::getAllowedConfigurableLanguageCodes'),
-      ));
+      ->addPropertyConstraints('value', [
+        'AllowedValues' => ['callback' => __CLASS__ . '::getAllowedConfigurableLanguageCodes'],
+      ]);
 
     $fields['preferred_admin_langcode'] = BaseFieldDefinition::create('language')
       ->setLabel(t('Preferred admin language code'))
@@ -455,12 +455,12 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       // @todo: A default value of NULL is ignored, so we have to specify
       // an empty field item structure instead. Fix this in
       // https://www.drupal.org/node/2318605.
-      ->setDefaultValue(array(0 => array ('value' => NULL)))
+      ->setDefaultValue([0 =>  ['value' => NULL]])
       // @todo: Define this via an options provider once
       // https://www.drupal.org/node/2329937 is completed.
-      ->addPropertyConstraints('value', array(
-        'AllowedValues' => array('callback' => __CLASS__ . '::getAllowedConfigurableLanguageCodes'),
-      ));
+      ->addPropertyConstraints('value', [
+        'AllowedValues' => ['callback' => __CLASS__ . '::getAllowedConfigurableLanguageCodes'],
+      ]);
 
     // The name should not vary per language. The username is the visual
     // identifier for a user and needs to be consistent in all languages.
@@ -468,12 +468,12 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setLabel(t('Name'))
       ->setDescription(t('The name of this user.'))
       ->setRequired(TRUE)
-      ->setConstraints(array(
+      ->setConstraints([
         // No Length constraint here because the UserName constraint also covers
         // that.
-        'UserName' => array(),
-        'UserNameUnique' => array(),
-      ));
+        'UserName' => [],
+        'UserNameUnique' => [],
+      ]);
     $fields['name']->getItemDefinition()->setClass('\Drupal\user\UserNameItem');
 
     $fields['pass'] = BaseFieldDefinition::create('password')
@@ -495,9 +495,9 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
       ->setSetting('max_length', 32)
       // @todo: Define this via an options provider once
       // https://www.drupal.org/node/2329937 is completed.
-      ->addPropertyConstraints('value', array(
-        'AllowedValues' => array('callback' => __CLASS__ . '::getAllowedTimezones'),
-      ));
+      ->addPropertyConstraints('value', [
+        'AllowedValues' => ['callback' => __CLASS__ . '::getAllowedTimezones'],
+      ]);
 
     $fields['status'] = BaseFieldDefinition::create('boolean')
       ->setLabel(t('User status'))
diff --git a/core/modules/user/src/Form/UserCancelForm.php b/core/modules/user/src/Form/UserCancelForm.php
index 0ab8933..14c553c 100644
--- a/core/modules/user/src/Form/UserCancelForm.php
+++ b/core/modules/user/src/Form/UserCancelForm.php
@@ -31,7 +31,7 @@ public function getQuestion() {
     if ($this->entity->id() == $this->currentUser()->id()) {
       return $this->t('Are you sure you want to cancel your account?');
     }
-    return $this->t('Are you sure you want to cancel the account %name?', array('%name' => $this->entity->label()));
+    return $this->t('Are you sure you want to cancel the account %name?', ['%name' => $this->entity->label()]);
   }
 
   /**
@@ -74,43 +74,43 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     // Display account cancellation method selection, if allowed.
     $admin_access = $user->hasPermission('administer users');
-    $form['user_cancel_method'] = array(
+    $form['user_cancel_method'] = [
       '#type' => 'radios',
       '#title' => ($this->entity->id() == $user->id() ? $this->t('When cancelling your account') : $this->t('When cancelling the account')),
       '#access' => $admin_access || $user->hasPermission('select account cancellation method'),
-    );
+    ];
     $form['user_cancel_method'] += $this->cancelMethods;
 
     // Allow user administrators to skip the account cancellation confirmation
     // mail (by default), as long as they do not attempt to cancel their own
     // account.
     $override_access = $admin_access && ($this->entity->id() != $user->id());
-    $form['user_cancel_confirm'] = array(
+    $form['user_cancel_confirm'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Require email confirmation to cancel account'),
       '#default_value' => !$override_access,
       '#access' => $override_access,
       '#description' => $this->t('When enabled, the user must confirm the account cancellation via email.'),
-    );
+    ];
     // Also allow to send account canceled notification mail, if enabled.
     $default_notify = $this->config('user.settings')->get('notify.status_canceled');
-    $form['user_cancel_notify'] = array(
+    $form['user_cancel_notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user when account is canceled'),
       '#default_value' => ($override_access ? FALSE : $default_notify),
       '#access' => $override_access && $default_notify,
       '#description' => $this->t('When enabled, the user will receive an email notification after the account has been canceled.'),
-    );
+    ];
 
     // Always provide entity id in the same form key as in the entity edit form.
-    $form['uid'] = array('#type' => 'value', '#value' => $this->entity->id());
+    $form['uid'] = ['#type' => 'value', '#value' => $this->entity->id()];
 
     // Store the user permissions so that it can be altered in hook_form_alter()
     // if desired.
-    $form['access'] = array(
+    $form['access'] = [
       '#type' => 'value',
       '#value' => $user->hasPermission('administer users'),
-    );
+    ];
 
     $form = parent::buildForm($form, $form_state);
 
@@ -138,11 +138,11 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       $this->entity->save();
       _user_mail_notify('cancel_confirm', $this->entity);
       drupal_set_message($this->t('A confirmation request to cancel your account has been sent to your email address.'));
-      $this->logger('user')->notice('Sent account cancellation request to %name %email.', array('%name' => $this->entity->label(), '%email' => '<' . $this->entity->getEmail() . '>'));
+      $this->logger('user')->notice('Sent account cancellation request to %name %email.', ['%name' => $this->entity->label(), '%email' => '<' . $this->entity->getEmail() . '>']);
 
       $form_state->setRedirect(
         'entity.user.canonical',
-        array('user' => $this->entity->id())
+        ['user' => $this->entity->id()]
       );
     }
   }
diff --git a/core/modules/user/src/Form/UserLoginForm.php b/core/modules/user/src/Form/UserLoginForm.php
index 43b29e5..25a54ec 100644
--- a/core/modules/user/src/Form/UserLoginForm.php
+++ b/core/modules/user/src/Form/UserLoginForm.php
@@ -88,31 +88,31 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $config = $this->config('system.site');
 
     // Display login form:
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Username'),
       '#size' => 60,
       '#maxlength' => USERNAME_MAX_LENGTH,
-      '#description' => $this->t('Enter your @s username.', array('@s' => $config->get('name'))),
+      '#description' => $this->t('Enter your @s username.', ['@s' => $config->get('name')]),
       '#required' => TRUE,
-      '#attributes' => array(
+      '#attributes' => [
         'autocorrect' => 'none',
         'autocapitalize' => 'none',
         'spellcheck' => 'false',
         'autofocus' => 'autofocus',
-      ),
-    );
+      ],
+    ];
 
-    $form['pass'] = array(
+    $form['pass'] = [
       '#type' => 'password',
       '#title' => $this->t('Password'),
       '#size' => 60,
       '#description' => $this->t('Enter the password that accompanies your username.'),
       '#required' => TRUE,
-    );
+    ];
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array('#type' => 'submit', '#value' => $this->t('Log in'));
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = ['#type' => 'submit', '#value' => $this->t('Log in')];
 
     $form['#validate'][] = '::validateName';
     $form['#validate'][] = '::validateAuthentication';
@@ -133,7 +133,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     if (!$this->getRequest()->request->has('destination')) {
       $form_state->setRedirect(
         'entity.user.canonical',
-        array('user' => $account->id())
+        ['user' => $account->id()]
       );
     }
     else {
@@ -149,7 +149,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
   public function validateName(array &$form, FormStateInterface $form_state) {
     if (!$form_state->isValueEmpty('name') && user_is_blocked($form_state->getValue('name'))) {
       // Blocked in user administration.
-      $form_state->setErrorByName('name', $this->t('The username %name has not been activated or is blocked.', array('%name' => $form_state->getValue('name'))));
+      $form_state->setErrorByName('name', $this->t('The username %name has not been activated or is blocked.', ['%name' => $form_state->getValue('name')]));
     }
   }
 
@@ -171,7 +171,7 @@ public function validateAuthentication(array &$form, FormStateInterface $form_st
         $form_state->set('flood_control_triggered', 'ip');
         return;
       }
-      $accounts = $this->userStorage->loadByProperties(array('name' => $form_state->getValue('name'), 'status' => 1));
+      $accounts = $this->userStorage->loadByProperties(['name' => $form_state->getValue('name'), 'status' => 1]);
       $account = reset($accounts);
       if ($account) {
         if ($flood_config->get('uid_only')) {
@@ -218,11 +218,11 @@ public function validateFinal(array &$form, FormStateInterface $form_state) {
 
       if ($flood_control_triggered = $form_state->get('flood_control_triggered')) {
         if ($flood_control_triggered == 'user') {
-          $form_state->setErrorByName('name', $this->formatPlural($flood_config->get('user_limit'), 'There has been more than one failed login attempt for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', 'There have been more than @count failed login attempts for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', array(':url' => $this->url('user.pass'))));
+          $form_state->setErrorByName('name', $this->formatPlural($flood_config->get('user_limit'), 'There has been more than one failed login attempt for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', 'There have been more than @count failed login attempts for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', [':url' => $this->url('user.pass')]));
         }
         else {
           // We did not find a uid, so the limit is IP-based.
-          $form_state->setErrorByName('name', $this->t('Too many failed login attempts from your IP address. This IP address is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', array(':url' => $this->url('user.pass'))));
+          $form_state->setErrorByName('name', $this->t('Too many failed login attempts from your IP address. This IP address is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', [':url' => $this->url('user.pass')]));
         }
       }
       else {
@@ -231,16 +231,16 @@ public function validateFinal(array &$form, FormStateInterface $form_state) {
         // $form_state->getValue() may have been modified by validation
         // handlers that ran earlier than this one.
         $user_input = $form_state->getUserInput();
-        $query = isset($user_input['name']) ? array('name' => $user_input['name']) : array();
-        $form_state->setErrorByName('name', $this->t('Unrecognized username or password. <a href=":password">Forgot your password?</a>', array(':password' => $this->url('user.pass', [], array('query' => $query)))));
-        $accounts = $this->userStorage->loadByProperties(array('name' => $form_state->getValue('name')));
+        $query = isset($user_input['name']) ? ['name' => $user_input['name']] : [];
+        $form_state->setErrorByName('name', $this->t('Unrecognized username or password. <a href=":password">Forgot your password?</a>', [':password' => $this->url('user.pass', [], ['query' => $query])]));
+        $accounts = $this->userStorage->loadByProperties(['name' => $form_state->getValue('name')]);
         if (!empty($accounts)) {
-          $this->logger('user')->notice('Login attempt failed for %user.', array('%user' => $form_state->getValue('name')));
+          $this->logger('user')->notice('Login attempt failed for %user.', ['%user' => $form_state->getValue('name')]);
         }
         else {
           // If the username entered is not a valid user,
           // only store the IP address.
-          $this->logger('user')->notice('Login attempt failed from %ip.', array('%ip' => $this->getRequest()->getClientIp()));
+          $this->logger('user')->notice('Login attempt failed from %ip.', ['%ip' => $this->getRequest()->getClientIp()]);
         }
       }
     }
diff --git a/core/modules/user/src/Form/UserMultipleCancelConfirm.php b/core/modules/user/src/Form/UserMultipleCancelConfirm.php
index a97f803..62a64e5 100644
--- a/core/modules/user/src/Form/UserMultipleCancelConfirm.php
+++ b/core/modules/user/src/Form/UserMultipleCancelConfirm.php
@@ -129,7 +129,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     // Output a notice that user 1 cannot be canceled.
     if (isset($root)) {
       $redirect = (count($accounts) == 1);
-      $message = $this->t('The user account %name cannot be canceled.', array('%name' => $root->label()));
+      $message = $this->t('The user account %name cannot be canceled.', ['%name' => $root->label()]);
       drupal_set_message($message, $redirect ? 'error' : 'warning');
       // If only user 1 was selected, redirect to the overview.
       if ($redirect) {
@@ -137,30 +137,30 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $form['operation'] = array('#type' => 'hidden', '#value' => 'cancel');
+    $form['operation'] = ['#type' => 'hidden', '#value' => 'cancel'];
 
-    $form['user_cancel_method'] = array(
+    $form['user_cancel_method'] = [
       '#type' => 'radios',
       '#title' => $this->t('When cancelling these accounts'),
-    );
+    ];
 
     $form['user_cancel_method'] += user_cancel_methods();
 
     // Allow to send the account cancellation confirmation mail.
-    $form['user_cancel_confirm'] = array(
+    $form['user_cancel_confirm'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Require email confirmation to cancel account'),
       '#default_value' => FALSE,
       '#description' => $this->t('When enabled, the user must confirm the account cancellation via email.'),
-    );
+    ];
     // Also allow to send account canceled notification mail, if enabled.
-    $form['user_cancel_notify'] = array(
+    $form['user_cancel_notify'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Notify user when account is canceled'),
       '#default_value' => FALSE,
       '#access' => $this->config('user.settings')->get('notify.status_canceled'),
       '#description' => $this->t('When enabled, the user will receive an email notification after the account has been canceled.'),
-    );
+    ];
 
     $form = parent::buildForm($form, $form_state);
 
@@ -183,7 +183,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
         }
         // Prevent user administrators from deleting themselves without confirmation.
         if ($uid == $current_user_id) {
-          $admin_form_mock = array();
+          $admin_form_mock = [];
           $admin_form_state = $form_state;
           $admin_form_state->unsetValue('user_cancel_confirm');
           // The $user global is not a complete user entity, so load the full
diff --git a/core/modules/user/src/Form/UserPasswordForm.php b/core/modules/user/src/Form/UserPasswordForm.php
index a89549a..ea224fe 100644
--- a/core/modules/user/src/Form/UserPasswordForm.php
+++ b/core/modules/user/src/Form/UserPasswordForm.php
@@ -65,40 +65,40 @@ public function getFormId() {
    *   The request object.
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Username or email address'),
       '#size' => 60,
       '#maxlength' => max(USERNAME_MAX_LENGTH, Email::EMAIL_MAX_LENGTH),
       '#required' => TRUE,
-      '#attributes' => array(
+      '#attributes' => [
         'autocorrect' => 'off',
         'autocapitalize' => 'off',
         'spellcheck' => 'false',
         'autofocus' => 'autofocus',
-      ),
-    );
+      ],
+    ];
     // Allow logged in users to request this also.
     $user = $this->currentUser();
     if ($user->isAuthenticated()) {
       $form['name']['#type'] = 'value';
       $form['name']['#value'] = $user->getEmail();
-      $form['mail'] = array(
+      $form['mail'] = [
         '#prefix' => '<p>',
-        '#markup' => $this->t('Password reset instructions will be mailed to %email. You must log out to use the password reset link in the email.', array('%email' => $user->getEmail())),
+        '#markup' => $this->t('Password reset instructions will be mailed to %email. You must log out to use the password reset link in the email.', ['%email' => $user->getEmail()]),
         '#suffix' => '</p>',
-      );
+      ];
     }
     else {
-      $form['mail'] = array(
+      $form['mail'] = [
         '#prefix' => '<p>',
         '#markup' => $this->t('Password reset instructions will be sent to your registered email address.'),
         '#suffix' => '</p>',
-      );
+      ];
       $form['name']['#default_value'] = $this->getRequest()->query->get('name');
     }
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array('#type' => 'submit', '#value' => $this->t('Submit'));
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = ['#type' => 'submit', '#value' => $this->t('Submit')];
     $form['#cache']['contexts'][] = 'url.query_args';
 
     return $form;
@@ -110,23 +110,23 @@ public function buildForm(array $form, FormStateInterface $form_state) {
   public function validateForm(array &$form, FormStateInterface $form_state) {
     $name = trim($form_state->getValue('name'));
     // Try to load by email.
-    $users = $this->userStorage->loadByProperties(array('mail' => $name));
+    $users = $this->userStorage->loadByProperties(['mail' => $name]);
     if (empty($users)) {
       // No success, try to load by name.
-      $users = $this->userStorage->loadByProperties(array('name' => $name));
+      $users = $this->userStorage->loadByProperties(['name' => $name]);
     }
     $account = reset($users);
     if ($account && $account->id()) {
       // Blocked accounts cannot request a new password.
       if (!$account->isActive()) {
-        $form_state->setErrorByName('name', $this->t('%name is blocked or has not been activated yet.', array('%name' => $name)));
+        $form_state->setErrorByName('name', $this->t('%name is blocked or has not been activated yet.', ['%name' => $name]));
       }
       else {
-        $form_state->setValueForElement(array('#parents' => array('account')), $account);
+        $form_state->setValueForElement(['#parents' => ['account']], $account);
       }
     }
     else {
-      $form_state->setErrorByName('name', $this->t('%name is not recognized as a username or an email address.', array('%name' => $name)));
+      $form_state->setErrorByName('name', $this->t('%name is not recognized as a username or an email address.', ['%name' => $name]));
     }
   }
 
@@ -140,7 +140,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     // Mail one time login URL and instructions using current language.
     $mail = _user_mail_notify('password_reset', $account, $langcode);
     if (!empty($mail)) {
-      $this->logger('user')->notice('Password reset instructions mailed to %name at %email.', array('%name' => $account->getUsername(), '%email' => $account->getEmail()));
+      $this->logger('user')->notice('Password reset instructions mailed to %name at %email.', ['%name' => $account->getUsername(), '%email' => $account->getEmail()]);
       drupal_set_message($this->t('Further instructions have been sent to your email address.'));
     }
 
diff --git a/core/modules/user/src/Form/UserPasswordResetForm.php b/core/modules/user/src/Form/UserPasswordResetForm.php
index 1372415..ce8c7cc 100644
--- a/core/modules/user/src/Form/UserPasswordResetForm.php
+++ b/core/modules/user/src/Form/UserPasswordResetForm.php
@@ -38,21 +38,21 @@ public function getFormId() {
    */
   public function buildForm(array $form, FormStateInterface $form_state, AccountInterface $user = NULL, $expiration_date = NULL, $timestamp = NULL, $hash = NULL) {
     if ($expiration_date) {
-      $form['message'] = array('#markup' => $this->t('<p>This is a one-time login for %user_name and will expire on %expiration_date.</p><p>Click on this button to log in to the site and change your password.</p>', array('%user_name' => $user->getUsername(), '%expiration_date' => $expiration_date)));
+      $form['message'] = ['#markup' => $this->t('<p>This is a one-time login for %user_name and will expire on %expiration_date.</p><p>Click on this button to log in to the site and change your password.</p>', ['%user_name' => $user->getUsername(), '%expiration_date' => $expiration_date])];
       $form['#title'] = $this->t('Reset password');
     }
     else {
       // No expiration for first time login.
-      $form['message'] = array('#markup' => $this->t('<p>This is a one-time login for %user_name.</p><p>Click on this button to log in to the site and change your password.</p>', array('%user_name' => $user->getUsername())));
+      $form['message'] = ['#markup' => $this->t('<p>This is a one-time login for %user_name.</p><p>Click on this button to log in to the site and change your password.</p>', ['%user_name' => $user->getUsername()])];
       $form['#title'] = $this->t('Set password');
     }
 
-    $form['help'] = array('#markup' => '<p>' . $this->t('This login can be used only once.') . '</p>');
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['help'] = ['#markup' => '<p>' . $this->t('This login can be used only once.') . '</p>'];
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Log in'),
-    );
+    ];
     $form['#action'] = Url::fromRoute('user.reset.login', [
       'uid' => $user->id(),
       'timestamp' => $timestamp,
diff --git a/core/modules/user/src/Form/UserPermissionsForm.php b/core/modules/user/src/Form/UserPermissionsForm.php
index 75bbaf2..0b3da3b 100644
--- a/core/modules/user/src/Form/UserPermissionsForm.php
+++ b/core/modules/user/src/Form/UserPermissionsForm.php
@@ -83,9 +83,9 @@ protected function getRoles() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $role_names = array();
-    $role_permissions = array();
-    $admin_roles = array();
+    $role_names = [];
+    $role_permissions = [];
+    $admin_roles = [];
     foreach ($this->getRoles() as $role_name => $role) {
       // Retrieve role names for columns.
       $role_names[$role_name] = $role->label();
@@ -95,79 +95,79 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     }
 
     // Store $role_names for use when saving the data.
-    $form['role_names'] = array(
+    $form['role_names'] = [
       '#type' => 'value',
       '#value' => $role_names,
-    );
+    ];
     // Render role/permission overview:
     $hide_descriptions = system_admin_compact_mode();
 
-    $form['system_compact_link'] = array(
+    $form['system_compact_link'] = [
       '#id' => FALSE,
       '#type' => 'system_compact_link',
-    );
+    ];
 
-    $form['permissions'] = array(
+    $form['permissions'] = [
       '#type' => 'table',
-      '#header' => array($this->t('Permission')),
+      '#header' => [$this->t('Permission')],
       '#id' => 'permissions',
       '#attributes' => ['class' => ['permissions', 'js-permissions']],
       '#sticky' => TRUE,
-    );
+    ];
     foreach ($role_names as $name) {
-      $form['permissions']['#header'][] = array(
+      $form['permissions']['#header'][] = [
         'data' => $name,
-        'class' => array('checkbox'),
-      );
+        'class' => ['checkbox'],
+      ];
     }
 
     $permissions = $this->permissionHandler->getPermissions();
-    $permissions_by_provider = array();
+    $permissions_by_provider = [];
     foreach ($permissions as $permission_name => $permission) {
       $permissions_by_provider[$permission['provider']][$permission_name] = $permission;
     }
 
     foreach ($permissions_by_provider as $provider => $permissions) {
       // Module name.
-      $form['permissions'][$provider] = array(array(
-        '#wrapper_attributes' => array(
+      $form['permissions'][$provider] = [[
+        '#wrapper_attributes' => [
           'colspan' => count($role_names) + 1,
-          'class' => array('module'),
+          'class' => ['module'],
           'id' => 'module-' . $provider,
-        ),
+        ],
         '#markup' => $this->moduleHandler->getName($provider),
-      ));
+      ]];
       foreach ($permissions as $perm => $perm_item) {
         // Fill in default values for the permission.
-        $perm_item += array(
+        $perm_item += [
           'description' => '',
           'restrict access' => FALSE,
           'warning' => !empty($perm_item['restrict access']) ? $this->t('Warning: Give to trusted roles only; this permission has security implications.') : '',
-        );
-        $form['permissions'][$perm]['description'] = array(
+        ];
+        $form['permissions'][$perm]['description'] = [
           '#type' => 'inline_template',
           '#template' => '<div class="permission"><span class="title">{{ title }}</span>{% if description or warning %}<div class="description">{% if warning %}<em class="permission-warning">{{ warning }}</em> {% endif %}{{ description }}</div>{% endif %}</div>',
-          '#context' => array(
+          '#context' => [
             'title' => $perm_item['title'],
-          ),
-        );
+          ],
+        ];
         // Show the permission description.
         if (!$hide_descriptions) {
           $form['permissions'][$perm]['description']['#context']['description'] = $perm_item['description'];
           $form['permissions'][$perm]['description']['#context']['warning'] = $perm_item['warning'];
         }
         foreach ($role_names as $rid => $name) {
-          $form['permissions'][$perm][$rid] = array(
+          $form['permissions'][$perm][$rid] = [
             '#title' => $name . ': ' . $perm_item['title'],
             '#title_display' => 'invisible',
-            '#wrapper_attributes' => array(
-              'class' => array('checkbox'),
-            ),
+            '#wrapper_attributes' => [
+              'class' => ['checkbox'],
+            ],
             '#type' => 'checkbox',
             '#default_value' => in_array($perm, $role_permissions[$rid]) ? 1 : 0,
-            '#attributes' => array('class' => array('rid-' . $rid, 'js-rid-' . $rid)),
-            '#parents' => array($rid, $perm),
-          );
+            '#attributes' => ['class' => ['rid-' . $rid, 'js-rid-' . $rid]],
+            '#parents' => [$rid, $perm],
+          ];
           // Show a column of disabled but checked checkboxes.
           if ($admin_roles[$rid]) {
             $form['permissions'][$perm][$rid]['#disabled'] = TRUE;
@@ -177,12 +177,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $form['actions'] = array('#type' => 'actions');
-    $form['actions']['submit'] = array(
+    $form['actions'] = ['#type' => 'actions'];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Save permissions'),
       '#button_type' => 'primary',
-    );
+    ];
 
     $form['#attached']['library'][] = 'user/drupal.user.permissions';
 
diff --git a/core/modules/user/src/Form/UserPermissionsRoleSpecificForm.php b/core/modules/user/src/Form/UserPermissionsRoleSpecificForm.php
index 41ae8b8..4281a44 100644
--- a/core/modules/user/src/Form/UserPermissionsRoleSpecificForm.php
+++ b/core/modules/user/src/Form/UserPermissionsRoleSpecificForm.php
@@ -21,7 +21,7 @@ class UserPermissionsRoleSpecificForm extends UserPermissionsForm {
    * {@inheritdoc}
    */
   protected function getRoles() {
-    return array($this->userRole->id() => $this->userRole);
+    return [$this->userRole->id() => $this->userRole];
   }
 
   /**
diff --git a/core/modules/user/src/PermissionHandler.php b/core/modules/user/src/PermissionHandler.php
index d7179b6..1f07b25 100644
--- a/core/modules/user/src/PermissionHandler.php
+++ b/core/modules/user/src/PermissionHandler.php
@@ -136,8 +136,8 @@ public function moduleProvidesPermissions($module_name) {
    *   - provider: The provider of the permission.
    */
   protected function buildPermissionsYaml() {
-    $all_permissions = array();
-    $all_callback_permissions = array();
+    $all_permissions = [];
+    $all_callback_permissions = [];
 
     foreach ($this->getYamlDiscovery()->findAll() as $provider => $permissions) {
       // The top-level 'permissions_callback' is a list of methods in controller
@@ -151,15 +151,15 @@ protected function buildPermissionsYaml() {
             // defaults can then get processed below.
             foreach ($callback_permissions as $name => $callback_permission) {
               if (!is_array($callback_permission)) {
-                $callback_permission = array(
+                $callback_permission = [
                   'title' => $callback_permission,
-                );
+                ];
               }
 
-              $callback_permission += array(
+              $callback_permission += [
                 'description' => NULL,
                 'provider' => $provider,
-              );
+              ];
 
               $all_callback_permissions[$name] = $callback_permission;
             }
@@ -171,9 +171,9 @@ protected function buildPermissionsYaml() {
 
       foreach ($permissions as &$permission) {
         if (!is_array($permission)) {
-          $permission = array(
+          $permission = [
             'title' => $permission,
-          );
+          ];
         }
         $permission['title'] = $this->t($permission['title']);
         $permission['description'] = isset($permission['description']) ? $this->t($permission['description']) : NULL;
@@ -198,7 +198,7 @@ protected function buildPermissionsYaml() {
    *   - description: The description of the permission, defaults to NULL.
    *   - provider: The provider of the permission.
    */
-  protected function sortPermissions(array $all_permissions = array()) {
+  protected function sortPermissions(array $all_permissions = []) {
     // Get a list of all the modules providing permissions and sort by
     // display name.
     $modules = $this->getModuleNames();
@@ -221,7 +221,7 @@ protected function sortPermissions(array $all_permissions = array()) {
    *   Returns the human readable names of all modules keyed by machine name.
    */
   protected function getModuleNames() {
-    $modules = array();
+    $modules = [];
     foreach (array_keys($this->moduleHandler->getModuleList()) as $module) {
       $modules[$module] = $this->moduleHandler->getName($module);
     }
diff --git a/core/modules/user/src/Plugin/Action/CancelUser.php b/core/modules/user/src/Plugin/Action/CancelUser.php
index 7c51f5f..140ef42 100644
--- a/core/modules/user/src/Plugin/Action/CancelUser.php
+++ b/core/modules/user/src/Plugin/Action/CancelUser.php
@@ -79,7 +79,7 @@ public function executeMultiple(array $entities) {
    * {@inheritdoc}
    */
   public function execute($object = NULL) {
-    $this->executeMultiple(array($object));
+    $this->executeMultiple([$object]);
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/Action/ChangeUserRoleBase.php b/core/modules/user/src/Plugin/Action/ChangeUserRoleBase.php
index 02424bc..de4c404 100644
--- a/core/modules/user/src/Plugin/Action/ChangeUserRoleBase.php
+++ b/core/modules/user/src/Plugin/Action/ChangeUserRoleBase.php
@@ -49,9 +49,9 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
+    return [
       'rid' => '',
-    );
+    ];
   }
 
   /**
@@ -60,13 +60,13 @@ public function defaultConfiguration() {
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     $roles = user_role_names(TRUE);
     unset($roles[RoleInterface::AUTHENTICATED_ID]);
-    $form['rid'] = array(
+    $form['rid'] = [
       '#type' => 'radios',
       '#title' => t('Role'),
       '#options' => $roles,
       '#default_value' => $this->configuration['rid'],
       '#required' => TRUE,
-    );
+    ];
     return $form;
   }
 
diff --git a/core/modules/user/src/Plugin/Block/UserLoginBlock.php b/core/modules/user/src/Plugin/Block/UserLoginBlock.php
index d7ff9da..ed0e2ea 100644
--- a/core/modules/user/src/Plugin/Block/UserLoginBlock.php
+++ b/core/modules/user/src/Plugin/Block/UserLoginBlock.php
@@ -72,7 +72,7 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   protected function blockAccess(AccountInterface $account) {
     $route_name = $this->routeMatch->getRouteName();
-    if ($account->isAnonymous() && !in_array($route_name, array('user.login', 'user.logout'))) {
+    if ($account->isAnonymous() && !in_array($route_name, ['user.login', 'user.logout'])) {
       return AccessResult::allowed()
         ->addCacheContexts(['route.name', 'user.roles:anonymous']);
     }
@@ -96,7 +96,7 @@ public function build() {
     $form['pass']['#size'] = 15;
     $form['#action'] = $this->url('<current>', [], ['query' => $this->getDestinationArray(), 'external' => FALSE]);
     // Build action links.
-    $items = array();
+    $items = [];
     if (\Drupal::config('user.settings')->get('register') != USER_REGISTER_ADMINISTRATORS_ONLY) {
       $items['create_account'] = [
         '#type' => 'link',
@@ -119,13 +119,13 @@ public function build() {
         ],
       ]),
     ];
-    return array(
+    return [
       'user_login_form' => $form,
-      'user_links' => array(
+      'user_links' => [
         '#theme' => 'item_list',
         '#items' => $items,
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/user/src/Plugin/Condition/UserRole.php b/core/modules/user/src/Plugin/Condition/UserRole.php
index ea69e14..60b8b0e 100644
--- a/core/modules/user/src/Plugin/Condition/UserRole.php
+++ b/core/modules/user/src/Plugin/Condition/UserRole.php
@@ -22,13 +22,13 @@ class UserRole extends ConditionPluginBase {
    * {@inheritdoc}
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
-    $form['roles'] = array(
+    $form['roles'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('When the user has the following roles'),
       '#default_value' => $this->configuration['roles'],
       '#options' => array_map('\Drupal\Component\Utility\Html::escape', user_role_names()),
       '#description' => $this->t('If you select no roles, the condition will evaluate to TRUE for all users.'),
-    );
+    ];
     return parent::buildConfigurationForm($form, $form_state);
   }
 
@@ -36,9 +36,9 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array(
-      'roles' => array(),
-    ) + parent::defaultConfiguration();
+    return [
+      'roles' => [],
+    ] + parent::defaultConfiguration();
   }
 
   /**
@@ -62,10 +62,10 @@ public function summary() {
       $roles = reset($roles);
     }
     if (!empty($this->configuration['negate'])) {
-      return $this->t('The user is not a member of @roles', array('@roles' => $roles));
+      return $this->t('The user is not a member of @roles', ['@roles' => $roles]);
     }
     else {
-      return $this->t('The user is a member of @roles', array('@roles' => $roles));
+      return $this->t('The user is a member of @roles', ['@roles' => $roles]);
     }
   }
 
diff --git a/core/modules/user/src/Plugin/EntityReferenceSelection/UserSelection.php b/core/modules/user/src/Plugin/EntityReferenceSelection/UserSelection.php
index 6043c37..feec81b 100644
--- a/core/modules/user/src/Plugin/EntityReferenceSelection/UserSelection.php
+++ b/core/modules/user/src/Plugin/EntityReferenceSelection/UserSelection.php
@@ -87,51 +87,51 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $selection_handler_settings = $this->configuration['handler_settings'];
 
     // Merge in default values.
-    $selection_handler_settings += array(
-      'filter' => array(
+    $selection_handler_settings += [
+      'filter' => [
         'type' => '_none',
-      ),
+      ],
       'include_anonymous' => TRUE,
-    );
+    ];
 
-    $form['include_anonymous'] = array(
+    $form['include_anonymous'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Include the anonymous user.'),
       '#default_value' => $selection_handler_settings['include_anonymous'],
-    );
+    ];
 
     // Add user specific filter options.
-    $form['filter']['type'] = array(
+    $form['filter']['type'] = [
       '#type' => 'select',
       '#title' => $this->t('Filter by'),
-      '#options' => array(
+      '#options' => [
         '_none' => $this->t('- None -'),
         'role' => $this->t('User role'),
-      ),
+      ],
       '#ajax' => TRUE,
-      '#limit_validation_errors' => array(),
+      '#limit_validation_errors' => [],
       '#default_value' => $selection_handler_settings['filter']['type'],
-    );
+    ];
 
-    $form['filter']['settings'] = array(
+    $form['filter']['settings'] = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('entity_reference-settings')),
-      '#process' => array(array('\Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem', 'formProcessMergeParent')),
-    );
+      '#attributes' => ['class' => ['entity_reference-settings']],
+      '#process' => [['\Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem', 'formProcessMergeParent']],
+    ];
 
     if ($selection_handler_settings['filter']['type'] == 'role') {
       // Merge in default values.
-      $selection_handler_settings['filter'] += array(
+      $selection_handler_settings['filter'] += [
         'role' => NULL,
-      );
+      ];
 
-      $form['filter']['settings']['role'] = array(
+      $form['filter']['settings']['role'] = [
         '#type' => 'checkboxes',
         '#title' => $this->t('Restrict to the selected roles'),
         '#required' => TRUE,
-        '#options' => array_diff_key(user_role_names(TRUE), array(RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID)),
+        '#options' => array_diff_key(user_role_names(TRUE), [RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID]),
         '#default_value' => $selection_handler_settings['filter']['role'],
-      );
+      ];
     }
 
     $form += parent::buildConfigurationForm($form, $form_state);
@@ -240,7 +240,7 @@ public function entityQueryAlter(SelectInterface $query) {
           $value_part->condition('anonymous_name', $condition['value'], $condition['operator']);
           $value_part->compile($this->connection, $query);
           $or->condition((new Condition('AND'))
-            ->where(str_replace('anonymous_name', ':anonymous_name', (string) $value_part), $value_part->arguments() + array(':anonymous_name' => \Drupal::config('user.settings')->get('anonymous')))
+            ->where(str_replace('anonymous_name', ':anonymous_name', (string) $value_part), $value_part->arguments() + [':anonymous_name' => \Drupal::config('user.settings')->get('anonymous')])
             ->condition('base_table.uid', 0)
           );
           $query->condition($or);
diff --git a/core/modules/user/src/Plugin/Field/FieldFormatter/AuthorFormatter.php b/core/modules/user/src/Plugin/Field/FieldFormatter/AuthorFormatter.php
index ede1615..9f74d67 100644
--- a/core/modules/user/src/Plugin/Field/FieldFormatter/AuthorFormatter.php
+++ b/core/modules/user/src/Plugin/Field/FieldFormatter/AuthorFormatter.php
@@ -25,18 +25,18 @@ class AuthorFormatter extends EntityReferenceFormatterBase {
    * {@inheritdoc}
    */
   public function viewElements(FieldItemListInterface $items, $langcode) {
-    $elements = array();
+    $elements = [];
 
     foreach ($this->getEntitiesToView($items, $langcode) as $delta => $entity) {
       /** @var $referenced_user \Drupal\user\UserInterface */
-      $elements[$delta] = array(
+      $elements[$delta] = [
         '#theme' => 'username',
         '#account' => $entity,
-        '#link_options' => array('attributes' => array('rel' => 'author')),
-        '#cache' => array(
+        '#link_options' => ['attributes' => ['rel' => 'author']],
+        '#cache' => [
           'tags' => $entity->getCacheTags(),
-        ),
-      );
+        ],
+      ];
     }
 
     return $elements;
diff --git a/core/modules/user/src/Plugin/Search/UserSearch.php b/core/modules/user/src/Plugin/Search/UserSearch.php
index f847121..063d3ef 100644
--- a/core/modules/user/src/Plugin/Search/UserSearch.php
+++ b/core/modules/user/src/Plugin/Search/UserSearch.php
@@ -104,7 +104,7 @@ public function access($operation = 'view', AccountInterface $account = NULL, $r
    * {@inheritdoc}
    */
   public function execute() {
-    $results = array();
+    $results = [];
     if (!$this->isSearchExecutable()) {
       return $results;
     }
@@ -120,12 +120,12 @@ public function execute() {
     $query = $this->database
       ->select('users_field_data', 'users')
       ->extend('Drupal\Core\Database\Query\PagerSelectExtender');
-    $query->fields('users', array('uid'));
+    $query->fields('users', ['uid']);
     $query->condition('default_langcode', 1);
     if ($this->currentUser->hasPermission('administer users')) {
       // Administrators can also search in the otherwise private email field,
       // and they don't need to be restricted to only active users.
-      $query->fields('users', array('mail'));
+      $query->fields('users', ['mail']);
       $query->condition($query->orConditionGroup()
         ->condition('name', '%' . $keys . '%', 'LIKE')
         ->condition('mail', '%' . $keys . '%', 'LIKE')
@@ -144,10 +144,10 @@ public function execute() {
     $accounts = $this->entityManager->getStorage('user')->loadMultiple($uids);
 
     foreach ($accounts as $account) {
-      $result = array(
+      $result = [
         'title' => $account->getDisplayName(),
-        'link' => $account->url('canonical', array('absolute' => TRUE)),
-      );
+        'link' => $account->url('canonical', ['absolute' => TRUE]),
+      ];
       if ($this->currentUser->hasPermission('administer users')) {
         $result['title'] .= ' (' . $account->getEmail() . ')';
       }
@@ -162,13 +162,13 @@ public function execute() {
    * {@inheritdoc}
    */
   public function getHelp() {
-    $help = array('list' => array(
+    $help = ['list' => [
       '#theme' => 'item_list',
-      '#items' => array(
+      '#items' => [
         $this->t('User search looks for user names and partial user names. Example: mar would match usernames mar, delmar, and maryjane.'),
         $this->t('You can use * as a wildcard within your keyword. Example: m*r would match user names mar, delmar, and elementary.'),
-      ),
-    ));
+      ],
+    ]];
 
     return $help;
   }
diff --git a/core/modules/user/src/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidator.php b/core/modules/user/src/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidator.php
index 2bfdca4..a8b12af 100644
--- a/core/modules/user/src/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidator.php
+++ b/core/modules/user/src/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidator.php
@@ -86,7 +86,7 @@ public function validate($items, Constraint $constraint) {
         $changed = $items->getValue() != $account_unchanged->get($field->getName())->getValue();
       }
       if ($changed && (!$account->checkExistingPassword($account_unchanged))) {
-        $this->context->addViolation($constraint->message, array('%name' => $field->getLabel()));
+        $this->context->addViolation($constraint->message, ['%name' => $field->getLabel()]);
       }
     }
   }
diff --git a/core/modules/user/src/Plugin/Validation/Constraint/UserNameConstraintValidator.php b/core/modules/user/src/Plugin/Validation/Constraint/UserNameConstraintValidator.php
index fa71464..9e4776b 100644
--- a/core/modules/user/src/Plugin/Validation/Constraint/UserNameConstraintValidator.php
+++ b/core/modules/user/src/Plugin/Validation/Constraint/UserNameConstraintValidator.php
@@ -54,7 +54,7 @@ public function validate($items, Constraint $constraint) {
       $this->context->addViolation($constraint->illegalMessage);
     }
     if (Unicode::strlen($name) > USERNAME_MAX_LENGTH) {
-      $this->context->addViolation($constraint->tooLongMessage, array('%name' => $name, '%max' => USERNAME_MAX_LENGTH));
+      $this->context->addViolation($constraint->tooLongMessage, ['%name' => $name, '%max' => USERNAME_MAX_LENGTH]);
     }
   }
 
diff --git a/core/modules/user/src/Plugin/migrate/destination/EntityUser.php b/core/modules/user/src/Plugin/migrate/destination/EntityUser.php
index b11d867..7c2c81a 100644
--- a/core/modules/user/src/Plugin/migrate/destination/EntityUser.php
+++ b/core/modules/user/src/Plugin/migrate/destination/EntityUser.php
@@ -77,7 +77,7 @@ public static function create(ContainerInterface $container, array $configuratio
    * {@inheritdoc}
    * @throws \Drupal\migrate\MigrateException
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     // Do not overwrite the root account password.
     if ($row->getDestinationProperty('uid') == 1) {
       $row->removeDestinationProperty('pass');
@@ -88,7 +88,7 @@ public function import(Row $row, array $old_destination_id_values = array()) {
   /**
    * {@inheritdoc}
    */
-  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = array()) {
+  protected function save(ContentEntityInterface $entity, array $old_destination_id_values = []) {
     // Do not overwrite the root account password.
     if ($entity->id() != 1) {
       // Set the pre_hashed password so that the PasswordItem field does not hash
diff --git a/core/modules/user/src/Plugin/migrate/destination/UserData.php b/core/modules/user/src/Plugin/migrate/destination/UserData.php
index 6ca6017..7c48f93 100644
--- a/core/modules/user/src/Plugin/migrate/destination/UserData.php
+++ b/core/modules/user/src/Plugin/migrate/destination/UserData.php
@@ -56,7 +56,7 @@ public static function create(ContainerInterface $container, array $configuratio
   /**
    * {@inheritdoc}
    */
-  public function import(Row $row, array $old_destination_id_values = array()) {
+  public function import(Row $row, array $old_destination_id_values = []) {
     $uid = $row->getDestinationProperty('uid');
     $module = $row->getDestinationProperty('module');
     $key = $row->getDestinationProperty('key');
diff --git a/core/modules/user/src/Plugin/migrate/process/ConvertTokens.php b/core/modules/user/src/Plugin/migrate/process/ConvertTokens.php
index ce93c0e..ed95db2 100644
--- a/core/modules/user/src/Plugin/migrate/process/ConvertTokens.php
+++ b/core/modules/user/src/Plugin/migrate/process/ConvertTokens.php
@@ -21,7 +21,7 @@ class ConvertTokens extends ProcessPluginBase {
    * {@inheritdoc}
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
-    $tokens = array(
+    $tokens = [
       '!site' => '[site:name]',
       '!username' => '[user:name]',
       '!mailto' => '[user:mail]',
@@ -32,7 +32,7 @@ public function transform($value, MigrateExecutableInterface $migrate_executable
       '!uri' => '[site:url]',
       '!date' => '[date:medium]',
       '!password' => '',
-    );
+    ];
 
     // Given that our source is a database column that could hold a NULL
     // value, sometimes that filters down to here. str_replace() cannot
diff --git a/core/modules/user/src/Plugin/migrate/process/ProfileFieldSettings.php b/core/modules/user/src/Plugin/migrate/process/ProfileFieldSettings.php
index 6230f7b..6e16c59 100644
--- a/core/modules/user/src/Plugin/migrate/process/ProfileFieldSettings.php
+++ b/core/modules/user/src/Plugin/migrate/process/ProfileFieldSettings.php
@@ -17,7 +17,7 @@ class ProfileFieldSettings extends ProcessPluginBase {
    * {@inheritdoc}
    */
   public function transform($type, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
-    $settings = array();
+    $settings = [];
     switch ($type) {
       case 'date':
         $settings['datetime_type'] = 'date';
diff --git a/core/modules/user/src/Plugin/migrate/process/UserUpdate8002.php b/core/modules/user/src/Plugin/migrate/process/UserUpdate8002.php
index 36f6574..7a67c46 100644
--- a/core/modules/user/src/Plugin/migrate/process/UserUpdate8002.php
+++ b/core/modules/user/src/Plugin/migrate/process/UserUpdate8002.php
@@ -22,10 +22,10 @@ class UserUpdate8002 extends ProcessPluginBase {
    */
   public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
     $rid = $row->getSourceProperty('rid');
-    $map = array(
+    $map = [
       1 => 'anonymous',
       2 => 'authenticated',
-    );
+    ];
     return isset($map[$rid]) ? $map[$rid] : $value;
   }
 
diff --git a/core/modules/user/src/Plugin/migrate/source/ProfileField.php b/core/modules/user/src/Plugin/migrate/source/ProfileField.php
index c2a6fe4..151d501 100644
--- a/core/modules/user/src/Plugin/migrate/source/ProfileField.php
+++ b/core/modules/user/src/Plugin/migrate/source/ProfileField.php
@@ -70,7 +70,7 @@ public function prepareRow(Row $row) {
       // D6 profile checkboxes values are always 0 or 1 (with no labels), so we
       // need to create two label-less options that will get 0 and 1 for their
       // keys.
-      $row->setSourceProperty('options', array(NULL, NULL));
+      $row->setSourceProperty('options', [NULL, NULL]);
     }
 
     return parent::prepareRow($row);
@@ -80,7 +80,7 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'fid' => $this->t('Primary Key: Unique profile field ID.'),
       'title' => $this->t('Title of the field shown to the end user.'),
       'name' => $this->t('Internal name of the field used in the form HTML and URLs.'),
@@ -94,7 +94,7 @@ public function fields() {
       'visibility' => $this->t('The level of visibility for the field. (0 = hidden, 1 = private, 2 = public on profile but not member list pages, 3 = public on profile and list pages)'),
       'autocomplete' => $this->t('Whether form auto-completion is enabled. (0 = disabled, 1 = enabled)'),
       'options' => $this->t('List of options to be used in a list selection field.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/migrate/source/UserPictureInstance.php b/core/modules/user/src/Plugin/migrate/source/UserPictureInstance.php
index 746a76f..441fdc7 100644
--- a/core/modules/user/src/Plugin/migrate/source/UserPictureInstance.php
+++ b/core/modules/user/src/Plugin/migrate/source/UserPictureInstance.php
@@ -22,24 +22,24 @@ class UserPictureInstance extends DrupalSqlBase {
    * {@inheritdoc}
    */
   public function initializeIterator() {
-    return new \ArrayIterator(array(
-      array(
+    return new \ArrayIterator([
+      [
         'id' => '',
         'file_directory' => $this->variableGet('user_picture_path', 'pictures'),
         'max_filesize' => $this->variableGet('user_picture_file_size', '30') . 'KB',
         'max_resolution' => $this->variableGet('user_picture_dimensions', '85x85'),
-      )));
+      ]]);
   }
 
   /**
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'file_directory' => 'The directory to store images..',
       'max_filesize' => 'The maximum allowed file size in KBs.',
       'max_resolution' => "The maximum resolution.",
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/migrate/source/d6/ProfileFieldValues.php b/core/modules/user/src/Plugin/migrate/source/d6/ProfileFieldValues.php
index 0ccbbeb..80db9df 100644
--- a/core/modules/user/src/Plugin/migrate/source/d6/ProfileFieldValues.php
+++ b/core/modules/user/src/Plugin/migrate/source/d6/ProfileFieldValues.php
@@ -21,7 +21,7 @@ class ProfileFieldValues extends DrupalSqlBase {
   public function query() {
     $query = $this->select('profile_values', 'pv')
       ->distinct()
-      ->fields('pv', array('uid'));
+      ->fields('pv', ['uid']);
 
     return $query;
   }
@@ -32,9 +32,9 @@ public function query() {
   public function prepareRow(Row $row) {
     // Find profile values for this row.
     $query = $this->select('profile_values', 'pv')
-      ->fields('pv', array('fid', 'value'));
+      ->fields('pv', ['fid', 'value']);
     $query->leftJoin('profile_fields', 'pf', 'pf.fid=pv.fid');
-    $query->fields('pf', array('name', 'type'));
+    $query->fields('pf', ['name', 'type']);
     $query->condition('uid', $row->getSourceProperty('uid'));
     $results = $query->execute();
 
@@ -43,14 +43,14 @@ public function prepareRow(Row $row) {
       if ($profile_value['type'] == 'date') {
         $date = unserialize($profile_value['value']);
         $date = date('Y-m-d', mktime(0, 0, 0, $date['month'], $date['day'], $date['year']));
-        $row->setSourceProperty($profile_value['name'], array('value' => $date));
+        $row->setSourceProperty($profile_value['name'], ['value' => $date]);
       }
       elseif ($profile_value['type'] == 'list') {
         // Explode by newline and comma.
         $row->setSourceProperty($profile_value['name'], preg_split("/[\r\n,]+/", $profile_value['value']));
       }
       else {
-        $row->setSourceProperty($profile_value['name'], array($profile_value['value']));
+        $row->setSourceProperty($profile_value['name'], [$profile_value['value']]);
       }
     }
 
@@ -61,16 +61,16 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'fid' => $this->t('Unique profile field ID.'),
       'uid' => $this->t('The user Id.'),
       'value' => $this->t('The value for this field.'),
-    );
+    ];
 
     $query = $this->select('profile_values', 'pv')
-      ->fields('pv', array('fid', 'value'));
+      ->fields('pv', ['fid', 'value']);
     $query->leftJoin('profile_fields', 'pf', 'pf.fid=pv.fid');
-    $query->fields('pf', array('name', 'title'));
+    $query->fields('pf', ['name', 'title']);
     $results = $query->execute();
     foreach ($results as $profile) {
       $fields[$profile['name']] = $this->t($profile['title']);
@@ -83,12 +83,12 @@ public function fields() {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'uid' => array(
+    return [
+      'uid' => [
         'type' => 'integer',
         'alias' => 'pv',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/user/src/Plugin/migrate/source/d6/Role.php b/core/modules/user/src/Plugin/migrate/source/d6/Role.php
index 2357c5c..82ad3e9 100644
--- a/core/modules/user/src/Plugin/migrate/source/d6/Role.php
+++ b/core/modules/user/src/Plugin/migrate/source/d6/Role.php
@@ -19,14 +19,14 @@ class Role extends DrupalSqlBase {
    *
    * @var array
    */
-  protected $filterPermissions = array();
+  protected $filterPermissions = [];
 
   /**
    * {@inheritdoc}
    */
   public function query() {
     $query = $this->select('role', 'r')
-      ->fields('r', array('rid', 'name'))
+      ->fields('r', ['rid', 'name'])
       ->orderBy('r.rid');
     return $query;
   }
@@ -35,10 +35,10 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'rid' => $this->t('Role ID.'),
       'name' => $this->t('The name of the user role.'),
-    );
+    ];
   }
 
   /**
@@ -46,7 +46,7 @@ public function fields() {
    */
   protected function initializeIterator() {
     $filter_roles = $this->select('filter_formats', 'f')
-      ->fields('f', array('format', 'roles'))
+      ->fields('f', ['format', 'roles'])
       ->execute()
       ->fetchAllKeyed();
     foreach ($filter_roles as $format => $roles) {
@@ -65,7 +65,7 @@ protected function initializeIterator() {
   public function prepareRow(Row $row) {
     $rid = $row->getSourceProperty('rid');
     $permissions = $this->select('permission', 'p')
-      ->fields('p', array('perm'))
+      ->fields('p', ['perm'])
       ->condition('rid', $rid)
       ->execute()
       ->fetchField();
diff --git a/core/modules/user/src/Plugin/migrate/source/d6/User.php b/core/modules/user/src/Plugin/migrate/source/d6/User.php
index 56f68bf..c8e9d19 100644
--- a/core/modules/user/src/Plugin/migrate/source/d6/User.php
+++ b/core/modules/user/src/Plugin/migrate/source/d6/User.php
@@ -35,7 +35,7 @@ public function fields() {
     // Profile fields.
     if ($this->moduleExists('profile')) {
       $fields += $this->select('profile_fields', 'pf')
-        ->fields('pf', array('name', 'title'))
+        ->fields('pf', ['name', 'title'])
         ->execute()
         ->fetchAllKeyed();
     }
@@ -49,7 +49,7 @@ public function fields() {
   public function prepareRow(Row $row) {
     // User roles.
     $roles = $this->select('users_roles', 'ur')
-      ->fields('ur', array('rid'))
+      ->fields('ur', ['rid'])
       ->condition('ur.uid', $row->getSourceProperty('uid'))
       ->execute()
       ->fetchCol();
@@ -60,7 +60,7 @@ public function prepareRow(Row $row) {
     if ($row->hasSourceProperty('timezone_id') && $row->getSourceProperty('timezone_id')) {
       if ($this->getDatabase()->schema()->tableExists('event_timezones')) {
         $event_timezone = $this->select('event_timezones', 'e')
-          ->fields('e', array('name'))
+          ->fields('e', ['name'])
           ->condition('e.timezone', $row->getSourceProperty('timezone_id'))
           ->execute()
           ->fetchField();
@@ -80,12 +80,12 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'uid' => array(
+    return [
+      'uid' => [
         'type' => 'integer',
         'alias' => 'u',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -95,7 +95,7 @@ public function getIds() {
    *   Associative array having field name as key and description as value.
    */
   protected function baseFields() {
-    $fields = array(
+    $fields = [
       'uid' => $this->t('User ID'),
       'name' => $this->t('Username'),
       'pass' => $this->t('Password'),
@@ -112,7 +112,7 @@ protected function baseFields() {
       'picture' => $this->t('Picture'),
       'init' => $this->t('Init'),
       'data' => $this->t('User data'),
-    );
+    ];
 
     // Possible field added by Date contributed module.
     // @see https://api.drupal.org/api/drupal/modules%21user%21user.install/function/user_update_7002/7
diff --git a/core/modules/user/src/Plugin/migrate/source/d6/UserPicture.php b/core/modules/user/src/Plugin/migrate/source/d6/UserPicture.php
index 13ae4f3..6b16ad4 100644
--- a/core/modules/user/src/Plugin/migrate/source/d6/UserPicture.php
+++ b/core/modules/user/src/Plugin/migrate/source/d6/UserPicture.php
@@ -21,7 +21,7 @@ class UserPicture extends DrupalSqlBase {
   public function query() {
     $query = $this->select('users', 'u')
       ->condition('picture', '', '<>')
-      ->fields('u', array('uid', 'access', 'picture'))
+      ->fields('u', ['uid', 'access', 'picture'])
       ->orderBy('u.access');
     return $query;
   }
@@ -30,11 +30,11 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'uid' => 'Primary Key: Unique user ID.',
       'access' => 'Timestamp for previous time user accessed the site.',
       'picture' => "Path to the user's uploaded picture.",
-    );
+    ];
   }
   /**
    * {@inheritdoc}
diff --git a/core/modules/user/src/Plugin/migrate/source/d6/UserPictureFile.php b/core/modules/user/src/Plugin/migrate/source/d6/UserPictureFile.php
index d394e9c..8952ffd 100644
--- a/core/modules/user/src/Plugin/migrate/source/d6/UserPictureFile.php
+++ b/core/modules/user/src/Plugin/migrate/source/d6/UserPictureFile.php
@@ -34,7 +34,7 @@ class UserPictureFile extends DrupalSqlBase {
   public function query() {
     $query = $this->select('users', 'u')
       ->condition('u.picture', '', '<>')
-      ->fields('u', array('uid', 'picture'));
+      ->fields('u', ['uid', 'picture']);
     return $query;
   }
 
@@ -62,10 +62,10 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'picture' => "Path to the user's uploaded picture.",
       'filename' => 'The picture filename.',
-    );
+    ];
   }
   /**
    * {@inheritdoc}
diff --git a/core/modules/user/src/Plugin/migrate/source/d7/Role.php b/core/modules/user/src/Plugin/migrate/source/d7/Role.php
index 1067610..9245aab 100644
--- a/core/modules/user/src/Plugin/migrate/source/d7/Role.php
+++ b/core/modules/user/src/Plugin/migrate/source/d7/Role.php
@@ -25,11 +25,11 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    return array(
+    return [
       'rid' => $this->t('Role ID.'),
       'name' => $this->t('The name of the user role.'),
       'weight' => $this->t('The weight of the role.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/migrate/source/d7/User.php b/core/modules/user/src/Plugin/migrate/source/d7/User.php
index 717e120..408d998 100644
--- a/core/modules/user/src/Plugin/migrate/source/d7/User.php
+++ b/core/modules/user/src/Plugin/migrate/source/d7/User.php
@@ -27,7 +27,7 @@ public function query() {
    * {@inheritdoc}
    */
   public function fields() {
-    $fields = array(
+    $fields = [
       'uid' => $this->t('User ID'),
       'name' => $this->t('Username'),
       'pass' => $this->t('Password'),
@@ -44,12 +44,12 @@ public function fields() {
       'init' => $this->t('Init'),
       'data' => $this->t('User data'),
       'roles' => $this->t('Roles'),
-    );
+    ];
 
     // Profile fields.
     if ($this->moduleExists('profile')) {
       $fields += $this->select('profile_fields', 'pf')
-        ->fields('pf', array('name', 'title'))
+        ->fields('pf', ['name', 'title'])
         ->execute()
         ->fetchAllKeyed();
     }
@@ -79,9 +79,9 @@ public function prepareRow(Row $row) {
     // ProfileFieldValues plugin.
     if ($this->getDatabase()->schema()->tableExists('profile_value')) {
       $query = $this->select('profile_value', 'pv')
-        ->fields('pv', array('fid', 'value'));
+        ->fields('pv', ['fid', 'value']);
       $query->leftJoin('profile_field', 'pf', 'pf.fid=pv.fid');
-      $query->fields('pf', array('name', 'type'));
+      $query->fields('pf', ['name', 'type']);
       $query->condition('uid', $row->getSourceProperty('uid'));
       $results = $query->execute();
 
@@ -89,14 +89,14 @@ public function prepareRow(Row $row) {
         if ($profile_value['type'] == 'date') {
           $date = unserialize($profile_value['value']);
           $date = date('Y-m-d', mktime(0, 0, 0, $date['month'], $date['day'], $date['year']));
-          $row->setSourceProperty($profile_value['name'], array('value' => $date));
+          $row->setSourceProperty($profile_value['name'], ['value' => $date]);
         }
         elseif ($profile_value['type'] == 'list') {
           // Explode by newline and comma.
           $row->setSourceProperty($profile_value['name'], preg_split("/[\r\n,]+/", $profile_value['value']));
         }
         else {
-          $row->setSourceProperty($profile_value['name'], array($profile_value['value']));
+          $row->setSourceProperty($profile_value['name'], [$profile_value['value']]);
         }
       }
     }
@@ -108,12 +108,12 @@ public function prepareRow(Row $row) {
    * {@inheritdoc}
    */
   public function getIds() {
-    return array(
-      'uid' => array(
+    return [
+      'uid' => [
         'type' => 'integer',
         'alias' => 'u',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/user/src/Plugin/views/access/Permission.php b/core/modules/user/src/Plugin/views/access/Permission.php
index d2d757b..8d0c43d 100644
--- a/core/modules/user/src/Plugin/views/access/Permission.php
+++ b/core/modules/user/src/Plugin/views/access/Permission.php
@@ -103,7 +103,7 @@ public function summaryTitle() {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['perm'] = array('default' => 'access content');
+    $options['perm'] = ['default' => 'access content'];
 
     return $options;
   }
@@ -119,13 +119,13 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       $perms[$display_name][$perm] = strip_tags($perm_item['title']);
     }
 
-    $form['perm'] = array(
+    $form['perm'] = [
       '#type' => 'select',
       '#options' => $perms,
       '#title' => $this->t('Permission'),
       '#default_value' => $this->options['perm'],
       '#description' => $this->t('Only users with the selected permission flag will be able to access this display.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/views/access/Role.php b/core/modules/user/src/Plugin/views/access/Role.php
index 2e5b6b4..e35daa1 100644
--- a/core/modules/user/src/Plugin/views/access/Role.php
+++ b/core/modules/user/src/Plugin/views/access/Role.php
@@ -99,31 +99,31 @@ public function summaryTitle() {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['role'] = array('default' => array());
+    $options['role'] = ['default' => []];
 
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['role'] = array(
+    $form['role'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Role'),
       '#default_value' => $this->options['role'],
       '#options' => array_map('\Drupal\Component\Utility\Html::escape', user_role_names()),
       '#description' => $this->t('Only the checked roles will be able to access this display.'),
-    );
+    ];
   }
 
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
-    $role = $form_state->getValue(array('access_options', 'role'));
+    $role = $form_state->getValue(['access_options', 'role']);
     $role = array_filter($role);
 
     if (!$role) {
       $form_state->setError($form['role'], $this->t('You must select at least one role if type is "by role"'));
     }
 
-    $form_state->setValue(array('access_options', 'role'), $role);
+    $form_state->setValue(['access_options', 'role'], $role);
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/views/argument/RolesRid.php b/core/modules/user/src/Plugin/views/argument/RolesRid.php
index a1bba79..ff9bf5e 100644
--- a/core/modules/user/src/Plugin/views/argument/RolesRid.php
+++ b/core/modules/user/src/Plugin/views/argument/RolesRid.php
@@ -52,7 +52,7 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   public function titleQuery() {
     $entities = $this->roleStorage->loadMultiple($this->value);
-    $titles = array();
+    $titles = [];
     foreach ($entities as $entity) {
       $titles[] = $entity->label();
     }
diff --git a/core/modules/user/src/Plugin/views/argument_default/User.php b/core/modules/user/src/Plugin/views/argument_default/User.php
index 0d1d445..448f79c 100644
--- a/core/modules/user/src/Plugin/views/argument_default/User.php
+++ b/core/modules/user/src/Plugin/views/argument_default/User.php
@@ -64,7 +64,7 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['user'] = array('default' => '');
+    $options['user'] = ['default' => ''];
 
     return $options;
   }
@@ -73,11 +73,11 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['user'] = array(
+    $form['user'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Also look for a node and use the node author'),
       '#default_value' => $this->options['user'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/views/argument_validator/User.php b/core/modules/user/src/Plugin/views/argument_validator/User.php
index fa61dbf..e7d2139 100644
--- a/core/modules/user/src/Plugin/views/argument_validator/User.php
+++ b/core/modules/user/src/Plugin/views/argument_validator/User.php
@@ -38,8 +38,8 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['restrict_roles'] = array('default' => FALSE);
-    $options['roles'] = array('default' => array());
+    $options['restrict_roles'] = ['default' => FALSE];
+    $options['roles'] = ['default' => []];
 
     return $options;
   }
@@ -51,30 +51,30 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     $sanitized_id = ArgumentPluginBase::encodeValidatorId($this->definition['id']);
 
-    $form['restrict_roles'] = array(
+    $form['restrict_roles'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Restrict user based on role'),
       '#default_value' => $this->options['restrict_roles'],
-    );
+    ];
 
-    $form['roles'] = array(
+    $form['roles'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Restrict to the selected roles'),
-      '#options' => array_map(array('\Drupal\Component\Utility\Html', 'escape'), user_role_names(TRUE)),
+      '#options' => array_map(['\Drupal\Component\Utility\Html', 'escape'], user_role_names(TRUE)),
       '#default_value' => $this->options['roles'],
       '#description' => $this->t('If no roles are selected, users from any role will be allowed.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[validate][options][' . $sanitized_id . '][restrict_roles]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[validate][options][' . $sanitized_id . '][restrict_roles]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
-  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = array()) {
+  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = []) {
     // filter trash out of the options so we don't store giant unnecessary arrays
     $options['roles'] = array_filter($options['roles']);
   }
diff --git a/core/modules/user/src/Plugin/views/argument_validator/UserName.php b/core/modules/user/src/Plugin/views/argument_validator/UserName.php
index 88ffd64..8ef4999 100644
--- a/core/modules/user/src/Plugin/views/argument_validator/UserName.php
+++ b/core/modules/user/src/Plugin/views/argument_validator/UserName.php
@@ -23,10 +23,10 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     $entity_type = $this->entityManager->getDefinition('user');
 
-    $form['multiple']['#options'] = array(
-      0 => $this->t('Single name', array('%type' => $entity_type->getLabel())),
-      1 => $this->t('One or more names separated by , or +', array('%type' => $entity_type->getLabel())),
-    );
+    $form['multiple']['#options'] = [
+      0 => $this->t('Single name', ['%type' => $entity_type->getLabel()]),
+      1 => $this->t('One or more names separated by , or +', ['%type' => $entity_type->getLabel()]),
+    ];
   }
 
   /**
@@ -39,14 +39,14 @@ public function validateArgument($argument) {
       $names = array_filter(preg_split('/[,+ ]/', $argument));
     }
     elseif ($argument) {
-      $names = array($argument);
+      $names = [$argument];
     }
     // No specified argument should be invalid.
     else {
       return FALSE;
     }
 
-    $accounts = $this->userStorage->loadByProperties(array('name' => $names));
+    $accounts = $this->userStorage->loadByProperties(['name' => $names]);
 
     // If there are no accounts, return FALSE now. As we will not enter the
     // loop below otherwise.
diff --git a/core/modules/user/src/Plugin/views/field/Permissions.php b/core/modules/user/src/Plugin/views/field/Permissions.php
index c9d5a9f..ecba8df 100644
--- a/core/modules/user/src/Plugin/views/field/Permissions.php
+++ b/core/modules/user/src/Plugin/views/field/Permissions.php
@@ -66,7 +66,7 @@ public static function create(ContainerInterface $container, array $configuratio
   public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL) {
     parent::init($view, $display, $options);
 
-    $this->additional_fields['uid'] = array('table' => 'users_field_data', 'field' => 'uid');
+    $this->additional_fields['uid'] = ['table' => 'users_field_data', 'field' => 'uid'];
   }
 
   public function query() {
@@ -75,11 +75,11 @@ public function query() {
   }
 
   public function preRender(&$values) {
-    $this->items = array();
+    $this->items = [];
 
     $permission_names = \Drupal::service('user.permissions')->getPermissions();
 
-    $rids = array();
+    $rids = [];
     foreach ($values as $result) {
       $user_rids = $this->getEntity($result)->getRoles();
       $uid = $this->getValue($result);
diff --git a/core/modules/user/src/Plugin/views/field/Roles.php b/core/modules/user/src/Plugin/views/field/Roles.php
index 9d8edc0..bb7dc20 100644
--- a/core/modules/user/src/Plugin/views/field/Roles.php
+++ b/core/modules/user/src/Plugin/views/field/Roles.php
@@ -55,7 +55,7 @@ public static function create(ContainerInterface $container, array $configuratio
   public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL) {
     parent::init($view, $display, $options);
 
-    $this->additional_fields['uid'] = array('table' => 'users_field_data', 'field' => 'uid');
+    $this->additional_fields['uid'] = ['table' => 'users_field_data', 'field' => 'uid'];
   }
 
   public function query() {
@@ -64,8 +64,8 @@ public function query() {
   }
 
   public function preRender(&$values) {
-    $uids = array();
-    $this->items = array();
+    $uids = [];
+    $this->items = [];
 
     foreach ($values as $result) {
       $uids[] = $this->getValue($result);
@@ -73,7 +73,7 @@ public function preRender(&$values) {
 
     if ($uids) {
       $roles = user_roles();
-      $result = $this->database->query('SELECT u.entity_id as uid, u.roles_target_id as rid FROM {user__roles} u WHERE u.entity_id IN ( :uids[] ) AND u.roles_target_id IN ( :rids[] )', array(':uids[]' => $uids, ':rids[]' => array_keys($roles)));
+      $result = $this->database->query('SELECT u.entity_id as uid, u.roles_target_id as rid FROM {user__roles} u WHERE u.entity_id IN ( :uids[] ) AND u.roles_target_id IN ( :rids[] )', [':uids[]' => $uids, ':rids[]' => array_keys($roles)]);
       foreach ($result as $role) {
         $this->items[$role->uid][$role->rid]['role'] = $roles[$role->rid]->label();
         $this->items[$role->uid][$role->rid]['rid'] = $role->rid;
diff --git a/core/modules/user/src/Plugin/views/field/UserBulkForm.php b/core/modules/user/src/Plugin/views/field/UserBulkForm.php
index 57ae437..3d0196a 100644
--- a/core/modules/user/src/Plugin/views/field/UserBulkForm.php
+++ b/core/modules/user/src/Plugin/views/field/UserBulkForm.php
@@ -25,7 +25,7 @@ public function viewsForm(&$form, FormStateInterface $form_state) {
       foreach ($this->view->result as $row_index => $result) {
         $account = $result->_entity;
         if ($account instanceof UserInterface) {
-          $form[$this->options['id']][$row_index]['#title'] = $this->t('Update the user %name', array('%name' => $account->label()));
+          $form[$this->options['id']][$row_index]['#title'] = $this->t('Update the user %name', ['%name' => $account->label()]);
         }
       }
     }
diff --git a/core/modules/user/src/Plugin/views/field/UserData.php b/core/modules/user/src/Plugin/views/field/UserData.php
index b87346f..365ab3b 100644
--- a/core/modules/user/src/Plugin/views/field/UserData.php
+++ b/core/modules/user/src/Plugin/views/field/UserData.php
@@ -58,8 +58,8 @@ public function __construct(array $configuration, $plugin_id, $plugin_definition
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['data_module'] = array('default' => '');
-    $options['data_name'] = array('default' => '');
+    $options['data_module'] = ['default' => ''];
+    $options['data_name'] = ['default' => ''];
 
     return $options;
   }
@@ -71,25 +71,25 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     $modules = $this->moduleHandler->getModuleList();
-    $names = array();
+    $names = [];
     foreach (array_keys($modules) as $name) {
       $names[$name] = $this->moduleHandler->getName($name);
     }
 
-    $form['data_module'] = array(
+    $form['data_module'] = [
       '#title' => $this->t('Module name'),
       '#type' => 'select',
       '#description' => $this->t('The module which sets this user data.'),
       '#default_value' => $this->options['data_module'],
       '#options' => $names,
-    );
+    ];
 
-    $form['data_name'] = array(
+    $form['data_name'] = [
       '#title' => $this->t('Name'),
       '#type' => 'textfield',
       '#description' => $this->t('The name of the data key.'),
       '#default_value' => $this->options['data_name'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/user/src/Plugin/views/filter/Name.php b/core/modules/user/src/Plugin/views/filter/Name.php
index e241e87..f4260c5 100644
--- a/core/modules/user/src/Plugin/views/filter/Name.php
+++ b/core/modules/user/src/Plugin/views/filter/Name.php
@@ -19,9 +19,9 @@ class Name extends InOperator {
   protected $alwaysMultiple = TRUE;
 
   protected function valueForm(&$form, FormStateInterface $form_state) {
-    $users = $this->value ? User::loadMultiple($this->value) : array();
+    $users = $this->value ? User::loadMultiple($this->value) : [];
     $default_value = EntityAutocomplete::getEntityLabels($users);
-    $form['value'] = array(
+    $form['value'] = [
       '#type' => 'entity_autocomplete',
       '#title' => $this->t('Usernames'),
       '#description' => $this->t('Enter a comma separated list of user names.'),
@@ -29,7 +29,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
       '#tags' => TRUE,
       '#default_value' => $default_value,
       '#process_default_value' => $this->isExposed(),
-    );
+    ];
 
     $user_input = $form_state->getUserInput();
     if ($form_state->get('exposed') && !isset($user_input[$this->options['expose']['identifier']])) {
@@ -40,13 +40,13 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
 
   protected function valueValidate($form, FormStateInterface $form_state) {
     $uids = [];
-    if ($values = $form_state->getValue(array('options', 'value'))) {
+    if ($values = $form_state->getValue(['options', 'value'])) {
       foreach ($values as $value) {
         $uids[] = $value['target_id'];
       }
       sort($uids);
     }
-    $form_state->setValue(array('options', 'value'), $uids);
+    $form_state->setValue(['options', 'value'], $uids);
   }
 
   public function acceptExposedInput($input) {
@@ -105,7 +105,7 @@ public function getValueOptions() {
 
   public function adminSummary() {
     // set up $this->valueOptions for the parent summary
-    $this->valueOptions = array();
+    $this->valueOptions = [];
 
     if ($this->value) {
       $result = \Drupal::entityTypeManager()->getStorage('user')
diff --git a/core/modules/user/src/Plugin/views/filter/Permissions.php b/core/modules/user/src/Plugin/views/filter/Permissions.php
index 7d444c6..7dd9171 100644
--- a/core/modules/user/src/Plugin/views/filter/Permissions.php
+++ b/core/modules/user/src/Plugin/views/filter/Permissions.php
@@ -88,7 +88,7 @@ public function getValueOptions() {
    */
   public function query() {
     // @todo user_role_names() should maybe support multiple permissions.
-    $rids = array();
+    $rids = [];
     // Get all role IDs that have the configured permissions.
     foreach ($this->value as $permission) {
       $roles = user_role_names(FALSE, $permission);
diff --git a/core/modules/user/src/Plugin/views/filter/Roles.php b/core/modules/user/src/Plugin/views/filter/Roles.php
index 64074c3..b04e1b1 100644
--- a/core/modules/user/src/Plugin/views/filter/Roles.php
+++ b/core/modules/user/src/Plugin/views/filter/Roles.php
@@ -73,7 +73,7 @@ function operators() {
    * {@inheritdoc}
    */
   public function calculateDependencies() {
-    $dependencies = array();
+    $dependencies = [];
     foreach ($this->value as $role_id) {
       $role = $this->roleStorage->load($role_id);
       $dependencies[$role->getConfigDependencyKey()][] = $role->getConfigDependencyName();
diff --git a/core/modules/user/src/Plugin/views/wizard/Users.php b/core/modules/user/src/Plugin/views/wizard/Users.php
index efd4272..081a509 100644
--- a/core/modules/user/src/Plugin/views/wizard/Users.php
+++ b/core/modules/user/src/Plugin/views/wizard/Users.php
@@ -27,16 +27,16 @@ class Users extends WizardPluginBase {
   /**
    * Set default values for the filters.
    */
-  protected $filters = array(
-    'status' => array(
+  protected $filters = [
+    'status' => [
       'value' => TRUE,
       'table' => 'users_field_data',
       'field' => 'status',
       'plugin_id' => 'boolean',
       'entity_type' => 'user',
       'entity_field' => 'status',
-    )
-  );
+    ]
+  ];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/user/src/PrivateTempStore.php b/core/modules/user/src/PrivateTempStore.php
index 1e73420..651227c 100644
--- a/core/modules/user/src/PrivateTempStore.php
+++ b/core/modules/user/src/PrivateTempStore.php
@@ -125,11 +125,11 @@ public function set($key, $value) {
       }
     }
 
-    $value = (object) array(
+    $value = (object) [
       'owner' => $this->getOwner(),
       'data' => $value,
       'updated' => (int) $this->requestStack->getMasterRequest()->server->get('REQUEST_TIME'),
-    );
+    ];
     $this->storage->setWithExpire($key, $value, $this->expire);
     $this->lockBackend->release($key);
   }
diff --git a/core/modules/user/src/ProfileForm.php b/core/modules/user/src/ProfileForm.php
index fc80230..343d4d0 100644
--- a/core/modules/user/src/ProfileForm.php
+++ b/core/modules/user/src/ProfileForm.php
@@ -22,7 +22,7 @@ protected function actions(array $form, FormStateInterface $form_state) {
     $user = $this->currentUser();
     $element['delete']['#type'] = 'submit';
     $element['delete']['#value'] = $this->t('Cancel account');
-    $element['delete']['#submit'] = array('::editCancelSubmit');
+    $element['delete']['#submit'] = ['::editCancelSubmit'];
     $element['delete']['#access'] = $account->id() > 1 && (($account->id() == $user->id() && $user->hasPermission('cancel account')) || $user->hasPermission('administer users'));
 
     return $element;
@@ -43,17 +43,17 @@ public function save(array $form, FormStateInterface $form_state) {
    * Provides a submit handler for the 'Cancel account' button.
    */
   public function editCancelSubmit($form, FormStateInterface $form_state) {
-    $destination = array();
+    $destination = [];
     $query = $this->getRequest()->query;
     if ($query->has('destination')) {
-      $destination = array('destination' => $query->get('destination'));
+      $destination = ['destination' => $query->get('destination')];
       $query->remove('destination');
     }
     // We redirect from user/%/edit to user/%/cancel to make the tabs disappear.
     $form_state->setRedirect(
       'entity.user.cancel_form',
-      array('user' => $this->entity->id()),
-      array('query' => $destination)
+      ['user' => $this->entity->id()],
+      ['query' => $destination]
     );
   }
 
diff --git a/core/modules/user/src/ProfileTranslationHandler.php b/core/modules/user/src/ProfileTranslationHandler.php
index d981f99..5b46952 100644
--- a/core/modules/user/src/ProfileTranslationHandler.php
+++ b/core/modules/user/src/ProfileTranslationHandler.php
@@ -32,7 +32,7 @@ protected function hasCreatedTime() {
    */
   public function entityFormAlter(array &$form, FormStateInterface $form_state, EntityInterface $entity) {
     parent::entityFormAlter($form, $form_state, $entity);
-    $form['actions']['submit']['#submit'][] = array($this, 'entityFormSave');
+    $form['actions']['submit']['#submit'][] = [$this, 'entityFormSave'];
   }
 
   /**
diff --git a/core/modules/user/src/RegisterForm.php b/core/modules/user/src/RegisterForm.php
index 9bc047b..7a97974 100644
--- a/core/modules/user/src/RegisterForm.php
+++ b/core/modules/user/src/RegisterForm.php
@@ -20,10 +20,10 @@ public function form(array $form, FormStateInterface $form_state) {
     // Pass access information to the submit handler. Running an access check
     // inside the submit function interferes with form processing and breaks
     // hook_form_alter().
-    $form['administer_users'] = array(
+    $form['administer_users'] = [
       '#type' => 'value',
       '#value' => $admin,
-    );
+    ];
 
     $form['#attached']['library'][] = 'core/drupal.form';
 
@@ -94,14 +94,14 @@ public function save(array $form, FormStateInterface $form_state) {
     $form_state->set('user', $account);
     $form_state->setValue('uid', $account->id());
 
-    $this->logger('user')->notice('New user: %name %email.', array('%name' => $form_state->getValue('name'), '%email' => '<' . $form_state->getValue('mail') . '>', 'type' => $account->link($this->t('Edit'), 'edit-form')));
+    $this->logger('user')->notice('New user: %name %email.', ['%name' => $form_state->getValue('name'), '%email' => '<' . $form_state->getValue('mail') . '>', 'type' => $account->link($this->t('Edit'), 'edit-form')]);
 
     // Add plain text password into user account to generate mail tokens.
     $account->password = $pass;
 
     // New administrative account without notification.
     if ($admin && !$notify) {
-      drupal_set_message($this->t('Created a new user account for <a href=":url">%name</a>. No email has been sent.', array(':url' => $account->url(), '%name' => $account->getUsername())));
+      drupal_set_message($this->t('Created a new user account for <a href=":url">%name</a>. No email has been sent.', [':url' => $account->url(), '%name' => $account->getUsername()]));
     }
     // No email verification required; log in user immediately.
     elseif (!$admin && !\Drupal::config('user.settings')->get('verify_mail') && $account->isActive()) {
@@ -113,13 +113,13 @@ public function save(array $form, FormStateInterface $form_state) {
     // No administrator approval required.
     elseif ($account->isActive() || $notify) {
       if (!$account->getEmail() && $notify) {
-        drupal_set_message($this->t('The new user <a href=":url">%name</a> was created without an email address, so no welcome message was sent.', array(':url' => $account->url(), '%name' => $account->getUsername())));
+        drupal_set_message($this->t('The new user <a href=":url">%name</a> was created without an email address, so no welcome message was sent.', [':url' => $account->url(), '%name' => $account->getUsername()]));
       }
       else {
         $op = $notify ? 'register_admin_created' : 'register_no_approval_required';
         if (_user_mail_notify($op, $account)) {
           if ($notify) {
-            drupal_set_message($this->t('A welcome message with further instructions has been emailed to the new user <a href=":url">%name</a>.', array(':url' => $account->url(), '%name' => $account->getUsername())));
+            drupal_set_message($this->t('A welcome message with further instructions has been emailed to the new user <a href=":url">%name</a>.', [':url' => $account->url(), '%name' => $account->getUsername()]));
           }
           else {
             drupal_set_message($this->t('A welcome message with further instructions has been sent to your email address.'));
diff --git a/core/modules/user/src/RoleForm.php b/core/modules/user/src/RoleForm.php
index 3199c45..7e78853 100644
--- a/core/modules/user/src/RoleForm.php
+++ b/core/modules/user/src/RoleForm.php
@@ -15,7 +15,7 @@ class RoleForm extends EntityForm {
    */
   public function form(array $form, FormStateInterface $form_state) {
     $entity = $this->entity;
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Role name'),
       '#default_value' => $entity->label(),
@@ -23,22 +23,22 @@ public function form(array $form, FormStateInterface $form_state) {
       '#required' => TRUE,
       '#maxlength' => 64,
       '#description' => $this->t('The name for this role. Example: "Moderator", "Editorial board", "Site architect".'),
-    );
-    $form['id'] = array(
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#default_value' => $entity->id(),
       '#required' => TRUE,
       '#disabled' => !$entity->isNew(),
       '#size' => 30,
       '#maxlength' => 64,
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => ['\Drupal\user\Entity\Role', 'load'],
-      ),
-    );
-    $form['weight'] = array(
+      ],
+    ];
+    $form['weight'] = [
       '#type' => 'value',
       '#value' => $entity->getWeight(),
-    );
+    ];
 
     return parent::form($form, $form_state, $entity);
   }
@@ -55,12 +55,12 @@ public function save(array $form, FormStateInterface $form_state) {
 
     $edit_link = $this->entity->link($this->t('Edit'));
     if ($status == SAVED_UPDATED) {
-      drupal_set_message($this->t('Role %label has been updated.', array('%label' => $entity->label())));
-      $this->logger('user')->notice('Role %label has been updated.', array('%label' => $entity->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Role %label has been updated.', ['%label' => $entity->label()]));
+      $this->logger('user')->notice('Role %label has been updated.', ['%label' => $entity->label(), 'link' => $edit_link]);
     }
     else {
-      drupal_set_message($this->t('Role %label has been added.', array('%label' => $entity->label())));
-      $this->logger('user')->notice('Role %label has been added.', array('%label' => $entity->label(), 'link' => $edit_link));
+      drupal_set_message($this->t('Role %label has been added.', ['%label' => $entity->label()]));
+      $this->logger('user')->notice('Role %label has been added.', ['%label' => $entity->label(), 'link' => $edit_link]);
     }
     $form_state->setRedirect('entity.user_role.collection');
   }
diff --git a/core/modules/user/src/RoleListBuilder.php b/core/modules/user/src/RoleListBuilder.php
index 16bd92c..aa3b844 100644
--- a/core/modules/user/src/RoleListBuilder.php
+++ b/core/modules/user/src/RoleListBuilder.php
@@ -43,11 +43,11 @@ public function getDefaultOperations(EntityInterface $entity) {
     $operations = parent::getDefaultOperations($entity);
 
     if ($entity->hasLinkTemplate('edit-permissions-form')) {
-      $operations['permissions'] = array(
+      $operations['permissions'] = [
         'title' => t('Edit permissions'),
         'weight' => 20,
         'url' => $entity->urlInfo('edit-permissions-form'),
-      );
+      ];
     }
     return $operations;
   }
diff --git a/core/modules/user/src/SharedTempStore.php b/core/modules/user/src/SharedTempStore.php
index 40d3920..2c6113f 100644
--- a/core/modules/user/src/SharedTempStore.php
+++ b/core/modules/user/src/SharedTempStore.php
@@ -142,11 +142,11 @@ public function getIfOwner($key) {
    *   TRUE if the data was set, or FALSE if it already existed.
    */
   public function setIfNotExists($key, $value) {
-    $value = (object) array(
+    $value = (object) [
       'owner' => $this->owner,
       'data' => $value,
       'updated' => (int) $this->requestStack->getMasterRequest()->server->get('REQUEST_TIME'),
-    );
+    ];
     return $this->storage->setWithExpireIfNotExists($key, $value, $this->expire);
   }
 
@@ -200,11 +200,11 @@ public function set($key, $value) {
       }
     }
 
-    $value = (object) array(
+    $value = (object) [
       'owner' => $this->owner,
       'data' => $value,
       'updated' => (int) $this->requestStack->getMasterRequest()->server->get('REQUEST_TIME'),
-    );
+    ];
     $this->storage->setWithExpire($key, $value, $this->expire);
     $this->lockBackend->release($key);
   }
diff --git a/core/modules/user/src/Tests/UserAccountLinksTest.php b/core/modules/user/src/Tests/UserAccountLinksTest.php
index 6d7d723..7f456c4 100644
--- a/core/modules/user/src/Tests/UserAccountLinksTest.php
+++ b/core/modules/user/src/Tests/UserAccountLinksTest.php
@@ -16,7 +16,7 @@ class UserAccountLinksTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('menu_ui', 'block', 'test_page_test');
+  public static $modules = ['menu_ui', 'block', 'test_page_test'];
 
   /**
    * {@inheritdoc}
@@ -33,7 +33,7 @@ protected function setUp() {
    */
   function testSecondaryMenu() {
     // Create a regular user.
-    $user = $this->drupalCreateUser(array());
+    $user = $this->drupalCreateUser([]);
 
     // Log in and get the homepage.
     $this->drupalLogin($user);
@@ -41,18 +41,18 @@ function testSecondaryMenu() {
 
     // For a logged-in user, expect the secondary menu to have links for "My
     // account" and "Log out".
-    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
+    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', [
       ':menu_class' => 'menu',
       ':href' => 'user',
       ':text' => 'My account',
-    ));
+    ]);
     $this->assertEqual(count($link), 1, 'My account link is in secondary menu.');
 
-    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
+    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', [
       ':menu_class' => 'menu',
       ':href' => 'user/logout',
       ':text' => 'Log out',
-    ));
+    ]);
     $this->assertEqual(count($link), 1, 'Log out link is in secondary menu.');
 
     // Log out and get the homepage.
@@ -60,11 +60,11 @@ function testSecondaryMenu() {
     $this->drupalGet('<front>');
 
     // For a logged-out user, expect the secondary menu to have a "Log in" link.
-    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
+    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', [
       ':menu_class' => 'menu',
       ':href' => 'user/login',
       ':text' => 'Log in',
-    ));
+    ]);
     $this->assertEqual(count($link), 1, 'Log in link is in secondary menu.');
   }
 
@@ -73,22 +73,22 @@ function testSecondaryMenu() {
    */
   function testDisabledAccountLink() {
     // Create an admin user and log in.
-    $this->drupalLogin($this->drupalCreateUser(array('access administration pages', 'administer menu')));
+    $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer menu']));
 
     // Verify that the 'My account' link exists before we check for its
     // disappearance.
-    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
+    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', [
       ':menu_class' => 'menu',
       ':href' => 'user',
       ':text' => 'My account',
-    ));
+    ]);
     $this->assertEqual(count($link), 1, 'My account link is in the secondary menu.');
 
     // Verify that the 'My account' link is enabled. Do not assume the value of
     // auto-increment is 1. Use XPath to obtain input element id and name using
     // the consistent label text.
     $this->drupalGet('admin/structure/menu/manage/account');
-    $label = $this->xpath('//label[contains(.,:text)]/@for', array(':text' => 'Enable My account menu link'));
+    $label = $this->xpath('//label[contains(.,:text)]/@for', [':text' => 'Enable My account menu link']);
     $this->assertFieldChecked((string) $label[0], "The 'My account' link is enabled by default.");
 
     // Disable the 'My account' link.
@@ -99,11 +99,11 @@ function testDisabledAccountLink() {
     $this->drupalGet('<front>');
 
     // Verify that the 'My account' link does not appear when disabled.
-    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', array(
+    $link = $this->xpath('//ul[@class=:menu_class]/li/a[contains(@href, :href) and text()=:text]', [
       ':menu_class' => 'menu',
       ':href' => 'user',
       ':text' => 'My account',
-    ));
+    ]);
     $this->assertEqual(count($link), 0, 'My account link is not in the secondary menu.');
   }
 
diff --git a/core/modules/user/src/Tests/UserAdminLanguageTest.php b/core/modules/user/src/Tests/UserAdminLanguageTest.php
index 03baa04..87bf835 100644
--- a/core/modules/user/src/Tests/UserAdminLanguageTest.php
+++ b/core/modules/user/src/Tests/UserAdminLanguageTest.php
@@ -31,12 +31,12 @@ class UserAdminLanguageTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'language', 'language_test');
+  public static $modules = ['user', 'language', 'language_test'];
 
   protected function setUp() {
     parent::setUp();
     // User to add and remove language.
-    $this->adminUser = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $this->adminUser = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     // User to check non-admin access.
     $this->regularUser = $this->drupalCreateUser();
   }
@@ -117,7 +117,7 @@ function testActualNegotiation() {
     $this->assertText('Language negotiation method: language-url');
 
     // Set a preferred language code for the user.
-    $edit = array();
+    $edit = [];
     $edit['preferred_admin_langcode'] = 'xx';
     $this->drupalPostForm($path, $edit, t('Save'));
 
@@ -137,7 +137,7 @@ function testActualNegotiation() {
     $this->assertText('Language negotiation method: language-user-admin');
 
     // Unset the preferred language code for the user.
-    $edit = array();
+    $edit = [];
     $edit['preferred_admin_langcode'] = '';
     $this->drupalPostForm($path, $edit, t('Save'));
     $this->drupalGet($path);
@@ -156,12 +156,12 @@ function testActualNegotiation() {
    *   Whether the admin negotiation should be first.
    */
   function setLanguageNegotiation($admin_first = FALSE) {
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-user-admin]' => TRUE,
       'language_interface[enabled][language-url]' => TRUE,
       'language_interface[weight][language-user-admin]' => ($admin_first ? -12 : -8),
       'language_interface[weight][language-url]' => -10,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
   }
 
@@ -172,12 +172,12 @@ function addCustomLanguage() {
     $langcode = 'xx';
     // The English name for the language.
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
   }
 
diff --git a/core/modules/user/src/Tests/UserAdminListingTest.php b/core/modules/user/src/Tests/UserAdminListingTest.php
index 2ca50c8..9ec9506 100644
--- a/core/modules/user/src/Tests/UserAdminListingTest.php
+++ b/core/modules/user/src/Tests/UserAdminListingTest.php
@@ -21,7 +21,7 @@ public function testUserListing() {
     $this->assertResponse(403, 'Anonymous user does not have access to the user admin listing.');
 
     // Create a bunch of users.
-    $accounts = array();
+    $accounts = [];
     for ($i = 0; $i < 3; $i++) {
       $account = $this->drupalCreateUser();
       $accounts[$account->label()] = $account;
@@ -39,8 +39,8 @@ public function testUserListing() {
     $accounts[$account->label()] = $account;
     $timestamp_user = $account->label();
 
-    $rid_1 = $this->drupalCreateRole(array(), 'custom_role_1', 'custom_role_1');
-    $rid_2 = $this->drupalCreateRole(array(), 'custom_role_2', 'custom_role_2');
+    $rid_1 = $this->drupalCreateRole([], 'custom_role_1', 'custom_role_1');
+    $rid_2 = $this->drupalCreateRole([], 'custom_role_2', 'custom_role_2');
 
     $account = $this->drupalCreateUser();
     $account->addRole($rid_1);
@@ -50,7 +50,7 @@ public function testUserListing() {
     $role_account_name = $account->label();
 
     // Create an admin user and look at the listing.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $accounts[$admin_user->label()] = $admin_user;
 
     $accounts['admin'] = User::load(1);
@@ -61,22 +61,22 @@ public function testUserListing() {
     $this->assertResponse(200, 'The admin user has access to the user admin listing.');
 
     $result = $this->xpath('//table[contains(@class, "responsive-enabled")]/tbody/tr');
-    $result_accounts = array();
+    $result_accounts = [];
     foreach ($result as $account) {
       $name = (string) $account->td[0]->span;
-      $roles = array();
+      $roles = [];
       if (isset($account->td[2]->div->ul)) {
         foreach ($account->td[2]->div->ul->li as $element) {
           $roles[] = (string) $element;
         }
       }
-      $result_accounts[$name] = array(
+      $result_accounts[$name] = [
         'name' => $name,
         'status' => (string) $account->td[1],
         'roles' => $roles,
         'member_for' => (string) $account->td[3],
         'last_access' => (string) $account->td[4],
-      );
+      ];
     }
 
     $this->assertFalse(array_keys(array_diff_key($result_accounts, $accounts)), 'Ensure all accounts are listed.');
@@ -84,7 +84,7 @@ public function testUserListing() {
       $this->assertEqual($values['status'] == t('active'), $accounts[$name]->status->value, 'Ensure the status is displayed properly.');
     }
 
-    $expected_roles = array('custom_role_1', 'custom_role_2');
+    $expected_roles = ['custom_role_1', 'custom_role_2'];
     $this->assertEqual($result_accounts[$role_account_name]['roles'], $expected_roles, 'Ensure roles are listed properly.');
 
     $this->assertEqual($result_accounts[$timestamp_user]['member_for'], \Drupal::service('date.formatter')->formatTimeDiffSince($accounts[$timestamp_user]->created->value), 'Ensure the right member time is displayed.');
diff --git a/core/modules/user/src/Tests/UserAdminSettingsFormTest.php b/core/modules/user/src/Tests/UserAdminSettingsFormTest.php
index 2fba848..b774111 100644
--- a/core/modules/user/src/Tests/UserAdminSettingsFormTest.php
+++ b/core/modules/user/src/Tests/UserAdminSettingsFormTest.php
@@ -16,33 +16,33 @@ protected function setUp() {
     parent::setUp();
 
     $this->form = AccountSettingsForm::create($this->container);
-    $this->values = array(
-      'anonymous' => array(
+    $this->values = [
+      'anonymous' => [
         '#value' => $this->randomString(10),
         '#config_name' => 'user.settings',
         '#config_key' => 'anonymous',
-      ),
-      'user_mail_cancel_confirm_body' => array(
+      ],
+      'user_mail_cancel_confirm_body' => [
         '#value' => $this->randomString(),
         '#config_name' => 'user.mail',
         '#config_key' => 'cancel_confirm.body',
-      ),
-      'user_mail_cancel_confirm_subject' => array(
+      ],
+      'user_mail_cancel_confirm_subject' => [
         '#value' => $this->randomString(20),
         '#config_name' => 'user.mail',
         '#config_key' => 'cancel_confirm.subject',
-      ),
-      'register_pending_approval_admin_body' => array(
+      ],
+      'register_pending_approval_admin_body' => [
         '#value' => $this->randomString(),
         '#config_name' => 'user.mail',
         '#config_key' => 'register_pending_approval_admin.body',
-      ),
-      'register_pending_approval_admin_subject' => array(
+      ],
+      'register_pending_approval_admin_subject' => [
         '#value' => $this->randomString(20),
         '#config_name' => 'user.mail',
         '#config_key' => 'register_pending_approval_admin.subject',
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/user/src/Tests/UserAdminTest.php b/core/modules/user/src/Tests/UserAdminTest.php
index 8d4a22b..6c83016 100644
--- a/core/modules/user/src/Tests/UserAdminTest.php
+++ b/core/modules/user/src/Tests/UserAdminTest.php
@@ -17,7 +17,7 @@ class UserAdminTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'views');
+  public static $modules = ['taxonomy', 'views'];
 
   /**
    * Registers a user and deletes it.
@@ -28,17 +28,17 @@ function testUserAdmin() {
     $user_a->name = 'User A';
     $user_a->mail = $this->randomMachineName() . '@example.com';
     $user_a->save();
-    $user_b = $this->drupalCreateUser(array('administer taxonomy'));
+    $user_b = $this->drupalCreateUser(['administer taxonomy']);
     $user_b->name = 'User B';
     $user_b->save();
-    $user_c = $this->drupalCreateUser(array('administer taxonomy'));
+    $user_c = $this->drupalCreateUser(['administer taxonomy']);
     $user_c->name = 'User C';
     $user_c->save();
 
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create admin user to delete registered user.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     // Use a predictable name so that we can reliably order the user admin page
     // by name.
     $admin_user->name = 'Admin user';
@@ -51,11 +51,11 @@ function testUserAdmin() {
     $this->assertText($admin_user->getUsername(), 'Found Admin user on admin users page');
 
     // Test for existence of edit link in table.
-    $link = $user_a->link(t('Edit'), 'edit-form', array('query' => array('destination' => $user_a->url('collection'))));
+    $link = $user_a->link(t('Edit'), 'edit-form', ['query' => ['destination' => $user_a->url('collection')]]);
     $this->assertRaw($link, 'Found user A edit link on admin users page');
 
     // Test exposed filter elements.
-    foreach (array('user', 'role', 'permission', 'status') as $field) {
+    foreach (['user', 'role', 'permission', 'status'] as $field) {
       $this->assertField("edit-$field", "$field exposed filter found.");
     }
     // Make sure the reduce duplicates element from the ManyToOneHelper is not
@@ -63,18 +63,18 @@ function testUserAdmin() {
     $this->assertNoField('edit-reduce-duplicates', 'Reduce duplicates form element not found in exposed filters.');
 
     // Filter the users by name/email.
-    $this->drupalGet('admin/people', array('query' => array('user' => $user_a->getUsername())));
+    $this->drupalGet('admin/people', ['query' => ['user' => $user_a->getUsername()]]);
     $result = $this->xpath('//table/tbody/tr');
     $this->assertEqual(1, count($result), 'Filter by username returned the right amount.');
     $this->assertEqual($user_a->getUsername(), (string) $result[0]->td[1]->span, 'Filter by username returned the right user.');
 
-    $this->drupalGet('admin/people', array('query' => array('user' => $user_a->getEmail())));
+    $this->drupalGet('admin/people', ['query' => ['user' => $user_a->getEmail()]]);
     $result = $this->xpath('//table/tbody/tr');
     $this->assertEqual(1, count($result), 'Filter by username returned the right amount.');
     $this->assertEqual($user_a->getUsername(), (string) $result[0]->td[1]->span, 'Filter by username returned the right user.');
 
     // Filter the users by permission 'administer taxonomy'.
-    $this->drupalGet('admin/people', array('query' => array('permission' => 'administer taxonomy')));
+    $this->drupalGet('admin/people', ['query' => ['permission' => 'administer taxonomy']]);
 
     // Check if the correct users show up.
     $this->assertNoText($user_a->getUsername(), 'User A not on filtered by perm admin users page');
@@ -84,7 +84,7 @@ function testUserAdmin() {
     // Filter the users by role. Grab the system-generated role name for User C.
     $roles = $user_c->getRoles();
     unset($roles[array_search(RoleInterface::AUTHENTICATED_ID, $roles)]);
-    $this->drupalGet('admin/people', array('query' => array('role' => reset($roles))));
+    $this->drupalGet('admin/people', ['query' => ['role' => reset($roles)]]);
 
     // Check if the correct users show up when filtered by role.
     $this->assertNoText($user_a->getUsername(), 'User A not on filtered by role on admin users page');
@@ -94,53 +94,53 @@ function testUserAdmin() {
     // Test blocking of a user.
     $account = $user_storage->load($user_c->id());
     $this->assertTrue($account->isActive(), 'User C not blocked');
-    $edit = array();
+    $edit = [];
     $edit['action'] = 'user_block_user_action';
     $edit['user_bulk_form[4]'] = TRUE;
     $config
       ->set('notify.status_blocked', TRUE)
       ->save();
-    $this->drupalPostForm('admin/people', $edit, t('Apply to selected items'), array(
+    $this->drupalPostForm('admin/people', $edit, t('Apply to selected items'), [
       // Sort the table by username so that we know reliably which user will be
       // targeted with the blocking action.
-      'query' => array('order' => 'name', 'sort' => 'asc')
-    ));
+      'query' => ['order' => 'name', 'sort' => 'asc']
+    ]);
     $site_name = $this->config('system.site')->get('name');
     $this->assertMailString('body', 'Your account on ' . $site_name . ' has been blocked.', 1, 'Blocked message found in the mail sent to user C.');
-    $user_storage->resetCache(array($user_c->id()));
+    $user_storage->resetCache([$user_c->id()]);
     $account = $user_storage->load($user_c->id());
     $this->assertTrue($account->isBlocked(), 'User C blocked');
 
     // Test filtering on admin page for blocked users
-    $this->drupalGet('admin/people', array('query' => array('status' => 2)));
+    $this->drupalGet('admin/people', ['query' => ['status' => 2]]);
     $this->assertNoText($user_a->getUsername(), 'User A not on filtered by status on admin users page');
     $this->assertNoText($user_b->getUsername(), 'User B not on filtered by status on admin users page');
     $this->assertText($user_c->getUsername(), 'User C on filtered by status on admin users page');
 
     // Test unblocking of a user from /admin/people page and sending of activation mail
-    $editunblock = array();
+    $editunblock = [];
     $editunblock['action'] = 'user_unblock_user_action';
     $editunblock['user_bulk_form[4]'] = TRUE;
-    $this->drupalPostForm('admin/people', $editunblock, t('Apply to selected items'), array(
+    $this->drupalPostForm('admin/people', $editunblock, t('Apply to selected items'), [
       // Sort the table by username so that we know reliably which user will be
       // targeted with the blocking action.
-      'query' => array('order' => 'name', 'sort' => 'asc')
-    ));
-    $user_storage->resetCache(array($user_c->id()));
+      'query' => ['order' => 'name', 'sort' => 'asc']
+    ]);
+    $user_storage->resetCache([$user_c->id()]);
     $account = $user_storage->load($user_c->id());
     $this->assertTrue($account->isActive(), 'User C unblocked');
     $this->assertMail("to", $account->getEmail(), "Activation mail sent to user C");
 
     // Test blocking and unblocking another user from /user/[uid]/edit form and sending of activation mail
-    $user_d = $this->drupalCreateUser(array());
-    $user_storage->resetCache(array($user_d->id()));
+    $user_d = $this->drupalCreateUser([]);
+    $user_storage->resetCache([$user_d->id()]);
     $account1 = $user_storage->load($user_d->id());
-    $this->drupalPostForm('user/' . $account1->id() . '/edit', array('status' => 0), t('Save'));
-    $user_storage->resetCache(array($user_d->id()));
+    $this->drupalPostForm('user/' . $account1->id() . '/edit', ['status' => 0], t('Save'));
+    $user_storage->resetCache([$user_d->id()]);
     $account1 = $user_storage->load($user_d->id());
     $this->assertTrue($account1->isBlocked(), 'User D blocked');
-    $this->drupalPostForm('user/' . $account1->id() . '/edit', array('status' => TRUE), t('Save'));
-    $user_storage->resetCache(array($user_d->id()));
+    $this->drupalPostForm('user/' . $account1->id() . '/edit', ['status' => TRUE], t('Save'));
+    $user_storage->resetCache([$user_d->id()]);
     $account1 = $user_storage->load($user_d->id());
     $this->assertTrue($account1->isActive(), 'User D unblocked');
     $this->assertMail("to", $account1->getEmail(), "Activation mail sent to user D");
@@ -151,7 +151,7 @@ function testUserAdmin() {
    */
   function testNotificationEmailAddress() {
     // Test that the Notification Email address field is on the config page.
-    $admin_user = $this->drupalCreateUser(array('administer users', 'administer account settings'));
+    $admin_user = $this->drupalCreateUser(['administer users', 'administer account settings']);
     $this->drupalLogin($admin_user);
     $this->drupalGet('admin/config/people/accounts');
     $this->assertRaw('id="edit-mail-notification-address"', 'Notification Email address field exists');
@@ -173,27 +173,27 @@ function testNotificationEmailAddress() {
       ->set('mail_notification', $notify_address)
       ->save();
     // Register a new user account.
-    $edit = array();
+    $edit = [];
     $edit['name'] = $this->randomMachineName();
     $edit['mail'] = $edit['name'] . '@example.com';
     $this->drupalPostForm('user/register', $edit, t('Create new account'));
     $subject = 'Account details for ' . $edit['name'] . ' at ' . $system->get('name') . ' (pending admin approval)';
     // Ensure that admin notification mail is sent to the configured
     // Notification Email address.
-    $admin_mail = $this->drupalGetMails(array(
+    $admin_mail = $this->drupalGetMails([
       'to' => $notify_address,
       'from' => $server_address,
       'subject' => $subject,
-    ));
+    ]);
     $this->assertTrue(count($admin_mail), 'New user mail to admin is sent to configured Notification Email address');
     // Ensure that user notification mail is sent from the configured
     // Notification Email address.
-    $user_mail = $this->drupalGetMails(array(
+    $user_mail = $this->drupalGetMails([
       'to' => $edit['mail'],
       'from' => $server_address,
       'reply-to' => $notify_address,
       'subject' => $subject,
-    ));
+    ]);
     $this->assertTrue(count($user_mail), 'New user mail to user is sent from configured Notification Email address');
   }
 
diff --git a/core/modules/user/src/Tests/UserBlocksTest.php b/core/modules/user/src/Tests/UserBlocksTest.php
index 9216a27..beb263b 100644
--- a/core/modules/user/src/Tests/UserBlocksTest.php
+++ b/core/modules/user/src/Tests/UserBlocksTest.php
@@ -16,7 +16,7 @@ class UserBlocksTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'views');
+  public static $modules = ['block', 'views'];
 
   /**
    * A user with the 'administer blocks' permission.
@@ -28,7 +28,7 @@ class UserBlocksTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer blocks'));
+    $this->adminUser = $this->drupalCreateUser(['administer blocks']);
     $this->drupalLogin($this->adminUser);
     $this->drupalPlaceBlock('user_login_block');
     $this->drupalLogout($this->adminUser);
@@ -63,10 +63,10 @@ function testUserLoginBlockVisibility() {
    */
   function testUserLoginBlock() {
     // Create a user with some permission that anonymous users lack.
-    $user = $this->drupalCreateUser(array('administer permissions'));
+    $user = $this->drupalCreateUser(['administer permissions']);
 
     // Log in using the block.
-    $edit = array();
+    $edit = [];
     $edit['name'] = $user->getUsername();
     $edit['pass'] = $user->pass_raw;
     $this->drupalPostForm('admin/people/permissions', $edit, t('Log in'));
@@ -84,14 +84,14 @@ function testUserLoginBlock() {
     // Check that the user login block is not vulnerable to information
     // disclosure to third party sites.
     $this->drupalLogout();
-    $this->drupalPostForm('http://example.com/', $edit, t('Log in'), array('external' => FALSE));
+    $this->drupalPostForm('http://example.com/', $edit, t('Log in'), ['external' => FALSE]);
     // Check that we remain on the site after login.
     $this->assertUrl($user->url('canonical', ['absolute' => TRUE]), [], 'Redirected to user profile page after login from the frontpage');
 
     // Verify that form validation errors are displayed immediately for forms
     // in blocks and not on subsequent page requests.
     $this->drupalLogout();
-    $edit = array();
+    $edit = [];
     $edit['name'] = 'foo';
     $edit['pass'] = 'invalid password';
     $this->drupalPostForm('filter/tips', $edit, t('Log in'));
@@ -107,9 +107,9 @@ function testWhosOnlineBlock() {
     $block = $this->drupalPlaceBlock('views_block:who_s_online-who_s_online_block');
 
     // Generate users.
-    $user1 = $this->drupalCreateUser(array('access user profiles'));
-    $user2 = $this->drupalCreateUser(array());
-    $user3 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser(['access user profiles']);
+    $user2 = $this->drupalCreateUser([]);
+    $user3 = $this->drupalCreateUser([]);
 
     // Update access of two users to be within the active timespan.
     $this->updateAccess($user1->id());
@@ -138,7 +138,7 @@ function testWhosOnlineBlock() {
   private function updateAccess($uid, $access = REQUEST_TIME) {
     db_update('users_field_data')
       ->condition('uid', $uid)
-      ->fields(array('access' => $access))
+      ->fields(['access' => $access])
       ->execute();
   }
 
diff --git a/core/modules/user/src/Tests/UserCancelTest.php b/core/modules/user/src/Tests/UserCancelTest.php
index e8a9c79..6cfd5ba 100644
--- a/core/modules/user/src/Tests/UserCancelTest.php
+++ b/core/modules/user/src/Tests/UserCancelTest.php
@@ -22,12 +22,12 @@ class UserCancelTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'comment');
+  public static $modules = ['node', 'comment'];
 
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
   }
 
   /**
@@ -39,14 +39,14 @@ function testUserCancelWithoutPermission() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
     $this->drupalLogin($account);
     // Load a real user object.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
 
     // Create a node.
-    $node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $node = $this->drupalCreateNode(['uid' => $account->id()]);
 
     // Attempt to cancel account.
     $this->drupalGet('user/' . $account->id() . '/edit');
@@ -56,12 +56,12 @@ function testUserCancelWithoutPermission() {
     $timestamp = $account->getLastLoginTime();
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$timestamp/" . user_pass_rehash($account, $timestamp));
     $this->assertResponse(403, 'Bogus cancelling request rejected.');
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isActive(), 'User account was not canceled.');
 
     // Confirm user's content has not been altered.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $test_node = $node_storage->load($node->id());
     $this->assertTrue(($test_node->getOwnerId() == $account->id() && $test_node->isPublished()), 'Node of the user has not been altered.');
   }
@@ -70,21 +70,21 @@ function testUserCancelWithoutPermission() {
    * Test ability to change the permission for canceling users.
    */
   public function testUserCancelChangePermission() {
-    \Drupal::service('module_installer')->install(array('user_form_test'));
+    \Drupal::service('module_installer')->install(['user_form_test']);
     \Drupal::service('router.builder')->rebuild();
     $this->config('user.settings')->set('cancel_method', 'user_cancel_reassign')->save();
 
     // Create a regular user.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
 
-    $admin_user = $this->drupalCreateUser(array('cancel other accounts'));
+    $admin_user = $this->drupalCreateUser(['cancel other accounts']);
     $this->drupalLogin($admin_user);
 
     // Delete regular user.
-    $this->drupalPostForm('user_form_test_cancel/' . $account->id(), array(), t('Cancel account'));
+    $this->drupalPostForm('user_form_test_cancel/' . $account->id(), [], t('Cancel account'));
 
     // Confirm deletion.
-    $this->assertRaw(t('%name has been deleted.', array('%name' => $account->getUsername())), 'User deleted.');
+    $this->assertRaw(t('%name has been deleted.', ['%name' => $account->getUsername()]), 'User deleted.');
     $this->assertFalse(User::load($account->id()), 'User is not found in the database.');
   }
 
@@ -97,14 +97,14 @@ public function testUserCancelChangePermission() {
   function testUserCancelUid1() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
-    \Drupal::service('module_installer')->install(array('views'));
+    \Drupal::service('module_installer')->install(['views']);
     \Drupal::service('router.builder')->rebuild();
     // Update uid 1's name and password to we know it.
     $password = user_password();
-    $account = array(
+    $account = [
       'name' => 'user1',
       'pass' => $this->container->get('password')->hash(trim($password)),
-    );
+    ];
     // We cannot use $account->save() here, because this would result in the
     // password being hashed again.
     db_update('users_field_data')
@@ -113,21 +113,21 @@ function testUserCancelUid1() {
       ->execute();
 
     // Reload and log in uid 1.
-    $user_storage->resetCache(array(1));
+    $user_storage->resetCache([1]);
     $user1 = $user_storage->load(1);
     $user1->pass_raw = $password;
 
     // Try to cancel uid 1's account with a different user.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'action' => 'user_cancel_user_action',
       'user_bulk_form[0]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/people', $edit, t('Apply to selected items'));
 
     // Verify that uid 1's account was not cancelled.
-    $user_storage->resetCache(array(1));
+    $user_storage->resetCache([1]);
     $user1 = $user_storage->load(1);
     $this->assertTrue($user1->isActive(), 'User #1 still exists and is not blocked.');
   }
@@ -141,14 +141,14 @@ function testUserCancelInvalid() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array('cancel account'));
+    $account = $this->drupalCreateUser(['cancel account']);
     $this->drupalLogin($account);
     // Load a real user object.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
 
     // Create a node.
-    $node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $node = $this->drupalCreateNode(['uid' => $account->id()]);
 
     // Attempt to cancel account.
     $this->drupalPostForm('user/' . $account->id() . '/edit', NULL, t('Cancel account'));
@@ -162,7 +162,7 @@ function testUserCancelInvalid() {
     $bogus_timestamp = $timestamp + 60;
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$bogus_timestamp/" . user_pass_rehash($account, $bogus_timestamp));
     $this->assertText(t('You have tried to use an account cancellation link that has expired. Please request a new one using the form below.'), 'Bogus cancelling request rejected.');
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isActive(), 'User account was not canceled.');
 
@@ -170,12 +170,12 @@ function testUserCancelInvalid() {
     $bogus_timestamp = $timestamp - 86400 - 60;
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$bogus_timestamp/" . user_pass_rehash($account, $bogus_timestamp));
     $this->assertText(t('You have tried to use an account cancellation link that has expired. Please request a new one using the form below.'), 'Expired cancel account request rejected.');
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isActive(), 'User account was not canceled.');
 
     // Confirm user's content has not been altered.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $test_node = $node_storage->load($node->id());
     $this->assertTrue(($test_node->getOwnerId() == $account->id() && $test_node->isPublished()), 'Node of the user has not been altered.');
   }
@@ -188,11 +188,11 @@ function testUserBlock() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $web_user = $this->drupalCreateUser(array('cancel account'));
+    $web_user = $this->drupalCreateUser(['cancel account']);
     $this->drupalLogin($web_user);
 
     // Load a real user object.
-    $user_storage->resetCache(array($web_user->id()));
+    $user_storage->resetCache([$web_user->id()]);
     $account = $user_storage->load($web_user->id());
 
     // Attempt to cancel account.
@@ -210,12 +210,12 @@ function testUserBlock() {
 
     // Confirm account cancellation request.
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$timestamp/" . user_pass_rehash($account, $timestamp));
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isBlocked(), 'User has been blocked.');
 
     // Confirm that the confirmation message made it through to the end user.
-    $this->assertRaw(t('%name has been disabled.', array('%name' => $account->getUsername())), "Confirmation message displayed to user.");
+    $this->assertRaw(t('%name has been disabled.', ['%name' => $account->getUsername()]), "Confirmation message displayed to user.");
   }
 
   /**
@@ -229,14 +229,14 @@ function testUserBlockUnpublish() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array('cancel account'));
+    $account = $this->drupalCreateUser(['cancel account']);
     $this->drupalLogin($account);
     // Load a real user object.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
 
     // Create a node with two revisions.
-    $node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $node = $this->drupalCreateNode(['uid' => $account->id()]);
     $settings = get_object_vars($node);
     $settings['revision'] = 1;
     $node = $this->drupalCreateNode($settings);
@@ -244,7 +244,7 @@ function testUserBlockUnpublish() {
     // Add a comment to the page.
     $comment_subject = $this->randomMachineName(8);
     $comment_body = $this->randomMachineName(8);
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'subject' => $comment_subject,
       'comment_body' => $comment_body,
       'entity_id' => $node->id(),
@@ -252,7 +252,7 @@ function testUserBlockUnpublish() {
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
       'uid' => $account->id(),
-    ));
+    ]);
     $comment->save();
 
     // Attempt to cancel account.
@@ -268,24 +268,24 @@ function testUserBlockUnpublish() {
 
     // Confirm account cancellation request.
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$timestamp/" . user_pass_rehash($account, $timestamp));
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isBlocked(), 'User has been blocked.');
 
     // Confirm user's content has been unpublished.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $test_node = $node_storage->load($node->id());
     $this->assertFalse($test_node->isPublished(), 'Node of the user has been unpublished.');
     $test_node = node_revision_load($node->getRevisionId());
     $this->assertFalse($test_node->isPublished(), 'Node revision of the user has been unpublished.');
 
     $storage = \Drupal::entityManager()->getStorage('comment');
-    $storage->resetCache(array($comment->id()));
+    $storage->resetCache([$comment->id()]);
     $comment = $storage->load($comment->id());
     $this->assertFalse($comment->isPublished(), 'Comment of the user has been unpublished.');
 
     // Confirm that the confirmation message made it through to the end user.
-    $this->assertRaw(t('%name has been disabled.', array('%name' => $account->getUsername())), "Confirmation message displayed to user.");
+    $this->assertRaw(t('%name has been disabled.', ['%name' => $account->getUsername()]), "Confirmation message displayed to user.");
   }
 
   /**
@@ -299,19 +299,19 @@ function testUserAnonymize() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array('cancel account'));
+    $account = $this->drupalCreateUser(['cancel account']);
     $this->drupalLogin($account);
     // Load a real user object.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
 
     // Create a simple node.
-    $node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $node = $this->drupalCreateNode(['uid' => $account->id()]);
 
     // Add a comment to the page.
     $comment_subject = $this->randomMachineName(8);
     $comment_body = $this->randomMachineName(8);
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'subject' => $comment_subject,
       'comment_body' => $comment_body,
       'entity_id' => $node->id(),
@@ -319,12 +319,12 @@ function testUserAnonymize() {
       'field_name' => 'comment',
       'status' => CommentInterface::PUBLISHED,
       'uid' => $account->id(),
-    ));
+    ]);
     $comment->save();
 
     // Create a node with two revisions, the initial one belonging to the
     // cancelling user.
-    $revision_node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $revision_node = $this->drupalCreateNode(['uid' => $account->id()]);
     $revision = $revision_node->getRevisionId();
     $settings = get_object_vars($revision_node);
     $settings['revision'] = 1;
@@ -335,7 +335,7 @@ function testUserAnonymize() {
     $this->drupalGet('user/' . $account->id() . '/edit');
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
     $this->assertText(t('Are you sure you want to cancel your account?'), 'Confirmation form to cancel account displayed.');
-    $this->assertRaw(t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', array('%anonymous-name' => $this->config('user.settings')->get('anonymous'))), 'Informs that all content will be attributed to anonymous account.');
+    $this->assertRaw(t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', ['%anonymous-name' => $this->config('user.settings')->get('anonymous')]), 'Informs that all content will be attributed to anonymous account.');
 
     // Confirm account cancellation.
     $timestamp = time();
@@ -344,28 +344,28 @@ function testUserAnonymize() {
 
     // Confirm account cancellation request.
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$timestamp/" . user_pass_rehash($account, $timestamp));
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $this->assertFalse($user_storage->load($account->id()), 'User is not found in the database.');
 
     // Confirm that user's content has been attributed to anonymous user.
     $anonymous_user = User::getAnonymousUser();
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $test_node = $node_storage->load($node->id());
     $this->assertTrue(($test_node->getOwnerId() == 0 && $test_node->isPublished()), 'Node of the user has been attributed to anonymous user.');
     $test_node = node_revision_load($revision, TRUE);
     $this->assertTrue(($test_node->getRevisionUser()->id() == 0 && $test_node->isPublished()), 'Node revision of the user has been attributed to anonymous user.');
-    $node_storage->resetCache(array($revision_node->id()));
+    $node_storage->resetCache([$revision_node->id()]);
     $test_node = $node_storage->load($revision_node->id());
     $this->assertTrue(($test_node->getOwnerId() != 0 && $test_node->isPublished()), "Current revision of the user's node was not attributed to anonymous user.");
 
     $storage = \Drupal::entityManager()->getStorage('comment');
-    $storage->resetCache(array($comment->id()));
+    $storage->resetCache([$comment->id()]);
     $test_comment = $storage->load($comment->id());
     $this->assertTrue(($test_comment->getOwnerId() == 0 && $test_comment->isPublished()), 'Comment of the user has been attributed to anonymous user.');
     $this->assertEqual($test_comment->getAuthorName(), $anonymous_user->getDisplayName(), 'Comment of the user has been attributed to anonymous user name.');
 
     // Confirm that the confirmation message made it through to the end user.
-    $this->assertRaw(t('%name has been deleted.', array('%name' => $account->getUsername())), "Confirmation message displayed to user.");
+    $this->assertRaw(t('%name has been deleted.', ['%name' => $account->getUsername()]), "Confirmation message displayed to user.");
   }
 
   /**
@@ -377,7 +377,7 @@ public function testUserAnonymizeBatch() {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array('cancel account'));
+    $account = $this->drupalCreateUser(['cancel account']);
     $this->drupalLogin($account);
     // Load a real user object.
     $user_storage->resetCache([$account->id()]);
@@ -395,7 +395,7 @@ public function testUserAnonymizeBatch() {
     $this->drupalGet('user/' . $account->id() . '/edit');
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
     $this->assertText(t('Are you sure you want to cancel your account?'), 'Confirmation form to cancel account displayed.');
-    $this->assertRaw(t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', array('%anonymous-name' => $this->config('user.settings')->get('anonymous'))), 'Informs that all content will be attributed to anonymous account.');
+    $this->assertRaw(t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', ['%anonymous-name' => $this->config('user.settings')->get('anonymous')]), 'Informs that all content will be attributed to anonymous account.');
 
     // Confirm account cancellation.
     $timestamp = time();
@@ -421,36 +421,36 @@ public function testUserAnonymizeBatch() {
   function testUserDelete() {
     $node_storage = $this->container->get('entity.manager')->getStorage('node');
     $this->config('user.settings')->set('cancel_method', 'user_cancel_delete')->save();
-    \Drupal::service('module_installer')->install(array('comment'));
+    \Drupal::service('module_installer')->install(['comment']);
     $this->resetAll();
     $this->addDefaultCommentField('node', 'page');
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create a user.
-    $account = $this->drupalCreateUser(array('cancel account', 'post comments', 'skip comment approval'));
+    $account = $this->drupalCreateUser(['cancel account', 'post comments', 'skip comment approval']);
     $this->drupalLogin($account);
     // Load a real user object.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
 
     // Create a simple node.
-    $node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $node = $this->drupalCreateNode(['uid' => $account->id()]);
 
     // Create comment.
-    $edit = array();
+    $edit = [];
     $edit['subject[0][value]'] = $this->randomMachineName(8);
     $edit['comment_body[0][value]'] = $this->randomMachineName(16);
 
     $this->drupalPostForm('comment/reply/node/' . $node->id() . '/comment', $edit, t('Preview'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertText(t('Your comment has been posted.'));
-    $comments = entity_load_multiple_by_properties('comment', array('subject' => $edit['subject[0][value]']));
+    $comments = entity_load_multiple_by_properties('comment', ['subject' => $edit['subject[0][value]']]);
     $comment = reset($comments);
     $this->assertTrue($comment->id(), 'Comment found.');
 
     // Create a node with two revisions, the initial one belonging to the
     // cancelling user.
-    $revision_node = $this->drupalCreateNode(array('uid' => $account->id()));
+    $revision_node = $this->drupalCreateNode(['uid' => $account->id()]);
     $revision = $revision_node->getRevisionId();
     $settings = get_object_vars($revision_node);
     $settings['revision'] = 1;
@@ -470,20 +470,20 @@ function testUserDelete() {
 
     // Confirm account cancellation request.
     $this->drupalGet("user/" . $account->id() . "/cancel/confirm/$timestamp/" . user_pass_rehash($account, $timestamp));
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $this->assertFalse($user_storage->load($account->id()), 'User is not found in the database.');
 
     // Confirm that user's content has been deleted.
-    $node_storage->resetCache(array($node->id()));
+    $node_storage->resetCache([$node->id()]);
     $this->assertFalse($node_storage->load($node->id()), 'Node of the user has been deleted.');
     $this->assertFalse(node_revision_load($revision), 'Node revision of the user has been deleted.');
-    $node_storage->resetCache(array($revision_node->id()));
+    $node_storage->resetCache([$revision_node->id()]);
     $this->assertTrue($node_storage->load($revision_node->id()), "Current revision of the user's node was not deleted.");
-    \Drupal::entityManager()->getStorage('comment')->resetCache(array($comment->id()));
+    \Drupal::entityManager()->getStorage('comment')->resetCache([$comment->id()]);
     $this->assertFalse(Comment::load($comment->id()), 'Comment of the user has been deleted.');
 
     // Confirm that the confirmation message made it through to the end user.
-    $this->assertRaw(t('%name has been deleted.', array('%name' => $account->getUsername())), "Confirmation message displayed to user.");
+    $this->assertRaw(t('%name has been deleted.', ['%name' => $account->getUsername()]), "Confirmation message displayed to user.");
   }
 
   /**
@@ -493,21 +493,21 @@ function testUserCancelByAdmin() {
     $this->config('user.settings')->set('cancel_method', 'user_cancel_reassign')->save();
 
     // Create a regular user.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
 
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     // Delete regular user.
     $this->drupalGet('user/' . $account->id() . '/edit');
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
-    $this->assertRaw(t('Are you sure you want to cancel the account %name?', array('%name' => $account->getUsername())), 'Confirmation form to cancel account displayed.');
+    $this->assertRaw(t('Are you sure you want to cancel the account %name?', ['%name' => $account->getUsername()]), 'Confirmation form to cancel account displayed.');
     $this->assertText(t('Select the method to cancel the account above.'), 'Allows to select account cancellation method.');
 
     // Confirm deletion.
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
-    $this->assertRaw(t('%name has been deleted.', array('%name' => $account->getUsername())), 'User deleted.');
+    $this->assertRaw(t('%name has been deleted.', ['%name' => $account->getUsername()]), 'User deleted.');
     $this->assertFalse(User::load($account->id()), 'User is not found in the database.');
   }
 
@@ -518,24 +518,24 @@ function testUserWithoutEmailCancelByAdmin() {
     $this->config('user.settings')->set('cancel_method', 'user_cancel_reassign')->save();
 
     // Create a regular user.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
     // This user has no email address.
     $account->mail = '';
     $account->save();
 
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     // Delete regular user without email address.
     $this->drupalGet('user/' . $account->id() . '/edit');
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
-    $this->assertRaw(t('Are you sure you want to cancel the account %name?', array('%name' => $account->getUsername())), 'Confirmation form to cancel account displayed.');
+    $this->assertRaw(t('Are you sure you want to cancel the account %name?', ['%name' => $account->getUsername()]), 'Confirmation form to cancel account displayed.');
     $this->assertText(t('Select the method to cancel the account above.'), 'Allows to select account cancellation method.');
 
     // Confirm deletion.
     $this->drupalPostForm(NULL, NULL, t('Cancel account'));
-    $this->assertRaw(t('%name has been deleted.', array('%name' => $account->getUsername())), 'User deleted.');
+    $this->assertRaw(t('%name has been deleted.', ['%name' => $account->getUsername()]), 'User deleted.');
     $this->assertFalse(User::load($account->id()), 'User is not found in the database.');
   }
 
@@ -543,7 +543,7 @@ function testUserWithoutEmailCancelByAdmin() {
    * Create an administrative user and mass-delete other users.
    */
   function testMassUserCancelByAdmin() {
-    \Drupal::service('module_installer')->install(array('views'));
+    \Drupal::service('module_installer')->install(['views']);
     \Drupal::service('router.builder')->rebuild();
     $this->config('user.settings')->set('cancel_method', 'user_cancel_reassign')->save();
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
@@ -551,18 +551,18 @@ function testMassUserCancelByAdmin() {
     $this->config('user.settings')->set('notify.status_canceled', TRUE)->save();
 
     // Create administrative user.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     // Create some users.
-    $users = array();
+    $users = [];
     for ($i = 0; $i < 3; $i++) {
-      $account = $this->drupalCreateUser(array());
+      $account = $this->drupalCreateUser([]);
       $users[$account->id()] = $account;
     }
 
     // Cancel user accounts, including own one.
-    $edit = array();
+    $edit = [];
     $edit['action'] = 'user_cancel_user_action';
     for ($i = 0; $i <= 4; $i++) {
       $edit['user_bulk_form[' . $i . ']'] = TRUE;
@@ -578,7 +578,7 @@ function testMassUserCancelByAdmin() {
     $status = TRUE;
     foreach ($users as $account) {
       $status = $status && (strpos($this->content, $account->getUsername() . '</em> has been deleted.') !== FALSE);
-      $user_storage->resetCache(array($account->id()));
+      $user_storage->resetCache([$account->id()]);
       $status = $status && !$user_storage->load($account->id());
     }
     $this->assertTrue($status, 'Users deleted and not found in the database.');
@@ -589,7 +589,7 @@ function testMassUserCancelByAdmin() {
     $this->assertTrue($admin_user->isActive(), 'Administrative user is found in the database and enabled.');
 
     // Verify that uid 1's account was not cancelled.
-    $user_storage->resetCache(array(1));
+    $user_storage->resetCache([1]);
     $user1 = $user_storage->load(1);
     $this->assertTrue($user1->isActive(), 'User #1 still exists and is not blocked.');
   }
diff --git a/core/modules/user/src/Tests/UserCreateTest.php b/core/modules/user/src/Tests/UserCreateTest.php
index efc7ddf..7b53443 100644
--- a/core/modules/user/src/Tests/UserCreateTest.php
+++ b/core/modules/user/src/Tests/UserCreateTest.php
@@ -18,14 +18,14 @@ class UserCreateTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('image');
+  public static $modules = ['image'];
 
   /**
    * Create a user through the administration interface and ensure that it
    * displays in the user list.
    */
   public function testUserAdd() {
-    $user = $this->drupalCreateUser(array('administer users'));
+    $user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($user);
 
     $this->assertEqual($user->getCreatedTime(), REQUEST_TIME, 'Creating a user sets default "created" timestamp.');
@@ -33,18 +33,18 @@ public function testUserAdd() {
 
     // Create a field.
     $field_name = 'test_field';
-    FieldStorageConfig::create(array(
+    FieldStorageConfig::create([
       'field_name' => $field_name,
       'entity_type' => 'user',
       'module' => 'image',
       'type' => 'image',
       'cardinality' => 1,
       'locked' => FALSE,
-      'indexes' => array('target_id' => array('target_id')),
-      'settings' => array(
+      'indexes' => ['target_id' => ['target_id']],
+      'settings' => [
         'uri_scheme' => 'public',
-      ),
-    ))->save();
+      ],
+    ])->save();
 
     FieldConfig::create([
       'field_name' => $field_name,
@@ -53,7 +53,7 @@ public function testUserAdd() {
       'bundle' => 'user',
       'description' => t('Your virtual face or picture.'),
       'required' => FALSE,
-      'settings' => array(
+      'settings' => [
         'file_extensions' => 'png gif jpg jpeg',
         'file_directory' => 'pictures',
         'max_filesize' => '30 KB',
@@ -61,7 +61,7 @@ public function testUserAdd() {
         'title_field' => 0,
         'max_resolution' => '85x85',
         'min_resolution' => '',
-      ),
+      ],
     ])->save();
 
     // Test user creation page for valid fields.
@@ -86,23 +86,23 @@ public function testUserAdd() {
 
     // We create two users, notifying one and not notifying the other, to
     // ensure that the tests work in both cases.
-    foreach (array(FALSE, TRUE) as $notify) {
+    foreach ([FALSE, TRUE] as $notify) {
       $name = $this->randomMachineName();
-      $edit = array(
+      $edit = [
         'name' => $name,
         'mail' => $this->randomMachineName() . '@example.com',
         'pass[pass1]' => $pass = $this->randomString(),
         'pass[pass2]' => $pass,
         'notify' => $notify,
-      );
+      ];
       $this->drupalPostForm('admin/people/create', $edit, t('Create new account'));
 
       if ($notify) {
-        $this->assertText(t('A welcome message with further instructions has been emailed to the new user @name.', array('@name' => $edit['name'])), 'User created');
+        $this->assertText(t('A welcome message with further instructions has been emailed to the new user @name.', ['@name' => $edit['name']]), 'User created');
         $this->assertEqual(count($this->drupalGetMails()), 1, 'Notification email sent');
       }
       else {
-        $this->assertText(t('Created a new user account for @name. No email has been sent.', array('@name' => $edit['name'])), 'User created');
+        $this->assertText(t('Created a new user account for @name. No email has been sent.', ['@name' => $edit['name']]), 'User created');
         $this->assertEqual(count($this->drupalGetMails()), 0, 'Notification email not sent');
       }
 
@@ -115,13 +115,13 @@ public function testUserAdd() {
     // Test that the password '0' is considered a password.
     // @see https://www.drupal.org/node/2563751.
     $name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'name' => $name,
       'mail' => $this->randomMachineName() . '@example.com',
       'pass[pass1]' => 0,
       'pass[pass2]' => 0,
       'notify' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/people/create', $edit, t('Create new account'));
     $this->assertText("Created a new user account for $name. No email has been sent");
     $this->assertNoText('Password field is required');
diff --git a/core/modules/user/src/Tests/UserEditTest.php b/core/modules/user/src/Tests/UserEditTest.php
index 5b34d2e..7c2fe4f 100644
--- a/core/modules/user/src/Tests/UserEditTest.php
+++ b/core/modules/user/src/Tests/UserEditTest.php
@@ -16,14 +16,14 @@ class UserEditTest extends WebTestBase {
    */
   function testUserEdit() {
     // Test user edit functionality.
-    $user1 = $this->drupalCreateUser(array('change own username'));
-    $user2 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser(['change own username']);
+    $user2 = $this->drupalCreateUser([]);
     $this->drupalLogin($user1);
 
     // Test that error message appears when attempting to use a non-unique user name.
     $edit['name'] = $user2->getUsername();
     $this->drupalPostForm("user/" . $user1->id() . "/edit", $edit, t('Save'));
-    $this->assertRaw(t('The username %name is already taken.', array('%name' => $edit['name'])));
+    $this->assertRaw(t('The username %name is already taken.', ['%name' => $edit['name']]));
 
     // Check that the default value in user name field
     // is the raw value and not a formatted one.
@@ -33,7 +33,7 @@ function testUserEdit() {
     $this->assertFieldByName('name', $user1->getAccountName());
 
     // Check that filling out a single password field does not validate.
-    $edit = array();
+    $edit = [];
     $edit['pass[pass1]'] = '';
     $edit['pass[pass2]'] = $this->randomMachineName();
     $this->drupalPostForm("user/" . $user1->id() . "/edit", $edit, t('Save'));
@@ -46,21 +46,21 @@ function testUserEdit() {
 
     // Test that the error message appears when attempting to change the mail or
     // pass without the current password.
-    $edit = array();
+    $edit = [];
     $edit['mail'] = $this->randomMachineName() . '@new.example.com';
     $this->drupalPostForm("user/" . $user1->id() . "/edit", $edit, t('Save'));
-    $this->assertRaw(t("Your current password is missing or incorrect; it's required to change the %name.", array('%name' => t('Email'))));
+    $this->assertRaw(t("Your current password is missing or incorrect; it's required to change the %name.", ['%name' => t('Email')]));
 
     $edit['current_pass'] = $user1->pass_raw;
     $this->drupalPostForm("user/" . $user1->id() . "/edit", $edit, t('Save'));
     $this->assertRaw(t("The changes have been saved."));
 
     // Test that the user must enter current password before changing passwords.
-    $edit = array();
+    $edit = [];
     $edit['pass[pass1]'] = $new_pass = $this->randomMachineName();
     $edit['pass[pass2]'] = $new_pass;
     $this->drupalPostForm("user/" . $user1->id() . "/edit", $edit, t('Save'));
-    $this->assertRaw(t("Your current password is missing or incorrect; it's required to change the %name.", array('%name' => t('Password'))));
+    $this->assertRaw(t("Your current password is missing or incorrect; it's required to change the %name.", ['%name' => t('Password')]));
 
     // Try again with the current password.
     $edit['current_pass'] = $user1->pass_raw;
@@ -90,20 +90,20 @@ function testUserEdit() {
 
     // Check that the user status field has the correct value and that it is
     // properly displayed.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('user/' . $user1->id() . '/edit');
     $this->assertNoFieldChecked('edit-status-0');
     $this->assertFieldChecked('edit-status-1');
 
-    $edit = array('status' => 0);
+    $edit = ['status' => 0];
     $this->drupalPostForm('user/' . $user1->id() . '/edit', $edit, t('Save'));
     $this->assertText(t('The changes have been saved.'));
     $this->assertFieldChecked('edit-status-0');
     $this->assertNoFieldChecked('edit-status-1');
 
-    $edit = array('status' => 1);
+    $edit = ['status' => 1];
     $this->drupalPostForm('user/' . $user1->id() . '/edit', $edit, t('Save'));
     $this->assertText(t('The changes have been saved.'));
     $this->assertNoFieldChecked('edit-status-0');
@@ -133,14 +133,14 @@ public function testUserWith0Password() {
    */
   function testUserWithoutEmailEdit() {
     // Test that an admin can edit users without an email address.
-    $admin = $this->drupalCreateUser(array('administer users'));
+    $admin = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin);
     // Create a regular user.
-    $user1 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser([]);
     // This user has no email address.
     $user1->mail = '';
     $user1->save();
-    $this->drupalPostForm("user/" . $user1->id() . "/edit", array('mail' => ''), t('Save'));
+    $this->drupalPostForm("user/" . $user1->id() . "/edit", ['mail' => ''], t('Save'));
     $this->assertRaw(t("The changes have been saved."));
   }
 
diff --git a/core/modules/user/src/Tests/UserLanguageCreationTest.php b/core/modules/user/src/Tests/UserLanguageCreationTest.php
index 08ca707..e38a9c0 100644
--- a/core/modules/user/src/Tests/UserLanguageCreationTest.php
+++ b/core/modules/user/src/Tests/UserLanguageCreationTest.php
@@ -18,14 +18,14 @@ class UserLanguageCreationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'language');
+  public static $modules = ['user', 'language'];
 
   /**
    * Functional test for language handling during user creation.
    */
   function testLocalUserCreation() {
     // User to add and remove language and create new users.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages', 'administer users'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages', 'administer users']);
     $this->drupalLogin($admin_user);
 
     // Add predefined language.
@@ -33,9 +33,9 @@ function testLocalUserCreation() {
     ConfigurableLanguage::createFromLangcode($langcode)->save();
 
     // Set language negotiation.
-    $edit = array(
+    $edit = [
       'language_interface[enabled][language-url]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/detection', $edit, t('Save settings'));
     $this->assertText(t('Language detection configuration saved.'), 'Set language negotiation.');
 
@@ -47,12 +47,12 @@ function testLocalUserCreation() {
     // Create a user with the admin/people/create form and check if the correct
     // language is set.
     $username = $this->randomMachineName(10);
-    $edit = array(
+    $edit = [
       'name' => $username,
       'mail' => $this->randomMachineName(4) . '@example.com',
       'pass[pass1]' => $username,
       'pass[pass2]' => $username,
-    );
+    ];
 
     $this->drupalPostForm($langcode . '/admin/people/create', $edit, t('Create new account'));
 
@@ -67,10 +67,10 @@ function testLocalUserCreation() {
     $this->assertNoFieldByName('language[fr]', 'Language selector is not accessible.');
 
     $username = $this->randomMachineName(10);
-    $edit = array(
+    $edit = [
       'name' => $username,
       'mail' => $this->randomMachineName(4) . '@example.com',
-    );
+    ];
 
     $this->drupalPostForm($langcode . '/user/register', $edit, t('Create new account'));
 
@@ -88,10 +88,10 @@ function testLocalUserCreation() {
 
     // Set pass_raw so we can log in the new user.
     $user->pass_raw = $this->randomMachineName(10);
-    $edit = array(
+    $edit = [
       'pass[pass1]' => $user->pass_raw,
       'pass[pass2]' => $user->pass_raw,
-    );
+    ];
 
     $this->drupalPostForm($user_edit, $edit, t('Save'));
 
diff --git a/core/modules/user/src/Tests/UserLoginTest.php b/core/modules/user/src/Tests/UserLoginTest.php
index af00c74..406ccc0 100644
--- a/core/modules/user/src/Tests/UserLoginTest.php
+++ b/core/modules/user/src/Tests/UserLoginTest.php
@@ -21,9 +21,9 @@ function testLoginCacheTagsAndDestination() {
     // depends on config:system.site, and its cache tags should be present.
     $this->assertCacheTag('config:system.site');
 
-    $user = $this->drupalCreateUser(array());
-    $this->drupalGet('user/login', array('query' => array('destination' => 'foo')));
-    $edit = array('name' => $user->getUserName(), 'pass' => $user->pass_raw);
+    $user = $this->drupalCreateUser([]);
+    $this->drupalGet('user/login', ['query' => ['destination' => 'foo']]);
+    $edit = ['name' => $user->getUserName(), 'pass' => $user->pass_raw];
     $this->drupalPostForm(NULL, $edit, t('Log in'));
     $this->assertUrl('foo', [], 'Redirected to the correct URL');
   }
@@ -38,7 +38,7 @@ function testGlobalLoginFloodControl() {
       ->set('user_limit', 4000)
       ->save();
 
-    $user1 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser([]);
     $incorrect_user1 = clone $user1;
     $incorrect_user1->pass_raw .= 'incorrect';
 
@@ -75,11 +75,11 @@ function testPerUserLoginFloodControl() {
       ->set('user_limit', 3)
       ->save();
 
-    $user1 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser([]);
     $incorrect_user1 = clone $user1;
     $incorrect_user1->pass_raw .= 'incorrect';
 
-    $user2 = $this->drupalCreateUser(array());
+    $user2 = $this->drupalCreateUser([]);
 
     // Try 2 failed logins.
     for ($i = 0; $i < 2; $i++) {
@@ -116,7 +116,7 @@ function testPasswordRehashOnLogin() {
     $password_hasher = $this->container->get('password');
 
     // Create a new user and authenticate.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
     $password = $account->pass_raw;
     $this->drupalLogin($account);
     $this->drupalLogout();
@@ -129,13 +129,13 @@ function testPasswordRehashOnLogin() {
     // containing the necessary container builder code and then verify that the
     // users password gets rehashed during the login.
     $overridden_count_log2 = 19;
-    \Drupal::service('module_installer')->install(array('user_custom_phpass_params_test'));
+    \Drupal::service('module_installer')->install(['user_custom_phpass_params_test']);
     $this->resetAll();
 
     $account->pass_raw = $password;
     $this->drupalLogin($account);
     // Load the stored user, which should have a different password hash now.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertIdentical($password_hasher->getCountLog2($account->getPassword()), $overridden_count_log2);
     $this->assertTrue($password_hasher->check($password, $account->getPassword()));
@@ -155,19 +155,19 @@ function testPasswordRehashOnLogin() {
    *   - Set to NULL to expect a failed login.
    */
   function assertFailedLogin($account, $flood_trigger = NULL) {
-    $edit = array(
+    $edit = [
       'name' => $account->getUsername(),
       'pass' => $account->pass_raw,
-    );
+    ];
     $this->drupalPostForm('user/login', $edit, t('Log in'));
     $this->assertNoFieldByXPath("//input[@name='pass' and @value!='']", NULL, 'Password value attribute is blank.');
     if (isset($flood_trigger)) {
       if ($flood_trigger == 'user') {
-        $this->assertRaw(\Drupal::translation()->formatPlural($this->config('user.flood')->get('user_limit'), 'There has been more than one failed login attempt for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', 'There have been more than @count failed login attempts for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', array(':url' => \Drupal::url('user.pass'))));
+        $this->assertRaw(\Drupal::translation()->formatPlural($this->config('user.flood')->get('user_limit'), 'There has been more than one failed login attempt for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', 'There have been more than @count failed login attempts for this account. It is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', [':url' => \Drupal::url('user.pass')]));
       }
       else {
         // No uid, so the limit is IP-based.
-        $this->assertRaw(t('Too many failed login attempts from your IP address. This IP address is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', array(':url' => \Drupal::url('user.pass'))));
+        $this->assertRaw(t('Too many failed login attempts from your IP address. This IP address is temporarily blocked. Try again later or <a href=":url">request a new password</a>.', [':url' => \Drupal::url('user.pass')]));
       }
     }
     else {
diff --git a/core/modules/user/src/Tests/UserPasswordResetTest.php b/core/modules/user/src/Tests/UserPasswordResetTest.php
index f3463bf..fb19779 100644
--- a/core/modules/user/src/Tests/UserPasswordResetTest.php
+++ b/core/modules/user/src/Tests/UserPasswordResetTest.php
@@ -61,7 +61,7 @@ protected function setUp() {
     // that it is definitely over a second ago.
     $account->login = REQUEST_TIME - mt_rand(10, 100000);
     db_update('users_field_data')
-      ->fields(array('login' => $account->getLastLoginTime()))
+      ->fields(['login' => $account->getLastLoginTime()])
       ->condition('uid', $account->id())
       ->execute();
   }
@@ -78,11 +78,11 @@ function testUserPasswordReset() {
     // Try to reset the password for an invalid account.
     $this->drupalGet('user/password');
 
-    $edit = array('name' => $this->randomMachineName(32));
+    $edit = ['name' => $this->randomMachineName(32)];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
 
-    $this->assertText(t('@name is not recognized as a username or an email address.', array('@name' => $edit['name'])), 'Validation error message shown when trying to request password for invalid account.');
-    $this->assertEqual(count($this->drupalGetMails(array('id' => 'user_password_reset'))), 0, 'No email was sent when requesting a password for an invalid account.');
+    $this->assertText(t('@name is not recognized as a username or an email address.', ['@name' => $edit['name']]), 'Validation error message shown when trying to request password for invalid account.');
+    $this->assertEqual(count($this->drupalGetMails(['id' => 'user_password_reset'])), 0, 'No email was sent when requesting a password for an invalid account.');
 
     // Reset the password by username via the password reset page.
     $edit['name'] = $this->account->getUsername();
@@ -90,7 +90,7 @@ function testUserPasswordReset() {
 
     // Verify that the user was sent an email.
     $this->assertMail('to', $this->account->getEmail(), 'Password email sent to user.');
-    $subject = t('Replacement login information for @username at @site', array('@username' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name')));
+    $subject = t('Replacement login information for @username at @site', ['@username' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name')]);
     $this->assertMail('subject', $subject, 'Password reset email subject is correct.');
 
     $resetURL = $this->getResetURL();
@@ -112,19 +112,19 @@ function testUserPasswordReset() {
     // Check successful login.
     $this->drupalPostForm(NULL, NULL, t('Log in'));
     $this->assertLink(t('Log out'));
-    $this->assertTitle(t('@name | @site', array('@name' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name'))), 'Logged in using password reset link.');
+    $this->assertTitle(t('@name | @site', ['@name' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name')]), 'Logged in using password reset link.');
 
     // Make sure the ajax request from uploading a user picture does not
     // invalidate the reset token.
     $image = current($this->drupalGetTestFiles('image'));
-    $edit = array(
+    $edit = [
       'files[user_picture_0]' => drupal_realpath($image->uri),
-    );
+    ];
     $this->drupalPostAjaxForm(NULL, $edit, 'user_picture_0_upload_button');
 
     // Change the forgotten password.
     $password = user_password();
-    $edit = array('pass[pass1]' => $password, 'pass[pass2]' => $password);
+    $edit = ['pass[pass1]' => $password, 'pass[pass2]' => $password];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText(t('The changes have been saved.'), 'Forgotten password changed.');
 
@@ -141,10 +141,10 @@ function testUserPasswordReset() {
     // Request a new password again, this time using the email address.
     $this->drupalGet('user/password');
     // Count email messages before to compare with after.
-    $before = count($this->drupalGetMails(array('id' => 'user_password_reset')));
-    $edit = array('name' => $this->account->getEmail());
+    $before = count($this->drupalGetMails(['id' => 'user_password_reset']));
+    $edit = ['name' => $this->account->getEmail()];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
-    $this->assertTrue( count($this->drupalGetMails(array('id' => 'user_password_reset'))) === $before + 1, 'Email sent when requesting password reset using email address.');
+    $this->assertTrue( count($this->drupalGetMails(['id' => 'user_password_reset'])) === $before + 1, 'Email sent when requesting password reset using email address.');
 
     // Visit the user edit page without pass-reset-token and make sure it does
     // not cause an error.
@@ -173,15 +173,15 @@ function testUserPasswordReset() {
     // Verify a blocked user can not request a new password.
     $this->drupalGet('user/password');
     // Count email messages before to compare with after.
-    $before = count($this->drupalGetMails(array('id' => 'user_password_reset')));
-    $edit = array('name' => $blocked_account->getUsername());
+    $before = count($this->drupalGetMails(['id' => 'user_password_reset']));
+    $edit = ['name' => $blocked_account->getUsername()];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
-    $this->assertRaw(t('%name is blocked or has not been activated yet.', array('%name' => $blocked_account->getUsername())), 'Notified user blocked accounts can not request a new password');
-    $this->assertTrue(count($this->drupalGetMails(array('id' => 'user_password_reset'))) === $before, 'No email was sent when requesting password reset for a blocked account');
+    $this->assertRaw(t('%name is blocked or has not been activated yet.', ['%name' => $blocked_account->getUsername()]), 'Notified user blocked accounts can not request a new password');
+    $this->assertTrue(count($this->drupalGetMails(['id' => 'user_password_reset'])) === $before, 'No email was sent when requesting password reset for a blocked account');
 
     // Verify a password reset link is invalidated when the user's email address changes.
     $this->drupalGet('user/password');
-    $edit = array('name' => $this->account->getUsername());
+    $edit = ['name' => $this->account->getUsername()];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
     $old_email_reset_link = $this->getResetURL();
     $this->account->setEmail("1" . $this->account->getEmail());
@@ -193,12 +193,12 @@ function testUserPasswordReset() {
     // Verify a password reset link will automatically log a user when /login is
     // appended.
     $this->drupalGet('user/password');
-    $edit = array('name' => $this->account->getUsername());
+    $edit = ['name' => $this->account->getUsername()];
     $this->drupalPostForm(NULL, $edit, t('Submit'));
     $reset_url = $this->getResetURL();
     $this->drupalGet($reset_url . '/login');
     $this->assertLink(t('Log out'));
-    $this->assertTitle(t('@name | @site', array('@name' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name'))), 'Logged in using password reset link.');
+    $this->assertTitle(t('@name | @site', ['@name' => $this->account->getUsername(), '@site' => $this->config('system.site')->get('name')]), 'Logged in using password reset link.');
 
     // Ensure blocked and deleted accounts can't access the user.reset.login
     // route.
@@ -221,7 +221,7 @@ public function getResetURL() {
     // Assume the most recent email.
     $_emails = $this->drupalGetMails();
     $email = end($_emails);
-    $urls = array();
+    $urls = [];
     preg_match('#.+user/reset/.+#', $email['body'], $urls);
 
     return $urls[0];
@@ -264,7 +264,7 @@ public function testUserPasswordResetLoggedIn() {
 
     // Change the password.
     $password = user_password();
-    $edit = array('pass[pass1]' => $password, 'pass[pass2]' => $password);
+    $edit = ['pass[pass1]' => $password, 'pass[pass2]' => $password];
     $this->drupalPostForm(NULL, $edit, t('Save'));
     $this->assertText(t('The changes have been saved.'), 'Password changed.');
 
@@ -282,15 +282,15 @@ public function testUserPasswordResetLoggedIn() {
    */
   public function testUserResetPasswordTextboxFilled() {
     $this->drupalGet('user/login');
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(),
       'pass' => $this->randomMachineName(),
-    );
+    ];
     $this->drupalPostForm('user/login', $edit, t('Log in'));
     $this->assertRaw(t('Unrecognized username or password. <a href=":password">Forgot your password?</a>',
-      array(':password' => \Drupal::url('user.pass', [], array('query' => array('name' => $edit['name']))))));
+      [':password' => \Drupal::url('user.pass', [], ['query' => ['name' => $edit['name']]])]));
     unset($edit['pass']);
-    $this->drupalGet('user/password', array('query' => array('name' => $edit['name'])));
+    $this->drupalGet('user/password', ['query' => ['name' => $edit['name']]]);
     $this->assertFieldByName('name', $edit['name'], 'User name found.');
     // Ensure the name field value is not cached.
     $this->drupalGet('user/password');
@@ -303,7 +303,7 @@ public function testUserResetPasswordTextboxFilled() {
   function testResetImpersonation() {
     // Create two identical user accounts except for the user name. They must
     // have the same empty password, so we can't use $this->drupalCreateUser().
-    $edit = array();
+    $edit = [];
     $edit['name'] = $this->randomMachineName();
     $edit['mail'] = $edit['name'] . '@example.com';
     $edit['status'] = 1;
@@ -333,7 +333,7 @@ function testResetImpersonation() {
     $this->drupalGet($attack_reset_url);
     $this->drupalPostForm(NULL, NULL, t('Log in'));
     $this->assertNoText($user2->getUsername(), 'The invalid password reset page does not show the user name.');
-    $this->assertUrl('user/password', array(), 'The user is redirected to the password reset request page.');
+    $this->assertUrl('user/password', [], 'The user is redirected to the password reset request page.');
     $this->assertText('You have tried to use a one-time login link that has either been used or is no longer valid. Please request a new one using the form below.');
   }
 
diff --git a/core/modules/user/src/Tests/UserPermissionsTest.php b/core/modules/user/src/Tests/UserPermissionsTest.php
index 5e3ecd5..50a7f9e 100644
--- a/core/modules/user/src/Tests/UserPermissionsTest.php
+++ b/core/modules/user/src/Tests/UserPermissionsTest.php
@@ -31,7 +31,7 @@ class UserPermissionsTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer permissions', 'access user profiles', 'administer site configuration', 'administer modules', 'administer account settings'));
+    $this->adminUser = $this->drupalCreateUser(['administer permissions', 'access user profiles', 'administer site configuration', 'administer modules', 'administer account settings']);
 
     // Find the new role ID.
     $all_rids = $this->adminUser->getRoles();
@@ -59,7 +59,7 @@ function testUserPermissionChanges() {
 
     // Add a permission.
     $this->assertFalse($account->hasPermission('administer users'), 'User does not have "administer users" permission.');
-    $edit = array();
+    $edit = [];
     $edit[$rid . '[administer users]'] = TRUE;
     $this->drupalPostForm('admin/people/permissions', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), 'Successful save message displayed.');
@@ -72,7 +72,7 @@ function testUserPermissionChanges() {
 
     // Remove a permission.
     $this->assertTrue($account->hasPermission('access user profiles'), 'User has "access user profiles" permission.');
-    $edit = array();
+    $edit = [];
     $edit[$rid . '[access user profiles]'] = FALSE;
     $this->drupalPostForm('admin/people/permissions', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), 'Successful save message displayed.');
@@ -102,7 +102,7 @@ function testAdministratorRole() {
     $this->assertFalse(Role::load($this->rid)->isAdmin());
 
     // Set the user's role to be the administrator role.
-    $edit = array();
+    $edit = [];
     $edit['user_admin_role'] = $this->rid;
     $this->drupalPostForm('admin/config/people/accounts', $edit, t('Save configuration'));
 
@@ -111,12 +111,12 @@ function testAdministratorRole() {
 
     // Enable aggregator module and ensure the 'administer news feeds'
     // permission is assigned by default.
-    \Drupal::service('module_installer')->install(array('aggregator'));
+    \Drupal::service('module_installer')->install(['aggregator']);
 
     $this->assertTrue($this->adminUser->hasPermission('administer news feeds'), 'The permission was automatically assigned to the administrator role');
 
     // Ensure that selecting '- None -' removes the admin role.
-    $edit = array();
+    $edit = [];
     $edit['user_admin_role'] = '';
     $this->drupalPostForm('admin/config/people/accounts', $edit, t('Save configuration'));
 
@@ -148,10 +148,10 @@ function testUserRoleChangePermissions() {
     $this->assertTrue($account->hasPermission('administer site configuration'), 'User has "administer site configuration" permission.');
 
     // Change permissions.
-    $permissions = array(
+    $permissions = [
       'administer users' => 1,
       'access user profiles' => 0,
-    );
+    ];
     user_role_change_permissions($rid, $permissions);
 
     // Verify proper permission changes.
diff --git a/core/modules/user/src/Tests/UserPictureTest.php b/core/modules/user/src/Tests/UserPictureTest.php
index 3f8db42..e4c4d9a 100644
--- a/core/modules/user/src/Tests/UserPictureTest.php
+++ b/core/modules/user/src/Tests/UserPictureTest.php
@@ -33,12 +33,12 @@ class UserPictureTest extends WebTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->webUser = $this->drupalCreateUser(array(
+    $this->webUser = $this->drupalCreateUser([
       'access content',
       'access comments',
       'post comments',
       'skip comment approval',
-    ));
+    ]);
   }
 
   /**
@@ -56,17 +56,17 @@ function testCreateDeletePicture() {
     $this->assertRaw(file_uri_target($file->getFileUri()), 'User picture found on user account page.');
 
     // Delete the picture.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('user/' . $this->webUser->id() . '/edit', $edit, t('Remove'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Call file_cron() to clean up the file. Make sure the timestamp
     // of the file is older than the system.file.temporary_maximum_age
     // configuration value.
     db_update('file_managed')
-      ->fields(array(
+      ->fields([
         'changed' => REQUEST_TIME - ($this->config('system.file')->get('temporary_maximum_age') + 1),
-      ))
+      ])
       ->condition('fid', $file->id())
       ->execute();
     \Drupal::service('cron')->run();
@@ -88,7 +88,7 @@ function testPictureOnNodeComment() {
     $image = current($this->drupalGetTestFiles('image'));
     $file = $this->saveUserPicture($image);
 
-    $node = $this->drupalCreateNode(array('type' => 'article'));
+    $node = $this->drupalCreateNode(['type' => 'article']);
 
     // Enable user pictures on nodes.
     $this->config('system.theme.global')->set('features.node_user_picture', TRUE)->save();
@@ -109,9 +109,9 @@ function testPictureOnNodeComment() {
       ->set('features.comment_user_picture', TRUE)
       ->save();
 
-    $edit = array(
+    $edit = [
       'comment_body[0][value]' => $this->randomString(),
-    );
+    ];
     $this->drupalPostForm('comment/reply/node/' . $node->id() . '/comment', $edit, t('Save'));
     $elements = $this->cssSelect('.comment__meta .field--name-user-picture img[alt="' . $alt_text . '"][src="' . $image_url . '"]');
     $this->assertEqual(count($elements), 1, 'User picture with alt text found on the comment.');
@@ -130,12 +130,12 @@ function testPictureOnNodeComment() {
    * Edits the user picture for the test user.
    */
   function saveUserPicture($image) {
-    $edit = array('files[user_picture_0]' => drupal_realpath($image->uri));
+    $edit = ['files[user_picture_0]' => drupal_realpath($image->uri)];
     $this->drupalPostForm('user/' . $this->webUser->id() . '/edit', $edit, t('Save'));
 
     // Load actual user data from database.
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
-    $user_storage->resetCache(array($this->webUser->id()));
+    $user_storage->resetCache([$this->webUser->id()]);
     $account = $user_storage->load($this->webUser->id());
     return File::load($account->user_picture->target_id);
   }
diff --git a/core/modules/user/src/Tests/UserRegistrationTest.php b/core/modules/user/src/Tests/UserRegistrationTest.php
index d537c6f..6b6937c 100644
--- a/core/modules/user/src/Tests/UserRegistrationTest.php
+++ b/core/modules/user/src/Tests/UserRegistrationTest.php
@@ -21,7 +21,7 @@ class UserRegistrationTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('field_test');
+  public static $modules = ['field_test'];
 
   function testRegistrationWithEmailVerification() {
     $config = $this->config('user.settings');
@@ -35,7 +35,7 @@ function testRegistrationWithEmailVerification() {
 
     // Allow registration by site visitors without administrator approval.
     $config->set('register', USER_REGISTER_VISITORS)->save();
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
     $this->drupalPostForm('user/register', $edit, t('Create new account'));
@@ -52,7 +52,7 @@ function testRegistrationWithEmailVerification() {
 
     // Allow registration by site visitors, but require administrator approval.
     $config->set('register', USER_REGISTER_VISITORS_ADMINISTRATIVE_APPROVAL)->save();
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
     $this->drupalPostForm('user/register', $edit, t('Create new account'));
@@ -71,7 +71,7 @@ function testRegistrationWithoutEmailVerification() {
       ->set('register', USER_REGISTER_VISITORS)
       ->save();
 
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
 
@@ -95,7 +95,7 @@ function testRegistrationWithoutEmailVerification() {
 
     // Allow registration by site visitors, but require administrator approval.
     $config->set('register', USER_REGISTER_VISITORS_ADMINISTRATIVE_APPROVAL)->save();
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
     $edit['pass[pass1]'] = $pass = $this->randomMachineName();
@@ -104,22 +104,22 @@ function testRegistrationWithoutEmailVerification() {
     $this->assertText(t('Thank you for applying for an account. Your account is currently pending approval by the site administrator.'), 'Users are notified of pending approval');
 
     // Try to log in before administrator approval.
-    $auth = array(
+    $auth = [
       'name' => $name,
       'pass' => $pass,
-    );
+    ];
     $this->drupalPostForm('user/login', $auth, t('Log in'));
-    $this->assertText(t('The username @name has not been activated or is blocked.', array('@name' => $name)), 'User cannot log in yet.');
+    $this->assertText(t('The username @name has not been activated or is blocked.', ['@name' => $name]), 'User cannot log in yet.');
 
     // Activate the new account.
     $accounts = $this->container->get('entity_type.manager')->getStorage('user')
       ->loadByProperties(['name' => $name, 'mail' => $mail]);
     $new_user = reset($accounts);
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
-    $edit = array(
+    $edit = [
       'status' => 1,
-    );
+    ];
     $this->drupalPostForm('user/' . $new_user->id() . '/edit', $edit, t('Save'));
     $this->drupalLogout();
 
@@ -139,19 +139,19 @@ function testRegistrationEmailDuplicates() {
     // Set up a user to check for duplicates.
     $duplicate_user = $this->drupalCreateUser();
 
-    $edit = array();
+    $edit = [];
     $edit['name'] = $this->randomMachineName();
     $edit['mail'] = $duplicate_user->getEmail();
 
     // Attempt to create a new account using an existing email address.
     $this->drupalPostForm('user/register', $edit, t('Create new account'));
-    $this->assertText(t('The email address @email is already taken.', array('@email' => $duplicate_user->getEmail())), 'Supplying an exact duplicate email address displays an error message');
+    $this->assertText(t('The email address @email is already taken.', ['@email' => $duplicate_user->getEmail()]), 'Supplying an exact duplicate email address displays an error message');
 
     // Attempt to bypass duplicate email registration validation by adding spaces.
     $edit['mail'] = '   ' . $duplicate_user->getEmail() . '   ';
 
     $this->drupalPostForm('user/register', $edit, t('Create new account'));
-    $this->assertText(t('The email address @email is already taken.', array('@email' => $duplicate_user->getEmail())), 'Supplying a duplicate email address with added whitespace displays an error message');
+    $this->assertText(t('The email address @email is already taken.', ['@email' => $duplicate_user->getEmail()]), 'Supplying a duplicate email address with added whitespace displays an error message');
   }
 
   /**
@@ -241,7 +241,7 @@ function testRegistrationDefaultValues() {
     $this->drupalGet('user/register');
     $this->assertCacheTag('config:user.settings');
 
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
     $edit['pass[pass1]'] = $new_pass = $this->randomMachineName();
@@ -285,12 +285,12 @@ public function testUniqueFields() {
    */
   function testRegistrationWithUserFields() {
     // Create a field on 'user' entity type.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => 'test_user_field',
       'entity_type' => 'user',
       'type' => 'test_field',
       'cardinality' => 1,
-    ));
+    ]);
     $field_storage->save();
     $field = FieldConfig::create([
       'field_storage' => $field_storage,
@@ -300,7 +300,7 @@ function testRegistrationWithUserFields() {
     ]);
     $field->save();
     entity_get_form_display('user', 'user', 'default')
-      ->setComponent('test_user_field', array('type' => 'test_field_widget'))
+      ->setComponent('test_user_field', ['type' => 'test_field_widget'])
       ->save();
     entity_get_form_display('user', 'user', 'register')
       ->save();
@@ -313,7 +313,7 @@ function testRegistrationWithUserFields() {
 
     // Have the field appear on the registration form.
     entity_get_form_display('user', 'user', 'register')
-      ->setComponent('test_user_field', array('type' => 'test_field_widget'))
+      ->setComponent('test_user_field', ['type' => 'test_field_widget'])
       ->save();
 
     $this->drupalGet('user/register');
@@ -321,19 +321,19 @@ function testRegistrationWithUserFields() {
     $this->assertRegistrationFormCacheTagsWithUserFields();
 
     // Check that validation errors are correctly reported.
-    $edit = array();
+    $edit = [];
     $edit['name'] = $name = $this->randomMachineName();
     $edit['mail'] = $mail = $edit['name'] . '@example.com';
     // Missing input in required field.
     $edit['test_user_field[0][value]'] = '';
     $this->drupalPostForm(NULL, $edit, t('Create new account'));
     $this->assertRegistrationFormCacheTagsWithUserFields();
-    $this->assertRaw(t('@name field is required.', array('@name' => $field->label())), 'Field validation error was correctly reported.');
+    $this->assertRaw(t('@name field is required.', ['@name' => $field->label()]), 'Field validation error was correctly reported.');
     // Invalid input.
     $edit['test_user_field[0][value]'] = '-1';
     $this->drupalPostForm(NULL, $edit, t('Create new account'));
     $this->assertRegistrationFormCacheTagsWithUserFields();
-    $this->assertRaw(t('%name does not accept the value -1.', array('%name' => $field->label())), 'Field validation error was correctly reported.');
+    $this->assertRaw(t('%name does not accept the value -1.', ['%name' => $field->label()]), 'Field validation error was correctly reported.');
 
     // Submit with valid data.
     $value = rand(1, 255);
@@ -348,12 +348,12 @@ function testRegistrationWithUserFields() {
     // Check that the 'add more' button works.
     $field_storage->setCardinality(FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
     $field_storage->save();
-    foreach (array('js', 'nojs') as $js) {
+    foreach (['js', 'nojs'] as $js) {
       $this->drupalGet('user/register');
       $this->assertRegistrationFormCacheTagsWithUserFields();
       // Add two inputs.
       $value = rand(1, 255);
-      $edit = array();
+      $edit = [];
       $edit['test_user_field[0][value]'] = $value;
       if ($js == 'js') {
         $this->drupalPostAjaxForm(NULL, $edit, 'test_user_field_add_more');
@@ -371,11 +371,11 @@ function testRegistrationWithUserFields() {
       $this->drupalPostForm(NULL, $edit, t('Create new account'));
       // Check user fields.
       $accounts = $this->container->get('entity_type.manager')->getStorage('user')
-        ->loadByProperties(array('name' => $name, 'mail' => $mail));
+        ->loadByProperties(['name' => $name, 'mail' => $mail]);
       $new_user = reset($accounts);
-      $this->assertEqual($new_user->test_user_field[0]->value, $value, format_string('@js : The field value was correctly saved.', array('@js' => $js)));
-      $this->assertEqual($new_user->test_user_field[1]->value, $value + 1, format_string('@js : The field value was correctly saved.', array('@js' => $js)));
-      $this->assertEqual($new_user->test_user_field[2]->value, $value + 2, format_string('@js : The field value was correctly saved.', array('@js' => $js)));
+      $this->assertEqual($new_user->test_user_field[0]->value, $value, format_string('@js : The field value was correctly saved.', ['@js' => $js]));
+      $this->assertEqual($new_user->test_user_field[1]->value, $value + 1, format_string('@js : The field value was correctly saved.', ['@js' => $js]));
+      $this->assertEqual($new_user->test_user_field[2]->value, $value + 2, format_string('@js : The field value was correctly saved.', ['@js' => $js]));
     }
   }
 
diff --git a/core/modules/user/src/Tests/UserRoleAdminTest.php b/core/modules/user/src/Tests/UserRoleAdminTest.php
index 182da93..5b0be69 100644
--- a/core/modules/user/src/Tests/UserRoleAdminTest.php
+++ b/core/modules/user/src/Tests/UserRoleAdminTest.php
@@ -32,7 +32,7 @@ class UserRoleAdminTest extends WebTestBase {
    */
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('administer permissions', 'administer users'));
+    $this->adminUser = $this->drupalCreateUser(['administer permissions', 'administer users']);
     $this->drupalPlaceBlock('local_tasks_block');
   }
 
@@ -44,19 +44,19 @@ function testRoleAdministration() {
     $default_langcode = \Drupal::languageManager()->getDefaultLanguage()->getId();
     // Test presence of tab.
     $this->drupalGet('admin/people/permissions');
-    $tabs = $this->xpath('//ul[@class=:classes and //a[contains(., :text)]]', array(
+    $tabs = $this->xpath('//ul[@class=:classes and //a[contains(., :text)]]', [
       ':classes' => 'tabs primary',
       ':text' => t('Roles'),
-    ));
+    ]);
     $this->assertEqual(count($tabs), 1, 'Found roles tab');
 
     // Test adding a role. (In doing so, we use a role name that happens to
     // correspond to an integer, to test that the role administration pages
     // correctly distinguish between role names and IDs.)
     $role_name = '123';
-    $edit = array('label' => $role_name, 'id' => $role_name);
+    $edit = ['label' => $role_name, 'id' => $role_name];
     $this->drupalPostForm('admin/people/roles/add', $edit, t('Save'));
-    $this->assertRaw(t('Role %label has been added.', array('%label' => 123)));
+    $this->assertRaw(t('Role %label has been added.', ['%label' => 123]));
     $role = Role::load($role_name);
     $this->assertTrue(is_object($role), 'The role was successfully retrieved from the database.');
 
@@ -69,20 +69,20 @@ function testRoleAdministration() {
 
     // Test renaming a role.
     $role_name = '456';
-    $edit = array('label' => $role_name);
+    $edit = ['label' => $role_name];
     $this->drupalPostForm("admin/people/roles/manage/{$role->id()}", $edit, t('Save'));
-    $this->assertRaw(t('Role %label has been updated.', array('%label' => $role_name)));
-    \Drupal::entityManager()->getStorage('user_role')->resetCache(array($role->id()));
+    $this->assertRaw(t('Role %label has been updated.', ['%label' => $role_name]));
+    \Drupal::entityManager()->getStorage('user_role')->resetCache([$role->id()]);
     $new_role = Role::load($role->id());
     $this->assertEqual($new_role->label(), $role_name, 'The role name has been successfully changed.');
 
     // Test deleting a role.
     $this->drupalGet("admin/people/roles/manage/{$role->id()}");
     $this->clickLink(t('Delete'));
-    $this->drupalPostForm(NULL, array(), t('Delete'));
-    $this->assertRaw(t('The role %label has been deleted.', array('%label' => $role_name)));
+    $this->drupalPostForm(NULL, [], t('Delete'));
+    $this->assertRaw(t('The role %label has been deleted.', ['%label' => $role_name]));
     $this->assertNoLinkByHref("admin/people/roles/manage/{$role->id()}", 'Role edit link removed.');
-    \Drupal::entityManager()->getStorage('user_role')->resetCache(array($role->id()));
+    \Drupal::entityManager()->getStorage('user_role')->resetCache([$role->id()]);
     $this->assertFalse(Role::load($role->id()), 'A deleted role can no longer be loaded.');
 
     // Make sure that the system-defined roles can be edited via the user
@@ -102,11 +102,11 @@ function testRoleWeightOrdering() {
     $this->drupalLogin($this->adminUser);
     $roles = user_roles();
     $weight = count($roles);
-    $new_role_weights = array();
-    $saved_rids = array();
+    $new_role_weights = [];
+    $saved_rids = [];
 
     // Change the role weights to make the roles in reverse order.
-    $edit = array();
+    $edit = [];
     foreach ($roles as $role) {
       $edit['entities[' . $role->id() . '][weight]'] = $weight;
       $new_role_weights[$role->id()] = $weight;
@@ -119,7 +119,7 @@ function testRoleWeightOrdering() {
     // Load up the user roles with the new weights.
     drupal_static_reset('user_roles');
     $roles = user_roles();
-    $rids = array();
+    $rids = [];
     // Test that the role weights have been correctly saved.
     foreach ($roles as $role) {
       $this->assertEqual($role->getWeight(), $new_role_weights[$role->id()]);
diff --git a/core/modules/user/src/Tests/UserTimeZoneTest.php b/core/modules/user/src/Tests/UserTimeZoneTest.php
index 3229d31..9b027b5 100644
--- a/core/modules/user/src/Tests/UserTimeZoneTest.php
+++ b/core/modules/user/src/Tests/UserTimeZoneTest.php
@@ -17,7 +17,7 @@ class UserTimeZoneTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'system_test');
+  public static $modules = ['node', 'system_test'];
 
   /**
    * Tests the display of dates and time when user-configurable time zones are set.
@@ -42,10 +42,10 @@ function testUserTimeZone() {
     $date2 = '2007-03-11 01:00:00 -0800';
     // One date in PDT (summer time):
     $date3 = '2007-03-20 21:00:00 -0700';
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $node1 = $this->drupalCreateNode(array('created' => strtotime($date1), 'type' => 'article'));
-    $node2 = $this->drupalCreateNode(array('created' => strtotime($date2), 'type' => 'article'));
-    $node3 = $this->drupalCreateNode(array('created' => strtotime($date3), 'type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $node1 = $this->drupalCreateNode(['created' => strtotime($date1), 'type' => 'article']);
+    $node2 = $this->drupalCreateNode(['created' => strtotime($date2), 'type' => 'article']);
+    $node3 = $this->drupalCreateNode(['created' => strtotime($date3), 'type' => 'article']);
 
     // Confirm date format and time zone.
     $this->drupalGet('node/' . $node1->id());
@@ -56,7 +56,7 @@ function testUserTimeZone() {
     $this->assertText('2007-03-20 21:00 PDT', 'Date should be PDT.');
 
     // Change user time zone to Santiago time.
-    $edit = array();
+    $edit = [];
     $edit['mail'] = $web_user->getEmail();
     $edit['timezone'] = 'America/Santiago';
     $this->drupalPostForm("user/" . $web_user->id() . "/edit", $edit, t('Save'));
diff --git a/core/modules/user/src/Tests/UserTranslationUITest.php b/core/modules/user/src/Tests/UserTranslationUITest.php
index 82a3445..32a9b8f 100644
--- a/core/modules/user/src/Tests/UserTranslationUITest.php
+++ b/core/modules/user/src/Tests/UserTranslationUITest.php
@@ -23,7 +23,7 @@ class UserTranslationUITest extends ContentTranslationUITestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'content_translation', 'user', 'views');
+  public static $modules = ['language', 'content_translation', 'user', 'views'];
 
   protected function setUp() {
     $this->entityTypeId = 'user';
@@ -38,7 +38,7 @@ protected function setUp() {
    * {@inheritdoc}
    */
   protected function getTranslatorPermissions() {
-    return array_merge(parent::getTranslatorPermissions(), array('administer users'));
+    return array_merge(parent::getTranslatorPermissions(), ['administer users']);
   }
 
   /**
@@ -46,7 +46,7 @@ protected function getTranslatorPermissions() {
    */
   protected function getNewEntityValues($langcode) {
     // User name is not translatable hence we use a fixed value.
-    return array('name' => $this->name) + parent::getNewEntityValues($langcode);
+    return ['name' => $this->name] + parent::getNewEntityValues($langcode);
   }
 
   /**
@@ -62,14 +62,14 @@ protected function doTestTranslationEdit() {
     foreach ($this->langcodes as $langcode) {
       // We only want to test the title for non-english translations.
       if ($langcode != 'en') {
-        $options = array('language' => $languages[$langcode]);
+        $options = ['language' => $languages[$langcode]];
         $url = $entity->urlInfo('edit-form', $options);
         $this->drupalGet($url);
 
-        $title = t('@title [%language translation]', array(
+        $title = t('@title [%language translation]', [
           '@title' => $entity->getTranslation($langcode)->label(),
           '%language' => $languages[$langcode]->getName(),
-        ));
+        ]);
         $this->assertRaw($title);
       }
     }
diff --git a/core/modules/user/src/Tests/Views/AccessPermissionTest.php b/core/modules/user/src/Tests/Views/AccessPermissionTest.php
index b8ef5a9..f82b103 100644
--- a/core/modules/user/src/Tests/Views/AccessPermissionTest.php
+++ b/core/modules/user/src/Tests/Views/AccessPermissionTest.php
@@ -19,7 +19,7 @@ class AccessPermissionTest extends AccessTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_access_perm');
+  public static $testViews = ['test_access_perm'];
 
   /**
    * Tests perm access plugin.
diff --git a/core/modules/user/src/Tests/Views/AccessRoleTest.php b/core/modules/user/src/Tests/Views/AccessRoleTest.php
index 2462915..04f2876 100644
--- a/core/modules/user/src/Tests/Views/AccessRoleTest.php
+++ b/core/modules/user/src/Tests/Views/AccessRoleTest.php
@@ -20,7 +20,7 @@ class AccessRoleTest extends AccessTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_access_role');
+  public static $testViews = ['test_access_role'];
 
   /**
    * Tests role access plugin.
@@ -29,9 +29,9 @@ function testAccessRole() {
     /** @var \Drupal\views\ViewEntityInterface $view */
     $view = \Drupal::entityManager()->getStorage('view')->load('test_access_role');
     $display = &$view->getDisplay('default');
-    $display['display_options']['access']['options']['role'] = array(
+    $display['display_options']['access']['options']['role'] = [
       $this->normalRole => $this->normalRole,
-    );
+    ];
     $view->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
     $expected = [
@@ -63,10 +63,10 @@ function testAccessRole() {
     // Test allowing multiple roles.
     $view = Views::getView('test_access_role')->storage;
     $display = &$view->getDisplay('default');
-    $display['display_options']['access']['options']['role'] = array(
+    $display['display_options']['access']['options']['role'] = [
       $this->normalRole => $this->normalRole,
       'anonymous' => 'anonymous',
-    );
+    ];
     $view->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
 
@@ -102,9 +102,9 @@ public function testRenderCaching() {
     $display['display_options']['cache'] = [
       'type' => 'tag',
     ];
-    $display['display_options']['access']['options']['role'] = array(
+    $display['display_options']['access']['options']['role'] = [
       $this->normalRole => $this->normalRole,
-    );
+    ];
     $view->save();
 
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
diff --git a/core/modules/user/src/Tests/Views/AccessRoleUITest.php b/core/modules/user/src/Tests/Views/AccessRoleUITest.php
index 7fb9496..bea8c53 100644
--- a/core/modules/user/src/Tests/Views/AccessRoleUITest.php
+++ b/core/modules/user/src/Tests/Views/AccessRoleUITest.php
@@ -18,14 +18,14 @@ class AccessRoleUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_access_role');
+  public static $testViews = ['test_access_role'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('user', 'user_test_views');
+  public static $modules = ['user', 'user_test_views'];
 
   /**
    * {@inheritdoc}
@@ -33,7 +33,7 @@ class AccessRoleUITest extends UITestBase {
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
   }
 
   /**
@@ -41,20 +41,20 @@ protected function setUp() {
    */
   public function testAccessRoleUI() {
     $entity_manager = $this->container->get('entity.manager');
-    $entity_manager->getStorage('user_role')->create(array('id' => 'custom_role', 'label' => 'Custom role'))->save();
+    $entity_manager->getStorage('user_role')->create(['id' => 'custom_role', 'label' => 'Custom role'])->save();
     $access_url = "admin/structure/views/nojs/display/test_access_role/default/access_options";
-    $this->drupalPostForm($access_url, array('access_options[role][custom_role]' => 1), t('Apply'));
+    $this->drupalPostForm($access_url, ['access_options[role][custom_role]' => 1], t('Apply'));
     $this->assertResponse(200);
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $view = $entity_manager->getStorage('view')->load('test_access_role');
 
     $display = $view->getDisplay('default');
-    $this->assertEqual($display['display_options']['access']['options']['role'], array('custom_role' => 'custom_role'));
+    $this->assertEqual($display['display_options']['access']['options']['role'], ['custom_role' => 'custom_role']);
 
     // Test changing access plugin from role to none.
     $this->drupalPostForm('admin/structure/views/nojs/display/test_access_role/default/access', ['access[type]' => 'none'], t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     // Verify that role option is not set.
     $view = $entity_manager->getStorage('view')->load('test_access_role');
     $display = $view->getDisplay('default');
diff --git a/core/modules/user/src/Tests/Views/AccessTestBase.php b/core/modules/user/src/Tests/Views/AccessTestBase.php
index 90a3d2f..b0395b0 100644
--- a/core/modules/user/src/Tests/Views/AccessTestBase.php
+++ b/core/modules/user/src/Tests/Views/AccessTestBase.php
@@ -12,7 +12,7 @@
    *
    * @var array
    */
-  public static $modules = array('block');
+  public static $modules = ['block'];
 
   /**
    * Contains a user object that has no special permissions.
@@ -55,8 +55,8 @@ protected function setUp() {
     $roles = $this->webUser->getRoles();
     $this->webRole = $roles[0];
 
-    $this->normalRole = $this->drupalCreateRole(array());
-    $this->normalUser = $this->drupalCreateUser(array('views_test_data test permission'));
+    $this->normalRole = $this->drupalCreateRole([]);
+    $this->normalUser = $this->drupalCreateUser(['views_test_data test permission']);
     $this->normalUser->addRole($this->normalRole);
     $this->normalUser->save();
     // @todo when all the plugin information is cached make a reset function and
diff --git a/core/modules/user/src/Tests/Views/ArgumentDefaultTest.php b/core/modules/user/src/Tests/Views/ArgumentDefaultTest.php
index 4e21d79..7db3237 100644
--- a/core/modules/user/src/Tests/Views/ArgumentDefaultTest.php
+++ b/core/modules/user/src/Tests/Views/ArgumentDefaultTest.php
@@ -16,7 +16,7 @@ class ArgumentDefaultTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_plugin_argument_default_current_user');
+  public static $testViews = ['test_plugin_argument_default_current_user'];
 
   public function test_plugin_argument_default_current_user() {
     // Create a user to test.
diff --git a/core/modules/user/src/Tests/Views/ArgumentValidateTest.php b/core/modules/user/src/Tests/Views/ArgumentValidateTest.php
index 0a49142..1f60df2 100644
--- a/core/modules/user/src/Tests/Views/ArgumentValidateTest.php
+++ b/core/modules/user/src/Tests/Views/ArgumentValidateTest.php
@@ -18,7 +18,7 @@ class ArgumentValidateTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_argument_validate_user', 'test_view_argument_validate_username');
+  public static $testViews = ['test_view_argument_validate_user', 'test_view_argument_validate_username'];
 
   /**
    * A user for this test.
@@ -48,7 +48,7 @@ function testArgumentValidateUserUid() {
     // Fail for a valid numeric, but for a user that doesn't exist
     $this->assertFalse($view->argument['null']->validateArgument(32));
 
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $view->argument['null']->buildOptionsForm($form, $form_state);
     $sanitized_id = ArgumentPluginBase::encodeValidatorId('entity:user');
diff --git a/core/modules/user/src/Tests/Views/BulkFormAccessTest.php b/core/modules/user/src/Tests/Views/BulkFormAccessTest.php
index 3aa5f93..2b36240 100644
--- a/core/modules/user/src/Tests/Views/BulkFormAccessTest.php
+++ b/core/modules/user/src/Tests/Views/BulkFormAccessTest.php
@@ -18,26 +18,26 @@ class BulkFormAccessTest extends UserTestBase {
    *
    * @var array
    */
-  public static $modules = array('user_access_test');
+  public static $modules = ['user_access_test'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_user_bulk_form');
+  public static $testViews = ['test_user_bulk_form'];
 
   /**
    * Tests if users that may not be edited, can not be edited in bulk.
    */
   public function testUserEditAccess() {
     // Create an authenticated user.
-    $no_edit_user = $this->drupalCreateUser(array(), 'no_edit');
+    $no_edit_user = $this->drupalCreateUser([], 'no_edit');
     // Ensure this account is not blocked.
     $this->assertFalse($no_edit_user->isBlocked(), 'The user is not blocked.');
 
     // Log in as user admin.
-    $admin_user = $this->drupalCreateUser(array('administer users'));
+    $admin_user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($admin_user);
 
     // Ensure that the account "no_edit" can not be edited.
@@ -46,10 +46,10 @@ public function testUserEditAccess() {
     $this->assertResponse(403, 'The user may not be edited.');
 
     // Test blocking the account "no_edit".
-    $edit = array(
+    $edit = [
       'user_bulk_form[' . ($no_edit_user->id() - 1) . ']' => TRUE,
       'action' => 'user_block_user_action',
-    );
+    ];
     $this->drupalPostForm('test-user-bulk-form', $edit, t('Apply to selected items'));
     $this->assertResponse(200);
 
@@ -67,10 +67,10 @@ public function testUserEditAccess() {
     $normal_user = $this->drupalCreateUser();
     $this->assertTrue($normal_user->access('update', $admin_user));
 
-    $edit = array(
+    $edit = [
       'user_bulk_form[' . ($normal_user->id() - 1) . ']' => TRUE,
       'action' => 'user_block_user_action',
-    );
+    ];
     $this->drupalPostForm('test-user-bulk-form', $edit, t('Apply to selected items'));
 
     $normal_user = User::load($normal_user->id());
@@ -79,10 +79,10 @@ public function testUserEditAccess() {
     // Log in as user without the 'administer users' permission.
     $this->drupalLogin($this->drupalCreateUser());
 
-    $edit = array(
+    $edit = [
       'user_bulk_form[' . ($normal_user->id() - 1) . ']' => TRUE,
       'action' => 'user_unblock_user_action',
-    );
+    ];
     $this->drupalPostForm('test-user-bulk-form', $edit, t('Apply to selected items'));
 
     // Re-load the normal user and ensure it is still blocked.
@@ -95,11 +95,11 @@ public function testUserEditAccess() {
    */
   public function testUserDeleteAccess() {
     // Create two authenticated users.
-    $account = $this->drupalCreateUser(array(), 'no_delete');
-    $account2 = $this->drupalCreateUser(array(), 'may_delete');
+    $account = $this->drupalCreateUser([], 'no_delete');
+    $account2 = $this->drupalCreateUser([], 'may_delete');
 
     // Log in as user admin.
-    $this->drupalLogin($this->drupalCreateUser(array('administer users')));
+    $this->drupalLogin($this->drupalCreateUser(['administer users']));
 
     // Ensure that the account "no_delete" can not be deleted.
     $this->drupalGet('user/' . $account->id() . '/cancel');
@@ -109,15 +109,15 @@ public function testUserDeleteAccess() {
     $this->assertResponse(200, 'The user "may_delete" may be deleted.');
 
     // Test deleting the accounts "no_delete" and "may_delete".
-    $edit = array(
+    $edit = [
       'user_bulk_form[' . ($account->id() - 1) . ']' => TRUE,
       'user_bulk_form[' . ($account2->id() - 1) . ']' => TRUE,
       'action' => 'user_cancel_user_action',
-    );
+    ];
     $this->drupalPostForm('test-user-bulk-form', $edit, t('Apply to selected items'));
-    $edit = array(
+    $edit = [
       'user_cancel_method' => 'user_cancel_delete',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Cancel accounts'));
 
     // Ensure the account "no_delete" still exists.
diff --git a/core/modules/user/src/Tests/Views/BulkFormTest.php b/core/modules/user/src/Tests/Views/BulkFormTest.php
index 00bdc82..665af74 100644
--- a/core/modules/user/src/Tests/Views/BulkFormTest.php
+++ b/core/modules/user/src/Tests/Views/BulkFormTest.php
@@ -19,33 +19,33 @@ class BulkFormTest extends UserTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui');
+  public static $modules = ['views_ui'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_user_bulk_form', 'test_user_bulk_form_combine_filter');
+  public static $testViews = ['test_user_bulk_form', 'test_user_bulk_form_combine_filter'];
 
   /**
    * Tests the user bulk form.
    */
   public function testBulkForm() {
     // Log in as a user without 'administer users'.
-    $this->drupalLogin($this->drupalCreateUser(array('administer permissions')));
+    $this->drupalLogin($this->drupalCreateUser(['administer permissions']));
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
 
     // Create an user which actually can change users.
-    $this->drupalLogin($this->drupalCreateUser(array('administer users')));
+    $this->drupalLogin($this->drupalCreateUser(['administer users']));
     $this->drupalGet('test-user-bulk-form');
     $result = $this->cssSelect('#edit-action option');
     $this->assertTrue(count($result) > 0);
 
     // Test submitting the page with no selection.
-    $edit = array(
+    $edit = [
       'action' => 'user_block_user_action',
-    );
+    ];
     $this->drupalPostForm('test-user-bulk-form', $edit, t('Apply to selected items'));
     $this->assertText(t('No users selected.'));
 
@@ -56,36 +56,36 @@ public function testBulkForm() {
     $role = key($roles);
 
     $this->assertFalse($account->hasRole($role), 'The user currently does not have a custom role.');
-    $edit = array(
+    $edit = [
       'user_bulk_form[1]' => TRUE,
       'action' => 'user_add_role_action.' . $role,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     // Re-load the user and check their roles.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->hasRole($role), 'The user now has the custom role.');
 
-    $edit = array(
+    $edit = [
       'user_bulk_form[1]' => TRUE,
       'action' => 'user_remove_role_action.' . $role,
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     // Re-load the user and check their roles.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertFalse($account->hasRole($role), 'The user no longer has the custom role.');
 
     // Block a user using the bulk form.
     $this->assertTrue($account->isActive(), 'The user is not blocked.');
     $this->assertRaw($account->label(), 'The user is found in the table.');
-    $edit = array(
+    $edit = [
       'user_bulk_form[1]' => TRUE,
       'action' => 'user_block_user_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     // Re-load the user and check their status.
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     $this->assertTrue($account->isBlocked(), 'The user is blocked.');
     $this->assertNoRaw($account->label(), 'The user is not found in the table.');
@@ -100,16 +100,16 @@ public function testBulkForm() {
     $this->assertText($this->config('user.settings')->get('anonymous'));
 
     // Attempt to block the anonymous user.
-    $edit = array(
+    $edit = [
       'user_bulk_form[0]' => TRUE,
       'action' => 'user_block_user_action',
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply to selected items'));
     $anonymous_account = $user_storage->load(0);
     $this->assertTrue($anonymous_account->isBlocked(), 'Ensure the anonymous user got blocked.');
 
     // Test the list of available actions with a value that contains a dot.
-    $this->drupalLogin($this->drupalCreateUser(array('administer permissions', 'administer views', 'administer users')));
+    $this->drupalLogin($this->drupalCreateUser(['administer permissions', 'administer views', 'administer users']));
     $action_id = 'user_add_role_action.' . $role;
     $edit = [
       'options[include_exclude]' => 'exclude',
@@ -134,7 +134,7 @@ public function testBulkFormCombineFilter() {
     User::load($this->users[0]->id());
     $view = Views::getView('test_user_bulk_form_combine_filter');
     $errors = $view->validate();
-    $this->assertEqual(reset($errors['default']), t('Field %field set in %filter is not usable for this filter type. Combined field filter only works for simple fields.', array('%field' => 'User: Bulk update', '%filter' => 'Global: Combine fields filter')));
+    $this->assertEqual(reset($errors['default']), t('Field %field set in %filter is not usable for this filter type. Combined field filter only works for simple fields.', ['%field' => 'User: Bulk update', '%filter' => 'Global: Combine fields filter']));
   }
 
 }
diff --git a/core/modules/user/src/Tests/Views/FilterPermissionUiTest.php b/core/modules/user/src/Tests/Views/FilterPermissionUiTest.php
index e55c6c3..f9444bc 100644
--- a/core/modules/user/src/Tests/Views/FilterPermissionUiTest.php
+++ b/core/modules/user/src/Tests/Views/FilterPermissionUiTest.php
@@ -30,7 +30,7 @@ class FilterPermissionUiTest extends ViewTestBase {
   protected function setUp() {
     parent::setUp(TRUE);
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
     $this->enableViewsTestModule();
   }
 
diff --git a/core/modules/user/src/Tests/Views/HandlerArgumentUserUidTest.php b/core/modules/user/src/Tests/Views/HandlerArgumentUserUidTest.php
index d84a542..73ee53f 100644
--- a/core/modules/user/src/Tests/Views/HandlerArgumentUserUidTest.php
+++ b/core/modules/user/src/Tests/Views/HandlerArgumentUserUidTest.php
@@ -16,7 +16,7 @@ class HandlerArgumentUserUidTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_user_uid_argument');
+  public static $testViews = ['test_user_uid_argument'];
 
   /**
    * Tests the generated title of an user: uid argument.
@@ -25,29 +25,29 @@ public function testArgumentTitle() {
     $view = Views::getView('test_user_uid_argument');
 
     // Tests an invalid user uid.
-    $this->executeView($view, array(rand(1000, 10000)));
+    $this->executeView($view, [rand(1000, 10000)]);
     $this->assertFalse($view->getTitle());
     $view->destroy();
 
     // Tests a valid user.
     $account = $this->drupalCreateUser();
-    $this->executeView($view, array($account->id()));
+    $this->executeView($view, [$account->id()]);
     $this->assertEqual($view->getTitle(), $account->label());
     $view->destroy();
 
     // Tests the anonymous user.
     $anonymous = $this->config('user.settings')->get('anonymous');
-    $this->executeView($view, array(0));
+    $this->executeView($view, [0]);
     $this->assertEqual($view->getTitle(), $anonymous);
     $view->destroy();
 
     $view->getDisplay()->getHandler('argument', 'uid')->options['break_phrase'] = TRUE;
-    $this->executeView($view, array($account->id() . ',0'));
+    $this->executeView($view, [$account->id() . ',0']);
     $this->assertEqual($view->getTitle(), $account->label() . ', ' . $anonymous);
     $view->destroy();
 
     $view->getDisplay()->getHandler('argument', 'uid')->options['break_phrase'] = TRUE;
-    $this->executeView($view, array('0,' . $account->id()));
+    $this->executeView($view, ['0,' . $account->id()]);
     $this->assertEqual($view->getTitle(), $anonymous . ', ' . $account->label());
     $view->destroy();
   }
diff --git a/core/modules/user/src/Tests/Views/HandlerFieldRoleTest.php b/core/modules/user/src/Tests/Views/HandlerFieldRoleTest.php
index de7c65c..6a5ebfc 100644
--- a/core/modules/user/src/Tests/Views/HandlerFieldRoleTest.php
+++ b/core/modules/user/src/Tests/Views/HandlerFieldRoleTest.php
@@ -18,18 +18,18 @@ class HandlerFieldRoleTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_views_handler_field_role');
+  public static $testViews = ['test_views_handler_field_role'];
 
   public function testRole() {
     // Create a couple of roles for the view.
     $rolename_a = 'a' . $this->randomMachineName(8);
-    $this->drupalCreateRole(array('access content'), $rolename_a, '<em>' . $rolename_a . '</em>', 9);
+    $this->drupalCreateRole(['access content'], $rolename_a, '<em>' . $rolename_a . '</em>', 9);
 
     $rolename_b = 'b' . $this->randomMachineName(8);
-    $this->drupalCreateRole(array('access content'), $rolename_b, $rolename_b, 8);
+    $this->drupalCreateRole(['access content'], $rolename_b, $rolename_b, 8);
 
     $rolename_not_assigned = $this->randomMachineName(8);
-    $this->drupalCreateRole(array('access content'), $rolename_not_assigned, $rolename_not_assigned);
+    $this->drupalCreateRole(['access content'], $rolename_not_assigned, $rolename_not_assigned);
 
     // Add roles to user 1.
     $user = User::load(1);
diff --git a/core/modules/user/src/Tests/Views/HandlerFieldUserNameTest.php b/core/modules/user/src/Tests/Views/HandlerFieldUserNameTest.php
index 6af1644..39a3ec8 100644
--- a/core/modules/user/src/Tests/Views/HandlerFieldUserNameTest.php
+++ b/core/modules/user/src/Tests/Views/HandlerFieldUserNameTest.php
@@ -18,13 +18,13 @@ class HandlerFieldUserNameTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_views_handler_field_user_name');
+  public static $testViews = ['test_views_handler_field_user_name'];
 
   public function testUserName() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = \Drupal::service('renderer');
 
-    $new_user = $this->drupalCreateUser(array('access user profiles'));
+    $new_user = $this->drupalCreateUser(['access user profiles']);
     $this->drupalLogin($new_user);
 
     // Set defaults.
diff --git a/core/modules/user/src/Tests/Views/HandlerFilterUserNameTest.php b/core/modules/user/src/Tests/Views/HandlerFilterUserNameTest.php
index eaf24aa..c4f7065 100644
--- a/core/modules/user/src/Tests/Views/HandlerFilterUserNameTest.php
+++ b/core/modules/user/src/Tests/Views/HandlerFilterUserNameTest.php
@@ -19,47 +19,47 @@ class HandlerFilterUserNameTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'user_test_views');
+  public static $modules = ['views_ui', 'user_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_user_name');
+  public static $testViews = ['test_user_name'];
 
   /**
    * Accounts used by this test.
    *
    * @var array
    */
-  protected $accounts = array();
+  protected $accounts = [];
 
   /**
    * Usernames of $accounts.
    *
    * @var array
    */
-  protected $names = array();
+  protected $names = [];
 
   /**
    * Stores the column map for this testCase.
    *
    * @var array
    */
-  public $columnMap = array(
+  public $columnMap = [
     'uid' => 'uid',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
 
     $this->enableViewsTestModule();
 
-    $this->accounts = array();
-    $this->names = array();
+    $this->accounts = [];
+    $this->names = [];
     for ($i = 0; $i < 3; $i++) {
       $this->accounts[] = $account = $this->drupalCreateUser();
       $this->names[] = $account->label();
@@ -74,10 +74,10 @@ public function testUserNameApi() {
     $view = Views::getView('test_user_name');
 
     $view->initHandlers();
-    $view->filter['uid']->value = array($this->accounts[0]->id());
+    $view->filter['uid']->value = [$this->accounts[0]->id()];
 
     $this->executeView($view);
-    $this->assertIdenticalResultset($view, array(array('uid' => $this->accounts[0]->id())), $this->columnMap);
+    $this->assertIdenticalResultset($view, [['uid' => $this->accounts[0]->id()]], $this->columnMap);
 
     $this->assertEqual($view->filter['uid']->getValueOptions(), NULL);
   }
@@ -86,40 +86,40 @@ public function testUserNameApi() {
    * Tests using the user interface.
    */
   public function testAdminUserInterface() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     $path = 'admin/structure/views/nojs/handler/test_user_name/default/filter/uid';
     $this->drupalGet($path);
 
     // Pass in an invalid username, the validation should catch it.
-    $users = array($this->randomMachineName());
+    $users = [$this->randomMachineName()];
     $users = array_map('strtolower', $users);
-    $edit = array(
+    $edit = [
       'options[value]' => implode(', ', $users)
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
-    $this->assertRaw(t('There are no entities matching "%value".', array('%value' => implode(', ', $users))));
+    $this->assertRaw(t('There are no entities matching "%value".', ['%value' => implode(', ', $users)]));
 
     // Pass in an invalid username and a valid username.
     $random_name = $this->randomMachineName();
-    $users = array($random_name, $this->names[0]);
+    $users = [$random_name, $this->names[0]];
     $users = array_map('strtolower', $users);
-    $edit = array(
+    $edit = [
       'options[value]' => implode(', ', $users)
-    );
-    $users = array($users[0]);
+    ];
+    $users = [$users[0]];
     $this->drupalPostForm($path, $edit, t('Apply'));
-    $this->assertRaw(t('There are no entities matching "%value".', array('%value' => implode(', ', $users))));
+    $this->assertRaw(t('There are no entities matching "%value".', ['%value' => implode(', ', $users)]));
 
     // Pass in just valid usernames.
     $users = $this->names;
     $users = array_map('strtolower', $users);
-    $edit = array(
+    $edit = [
       'options[value]' => implode(', ', $users)
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
-    $this->assertNoRaw(t('There are no entities matching "%value".', array('%value' => implode(', ', $users))));
+    $this->assertNoRaw(t('There are no entities matching "%value".', ['%value' => implode(', ', $users)]));
   }
 
   /**
@@ -128,14 +128,14 @@ public function testAdminUserInterface() {
   public function testExposedFilter() {
     $path = 'test_user_name';
 
-    $options = array();
+    $options = [];
 
     // Pass in an invalid username, the validation should catch it.
-    $users = array($this->randomMachineName());
+    $users = [$this->randomMachineName()];
     $users = array_map('strtolower', $users);
     $options['query']['uid'] = implode(', ', $users);
     $this->drupalGet($path, $options);
-    $this->assertRaw(t('There are no entities matching "%value".', array('%value' => implode(', ', $users))));
+    $this->assertRaw(t('There are no entities matching "%value".', ['%value' => implode(', ', $users)]));
 
     // Pass in an invalid target_id in for the entity_autocomplete value format.
     // There should be no errors, but all results should be returned as the
@@ -149,13 +149,13 @@ public function testExposedFilter() {
     }
 
     // Pass in an invalid username and a valid username.
-    $users = array($this->randomMachineName(), $this->names[0]);
+    $users = [$this->randomMachineName(), $this->names[0]];
     $users = array_map('strtolower', $users);
     $options['query']['uid'] = implode(', ', $users);
-    $users = array($users[0]);
+    $users = [$users[0]];
 
     $this->drupalGet($path, $options);
-    $this->assertRaw(t('There are no entities matching "%value".', array('%value' => implode(', ', $users))));
+    $this->assertRaw(t('There are no entities matching "%value".', ['%value' => implode(', ', $users)]));
 
     // Pass in just valid usernames.
     $users = $this->names;
diff --git a/core/modules/user/src/Tests/Views/RelationshipRepresentativeNodeTest.php b/core/modules/user/src/Tests/Views/RelationshipRepresentativeNodeTest.php
index 3ad6346..14f4412 100644
--- a/core/modules/user/src/Tests/Views/RelationshipRepresentativeNodeTest.php
+++ b/core/modules/user/src/Tests/Views/RelationshipRepresentativeNodeTest.php
@@ -16,7 +16,7 @@ class RelationshipRepresentativeNodeTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_groupwise_user');
+  public static $testViews = ['test_groupwise_user'];
 
   /**
    * Tests the relationship.
@@ -24,17 +24,17 @@ class RelationshipRepresentativeNodeTest extends UserTestBase {
   public function testRelationship() {
     $view = Views::getView('test_groupwise_user');
     $this->executeView($view);
-    $map = array('node_field_data_users_field_data_nid' => 'nid', 'uid' => 'uid');
-    $expected_result = array(
-      array(
+    $map = ['node_field_data_users_field_data_nid' => 'nid', 'uid' => 'uid'];
+    $expected_result = [
+      [
         'uid' => $this->users[1]->id(),
         'nid' => $this->nodes[1]->id(),
-      ),
-      array(
+      ],
+      [
         'uid' => $this->users[0]->id(),
         'nid' => $this->nodes[0]->id(),
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $map);
   }
 
diff --git a/core/modules/user/src/Tests/Views/RolesRidArgumentTest.php b/core/modules/user/src/Tests/Views/RolesRidArgumentTest.php
index a658b22..58782e9 100644
--- a/core/modules/user/src/Tests/Views/RolesRidArgumentTest.php
+++ b/core/modules/user/src/Tests/Views/RolesRidArgumentTest.php
@@ -15,7 +15,7 @@ class RolesRidArgumentTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_user_roles_rid');
+  public static $testViews = ['test_user_roles_rid'];
 
   /**
    * Tests the generated title of a user: roles argument.
diff --git a/core/modules/user/src/Tests/Views/UserChangedTest.php b/core/modules/user/src/Tests/Views/UserChangedTest.php
index 50e21e5..ddd7903 100644
--- a/core/modules/user/src/Tests/Views/UserChangedTest.php
+++ b/core/modules/user/src/Tests/Views/UserChangedTest.php
@@ -17,19 +17,19 @@ class UserChangedTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'user_test_views');
+  public static $modules = ['views_ui', 'user_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_user_changed');
+  public static $testViews = ['test_user_changed'];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
 
     $this->enableViewsTestModule();
   }
@@ -40,7 +40,7 @@ protected function setUp() {
   public function testChangedField() {
     $path = 'test_user_changed';
 
-    $options = array();
+    $options = [];
 
     $this->drupalGet($path, $options);
 
diff --git a/core/modules/user/src/Tests/Views/UserDataTest.php b/core/modules/user/src/Tests/Views/UserDataTest.php
index a55eac5..4628ae2 100644
--- a/core/modules/user/src/Tests/Views/UserDataTest.php
+++ b/core/modules/user/src/Tests/Views/UserDataTest.php
@@ -24,7 +24,7 @@ class UserDataTest extends UserTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_user_data');
+  public static $testViews = ['test_user_data'];
 
   /**
    * Tests field handler.
diff --git a/core/modules/user/src/Tests/Views/UserTestBase.php b/core/modules/user/src/Tests/Views/UserTestBase.php
index 4c8007a..c49dcb2 100644
--- a/core/modules/user/src/Tests/Views/UserTestBase.php
+++ b/core/modules/user/src/Tests/Views/UserTestBase.php
@@ -16,31 +16,31 @@
    *
    * @var array
    */
-  public static $modules = array('user_test_views', 'node');
+  public static $modules = ['user_test_views', 'node'];
 
   /**
    * Users to use during this test.
    *
    * @var array
    */
-  protected $users = array();
+  protected $users = [];
 
   /**
    * Nodes to use during this test.
    *
    * @var array
    */
-  protected $nodes = array();
+  protected $nodes = [];
 
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
 
     $this->users[] = $this->drupalCreateUser();
     $this->users[] = User::load(1);
-    $this->nodes[] = $this->drupalCreateNode(array('uid' => $this->users[0]->id()));
-    $this->nodes[] = $this->drupalCreateNode(array('uid' => 1));
+    $this->nodes[] = $this->drupalCreateNode(['uid' => $this->users[0]->id()]);
+    $this->nodes[] = $this->drupalCreateNode(['uid' => 1]);
   }
 
 }
diff --git a/core/modules/user/src/UserAccessControlHandler.php b/core/modules/user/src/UserAccessControlHandler.php
index dd7142c..712b32a 100644
--- a/core/modules/user/src/UserAccessControlHandler.php
+++ b/core/modules/user/src/UserAccessControlHandler.php
@@ -80,9 +80,9 @@ protected function checkAccess(EntityInterface $entity, $operation, AccountInter
    */
   protected function checkFieldAccess($operation, FieldDefinitionInterface $field_definition, AccountInterface $account, FieldItemListInterface $items = NULL) {
     // Fields that are not implicitly allowed to administrative users.
-    $explicit_check_fields = array(
+    $explicit_check_fields = [
       'pass',
-    );
+    ];
 
     // Administrative users are allowed to edit and view all fields.
     if (!in_array($field_definition->getName(), $explicit_check_fields) && $account->hasPermission('administer users')) {
diff --git a/core/modules/user/src/UserAuth.php b/core/modules/user/src/UserAuth.php
index 9fbcf09..43ce31b 100644
--- a/core/modules/user/src/UserAuth.php
+++ b/core/modules/user/src/UserAuth.php
@@ -44,7 +44,7 @@ public function authenticate($username, $password) {
     $uid = FALSE;
 
     if (!empty($username) && strlen($password) > 0) {
-      $account_search = $this->entityManager->getStorage('user')->loadByProperties(array('name' => $username));
+      $account_search = $this->entityManager->getStorage('user')->loadByProperties(['name' => $username]);
 
       if ($account = reset($account_search)) {
         if ($this->passwordChecker->check($password, $account->getPassword())) {
diff --git a/core/modules/user/src/UserData.php b/core/modules/user/src/UserData.php
index 3418c83..735c3de 100644
--- a/core/modules/user/src/UserData.php
+++ b/core/modules/user/src/UserData.php
@@ -50,7 +50,7 @@ public function get($module, $uid = NULL, $name = NULL) {
     }
     // If $module and $uid was passed, return the name/value pairs.
     elseif (isset($uid)) {
-      $return = array();
+      $return = [];
       foreach ($result as $record) {
         $return[$record->name] = ($record->serialized ? unserialize($record->value) : $record->value);
       }
@@ -58,7 +58,7 @@ public function get($module, $uid = NULL, $name = NULL) {
     }
     // If $module and $name was passed, return the uid/value pairs.
     elseif (isset($name)) {
-      $return = array();
+      $return = [];
       foreach ($result as $record) {
         $return[$record->uid] = ($record->serialized ? unserialize($record->value) : $record->value);
       }
@@ -66,7 +66,7 @@ public function get($module, $uid = NULL, $name = NULL) {
     }
     // If only $module was passed, return data keyed by uid and name.
     else {
-      $return = array();
+      $return = [];
       foreach ($result as $record) {
         $return[$record->uid][$record->name] = ($record->serialized ? unserialize($record->value) : $record->value);
       }
@@ -84,15 +84,15 @@ public function set($module, $uid, $name, $value) {
       $serialized = 1;
     }
     $this->connection->merge('users_data')
-      ->keys(array(
+      ->keys([
         'uid' => $uid,
         'module' => $module,
         'name' => $name,
-      ))
-      ->fields(array(
+      ])
+      ->fields([
         'value' => $value,
         'serialized' => $serialized,
-      ))
+      ])
       ->execute();
   }
 
diff --git a/core/modules/user/src/UserListBuilder.php b/core/modules/user/src/UserListBuilder.php
index 9dae5f4..306d046 100644
--- a/core/modules/user/src/UserListBuilder.php
+++ b/core/modules/user/src/UserListBuilder.php
@@ -79,36 +79,36 @@ public function load() {
    * {@inheritdoc}
    */
   public function buildHeader() {
-    $header = array(
-      'username' => array(
+    $header = [
+      'username' => [
         'data' => $this->t('Username'),
         'field' => 'name',
         'specifier' => 'name',
-      ),
-      'status' => array(
+      ],
+      'status' => [
         'data' => $this->t('Status'),
         'field' => 'status',
         'specifier' => 'status',
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-      'roles' => array(
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+      'roles' => [
         'data' => $this->t('Roles'),
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-      'member_for' => array(
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+      'member_for' => [
         'data' => $this->t('Member for'),
         'field' => 'created',
         'specifier' => 'created',
         'sort' => 'desc',
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-      'access' => array(
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+      'access' => [
         'data' => $this->t('Last access'),
         'field' => 'access',
         'specifier' => 'access',
-        'class' => array(RESPONSIVE_PRIORITY_LOW),
-      ),
-    );
+        'class' => [RESPONSIVE_PRIORITY_LOW],
+      ],
+    ];
     return $header + parent::buildHeader();
   }
 
@@ -116,25 +116,25 @@ public function buildHeader() {
    * {@inheritdoc}
    */
   public function buildRow(EntityInterface $entity) {
-    $row['username']['data'] = array(
+    $row['username']['data'] = [
       '#theme' => 'username',
       '#account' => $entity,
-    );
+    ];
     $row['status'] = $entity->isActive() ? $this->t('active') : $this->t('blocked');
 
     $roles = user_role_names(TRUE);
     unset($roles[RoleInterface::AUTHENTICATED_ID]);
-    $users_roles = array();
+    $users_roles = [];
     foreach ($entity->getRoles() as $role) {
       if (isset($roles[$role])) {
         $users_roles[] = $roles[$role];
       }
     }
     asort($users_roles);
-    $row['roles']['data'] = array(
+    $row['roles']['data'] = [
       '#theme' => 'item_list',
       '#items' => $users_roles,
-    );
+    ];
     $options = [
       'return_as_object' => TRUE,
     ];
diff --git a/core/modules/user/src/UserStorage.php b/core/modules/user/src/UserStorage.php
index 1c5a54a..809f3e3 100644
--- a/core/modules/user/src/UserStorage.php
+++ b/core/modules/user/src/UserStorage.php
@@ -40,11 +40,11 @@ protected function isColumnSerial($table_name, $schema_name) {
    */
   public function updateLastLoginTimestamp(UserInterface $account) {
     $this->database->update('users_field_data')
-      ->fields(array('login' => $account->getLastLoginTime()))
+      ->fields(['login' => $account->getLastLoginTime()])
       ->condition('uid', $account->id())
       ->execute();
     // Ensure that the entity cache is cleared.
-    $this->resetCache(array($account->id()));
+    $this->resetCache([$account->id()]);
   }
 
   /**
@@ -52,13 +52,13 @@ public function updateLastLoginTimestamp(UserInterface $account) {
    */
   public function updateLastAccessTimestamp(AccountInterface $account, $timestamp) {
     $this->database->update('users_field_data')
-      ->fields(array(
+      ->fields([
         'access' => $timestamp,
-      ))
+      ])
       ->condition('uid', $account->id())
       ->execute();
     // Ensure that the entity cache is cleared.
-    $this->resetCache(array($account->id()));
+    $this->resetCache([$account->id()]);
   }
 
   /**
diff --git a/core/modules/user/src/UserStorageSchema.php b/core/modules/user/src/UserStorageSchema.php
index c8c3e46..5e590b8 100644
--- a/core/modules/user/src/UserStorageSchema.php
+++ b/core/modules/user/src/UserStorageSchema.php
@@ -17,9 +17,9 @@ class UserStorageSchema extends SqlContentEntityStorageSchema {
   protected function getEntitySchema(ContentEntityTypeInterface $entity_type, $reset = FALSE) {
     $schema = parent::getEntitySchema($entity_type, $reset);
 
-    $schema['users_field_data']['unique keys'] += array(
-      'user__name' => array('name', 'langcode'),
-    );
+    $schema['users_field_data']['unique keys'] += [
+      'user__name' => ['name', 'langcode'],
+    ];
 
     return $schema;
   }
diff --git a/core/modules/user/src/UserViewsData.php b/core/modules/user/src/UserViewsData.php
index e222911..2c79114 100644
--- a/core/modules/user/src/UserViewsData.php
+++ b/core/modules/user/src/UserViewsData.php
@@ -21,15 +21,15 @@ public function getViewsData() {
     $data['users_field_data']['table']['wizard_id'] = 'user';
 
     $data['users_field_data']['uid']['argument']['id'] = 'user_uid';
-    $data['users_field_data']['uid']['argument'] += array(
+    $data['users_field_data']['uid']['argument'] += [
       'name table' => 'users_field_data',
       'name field' => 'name',
       'empty field name' => \Drupal::config('user.settings')->get('anonymous'),
-    );
+    ];
     $data['users_field_data']['uid']['filter']['id'] = 'user_name';
     $data['users_field_data']['uid']['filter']['title'] = $this->t('Name (autocomplete)');
     $data['users_field_data']['uid']['filter']['help'] = $this->t('The user or author name. Uses an autocomplete widget to find a user name, the actual filter uses the resulting user ID.');
-    $data['users_field_data']['uid']['relationship'] = array(
+    $data['users_field_data']['uid']['relationship'] = [
       'title' => $this->t('Content authored'),
       'help' => $this->t('Relate content to the user who created it. This relationship will create one record for each content item created by the user.'),
       'id' => 'standard',
@@ -37,19 +37,19 @@ public function getViewsData() {
       'base field' => 'uid',
       'field' => 'uid',
       'label' => $this->t('nodes'),
-    );
+    ];
 
-    $data['users_field_data']['uid_raw'] = array(
+    $data['users_field_data']['uid_raw'] = [
       'help' => $this->t('The raw numeric user ID.'),
       'real field' => 'uid',
-      'filter' => array(
+      'filter' => [
         'title' => $this->t('The user ID'),
         'id' => 'numeric',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['uid_representative'] = array(
-      'relationship' => array(
+    $data['users_field_data']['uid_representative'] = [
+      'relationship' => [
         'title' => $this->t('Representative node'),
         'label'  => $this->t('Representative node'),
         'help' => $this->t('Obtains a single representative node for each user, according to a chosen sort criterion.'),
@@ -61,18 +61,18 @@ public function getViewsData() {
         'base' => 'node_field_data',
         'field' => 'nid',
         'relationship' => 'node_field_data:uid'
-      ),
-    );
+      ],
+    ];
 
-    $data['users']['uid_current'] = array(
+    $data['users']['uid_current'] = [
       'real field' => 'uid',
       'title' => $this->t('Current'),
       'help' => $this->t('Filter the view to the currently logged in user.'),
-      'filter' => array(
+      'filter' => [
         'id' => 'user_current',
         'type' => 'yes-no',
-      ),
-    );
+      ],
+    ];
 
     $data['users_field_data']['name']['help'] = $this->t('The user or author name.');
     $data['users_field_data']['name']['field']['default_formatter'] = 'user_name';
@@ -90,178 +90,178 @@ public function getViewsData() {
     $data['users_field_data']['preferred_admin_langcode']['title'] = $this->t('Preferred admin language');
     $data['users_field_data']['preferred_admin_langcode']['help'] = $this->t('Preferred administrative language of the user');
 
-    $data['users_field_data']['created_fulldate'] = array(
+    $data['users_field_data']['created_fulldate'] = [
       'title' => $this->t('Created date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['created_year_month'] = array(
+    $data['users_field_data']['created_year_month'] = [
       'title' => $this->t('Created year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['created_year'] = array(
+    $data['users_field_data']['created_year'] = [
       'title' => $this->t('Created year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['created_month'] = array(
+    $data['users_field_data']['created_month'] = [
       'title' => $this->t('Created month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['created_day'] = array(
+    $data['users_field_data']['created_day'] = [
       'title' => $this->t('Created day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['created_week'] = array(
+    $data['users_field_data']['created_week'] = [
       'title' => $this->t('Created week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'created',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
     $data['users_field_data']['status']['filter']['label'] = $this->t('Active');
     $data['users_field_data']['status']['filter']['type'] = 'yes-no';
 
     $data['users_field_data']['changed']['title'] = $this->t('Updated date');
 
-    $data['users_field_data']['changed_fulldate'] = array(
+    $data['users_field_data']['changed_fulldate'] = [
       'title' => $this->t('Updated date'),
       'help' => $this->t('Date in the form of CCYYMMDD.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_fulldate',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['changed_year_month'] = array(
+    $data['users_field_data']['changed_year_month'] = [
       'title' => $this->t('Updated year + month'),
       'help' => $this->t('Date in the form of YYYYMM.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['changed_year'] = array(
+    $data['users_field_data']['changed_year'] = [
       'title' => $this->t('Updated year'),
       'help' => $this->t('Date in the form of YYYY.'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_year',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['changed_month'] = array(
+    $data['users_field_data']['changed_month'] = [
       'title' => $this->t('Updated month'),
       'help' => $this->t('Date in the form of MM (01 - 12).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_month',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['changed_day'] = array(
+    $data['users_field_data']['changed_day'] = [
       'title' => $this->t('Updated day'),
       'help' => $this->t('Date in the form of DD (01 - 31).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_day',
-      ),
-    );
+      ],
+    ];
 
-    $data['users_field_data']['changed_week'] = array(
+    $data['users_field_data']['changed_week'] = [
       'title' => $this->t('Updated week'),
       'help' => $this->t('Date in the form of WW (01 - 53).'),
-      'argument' => array(
+      'argument' => [
         'field' => 'changed',
         'id' => 'date_week',
-      ),
-    );
+      ],
+    ];
 
-    $data['users']['data'] = array(
+    $data['users']['data'] = [
       'title' => $this->t('Data'),
       'help' => $this->t('Provides access to the user data service.'),
       'real field' => 'uid',
-      'field' => array(
+      'field' => [
         'id' => 'user_data',
-      ),
-    );
+      ],
+    ];
 
-    $data['users']['user_bulk_form'] = array(
+    $data['users']['user_bulk_form'] = [
       'title' => $this->t('Bulk update'),
       'help' => $this->t('Add a form element that lets you run operations on multiple users.'),
-      'field' => array(
+      'field' => [
         'id' => 'user_bulk_form',
-      ),
-    );
+      ],
+    ];
 
     $data['user__roles']['table']['group']  = $this->t('User');
 
-    $data['user__roles']['table']['join'] = array(
-      'users_field_data' => array(
+    $data['user__roles']['table']['join'] = [
+      'users_field_data' => [
         'left_field' => 'uid',
         'field' => 'entity_id',
-      ),
-    );
+      ],
+    ];
 
-    $data['user__roles']['roles_target_id'] = array(
+    $data['user__roles']['roles_target_id'] = [
       'title' => $this->t('Roles'),
       'help' => $this->t('Roles that a user belongs to.'),
-      'field' => array(
+      'field' => [
         'id' => 'user_roles',
         'no group by' => TRUE,
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'user_roles',
         'allow empty' => TRUE,
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'user__roles_rid',
         'name table' => 'role',
         'name field' => 'name',
         'empty field name' => $this->t('No role'),
         'zero is null' => TRUE,
         'numeric' => TRUE,
-      ),
-    );
+      ],
+    ];
 
-    $data['user__roles']['permission'] = array(
+    $data['user__roles']['permission'] = [
       'title' => $this->t('Permission'),
       'help' => $this->t('The user permissions.'),
-      'field' => array(
+      'field' => [
         'id' => 'user_permissions',
         'no group by' => TRUE,
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'user_permissions',
         'real field' => 'roles_target_id',
-      ),
-    );
+      ],
+    ];
 
     return $data;
   }
diff --git a/core/modules/user/tests/fixtures/update/drupal-8.user-email-token-2587275.php b/core/modules/user/tests/fixtures/update/drupal-8.user-email-token-2587275.php
index 75ec703..eaa2a9a 100644
--- a/core/modules/user/tests/fixtures/update/drupal-8.user-email-token-2587275.php
+++ b/core/modules/user/tests/fixtures/update/drupal-8.user-email-token-2587275.php
@@ -14,9 +14,9 @@
 // already.
 $connection->delete('config')->condition('name', 'user.mail')->execute();
 $connection->insert('config')
-  ->fields(array('collection', 'name', 'data'))
-  ->values(array(
+  ->fields(['collection', 'name', 'data'])
+  ->values([
   'collection' => '',
   'name' => 'user.mail',
   'data' => "a:10:{s:14:\"cancel_confirm\";a:2:{s:4:\"body\";s:369:\"[user:name],\n\nA request to cancel your account has been made at [site:name].\n\nYou may now cancel your account on [site:url-brief] by clicking this link or copying and pasting it into your browser:\n\n[user:cancel-url]\n\nNOTE: The cancellation of your account is not reversible.\n\nThis link expires in one day and nothing will happen if it is not used.\n\n--  [site:name] team\";s:7:\"subject\";s:59:\"Account cancellation request for [user:name] at [site:name]\";}s:14:\"password_reset\";a:2:{s:4:\"body\";s:397:\"[user:name],\n\nA request to reset the password for your account has been made at [site:name].\n\nYou may now log in by clicking this link or copying and pasting it to your browser:\n\n[user:one-time-login-url]\n\nThis link can only be used once to log in and will lead you to a page where you can set your password. It expires after one day and nothing will happen if it's not used.\n\n--  [site:name] team\";s:7:\"subject\";s:60:\"Replacement login information for [user:name] at [site:name]\";}s:22:\"register_admin_created\";a:2:{s:4:\"body\";s:463:\"[user:name],\n\nA site administrator at [site:name] has created an account for you. You may now log in by clicking this link or copying and pasting it to your browser:\n\n[user:one-time-login-url]\n\nThis link can only be used once to log in and will lead you to a page where you can set your password.\n\nAfter setting your password, you will be able to log in at [site:login-url] in the future using:\n\nusername: [user:name]\npassword: Your password\n\n--  [site:name] team\";s:7:\"subject\";s:58:\"An administrator created an account for you at [site:name]\";}s:29:\"register_no_approval_required\";a:2:{s:4:\"body\";s:437:\"[user:name],\n\nThank you for registering at [site:name]. You may now log in by clicking this link or copying and pasting it to your browser:\n\n[user:one-time-login-url]\n\nThis link can only be used once to log in and will lead you to a page where you can set your password.\n\nAfter setting your password, you will be able to log in at [site:login-url] in the future using:\n\nusername: [user:name]\npassword: Your password\n\n--  [site:name] team\";s:7:\"subject\";s:46:\"Account details for [user:name] at [site:name]\";}s:25:\"register_pending_approval\";a:2:{s:4:\"body\";s:281:\"[user:name],\n\nThank you for registering at [site:name]. Your application for an account is currently pending approval. Once it has been approved, you will receive another email containing information about how to log in, set your password, and other details.\n\n\n--  [site:name] team\";s:7:\"subject\";s:71:\"Account details for [user:name] at [site:name] (pending admin approval)\";}s:31:\"register_pending_approval_admin\";a:2:{s:4:\"body\";s:56:\"[user:name] has applied for an account.\n\n[user:edit-url]\";s:7:\"subject\";s:71:\"Account details for [user:name] at [site:name] (pending admin approval)\";}s:16:\"status_activated\";a:2:{s:4:\"body\";s:446:\"[user:name],\n\nYour account at [site:name] has been activated.\n\nYou may now log in by clicking this link or copying and pasting it into your browser:\n\n[user:one-time-login-url]\n\nThis link can only be used once to log in and will lead you to a page where you can set your password.\n\nAfter setting your password, you will be able to log in at [site:login-url] in the future using:\n\nusername: [user:name]\npassword: Your password\n\n--  [site:name] team\";s:7:\"subject\";s:57:\"Account details for [user:name] at [site:name] (approved)\";}s:14:\"status_blocked\";a:2:{s:4:\"body\";s:89:\"[user:name],\n\nYour account on [site:account-name] has been blocked.\n\n--  [site:name] team\";s:7:\"subject\";s:56:\"Account details for [user:name] at [site:name] (blocked)\";}s:15:\"status_canceled\";a:2:{s:4:\"body\";s:82:\"[user:name],\n\nYour account on [site:name] has been canceled.\n\n--  [site:name] team\";s:7:\"subject\";s:57:\"Account details for [user:name] at [site:name] (canceled)\";}s:8:\"langcode\";s:2:\"en\";}"
-))->execute();
+])->execute();
diff --git a/core/modules/user/tests/modules/user_hooks_test/user_hooks_test.module b/core/modules/user/tests/modules/user_hooks_test/user_hooks_test.module
index a036c65..9baf8ab 100644
--- a/core/modules/user/tests/modules/user_hooks_test/user_hooks_test.module
+++ b/core/modules/user/tests/modules/user_hooks_test/user_hooks_test.module
@@ -13,7 +13,7 @@
 function user_hooks_test_user_format_name_alter(&$name, $account) {
   if (\Drupal::state()->get('user_hooks_test_user_format_name_alter', FALSE)) {
     if (\Drupal::state()->get('user_hooks_test_user_format_name_alter_safe', FALSE)) {
-      $name = SafeMarkup::format('<em>@uid</em>', array('@uid' => $account->id()));
+      $name = SafeMarkup::format('<em>@uid</em>', ['@uid' => $account->id()]);
     }
     else {
       $name = '<em>' . $account->id() . '</em>';
diff --git a/core/modules/user/tests/src/Functional/UserCacheTagsTest.php b/core/modules/user/tests/src/Functional/UserCacheTagsTest.php
index d4455ff..a9e9857 100644
--- a/core/modules/user/tests/src/Functional/UserCacheTagsTest.php
+++ b/core/modules/user/tests/src/Functional/UserCacheTagsTest.php
@@ -17,7 +17,7 @@ class UserCacheTagsTest extends EntityWithUriCacheTagsTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/user/tests/src/Functional/UserCreateFailMailTest.php b/core/modules/user/tests/src/Functional/UserCreateFailMailTest.php
index d844b0a..38f2514 100644
--- a/core/modules/user/tests/src/Functional/UserCreateFailMailTest.php
+++ b/core/modules/user/tests/src/Functional/UserCreateFailMailTest.php
@@ -16,30 +16,30 @@ class UserCreateFailMailTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('system_mail_failure_test');
+  public static $modules = ['system_mail_failure_test'];
 
   /**
    * Tests the create user administration page.
    */
   public function testUserAdd() {
-    $user = $this->drupalCreateUser(array('administer users'));
+    $user = $this->drupalCreateUser(['administer users']);
     $this->drupalLogin($user);
 
     // Replace the mail functionality with a fake, malfunctioning service.
     $this->config('system.mail')->set('interface.default', 'test_php_mail_failure')->save();
     // Create a user, but fail to send an email.
     $name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'name' => $name,
       'mail' => $this->randomMachineName() . '@example.com',
       'pass[pass1]' => $pass = $this->randomString(),
       'pass[pass2]' => $pass,
       'notify' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/people/create', $edit, t('Create new account'));
 
     $this->assertText(t('Unable to send email. Contact the site administrator if the problem persists.'));
-    $this->assertNoText(t('A welcome message with further instructions has been emailed to the new user @name.', array('@name' => $edit['name'])));
+    $this->assertNoText(t('A welcome message with further instructions has been emailed to the new user @name.', ['@name' => $edit['name']]));
   }
 
 }
diff --git a/core/modules/user/tests/src/Functional/UserDeleteTest.php b/core/modules/user/tests/src/Functional/UserDeleteTest.php
index c82a2f3..abfb616 100644
--- a/core/modules/user/tests/src/Functional/UserDeleteTest.php
+++ b/core/modules/user/tests/src/Functional/UserDeleteTest.php
@@ -17,16 +17,16 @@ class UserDeleteTest extends BrowserTestBase {
    */
   function testUserDeleteMultiple() {
     // Create a few users with permissions, so roles will be created.
-    $user_a = $this->drupalCreateUser(array('access user profiles'));
-    $user_b = $this->drupalCreateUser(array('access user profiles'));
-    $user_c = $this->drupalCreateUser(array('access user profiles'));
+    $user_a = $this->drupalCreateUser(['access user profiles']);
+    $user_b = $this->drupalCreateUser(['access user profiles']);
+    $user_c = $this->drupalCreateUser(['access user profiles']);
 
-    $uids = array($user_a->id(), $user_b->id(), $user_c->id());
+    $uids = [$user_a->id(), $user_b->id(), $user_c->id()];
 
     // These users should have a role
     $query = db_select('user__roles', 'r');
     $roles_created = $query
-      ->fields('r', array('entity_id'))
+      ->fields('r', ['entity_id'])
       ->condition('entity_id', $uids, 'IN')
       ->countQuery()
       ->execute()
@@ -40,16 +40,16 @@ function testUserDeleteMultiple() {
     // Test if the roles assignments are deleted.
     $query = db_select('user__roles', 'r');
     $roles_after_deletion = $query
-      ->fields('r', array('entity_id'))
+      ->fields('r', ['entity_id'])
       ->condition('entity_id', $uids, 'IN')
       ->countQuery()
       ->execute()
       ->fetchField();
     $this->assertTrue($roles_after_deletion == 0, 'Role assignments deleted along with users');
     // Test if the users are deleted, User::load() will return NULL.
-    $this->assertNull(User::load($user_a->id()), format_string('User with id @uid deleted.', array('@uid' => $user_a->id())));
-    $this->assertNull(User::load($user_b->id()), format_string('User with id @uid deleted.', array('@uid' => $user_b->id())));
-    $this->assertNull(User::load($user_c->id()), format_string('User with id @uid deleted.', array('@uid' => $user_c->id())));
+    $this->assertNull(User::load($user_a->id()), format_string('User with id @uid deleted.', ['@uid' => $user_a->id()]));
+    $this->assertNull(User::load($user_b->id()), format_string('User with id @uid deleted.', ['@uid' => $user_b->id()]));
+    $this->assertNull(User::load($user_c->id()), format_string('User with id @uid deleted.', ['@uid' => $user_c->id()]));
   }
 
 }
diff --git a/core/modules/user/tests/src/Functional/UserEditedOwnAccountTest.php b/core/modules/user/tests/src/Functional/UserEditedOwnAccountTest.php
index 7783eb9..29e9a17 100644
--- a/core/modules/user/tests/src/Functional/UserEditedOwnAccountTest.php
+++ b/core/modules/user/tests/src/Functional/UserEditedOwnAccountTest.php
@@ -16,7 +16,7 @@ class UserEditedOwnAccountTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('user_form_test');
+  public static $modules = ['user_form_test'];
 
   function testUserEditedOwnAccount() {
     // Change account setting 'Who can register accounts?' to Administrators
@@ -24,11 +24,11 @@ function testUserEditedOwnAccount() {
     $this->config('user.settings')->set('register', USER_REGISTER_ADMINISTRATORS_ONLY)->save();
 
     // Create a new user account and log in.
-    $account = $this->drupalCreateUser(array('change own username'));
+    $account = $this->drupalCreateUser(['change own username']);
     $this->drupalLogin($account);
 
     // Change own username.
-    $edit = array();
+    $edit = [];
     $edit['name'] = $this->randomMachineName();
     $this->drupalPostForm('user/' . $account->id() . '/edit', $edit, t('Save'));
 
diff --git a/core/modules/user/tests/src/Functional/UserEntityCallbacksTest.php b/core/modules/user/tests/src/Functional/UserEntityCallbacksTest.php
index ceb8eda..5b5a34e 100644
--- a/core/modules/user/tests/src/Functional/UserEntityCallbacksTest.php
+++ b/core/modules/user/tests/src/Functional/UserEntityCallbacksTest.php
@@ -18,7 +18,7 @@ class UserEntityCallbacksTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'user_hooks_test');
+  public static $modules = ['user', 'user_hooks_test'];
 
   /**
    * An authenticated user to use for testing.
diff --git a/core/modules/user/tests/src/Functional/UserLanguageTest.php b/core/modules/user/tests/src/Functional/UserLanguageTest.php
index e4aeb58..fcdceb8 100644
--- a/core/modules/user/tests/src/Functional/UserLanguageTest.php
+++ b/core/modules/user/tests/src/Functional/UserLanguageTest.php
@@ -17,14 +17,14 @@ class UserLanguageTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'language');
+  public static $modules = ['user', 'language'];
 
   /**
    * Test if user can change their default language.
    */
   function testUserLanguageConfiguration() {
     // User to add and remove language.
-    $admin_user = $this->drupalCreateUser(array('administer languages', 'access administration pages'));
+    $admin_user = $this->drupalCreateUser(['administer languages', 'access administration pages']);
     // User to change their default language.
     $web_user = $this->drupalCreateUser();
 
@@ -34,12 +34,12 @@ function testUserLanguageConfiguration() {
     $langcode = 'xx';
     // The English name for the language.
     $name = $this->randomMachineName(16);
-    $edit = array(
+    $edit = [
       'predefined_langcode' => 'custom',
       'langcode' => $langcode,
       'label' => $name,
       'direction' => LanguageInterface::DIRECTION_LTR,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/language/add', $edit, t('Add custom language'));
     $this->drupalLogout();
 
@@ -52,9 +52,9 @@ function testUserLanguageConfiguration() {
     // Ensure custom language is present.
     $this->assertText($name, 'Language present on form.');
     // Switch to our custom language.
-    $edit = array(
+    $edit = [
       'preferred_langcode' => $langcode,
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Save'));
     // Ensure form was submitted successfully.
     $this->assertText(t('The changes have been saved.'), 'Changes were saved.');
diff --git a/core/modules/user/tests/src/Functional/UserMailNotifyTest.php b/core/modules/user/tests/src/Functional/UserMailNotifyTest.php
index 7f5257a..57bebc0 100644
--- a/core/modules/user/tests/src/Functional/UserMailNotifyTest.php
+++ b/core/modules/user/tests/src/Functional/UserMailNotifyTest.php
@@ -49,7 +49,7 @@ public function testUserMailsSent($op, array $mail_keys) {
     $return = _user_mail_notify($op, $this->createUser());
     $this->assertTrue($return, '_user_mail_notify() returns TRUE.');
     foreach ($mail_keys as $key) {
-      $filter = array('key' => $key);
+      $filter = ['key' => $key];
       $this->assertNotEmpty($this->getMails($filter), "Mails with $key exists.");
     }
     $this->assertCount(count($mail_keys), $this->getMails(), 'The expected number of emails sent.');
diff --git a/core/modules/user/tests/src/Functional/UserRolesAssignmentTest.php b/core/modules/user/tests/src/Functional/UserRolesAssignmentTest.php
index 1701b0f..309dee2 100644
--- a/core/modules/user/tests/src/Functional/UserRolesAssignmentTest.php
+++ b/core/modules/user/tests/src/Functional/UserRolesAssignmentTest.php
@@ -13,7 +13,7 @@ class UserRolesAssignmentTest extends BrowserTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $admin_user = $this->drupalCreateUser(array('administer permissions', 'administer users'));
+    $admin_user = $this->drupalCreateUser(['administer permissions', 'administer users']);
     $this->drupalLogin($admin_user);
   }
 
@@ -22,17 +22,17 @@ protected function setUp() {
    * again.
    */
   function testAssignAndRemoveRole()  {
-    $rid = $this->drupalCreateRole(array('administer users'));
+    $rid = $this->drupalCreateRole(['administer users']);
     $account = $this->drupalCreateUser();
 
     // Assign the role to the user.
-    $this->drupalPostForm('user/' . $account->id() . '/edit', array("roles[$rid]" => $rid), t('Save'));
+    $this->drupalPostForm('user/' . $account->id() . '/edit', ["roles[$rid]" => $rid], t('Save'));
     $this->assertText(t('The changes have been saved.'));
     $this->assertFieldChecked('edit-roles-' . $rid, 'Role is assigned.');
     $this->userLoadAndCheckRoleAssigned($account, $rid);
 
     // Remove the role from the user.
-    $this->drupalPostForm('user/' . $account->id() . '/edit', array("roles[$rid]" => FALSE), t('Save'));
+    $this->drupalPostForm('user/' . $account->id() . '/edit', ["roles[$rid]" => FALSE], t('Save'));
     $this->assertText(t('The changes have been saved.'));
     $this->assertNoFieldChecked('edit-roles-' . $rid, 'Role is removed from user.');
     $this->userLoadAndCheckRoleAssigned($account, $rid, FALSE);
@@ -43,17 +43,17 @@ function testAssignAndRemoveRole()  {
    * be removed again.
    */
   function testCreateUserWithRole() {
-    $rid = $this->drupalCreateRole(array('administer users'));
+    $rid = $this->drupalCreateRole(['administer users']);
     // Create a new user and add the role at the same time.
-    $edit = array(
+    $edit = [
       'name' => $this->randomMachineName(),
       'mail' => $this->randomMachineName() . '@example.com',
       'pass[pass1]' => $pass = $this->randomString(),
       'pass[pass2]' => $pass,
       "roles[$rid]" => $rid,
-    );
+    ];
     $this->drupalPostForm('admin/people/create', $edit, t('Create new account'));
-    $this->assertText(t('Created a new user account for @name.', array('@name' => $edit['name'])));
+    $this->assertText(t('Created a new user account for @name.', ['@name' => $edit['name']]));
     // Get the newly added user.
     $account = user_load_by_name($edit['name']);
 
@@ -62,7 +62,7 @@ function testCreateUserWithRole() {
     $this->userLoadAndCheckRoleAssigned($account, $rid);
 
     // Remove the role again.
-    $this->drupalPostForm('user/' . $account->id() . '/edit', array("roles[$rid]" => FALSE), t('Save'));
+    $this->drupalPostForm('user/' . $account->id() . '/edit', ["roles[$rid]" => FALSE], t('Save'));
     $this->assertText(t('The changes have been saved.'));
     $this->assertNoFieldChecked('edit-roles-' . $rid, 'Role is removed from user.');
     $this->userLoadAndCheckRoleAssigned($account, $rid, FALSE);
@@ -81,7 +81,7 @@ function testCreateUserWithRole() {
    */
   private function userLoadAndCheckRoleAssigned($account, $rid, $is_assigned = TRUE) {
     $user_storage = $this->container->get('entity.manager')->getStorage('user');
-    $user_storage->resetCache(array($account->id()));
+    $user_storage->resetCache([$account->id()]);
     $account = $user_storage->load($account->id());
     if ($is_assigned) {
       $this->assertFalse(array_search($rid, $account->getRoles()) === FALSE, 'The role is present in the user object.');
diff --git a/core/modules/user/tests/src/Functional/UserSearchTest.php b/core/modules/user/tests/src/Functional/UserSearchTest.php
index af2fb28..7eafb4a 100644
--- a/core/modules/user/tests/src/Functional/UserSearchTest.php
+++ b/core/modules/user/tests/src/Functional/UserSearchTest.php
@@ -17,70 +17,70 @@ class UserSearchTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('search');
+  public static $modules = ['search'];
 
   function testUserSearch() {
     // Verify that a user without 'administer users' permission cannot search
     // for users by email address. Additionally, ensure that the username has a
     // plus sign to ensure searching works with that.
-    $user1 = $this->drupalCreateUser(array('access user profiles', 'search content'), "foo+bar");
+    $user1 = $this->drupalCreateUser(['access user profiles', 'search content'], "foo+bar");
     $this->drupalLogin($user1);
     $keys = $user1->getEmail();
-    $edit = array('keys' => $keys);
+    $edit = ['keys' => $keys];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText(t('Your search yielded no results.'), 'Search by email did not work for non-admin user');
     $this->assertText('no results', 'Search by email gave no-match message');
 
     // Verify that a non-matching query gives an appropriate message.
     $keys = 'nomatch';
-    $edit = array('keys' => $keys);
+    $edit = ['keys' => $keys];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText('no results', 'Non-matching search gave appropriate message');
 
     // Verify that a user with search permission can search for users by name.
     $keys = $user1->getUsername();
-    $edit = array('keys' => $keys);
+    $edit = ['keys' => $keys];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertLink($keys, 0, 'Search by username worked for non-admin user');
 
     // Verify that searching by sub-string works too.
     $subkey = substr($keys, 1, 5);
-    $edit = array('keys' => $subkey);
+    $edit = ['keys' => $subkey];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertLink($keys, 0, 'Search by username substring worked for non-admin user');
 
     // Verify that wildcard search works.
     $subkey = substr($keys, 0, 2) . '*' . substr($keys, 4, 2);
-    $edit = array('keys' => $subkey);
+    $edit = ['keys' => $subkey];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertLink($keys, 0, 'Search with wildcard worked for non-admin user');
 
     // Verify that a user with 'administer users' permission can search by
     // email.
-    $user2 = $this->drupalCreateUser(array('administer users', 'access user profiles', 'search content'));
+    $user2 = $this->drupalCreateUser(['administer users', 'access user profiles', 'search content']);
     $this->drupalLogin($user2);
     $keys = $user2->getEmail();
-    $edit = array('keys' => $keys);
+    $edit = ['keys' => $keys];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText($keys, 'Search by email works for administrative user');
     $this->assertText($user2->getUsername(), 'Search by email resulted in username on page for administrative user');
 
     // Verify that a substring works too for email.
     $subkey = substr($keys, 1, 5);
-    $edit = array('keys' => $subkey);
+    $edit = ['keys' => $subkey];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText($keys, 'Search by email substring works for administrative user');
     $this->assertText($user2->getUsername(), 'Search by email substring resulted in username on page for administrative user');
 
     // Verify that wildcard search works for email
     $subkey = substr($keys, 0, 2) . '*' . substr($keys, 4, 2);
-    $edit = array('keys' => $subkey);
+    $edit = ['keys' => $subkey];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText($user2->getUsername(), 'Search for email wildcard resulted in username on page for administrative user');
 
     // Verify that if they search by user name, they see email address too.
     $keys = $user1->getUsername();
-    $edit = array('keys' => $keys);
+    $edit = ['keys' => $keys];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText($keys, 'Search by username works for admin user');
     $this->assertText($user1->getEmail(), 'Search by username for admin shows email address too');
@@ -92,25 +92,25 @@ function testUserSearch() {
 
     // Verify that users with "administer users" permissions can see blocked
     // accounts in search results.
-    $edit = array('keys' => $blocked_user->getUsername());
+    $edit = ['keys' => $blocked_user->getUsername()];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText($blocked_user->getUsername(), 'Blocked users are listed on the user search results for users with the "administer users" permission.');
 
     // Verify that users without "administer users" permissions do not see
     // blocked accounts in search results.
     $this->drupalLogin($user1);
-    $edit = array('keys' => $blocked_user->getUsername());
+    $edit = ['keys' => $blocked_user->getUsername()];
     $this->drupalPostForm('search/user', $edit, t('Search'));
     $this->assertText(t('Your search yielded no results.'), 'Blocked users are hidden from the user search results.');
 
     // Create a user without search permission, and one without user page view
     // permission. Verify that neither one can access the user search page.
-    $user3 = $this->drupalCreateUser(array('search content'));
+    $user3 = $this->drupalCreateUser(['search content']);
     $this->drupalLogin($user3);
     $this->drupalGet('search/user');
     $this->assertResponse('403', 'User without user profile access cannot search');
 
-    $user4 = $this->drupalCreateUser(array('access user profiles'));
+    $user4 = $this->drupalCreateUser(['access user profiles']);
     $this->drupalLogin($user4);
     $this->drupalGet('search/user');
     $this->assertResponse('403', 'User without search permission cannot search');
diff --git a/core/modules/user/tests/src/Functional/UserTokenReplaceTest.php b/core/modules/user/tests/src/Functional/UserTokenReplaceTest.php
index 869339a..d563d36 100644
--- a/core/modules/user/tests/src/Functional/UserTokenReplaceTest.php
+++ b/core/modules/user/tests/src/Functional/UserTokenReplaceTest.php
@@ -21,7 +21,7 @@ class UserTokenReplaceTest extends BrowserTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'user_hooks_test');
+  public static $modules = ['language', 'user_hooks_test'];
 
   /**
    * {@inheritdoc}
@@ -37,17 +37,17 @@ protected function setUp() {
   function testUserTokenReplacement() {
     $token_service = \Drupal::token();
     $language_interface = \Drupal::languageManager()->getCurrentLanguage();
-    $url_options = array(
+    $url_options = [
       'absolute' => TRUE,
       'language' => $language_interface,
-    );
+    ];
 
     \Drupal::state()->set('user_hooks_test_user_format_name_alter', TRUE);
     \Drupal::state()->set('user_hooks_test_user_format_name_alter_safe', TRUE);
 
     // Create two users and log them in one after another.
-    $user1 = $this->drupalCreateUser(array());
-    $user2 = $this->drupalCreateUser(array());
+    $user1 = $this->drupalCreateUser([]);
+    $user2 = $this->drupalCreateUser([]);
     $this->drupalLogin($user1);
     $this->drupalLogout();
     $this->drupalLogin($user2);
@@ -56,7 +56,7 @@ function testUserTokenReplacement() {
     $global_account = User::load(\Drupal::currentUser()->id());
 
     // Generate and test tokens.
-    $tests = array();
+    $tests = [];
     $tests['[user:uid]'] = $account->id();
     $tests['[user:name]'] = $account->getAccountName();
     $tests['[user:account-name]'] = $account->getAccountName();
@@ -121,18 +121,18 @@ function testUserTokenReplacement() {
 
     foreach ($tests as $input => $expected) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_service->replace($input, array('user' => $anonymous_user), array('langcode' => $language_interface->getId()), $bubbleable_metadata);
-      $this->assertEqual($output, $expected, format_string('Sanitized user token %token replaced.', array('%token' => $input)));
+      $output = $token_service->replace($input, ['user' => $anonymous_user], ['langcode' => $language_interface->getId()], $bubbleable_metadata);
+      $this->assertEqual($output, $expected, format_string('Sanitized user token %token replaced.', ['%token' => $input]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$input]);
     }
 
     // Generate login and cancel link.
-    $tests = array();
+    $tests = [];
     $tests['[user:one-time-login-url]'] = user_pass_reset_url($account);
     $tests['[user:cancel-url]'] = user_cancel_url($account);
 
     // Generate tokens with interface language.
-    $link = \Drupal::url('user.page', [], array('absolute' => TRUE));
+    $link = \Drupal::url('user.page', [], ['absolute' => TRUE]);
     foreach ($tests as $input => $expected) {
       $output = $token_service->replace($input, ['user' => $account], ['langcode' => $language_interface->getId(), 'callback' => 'user_mail_tokens', 'clear' => TRUE]);
       $this->assertTrue(strpos($output, $link) === 0, 'Generated URL is in interface language.');
@@ -141,16 +141,16 @@ function testUserTokenReplacement() {
     // Generate tokens with the user's preferred language.
     $account->preferred_langcode = 'de';
     $account->save();
-    $link = \Drupal::url('user.page', [], array('language' => \Drupal::languageManager()->getLanguage($account->getPreferredLangcode()), 'absolute' => TRUE));
+    $link = \Drupal::url('user.page', [], ['language' => \Drupal::languageManager()->getLanguage($account->getPreferredLangcode()), 'absolute' => TRUE]);
     foreach ($tests as $input => $expected) {
       $output = $token_service->replace($input, ['user' => $account], ['callback' => 'user_mail_tokens', 'clear' => TRUE]);
       $this->assertTrue(strpos($output, $link) === 0, "Generated URL is in the user's preferred language.");
     }
 
     // Generate tokens with one specific language.
-    $link = \Drupal::url('user.page', [], array('language' => \Drupal::languageManager()->getLanguage('de'), 'absolute' => TRUE));
+    $link = \Drupal::url('user.page', [], ['language' => \Drupal::languageManager()->getLanguage('de'), 'absolute' => TRUE]);
     foreach ($tests as $input => $expected) {
-      foreach (array($user1, $user2) as $account) {
+      foreach ([$user1, $user2] as $account) {
         $output = $token_service->replace($input, ['user' => $account], ['langcode' => 'de', 'callback' => 'user_mail_tokens', 'clear' => TRUE]);
         $this->assertTrue(strpos($output, $link) === 0, "Generated URL in the requested language.");
       }
diff --git a/core/modules/user/tests/src/Kernel/Condition/UserRoleConditionTest.php b/core/modules/user/tests/src/Kernel/Condition/UserRoleConditionTest.php
index 6e55364..075b04c 100644
--- a/core/modules/user/tests/src/Kernel/Condition/UserRoleConditionTest.php
+++ b/core/modules/user/tests/src/Kernel/Condition/UserRoleConditionTest.php
@@ -48,7 +48,7 @@ class UserRoleConditionTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   /**
    * {@inheritdoc}
@@ -62,38 +62,38 @@ protected function setUp() {
     $this->manager = $this->container->get('plugin.manager.condition');
 
     // Set up the authenticated and anonymous roles.
-    Role::create(array(
+    Role::create([
       'id' => RoleInterface::ANONYMOUS_ID,
       'label' => 'Anonymous user',
-    ))->save();
-    Role::create(array(
+    ])->save();
+    Role::create([
       'id' => RoleInterface::AUTHENTICATED_ID,
       'label' => 'Authenticated user',
-    ))->save();
+    ])->save();
 
     // Create new role.
     $rid = strtolower($this->randomMachineName(8));
     $label = $this->randomString(8);
-    $role = Role::create(array(
+    $role = Role::create([
       'id' => $rid,
       'label' => $label,
-    ));
+    ]);
     $role->save();
     $this->role = $role;
 
     // Setup an anonymous user for our tests.
-    $this->anonymous = User::create(array(
+    $this->anonymous = User::create([
       'name' => '',
       'uid' => 0,
-    ));
+    ]);
     $this->anonymous->save();
     // Loading the anonymous user adds the correct role.
     $this->anonymous = User::load($this->anonymous->id());
 
     // Setup an authenticated user for our tests.
-    $this->authenticated = User::create(array(
+    $this->authenticated = User::create([
       'name' => $this->randomMachineName(),
-    ));
+    ]);
     $this->authenticated->save();
     // Add the custom role.
     $this->authenticated->addRole($this->role->id());
@@ -107,7 +107,7 @@ public function testConditions() {
     // authenticated user roles.
     /** @var $condition \Drupal\Core\Condition\ConditionInterface */
     $condition = $this->manager->createInstance('user_role')
-      ->setConfig('roles', array(RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID))
+      ->setConfig('roles', [RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID])
       ->setContextValue('user', $this->anonymous);
     $this->assertFalse($condition->execute(), 'Anonymous users fail role checks for authenticated.');
     // Check for the proper summary.
@@ -115,13 +115,13 @@ public function testConditions() {
     $this->assertEqual($condition->summary(), 'The user is a member of Authenticated user');
 
     // Set the user role to anonymous.
-    $condition->setConfig('roles', array(RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID));
+    $condition->setConfig('roles', [RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID]);
     $this->assertTrue($condition->execute(), 'Anonymous users pass role checks for anonymous.');
     // Check for the proper summary.
     $this->assertEqual($condition->summary(), 'The user is a member of Anonymous user');
 
     // Set the user role to check anonymous or authenticated.
-    $condition->setConfig('roles', array(RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID));
+    $condition->setConfig('roles', [RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID]);
     $this->assertTrue($condition->execute(), 'Anonymous users pass role checks for anonymous or authenticated.');
     // Check for the proper summary.
     $this->assertEqual($condition->summary(), 'The user is a member of Anonymous user, Authenticated user');
@@ -132,11 +132,11 @@ public function testConditions() {
     $this->assertTrue($condition->execute(), 'Authenticated users pass role checks for anonymous or authenticated.');
 
     // Set the role to just authenticated and recheck.
-    $condition->setConfig('roles', array(RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID));
+    $condition->setConfig('roles', [RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID]);
     $this->assertTrue($condition->execute(), 'Authenticated users pass role checks for authenticated.');
 
     // Test Constructor injection.
-    $condition = $this->manager->createInstance('user_role', array('roles' => array(RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID), 'context' => array('user' => $this->authenticated)));
+    $condition = $this->manager->createInstance('user_role', ['roles' => [RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID], 'context' => ['user' => $this->authenticated]]);
     $this->assertTrue($condition->execute(), 'Constructor injection of context and configuration working as anticipated.');
 
     // Check the negated summary.
@@ -144,14 +144,14 @@ public function testConditions() {
     $this->assertEqual($condition->summary(), 'The user is not a member of Authenticated user');
 
     // Check the complex negated summary.
-    $condition->setConfig('roles', array(RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID));
+    $condition->setConfig('roles', [RoleInterface::ANONYMOUS_ID => RoleInterface::ANONYMOUS_ID, RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID]);
     $this->assertEqual($condition->summary(), 'The user is not a member of Anonymous user, Authenticated user');
 
     // Check a custom role.
-    $condition->setConfig('roles', array($this->role->id() => $this->role->id()));
+    $condition->setConfig('roles', [$this->role->id() => $this->role->id()]);
     $condition->setConfig('negate', FALSE);
     $this->assertTrue($condition->execute(), 'Authenticated user is a member of the custom role.');
-    $this->assertEqual($condition->summary(), SafeMarkup::format('The user is a member of @roles', array('@roles' => $this->role->label())));
+    $this->assertEqual($condition->summary(), SafeMarkup::format('The user is a member of @roles', ['@roles' => $this->role->label()]));
   }
 
 }
diff --git a/core/modules/user/tests/src/Kernel/Migrate/MigrateUserProfileFieldTest.php b/core/modules/user/tests/src/Kernel/Migrate/MigrateUserProfileFieldTest.php
index 0f64c79..75bccf1 100644
--- a/core/modules/user/tests/src/Kernel/Migrate/MigrateUserProfileFieldTest.php
+++ b/core/modules/user/tests/src/Kernel/Migrate/MigrateUserProfileFieldTest.php
@@ -41,7 +41,7 @@ public function testUserProfileFields() {
     $field_storage = FieldStorageConfig::load('user.profile_sold_to');
     $this->assertIdentical('list_string', $field_storage->getType(), 'Field type is list_string.');
     $settings = $field_storage->getSettings();
-    $this->assertEqual($settings['allowed_values'], array(
+    $this->assertEqual($settings['allowed_values'], [
       'Pill spammers' => 'Pill spammers',
       'Fitness spammers' => 'Fitness spammers',
       'Back\slash' => 'Back\slash',
@@ -49,7 +49,7 @@ public function testUserProfileFields() {
       'Dot.in.the.middle' => 'Dot.in.the.middle',
       'Faithful servant' => 'Faithful servant',
       'Anonymous donor' => 'Anonymous donor',
-    ));
+    ]);
     $this->assertIdentical('list_string', $field_storage->getType(), 'Field type is list_string.');
 
     // Migrated list field.
diff --git a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureFileTest.php b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureFileTest.php
index b3b6a64..1d28e2a 100644
--- a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureFileTest.php
+++ b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserPictureFileTest.php
@@ -29,7 +29,7 @@ protected function setUp() {
    * Tests the Drupal 6 user pictures to Drupal 8 migration.
    */
   public function testUserPictures() {
-    $file_ids = array();
+    $file_ids = [];
     foreach ($this->migration->getIdMap() as $destination_ids) {
       $file_ids[] = reset($destination_ids);
     }
diff --git a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserTest.php b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserTest.php
index 33952d1..ed28777 100644
--- a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserTest.php
+++ b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserTest.php
@@ -37,7 +37,7 @@ protected function setUp() {
     // Make sure uid 1 is created.
     user_install();
 
-    $file = File::create(array(
+    $file = File::create([
       'fid' => 2,
       'uid' => 2,
       'filename' => 'image-test.jpg',
@@ -46,12 +46,12 @@ protected function setUp() {
       'created' => 1,
       'changed' => 1,
       'status' => FILE_STATUS_PERMANENT,
-    ));
+    ]);
     $file->enforceIsNew();
     file_put_contents($file->getFileUri(), file_get_contents('core/modules/simpletest/files/image-1.png'));
     $file->save();
 
-    $file = File::create(array(
+    $file = File::create([
       'fid' => 8,
       'uid' => 8,
       'filename' => 'image-test.png',
@@ -60,7 +60,7 @@ protected function setUp() {
       'created' => 1,
       'changed' => 1,
       'status' => FILE_STATUS_PERMANENT,
-    ));
+    ]);
     $file->enforceIsNew();
     file_put_contents($file->getFileUri(), file_get_contents('core/modules/simpletest/files/image-2.jpg'));
     $file->save();
@@ -84,14 +84,14 @@ public function testUser() {
       // Get roles directly from the source.
       $rids = Database::getConnection('default', 'migrate')
         ->select('users_roles', 'ur')
-        ->fields('ur', array('rid'))
+        ->fields('ur', ['rid'])
         ->condition('ur.uid', $source->uid)
         ->execute()
         ->fetchCol();
-      $roles = array(RoleInterface::AUTHENTICATED_ID);
+      $roles = [RoleInterface::AUTHENTICATED_ID];
       $id_map = $this->getMigration('d6_user_role')->getIdMap();
       foreach ($rids as $rid) {
-        $role = $id_map->lookupDestinationId(array($rid));
+        $role = $id_map->lookupDestinationId([$rid]);
         $roles[] = reset($role);
       }
 
diff --git a/core/modules/user/tests/src/Kernel/Migrate/d7/MigrateUserTest.php b/core/modules/user/tests/src/Kernel/Migrate/d7/MigrateUserTest.php
index d18d071..7d73daf 100644
--- a/core/modules/user/tests/src/Kernel/Migrate/d7/MigrateUserTest.php
+++ b/core/modules/user/tests/src/Kernel/Migrate/d7/MigrateUserTest.php
@@ -177,20 +177,20 @@ public function testUser() {
     foreach ($users as $source) {
       $rids = Database::getConnection('default', 'migrate')
         ->select('users_roles', 'ur')
-        ->fields('ur', array('rid'))
+        ->fields('ur', ['rid'])
         ->condition('ur.uid', $source->uid)
         ->execute()
         ->fetchCol();
-      $roles = array(RoleInterface::AUTHENTICATED_ID);
+      $roles = [RoleInterface::AUTHENTICATED_ID];
       $id_map = $this->getMigration('d7_user_role')->getIdMap();
       foreach ($rids as $rid) {
-        $role = $id_map->lookupDestinationId(array($rid));
+        $role = $id_map->lookupDestinationId([$rid]);
         $roles[] = reset($role);
       }
 
       $field_integer = Database::getConnection('default', 'migrate')
         ->select('field_data_field_integer', 'fi')
-        ->fields('fi', array('field_integer_value'))
+        ->fields('fi', ['field_integer_value'])
         ->condition('fi.entity_id', $source->uid)
         ->execute()
         ->fetchCol();
diff --git a/core/modules/user/tests/src/Kernel/TempStoreDatabaseTest.php b/core/modules/user/tests/src/Kernel/TempStoreDatabaseTest.php
index 254524a..b3d7ff1 100644
--- a/core/modules/user/tests/src/Kernel/TempStoreDatabaseTest.php
+++ b/core/modules/user/tests/src/Kernel/TempStoreDatabaseTest.php
@@ -21,7 +21,7 @@ class TempStoreDatabaseTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user');
+  public static $modules = ['system', 'user'];
 
   /**
    * A key/value store factory.
@@ -42,21 +42,21 @@ class TempStoreDatabaseTest extends KernelTestBase {
    *
    * @var array
    */
-  protected $users = array();
+  protected $users = [];
 
   /**
    * An array of random stdClass objects.
    *
    * @var array
    */
-  protected $objects = array();
+  protected $objects = [];
 
   protected function setUp() {
     parent::setUp();
 
     // Install system tables to test the key/value storage without installing a
     // full Drupal environment.
-    $this->installSchema('system', array('key_value_expire'));
+    $this->installSchema('system', ['key_value_expire']);
 
     // Create several objects for testing.
     for ($i = 0; $i <= 3; $i++) {
@@ -135,7 +135,7 @@ public function testUserTempStore() {
     // Now manually expire the item (this is not exposed by the API) and then
     // assert it is no longer accessible.
     db_update('key_value_expire')
-      ->fields(array('expire' => REQUEST_TIME - 1))
+      ->fields(['expire' => REQUEST_TIME - 1])
       ->condition('collection', "user.shared_tempstore.$collection")
       ->condition('name', $key)
       ->execute();
diff --git a/core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php b/core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php
index 4022972..e4367a0 100644
--- a/core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php
+++ b/core/modules/user/tests/src/Kernel/UserAccountFormFieldsTest.php
@@ -18,7 +18,7 @@ class UserAccountFormFieldsTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   /**
    * Tests the root user account form section in the "Configure site" form.
@@ -37,7 +37,7 @@ function testInstallConfigureForm() {
 
     // Verify that web browsers may autocomplete the email value and
     // autofill/prefill the name and pass values.
-    foreach (array('mail', 'name', 'pass') as $key) {
+    foreach (['mail', 'name', 'pass'] as $key) {
       $this->assertFalse(isset($form['account'][$key]['#attributes']['autocomplete']), "'$key' field: 'autocomplete' attribute not found.");
     }
   }
@@ -47,7 +47,7 @@ function testInstallConfigureForm() {
    */
   function testUserRegistrationForm() {
     // Install default configuration; required for AccountFormController.
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
 
     // Disable email confirmation to unlock the password field.
     $this->config('user.settings')
@@ -61,7 +61,7 @@ function testUserRegistrationForm() {
 
     // Verify that web browsers may autocomplete the email value and
     // autofill/prefill the name and pass values.
-    foreach (array('mail', 'name', 'pass') as $key) {
+    foreach (['mail', 'name', 'pass'] as $key) {
       $this->assertFalse(isset($form['account'][$key]['#attributes']['autocomplete']), "'$key' field: 'autocomplete' attribute not found.");
     }
   }
@@ -71,7 +71,7 @@ function testUserRegistrationForm() {
    */
   function testUserEditForm() {
     // Install default configuration; required for AccountFormController.
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
 
     // Install the router table and then rebuild.
     \Drupal::service('router.builder')->rebuild();
@@ -82,7 +82,7 @@ function testUserEditForm() {
     $this->assertFieldOrder($form['account']);
 
     // Verify that autocomplete is off on all account fields.
-    foreach (array('mail', 'name', 'pass') as $key) {
+    foreach (['mail', 'name', 'pass'] as $key) {
       $this->assertIdentical($form['account'][$key]['#attributes']['autocomplete'], 'off', "'$key' field: 'autocomplete' attribute is 'off'.");
     }
   }
@@ -128,7 +128,7 @@ protected function assertFieldOrder(array $elements) {
   protected function buildAccountForm($operation) {
     // @see HtmlEntityFormController::getFormObject()
     $entity_type = 'user';
-    $fields = array();
+    $fields = [];
     if ($operation != 'register') {
       $fields['uid'] = 2;
     }
diff --git a/core/modules/user/tests/src/Kernel/UserActionConfigSchemaTest.php b/core/modules/user/tests/src/Kernel/UserActionConfigSchemaTest.php
index bde5861..c405ad9 100644
--- a/core/modules/user/tests/src/Kernel/UserActionConfigSchemaTest.php
+++ b/core/modules/user/tests/src/Kernel/UserActionConfigSchemaTest.php
@@ -21,14 +21,14 @@ class UserActionConfigSchemaTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user');
+  public static $modules = ['system', 'user'];
 
   /**
    * Tests whether the user action config schema are valid.
    */
   function testValidUserActionConfigSchema() {
     $rid = strtolower($this->randomMachineName(8));
-    Role::create(array('id' => $rid))->save();
+    Role::create(['id' => $rid])->save();
 
     // Test user_add_role_action configuration.
     $config = $this->config('system.action.user_add_role_action.' . $rid);
diff --git a/core/modules/user/tests/src/Kernel/UserEntityReferenceTest.php b/core/modules/user/tests/src/Kernel/UserEntityReferenceTest.php
index 8958c54..14dc7ad 100644
--- a/core/modules/user/tests/src/Kernel/UserEntityReferenceTest.php
+++ b/core/modules/user/tests/src/Kernel/UserEntityReferenceTest.php
@@ -36,16 +36,16 @@ class UserEntityReferenceTest extends EntityKernelTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->role1 = Role::create(array(
+    $this->role1 = Role::create([
       'id' => strtolower($this->randomMachineName(8)),
       'label' => $this->randomMachineName(8),
-    ));
+    ]);
     $this->role1->save();
 
-    $this->role2 = Role::create(array(
+    $this->role2 = Role::create([
       'id' => strtolower($this->randomMachineName(8)),
       'label' => $this->randomMachineName(8),
-    ));
+    ]);
     $this->role2->save();
 
     $this->createEntityReferenceField('user', 'user', 'user_reference', 'User reference', 'user');
@@ -57,23 +57,23 @@ protected function setUp() {
   function testUserSelectionByRole() {
     $field_definition = FieldConfig::loadByName('user', 'user', 'user_reference');
     $handler_settings = $field_definition->getSetting('handler_settings');
-    $handler_settings['filter']['role'] = array(
+    $handler_settings['filter']['role'] = [
       $this->role1->id() => $this->role1->id(),
       $this->role2->id() => 0,
-    );
+    ];
     $handler_settings['filter']['type'] = 'role';
     $field_definition->setSetting('handler_settings', $handler_settings);
     $field_definition->save();
 
-    $user1 = $this->createUser(array('name' => 'aabb'));
+    $user1 = $this->createUser(['name' => 'aabb']);
     $user1->addRole($this->role1->id());
     $user1->save();
 
-    $user2 = $this->createUser(array('name' => 'aabbb'));
+    $user2 = $this->createUser(['name' => 'aabbb']);
     $user2->addRole($this->role1->id());
     $user2->save();
 
-    $user3 = $this->createUser(array('name' => 'aabbbb'));
+    $user3 = $this->createUser(['name' => 'aabbbb']);
     $user3->addRole($this->role2->id());
     $user3->save();
 
@@ -83,7 +83,7 @@ function testUserSelectionByRole() {
 
     $matches = $autocomplete->getMatches('user', 'default', $field_definition->getSetting('handler_settings'), 'aabb');
     $this->assertEqual(count($matches), 2);
-    $users = array();
+    $users = [];
     foreach ($matches as $match) {
       $users[] = $match['label'];
     }
diff --git a/core/modules/user/tests/src/Kernel/UserEntityTest.php b/core/modules/user/tests/src/Kernel/UserEntityTest.php
index 9002e5c..1c501f0 100644
--- a/core/modules/user/tests/src/Kernel/UserEntityTest.php
+++ b/core/modules/user/tests/src/Kernel/UserEntityTest.php
@@ -19,7 +19,7 @@ class UserEntityTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   /**
    * Tests some of the methods.
@@ -30,39 +30,39 @@ class UserEntityTest extends KernelTestBase {
    */
   public function testUserMethods() {
     $role_storage = $this->container->get('entity.manager')->getStorage('user_role');
-    $role_storage->create(array('id' => 'test_role_one'))->save();
-    $role_storage->create(array('id' => 'test_role_two'))->save();
-    $role_storage->create(array('id' => 'test_role_three'))->save();
+    $role_storage->create(['id' => 'test_role_one'])->save();
+    $role_storage->create(['id' => 'test_role_two'])->save();
+    $role_storage->create(['id' => 'test_role_three'])->save();
 
-    $values = array(
+    $values = [
       'uid' => 1,
-      'roles' => array('test_role_one'),
-    );
+      'roles' => ['test_role_one'],
+    ];
     $user = User::create($values);
 
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertFalse($user->hasRole('test_role_two'));
-    $this->assertEqual(array(RoleInterface::AUTHENTICATED_ID, 'test_role_one'), $user->getRoles());
+    $this->assertEqual([RoleInterface::AUTHENTICATED_ID, 'test_role_one'], $user->getRoles());
 
     $user->addRole('test_role_one');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertFalse($user->hasRole('test_role_two'));
-    $this->assertEqual(array(RoleInterface::AUTHENTICATED_ID, 'test_role_one'), $user->getRoles());
+    $this->assertEqual([RoleInterface::AUTHENTICATED_ID, 'test_role_one'], $user->getRoles());
 
     $user->addRole('test_role_two');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
-    $this->assertEqual(array(RoleInterface::AUTHENTICATED_ID, 'test_role_one', 'test_role_two'), $user->getRoles());
+    $this->assertEqual([RoleInterface::AUTHENTICATED_ID, 'test_role_one', 'test_role_two'], $user->getRoles());
 
     $user->removeRole('test_role_three');
     $this->assertTrue($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
-    $this->assertEqual(array(RoleInterface::AUTHENTICATED_ID, 'test_role_one', 'test_role_two'), $user->getRoles());
+    $this->assertEqual([RoleInterface::AUTHENTICATED_ID, 'test_role_one', 'test_role_two'], $user->getRoles());
 
     $user->removeRole('test_role_one');
     $this->assertFalse($user->hasRole('test_role_one'));
     $this->assertTrue($user->hasRole('test_role_two'));
-    $this->assertEqual(array(RoleInterface::AUTHENTICATED_ID, 'test_role_two'), $user->getRoles());
+    $this->assertEqual([RoleInterface::AUTHENTICATED_ID, 'test_role_two'], $user->getRoles());
   }
 
 }
diff --git a/core/modules/user/tests/src/Kernel/UserFieldsTest.php b/core/modules/user/tests/src/Kernel/UserFieldsTest.php
index f0fb532..18f8f3b 100644
--- a/core/modules/user/tests/src/Kernel/UserFieldsTest.php
+++ b/core/modules/user/tests/src/Kernel/UserFieldsTest.php
@@ -27,7 +27,7 @@ protected function setUp() {
     $this->installEntitySchema('user');
 
     // Set up a test theme that prints the user's mail field.
-    \Drupal::service('theme_handler')->install(array('user_test_theme'));
+    \Drupal::service('theme_handler')->install(['user_test_theme']);
     \Drupal::theme()->setActiveTheme(\Drupal::service('theme.initialization')->initTheme('user_test_theme'));
     // Clear the theme registry.
     $this->container->set('theme.registry', NULL);
diff --git a/core/modules/user/tests/src/Kernel/UserInstallTest.php b/core/modules/user/tests/src/Kernel/UserInstallTest.php
index 2bbcd5f..f61811b 100644
--- a/core/modules/user/tests/src/Kernel/UserInstallTest.php
+++ b/core/modules/user/tests/src/Kernel/UserInstallTest.php
@@ -16,7 +16,7 @@ class UserInstallTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/user/tests/src/Kernel/UserRoleDeleteTest.php b/core/modules/user/tests/src/Kernel/UserRoleDeleteTest.php
index 1aefbcf..cac470a 100644
--- a/core/modules/user/tests/src/Kernel/UserRoleDeleteTest.php
+++ b/core/modules/user/tests/src/Kernel/UserRoleDeleteTest.php
@@ -17,7 +17,7 @@ class UserRoleDeleteTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   protected function setUp() {
     parent::setUp();
@@ -32,15 +32,15 @@ protected function setUp() {
   public function testRoleDeleteUserRoleReferenceDelete() {
     // Create two test roles.
     $role_storage = $this->container->get('entity.manager')->getStorage('user_role');
-    $role_storage->create(array('id' => 'test_role_one'))->save();
-    $role_storage->create(array('id' => 'test_role_two'))->save();
+    $role_storage->create(['id' => 'test_role_one'])->save();
+    $role_storage->create(['id' => 'test_role_two'])->save();
 
     // Create user and assign both test roles.
-    $values = array(
+    $values = [
       'uid' => 1,
       'name' => $this->randomString(),
-      'roles' => array('test_role_one', 'test_role_two'),
-    );
+      'roles' => ['test_role_one', 'test_role_two'],
+    ];
     $user = User::create($values);
     $user->save();
 
@@ -60,7 +60,7 @@ public function testRoleDeleteUserRoleReferenceDelete() {
     $this->assertTrue($user->hasRole('test_role_two'));
 
     // Create new role with same name.
-    $role_storage->create(array('id' => 'test_role_one'))->save();
+    $role_storage->create(['id' => 'test_role_one'])->save();
 
     // Load user again from the database.
     $user = User::load($user->id());
diff --git a/core/modules/user/tests/src/Kernel/UserSaveStatusTest.php b/core/modules/user/tests/src/Kernel/UserSaveStatusTest.php
index 00a29fc..0ad1bde 100644
--- a/core/modules/user/tests/src/Kernel/UserSaveStatusTest.php
+++ b/core/modules/user/tests/src/Kernel/UserSaveStatusTest.php
@@ -17,7 +17,7 @@ class UserSaveStatusTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   protected function setUp() {
     parent::setUp();
@@ -29,10 +29,10 @@ protected function setUp() {
    */
   function testUserSaveStatus() {
     // Create a new user.
-    $values = array(
+    $values = [
       'uid' => 1,
       'name' => $this->randomMachineName(),
-    );
+    ];
     $user = User::create($values);
 
     // Test SAVED_NEW.
diff --git a/core/modules/user/tests/src/Kernel/UserValidationTest.php b/core/modules/user/tests/src/Kernel/UserValidationTest.php
index b27b00f..9be1fd0 100644
--- a/core/modules/user/tests/src/Kernel/UserValidationTest.php
+++ b/core/modules/user/tests/src/Kernel/UserValidationTest.php
@@ -21,7 +21,7 @@ class UserValidationTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('field', 'user', 'system');
+  public static $modules = ['field', 'user', 'system'];
 
   /**
    * {@inheritdoc}
@@ -29,10 +29,10 @@ class UserValidationTest extends KernelTestBase {
   protected function setUp() {
     parent::setUp();
     $this->installEntitySchema('user');
-    $this->installSchema('system', array('sequences'));
+    $this->installSchema('system', ['sequences']);
 
     // Make sure that the default roles exist.
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
 
   }
 
@@ -40,25 +40,25 @@ protected function setUp() {
    * Tests user name validation.
    */
   function testUsernames() {
-    $test_cases = array( // '<username>' => array('<description>', 'assert<testName>'),
-      'foo'                    => array('Valid username', 'assertNull'),
-      'FOO'                    => array('Valid username', 'assertNull'),
-      'Foo O\'Bar'             => array('Valid username', 'assertNull'),
-      'foo@bar'                => array('Valid username', 'assertNull'),
-      'foo@example.com'        => array('Valid username', 'assertNull'),
-      'foo@-example.com'       => array('Valid username', 'assertNull'), // invalid domains are allowed in usernames
-      'þòøÇßªř€'               => array('Valid username', 'assertNull'),
-      'foo+bar'                => array('Valid username', 'assertNull'), // '+' symbol is allowed
-      'ᚠᛇᚻ᛫ᛒᛦᚦ'                => array('Valid UTF8 username', 'assertNull'), // runes
-      ' foo'                   => array('Invalid username that starts with a space', 'assertNotNull'),
-      'foo '                   => array('Invalid username that ends with a space', 'assertNotNull'),
-      'foo  bar'               => array('Invalid username that contains 2 spaces \'&nbsp;&nbsp;\'', 'assertNotNull'),
-      ''                       => array('Invalid empty username', 'assertNotNull'),
-      'foo/'                   => array('Invalid username containing invalid chars', 'assertNotNull'),
-      'foo' . chr(0) . 'bar'   => array('Invalid username containing chr(0)', 'assertNotNull'), // NULL
-      'foo' . chr(13) . 'bar'  => array('Invalid username containing chr(13)', 'assertNotNull'), // CR
-      str_repeat('x', USERNAME_MAX_LENGTH + 1) => array('Invalid excessively long username', 'assertNotNull'),
-    );
+    $test_cases = [ // '<username>' => array('<description>', 'assert<testName>'),
+      'foo'                    => ['Valid username', 'assertNull'],
+      'FOO'                    => ['Valid username', 'assertNull'],
+      'Foo O\'Bar'             => ['Valid username', 'assertNull'],
+      'foo@bar'                => ['Valid username', 'assertNull'],
+      'foo@example.com'        => ['Valid username', 'assertNull'],
+      'foo@-example.com'       => ['Valid username', 'assertNull'], // invalid domains are allowed in usernames
+      'þòøÇßªř€'               => ['Valid username', 'assertNull'],
+      'foo+bar'                => ['Valid username', 'assertNull'], // '+' symbol is allowed
+      'ᚠᛇᚻ᛫ᛒᛦᚦ'                => ['Valid UTF8 username', 'assertNull'], // runes
+      ' foo'                   => ['Invalid username that starts with a space', 'assertNotNull'],
+      'foo '                   => ['Invalid username that ends with a space', 'assertNotNull'],
+      'foo  bar'               => ['Invalid username that contains 2 spaces \'&nbsp;&nbsp;\'', 'assertNotNull'],
+      ''                       => ['Invalid empty username', 'assertNotNull'],
+      'foo/'                   => ['Invalid username containing invalid chars', 'assertNotNull'],
+      'foo' . chr(0) . 'bar'   => ['Invalid username containing chr(0)', 'assertNotNull'], // NULL
+      'foo' . chr(13) . 'bar'  => ['Invalid username containing chr(13)', 'assertNotNull'], // CR
+      str_repeat('x', USERNAME_MAX_LENGTH + 1) => ['Invalid excessively long username', 'assertNotNull'],
+    ];
     foreach ($test_cases as $name => $test_case) {
       list($description, $test) = $test_case;
       $result = user_validate_name($name);
@@ -70,10 +70,10 @@ function testUsernames() {
    * Runs entity validation checks.
    */
   function testValidation() {
-    $user = User::create(array(
+    $user = User::create([
       'name' => 'test',
       'mail' => 'test@example.com',
-    ));
+    ]);
     $violations = $user->validate();
     $this->assertEqual(count($violations), 0, 'No violations when validating a default user.');
 
@@ -84,7 +84,7 @@ function testValidation() {
     $violations = $user->validate();
     $this->assertEqual(count($violations), 1, 'Violation found when name is too long.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'name');
-    $this->assertEqual($violations[0]->getMessage(), t('The username %name is too long: it must be %max characters or less.', array('%name' => $name, '%max' => 60)));
+    $this->assertEqual($violations[0]->getMessage(), t('The username %name is too long: it must be %max characters or less.', ['%name' => $name, '%max' => 60]));
 
     // Create a second test user to provoke a name collision.
     $user2 = User::create([
@@ -96,7 +96,7 @@ function testValidation() {
     $violations = $user->validate();
     $this->assertEqual(count($violations), 1, 'Violation found on name collision.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'name');
-    $this->assertEqual($violations[0]->getMessage(), t('The username %name is already taken.', array('%name' => 'existing')));
+    $this->assertEqual($violations[0]->getMessage(), t('The username %name is already taken.', ['%name' => 'existing']));
 
     // Make the name valid.
     $user->set('name', $this->randomMachineName());
@@ -116,7 +116,7 @@ function testValidation() {
     //   https://www.drupal.org/node/2023465.
     $this->assertEqual(count($violations), 2, 'Violations found when email is too long');
     $this->assertEqual($violations[0]->getPropertyPath(), 'mail.0.value');
-    $this->assertEqual($violations[0]->getMessage(), t('%name: the email address can not be longer than @max characters.', array('%name' => $user->get('mail')->getFieldDefinition()->getLabel(), '@max' => Email::EMAIL_MAX_LENGTH)));
+    $this->assertEqual($violations[0]->getMessage(), t('%name: the email address can not be longer than @max characters.', ['%name' => $user->get('mail')->getFieldDefinition()->getLabel(), '@max' => Email::EMAIL_MAX_LENGTH]));
     $this->assertEqual($violations[1]->getPropertyPath(), 'mail.0.value');
     $this->assertEqual($violations[1]->getMessage(), t('This value is not a valid email address.'));
 
@@ -125,12 +125,12 @@ function testValidation() {
     $violations = $user->validate();
     $this->assertEqual(count($violations), 1, 'Violation found when email already exists.');
     $this->assertEqual($violations[0]->getPropertyPath(), 'mail');
-    $this->assertEqual($violations[0]->getMessage(), t('The email address %mail is already taken.', array('%mail' => 'existing@example.com')));
+    $this->assertEqual($violations[0]->getMessage(), t('The email address %mail is already taken.', ['%mail' => 'existing@example.com']));
     $user->set('mail', NULL);
     $violations = $user->validate();
     $this->assertEqual(count($violations), 1, 'Email addresses may not be removed');
     $this->assertEqual($violations[0]->getPropertyPath(), 'mail');
-    $this->assertEqual($violations[0]->getMessage(), t('@name field is required.', array('@name' => $user->getFieldDefinition('mail')->getLabel())));
+    $this->assertEqual($violations[0]->getMessage(), t('@name field is required.', ['@name' => $user->getFieldDefinition('mail')->getLabel()]));
     $user->set('mail', 'someone@example.com');
 
     $user->set('timezone', $this->randomString(33));
@@ -157,14 +157,14 @@ function testValidation() {
     $this->assertAllowedValuesViolation($user, 'preferred_admin_langcode');
     $user->set('preferred_admin_langcode', NULL);
 
-    Role::create(array('id' => 'role1'))->save();
-    Role::create(array('id' => 'role2'))->save();
+    Role::create(['id' => 'role1'])->save();
+    Role::create(['id' => 'role2'])->save();
 
     // Test cardinality of user roles.
     $user = User::create([
       'name' => 'role_test',
       'mail' => 'test@example.com',
-      'roles' => array('role1', 'role2'),
+      'roles' => ['role1', 'role2'],
     ]);
     $violations = $user->validate();
     $this->assertEqual(count($violations), 0);
@@ -173,7 +173,7 @@ function testValidation() {
     $violations = $user->validate();
     $this->assertEqual(count($violations), 1);
     $this->assertEqual($violations[0]->getPropertyPath(), 'roles.1.target_id');
-    $this->assertEqual($violations[0]->getMessage(), t('The referenced entity (%entity_type: %name) does not exist.', array('%entity_type' => 'user_role', '%name' => 'unknown_role')));
+    $this->assertEqual($violations[0]->getMessage(), t('The referenced entity (%entity_type: %name) does not exist.', ['%entity_type' => 'user_role', '%name' => 'unknown_role']));
   }
 
   /**
@@ -195,7 +195,7 @@ protected function assertLengthViolation(EntityInterface $entity, $field_name, $
     $this->assertEqual(count($violations), $count, "Violation found when $field_name is too long.");
     $this->assertEqual($violations[$expected_index]->getPropertyPath(), "$field_name.0.value");
     $field_label = $entity->get($field_name)->getFieldDefinition()->getLabel();
-    $this->assertEqual($violations[$expected_index]->getMessage(), t('%name: may not be longer than @max characters.', array('%name' => $field_label, '@max' => $length)));
+    $this->assertEqual($violations[$expected_index]->getMessage(), t('%name: may not be longer than @max characters.', ['%name' => $field_label, '@max' => $length]));
   }
 
   /**
diff --git a/core/modules/user/tests/src/Kernel/Views/HandlerFieldPermissionTest.php b/core/modules/user/tests/src/Kernel/Views/HandlerFieldPermissionTest.php
index c0c791f..0d21221 100644
--- a/core/modules/user/tests/src/Kernel/Views/HandlerFieldPermissionTest.php
+++ b/core/modules/user/tests/src/Kernel/Views/HandlerFieldPermissionTest.php
@@ -17,7 +17,7 @@ class HandlerFieldPermissionTest extends UserKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_field_permission');
+  public static $testViews = ['test_field_permission'];
 
   /**
    * Tests the permission field handler output.
@@ -31,9 +31,9 @@ public function testFieldPermission() {
     $view->render();
     $style_plugin = $view->style_plugin;
 
-    $expected_permissions = array();
-    $expected_permissions[$this->users[0]->id()] = array();
-    $expected_permissions[$this->users[1]->id()] = array();
+    $expected_permissions = [];
+    $expected_permissions[$this->users[0]->id()] = [];
+    $expected_permissions[$this->users[1]->id()] = [];
     $expected_permissions[$this->users[2]->id()][] = t('Administer permissions');
     // View user profiles comes first, because we sort by the permission
     // machine name.
diff --git a/core/modules/user/tests/src/Kernel/Views/HandlerFilterPermissionTest.php b/core/modules/user/tests/src/Kernel/Views/HandlerFilterPermissionTest.php
index 069a923..b005f62 100644
--- a/core/modules/user/tests/src/Kernel/Views/HandlerFilterPermissionTest.php
+++ b/core/modules/user/tests/src/Kernel/Views/HandlerFilterPermissionTest.php
@@ -18,7 +18,7 @@ class HandlerFilterPermissionTest extends UserKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_permission');
+  public static $testViews = ['test_filter_permission'];
 
   protected $columnMap;
 
@@ -31,64 +31,64 @@ class HandlerFilterPermissionTest extends UserKernelTestBase {
   public function testFilterPermission() {
     $this->setupPermissionTestData();
 
-    $column_map = array('uid' => 'uid');
+    $column_map = ['uid' => 'uid'];
     $view = Views::getView('test_filter_permission');
 
     // Filter by a non existing permission.
     $view->initHandlers();
-    $view->filter['permission']->value = array('non_existent_permission');
+    $view->filter['permission']->value = ['non_existent_permission'];
     $this->executeView($view);
     $this->assertEqual(count($view->result), 4, 'A non existent permission is not filtered so everything is the result.');
-    $expected[] = array('uid' => 1);
-    $expected[] = array('uid' => 2);
-    $expected[] = array('uid' => 3);
-    $expected[] = array('uid' => 4);
+    $expected[] = ['uid' => 1];
+    $expected[] = ['uid' => 2];
+    $expected[] = ['uid' => 3];
+    $expected[] = ['uid' => 4];
     $this->assertIdenticalResultset($view, $expected, $column_map);
     $view->destroy();
 
     // Filter by a permission.
     $view->initHandlers();
-    $view->filter['permission']->value = array('administer permissions');
+    $view->filter['permission']->value = ['administer permissions'];
     $this->executeView($view);
     $this->assertEqual(count($view->result), 2);
-    $expected = array();
-    $expected[] = array('uid' => 3);
-    $expected[] = array('uid' => 4);
+    $expected = [];
+    $expected[] = ['uid' => 3];
+    $expected[] = ['uid' => 4];
     $this->assertIdenticalResultset($view, $expected, $column_map);
     $view->destroy();
 
     // Filter by not a permission.
     $view->initHandlers();
     $view->filter['permission']->operator = 'not';
-    $view->filter['permission']->value = array('administer users');
+    $view->filter['permission']->value = ['administer users'];
     $this->executeView($view);
     $this->assertEqual(count($view->result), 3);
-    $expected = array();
-    $expected[] = array('uid' => 1);
-    $expected[] = array('uid' => 2);
-    $expected[] = array('uid' => 3);
+    $expected = [];
+    $expected[] = ['uid' => 1];
+    $expected[] = ['uid' => 2];
+    $expected[] = ['uid' => 3];
     $this->assertIdenticalResultset($view, $expected, $column_map);
     $view->destroy();
 
     // Filter by not multiple permissions, that are present in multiple roles.
     $view->initHandlers();
     $view->filter['permission']->operator = 'not';
-    $view->filter['permission']->value = array('administer users', 'administer permissions');
+    $view->filter['permission']->value = ['administer users', 'administer permissions'];
     $this->executeView($view);
     $this->assertEqual(count($view->result), 2);
-    $expected = array();
-    $expected[] = array('uid' => 1);
-    $expected[] = array('uid' => 2);
+    $expected = [];
+    $expected[] = ['uid' => 1];
+    $expected[] = ['uid' => 2];
     $this->assertIdenticalResultset($view, $expected, $column_map);
     $view->destroy();
 
     // Filter by another permission of a role with multiple permissions.
     $view->initHandlers();
-    $view->filter['permission']->value = array('administer users');
+    $view->filter['permission']->value = ['administer users'];
     $this->executeView($view);
     $this->assertEqual(count($view->result), 1);
-    $expected = array();
-    $expected[] = array('uid' => 4);
+    $expected = [];
+    $expected[] = ['uid' => 4];
     $this->assertIdenticalResultset($view, $expected, $column_map);
     $view->destroy();
 
@@ -103,7 +103,7 @@ public function testFilterPermission() {
     foreach ($permissions as $name => $permission) {
       $permission_by_module[$permission['provider']][$name] = $permission;
     }
-    foreach (array('system' => 'System', 'user' => 'User') as $module => $title) {
+    foreach (['system' => 'System', 'user' => 'User'] as $module => $title) {
       $expected = array_map(function ($permission) {
         return Html::escape(strip_tags($permission['title']));
       }, $permission_by_module[$module]);
diff --git a/core/modules/user/tests/src/Kernel/Views/HandlerFilterRolesTest.php b/core/modules/user/tests/src/Kernel/Views/HandlerFilterRolesTest.php
index 37d0f2c..306e813 100644
--- a/core/modules/user/tests/src/Kernel/Views/HandlerFilterRolesTest.php
+++ b/core/modules/user/tests/src/Kernel/Views/HandlerFilterRolesTest.php
@@ -20,7 +20,7 @@ class HandlerFilterRolesTest extends UserKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_user_name');
+  public static $testViews = ['test_user_name'];
 
   /**
    * Tests that role filter dependencies are calculated correctly.
diff --git a/core/modules/user/tests/src/Kernel/Views/UserKernelTestBase.php b/core/modules/user/tests/src/Kernel/Views/UserKernelTestBase.php
index 075315c..0e862c8 100644
--- a/core/modules/user/tests/src/Kernel/Views/UserKernelTestBase.php
+++ b/core/modules/user/tests/src/Kernel/Views/UserKernelTestBase.php
@@ -15,14 +15,14 @@
    *
    * @var array
    */
-  public static $modules = array('user_test_views', 'user', 'system', 'field');
+  public static $modules = ['user_test_views', 'user', 'system', 'field'];
 
   /**
    * Users to use during this test.
    *
    * @var array
    */
-  protected $users = array();
+  protected $users = [];
 
   /**
    * The entity storage for roles.
@@ -41,7 +41,7 @@
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('user_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['user_test_views']);
 
     $this->installEntitySchema('user');
 
@@ -55,33 +55,33 @@ protected function setUp($import_test_views = TRUE) {
    */
   protected function setupPermissionTestData() {
     // Setup a role without any permission.
-    $this->roleStorage->create(array('id' => 'authenticated'))
+    $this->roleStorage->create(['id' => 'authenticated'])
       ->save();
-    $this->roleStorage->create(array('id' => 'no_permission'))
+    $this->roleStorage->create(['id' => 'no_permission'])
       ->save();
     // Setup a role with just one permission.
-    $this->roleStorage->create(array('id' => 'one_permission'))
+    $this->roleStorage->create(['id' => 'one_permission'])
       ->save();
-    user_role_grant_permissions('one_permission', array('administer permissions'));
+    user_role_grant_permissions('one_permission', ['administer permissions']);
     // Setup a role with multiple permissions.
-    $this->roleStorage->create(array('id' => 'multiple_permissions'))
+    $this->roleStorage->create(['id' => 'multiple_permissions'])
       ->save();
-    user_role_grant_permissions('multiple_permissions', array('administer permissions', 'administer users', 'access user profiles'));
+    user_role_grant_permissions('multiple_permissions', ['administer permissions', 'administer users', 'access user profiles']);
 
     // Setup a user without an extra role.
     $this->users[] = $account = $this->userStorage->create(['name' => $this->randomString()]);
     $account->save();
     // Setup a user with just the first role (so no permission beside the
     // ones from the authenticated role).
-    $this->users[] = $account = $this->userStorage->create(array('name' => 'first_role'));
+    $this->users[] = $account = $this->userStorage->create(['name' => 'first_role']);
     $account->addRole('no_permission');
     $account->save();
     // Setup a user with just the second role (so one additional permission).
-    $this->users[] = $account = $this->userStorage->create(array('name' => 'second_role'));
+    $this->users[] = $account = $this->userStorage->create(['name' => 'second_role']);
     $account->addRole('one_permission');
     $account->save();
     // Setup a user with both the second and the third role.
-    $this->users[] = $account = $this->userStorage->create(array('name' => 'second_third_role'));
+    $this->users[] = $account = $this->userStorage->create(['name' => 'second_third_role']);
     $account->addRole('one_permission');
     $account->addRole('multiple_permissions');
     $account->save();
diff --git a/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php b/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
index 97e9f33..106e091 100644
--- a/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
+++ b/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
@@ -12,7 +12,7 @@
 class UserLocalTasksTest extends LocalTaskIntegrationTestBase {
 
   protected function setUp() {
-    $this->directoryList = array('user' => 'core/modules/user');
+    $this->directoryList = ['user' => 'core/modules/user'];
     parent::setUp();
   }
 
@@ -29,12 +29,12 @@ public function testUserAdminLocalTasks($route, $expected) {
    * Provides a list of routes to test.
    */
   public function getUserAdminRoutes() {
-    return array(
-      array('entity.user.collection', array(array('entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection'))),
-      array('user.admin_permissions', array(array('entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection'))),
-      array('entity.user_role.collection', array(array('entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection'))),
-      array('entity.user.admin_form', array(array('user.account_settings_tab'))),
-    );
+    return [
+      ['entity.user.collection', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]],
+      ['user.admin_permissions', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]],
+      ['entity.user_role.collection', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]],
+      ['entity.user.admin_form', [['user.account_settings_tab']]],
+    ];
   }
 
   /**
@@ -43,9 +43,9 @@ public function getUserAdminRoutes() {
    * @dataProvider getUserLoginRoutes
    */
   public function testUserLoginLocalTasks($route) {
-    $tasks = array(
-      0 => array('user.register', 'user.pass', 'user.login',),
-    );
+    $tasks = [
+      0 => ['user.register', 'user.pass', 'user.login',],
+    ];
     $this->assertLocalTasks($route, $tasks);
   }
 
@@ -53,11 +53,11 @@ public function testUserLoginLocalTasks($route) {
    * Provides a list of routes to test.
    */
   public function getUserLoginRoutes() {
-    return array(
-      array('user.login'),
-      array('user.register'),
-      array('user.pass'),
-    );
+    return [
+      ['user.login'],
+      ['user.register'],
+      ['user.pass'],
+    ];
   }
 
   /**
@@ -65,10 +65,10 @@ public function getUserLoginRoutes() {
    *
    * @dataProvider getUserPageRoutes
    */
-  public function testUserPageLocalTasks($route, $subtask = array()) {
-    $tasks = array(
-      0 => array('entity.user.canonical', 'entity.user.edit_form',),
-    );
+  public function testUserPageLocalTasks($route, $subtask = []) {
+    $tasks = [
+      0 => ['entity.user.canonical', 'entity.user.edit_form',],
+    ];
     if ($subtask) $tasks[] = $subtask;
     $this->assertLocalTasks($route, $tasks);
   }
@@ -77,10 +77,10 @@ public function testUserPageLocalTasks($route, $subtask = array()) {
    * Provides a list of routes to test.
    */
   public function getUserPageRoutes() {
-    return array(
-      array('entity.user.canonical'),
-      array('entity.user.edit_form'),
-    );
+    return [
+      ['entity.user.canonical'],
+      ['entity.user.edit_form'],
+    ];
   }
 
 }
diff --git a/core/modules/user/tests/src/Unit/PermissionHandlerTest.php b/core/modules/user/tests/src/Unit/PermissionHandlerTest.php
index b0b91da..2918d2f 100644
--- a/core/modules/user/tests/src/Unit/PermissionHandlerTest.php
+++ b/core/modules/user/tests/src/Unit/PermissionHandlerTest.php
@@ -97,11 +97,11 @@ public function testBuildPermissionsYaml() {
     $this->moduleHandler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
     $this->moduleHandler->expects($this->once())
       ->method('getModuleDirectories')
-      ->willReturn(array(
+      ->willReturn([
         'module_a' => vfsStream::url('modules/module_a'),
         'module_b' => vfsStream::url('modules/module_b'),
         'module_c' => vfsStream::url('modules/module_c'),
-      ));
+      ]);
 
     $url = vfsStream::url('modules');
     mkdir($url . '/module_a');
@@ -124,16 +124,16 @@ public function testBuildPermissionsYaml() {
   'restrict access': TRUE
 EOF
     );
-    $modules = array('module_a', 'module_b', 'module_c');
-    $extensions = array(
+    $modules = ['module_a', 'module_b', 'module_c'];
+    $extensions = [
       'module_a' => $this->mockModuleExtension('module_a', 'Module a'),
       'module_b' => $this->mockModuleExtension('module_b', 'Module b'),
       'module_c' => $this->mockModuleExtension('module_c', 'Module c'),
-    );
+    ];
     $this->moduleHandler->expects($this->any())
       ->method('getImplementations')
       ->with('permission')
-      ->willReturn(array());
+      ->willReturn([]);
 
     $this->moduleHandler->expects($this->any())
       ->method('getModuleList')
@@ -227,11 +227,11 @@ public function testBuildPermissionsYamlCallback() {
     $this->moduleHandler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
     $this->moduleHandler->expects($this->once())
       ->method('getModuleDirectories')
-      ->willReturn(array(
+      ->willReturn([
         'module_a' => vfsStream::url('modules/module_a'),
         'module_b' => vfsStream::url('modules/module_b'),
         'module_c' => vfsStream::url('modules/module_c'),
-      ));
+      ]);
 
     $url = vfsStream::url('modules');
     mkdir($url . '/module_a');
@@ -254,17 +254,17 @@ public function testBuildPermissionsYamlCallback() {
 EOF
     );
 
-    $modules = array('module_a', 'module_b', 'module_c');
-    $extensions = array(
+    $modules = ['module_a', 'module_b', 'module_c'];
+    $extensions = [
       'module_a' => $this->mockModuleExtension('module_a', 'Module a'),
       'module_b' => $this->mockModuleExtension('module_b', 'Module b'),
       'module_c' => $this->mockModuleExtension('module_c', 'Module c'),
-    );
+    ];
 
     $this->moduleHandler->expects($this->any())
       ->method('getImplementations')
       ->with('permission')
-      ->willReturn(array());
+      ->willReturn([]);
 
     $this->moduleHandler->expects($this->any())
       ->method('getModuleList')
@@ -273,19 +273,19 @@ public function testBuildPermissionsYamlCallback() {
     $this->controllerResolver->expects($this->at(0))
       ->method('getControllerFromDefinition')
       ->with('Drupal\\user\\Tests\\TestPermissionCallbacks::singleDescription')
-      ->willReturn(array(new TestPermissionCallbacks(), 'singleDescription'));
+      ->willReturn([new TestPermissionCallbacks(), 'singleDescription']);
     $this->controllerResolver->expects($this->at(1))
       ->method('getControllerFromDefinition')
       ->with('Drupal\\user\\Tests\\TestPermissionCallbacks::titleDescription')
-      ->willReturn(array(new TestPermissionCallbacks(), 'titleDescription'));
+      ->willReturn([new TestPermissionCallbacks(), 'titleDescription']);
     $this->controllerResolver->expects($this->at(2))
       ->method('getControllerFromDefinition')
       ->with('Drupal\\user\\Tests\\TestPermissionCallbacks::titleProvider')
-      ->willReturn(array(new TestPermissionCallbacks(), 'titleProvider'));
+      ->willReturn([new TestPermissionCallbacks(), 'titleProvider']);
     $this->controllerResolver->expects($this->at(3))
       ->method('getControllerFromDefinition')
       ->with('Drupal\\user\\Tests\\TestPermissionCallbacks::titleDescriptionRestrictAccess')
-      ->willReturn(array(new TestPermissionCallbacks(), 'titleDescriptionRestrictAccess'));
+      ->willReturn([new TestPermissionCallbacks(), 'titleDescriptionRestrictAccess']);
 
     $this->permissionHandler = new TestPermissionHandler($this->moduleHandler, $this->stringTranslation, $this->controllerResolver);
 
@@ -307,9 +307,9 @@ public function testPermissionsYamlStaticAndCallback() {
     $this->moduleHandler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
     $this->moduleHandler->expects($this->once())
       ->method('getModuleDirectories')
-      ->willReturn(array(
+      ->willReturn([
         'module_a' => vfsStream::url('modules/module_a'),
-      ));
+      ]);
 
     $url = vfsStream::url('modules');
     mkdir($url . '/module_a');
@@ -322,15 +322,15 @@ public function testPermissionsYamlStaticAndCallback() {
 EOF
     );
 
-    $modules = array('module_a');
-    $extensions = array(
+    $modules = ['module_a'];
+    $extensions = [
       'module_a' => $this->mockModuleExtension('module_a', 'Module a'),
-    );
+    ];
 
     $this->moduleHandler->expects($this->any())
       ->method('getImplementations')
       ->with('permission')
-      ->willReturn(array());
+      ->willReturn([]);
 
     $this->moduleHandler->expects($this->any())
       ->method('getModuleList')
@@ -339,7 +339,7 @@ public function testPermissionsYamlStaticAndCallback() {
     $this->controllerResolver->expects($this->once())
       ->method('getControllerFromDefinition')
       ->with('Drupal\\user\\Tests\\TestPermissionCallbacks::titleDescription')
-      ->willReturn(array(new TestPermissionCallbacks(), 'titleDescription'));
+      ->willReturn([new TestPermissionCallbacks(), 'titleDescription']);
 
     $this->permissionHandler = new TestPermissionHandler($this->moduleHandler, $this->stringTranslation, $this->controllerResolver);
 
@@ -399,37 +399,37 @@ public function setSystemRebuildModuleData(array $extensions) {
 class TestPermissionCallbacks {
 
   public function singleDescription() {
-    return array(
+    return [
       'access_module_a' => 'single_description'
-    );
+    ];
   }
 
   public function titleDescription() {
-    return array(
-      'access module b' => array(
+    return [
+      'access module b' => [
         'title' => 'Access B',
         'description' => 'bla bla',
-      ),
-    );
+      ],
+    ];
   }
 
   public function titleDescriptionRestrictAccess() {
-    return array(
-      'access_module_c' => array(
+    return [
+      'access_module_c' => [
         'title' => 'Access C',
         'description' => 'bla bla',
         'restrict access' => TRUE,
-      ),
-    );
+      ],
+    ];
   }
 
   public function titleProvider() {
-    return array(
-      'access module a via module b' => array(
+    return [
+      'access module a via module b' => [
         'title' => 'Access A via B',
         'provider' => 'module_a',
-      ),
-    );
+      ],
+    ];
   }
 
 }
@@ -442,7 +442,7 @@ class TestTranslationManager implements TranslationInterface {
   /**
    * {@inheritdoc}
    */
-  public function translate($string, array $args = array(), array $options = array()) {
+  public function translate($string, array $args = [], array $options = []) {
     return new TranslatableMarkup($string, $args, $options, $this);
   }
 
@@ -456,7 +456,7 @@ public function translateString(TranslatableMarkup $translated_string) {
   /**
    * {@inheritdoc}
    */
-  public function formatPlural($count, $singular, $plural, array $args = array(), array $options = array()) {
+  public function formatPlural($count, $singular, $plural, array $args = [], array $options = []) {
     return new PluralTranslatableMarkup($count, $singular, $plural, $args, $options, $this);
   }
 
diff --git a/core/modules/user/tests/src/Unit/Plugin/Action/AddRoleUserTest.php b/core/modules/user/tests/src/Unit/Plugin/Action/AddRoleUserTest.php
index 0763b25..5ca694b 100644
--- a/core/modules/user/tests/src/Unit/Plugin/Action/AddRoleUserTest.php
+++ b/core/modules/user/tests/src/Unit/Plugin/Action/AddRoleUserTest.php
@@ -22,8 +22,8 @@ public function testExecuteAddExistingRole() {
       ->with($this->equalTo('test_role_1'))
       ->will($this->returnValue(TRUE));
 
-    $config = array('rid' => 'test_role_1');
-    $remove_role_plugin = new AddRoleUser($config, 'user_add_role_action', array('type' => 'user'), $this->userRoleEntityType);
+    $config = ['rid' => 'test_role_1'];
+    $remove_role_plugin = new AddRoleUser($config, 'user_add_role_action', ['type' => 'user'], $this->userRoleEntityType);
 
     $remove_role_plugin->execute($this->account);
   }
@@ -40,8 +40,8 @@ public function testExecuteAddNonExistingRole() {
       ->with($this->equalTo('test_role_1'))
       ->will($this->returnValue(FALSE));
 
-    $config = array('rid' => 'test_role_1');
-    $remove_role_plugin = new AddRoleUser($config, 'user_remove_role_action', array('type' => 'user'), $this->userRoleEntityType);
+    $config = ['rid' => 'test_role_1'];
+    $remove_role_plugin = new AddRoleUser($config, 'user_remove_role_action', ['type' => 'user'], $this->userRoleEntityType);
 
     $remove_role_plugin->execute($this->account);
   }
diff --git a/core/modules/user/tests/src/Unit/Plugin/Action/RemoveRoleUserTest.php b/core/modules/user/tests/src/Unit/Plugin/Action/RemoveRoleUserTest.php
index 1c6fa25..878b4ba 100644
--- a/core/modules/user/tests/src/Unit/Plugin/Action/RemoveRoleUserTest.php
+++ b/core/modules/user/tests/src/Unit/Plugin/Action/RemoveRoleUserTest.php
@@ -22,8 +22,8 @@ public function testExecuteRemoveExistingRole() {
       ->with($this->equalTo('test_role_1'))
       ->will($this->returnValue(TRUE));
 
-    $config = array('rid' => 'test_role_1');
-    $remove_role_plugin = new RemoveRoleUser($config, 'user_remove_role_action', array('type' => 'user'), $this->userRoleEntityType);
+    $config = ['rid' => 'test_role_1'];
+    $remove_role_plugin = new RemoveRoleUser($config, 'user_remove_role_action', ['type' => 'user'], $this->userRoleEntityType);
 
     $remove_role_plugin->execute($this->account);
   }
@@ -40,8 +40,8 @@ public function testExecuteRemoveNonExistingRole() {
       ->with($this->equalTo('test_role_1'))
       ->will($this->returnValue(FALSE));
 
-    $config = array('rid' => 'test_role_1');
-    $remove_role_plugin = new RemoveRoleUser($config, 'user_remove_role_action', array('type' => 'user'), $this->userRoleEntityType);
+    $config = ['rid' => 'test_role_1'];
+    $remove_role_plugin = new RemoveRoleUser($config, 'user_remove_role_action', ['type' => 'user'], $this->userRoleEntityType);
 
     $remove_role_plugin->execute($this->account);
   }
diff --git a/core/modules/user/tests/src/Unit/Plugin/Core/Entity/UserTest.php b/core/modules/user/tests/src/Unit/Plugin/Core/Entity/UserTest.php
index 86ce8e9..623203e 100644
--- a/core/modules/user/tests/src/Unit/Plugin/Core/Entity/UserTest.php
+++ b/core/modules/user/tests/src/Unit/Plugin/Core/Entity/UserTest.php
@@ -14,20 +14,20 @@ class UserTest extends UserSessionTest {
   /**
    * {@inheritdoc}
    */
-  protected function createUserSession(array $rids = array(), $authenticated = FALSE) {
+  protected function createUserSession(array $rids = [], $authenticated = FALSE) {
     $user = $this->getMockBuilder('Drupal\user\Entity\User')
       ->disableOriginalConstructor()
-      ->setMethods(array('get', 'id'))
+      ->setMethods(['get', 'id'])
       ->getMock();
     $user->expects($this->any())
       ->method('id')
       // @todo Also test the uid = 1 handling.
       ->will($this->returnValue($authenticated ? 2 : 0));
-    $roles = array();
+    $roles = [];
     foreach ($rids as $rid) {
-      $roles[] = (object) array(
+      $roles[] = (object) [
         'target_id' => $rid,
-      );
+      ];
     }
     $user->expects($this->any())
       ->method('get')
@@ -44,14 +44,14 @@ protected function createUserSession(array $rids = array(), $authenticated = FAL
    */
   public function testUserGetRoles() {
     // Anonymous user.
-    $user = $this->createUserSession(array());
-    $this->assertEquals(array(RoleInterface::ANONYMOUS_ID), $user->getRoles());
-    $this->assertEquals(array(), $user->getRoles(TRUE));
+    $user = $this->createUserSession([]);
+    $this->assertEquals([RoleInterface::ANONYMOUS_ID], $user->getRoles());
+    $this->assertEquals([], $user->getRoles(TRUE));
 
     // Authenticated user.
-    $user = $this->createUserSession(array(), TRUE);
-    $this->assertEquals(array(RoleInterface::AUTHENTICATED_ID), $user->getRoles());
-    $this->assertEquals(array(), $user->getRoles(TRUE));
+    $user = $this->createUserSession([], TRUE);
+    $this->assertEquals([RoleInterface::AUTHENTICATED_ID], $user->getRoles());
+    $this->assertEquals([], $user->getRoles(TRUE));
   }
 
 }
diff --git a/core/modules/user/tests/src/Unit/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidatorTest.php b/core/modules/user/tests/src/Unit/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidatorTest.php
index 69edf3b..805c96e 100644
--- a/core/modules/user/tests/src/Unit/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidatorTest.php
+++ b/core/modules/user/tests/src/Unit/Plugin/Validation/Constraint/ProtectedUserFieldConstraintValidatorTest.php
@@ -53,7 +53,7 @@ public function testValidate($items, $expected_violation, $name = FALSE) {
     if ($expected_violation) {
       $context->expects($this->once())
         ->method('addViolation')
-        ->with($constraint->message, array('%name' => $name));
+        ->with($constraint->message, ['%name' => $name]);
     }
     else {
       $context->expects($this->never())
diff --git a/core/modules/user/tests/src/Unit/Plugin/views/field/UserBulkFormTest.php b/core/modules/user/tests/src/Unit/Plugin/views/field/UserBulkFormTest.php
index cdbd30a..11a970a 100644
--- a/core/modules/user/tests/src/Unit/Plugin/views/field/UserBulkFormTest.php
+++ b/core/modules/user/tests/src/Unit/Plugin/views/field/UserBulkFormTest.php
@@ -25,7 +25,7 @@ protected function tearDown() {
    * Tests the constructor assignment of actions.
    */
   public function testConstructor() {
-    $actions = array();
+    $actions = [];
 
     for ($i = 1; $i <= 2; $i++) {
       $action = $this->getMock('\Drupal\system\ActionConfigEntityInterface');
@@ -60,7 +60,7 @@ public function testConstructor() {
     $views_data->expects($this->any())
       ->method('get')
       ->with('users')
-      ->will($this->returnValue(array('table' => array('entity type' => 'user'))));
+      ->will($this->returnValue(['table' => ['entity type' => 'user']]));
     $container = new ContainerBuilder();
     $container->set('views.views_data', $views_data);
     $container->set('string_translation', $this->getStringTranslationStub());
@@ -82,9 +82,9 @@ public function testConstructor() {
       ->getMock();
 
     $definition['title'] = '';
-    $options = array();
+    $options = [];
 
-    $user_bulk_form = new UserBulkForm(array(), 'user_bulk_form', $definition, $entity_manager, $language_manager);
+    $user_bulk_form = new UserBulkForm([], 'user_bulk_form', $definition, $entity_manager, $language_manager);
     $user_bulk_form->init($executable, $display, $options);
 
     $this->assertAttributeEquals(array_slice($actions, 0, -1, TRUE), 'actions', $user_bulk_form);
diff --git a/core/modules/user/tests/src/Unit/PrivateTempStoreTest.php b/core/modules/user/tests/src/Unit/PrivateTempStoreTest.php
index 515c862..c038b71 100644
--- a/core/modules/user/tests/src/Unit/PrivateTempStoreTest.php
+++ b/core/modules/user/tests/src/Unit/PrivateTempStoreTest.php
@@ -81,11 +81,11 @@ protected function setUp() {
 
     $this->tempStore = new PrivateTempStore($this->keyValue, $this->lock, $this->currentUser, $this->requestStack, 604800);
 
-    $this->ownObject = (object) array(
+    $this->ownObject = (object) [
       'data' => 'test_data',
       'owner' => $this->currentUser->id(),
       'updated' => (int) $request->server->get('REQUEST_TIME'),
-    );
+    ];
 
     // Clone the object but change the owner.
     $this->otherObject = clone $this->ownObject;
diff --git a/core/modules/user/tests/src/Unit/SharedTempStoreTest.php b/core/modules/user/tests/src/Unit/SharedTempStoreTest.php
index 15a4ec6..ba556a3 100644
--- a/core/modules/user/tests/src/Unit/SharedTempStoreTest.php
+++ b/core/modules/user/tests/src/Unit/SharedTempStoreTest.php
@@ -76,11 +76,11 @@ protected function setUp() {
 
     $this->tempStore = new SharedTempStore($this->keyValue, $this->lock, $this->owner, $this->requestStack, 604800);
 
-    $this->ownObject = (object) array(
+    $this->ownObject = (object) [
       'data' => 'test_data',
       'owner' => $this->owner,
       'updated' => (int) $request->server->get('REQUEST_TIME'),
-    );
+    ];
 
     // Clone the object but change the owner.
     $this->otherObject = clone $this->ownObject;
diff --git a/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php b/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
index 4657a5d..216e8d6 100644
--- a/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
+++ b/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
@@ -80,10 +80,10 @@ protected function setUp() {
     $this->owner
       ->expects($this->any())
       ->method('hasPermission')
-      ->will($this->returnValueMap(array(
-        array('administer users', FALSE),
-        array('change own username', TRUE),
-      )));
+      ->will($this->returnValueMap([
+        ['administer users', FALSE],
+        ['change own username', TRUE],
+      ]));
 
     $this->owner
       ->expects($this->any())
@@ -102,7 +102,7 @@ protected function setUp() {
     $module_handler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
     $module_handler->expects($this->any())
       ->method('getImplementations')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
     $this->accessControlHandler->setModuleHandler($module_handler);
 
     $this->items = $this->getMockBuilder('Drupal\Core\Field\FieldItemList')
@@ -128,7 +128,7 @@ public function assertFieldAccess($field, $viewer, $target, $view, $edit) {
       ->method('getEntity')
       ->will($this->returnValue($this->{$target}));
 
-    foreach (array('view' => $view, 'edit' => $edit) as $operation => $result) {
+    foreach (['view' => $view, 'edit' => $edit] as $operation => $result) {
       $result_text = !isset($result) ? 'null' : ($result ? 'true' : 'false');
       $message = "User '$field' field access returns '$result_text' with operation '$operation' for '$viewer' accessing '$target'";
       $this->assertSame($result, $this->accessControlHandler->fieldAccess($operation, $field_definition, $this->{$viewer}, $this->items), $message);
@@ -148,41 +148,41 @@ public function testUserNameAccess($viewer, $target, $view, $edit) {
    * Provides test data for testUserNameAccess().
    */
   public function userNameProvider() {
-    $name_access = array(
+    $name_access = [
       // The viewer user is allowed to see user names on all accounts.
-      array(
+      [
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => FALSE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'owner',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => FALSE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'viewer',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => FALSE,
-      ),
+      ],
       // The owner user is allowed to change its own user name.
-      array(
+      [
         'viewer' => 'owner',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
+      ],
       // The users-administrator user has full access.
-      array(
+      [
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
-    );
+      ],
+    ];
     return $name_access;
   }
 
@@ -199,24 +199,24 @@ public function testHiddenUserSettings($field, $viewer, $target, $view, $edit) {
    * Provides test data for testHiddenUserSettings().
    */
   public function hiddenUserSettingsProvider() {
-    $access_info = array();
+    $access_info = [];
 
-    $fields = array(
+    $fields = [
       'preferred_langcode',
       'preferred_admin_langcode',
       'timezone',
       'mail',
-    );
+    ];
 
     foreach ($fields as $field) {
-      $access_info[] = array(
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => TRUE,
-      );
-      $access_info[] = array(
+      ];
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'viewer',
         'target' => 'owner',
@@ -225,21 +225,21 @@ public function hiddenUserSettingsProvider() {
         // reality edit access will already be checked on entity level and the
         // user without view access will typically not be able to edit.
         'edit' => TRUE,
-      );
-      $access_info[] = array(
+      ];
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'owner',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      );
-      $access_info[] = array(
+      ];
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      );
+      ];
     }
 
     return $access_info;
@@ -258,38 +258,38 @@ public function testAdminFieldAccess($field, $viewer, $target, $view, $edit) {
    * Provides test data for testAdminFieldAccess().
    */
   public function adminFieldAccessProvider() {
-    $access_info = array();
+    $access_info = [];
 
-    $fields = array(
+    $fields = [
       'roles',
       'status',
       'access',
       'login',
       'init',
-    );
+    ];
 
     foreach ($fields as $field) {
-      $access_info[] = array(
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => FALSE,
         'edit' => FALSE,
-      );
-      $access_info[] = array(
+      ];
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'viewer',
         'target' => 'owner',
         'view' => FALSE,
         'edit' => FALSE,
-      );
-      $access_info[] = array(
+      ];
+      $access_info[] = [
         'field' => $field,
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      );
+      ];
     }
 
     return $access_info;
@@ -308,14 +308,14 @@ public function testPasswordAccess($viewer, $target, $view, $edit) {
    * Provides test data for passwordAccessProvider().
    */
   public function passwordAccessProvider() {
-    $pass_access = array(
-      array(
+    $pass_access = [
+      [
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => FALSE,
         'edit' => TRUE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'viewer',
         'target' => 'owner',
         'view' => FALSE,
@@ -323,20 +323,20 @@ public function passwordAccessProvider() {
         // reality edit access will already be checked on entity level and the
         // user without view access will typically not be able to edit.
         'edit' => TRUE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'owner',
         'target' => 'viewer',
         'view' => FALSE,
         'edit' => TRUE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => FALSE,
         'edit' => TRUE,
-      ),
-    );
+      ],
+    ];
     return $pass_access;
   }
 
@@ -353,26 +353,26 @@ public function testCreatedAccess($viewer, $target, $view, $edit) {
    * Provides test data for testCreatedAccess().
    */
   public function createdAccessProvider() {
-    $created_access = array(
-      array(
+    $created_access = [
+      [
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => FALSE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'owner',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => FALSE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
-    );
+      ],
+    ];
     return $created_access;
   }
 
@@ -392,26 +392,26 @@ public function testNonExistingFieldAccess($viewer, $target, $view, $edit) {
    * Provides test data for testNonExistingFieldAccess().
    */
   public function NonExistingFieldAccessProvider() {
-    $created_access = array(
-      array(
+    $created_access = [
+      [
         'viewer' => 'viewer',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'owner',
         'target' => 'viewer',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
-      array(
+      ],
+      [
         'viewer' => 'admin',
         'target' => 'owner',
         'view' => TRUE,
         'edit' => TRUE,
-      ),
-    );
+      ],
+    ];
     return $created_access;
   }
 
diff --git a/core/modules/user/tests/src/Unit/UserAuthTest.php b/core/modules/user/tests/src/Unit/UserAuthTest.php
index 1b96d8f..698c8b5 100644
--- a/core/modules/user/tests/src/Unit/UserAuthTest.php
+++ b/core/modules/user/tests/src/Unit/UserAuthTest.php
@@ -69,7 +69,7 @@ protected function setUp() {
 
     $this->testUser = $this->getMockBuilder('Drupal\user\Entity\User')
       ->disableOriginalConstructor()
-      ->setMethods(array('id', 'setPassword', 'save', 'getPassword'))
+      ->setMethods(['id', 'setPassword', 'save', 'getPassword'])
       ->getMock();
 
     $this->userAuth = new UserAuth($entity_manager, $this->passwordService);
@@ -95,12 +95,12 @@ public function testAuthenticateWithMissingCredentials($username, $password) {
    * @return array
    */
   public function providerTestAuthenticateWithMissingCredentials() {
-    return array(
-      array(NULL, NULL),
-      array(NULL, ''),
-      array('', NULL),
-      array('', ''),
-    );
+    return [
+      [NULL, NULL],
+      [NULL, ''],
+      ['', NULL],
+      ['', ''],
+    ];
   }
 
   /**
@@ -111,8 +111,8 @@ public function providerTestAuthenticateWithMissingCredentials() {
   public function testAuthenticateWithNoAccountReturned() {
     $this->userStorage->expects($this->once())
       ->method('loadByProperties')
-      ->with(array('name' => $this->username))
-      ->will($this->returnValue(array()));
+      ->with(['name' => $this->username])
+      ->will($this->returnValue([]));
 
     $this->assertFalse($this->userAuth->authenticate($this->username, $this->password));
   }
@@ -125,8 +125,8 @@ public function testAuthenticateWithNoAccountReturned() {
   public function testAuthenticateWithIncorrectPassword() {
     $this->userStorage->expects($this->once())
       ->method('loadByProperties')
-      ->with(array('name' => $this->username))
-      ->will($this->returnValue(array($this->testUser)));
+      ->with(['name' => $this->username])
+      ->will($this->returnValue([$this->testUser]));
 
     $this->passwordService->expects($this->once())
       ->method('check')
@@ -148,8 +148,8 @@ public function testAuthenticateWithCorrectPassword() {
 
     $this->userStorage->expects($this->once())
       ->method('loadByProperties')
-      ->with(array('name' => $this->username))
-      ->will($this->returnValue(array($this->testUser)));
+      ->with(['name' => $this->username])
+      ->will($this->returnValue([$this->testUser]));
 
     $this->passwordService->expects($this->once())
       ->method('check')
@@ -175,8 +175,8 @@ public function testAuthenticateWithZeroPassword() {
 
     $this->userStorage->expects($this->once())
       ->method('loadByProperties')
-      ->with(array('name' => $this->username))
-      ->will($this->returnValue(array($this->testUser)));
+      ->with(['name' => $this->username])
+      ->will($this->returnValue([$this->testUser]));
 
     $this->passwordService->expects($this->once())
       ->method('check')
@@ -203,8 +203,8 @@ public function testAuthenticateWithCorrectPasswordAndNewPasswordHash() {
 
     $this->userStorage->expects($this->once())
       ->method('loadByProperties')
-      ->with(array('name' => $this->username))
-      ->will($this->returnValue(array($this->testUser)));
+      ->with(['name' => $this->username])
+      ->will($this->returnValue([$this->testUser]));
 
     $this->passwordService->expects($this->once())
       ->method('check')
diff --git a/core/modules/user/tests/src/Unit/Views/Argument/RolesRidTest.php b/core/modules/user/tests/src/Unit/Views/Argument/RolesRidTest.php
index 8693fc4..b8f2888 100644
--- a/core/modules/user/tests/src/Unit/Views/Argument/RolesRidTest.php
+++ b/core/modules/user/tests/src/Unit/Views/Argument/RolesRidTest.php
@@ -19,24 +19,24 @@ class RolesRidTest extends UnitTestCase {
    * @covers ::titleQuery
    */
   public function testTitleQuery() {
-    $role1 = new Role(array(
+    $role1 = new Role([
       'id' => 'test_rid_1',
       'label' => 'test rid 1'
-    ), 'user_role');
-    $role2 = new Role(array(
+    ], 'user_role');
+    $role2 = new Role([
       'id' => 'test_rid_2',
       'label' => 'test <strong>rid 2</strong>',
-    ), 'user_role');
+    ], 'user_role');
 
     // Creates a stub entity storage;
     $role_storage = $this->getMockForAbstractClass('Drupal\Core\Entity\EntityStorageInterface');
     $role_storage->expects($this->any())
       ->method('loadMultiple')
-      ->will($this->returnValueMap(array(
-        array(array(), array()),
-        array(array('test_rid_1'), array('test_rid_1' => $role1)),
-        array(array('test_rid_1', 'test_rid_2'), array('test_rid_1' => $role1, 'test_rid_2' => $role2)),
-      )));
+      ->will($this->returnValueMap([
+        [[], []],
+        [['test_rid_1'], ['test_rid_1' => $role1]],
+        [['test_rid_1', 'test_rid_2'], ['test_rid_1' => $role1, 'test_rid_2' => $role2]],
+      ]));
 
     $entity_type = $this->getMock('Drupal\Core\Entity\EntityTypeInterface');
     $entity_type->expects($this->any())
@@ -63,19 +63,19 @@ public function testTitleQuery() {
     $container->set('entity.manager', $entity_manager);
     \Drupal::setContainer($container);
 
-    $roles_rid_argument = new RolesRid(array(), 'user__roles_rid', array(), $entity_manager);
+    $roles_rid_argument = new RolesRid([], 'user__roles_rid', [], $entity_manager);
 
-    $roles_rid_argument->value = array();
+    $roles_rid_argument->value = [];
     $titles = $roles_rid_argument->titleQuery();
-    $this->assertEquals(array(), $titles);
+    $this->assertEquals([], $titles);
 
-    $roles_rid_argument->value = array('test_rid_1');
+    $roles_rid_argument->value = ['test_rid_1'];
     $titles = $roles_rid_argument->titleQuery();
-    $this->assertEquals(array('test rid 1'), $titles);
+    $this->assertEquals(['test rid 1'], $titles);
 
-    $roles_rid_argument->value = array('test_rid_1', 'test_rid_2');
+    $roles_rid_argument->value = ['test_rid_1', 'test_rid_2'];
     $titles = $roles_rid_argument->titleQuery();
-    $this->assertEquals(array('test rid 1', 'test <strong>rid 2</strong>'), $titles);
+    $this->assertEquals(['test rid 1', 'test <strong>rid 2</strong>'], $titles);
   }
 
 }
diff --git a/core/modules/user/user.api.php b/core/modules/user/user.api.php
index 2f40eb9..364dd1a 100644
--- a/core/modules/user/user.api.php
+++ b/core/modules/user/user.api.php
@@ -44,7 +44,7 @@ function hook_user_cancel($edit, $account, $method) {
       $nodes = \Drupal::entityQuery('node')
         ->condition('uid', $account->id())
         ->execute();
-      node_mass_update($nodes, array('status' => 0), NULL, TRUE);
+      node_mass_update($nodes, ['status' => 0], NULL, TRUE);
       break;
 
     case 'user_cancel_reassign':
@@ -53,10 +53,10 @@ function hook_user_cancel($edit, $account, $method) {
       $nodes = \Drupal::entityQuery('node')
         ->condition('uid', $account->id())
         ->execute();
-      node_mass_update($nodes, array('uid' => 0), NULL, TRUE);
+      node_mass_update($nodes, ['uid' => 0], NULL, TRUE);
       // Anonymize old revisions.
       db_update('node_field_revision')
-        ->fields(array('uid' => 0))
+        ->fields(['uid' => 0])
         ->condition('uid', $account->id())
         ->execute();
       break;
@@ -94,12 +94,12 @@ function hook_user_cancel_methods_alter(&$methods) {
   unset($methods['user_cancel_reassign']);
 
   // Add a custom zero-out method.
-  $methods['mymodule_zero_out'] = array(
+  $methods['mymodule_zero_out'] = [
     'title' => t('Delete the account and remove all content.'),
     'description' => t('All your content will be replaced by empty strings.'),
     // access should be used for administrative methods only.
     'access' => $account->hasPermission('access zero-out account cancellation method'),
-  );
+  ];
 }
 
 /**
@@ -123,7 +123,7 @@ function hook_user_cancel_methods_alter(&$methods) {
 function hook_user_format_name_alter(&$name, $account) {
   // Display the user's uid instead of name.
   if ($account->id()) {
-    $name = t('User @uid', array('@uid' => $account->id()));
+    $name = t('User @uid', ['@uid' => $account->id()]);
   }
 }
 
@@ -137,7 +137,7 @@ function hook_user_login($account) {
   $config = \Drupal::config('system.date');
   // If the user has a NULL time zone, notify them to set a time zone.
   if (!$account->getTimezone() && $config->get('timezone.user.configurable') && $config->get('timezone.user.warn')) {
-    drupal_set_message(t('Configure your <a href=":user-edit">account time zone setting</a>.', array(':user-edit' => $account->url('edit-form', array('query' => \Drupal::destination()->getAsArray(), 'fragment' => 'edit-timezone')))));
+    drupal_set_message(t('Configure your <a href=":user-edit">account time zone setting</a>.', [':user-edit' => $account->url('edit-form', ['query' => \Drupal::destination()->getAsArray(), 'fragment' => 'edit-timezone'])]));
   }
 }
 
@@ -149,10 +149,10 @@ function hook_user_login($account) {
  */
 function hook_user_logout($account) {
   db_insert('logouts')
-    ->fields(array(
+    ->fields([
       'uid' => $account->id(),
       'time' => time(),
-    ))
+    ])
     ->execute();
 }
 
diff --git a/core/modules/user/user.install b/core/modules/user/user.install
index 7cc46ef..330ad14 100644
--- a/core/modules/user/user.install
+++ b/core/modules/user/user.install
@@ -9,53 +9,53 @@
  * Implements hook_schema().
  */
 function user_schema() {
-  $schema['users_data'] = array(
+  $schema['users_data'] = [
     'description' => 'Stores module data as key/value pairs per user.',
-    'fields' => array(
-      'uid' => array(
+    'fields' => [
+      'uid' => [
         'description' => 'Primary key: {users}.uid for user.',
         'type' => 'int',
         'unsigned' => TRUE,
         'not null' => TRUE,
         'default' => 0,
-      ),
-      'module' => array(
+      ],
+      'module' => [
         'description' => 'The name of the module declaring the variable.',
         'type' => 'varchar_ascii',
         'length' => DRUPAL_EXTENSION_NAME_MAX_LENGTH,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'description' => 'The identifier of the data.',
         'type' => 'varchar_ascii',
         'length' => 128,
         'not null' => TRUE,
         'default' => '',
-      ),
-      'value' => array(
+      ],
+      'value' => [
         'description' => 'The value.',
         'type' => 'blob',
         'not null' => FALSE,
         'size' => 'big',
-      ),
-      'serialized' => array(
+      ],
+      'serialized' => [
         'description' => 'Whether value is serialized.',
         'type' => 'int',
         'size' => 'tiny',
         'unsigned' => TRUE,
         'default' => 0,
-      ),
-    ),
-    'primary key' => array('uid', 'module', 'name'),
-    'indexes' => array(
-      'module' => array('module'),
-      'name' => array('name'),
-    ),
-    'foreign keys' => array(
-      'uid' => array('users' => 'uid'),
-    ),
-  );
+      ],
+    ],
+    'primary key' => ['uid', 'module', 'name'],
+    'indexes' => [
+      'module' => ['module'],
+      'name' => ['name'],
+    ],
+    'foreign keys' => [
+      'uid' => ['users' => 'uid'],
+    ],
+  ];
 
   return $schema;
 }
@@ -67,22 +67,22 @@ function user_install() {
   $storage = \Drupal::entityManager()->getStorage('user');
   // Insert a row for the anonymous user.
   $storage
-    ->create(array(
+    ->create([
       'uid' => 0,
       'status' => 0,
       'name' => '',
-    ))
+    ])
     ->save();
 
   // We need some placeholders here as name and mail are unique.
   // This will be changed by the settings form in the installer.
   $storage
-    ->create(array(
+    ->create([
       'uid' => 1,
       'name' => 'placeholder-for-uid-1',
       'mail' => 'placeholder-for-uid-1',
       'status' => TRUE,
-    ))
+    ])
     ->save();
 }
 
diff --git a/core/modules/user/user.module b/core/modules/user/user.module
index 638ed64..b865e95 100644
--- a/core/modules/user/user.module
+++ b/core/modules/user/user.module
@@ -68,19 +68,19 @@ function user_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.user':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The User module allows users to register, log in, and log out. It also allows users with proper permissions to manage user roles and permissions. For more information, see the <a href=":user_docs">online documentation for the User module</a>.', array(':user_docs' => 'https://www.drupal.org/documentation/modules/user')) . '</p>';
+      $output .= '<p>' . t('The User module allows users to register, log in, and log out. It also allows users with proper permissions to manage user roles and permissions. For more information, see the <a href=":user_docs">online documentation for the User module</a>.', [':user_docs' => 'https://www.drupal.org/documentation/modules/user']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating and managing users') . '</dt>';
-      $output .= '<dd>' . t('Through the <a href=":people">People administration page</a> you can add and cancel user accounts and assign users to roles. By editing one particular user you can change their username, email address, password, and information in other fields.', array(':people' => \Drupal::url('entity.user.collection'))) . '</dd>';
+      $output .= '<dd>' . t('Through the <a href=":people">People administration page</a> you can add and cancel user accounts and assign users to roles. By editing one particular user you can change their username, email address, password, and information in other fields.', [':people' => \Drupal::url('entity.user.collection')]) . '</dd>';
       $output .= '<dt>' . t('Configuring user roles') . '</dt>';
-      $output .= '<dd>' . t('<em>Roles</em> are used to group and classify users; each user can be assigned one or more roles. Typically there are two pre-defined roles: <em>Anonymous user</em> (users that are not logged in), and <em>Authenticated user</em> (users that are registered and logged in). Depending on how your site was set up, an <em>Administrator</em> role may also be available: users with this role will automatically be assigned any new permissions whenever a module is enabled. You can create additional roles on the <a href=":roles">Roles administration page</a>.', array(':roles' => \Drupal::url('entity.user_role.collection'))) . '</dd>';
+      $output .= '<dd>' . t('<em>Roles</em> are used to group and classify users; each user can be assigned one or more roles. Typically there are two pre-defined roles: <em>Anonymous user</em> (users that are not logged in), and <em>Authenticated user</em> (users that are registered and logged in). Depending on how your site was set up, an <em>Administrator</em> role may also be available: users with this role will automatically be assigned any new permissions whenever a module is enabled. You can create additional roles on the <a href=":roles">Roles administration page</a>.', [':roles' => \Drupal::url('entity.user_role.collection')]) . '</dd>';
       $output .= '<dt>' . t('Setting permissions') . '</dt>';
-      $output .= '<dd>' . t('After creating roles, you can set permissions for each role on the <a href=":permissions_user">Permissions page</a>. Granting a permission allows users who have been assigned a particular role to perform an action on the site, such as viewing content, editing or creating  a particular type of content, administering settings for a particular module, or using a particular function of the site (such as search).', array(':permissions_user' => \Drupal::url('user.admin_permissions'))) . '</dd>';
+      $output .= '<dd>' . t('After creating roles, you can set permissions for each role on the <a href=":permissions_user">Permissions page</a>. Granting a permission allows users who have been assigned a particular role to perform an action on the site, such as viewing content, editing or creating  a particular type of content, administering settings for a particular module, or using a particular function of the site (such as search).', [':permissions_user' => \Drupal::url('user.admin_permissions')]) . '</dd>';
       $output .= '<dt>' . t('Managing account settings') . '</dt>';
-      $output .= '<dd>' . t('The <a href=":accounts">Account settings page</a> allows you to manage settings for the displayed name of the Anonymous user role, personal contact forms, user registration settings, and account cancellation settings. On this page you can also manage settings for account personalization, and adapt the text for the email messages that users receive when they register or request a password recovery. You may also set which role is automatically assigned new permissions whenever a module is enabled (the Administrator role).', array(':accounts'  => \Drupal::url('entity.user.admin_form'))) . '</dd>';
+      $output .= '<dd>' . t('The <a href=":accounts">Account settings page</a> allows you to manage settings for the displayed name of the Anonymous user role, personal contact forms, user registration settings, and account cancellation settings. On this page you can also manage settings for account personalization, and adapt the text for the email messages that users receive when they register or request a password recovery. You may also set which role is automatically assigned new permissions whenever a module is enabled (the Administrator role).', [':accounts'  => \Drupal::url('entity.user.admin_form')]) . '</dd>';
       $output .= '<dt>' . t('Managing user account fields') . '</dt>';
-      $output .= '<dd>' . t('Because User accounts are an entity type, you can extend them by adding fields through the Manage fields tab on the <a href=":accounts">Account settings page</a>. By adding fields for e.g., a picture, a biography, or address, you can a create a custom profile for the users of the website. For background information on entities and fields, see the <a href=":field_help">Field module help page</a>.', array(':field_help' => (\Drupal::moduleHandler()->moduleExists('field')) ? \Drupal::url('help.page', array('name' => 'field')) : '#', ':accounts' => \Drupal::url('entity.user.admin_form'))) . '</dd>';
+      $output .= '<dd>' . t('Because User accounts are an entity type, you can extend them by adding fields through the Manage fields tab on the <a href=":accounts">Account settings page</a>. By adding fields for e.g., a picture, a biography, or address, you can a create a custom profile for the users of the website. For background information on entities and fields, see the <a href=":field_help">Field module help page</a>.', [':field_help' => (\Drupal::moduleHandler()->moduleExists('field')) ? \Drupal::url('help.page', ['name' => 'field']) : '#', ':accounts' => \Drupal::url('entity.user.admin_form')]) . '</dd>';
       $output .= '</dl>';
       return $output;
 
@@ -88,10 +88,10 @@ function user_help($route_name, RouteMatchInterface $route_match) {
       return '<p>' . t("This web page allows administrators to register new users. Users' email addresses and usernames must be unique.") . '</p>';
 
     case 'user.admin_permissions':
-      return '<p>' . t('Permissions let you control what users can do and see on your site. You can define a specific set of permissions for each role. (See the <a href=":role">Roles</a> page to create a role.) Any permissions granted to the Authenticated user role will be given to any user who is logged in to your site. From the <a href=":settings">Account settings</a> page, you can make any role into an Administrator role for the site, meaning that role will be granted all new permissions automatically. You should be careful to ensure that only trusted users are given this access and level of control of your site.', array(':role' => \Drupal::url('entity.user_role.collection'), ':settings' => \Drupal::url('entity.user.admin_form'))) . '</p>';
+      return '<p>' . t('Permissions let you control what users can do and see on your site. You can define a specific set of permissions for each role. (See the <a href=":role">Roles</a> page to create a role.) Any permissions granted to the Authenticated user role will be given to any user who is logged in to your site. From the <a href=":settings">Account settings</a> page, you can make any role into an Administrator role for the site, meaning that role will be granted all new permissions automatically. You should be careful to ensure that only trusted users are given this access and level of control of your site.', [':role' => \Drupal::url('entity.user_role.collection'), ':settings' => \Drupal::url('entity.user.admin_form')]) . '</p>';
 
     case 'entity.user_role.collection':
-      return '<p>' . t('A role defines a group of users that have certain privileges. These privileges are defined on the <a href=":permissions">Permissions page</a>. Here, you can define the names and the display sort order of the roles on your site. It is recommended to order roles from least permissive (for example, Anonymous user) to most permissive (for example, Administrator user). Users who are not logged in have the Anonymous user role. Users who are logged in have the Authenticated user role, plus any other roles granted to their user account.', array(':permissions' => \Drupal::url('user.admin_permissions'))) . '</p>';
+      return '<p>' . t('A role defines a group of users that have certain privileges. These privileges are defined on the <a href=":permissions">Permissions page</a>. Here, you can define the names and the display sort order of the roles on your site. It is recommended to order roles from least permissive (for example, Anonymous user) to most permissive (for example, Administrator user). Users who are not logged in have the Anonymous user role. Users who are logged in have the Authenticated user role, plus any other roles granted to their user account.', [':permissions' => \Drupal::url('user.admin_permissions')]) . '</p>';
 
     case 'entity.user.field_ui_fields':
       return '<p>' . t('This form lets administrators add and edit fields for storing user data.') . '</p>';
@@ -108,14 +108,14 @@ function user_help($route_name, RouteMatchInterface $route_match) {
  * Implements hook_theme().
  */
 function user_theme() {
-  return array(
-    'user' => array(
+  return [
+    'user' => [
       'render element' => 'elements',
-    ),
-    'username' => array(
-      'variables' => array('account' => NULL, 'attributes' => array(), 'link_options' => array()),
-    ),
-  );
+    ],
+    'username' => [
+      'variables' => ['account' => NULL, 'attributes' => [], 'link_options' => []],
+    ],
+  ];
 }
 
 /**
@@ -149,29 +149,29 @@ function user_picture_enabled() {
  * Implements hook_entity_extra_field_info().
  */
 function user_entity_extra_field_info() {
-  $fields['user']['user']['form']['account'] = array(
+  $fields['user']['user']['form']['account'] = [
     'label' => t('User name and password'),
     'description' => t('User module account form elements.'),
     'weight' => -10,
-  );
-  $fields['user']['user']['form']['language'] = array(
+  ];
+  $fields['user']['user']['form']['language'] = [
     'label' => t('Language settings'),
     'description' => t('User module form element.'),
     'weight' => 0,
-  );
+  ];
   if (\Drupal::config('system.date')->get('timezone.user.configurable')) {
-    $fields['user']['user']['form']['timezone'] = array(
+    $fields['user']['user']['form']['timezone'] = [
       'label' => t('Timezone'),
       'description' => t('System module form element.'),
       'weight' => 6,
-    );
+    ];
   }
 
-  $fields['user']['user']['display']['member_for'] = array(
+  $fields['user']['user']['display']['member_for'] = [
     'label' => t('Member for'),
     'description' => t('User module \'member for\' view element.'),
     'weight' => 5,
-  );
+  ];
 
   return $fields;
 }
@@ -228,7 +228,7 @@ function user_load_multiple(array $uids = NULL, $reset = FALSE) {
  */
 function user_load($uid, $reset = FALSE) {
   if ($reset) {
-    \Drupal::entityManager()->getStorage('user')->resetCache(array($uid));
+    \Drupal::entityManager()->getStorage('user')->resetCache([$uid]);
   }
   return User::load($uid);
 }
@@ -279,7 +279,7 @@ function user_load_by_name($name) {
  */
 function user_validate_name($name) {
   $definition = BaseFieldDefinition::create('string')
-    ->addConstraint('UserName', array());
+    ->addConstraint('UserName', []);
   $data = \Drupal::typedDataManager()->create($definition);
   $data->setValue($name);
   $violations = $data->validate();
@@ -334,9 +334,9 @@ function user_role_permissions(array $roles) {
     return _user_role_permissions_update($roles);
   }
   $entities = Role::loadMultiple($roles);
-  $role_permissions = array();
+  $role_permissions = [];
   foreach ($roles as $rid) {
-    $role_permissions[$rid] = isset($entities[$rid]) ? $entities[$rid]->getPermissions() : array();
+    $role_permissions[$rid] = isset($entities[$rid]) ? $entities[$rid]->getPermissions() : [];
   }
   return $role_permissions;
 }
@@ -356,9 +356,9 @@ function user_role_permissions(array $roles) {
  *   for the given role.
  */
 function _user_role_permissions_update($roles) {
-  $role_permissions = array();
+  $role_permissions = [];
   foreach ($roles as $rid) {
-    $role_permissions[$rid] = \Drupal::config("user.role.$rid")->get('permissions') ?: array();
+    $role_permissions[$rid] = \Drupal::config("user.role.$rid")->get('permissions') ?: [];
   }
   return $role_permissions;
 }
@@ -384,10 +384,10 @@ function user_is_blocked($name) {
  */
 function user_user_view(array &$build, UserInterface $account, EntityViewDisplayInterface $display) {
   if ($display->getComponent('member_for')) {
-    $build['member_for'] = array(
+    $build['member_for'] = [
       '#type' => 'item',
       '#markup' => '<h4 class="label">' . t('Member for') . '</h4> ' . \Drupal::service('date.formatter')->formatTimeDiffSince($account->getCreatedTime()),
-    );
+    ];
   }
 }
 
@@ -519,9 +519,9 @@ function template_preprocess_username(&$variables) {
         ->toString();
     }
     else {
-      $variables['attributes']['href'] = Url::fromRoute('entity.user.canonical', array(
+      $variables['attributes']['href'] = Url::fromRoute('entity.user.canonical', [
         'user' => $variables['uid'],
-      ))->toString();
+      ])->toString();
     }
   }
 }
@@ -542,7 +542,7 @@ function template_preprocess_username(&$variables) {
  */
 function user_login_finalize(UserInterface $account) {
   \Drupal::currentUser()->setAccount($account);
-  \Drupal::logger('user')->notice('Session opened for %name.', array('%name' => $account->getUsername()));
+  \Drupal::logger('user')->notice('Session opened for %name.', ['%name' => $account->getUsername()]);
   // Update the user table timestamp noting user has logged in.
   // This is also used to invalidate one-time login links.
   $account->setLastLoginTime(REQUEST_TIME);
@@ -556,7 +556,7 @@ function user_login_finalize(UserInterface $account) {
   // in place.
   \Drupal::service('session')->migrate();
   \Drupal::service('session')->set('uid', $account->id());
-  \Drupal::moduleHandler()->invokeAll('user_login', array($account));
+  \Drupal::moduleHandler()->invokeAll('user_login', [$account]);
 }
 
 /**
@@ -591,19 +591,19 @@ function user_user_logout($account) {
  *   A unique URL that provides a one-time log in for the user, from which
  *   they can change their password.
  */
-function user_pass_reset_url($account, $options = array()) {
+function user_pass_reset_url($account, $options = []) {
   $timestamp = REQUEST_TIME;
   $langcode = isset($options['langcode']) ? $options['langcode'] : $account->getPreferredLangcode();
   return \Drupal::url('user.reset',
-    array(
+    [
       'uid' => $account->id(),
       'timestamp' => $timestamp,
       'hash' => user_pass_rehash($account, $timestamp),
-    ),
-    array(
+    ],
+    [
       'absolute' => TRUE,
       'language' => \Drupal::languageManager()->getLanguage($langcode)
-    )
+    ]
   );
 }
 
@@ -624,10 +624,10 @@ function user_pass_reset_url($account, $options = array()) {
  * @see user_mail_tokens()
  * @see \Drupal\user\Controller\UserController::confirmCancel()
  */
-function user_cancel_url(UserInterface $account, $options = array()) {
+function user_cancel_url(UserInterface $account, $options = []) {
   $timestamp = REQUEST_TIME;
   $langcode = isset($options['langcode']) ? $options['langcode'] : $account->getPreferredLangcode();
-  $url_options = array('absolute' => TRUE, 'language' => \Drupal::languageManager()->getLanguage($langcode));
+  $url_options = ['absolute' => TRUE, 'language' => \Drupal::languageManager()->getLanguage($langcode)];
   return \Drupal::url('user.cancel_confirm', [
     'user' => $account->id(),
     'timestamp' => $timestamp,
@@ -683,16 +683,16 @@ function user_cancel($edit, $uid, $method) {
   $account = User::load($uid);
 
   if (!$account) {
-    drupal_set_message(t('The user account %id does not exist.', array('%id' => $uid)), 'error');
-    \Drupal::logger('user')->error('Attempted to cancel non-existing user account: %id.', array('%id' => $uid));
+    drupal_set_message(t('The user account %id does not exist.', ['%id' => $uid]), 'error');
+    \Drupal::logger('user')->error('Attempted to cancel non-existing user account: %id.', ['%id' => $uid]);
     return;
   }
 
   // Initialize batch (to set title).
-  $batch = array(
+  $batch = [
     'title' => t('Cancelling account'),
-    'operations' => array(),
-  );
+    'operations' => [],
+  ];
   batch_set($batch);
 
   // When the 'user_cancel_delete' method is used, user_delete() is called,
@@ -701,16 +701,16 @@ function user_cancel($edit, $uid, $method) {
   // account deletion.
   if ($method != 'user_cancel_delete') {
     // Allow modules to add further sets to this batch.
-    \Drupal::moduleHandler()->invokeAll('user_cancel', array($edit, $account, $method));
+    \Drupal::moduleHandler()->invokeAll('user_cancel', [$edit, $account, $method]);
   }
 
   // Finish the batch and actually cancel the account.
-  $batch = array(
+  $batch = [
     'title' => t('Cancelling user account'),
-    'operations' => array(
-      array('_user_cancel', array($edit, $account, $method)),
-    ),
-  );
+    'operations' => [
+      ['_user_cancel', [$edit, $account, $method]],
+    ],
+  ];
 
   // After cancelling account, ensure that user is logged out.
   if ($account->id() == \Drupal::currentUser()->id()) {
@@ -754,8 +754,8 @@ function _user_cancel($edit, $account, $method) {
       }
       $account->block();
       $account->save();
-      drupal_set_message(t('%name has been disabled.', array('%name' => $account->getDisplayName())));
-      $logger->notice('Blocked user: %name %email.', array('%name' => $account->getAccountName(), '%email' => '<' . $account->getEmail() . '>'));
+      drupal_set_message(t('%name has been disabled.', ['%name' => $account->getDisplayName()]));
+      $logger->notice('Blocked user: %name %email.', ['%name' => $account->getAccountName(), '%email' => '<' . $account->getEmail() . '>']);
       break;
 
     case 'user_cancel_reassign':
@@ -765,8 +765,8 @@ function _user_cancel($edit, $account, $method) {
         _user_mail_notify('status_canceled', $account);
       }
       $account->delete();
-      drupal_set_message(t('%name has been deleted.', array('%name' => $account->getDisplayName())));
-      $logger->notice('Deleted user: %name %email.', array('%name' => $account->getAccountName(), '%email' => '<' . $account->getEmail() . '>'));
+      drupal_set_message(t('%name has been deleted.', ['%name' => $account->getDisplayName()]));
+      $logger->notice('Deleted user: %name %email.', ['%name' => $account->getAccountName(), '%email' => '<' . $account->getEmail() . '>']);
       break;
   }
 
@@ -806,33 +806,33 @@ function _user_cancel_session_regenerate() {
 function user_cancel_methods() {
   $user_settings = \Drupal::config('user.settings');
   $anonymous_name = $user_settings->get('anonymous');
-  $methods = array(
-    'user_cancel_block' => array(
+  $methods = [
+    'user_cancel_block' => [
       'title' => t('Disable the account and keep its content.'),
       'description' => t('Your account will be blocked and you will no longer be able to log in. All of your content will remain attributed to your username.'),
-    ),
-    'user_cancel_block_unpublish' => array(
+    ],
+    'user_cancel_block_unpublish' => [
       'title' => t('Disable the account and unpublish its content.'),
       'description' => t('Your account will be blocked and you will no longer be able to log in. All of your content will be hidden from everyone but administrators.'),
-    ),
-    'user_cancel_reassign' => array(
-      'title' => t('Delete the account and make its content belong to the %anonymous-name user.', array('%anonymous-name' => $anonymous_name)),
-      'description' => t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', array('%anonymous-name' => $anonymous_name)),
-    ),
-    'user_cancel_delete' => array(
+    ],
+    'user_cancel_reassign' => [
+      'title' => t('Delete the account and make its content belong to the %anonymous-name user.', ['%anonymous-name' => $anonymous_name]),
+      'description' => t('Your account will be removed and all account information deleted. All of your content will be assigned to the %anonymous-name user.', ['%anonymous-name' => $anonymous_name]),
+    ],
+    'user_cancel_delete' => [
       'title' => t('Delete the account and its content.'),
       'description' => t('Your account will be removed and all account information deleted. All of your content will also be deleted.'),
       'access' => \Drupal::currentUser()->hasPermission('administer users'),
-    ),
-  );
+    ],
+  ];
   // Allow modules to customize account cancellation methods.
   \Drupal::moduleHandler()->alter('user_cancel_methods', $methods);
 
   // Turn all methods into real form elements.
-  $form = array(
-    '#options' => array(),
+  $form = [
+    '#options' => [],
     '#default_value' => $user_settings->get('cancel_method'),
-  );
+  ];
   foreach ($methods as $name => $method) {
     $form['#options'][$name] = $method['title'];
     // Add the description for the confirmation form. This description is never
@@ -855,7 +855,7 @@ function user_cancel_methods() {
  *   A user ID.
  */
 function user_delete($uid) {
-  user_delete_multiple(array($uid));
+  user_delete_multiple([$uid]);
 }
 
 /**
@@ -924,7 +924,7 @@ function user_mail($key, &$message, $params) {
   $token_service = \Drupal::token();
   $language_manager = \Drupal::languageManager();
   $langcode = $message['langcode'];
-  $variables = array('user' => $params['account']);
+  $variables = ['user' => $params['account']];
 
   $language = $language_manager->getLanguage($params['account']->getPreferredLangcode());
   $original_language = $language_manager->getConfigOverrideLanguage();
@@ -994,34 +994,34 @@ function user_role_names($membersonly = FALSE, $permission = NULL) {
  */
 function user_user_role_insert(RoleInterface $role) {
   // Ignore the authenticated and anonymous roles or the role is being synced.
-  if (in_array($role->id(), array(RoleInterface::AUTHENTICATED_ID, RoleInterface::ANONYMOUS_ID)) || $role->isSyncing()) {
+  if (in_array($role->id(), [RoleInterface::AUTHENTICATED_ID, RoleInterface::ANONYMOUS_ID]) || $role->isSyncing()) {
     return;
   }
 
   $add_id = 'user_add_role_action.' . $role->id();
   if (!Action::load($add_id)) {
-    $action = Action::create(array(
+    $action = Action::create([
       'id' => $add_id,
       'type' => 'user',
-      'label' => t('Add the @label role to the selected users', array('@label' => $role->label())),
-      'configuration' => array(
+      'label' => t('Add the @label role to the selected users', ['@label' => $role->label()]),
+      'configuration' => [
         'rid' => $role->id(),
-      ),
+      ],
       'plugin' => 'user_add_role_action',
-    ));
+    ]);
     $action->trustData()->save();
   }
   $remove_id = 'user_remove_role_action.' . $role->id();
   if (!Action::load($remove_id)) {
-    $action = Action::create(array(
+    $action = Action::create([
       'id' => $remove_id,
       'type' => 'user',
-      'label' => t('Remove the @label role from the selected users', array('@label' => $role->label())),
-      'configuration' => array(
+      'label' => t('Remove the @label role from the selected users', ['@label' => $role->label()]),
+      'configuration' => [
         'rid' => $role->id(),
-      ),
+      ],
       'plugin' => 'user_remove_role_action',
-    ));
+    ]);
     $action->trustData()->save();
   }
 }
@@ -1032,10 +1032,10 @@ function user_user_role_insert(RoleInterface $role) {
 function user_user_role_delete(RoleInterface $role) {
   // Delete role references for all users.
   $user_storage = \Drupal::entityManager()->getStorage('user');
-  $user_storage->deleteRoleReferences(array($role->id()));
+  $user_storage->deleteRoleReferences([$role->id()]);
 
   // Ignore the authenticated and anonymous roles or the role is being synced.
-  if (in_array($role->id(), array(RoleInterface::AUTHENTICATED_ID, RoleInterface::ANONYMOUS_ID)) || $role->isSyncing()) {
+  if (in_array($role->id(), [RoleInterface::AUTHENTICATED_ID, RoleInterface::ANONYMOUS_ID]) || $role->isSyncing()) {
     return;
   }
 
@@ -1125,7 +1125,7 @@ function user_role_load($rid) {
  * @see user_role_grant_permissions()
  * @see user_role_revoke_permissions()
  */
-function user_role_change_permissions($rid, array $permissions = array()) {
+function user_role_change_permissions($rid, array $permissions = []) {
   // Grant new permissions for the role.
   $grant = array_filter($permissions);
   if (!empty($grant)) {
@@ -1149,7 +1149,7 @@ function user_role_change_permissions($rid, array $permissions = array()) {
  * @see user_role_change_permissions()
  * @see user_role_revoke_permissions()
  */
-function user_role_grant_permissions($rid, array $permissions = array()) {
+function user_role_grant_permissions($rid, array $permissions = []) {
   // Grant new permissions for the role.
   if ($role = Role::load($rid)) {
     foreach ($permissions as $permission) {
@@ -1170,7 +1170,7 @@ function user_role_grant_permissions($rid, array $permissions = array()) {
  * @see user_role_change_permissions()
  * @see user_role_grant_permissions()
  */
-function user_role_revoke_permissions($rid, array $permissions = array()) {
+function user_role_revoke_permissions($rid, array $permissions = []) {
   // Revoke permissions for the role.
   $role = Role::load($rid);
   foreach ($permissions as $permission) {
@@ -1251,16 +1251,16 @@ function user_element_info_alter(array &$types) {
  * validation.
  */
 function user_form_process_password_confirm($element) {
-  $password_settings = array(
+  $password_settings = [
     'confirmTitle' => t('Passwords match:'),
     'confirmSuccess' => t('yes'),
     'confirmFailure' => t('no'),
     'showStrengthIndicator' => FALSE,
-  );
+  ];
 
   if (\Drupal::config('user.settings')->get('password_strength')) {
     $password_settings['showStrengthIndicator'] = TRUE;
-    $password_settings += array(
+    $password_settings += [
       'strengthTitle' => t('Password strength:'),
       'hasWeaknesses' => t('Recommendations to make your password stronger:'),
       'tooShort' => t('Make it at least 12 characters'),
@@ -1274,7 +1274,7 @@ function user_form_process_password_confirm($element) {
       'good' => t('Good'),
       'strong' => t('Strong'),
       'username' => \Drupal::currentUser()->getUsername(),
-    );
+    ];
   }
 
   $element['#attached']['library'][] = 'user/drupal.user';
@@ -1323,77 +1323,77 @@ function user_toolbar() {
   // Add logout & user account links or login link.
   $links_cache_contexts = [];
   if ($user->isAuthenticated()) {
-    $links = array(
-      'account' => array(
+    $links = [
+      'account' => [
         'title' => t('View profile'),
         'url' => Url::fromRoute('user.page'),
-        'attributes' => array(
+        'attributes' => [
           'title' => t('User account'),
-        ),
-      ),
-      'account_edit' => array(
+        ],
+      ],
+      'account_edit' => [
         'title' => t('Edit profile'),
         'url' => Url::fromRoute('entity.user.edit_form', ['user' => $user->id()]),
-        'attributes' => array(
+        'attributes' => [
           'title' => t('Edit user account'),
-        ),
-      ),
-      'logout' => array(
+        ],
+      ],
+      'logout' => [
         'title' => t('Log out'),
         'url' => Url::fromRoute('user.logout'),
-      ),
-    );
+      ],
+    ];
     // The "Edit user account" link is per-user.
     $links_cache_contexts[] = 'user';
   }
   else {
-    $links = array(
-      'login' => array(
+    $links = [
+      'login' => [
         'title' => t('Log in'),
         'url' => Url::fromRoute('user.page'),
-      ),
-    );
+      ],
+    ];
   }
 
-  $items['user'] = array(
+  $items['user'] = [
     '#type' => 'toolbar_item',
-    'tab' => array(
+    'tab' => [
       '#type' => 'link',
       '#title' => $user->getDisplayName(),
       '#url' => Url::fromRoute('user.page'),
-      '#attributes' => array(
+      '#attributes' => [
         'title' => t('My account'),
-        'class' => array('toolbar-icon', 'toolbar-icon-user'),
-      ),
+        'class' => ['toolbar-icon', 'toolbar-icon-user'],
+      ],
       '#cache' => [
         'contexts' => [
           // Cacheable per user, because the current user's name is shown.
           'user',
         ],
       ],
-    ),
-    'tray' => array(
+    ],
+    'tray' => [
       '#heading' => t('User account actions'),
-      'user_links' => array(
+      'user_links' => [
         '#cache' => [
           // Cacheable per "authenticated or not", because the links to
           // display depend on that.
-          'contexts' => Cache::mergeContexts(array('user.roles:authenticated'), $links_cache_contexts),
+          'contexts' => Cache::mergeContexts(['user.roles:authenticated'], $links_cache_contexts),
         ],
         '#theme' => 'links__toolbar_user',
         '#links' => $links,
-        '#attributes' => array(
-          'class' => array('toolbar-menu'),
-        ),
-      ),
-    ),
+        '#attributes' => [
+          'class' => ['toolbar-menu'],
+        ],
+      ],
+    ],
     '#weight' => 100,
-    '#attached' => array(
-      'library' => array(
+    '#attached' => [
+      'library' => [
         'user/drupal.user.icons',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   return $items;
 }
@@ -1404,9 +1404,9 @@ function user_toolbar() {
 function user_logout() {
   $user = \Drupal::currentUser();
 
-  \Drupal::logger('user')->notice('Session closed for %name.', array('%name' => $user->getAccountName()));
+  \Drupal::logger('user')->notice('Session closed for %name.', ['%name' => $user->getAccountName()]);
 
-  \Drupal::moduleHandler()->invokeAll('user_logout', array($user));
+  \Drupal::moduleHandler()->invokeAll('user_logout', [$user]);
 
   // Destroy the current session, and reset $user to the anonymous user.
   // Note: In Symfony the session is intended to be destroyed with
diff --git a/core/modules/user/user.tokens.inc b/core/modules/user/user.tokens.inc
index 7f456f6..8c02f6e 100644
--- a/core/modules/user/user.tokens.inc
+++ b/core/modules/user/user.tokens.inc
@@ -13,61 +13,61 @@
  * Implements hook_token_info().
  */
 function user_token_info() {
-  $types['user'] = array(
+  $types['user'] = [
     'name' => t('Users'),
     'description' => t('Tokens related to individual user accounts.'),
     'needs-data' => 'user',
-  );
-  $types['current-user'] = array(
+  ];
+  $types['current-user'] = [
     'name' => t('Current user'),
     'description' => t('Tokens related to the currently logged in user.'),
     'type' => 'user',
-  );
+  ];
 
-  $user['uid'] = array(
+  $user['uid'] = [
     'name' => t('User ID'),
     'description' => t("The unique ID of the user account."),
-  );
-  $user['name'] = array(
+  ];
+  $user['name'] = [
     'name' => t("Deprecated: User Name"),
     'description' => t("Deprecated: Use account-name or display-name instead."),
-  );
-  $user['account-name'] = array(
+  ];
+  $user['account-name'] = [
     'name' => t("Account Name"),
     'description' => t("The login name of the user account."),
-  );
-  $user['display-name'] = array(
+  ];
+  $user['display-name'] = [
     'name' => t("Display Name"),
     'description' => t("The display name of the user account."),
-  );
-  $user['mail'] = array(
+  ];
+  $user['mail'] = [
     'name' => t("Email"),
     'description' => t("The email address of the user account."),
-  );
-  $user['url'] = array(
+  ];
+  $user['url'] = [
     'name' => t("URL"),
     'description' => t("The URL of the account profile page."),
-  );
-  $user['edit-url'] = array(
+  ];
+  $user['edit-url'] = [
     'name' => t("Edit URL"),
     'description' => t("The URL of the account edit page."),
-  );
+  ];
 
-  $user['last-login'] = array(
+  $user['last-login'] = [
     'name' => t("Last login"),
     'description' => t("The date the user last logged in to the site."),
     'type' => 'date',
-  );
-  $user['created'] = array(
+  ];
+  $user['created'] = [
     'name' => t("Created"),
     'description' => t("The date the user account was created."),
     'type' => 'date',
-  );
+  ];
 
-  return array(
+  return [
     'types' => $types,
-    'tokens' => array('user' => $user),
-  );
+    'tokens' => ['user' => $user],
+  ];
 }
 
 /**
@@ -76,7 +76,7 @@ function user_token_info() {
 function user_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
 
   $token_service = \Drupal::token();
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['langcode'])) {
     $url_options['language'] = \Drupal::languageManager()->getLanguage($options['langcode']);
     $langcode = $options['langcode'];
@@ -84,7 +84,7 @@ function user_tokens($type, $tokens, array $data, array $options, BubbleableMeta
   else {
     $langcode = NULL;
   }
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'user' && !empty($data['user'])) {
     /** @var \Drupal\user\UserInterface $account */
@@ -142,18 +142,18 @@ function user_tokens($type, $tokens, array $data, array $options, BubbleableMeta
     }
 
     if ($login_tokens = $token_service->findWithPrefix($tokens, 'last-login')) {
-      $replacements += $token_service->generate('date', $login_tokens, array('date' => $account->getLastLoginTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $login_tokens, ['date' => $account->getLastLoginTime()], $options, $bubbleable_metadata);
     }
 
     if ($registered_tokens = $token_service->findWithPrefix($tokens, 'created')) {
-      $replacements += $token_service->generate('date', $registered_tokens, array('date' => $account->getCreatedTime()), $options, $bubbleable_metadata);
+      $replacements += $token_service->generate('date', $registered_tokens, ['date' => $account->getCreatedTime()], $options, $bubbleable_metadata);
     }
   }
 
   if ($type == 'current-user') {
     $account = User::load(\Drupal::currentUser()->id());
     $bubbleable_metadata->addCacheContexts(['user']);
-    $replacements += $token_service->generate('user', $tokens, array('user' => $account), $options, $bubbleable_metadata);
+    $replacements += $token_service->generate('user', $tokens, ['user' => $account], $options, $bubbleable_metadata);
   }
 
   return $replacements;
diff --git a/core/modules/user/user.views_execution.inc b/core/modules/user/user.views_execution.inc
index c9a3f1d..255fbf2 100644
--- a/core/modules/user/user.views_execution.inc
+++ b/core/modules/user/user.views_execution.inc
@@ -13,5 +13,5 @@
  * Allow replacement of current userid so we can cache these queries.
  */
 function user_views_query_substitutions(ViewExecutable $view) {
-  return array('***CURRENT_USER***' => \Drupal::currentUser()->id());
+  return ['***CURRENT_USER***' => \Drupal::currentUser()->id()];
 }
diff --git a/core/modules/views/src/Ajax/HighlightCommand.php b/core/modules/views/src/Ajax/HighlightCommand.php
index c19ff1b..b04c0be 100644
--- a/core/modules/views/src/Ajax/HighlightCommand.php
+++ b/core/modules/views/src/Ajax/HighlightCommand.php
@@ -32,10 +32,10 @@ public function __construct($selector) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsHighlight',
       'selector' => $this->selector,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Ajax/ReplaceTitleCommand.php b/core/modules/views/src/Ajax/ReplaceTitleCommand.php
index 45972c3..90e462a 100644
--- a/core/modules/views/src/Ajax/ReplaceTitleCommand.php
+++ b/core/modules/views/src/Ajax/ReplaceTitleCommand.php
@@ -32,10 +32,10 @@ public function __construct($title) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsReplaceTitle',
       'selector' => $this->title,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Ajax/ScrollTopCommand.php b/core/modules/views/src/Ajax/ScrollTopCommand.php
index a303ffb..bf2db4e 100644
--- a/core/modules/views/src/Ajax/ScrollTopCommand.php
+++ b/core/modules/views/src/Ajax/ScrollTopCommand.php
@@ -32,10 +32,10 @@ public function __construct($selector) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsScrollTop',
       'selector' => $this->selector,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Ajax/ShowButtonsCommand.php b/core/modules/views/src/Ajax/ShowButtonsCommand.php
index f5d7dce..aecd6bd 100644
--- a/core/modules/views/src/Ajax/ShowButtonsCommand.php
+++ b/core/modules/views/src/Ajax/ShowButtonsCommand.php
@@ -33,10 +33,10 @@ public function __construct($changed) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsShowButtons',
       'changed' => $this->changed,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Ajax/TriggerPreviewCommand.php b/core/modules/views/src/Ajax/TriggerPreviewCommand.php
index 080bc02..64e76cb 100644
--- a/core/modules/views/src/Ajax/TriggerPreviewCommand.php
+++ b/core/modules/views/src/Ajax/TriggerPreviewCommand.php
@@ -15,9 +15,9 @@ class TriggerPreviewCommand implements CommandInterface {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsTriggerPreview',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Analyzer.php b/core/modules/views/src/Analyzer.php
index 2a33342..3688fda 100644
--- a/core/modules/views/src/Analyzer.php
+++ b/core/modules/views/src/Analyzer.php
@@ -44,7 +44,7 @@ public function __construct(ModuleHandlerInterface $module_handler) {
    */
   public function getMessages(ViewExecutable $view) {
     $view->initDisplay();
-    $messages = $this->moduleHandler->invokeAll('views_analyze', array($view));
+    $messages = $this->moduleHandler->invokeAll('views_analyze', [$view]);
 
     return $messages;
   }
@@ -57,13 +57,13 @@ public function getMessages(ViewExecutable $view) {
    */
   public function formatMessages(array $messages) {
     if (empty($messages)) {
-      $messages = array(static::formatMessage(t('View analysis can find nothing to report.'), 'ok'));
+      $messages = [static::formatMessage(t('View analysis can find nothing to report.'), 'ok')];
     }
 
-    $types = array('ok' => array(), 'warning' => array(), 'error' => array());
+    $types = ['ok' => [], 'warning' => [], 'error' => []];
     foreach ($messages as $message) {
       if (empty($types[$message['type']])) {
-        $types[$message['type']] = array();
+        $types[$message['type']] = [];
       }
       $types[$message['type']][] = $message['message'];
     }
@@ -73,10 +73,10 @@ public function formatMessages(array $messages) {
       $type .= ' messages';
       $message = '';
       if (count($messages) > 1) {
-        $item_list = array(
+        $item_list = [
           '#theme' => 'item_list',
           '#items' => $messages,
-        );
+        ];
         $message = drupal_render($item_list);
       }
       elseif ($messages) {
@@ -116,7 +116,7 @@ public function formatMessages(array $messages) {
    *   A single formatted message, consisting of a key message and a key type.
    */
   static function formatMessage($message, $type = 'error') {
-    return array('message' => $message, 'type' => $type);
+    return ['message' => $message, 'type' => $type];
   }
 
 }
diff --git a/core/modules/views/src/Controller/ViewAjaxController.php b/core/modules/views/src/Controller/ViewAjaxController.php
index 7993d2a..c40cf85 100644
--- a/core/modules/views/src/Controller/ViewAjaxController.php
+++ b/core/modules/views/src/Controller/ViewAjaxController.php
@@ -114,7 +114,7 @@ public function ajaxView(Request $request) {
     $display_id = $request->request->get('view_display_id');
     if (isset($name) && isset($display_id)) {
       $args = $request->request->get('view_args');
-      $args = isset($args) && $args !== '' ? explode('/', $args) : array();
+      $args = isset($args) && $args !== '' ? explode('/', $args) : [];
 
       // Arguments can be empty, make sure they are passed on as NULL so that
       // argument validation is not triggered.
@@ -132,7 +132,7 @@ public function ajaxView(Request $request) {
 
       // Remove all of this stuff from the query of the request so it doesn't
       // end up in pagers and tablesort URLs.
-      foreach (array('view_name', 'view_display_id', 'view_args', 'view_path', 'view_dom_id', 'pager_element', 'view_base_path', AjaxResponseSubscriber::AJAX_REQUEST_PARAMETER) as $key) {
+      foreach (['view_name', 'view_display_id', 'view_args', 'view_path', 'view_dom_id', 'pager_element', 'view_base_path', AjaxResponseSubscriber::AJAX_REQUEST_PARAMETER] as $key) {
         $request->query->remove($key);
         $request->request->remove($key);
       }
diff --git a/core/modules/views/src/DisplayPluginCollection.php b/core/modules/views/src/DisplayPluginCollection.php
index 0b692b1..7c3c736 100644
--- a/core/modules/views/src/DisplayPluginCollection.php
+++ b/core/modules/views/src/DisplayPluginCollection.php
@@ -80,7 +80,7 @@ protected function initializePlugin($display_id) {
     // display plugin isn't found.
     catch (PluginException $e) {
       $message = $e->getMessage();
-      drupal_set_message(t('@message', array('@message' => $message)), 'warning');
+      drupal_set_message(t('@message', ['@message' => $message]), 'warning');
     }
 
     // If no plugin instance has been created, return NULL.
diff --git a/core/modules/views/src/Element/View.php b/core/modules/views/src/Element/View.php
index b02e260..43d1058 100644
--- a/core/modules/views/src/Element/View.php
+++ b/core/modules/views/src/Element/View.php
@@ -17,16 +17,16 @@ class View extends RenderElement {
    */
   public function getInfo() {
     $class = get_class($this);
-    return array(
-      '#pre_render' => array(
-        array($class, 'preRenderViewElement'),
-      ),
+    return [
+      '#pre_render' => [
+        [$class, 'preRenderViewElement'],
+      ],
       '#name' => NULL,
       '#display_id' => 'default',
-      '#arguments' => array(),
+      '#arguments' => [],
       '#embed' => TRUE,
       '#cache' => [],
-    );
+    ];
   }
 
   /**
@@ -92,7 +92,7 @@ public static function preRenderViewElement($element) {
       }
       if (empty($view->display_handler->getPluginDefinition()['returns_response'])) {
         $element['#attributes']['class'][] = 'views-element-container';
-        $element['#theme_wrappers'] = array('container');
+        $element['#theme_wrappers'] = ['container'];
       }
     }
 
diff --git a/core/modules/views/src/Entity/Render/EntityTranslationRenderTrait.php b/core/modules/views/src/Entity/Render/EntityTranslationRenderTrait.php
index e08ef04..8fbc191 100644
--- a/core/modules/views/src/Entity/Render/EntityTranslationRenderTrait.php
+++ b/core/modules/views/src/Entity/Render/EntityTranslationRenderTrait.php
@@ -30,10 +30,10 @@ protected function getEntityTranslationRenderer() {
       $view = $this->getView();
       $rendering_language = $view->display_handler->getOption('rendering_language');
       $langcode = NULL;
-      $dynamic_renderers = array(
+      $dynamic_renderers = [
         '***LANGUAGE_entity_translation***' => 'TranslationLanguageRenderer',
         '***LANGUAGE_entity_default***' => 'DefaultLanguageRenderer',
-      );
+      ];
       if (isset($dynamic_renderers[$rendering_language])) {
         // Dynamic language set based on result rows or instance defaults.
         $renderer = $dynamic_renderers[$rendering_language];
diff --git a/core/modules/views/src/Entity/View.php b/core/modules/views/src/Entity/View.php
index f75badb..a8d8d44 100644
--- a/core/modules/views/src/Entity/View.php
+++ b/core/modules/views/src/Entity/View.php
@@ -93,7 +93,7 @@ class View extends ConfigEntityBase implements ViewEntityInterface {
    *
    * @var array
    */
-  protected $display = array();
+  protected $display = [];
 
   /**
    * The name of the base field to use.
@@ -184,15 +184,15 @@ public function addDisplay($plugin_id = 'page', $title = NULL, $id = NULL) {
       }
     }
 
-    $display_options = array(
+    $display_options = [
       'display_plugin' => $plugin_id,
       'id' => $id,
       // Cast the display title to a string since it is an object.
       // @see \Drupal\Core\StringTranslation\TranslatableMarkup
       'display_title' => (string) $title,
       'position' => $id === 'default' ? 0 : count($this->display),
-      'display_options' => array(),
-    );
+      'display_options' => [],
+    ];
 
     // Add the display options to the view.
     $this->display[$id] = $display_options;
@@ -413,17 +413,17 @@ public static function preCreate(EntityStorageInterface $storage, array &$values
 
     // If there is no information about displays available add at least the
     // default display.
-    $values += array(
-      'display' => array(
-        'default' => array(
+    $values += [
+      'display' => [
+        'default' => [
           'display_plugin' => 'default',
           'id' => 'default',
           'display_title' => 'Master',
           'position' => 0,
-          'display_options' => array(),
-        ),
-      )
-    );
+          'display_options' => [],
+        ],
+      ]
+    ];
   }
 
   /**
@@ -468,15 +468,15 @@ public static function postDelete(EntityStorageInterface $storage, array $entiti
    * {@inheritdoc}
    */
   public function mergeDefaultDisplaysOptions() {
-    $displays = array();
+    $displays = [];
     foreach ($this->get('display') as $key => $options) {
-      $options += array(
-        'display_options' => array(),
+      $options += [
+        'display_options' => [],
         'display_plugin' => NULL,
         'id' => NULL,
         'display_title' => '',
         'position' => NULL,
-      );
+      ];
       // Add the defaults for the display.
       $displays[$key] = $options;
     }
diff --git a/core/modules/views/src/EntityViewsData.php b/core/modules/views/src/EntityViewsData.php
index 61def5a..1a65b1c 100644
--- a/core/modules/views/src/EntityViewsData.php
+++ b/core/modules/views/src/EntityViewsData.php
@@ -161,28 +161,28 @@ public function getViewsData() {
 
     if ($label_key = $this->entityType->getKey('label')) {
       if ($data_table) {
-        $data[$views_base_table]['table']['base']['defaults'] = array(
+        $data[$views_base_table]['table']['base']['defaults'] = [
           'field' => $label_key,
           'table' => $data_table,
-        );
+        ];
       }
       else {
-        $data[$views_base_table]['table']['base']['defaults'] = array(
+        $data[$views_base_table]['table']['base']['defaults'] = [
           'field' => $label_key,
-        );
+        ];
       }
     }
 
     // Entity types must implement a list_builder in order to use Views'
     // entity operations field.
     if ($this->entityType->hasListBuilderClass()) {
-      $data[$base_table]['operations'] = array(
-        'field' => array(
+      $data[$base_table]['operations'] = [
+        'field' => [
           'title' => $this->t('Operations links'),
           'help' => $this->t('Provides links to perform entity operations.'),
           'id' => 'entity_operations',
-        ),
-      );
+        ],
+      ];
     }
 
     if ($this->entityType->hasViewBuilderClass()) {
@@ -215,26 +215,26 @@ public function getViewsData() {
         $views_revision_base_table = $revision_data_table;
       }
       $data[$views_revision_base_table]['table']['entity revision'] = TRUE;
-      $data[$views_revision_base_table]['table']['base'] = array(
+      $data[$views_revision_base_table]['table']['base'] = [
         'field' => $revision_field,
-        'title' => $this->t('@entity_type revisions', array('@entity_type' => $this->entityType->getLabel())),
-      );
+        'title' => $this->t('@entity_type revisions', ['@entity_type' => $this->entityType->getLabel()]),
+      ];
       // Join the revision table to the base table.
-      $data[$views_revision_base_table]['table']['join'][$views_base_table] = array(
+      $data[$views_revision_base_table]['table']['join'][$views_base_table] = [
         'left_field' => $revision_field,
         'field' => $revision_field,
         'type' => 'INNER',
-      );
+      ];
 
       if ($revision_data_table) {
         $data[$revision_data_table]['table']['group'] = $this->t('@entity_type revision', ['@entity_type' => $this->entityType->getLabel()]);
         $data[$revision_data_table]['table']['entity revision'] = TRUE;
 
-        $data[$revision_table]['table']['join'][$revision_data_table] = array(
+        $data[$revision_table]['table']['join'][$revision_data_table] = [
           'left_field' => $revision_field,
           'field' => $revision_field,
           'type' => 'INNER',
-        );
+        ];
       }
     }
 
@@ -404,7 +404,7 @@ protected function mapFieldDefinition($table, $field_name, FieldDefinitionInterf
    *   The modified views data field definition.
    */
   protected function mapSingleFieldViewsData($table, $field_name, $field_type, $column_name, $column_type, $first, FieldDefinitionInterface $field_definition) {
-    $views_field = array();
+    $views_field = [];
 
     // Provide a nicer, less verbose label for the first column within a field.
     // @todo Introduce concept of the "main" column for a field, rather than
diff --git a/core/modules/views/src/EventSubscriber/RouteSubscriber.php b/core/modules/views/src/EventSubscriber/RouteSubscriber.php
index c209ddb..c2b9ea8 100644
--- a/core/modules/views/src/EventSubscriber/RouteSubscriber.php
+++ b/core/modules/views/src/EventSubscriber/RouteSubscriber.php
@@ -49,7 +49,7 @@ class RouteSubscriber extends RouteSubscriberBase {
    *
    * @var array
    */
-  protected $viewRouteNames = array();
+  protected $viewRouteNames = [];
 
   /**
    * Constructs a \Drupal\views\EventSubscriber\RouteSubscriber instance.
@@ -76,7 +76,7 @@ public function reset() {
    */
   public static function getSubscribedEvents() {
     $events = parent::getSubscribedEvents();
-    $events[RoutingEvents::FINISHED] = array('routeRebuildFinished');
+    $events[RoutingEvents::FINISHED] = ['routeRebuildFinished'];
     // Ensure to run after the entity resolver subscriber
     // @see \Drupal\Core\EventSubscriber\EntityRouteAlterSubscriber
     $events[RoutingEvents::ALTER] = ['onAlterRoutes', -175];
@@ -89,7 +89,7 @@ public static function getSubscribedEvents() {
    */
   protected function getViewsDisplayIDsWithRoute() {
     if (!isset($this->viewsDisplayPairs)) {
-      $this->viewsDisplayPairs = array();
+      $this->viewsDisplayPairs = [];
 
       // @todo Convert this method to some service.
       $views = $this->getApplicableViews();
diff --git a/core/modules/views/src/ExposedFormCache.php b/core/modules/views/src/ExposedFormCache.php
index cb67a9b..f60cc71 100644
--- a/core/modules/views/src/ExposedFormCache.php
+++ b/core/modules/views/src/ExposedFormCache.php
@@ -14,7 +14,7 @@ class ExposedFormCache {
    *
    * @var array
    */
-  protected $cache = array();
+  protected $cache = [];
 
   /**
    * Save the Views exposed form for later use.
@@ -56,7 +56,7 @@ public function getForm($view_id, $display_id) {
    * Rests the form cache.
    */
   public function reset() {
-    $this->cache = array();
+    $this->cache = [];
   }
 
 }
diff --git a/core/modules/views/src/Form/ViewsExposedForm.php b/core/modules/views/src/Form/ViewsExposedForm.php
index bacd554..44e7ec4 100644
--- a/core/modules/views/src/Form/ViewsExposedForm.php
+++ b/core/modules/views/src/Form/ViewsExposedForm.php
@@ -52,10 +52,10 @@ public function getFormId() {
   public function buildForm(array $form, FormStateInterface $form_state) {
     // Don't show the form when batch operations are in progress.
     if ($batch = batch_get() && isset($batch['current_set'])) {
-      return array(
+      return [
         // Set the theme callback to be nothing to avoid errors in template_preprocess_views_exposed_form().
         '#theme' => '',
-      );
+      ];
     }
 
     // Make sure that we validate because this form might be submitted
@@ -74,7 +74,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       return $cache;
     }
 
-    $form['#info'] = array();
+    $form['#info'] = [];
 
     // Go through each handler and let it generate its exposed widget.
     foreach ($view->display_handler->handlers as $type => $value) {
@@ -100,16 +100,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
     }
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions'
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       // Prevent from showing up in \Drupal::request()->query.
       '#name' => '',
       '#type' => 'submit',
       '#value' => $this->t('Apply'),
       '#id' => Html::getUniqueId('edit-submit-' . $view->storage->id()),
-    );
+    ];
 
     $form['#action'] = $view->hasUrl() ? $view->getUrl()->toString() : Url::fromRoute('<current>')->toString();
     $form['#theme'] = $view->buildThemeFunctions('views_exposed_form');
@@ -131,7 +131,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
   public function validateForm(array &$form, FormStateInterface $form_state) {
     $view = $form_state->get('view');
 
-    foreach (array('field', 'filter') as $type) {
+    foreach (['field', 'filter'] as $type) {
       /** @var \Drupal\views\Plugin\views\ViewsHandlerInterface[] $handlers */
       $handlers = &$view->$type;
       foreach ($handlers as $key => $handler) {
@@ -148,9 +148,9 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     // Form input keys that will not be included in $view->exposed_raw_data.
-    $exclude = array('submit', 'form_build_id', 'form_id', 'form_token', 'exposed_form_plugin', 'reset');
+    $exclude = ['submit', 'form_build_id', 'form_id', 'form_token', 'exposed_form_plugin', 'reset'];
     $values = $form_state->getValues();
-    foreach (array('field', 'filter') as $type) {
+    foreach (['field', 'filter'] as $type) {
       /** @var \Drupal\views\Plugin\views\ViewsHandlerInterface[] $handlers */
       $handlers = &$form_state->get('view')->$type;
       foreach ($handlers as $key => $info) {
@@ -169,7 +169,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $view->exposed_data = $values;
     $view->exposed_raw_input = [];
 
-    $exclude = array('submit', 'form_build_id', 'form_id', 'form_token', 'exposed_form_plugin', 'reset');
+    $exclude = ['submit', 'form_build_id', 'form_id', 'form_token', 'exposed_form_plugin', 'reset'];
     /** @var \Drupal\views\Plugin\views\exposed_form\ExposedFormPluginBase $exposed_form_plugin */
     $exposed_form_plugin = $view->display_handler->getPlugin('exposed_form');
     $exposed_form_plugin->exposedFormSubmit($form, $form_state, $exclude);
diff --git a/core/modules/views/src/Form/ViewsForm.php b/core/modules/views/src/Form/ViewsForm.php
index b124d65..575b923 100644
--- a/core/modules/views/src/Form/ViewsForm.php
+++ b/core/modules/views/src/Form/ViewsForm.php
@@ -151,19 +151,19 @@ public function buildForm(array $form, FormStateInterface $form_state, ViewExecu
     // Add the base form ID.
     $form_state->addBuildInfo('base_form_id', $this->getBaseFormId());
 
-    $form = array();
+    $form = [];
 
     $query = $this->requestStack->getCurrentRequest()->query->all();
-    $query = UrlHelper::filterQueryParameters($query, array(), '');
+    $query = UrlHelper::filterQueryParameters($query, [], '');
 
-    $options = array('query' => $query);
+    $options = ['query' => $query];
     $form['#action'] = $view->hasUrl() ? $view->getUrl()->setOptions($options)->toString() : Url::fromRoute('<current>')->setOptions($options)->toString();
     // Tell the preprocessor whether it should hide the header, footer, pager,
     // etc.
-    $form['show_view_elements'] = array(
+    $form['show_view_elements'] = [
       '#type' => 'value',
       '#value' => ($step == 'views_form_views_form') ? TRUE : FALSE,
-    );
+    ];
 
     $form_object = $this->getFormObject($form_state);
     $form += $form_object->buildForm($form, $form_state, $view, $output);
diff --git a/core/modules/views/src/Form/ViewsFormMainForm.php b/core/modules/views/src/Form/ViewsFormMainForm.php
index fb8818a..da56f49 100644
--- a/core/modules/views/src/Form/ViewsFormMainForm.php
+++ b/core/modules/views/src/Form/ViewsFormMainForm.php
@@ -30,15 +30,15 @@ public function buildForm(array $form, FormStateInterface $form_state, ViewExecu
     // (below the exposed widgets).
     $form['output']['#weight'] = 50;
 
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
-    $form['actions']['submit'] = array(
+    ];
+    $form['actions']['submit'] = [
       '#type' => 'submit',
       '#value' => t('Save'),
-    );
+    ];
 
-    $substitutions = array();
+    $substitutions = [];
     foreach ($view->field as $field_name => $field) {
       $form_element_name = $field_name;
       if (method_exists($field, 'form_element_name')) {
@@ -71,11 +71,11 @@ public function buildForm(array $form, FormStateInterface $form_state, ViewExecu
             $form_element_row_id = $row_id;
           }
 
-          $substitutions[] = array(
+          $substitutions[] = [
             'placeholder' => '<!--form-item-' . $form_element_name . '--' . $form_element_row_id . '-->',
             'field_name' => $form_element_name,
             'row_id' => $form_element_row_id,
-          );
+          ];
         }
       }
     }
@@ -89,10 +89,10 @@ public function buildForm(array $form, FormStateInterface $form_state, ViewExecu
       }
     }
 
-    $form['#substitutions'] = array(
+    $form['#substitutions'] = [
       '#type' => 'value',
       '#value' => $substitutions,
-    );
+    ];
 
     return $form;
   }
@@ -111,7 +111,7 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
     }
 
     // Call the validate method on every area handler that has it.
-    foreach (array('header', 'footer') as $area) {
+    foreach (['header', 'footer'] as $area) {
       foreach ($view->{$area} as $area_handler) {
         if (method_exists($area_handler, 'viewsFormValidate')) {
           $area_handler->viewsFormValidate($form, $form_state);
@@ -134,7 +134,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     }
 
     // Call the submit method on every area handler that has it.
-    foreach (array('header', 'footer') as $area) {
+    foreach (['header', 'footer'] as $area) {
       foreach ($view->{$area} as $area_handler) {
         if (method_exists($area_handler, 'viewsFormSubmit')) {
           $area_handler->viewsFormSubmit($form, $form_state);
diff --git a/core/modules/views/src/ManyToOneHelper.php b/core/modules/views/src/ManyToOneHelper.php
index d9ed2ca..51d2b4f 100644
--- a/core/modules/views/src/ManyToOneHelper.php
+++ b/core/modules/views/src/ManyToOneHelper.php
@@ -26,17 +26,17 @@ function __construct($handler) {
   }
 
   public static function defineOptions(&$options) {
-    $options['reduce_duplicates'] = array('default' => FALSE);
+    $options['reduce_duplicates'] = ['default' => FALSE];
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['reduce_duplicates'] = array(
+    $form['reduce_duplicates'] = [
       '#type' => 'checkbox',
       '#title' => t('Reduce duplicates'),
       '#description' => t("This filter can cause items that have more than one of the selected options to appear as duplicate results. If this filter causes duplicate results to occur, this checkbox can reduce those duplicates; however, the more terms it has to search for, the less performant the query will be, so use this with caution. Shouldn't be set on single-value fields, as it may cause values to disappear from display, if used on an incompatible field."),
       '#default_value' => !empty($this->handler->options['reduce_duplicates']),
       '#weight' => 4,
-    );
+    ];
   }
 
   /**
@@ -134,14 +134,14 @@ public function summaryJoin() {
     else {
       if (!empty($view->many_to_one_tables[$field])) {
         foreach ($view->many_to_one_tables[$field] as $value) {
-          $join->extra = array(
-            array(
+          $join->extra = [
+            [
               'field' => $this->handler->realField,
               'operator' => '!=',
               'value' => $value,
               'numeric' => !empty($this->definition['numeric']),
-            ),
-          );
+            ],
+          ];
         }
       }
       return $this->addTable($join);
@@ -173,14 +173,14 @@ public function ensureMyTable() {
           $join->type = 'LEFT';
           if (!empty($this->handler->view->many_to_one_tables[$field])) {
             foreach ($this->handler->view->many_to_one_tables[$field] as $value) {
-              $join->extra = array(
-                array(
+              $join->extra = [
+                [
                   'field' => $this->handler->realField,
                   'operator' => '!=',
                   'value' => $value,
                   'numeric' => !empty($this->handler->definition['numeric']),
-                ),
-              );
+                ],
+              ];
             }
           }
 
@@ -194,19 +194,19 @@ public function ensureMyTable() {
       // We do one join per selected value.
       if ($this->handler->operator != 'not') {
         // Clone the join for each table:
-        $this->handler->tableAliases = array();
+        $this->handler->tableAliases = [];
         foreach ($this->handler->value as $value) {
           $join = $this->getJoin();
           if ($this->handler->operator == 'and') {
             $join->type = 'INNER';
           }
-          $join->extra = array(
-            array(
+          $join->extra = [
+            [
               'field' => $this->handler->realField,
               'value' => $value,
               'numeric' => !empty($this->handler->definition['numeric']),
-            ),
-          );
+            ],
+          ];
 
           // The table alias needs to be unique to this value across the
           // multiple times the filter or argument is called by the view.
@@ -230,14 +230,14 @@ public function ensureMyTable() {
       else {
         $join = $this->getJoin();
         $join->type = 'LEFT';
-        $join->extra = array();
+        $join->extra = [];
         $join->extraOperator = 'OR';
         foreach ($this->handler->value as $value) {
-          $join->extra[] = array(
+          $join->extra[] = [
             'field' => $this->handler->realField,
             'value' => $value,
             'numeric' => !empty($this->handler->definition['numeric']),
-          );
+          ];
         }
 
         $this->handler->tableAlias = $this->addTable($join);
@@ -297,9 +297,9 @@ public function addFilter() {
         else {
           $operator = "$operator $placeholder";
         }
-        $placeholders = array(
+        $placeholders = [
           $placeholder => $value,
-        );
+        ];
         $this->handler->query->addWhereExpression($options['group'], "$field $operator", $placeholders);
       }
       else {
@@ -311,7 +311,7 @@ public function addFilter() {
             $this->handler->query->addWhereExpression(0, "$field $operator");
           }
           else {
-            $this->handler->query->addWhereExpression(0, "$field $operator($placeholder)", array($placeholder => $value));
+            $this->handler->query->addWhereExpression(0, "$field $operator($placeholder)", [$placeholder => $value]);
           }
         }
         else {
@@ -319,7 +319,7 @@ public function addFilter() {
             $this->handler->query->addWhereExpression(0, "$field $operator");
           }
           else {
-            $this->handler->query->addWhereExpression(0, "$field $operator $placeholder", array($placeholder => $value));
+            $this->handler->query->addWhereExpression(0, "$field $operator $placeholder", [$placeholder => $value]);
           }
         }
       }
diff --git a/core/modules/views/src/Plugin/Block/ViewsBlock.php b/core/modules/views/src/Plugin/Block/ViewsBlock.php
index 34116fd..34738cd 100644
--- a/core/modules/views/src/Plugin/Block/ViewsBlock.php
+++ b/core/modules/views/src/Plugin/Block/ViewsBlock.php
@@ -74,7 +74,7 @@ public function build() {
       return $output;
     }
 
-    return array();
+    return [];
   }
 
   /**
@@ -117,7 +117,7 @@ public function blockForm($form, FormStateInterface $form_state) {
       return $this->view->display_handler->blockForm($this, $form, $form_state);
     }
 
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/Block/ViewsBlockBase.php b/core/modules/views/src/Plugin/Block/ViewsBlockBase.php
index 4a814d7..4e3020c 100644
--- a/core/modules/views/src/Plugin/Block/ViewsBlockBase.php
+++ b/core/modules/views/src/Plugin/Block/ViewsBlockBase.php
@@ -102,7 +102,7 @@ protected function blockAccess(AccountInterface $account) {
    * {@inheritdoc}
    */
   public function defaultConfiguration() {
-    return array('views_label' => '');
+    return ['views_label' => ''];
   }
 
   /**
@@ -122,39 +122,39 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $form['#pre_render'][] = '\Drupal\views\Plugin\views\PluginBase::preRenderAddFieldsetMarkup';
 
     // Allow to override the label on the actual page.
-    $form['views_label_checkbox'] = array(
+    $form['views_label_checkbox'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Override title'),
       '#default_value' => !empty($this->configuration['views_label']),
-    );
+    ];
 
-    $form['views_label_fieldset'] = array(
+    $form['views_label_fieldset'] = [
       '#type' => 'fieldset',
-      '#states' => array(
-        'visible' => array(
-          array(
-            ':input[name="settings[views_label_checkbox]"]' => array('checked' => TRUE),
-          ),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          [
+            ':input[name="settings[views_label_checkbox]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ],
+    ];
 
-    $form['views_label'] = array(
+    $form['views_label'] = [
       '#title' => $this->t('Title'),
       '#type' => 'textfield',
       '#default_value' => $this->configuration['views_label'] ?: $this->view->getTitle(),
-      '#states' => array(
-        'visible' => array(
-          array(
-            ':input[name="settings[views_label_checkbox]"]' => array('checked' => TRUE),
-          ),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          [
+            ':input[name="settings[views_label_checkbox]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ],
       '#fieldset' => 'views_label_fieldset',
-    );
+    ];
 
     if ($this->view->storage->access('edit') && \Drupal::moduleHandler()->moduleExists('views_ui')) {
-      $form['views_label']['#description'] = $this->t('Changing the title here means it cannot be dynamically altered anymore. (Try changing it directly in <a href=":url">@name</a>.)', array(':url' => \Drupal::url('entity.view.edit_display_form', array('view' => $this->view->storage->id(), 'display_id' => $this->displayID)), '@name' => $this->view->storage->label()));
+      $form['views_label']['#description'] = $this->t('Changing the title here means it cannot be dynamically altered anymore. (Try changing it directly in <a href=":url">@name</a>.)', [':url' => \Drupal::url('entity.view.edit_display_form', ['view' => $this->view->storage->id(), 'display_id' => $this->displayID]), '@name' => $this->view->storage->label()]);
     }
     else {
       $form['views_label']['#description'] = $this->t('Changing the title here means it cannot be dynamically altered anymore.');
@@ -194,7 +194,7 @@ protected function addContextualLinks(&$output, $block_type = 'block') {
       // array, so if the block contains a string of already-rendered markup,
       // convert it to an array.
       if (is_string($output)) {
-        $output = array('#markup' => $output);
+        $output = ['#markup' => $output];
       }
 
       // views_add_contextual_links() needs the following information in
diff --git a/core/modules/views/src/Plugin/Derivative/DefaultWizardDeriver.php b/core/modules/views/src/Plugin/Derivative/DefaultWizardDeriver.php
index 072d692..f6a045c 100644
--- a/core/modules/views/src/Plugin/Derivative/DefaultWizardDeriver.php
+++ b/core/modules/views/src/Plugin/Derivative/DefaultWizardDeriver.php
@@ -17,16 +17,16 @@ class DefaultWizardDeriver extends DeriverBase {
   public function getDerivativeDefinitions($base_plugin_definition) {
     $views_data = Views::viewsData();
     $base_tables = array_keys($views_data->fetchBaseTables());
-    $this->derivatives = array();
+    $this->derivatives = [];
     foreach ($base_tables as $table) {
       $views_info = $views_data->get($table);
       if (empty($views_info['table']['wizard_id'])) {
-        $this->derivatives[$table] = array(
+        $this->derivatives[$table] = [
           'id' => 'standard',
           'base_table' => $table,
           'title' => $views_info['table']['base']['title'],
           'class' => 'Drupal\views\Plugin\views\wizard\Standard'
-        );
+        ];
       }
     }
     return parent::getDerivativeDefinitions($base_plugin_definition);
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsBlock.php b/core/modules/views/src/Plugin/Derivative/ViewsBlock.php
index c092a28..f4da73d4b 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsBlock.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsBlock.php
@@ -19,7 +19,7 @@ class ViewsBlock implements ContainerDeriverInterface {
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * The base plugin ID.
@@ -101,15 +101,15 @@ public function getDerivativeDefinitions($base_plugin_definition) {
             }
           }
 
-          $this->derivatives[$delta] = array(
+          $this->derivatives[$delta] = [
             'category' => $display->getOption('block_category'),
             'admin_label' => $admin_label,
-            'config_dependencies' => array(
-              'config' => array(
+            'config_dependencies' => [
+              'config' => [
                 $view->getConfigDependencyName(),
-              ),
-            ),
-          );
+              ],
+            ],
+          ];
 
           // Look for arguments and expose them as context.
           foreach ($display->getHandlers('argument') as $argument_name => $argument) {
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsEntityArgumentValidator.php b/core/modules/views/src/Plugin/Derivative/ViewsEntityArgumentValidator.php
index 2343c9d..539eb47 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsEntityArgumentValidator.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsEntityArgumentValidator.php
@@ -38,7 +38,7 @@ class ViewsEntityArgumentValidator extends DeriverBase implements ContainerDeriv
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * Constructs an ViewsEntityArgumentValidator object.
@@ -72,16 +72,16 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
     $entity_types = $this->entityManager->getDefinitions();
-    $this->derivatives = array();
+    $this->derivatives = [];
     foreach ($entity_types as $entity_type_id => $entity_type) {
-      $this->derivatives[$entity_type_id] = array(
+      $this->derivatives[$entity_type_id] = [
         'id' => 'entity:' . $entity_type_id,
         'provider' => 'views',
         'title' => $entity_type->getLabel(),
-        'help' => $this->t('Validate @label', array('@label' => $entity_type->getLabel())),
+        'help' => $this->t('Validate @label', ['@label' => $entity_type->getLabel()]),
         'entity_type' => $entity_type_id,
         'class' => $base_plugin_definition['class'],
-      );
+      ];
     }
 
     return $this->derivatives;
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsEntityRow.php b/core/modules/views/src/Plugin/Derivative/ViewsEntityRow.php
index 6b36c08..67e7c33 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsEntityRow.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsEntityRow.php
@@ -21,7 +21,7 @@ class ViewsEntityRow implements ContainerDeriverInterface {
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * The base plugin ID that the derivative is for.
@@ -89,16 +89,16 @@ public function getDerivativeDefinitions($base_plugin_definition) {
     foreach ($this->entityManager->getDefinitions() as $entity_type_id => $entity_type) {
       // Just add support for entity types which have a views integration.
       if (($base_table = $entity_type->getBaseTable()) && $this->viewsData->get($base_table) && $this->entityManager->hasHandler($entity_type_id, 'view_builder')) {
-        $this->derivatives[$entity_type_id] = array(
+        $this->derivatives[$entity_type_id] = [
           'id' => 'entity:' . $entity_type_id,
           'provider' => 'views',
           'title' => $entity_type->getLabel(),
-          'help' => t('Display the @label', array('@label' => $entity_type->getLabel())),
-          'base' => array($entity_type->getDataTable() ?: $entity_type->getBaseTable()),
+          'help' => t('Display the @label', ['@label' => $entity_type->getLabel()]),
+          'base' => [$entity_type->getDataTable() ?: $entity_type->getBaseTable()],
           'entity_type' => $entity_type_id,
-          'display_types' => array('normal'),
+          'display_types' => ['normal'],
           'class' => $base_plugin_definition['class'],
-        );
+        ];
       }
     }
 
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsExposedFilterBlock.php b/core/modules/views/src/Plugin/Derivative/ViewsExposedFilterBlock.php
index 50edadc..fc2e9b8 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsExposedFilterBlock.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsExposedFilterBlock.php
@@ -18,7 +18,7 @@ class ViewsExposedFilterBlock implements ContainerDeriverInterface {
    *
    * @var array
    */
-  protected $derivatives = array();
+  protected $derivatives = [];
 
   /**
    * The view storage.
@@ -85,15 +85,15 @@ public function getDerivativeDefinitions($base_plugin_definition) {
           // Add a block definition for the block.
           if ($display->usesExposedFormInBlock()) {
             $delta = $view->id() . '-' . $display->display['id'];
-            $desc = t('Exposed form: @view-@display_id', array('@view' => $view->id(), '@display_id' => $display->display['id']));
-            $this->derivatives[$delta] = array(
+            $desc = t('Exposed form: @view-@display_id', ['@view' => $view->id(), '@display_id' => $display->display['id']]);
+            $this->derivatives[$delta] = [
               'admin_label' => $desc,
-              'config_dependencies' => array(
-                'config' => array(
+              'config_dependencies' => [
+                'config' => [
                   $view->getConfigDependencyName(),
-                )
-              )
-            );
+                ]
+              ]
+            ];
             $this->derivatives[$delta] += $base_plugin_definition;
           }
         }
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsLocalTask.php b/core/modules/views/src/Plugin/Derivative/ViewsLocalTask.php
index a814984..bc6400c 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsLocalTask.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsLocalTask.php
@@ -67,7 +67,7 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $this->derivatives = array();
+    $this->derivatives = [];
 
     $view_route_names = $this->state->get('views.view_route_names');
     foreach ($this->getApplicableMenuViews() as $pair) {
@@ -77,7 +77,7 @@ public function getDerivativeDefinitions($base_plugin_definition) {
 
       $executable->setDisplay($display_id);
       $menu = $executable->display_handler->getOption('menu');
-      if (in_array($menu['type'], array('tab', 'default tab'))) {
+      if (in_array($menu['type'], ['tab', 'default tab'])) {
         $plugin_id = 'view.' . $executable->storage->id() . '.' . $display_id;
         $route_name = $view_route_names[$executable->storage->id() . '.' . $display_id];
 
@@ -87,11 +87,11 @@ public function getDerivativeDefinitions($base_plugin_definition) {
           continue;
         }
 
-        $this->derivatives[$plugin_id] = array(
+        $this->derivatives[$plugin_id] = [
           'route_name' => $route_name,
           'weight' => $menu['weight'],
           'title' => $menu['title'],
-        ) + $base_plugin_definition;
+        ] + $base_plugin_definition;
 
         // Default local tasks have themselves as root tab.
         if ($menu['type'] == 'default tab') {
@@ -117,7 +117,7 @@ public function alterLocalTasks(&$local_tasks) {
       $menu = $executable->display_handler->getOption('menu');
 
       // We already have set the base_route for default tabs.
-      if (in_array($menu['type'], array('tab'))) {
+      if (in_array($menu['type'], ['tab'])) {
         $plugin_id = 'view.' . $executable->storage->id() . '.' . $display_id;
         $view_route_name = $view_route_names[$executable->storage->id() . '.' . $display_id];
 
diff --git a/core/modules/views/src/Plugin/Derivative/ViewsMenuLink.php b/core/modules/views/src/Plugin/Derivative/ViewsMenuLink.php
index 1095d01..40dfe44 100644
--- a/core/modules/views/src/Plugin/Derivative/ViewsMenuLink.php
+++ b/core/modules/views/src/Plugin/Derivative/ViewsMenuLink.php
@@ -46,7 +46,7 @@ public static function create(ContainerInterface $container, $base_plugin_id) {
    * {@inheritdoc}
    */
   public function getDerivativeDefinitions($base_plugin_definition) {
-    $links = array();
+    $links = [];
     $views = Views::getApplicableViews('uses_menu_links');
 
     foreach ($views as $data) {
diff --git a/core/modules/views/src/Plugin/EntityReferenceSelection/ViewsSelection.php b/core/modules/views/src/Plugin/EntityReferenceSelection/ViewsSelection.php
index db19052..05ac9b9 100644
--- a/core/modules/views/src/Plugin/EntityReferenceSelection/ViewsSelection.php
+++ b/core/modules/views/src/Plugin/EntityReferenceSelection/ViewsSelection.php
@@ -97,14 +97,14 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
     $selection_handler_settings = $this->configuration['handler_settings'];
-    $view_settings = !empty($selection_handler_settings['view']) ? $selection_handler_settings['view'] : array();
+    $view_settings = !empty($selection_handler_settings['view']) ? $selection_handler_settings['view'] : [];
     $displays = Views::getApplicableViews('entity_reference_display');
     // Filter views that list the entity type we want, and group the separate
     // displays by view.
     $entity_type = $this->entityManager->getDefinition($this->configuration['target_type']);
     $view_storage = $this->entityManager->getStorage('view');
 
-    $options = array();
+    $options = [];
     foreach ($displays as $data) {
       list($view_id, $display_id) = $data;
       $view = $view_storage->load($view_id);
@@ -118,36 +118,36 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     // into 'view_name' and 'view_display' in the final submitted values, so
     // we massage the data at validate time on the wrapping element (not
     // ideal).
-    $form['view']['#element_validate'] = array(array(get_called_class(), 'settingsFormValidate'));
+    $form['view']['#element_validate'] = [[get_called_class(), 'settingsFormValidate']];
 
     if ($options) {
       $default = !empty($view_settings['view_name']) ? $view_settings['view_name'] . ':' . $view_settings['display_name'] : NULL;
-      $form['view']['view_and_display'] = array(
+      $form['view']['view_and_display'] = [
         '#type' => 'select',
         '#title' => $this->t('View used to select the entities'),
         '#required' => TRUE,
         '#options' => $options,
         '#default_value' => $default,
         '#description' => '<p>' . $this->t('Choose the view and display that select the entities that can be referenced.<br />Only views with a display of type "Entity Reference" are eligible.') . '</p>',
-      );
+      ];
 
       $default = !empty($view_settings['arguments']) ? implode(', ', $view_settings['arguments']) : '';
-      $form['view']['arguments'] = array(
+      $form['view']['arguments'] = [
         '#type' => 'textfield',
         '#title' => $this->t('View arguments'),
         '#default_value' => $default,
         '#required' => FALSE,
         '#description' => $this->t('Provide a comma separated list of arguments to pass to the view.'),
-      );
+      ];
     }
     else {
       if ($this->currentUser->hasPermission('administer views') && $this->moduleHandler->moduleExists('views_ui')) {
-        $form['view']['no_view_help'] = array(
-          '#markup' => '<p>' . $this->t('No eligible views were found. <a href=":create">Create a view</a> with an <em>Entity Reference</em> display, or add such a display to an <a href=":existing">existing view</a>.', array(
+        $form['view']['no_view_help'] = [
+          '#markup' => '<p>' . $this->t('No eligible views were found. <a href=":create">Create a view</a> with an <em>Entity Reference</em> display, or add such a display to an <a href=":existing">existing view</a>.', [
             ':create' => Url::fromRoute('views_ui.add')->toString(),
             ':existing' => Url::fromRoute('entity.view.collection')->toString(),
-          )) . '</p>',
-        );
+          ]) . '</p>',
+        ];
       }
       else {
         $form['view']['no_view_help']['#markup'] = '<p>' . $this->t('No eligible views were found.') . '</p>';
@@ -191,18 +191,18 @@ protected function initializeView($match = NULL, $match_operator = 'CONTAINS', $
     // Check that the view is valid and the display still exists.
     $this->view = Views::getView($view_name);
     if (!$this->view || !$this->view->access($display_name)) {
-      drupal_set_message(t('The reference view %view_name cannot be found.', array('%view_name' => $view_name)), 'warning');
+      drupal_set_message(t('The reference view %view_name cannot be found.', ['%view_name' => $view_name]), 'warning');
       return FALSE;
     }
     $this->view->setDisplay($display_name);
 
     // Pass options to the display handler to make them available later.
-    $entity_reference_options = array(
+    $entity_reference_options = [
       'match' => $match,
       'match_operator' => $match_operator,
       'limit' => $limit,
       'ids' => $ids,
-    );
+    ];
     $this->view->displayHandlers->get($display_name)->setOption('entity_reference_options', $entity_reference_options);
     return TRUE;
   }
@@ -214,13 +214,13 @@ public function getReferenceableEntities($match = NULL, $match_operator = 'CONTA
     $handler_settings = $this->configuration['handler_settings'];
     $display_name = $handler_settings['view']['display_name'];
     $arguments = $handler_settings['view']['arguments'];
-    $result = array();
+    $result = [];
     if ($this->initializeView($match, $match_operator, $limit)) {
       // Get the results.
       $result = $this->view->executeDisplay($display_name, $arguments);
     }
 
-    $return = array();
+    $return = [];
     if ($result) {
       foreach ($this->view->result as $row) {
         $entity = $row->_entity;
@@ -245,7 +245,7 @@ public function validateReferenceableEntities(array $ids) {
     $handler_settings = $this->configuration['handler_settings'];
     $display_name = $handler_settings['view']['display_name'];
     $arguments = $handler_settings['view']['arguments'];
-    $result = array();
+    $result = [];
     if ($this->initializeView(NULL, 'CONTAINS', 0, $ids)) {
       // Get the results.
       $entities = $this->view->executeDisplay($display_name, $arguments);
@@ -272,14 +272,14 @@ public static function settingsFormValidate($element, FormStateInterface $form_s
     // empty array instead.
     $arguments_string = trim($element['arguments']['#value']);
     if ($arguments_string === '') {
-      $arguments = array();
+      $arguments = [];
     }
     else {
       // array_map() is called to trim whitespaces from the arguments.
       $arguments = array_map('trim', explode(',', $arguments_string));
     }
 
-    $value = array('view_name' => $view, 'display_name' => $display, 'arguments' => $arguments);
+    $value = ['view_name' => $view, 'display_name' => $display, 'arguments' => $arguments];
     $form_state->setValueForElement($element, $value);
   }
 
diff --git a/core/modules/views/src/Plugin/Menu/Form/ViewsMenuLinkForm.php b/core/modules/views/src/Plugin/Menu/Form/ViewsMenuLinkForm.php
index d330cdf..1699f3e 100644
--- a/core/modules/views/src/Plugin/Menu/Form/ViewsMenuLinkForm.php
+++ b/core/modules/views/src/Plugin/Menu/Form/ViewsMenuLinkForm.php
@@ -28,16 +28,16 @@ class ViewsMenuLinkForm extends MenuLinkDefaultForm {
   public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
 
     // Put the title field first.
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Title'),
       // @todo Ensure that the view is not loaded with a localized title.
       //   https://www.drupal.org/node/2309507
       '#default_value' => $this->menuLink->getTitle(),
       '#weight' => -10,
-    );
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Description'),
       '#description' => $this->t('Shown when hovering over the menu link.'),
@@ -45,7 +45,7 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
       //   https://www.drupal.org/node/2309507
       '#default_value' => $this->menuLink->getDescription(),
       '#weight' => -5,
-    );
+    ];
 
     $form += parent::buildConfigurationForm($form, $form_state);
 
@@ -56,10 +56,10 @@ public function buildConfigurationForm(array $form, FormStateInterface $form_sta
     $id = $view->storage->id();
     $label = $view->storage->label();
     if ($this->moduleHandler->moduleExists('views_ui')) {
-      $message = $this->t('This link is provided by the Views module. The path can be changed by editing the view <a href=":url">@label</a>', array(':url' => \Drupal::url('entity.view.edit_form', array('view' => $id)), '@label' => $label));
+      $message = $this->t('This link is provided by the Views module. The path can be changed by editing the view <a href=":url">@label</a>', [':url' => \Drupal::url('entity.view.edit_form', ['view' => $id]), '@label' => $label]);
     }
     else {
-      $message = $this->t('This link is provided by the Views module from view %label.', array('%label' => $label));
+      $message = $this->t('This link is provided by the Views module from view %label.', ['%label' => $label]);
     }
     $form['info']['#title'] = $message;
     return $form;
diff --git a/core/modules/views/src/Plugin/Menu/ViewsMenuLink.php b/core/modules/views/src/Plugin/Menu/ViewsMenuLink.php
index b484c24..b4f078f 100644
--- a/core/modules/views/src/Plugin/Menu/ViewsMenuLink.php
+++ b/core/modules/views/src/Plugin/Menu/ViewsMenuLink.php
@@ -18,7 +18,7 @@ class ViewsMenuLink extends MenuLinkBase implements ContainerFactoryPluginInterf
   /**
    * {@inheritdoc}
    */
-  protected $overrideAllowed = array(
+  protected $overrideAllowed = [
     'menu_name' => 1,
     'parent' => 1,
     'weight' => 1,
@@ -26,7 +26,7 @@ class ViewsMenuLink extends MenuLinkBase implements ContainerFactoryPluginInterf
     'enabled' => 1,
     'title' => 1,
     'description' => 1,
-  );
+  ];
 
   /**
    * The entity manager.
diff --git a/core/modules/views/src/Plugin/ViewsHandlerManager.php b/core/modules/views/src/Plugin/ViewsHandlerManager.php
index d918696..bfc8592 100644
--- a/core/modules/views/src/Plugin/ViewsHandlerManager.php
+++ b/core/modules/views/src/Plugin/ViewsHandlerManager.php
@@ -59,9 +59,9 @@ public function __construct($handler_type, \Traversable $namespaces, ViewsData $
 
     $this->viewsData = $views_data;
     $this->handlerType = $handler_type;
-    $this->defaults = array(
+    $this->defaults = [
       'plugin_type' => $handler_type,
-    );
+    ];
   }
 
   /**
@@ -86,7 +86,7 @@ public function getHandler($item, $override = NULL) {
 
     if (isset($data[$field][$this->handlerType])) {
       $definition = $data[$field][$this->handlerType];
-      foreach (array('group', 'title', 'title short', 'label', 'help', 'real field', 'real table', 'entity type', 'entity field') as $key) {
+      foreach (['group', 'title', 'title short', 'label', 'help', 'real field', 'real table', 'entity type', 'entity field'] as $key) {
         if (!isset($definition[$key])) {
           // First check the field level.
           if (!empty($data[$field][$key])) {
@@ -111,13 +111,13 @@ public function getHandler($item, $override = NULL) {
     }
 
     // Finally, use the 'broken' handler.
-    return $this->createInstance('broken', array('original_configuration' => $item));
+    return $this->createInstance('broken', ['original_configuration' => $item]);
   }
 
   /**
    * {@inheritdoc}
    */
-  public function createInstance($plugin_id, array $configuration = array()) {
+  public function createInstance($plugin_id, array $configuration = []) {
     $instance = parent::createInstance($plugin_id, $configuration);
     if ($instance instanceof HandlerBase) {
       $instance->setModuleHandler($this->moduleHandler);
@@ -129,7 +129,7 @@ public function createInstance($plugin_id, array $configuration = array()) {
   /**
    * {@inheritdoc}
    */
-  public function getFallbackPluginId($plugin_id, array $configuration = array()) {
+  public function getFallbackPluginId($plugin_id, array $configuration = []) {
     return 'broken';
   }
 
diff --git a/core/modules/views/src/Plugin/ViewsPluginManager.php b/core/modules/views/src/Plugin/ViewsPluginManager.php
index a8dadb0..8124d31 100644
--- a/core/modules/views/src/Plugin/ViewsPluginManager.php
+++ b/core/modules/views/src/Plugin/ViewsPluginManager.php
@@ -31,11 +31,11 @@ public function __construct($type, \Traversable $namespaces, CacheBackendInterfa
     $plugin_definition_annotation_name = 'Drupal\views\Annotation\Views' . Container::camelize($type);
     parent::__construct("Plugin/views/$type", $namespaces, $module_handler, 'Drupal\views\Plugin\views\ViewsPluginInterface', $plugin_definition_annotation_name);
 
-    $this->defaults += array(
+    $this->defaults += [
       'parent' => 'parent',
       'plugin_type' => $type,
       'register_theme' => TRUE,
-    );
+    ];
 
     $this->alterInfo('views_plugins_' . $type);
     $this->setCacheBackend($cache_backend, "views:$type");
diff --git a/core/modules/views/src/Plugin/views/BrokenHandlerTrait.php b/core/modules/views/src/Plugin/views/BrokenHandlerTrait.php
index df129da..00233f7 100644
--- a/core/modules/views/src/Plugin/views/BrokenHandlerTrait.php
+++ b/core/modules/views/src/Plugin/views/BrokenHandlerTrait.php
@@ -25,7 +25,7 @@ public function adminLabel($short = FALSE) {
    * @see \Drupal\views\Plugin\views\PluginBase::defineOptions()
    */
   public function defineOptions() {
-    return array();
+    return [];
   }
 
   /**
@@ -55,28 +55,28 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     foreach ($this->definition['original_configuration'] as $key => $value) {
       if (is_scalar($value)) {
-        $items[] = SafeMarkup::format('@key: @value', array('@key' => $key, '@value' => $value));
+        $items[] = SafeMarkup::format('@key: @value', ['@key' => $key, '@value' => $value]);
       }
     }
 
     $description_bottom = t('Enabling the appropriate module will may solve this issue. Otherwise, check to see if there is a module update available.');
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('js-form-item', 'form-item', 'description'),
-      ),
-      'description_top' => array(
+      '#attributes' => [
+        'class' => ['js-form-item', 'form-item', 'description'],
+      ],
+      'description_top' => [
         '#markup' => '<p>' . $description_top . '</p>',
-      ),
-      'detail_list' => array(
+      ],
+      'detail_list' => [
         '#theme' => 'item_list',
         '#items' => $items,
-      ),
-      'description_bottom' => array(
+      ],
+      'description_bottom' => [
         '#markup' => '<p>' . $description_bottom . '</p>',
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/HandlerBase.php b/core/modules/views/src/Plugin/views/HandlerBase.php
index 5c2200c..8396c6b 100644
--- a/core/modules/views/src/Plugin/views/HandlerBase.php
+++ b/core/modules/views/src/Plugin/views/HandlerBase.php
@@ -138,12 +138,12 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['id'] = array('default' => '');
-    $options['table'] = array('default' => '');
-    $options['field'] = array('default' => '');
-    $options['relationship'] = array('default' => 'none');
-    $options['group_type'] = array('default' => 'group');
-    $options['admin_label'] = array('default' => '');
+    $options['id'] = ['default' => ''];
+    $options['table'] = ['default' => ''];
+    $options['field'] = ['default' => ''];
+    $options['relationship'] = ['default' => 'none'];
+    $options['group_type'] = ['default' => 'group'];
+    $options['admin_label'] = ['default' => ''];
 
     return $options;
   }
@@ -156,7 +156,7 @@ public function adminLabel($short = FALSE) {
       return $this->options['admin_label'];
     }
     $title = ($short && isset($this->definition['title short'])) ? $this->definition['title short'] : $this->definition['title'];
-    return $this->t('@group: @title', array('@group' => $this->definition['group'], '@title' => $title));
+    return $this->t('@group: @title', ['@group' => $this->definition['group'], '@title' => $title]);
   }
 
   /**
@@ -248,36 +248,36 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     // be moved into one because of the $form_state->getValues() hierarchy. Those
     // elements can add a #fieldset => 'fieldset_name' property, and they'll
     // be moved to their fieldset during pre_render.
-    $form['#pre_render'][] = array(get_class($this), 'preRenderAddFieldsetMarkup');
+    $form['#pre_render'][] = [get_class($this), 'preRenderAddFieldsetMarkup'];
 
     parent::buildOptionsForm($form, $form_state);
 
-    $form['fieldsets'] = array(
+    $form['fieldsets'] = [
       '#type' => 'value',
-      '#value' => array('more', 'admin_label'),
-    );
+      '#value' => ['more', 'admin_label'],
+    ];
 
-    $form['admin_label'] = array(
+    $form['admin_label'] = [
       '#type' => 'details',
       '#title' => $this->t('Administrative title'),
       '#weight' => 150,
-    );
-    $form['admin_label']['admin_label'] = array(
+    ];
+    $form['admin_label']['admin_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Administrative title'),
       '#description' => $this->t('This title will be displayed on the views edit page instead of the default one. This might be useful if you have the same item twice.'),
       '#default_value' => $this->options['admin_label'],
-      '#parents' => array('options', 'admin_label'),
-    );
+      '#parents' => ['options', 'admin_label'],
+    ];
 
     // This form is long and messy enough that the "Administrative title" option
     // belongs in "Administrative title" fieldset at the bottom of the form.
-    $form['more'] = array(
+    $form['more'] = [
       '#type' => 'details',
       '#title' => $this->t('More'),
       '#weight' => 200,
       '#optional' => TRUE,
-    );
+    ];
 
     // Allow to alter the default values brought into the form.
     // @todo Do we really want to keep this hook.
@@ -329,13 +329,13 @@ public function buildGroupByForm(&$form, FormStateInterface $form_state) {
       $group_types[$id] = $aggregate['title'];
     }
 
-    $form['group_type'] = array(
+    $form['group_type'] = [
       '#type' => 'select',
       '#title' => $this->t('Aggregation type'),
       '#default_value' => $this->options['group_type'],
       '#description' => $this->t('Select the aggregation function to use on this field.'),
       '#options' => $group_types,
-    );
+    ];
   }
 
   /**
@@ -454,7 +454,7 @@ public function showExposeForm(&$form, FormStateInterface $form_state) {
   public function access(AccountInterface $account) {
     if (isset($this->definition['access callback']) && function_exists($this->definition['access callback'])) {
       if (isset($this->definition['access arguments']) && is_array($this->definition['access arguments'])) {
-        return call_user_func_array($this->definition['access callback'], array($account) + $this->definition['access arguments']);
+        return call_user_func_array($this->definition['access callback'], [$account] + $this->definition['access arguments']);
       }
       return $this->definition['access callback']($account);
     }
@@ -587,7 +587,7 @@ public function getJoin() {
   /**
    * {@inheritdoc}
    */
-  public function validate() { return array(); }
+  public function validate() { return []; }
 
   /**
    * {@inheritdoc}
@@ -703,7 +703,7 @@ public function getEntityType() {
    */
   public static function breakString($str, $force_int = FALSE) {
     $operator = NULL;
-    $value = array();
+    $value = [];
 
     // Determine if the string has 'or' operators (plus signs) or 'and'
     // operators (commas) and split the string accordingly.
@@ -726,7 +726,7 @@ public static function breakString($str, $force_int = FALSE) {
       $value = array_map('intval', $value);
     }
 
-    return (object) array('value' => $value, 'operator' => $operator);
+    return (object) ['value' => $value, 'operator' => $operator];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/PluginBase.php b/core/modules/views/src/Plugin/views/PluginBase.php
index 6d5aec1..e523eba 100644
--- a/core/modules/views/src/Plugin/views/PluginBase.php
+++ b/core/modules/views/src/Plugin/views/PluginBase.php
@@ -66,7 +66,7 @@
    *
    * @var array
    */
-  public $options = array();
+  public $options = [];
 
   /**
    * The top object of a view.
@@ -155,7 +155,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    * @return array
    *   Returns the options of this handler/plugin.
    */
-  protected function defineOptions() { return array(); }
+  protected function defineOptions() { return []; }
 
   /**
    * Fills up the options of the plugin with defaults.
@@ -175,7 +175,7 @@ protected function defineOptions() { return array(); }
   protected function setOptionDefaults(array &$storage, array $options) {
     foreach ($options as $option => $definition) {
       if (isset($definition['contains'])) {
-        $storage[$option] = array();
+        $storage[$option] = [];
         $this->setOptionDefaults($storage[$option], $definition['contains']);
       }
       else {
@@ -231,7 +231,7 @@ public function unpackOptions(&$storage, $options, $definition = NULL, $all = TR
         }
 
         if (!isset($storage[$key]) || !is_array($storage[$key])) {
-          $storage[$key] = array();
+          $storage[$key] = [];
         }
 
         // If we're just unpacking our known options, and we're dropping an
@@ -242,7 +242,7 @@ public function unpackOptions(&$storage, $options, $definition = NULL, $all = TR
           continue;
         }
 
-        $this->unpackOptions($storage[$key], $value, isset($definition[$key]['contains']) ? $definition[$key]['contains'] : array(), $all, FALSE);
+        $this->unpackOptions($storage[$key], $value, isset($definition[$key]['contains']) ? $definition[$key]['contains'] : [], $all, FALSE);
       }
       elseif ($all || !empty($definition[$key])) {
         $storage[$key] = $value;
@@ -265,7 +265,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     // be moved into one because of the $form_state->getValues() hierarchy. Those
     // elements can add a #fieldset => 'fieldset_name' property, and they'll
     // be moved to their fieldset during pre_render.
-    $form['#pre_render'][] = array(get_class($this), 'preRenderAddFieldsetMarkup');
+    $form['#pre_render'][] = [get_class($this), 'preRenderAddFieldsetMarkup'];
   }
 
   /**
@@ -293,7 +293,7 @@ public function themeFunctions() {
   /**
    * {@inheritdoc}
    */
-  public function validate() { return array(); }
+  public function validate() { return []; }
 
   /**
    * {@inheritdoc}
@@ -323,8 +323,8 @@ public function usesOptions() {
   /**
    * {@inheritdoc}
    */
-  public function globalTokenReplace($string = '', array $options = array()) {
-    return \Drupal::token()->replace($string, array('view' => $this->view), $options);
+  public function globalTokenReplace($string = '', array $options = []) {
+    return \Drupal::token()->replace($string, ['view' => $this->view], $options);
   }
 
   /**
@@ -347,7 +347,7 @@ protected function viewsTokenReplace($text, $tokens) {
       return Xss::filterAdmin($text);
     }
 
-    $twig_tokens = array();
+    $twig_tokens = [];
     foreach ($tokens as $token => $replacement) {
       // Twig wants a token replacement array stripped of curly-brackets.
       // Some Views tokens come with curly-braces, others do not.
@@ -371,11 +371,11 @@ protected function viewsTokenReplace($text, $tokens) {
         $parts = explode('.', $token);
         $top = array_shift($parts);
         assert('preg_match(\'/^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*$/\', $top) === 1', 'Tokens need to be valid Twig variables.');
-        $token_array = array(array_pop($parts) => $replacement);
+        $token_array = [array_pop($parts) => $replacement];
         foreach (array_reverse($parts) as $key) {
           // The key could also be numeric (array index) so allow that.
           assert('is_numeric($key) || (preg_match(\'/^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*$/\', $key) === 1)', 'Tokens need to be valid Twig variables.');
-          $token_array = array($key => $token_array);
+          $token_array = [$key => $token_array];
         }
         if (!isset($twig_tokens[$top])) {
           $twig_tokens[$top] = [];
@@ -389,7 +389,7 @@ protected function viewsTokenReplace($text, $tokens) {
       // Otherwise, Xss::filterAdmin could remove valid Twig syntax before the
       // template is parsed.
 
-      $build = array(
+      $build = [
         '#type' => 'inline_template',
         '#template' => $text,
         '#context' => $twig_tokens,
@@ -398,7 +398,7 @@ function ($children, $elements) {
             return Xss::filterAdmin($children);
           }
         ],
-      );
+      ];
 
       // Currently you cannot attach assets to tokens with
       // Renderer::renderPlain(). This may be unnecessarily limiting. Consider
@@ -414,15 +414,15 @@ function ($children, $elements) {
   /**
    * {@inheritdoc}
    */
-  public function getAvailableGlobalTokens($prepared = FALSE, array $types = array()) {
+  public function getAvailableGlobalTokens($prepared = FALSE, array $types = []) {
     $info = \Drupal::token()->getInfo();
     // Site and view tokens should always be available.
-    $types += array('site', 'view');
+    $types += ['site', 'view'];
     $available = array_intersect_key($info['tokens'], array_flip($types));
 
     // Construct the token string for each token.
     if ($prepared) {
-      $prepared = array();
+      $prepared = [];
       foreach ($available as $type => $tokens) {
         foreach (array_keys($tokens) as $token) {
           $prepared[$type][] = "[$type:$token]";
@@ -439,13 +439,13 @@ public function getAvailableGlobalTokens($prepared = FALSE, array $types = array
    * {@inheritdoc}
    */
   public function globalTokenForm(&$form, FormStateInterface $form_state) {
-    $token_items = array();
+    $token_items = [];
 
     foreach ($this->getAvailableGlobalTokens() as $type => $tokens) {
-      $item = array(
+      $item = [
         '#markup' => $type,
-        'children' => array(),
-      );
+        'children' => [],
+      ];
       foreach ($tokens as $name => $info) {
         $item['children'][$name] = "[$type:$name]" . ' - ' . $info['name'] . ': ' . $info['description'];
       }
@@ -453,17 +453,17 @@ public function globalTokenForm(&$form, FormStateInterface $form_state) {
       $token_items[$type] = $item;
     }
 
-    $form['global_tokens'] = array(
+    $form['global_tokens'] = [
       '#type' => 'details',
       '#title' => $this->t('Available global token replacements'),
-    );
-    $form['global_tokens']['list'] = array(
+    ];
+    $form['global_tokens']['list'] = [
       '#theme' => 'item_list',
       '#items' => $token_items,
-      '#attributes' => array(
-        'class' => array('global-tokens'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['global-tokens'],
+      ],
+    ];
   }
 
   /**
@@ -546,7 +546,7 @@ public function getProvider() {
   protected function listLanguages($flags = LanguageInterface::STATE_ALL, array $current_values = NULL) {
     $manager = \Drupal::languageManager();
     $languages = $manager->getLanguages($flags);
-    $list = array();
+    $list = [];
 
     // The entity languages should come first, if requested.
     if ($flags & PluginBase::INCLUDE_ENTITY) {
@@ -582,7 +582,7 @@ protected function listLanguages($flags = LanguageInterface::STATE_ALL, array $c
           $name = $types_info[$id]['name'];
           // Surround IDs by '***LANGUAGE_...***', to avoid query collisions.
           $id = '***LANGUAGE_' . $id . '***';
-          $list[$id] = $this->t('@type language selected for page', array('@type' => $name));
+          $list[$id] = $this->t('@type language selected for page', ['@type' => $name]);
         }
       }
       if (!empty($current_values)) {
@@ -592,7 +592,7 @@ protected function listLanguages($flags = LanguageInterface::STATE_ALL, array $c
           // add that option too, so it is not lost. If not among the current
           // values, skip displaying it to avoid user confusion.
           if (isset($type['name']) && !isset($list[$id]) && in_array($id, $current_values)) {
-            $list[$id] = $this->t('@type language selected for page', array('@type' => $type['name']));
+            $list[$id] = $this->t('@type language selected for page', ['@type' => $type['name']]);
           }
         }
       }
@@ -619,7 +619,7 @@ protected function listLanguages($flags = LanguageInterface::STATE_ALL, array $c
    *   the query substitutions needed for the special language types.
    */
   public static function queryLanguageSubstitutions() {
-    $changes = array();
+    $changes = [];
     $manager = \Drupal::languageManager();
 
     // Handle default language.
diff --git a/core/modules/views/src/Plugin/views/ViewsPluginInterface.php b/core/modules/views/src/Plugin/views/ViewsPluginInterface.php
index e685c4d..83d9c89 100644
--- a/core/modules/views/src/Plugin/views/ViewsPluginInterface.php
+++ b/core/modules/views/src/Plugin/views/ViewsPluginInterface.php
@@ -113,7 +113,7 @@ public function globalTokenForm(&$form, FormStateInterface $form_state);
    * @return array
    *   An array of available token replacement info or tokens, grouped by type.
    */
-  public function getAvailableGlobalTokens($prepared = FALSE, array $types = array());
+  public function getAvailableGlobalTokens($prepared = FALSE, array $types = []);
 
   /**
    * Flattens the structure of form elements.
@@ -141,7 +141,7 @@ public static function preRenderFlattenData($form);
    * @return string
    *   The tokenized string.
    */
-  public function globalTokenReplace($string = '', array $options = array());
+  public function globalTokenReplace($string = '', array $options = []);
 
   /**
    * Clears a plugin.
diff --git a/core/modules/views/src/Plugin/views/area/AreaPluginBase.php b/core/modules/views/src/Plugin/views/area/AreaPluginBase.php
index 2ad7f46..813e430 100644
--- a/core/modules/views/src/Plugin/views/area/AreaPluginBase.php
+++ b/core/modules/views/src/Plugin/views/area/AreaPluginBase.php
@@ -62,7 +62,7 @@ protected function defineOptions() {
     $this->definition['field'] = !empty($this->definition['field']) ? $this->definition['field'] : '';
     $label = !empty($this->definition['label']) ? $this->definition['label'] : $this->definition['field'];
     $options['admin_label']['default'] = $label;
-    $options['empty'] = array('default' => FALSE);
+    $options['empty'] = ['default' => FALSE];
 
     return $options;
   }
@@ -81,11 +81,11 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     if ($form_state->get('type') != 'empty') {
-      $form['empty'] = array(
+      $form['empty'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Display even if view has no result'),
         '#default_value' => isset($this->options['empty']) ? $this->options['empty'] : 0,
-      );
+      ];
     }
   }
 
diff --git a/core/modules/views/src/Plugin/views/area/Broken.php b/core/modules/views/src/Plugin/views/area/Broken.php
index 549c306..7bd6cdb 100644
--- a/core/modules/views/src/Plugin/views/area/Broken.php
+++ b/core/modules/views/src/Plugin/views/area/Broken.php
@@ -19,7 +19,7 @@ class Broken extends AreaPluginBase {
    */
   public function render($empty = FALSE) {
     // Simply render nothing by returning an empty render array.
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/area/Entity.php b/core/modules/views/src/Plugin/views/area/Entity.php
index 30c24ec..d073d53 100644
--- a/core/modules/views/src/Plugin/views/area/Entity.php
+++ b/core/modules/views/src/Plugin/views/area/Entity.php
@@ -93,12 +93,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['view_mode'] = array(
+    $form['view_mode'] = [
       '#type' => 'select',
       '#options' => $this->entityManager->getViewModeOptions($this->entityType),
       '#title' => $this->t('View mode'),
       '#default_value' => $this->options['view_mode'],
-    );
+    ];
 
     $label = $this->entityManager->getDefinition($this->entityType)->getLabel();
     $target = $this->options['target'];
@@ -121,12 +121,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       '#default_value' => $target,
     ];
 
-    $form['bypass_access'] = array(
+    $form['bypass_access'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Bypass access checks'),
       '#description' => $this->t('If enabled, access permissions for rendering the entity are not checked.'),
       '#default_value' => !empty($this->options['bypass_access']),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/area/HTTPStatusCode.php b/core/modules/views/src/Plugin/views/area/HTTPStatusCode.php
index 4f6667a..d9b8145 100644
--- a/core/modules/views/src/Plugin/views/area/HTTPStatusCode.php
+++ b/core/modules/views/src/Plugin/views/area/HTTPStatusCode.php
@@ -20,7 +20,7 @@ class HTTPStatusCode extends AreaPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['status_code'] = array('default' => 200);
+    $options['status_code'] = ['default' => 200];
 
     return $options;
   }
@@ -35,23 +35,23 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $options = Response::$statusTexts;
 
     // Move 403/404/500 to the top.
-    $options = array(
+    $options = [
       '404' => $options['404'],
       '403' => $options['403'],
       '500' => $options['500'],
-    ) + $options;
+    ] + $options;
 
     // Add the HTTP status code, so it's easier for people to find it.
     array_walk($options, function($title, $code) use(&$options) {
-      $options[$code] = $this->t('@code (@title)', array('@code' => $code, '@title' => $title));
+      $options[$code] = $this->t('@code (@title)', ['@code' => $code, '@title' => $title]);
     });
 
-    $form['status_code'] = array(
+    $form['status_code'] = [
       '#title' => $this->t('HTTP status code'),
       '#type' => 'select',
       '#default_value' => $this->options['status_code'],
       '#options' => $options,
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/area/Messages.php b/core/modules/views/src/Plugin/views/area/Messages.php
index 37df125..c26b995 100644
--- a/core/modules/views/src/Plugin/views/area/Messages.php
+++ b/core/modules/views/src/Plugin/views/area/Messages.php
@@ -26,11 +26,11 @@ protected function defineOptions() {
    */
   public function render($empty = FALSE) {
     if (!$empty || !empty($this->options['empty'])) {
-      return array(
+      return [
         '#type' => 'status_messages',
-      );
+      ];
     }
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/area/Result.php b/core/modules/views/src/Plugin/views/area/Result.php
index d8139cb..f0082db 100644
--- a/core/modules/views/src/Plugin/views/area/Result.php
+++ b/core/modules/views/src/Plugin/views/area/Result.php
@@ -22,9 +22,9 @@ class Result extends AreaPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['content'] = array(
+    $options['content'] = [
       'default' => $this->t('Displaying @start - @end of @total'),
-    );
+    ];
 
     return $options;
   }
@@ -34,9 +34,9 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $item_list = array(
+    $item_list = [
       '#theme' => 'item_list',
-      '#items' => array(
+      '#items' => [
         '@start -- the initial record number in the set',
         '@end -- the last record number in the set',
         '@total -- the total records in the set',
@@ -45,16 +45,16 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         '@current_page -- the current page number',
         '@current_record_count -- the current page record count',
         '@page_count -- the total page count',
-      ),
-    );
+      ],
+    ];
     $list = drupal_render($item_list);
-    $form['content'] = array(
+    $form['content'] = [
       '#title' => $this->t('Display'),
       '#type' => 'textarea',
       '#rows' => 3,
       '#default_value' => $this->options['content'],
       '#description' => $this->t('You may use HTML code in this field. The following tokens are supported:') . $list,
-    );
+    ];
   }
 
   /**
@@ -72,7 +72,7 @@ public function query() {
   public function render($empty = FALSE) {
     // Must have options and does not work on summaries.
     if (!isset($this->options['content']) || $this->view->style_plugin instanceof DefaultSummary) {
-      return array();
+      return [];
     }
     $output = '';
     $format = $this->options['content'];
@@ -113,9 +113,9 @@ public function render($empty = FALSE) {
       $output .= Xss::filterAdmin(str_replace(array_keys($replacements), array_values($replacements), $format));
     }
     // Return as render array.
-    return array(
+    return [
       '#markup' => $output,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/area/Text.php b/core/modules/views/src/Plugin/views/area/Text.php
index dab32e9..aafcbf2 100644
--- a/core/modules/views/src/Plugin/views/area/Text.php
+++ b/core/modules/views/src/Plugin/views/area/Text.php
@@ -18,12 +18,12 @@ class Text extends TokenizeAreaPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['content'] = array(
-      'contains' => array(
-        'value' => array('default' => ''),
-        'format' => array('default' => NULL),
-      ),
-    );
+    $options['content'] = [
+      'contains' => [
+        'value' => ['default' => ''],
+        'format' => ['default' => NULL],
+      ],
+    ];
     return $options;
   }
 
@@ -33,14 +33,14 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['content'] = array(
+    $form['content'] = [
       '#title' => $this->t('Content'),
       '#type' => 'text_format',
       '#default_value' => $this->options['content']['value'],
       '#rows' => 6,
       '#format' => isset($this->options['content']['format']) ? $this->options['content']['format'] : filter_default_format(),
       '#editor' => FALSE,
-    );
+    ];
   }
 
   /**
@@ -60,14 +60,14 @@ public function preQuery() {
   public function render($empty = FALSE) {
     $format = isset($this->options['content']['format']) ? $this->options['content']['format'] : filter_default_format();
     if (!$empty || !empty($this->options['empty'])) {
-      return array(
+      return [
         '#type' => 'processed_text',
         '#text' => $this->tokenizeValue($this->options['content']['value']),
         '#format' => $format,
-      );
+      ];
     }
 
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/area/TextCustom.php b/core/modules/views/src/Plugin/views/area/TextCustom.php
index 0eeabaa..56e963d 100644
--- a/core/modules/views/src/Plugin/views/area/TextCustom.php
+++ b/core/modules/views/src/Plugin/views/area/TextCustom.php
@@ -18,7 +18,7 @@ class TextCustom extends TokenizeAreaPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['content'] = array('default' => '');
+    $options['content'] = ['default' => ''];
     return $options;
   }
 
@@ -28,12 +28,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['content'] = array(
+    $form['content'] = [
       '#title' => $this->t('Content'),
       '#type' => 'textarea',
       '#default_value' => $this->options['content'],
       '#rows' => 6,
-    );
+    ];
   }
 
   /**
@@ -41,12 +41,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function render($empty = FALSE) {
     if (!$empty || !empty($this->options['empty'])) {
-      return array(
+      return [
         '#markup' => $this->renderTextarea($this->options['content']),
-      );
+      ];
     }
 
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/area/Title.php b/core/modules/views/src/Plugin/views/area/Title.php
index 85e4788..d6139e0 100644
--- a/core/modules/views/src/Plugin/views/area/Title.php
+++ b/core/modules/views/src/Plugin/views/area/Title.php
@@ -18,7 +18,7 @@ class Title extends AreaPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['title'] = array('default' => '');
+    $options['title'] = ['default' => ''];
     return $options;
   }
 
@@ -28,12 +28,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['title'] = array(
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Overridden title'),
       '#default_value' => $this->options['title'],
       '#description' => $this->t('Override the title of this view when it is empty. The available global tokens below can be used here.'),
-    );
+    ];
 
     // Don't use the AreaPluginBase tokenForm method, we don't want row tokens.
     $this->globalTokenForm($form, $form_state);
@@ -57,7 +57,7 @@ public function preRender(array $results) {
    */
   public function render($empty = FALSE) {
     // Do nothing for this handler by returning an empty render array.
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/area/TokenizeAreaPluginBase.php b/core/modules/views/src/Plugin/views/area/TokenizeAreaPluginBase.php
index e883378..1e00479 100644
--- a/core/modules/views/src/Plugin/views/area/TokenizeAreaPluginBase.php
+++ b/core/modules/views/src/Plugin/views/area/TokenizeAreaPluginBase.php
@@ -21,7 +21,7 @@
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['tokenize'] = array('default' => FALSE);
+    $options['tokenize'] = ['default' => FALSE];
     return $options;
   }
 
@@ -39,14 +39,14 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    * Adds tokenization form elements.
    */
   public function tokenForm(&$form, FormStateInterface $form_state) {
-    $form['tokenize'] = array(
+    $form['tokenize'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Use replacement tokens from the first row'),
       '#default_value' => $this->options['tokenize'],
-    );
+    ];
 
     // Get a list of the available fields and arguments for token replacement.
-    $options = array();
+    $options = [];
     $optgroup_arguments = (string) t('Arguments');
     $optgroup_fields = (string) t('Fields');
     foreach ($this->view->display_handler->getHandlers('field') as $field => $handler) {
@@ -54,35 +54,35 @@ public function tokenForm(&$form, FormStateInterface $form_state) {
     }
 
     foreach ($this->view->display_handler->getHandlers('argument') as $arg => $handler) {
-      $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', array('@argument' => $handler->adminLabel()));
-      $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', array('@argument' => $handler->adminLabel()));
+      $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', ['@argument' => $handler->adminLabel()]);
+      $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', ['@argument' => $handler->adminLabel()]);
     }
 
     if (!empty($options)) {
-      $form['tokens'] = array(
+      $form['tokens'] = [
         '#type' => 'details',
         '#title' => $this->t('Replacement patterns'),
         '#open' => TRUE,
         '#id' => 'edit-options-token-help',
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[tokenize]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['tokens']['help'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[tokenize]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['tokens']['help'] = [
         '#markup' => '<p>' . $this->t('The following tokens are available. You may use Twig syntax in this field.') . '</p>',
-      );
+      ];
       foreach (array_keys($options) as $type) {
         if (!empty($options[$type])) {
-          $items = array();
+          $items = [];
           foreach ($options[$type] as $key => $value) {
             $items[] = $key . ' == ' . $value;
           }
-          $form['tokens'][$type]['tokens'] = array(
+          $form['tokens'][$type]['tokens'] = [
             '#theme' => 'item_list',
             '#items' => $items,
-          );
+          ];
         }
       }
     }
diff --git a/core/modules/views/src/Plugin/views/area/View.php b/core/modules/views/src/Plugin/views/area/View.php
index 12f417c..832e231 100644
--- a/core/modules/views/src/Plugin/views/area/View.php
+++ b/core/modules/views/src/Plugin/views/area/View.php
@@ -66,8 +66,8 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['view_to_insert'] = array('default' => '');
-    $options['inherit_arguments'] = array('default' => FALSE);
+    $options['view_to_insert'] = ['default' => ''];
+    $options['inherit_arguments'] = ['default' => FALSE];
     return $options;
   }
 
@@ -79,22 +79,22 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     $view_display = $this->view->storage->id() . ':' . $this->view->current_display;
 
-    $options = array('' => $this->t('-Select-'));
+    $options = ['' => $this->t('-Select-')];
     $options += Views::getViewsAsOptions(FALSE, 'all', $view_display, FALSE, TRUE);
-    $form['view_to_insert'] = array(
+    $form['view_to_insert'] = [
       '#type' => 'select',
       '#title' => $this->t('View to insert'),
       '#default_value' => $this->options['view_to_insert'],
       '#description' => $this->t('The view to insert into this area.'),
       '#options' => $options,
-    );
+    ];
 
-    $form['inherit_arguments'] = array(
+    $form['inherit_arguments'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Inherit contextual filters'),
       '#default_value' => $this->options['inherit_arguments'],
       '#description' => $this->t('If checked, this view will receive the same contextual filters as its parent.'),
-    );
+    ];
   }
 
   /**
@@ -107,7 +107,7 @@ public function render($empty = FALSE) {
       $view = $this->viewStorage->load($view_name)->getExecutable();
 
       if (empty($view) || !$view->access($display_id)) {
-        return array();
+        return [];
       }
       $view->setDisplay($display_id);
 
@@ -118,7 +118,7 @@ public function render($empty = FALSE) {
       // Check if the view is part of the parent views of this view
       $search = "$view_name:$display_id";
       if (in_array($search, $this->view->parent_views)) {
-        drupal_set_message(t("Recursion detected in view @view display @display.", array('@view' => $view_name, '@display' => $display_id)), 'error');
+        drupal_set_message(t("Recursion detected in view @view display @display.", ['@view' => $view_name, '@display' => $display_id]), 'error');
       }
       else {
         if (!empty($this->options['inherit_arguments']) && !empty($this->view->args)) {
@@ -131,7 +131,7 @@ public function render($empty = FALSE) {
         return $output;
       }
     }
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php b/core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php
index 6b8105b..6a9632f 100644
--- a/core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php
+++ b/core/modules/views/src/Plugin/views/argument/ArgumentPluginBase.php
@@ -116,35 +116,35 @@ public function needsStylePlugin() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['default_action'] = array('default' => 'ignore');
-    $options['exception'] = array(
-      'contains' => array(
-        'value' => array('default' => 'all'),
-        'title_enable' => array('default' => FALSE),
-        'title' => array('default' => 'All'),
-      ),
-    );
-    $options['title_enable'] = array('default' => FALSE);
-    $options['title'] = array('default' => '');
-    $options['default_argument_type'] = array('default' => 'fixed');
-    $options['default_argument_options'] = array('default' => array());
-    $options['default_argument_skip_url'] = array('default' => FALSE);
-    $options['summary_options'] = array('default' => array());
-    $options['summary'] = array(
-      'contains' => array(
-        'sort_order' => array('default' => 'asc'),
-        'number_of_records' => array('default' => 0),
-        'format' => array('default' => 'default_summary'),
-      ),
-    );
-    $options['specify_validation'] = array('default' => FALSE);
-    $options['validate'] = array(
-      'contains' => array(
-        'type' => array('default' => 'none'),
-        'fail' => array('default' => 'not found'),
-      ),
-    );
-    $options['validate_options'] = array('default' => array());
+    $options['default_action'] = ['default' => 'ignore'];
+    $options['exception'] = [
+      'contains' => [
+        'value' => ['default' => 'all'],
+        'title_enable' => ['default' => FALSE],
+        'title' => ['default' => 'All'],
+      ],
+    ];
+    $options['title_enable'] = ['default' => FALSE];
+    $options['title'] = ['default' => ''];
+    $options['default_argument_type'] = ['default' => 'fixed'];
+    $options['default_argument_options'] = ['default' => []];
+    $options['default_argument_skip_url'] = ['default' => FALSE];
+    $options['summary_options'] = ['default' => []];
+    $options['summary'] = [
+      'contains' => [
+        'sort_order' => ['default' => 'asc'],
+        'number_of_records' => ['default' => 0],
+        'format' => ['default' => 'default_summary'],
+      ],
+    ];
+    $options['specify_validation'] = ['default' => FALSE];
+    $options['validate'] = [
+      'contains' => [
+        'type' => ['default' => 'none'],
+        'fail' => ['default' => 'not found'],
+      ],
+    ];
+    $options['validate_options'] = ['default' => []];
 
     return $options;
   }
@@ -154,68 +154,68 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     $argument_text = $this->view->display_handler->getArgumentText();
 
-    $form['#pre_render'][] = array(get_class($this), 'preRenderMoveArgumentOptions');
+    $form['#pre_render'][] = [get_class($this), 'preRenderMoveArgumentOptions'];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#markup' => $argument_text['description'],
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('description')),
-    );
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['description']],
+    ];
 
-    $form['no_argument'] = array(
+    $form['no_argument'] = [
       '#type' => 'details',
       '#title' => $argument_text['filter value not present'],
       '#open' => TRUE,
-    );
+    ];
     // Everything in the details is floated, so the last element needs to
     // clear those floats.
-    $form['no_argument']['clearfix'] = array(
+    $form['no_argument']['clearfix'] = [
       '#weight' => 1000,
       '#markup' => '<div class="clearfix"></div>',
-    );
-    $form['default_action'] = array(
+    ];
+    $form['default_action'] = [
       '#title' => $this->t('Default actions'),
       '#title_display' => 'invisible',
       '#type' => 'radios',
-      '#process' => array(array($this, 'processContainerRadios')),
+      '#process' => [[$this, 'processContainerRadios']],
       '#default_value' => $this->options['default_action'],
       '#fieldset' => 'no_argument',
-    );
+    ];
 
-    $form['exception'] = array(
+    $form['exception'] = [
       '#type' => 'details',
       '#title' => $this->t('Exceptions'),
       '#fieldset' => 'no_argument',
-    );
-    $form['exception']['value'] = array(
+    ];
+    $form['exception']['value'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Exception value'),
       '#size' => 20,
       '#default_value' => $this->options['exception']['value'],
       '#description' => $this->t('If this value is received, the filter will be ignored; i.e, "all values"'),
-    );
-    $form['exception']['title_enable'] = array(
+    ];
+    $form['exception']['title_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Override title'),
       '#default_value' => $this->options['exception']['title_enable'],
-    );
-    $form['exception']['title'] = array(
+    ];
+    $form['exception']['title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Override title'),
       '#title_display' => 'invisible',
       '#size' => 20,
       '#default_value' => $this->options['exception']['title'],
       '#description' => $this->t('Override the view and other argument titles. You may use Twig syntax in this field as well as the "arguments" and "raw_arguments" arrays.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[exception][title_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[exception][title_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $options = array();
+    $options = [];
     $defaults = $this->defaultActions();
-    $validate_options = array();
+    $validate_options = [];
     foreach ($defaults as $id => $info) {
       $options[$id] = $info['title'];
       if (empty($info['default only'])) {
@@ -227,30 +227,30 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     }
     $form['default_action']['#options'] = $options;
 
-    $form['argument_present'] = array(
+    $form['argument_present'] = [
       '#type' => 'details',
       '#title' => $argument_text['filter value present'],
       '#open' => TRUE,
-    );
-    $form['title_enable'] = array(
+    ];
+    $form['title_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Override title'),
       '#default_value' => $this->options['title_enable'],
       '#fieldset' => 'argument_present',
-    );
-    $form['title'] = array(
+    ];
+    $form['title'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Provide title'),
       '#title_display' => 'invisible',
       '#default_value' => $this->options['title'],
       '#description' => $this->t('Override the view and other argument titles. You may use Twig syntax in this field.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[title_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[title_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'argument_present',
-    );
+    ];
 
     $output = $this->getTokenHelp();
     $form['token_help'] = [
@@ -269,29 +269,29 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       ],
     ];
 
-    $form['specify_validation'] = array(
+    $form['specify_validation'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Specify validation criteria'),
       '#default_value' => $this->options['specify_validation'],
       '#fieldset' => 'argument_present',
-    );
+    ];
 
-    $form['validate'] = array(
+    $form['validate'] = [
       '#type' => 'container',
       '#fieldset' => 'argument_present',
-    );
+    ];
     // Validator options include derivatives with :. These are sanitized for js
     // and reverted on submission.
-    $form['validate']['type'] = array(
+    $form['validate']['type'] = [
       '#type' => 'select',
       '#title' => $this->t('Validator'),
       '#default_value' => static::encodeValidatorId($this->options['validate']['type']),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[specify_validation]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[specify_validation]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
     $plugins = Views::pluginManager('argument_validator')->getDefinitions();
     foreach ($plugins as $id => $info) {
@@ -320,21 +320,21 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
           if ($plugin->access() || $this->options['validate']['type'] == $id) {
             // Sanitize ID for js.
             $sanitized_id = static::encodeValidatorId($id);
-            $form['validate']['options'][$sanitized_id] = array(
+            $form['validate']['options'][$sanitized_id] = [
               '#prefix' => '<div id="edit-options-validate-options-' . $sanitized_id . '-wrapper">',
               '#suffix' => '</div>',
               '#type' => 'item',
               // Even if the plugin has no options add the key to the form_state.
               '#input' => TRUE, // trick it into checking input to make #process run
-              '#states' => array(
-                'visible' => array(
-                  ':input[name="options[specify_validation]"]' => array('checked' => TRUE),
-                  ':input[name="options[validate][type]"]' => array('value' => $sanitized_id),
-                ),
-              ),
+              '#states' => [
+                'visible' => [
+                  ':input[name="options[specify_validation]"]' => ['checked' => TRUE],
+                  ':input[name="options[validate][type]"]' => ['value' => $sanitized_id],
+                ],
+              ],
               '#id' => 'edit-options-validate-options-' . $sanitized_id,
-              '#default_value' => array(),
-            );
+              '#default_value' => [],
+            ];
             $plugin->buildOptionsForm($form['validate']['options'][$sanitized_id], $form_state);
             $validate_types[$sanitized_id] = $info['title'];
           }
@@ -345,18 +345,18 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     asort($validate_types);
     $form['validate']['type']['#options'] = $validate_types;
 
-    $form['validate']['fail'] = array(
+    $form['validate']['fail'] = [
       '#type' => 'select',
       '#title' => $this->t('Action to take if filter value does not validate'),
       '#default_value' => $this->options['validate']['fail'],
       '#options' => $validate_options,
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[specify_validation]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[specify_validation]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'argument_present',
-    );
+    ];
   }
 
   /**
@@ -370,8 +370,8 @@ protected function getTokenHelp() {
 
     foreach ($this->view->display_handler->getHandlers('argument') as $arg => $handler) {
       /** @var \Drupal\views\Plugin\views\argument\ArgumentPluginBase $handler */
-      $options[(string) t('Arguments')]["{{ arguments.$arg }}"] = $this->t('@argument title', array('@argument' => $handler->adminLabel()));
-      $options[(string) t('Arguments')]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', array('@argument' => $handler->adminLabel()));
+      $options[(string) t('Arguments')]["{{ arguments.$arg }}"] = $this->t('@argument title', ['@argument' => $handler->adminLabel()]);
+      $options[(string) t('Arguments')]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', ['@argument' => $handler->adminLabel()]);
     }
 
     // We have some options, so make a list.
@@ -381,14 +381,14 @@ protected function getTokenHelp() {
       ];
       foreach (array_keys($options) as $type) {
         if (!empty($options[$type])) {
-          $items = array();
+          $items = [];
           foreach ($options[$type] as $key => $value) {
             $items[] = $key . ' == ' . $value;
           }
-          $item_list = array(
+          $item_list = [
             '#theme' => 'item_list',
             '#items' => $items,
-          );
+          ];
           $output[] = $item_list;
         }
       }
@@ -488,38 +488,38 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
    * Override this method to provide additional (or fewer) default behaviors.
    */
   protected function defaultActions($which = NULL) {
-    $defaults = array(
-      'ignore' => array(
+    $defaults = [
+      'ignore' => [
         'title' => $this->t('Display all results for the specified field'),
         'method' => 'defaultIgnore',
-      ),
-      'default' => array(
+      ],
+      'default' => [
         'title' => $this->t('Provide default value'),
         'method' => 'defaultDefault',
         'form method' => 'defaultArgumentForm',
         'has default argument' => TRUE,
         'default only' => TRUE, // this can only be used for missing argument, not validation failure
-      ),
-      'not found' => array(
+      ],
+      'not found' => [
         'title' => $this->t('Hide view'),
         'method' => 'defaultNotFound',
         'hard fail' => TRUE, // This is a hard fail condition
-      ),
-      'summary' => array(
+      ],
+      'summary' => [
         'title' => $this->t('Display a summary'),
         'method' => 'defaultSummary',
         'form method' => 'defaultSummaryForm',
         'style plugin' => TRUE,
-      ),
-      'empty' => array(
+      ],
+      'empty' => [
         'title' => $this->t('Display contents of "No results found"'),
         'method' => 'defaultEmpty',
-      ),
-      'access denied' => array(
+      ],
+      'access denied' => [
         'title' => $this->t('Display "Access Denied"'),
         'method' => 'defaultAccessDenied',
-      ),
-    );
+      ],
+    ];
 
     if ($this->view->display_handler->hasPath()) {
       $defaults['not found']['title'] = $this->t('Show "Page not found"');
@@ -541,31 +541,31 @@ protected function defaultActions($which = NULL) {
    */
   public function defaultArgumentForm(&$form, FormStateInterface $form_state) {
     $plugins = Views::pluginManager('argument_default')->getDefinitions();
-    $options = array();
+    $options = [];
 
-    $form['default_argument_skip_url'] = array(
+    $form['default_argument_skip_url'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Skip default argument for view URL'),
       '#default_value' => $this->options['default_argument_skip_url'],
       '#description' => $this->t('Select whether to include this default argument when constructing the URL for this view. Skipping default arguments is useful e.g. in the case of feeds.')
-    );
+    ];
 
-    $form['default_argument_type'] = array(
+    $form['default_argument_type'] = [
       '#prefix' => '<div id="edit-options-default-argument-type-wrapper">',
       '#suffix' => '</div>',
       '#type' => 'select',
       '#id' => 'edit-options-default-argument-type',
       '#title' => $this->t('Type'),
       '#default_value' => $this->options['default_argument_type'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[default_action]"]' => array('value' => 'default'),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[default_action]"]' => ['value' => 'default'],
+        ],
+      ],
       // Views custom key, moves this element to the appropriate container
       // under the radio button.
       '#argument_option' => 'default',
-    );
+    ];
 
     foreach ($plugins as $id => $info) {
       if (!empty($info['no_ui'])) {
@@ -575,21 +575,21 @@ public function defaultArgumentForm(&$form, FormStateInterface $form_state) {
       if ($plugin) {
         if ($plugin->access() || $this->options['default_argument_type'] == $id) {
           $form['argument_default']['#argument_option'] = 'default';
-          $form['argument_default'][$id] = array(
+          $form['argument_default'][$id] = [
             '#prefix' => '<div id="edit-options-argument-default-options-' . $id . '-wrapper">',
             '#suffix' => '</div>',
             '#id' => 'edit-options-argument-default-options-' . $id,
             '#type' => 'item',
             // Even if the plugin has no options add the key to the form_state.
             '#input' => TRUE,
-            '#states' => array(
-              'visible' => array(
-                ':input[name="options[default_action]"]' => array('value' => 'default'),
-                ':input[name="options[default_argument_type]"]' => array('value' => $id),
-              ),
-            ),
-            '#default_value' => array(),
-          );
+            '#states' => [
+              'visible' => [
+                ':input[name="options[default_action]"]' => ['value' => 'default'],
+                ':input[name="options[default_argument_type]"]' => ['value' => $id],
+              ],
+            ],
+            '#default_value' => [],
+          ];
           $options[$id] = $info['title'];
           $plugin->buildOptionsForm($form['argument_default'][$id], $form_state);
         }
@@ -606,8 +606,8 @@ public function defaultArgumentForm(&$form, FormStateInterface $form_state) {
    */
   public function defaultSummaryForm(&$form, FormStateInterface $form_state) {
     $style_plugins = Views::pluginManager('style')->getDefinitions();
-    $summary_plugins = array();
-    $format_options = array();
+    $summary_plugins = [];
+    $format_options = [];
     foreach ($style_plugins as $key => $plugin) {
       if (isset($plugin['display_types']) && in_array('summary', $plugin['display_types'])) {
         $summary_plugins[$key] = $plugin;
@@ -615,48 +615,48 @@ public function defaultSummaryForm(&$form, FormStateInterface $form_state) {
       }
     }
 
-    $form['summary'] = array(
+    $form['summary'] = [
       // Views custom key, moves this element to the appropriate container
       // under the radio button.
       '#argument_option' => 'summary',
-    );
-    $form['summary']['sort_order'] = array(
+    ];
+    $form['summary']['sort_order'] = [
       '#type' => 'radios',
       '#title' => $this->t('Sort order'),
-      '#options' => array('asc' => $this->t('Ascending'), 'desc' => $this->t('Descending')),
+      '#options' => ['asc' => $this->t('Ascending'), 'desc' => $this->t('Descending')],
       '#default_value' => $this->options['summary']['sort_order'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[default_action]"]' => array('value' => 'summary'),
-        ),
-      ),
-    );
-    $form['summary']['number_of_records'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="options[default_action]"]' => ['value' => 'summary'],
+        ],
+      ],
+    ];
+    $form['summary']['number_of_records'] = [
       '#type' => 'radios',
       '#title' => $this->t('Sort by'),
       '#default_value' => $this->options['summary']['number_of_records'],
-      '#options' => array(
+      '#options' => [
         0 => $this->getSortName(),
         1 => $this->t('Number of records')
-      ),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[default_action]"]' => array('value' => 'summary'),
-        ),
-      ),
-    );
+      ],
+      '#states' => [
+        'visible' => [
+          ':input[name="options[default_action]"]' => ['value' => 'summary'],
+        ],
+      ],
+    ];
 
-    $form['summary']['format'] = array(
+    $form['summary']['format'] = [
       '#type' => 'radios',
       '#title' => $this->t('Format'),
       '#options' => $format_options,
       '#default_value' => $this->options['summary']['format'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[default_action]"]' => array('value' => 'summary'),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[default_action]"]' => ['value' => 'summary'],
+        ],
+      ],
+    ];
 
     foreach ($summary_plugins as $id => $info) {
       $plugin = $this->getPlugin('style', $id);
@@ -664,20 +664,20 @@ public function defaultSummaryForm(&$form, FormStateInterface $form_state) {
         continue;
       }
       if ($plugin) {
-        $form['summary']['options'][$id] = array(
+        $form['summary']['options'][$id] = [
           '#prefix' => '<div id="edit-options-summary-options-' . $id . '-wrapper">',
           '#suffix' => '</div>',
           '#id' => 'edit-options-summary-options-' . $id,
           '#type' => 'item',
           '#input' => TRUE, // trick it into checking input to make #process run
-          '#states' => array(
-            'visible' => array(
-              ':input[name="options[default_action]"]' => array('value' => 'summary'),
-              ':input[name="options[summary][format]"]' => array('value' => $id),
-            ),
-          ),
-          '#default_value' => array(),
-        );
+          '#states' => [
+            'visible' => [
+              ':input[name="options[default_action]"]' => ['value' => 'summary'],
+              ':input[name="options[summary][format]"]' => ['value' => $id],
+            ],
+          ],
+          '#default_value' => [],
+        ];
         $options[$id] = $info['title'];
         $plugin->buildOptionsForm($form['summary']['options'][$id], $form_state);
       }
@@ -703,7 +703,7 @@ public function defaultAction($info = NULL) {
     }
 
     if (!empty($info['method args'])) {
-      return call_user_func_array(array(&$this, $info['method']), $info['method args']);
+      return call_user_func_array([&$this, $info['method']], $info['method args']);
     }
     else {
       return $this->{$info['method']}();
@@ -760,7 +760,7 @@ public function defaultEmpty() {
     // We return with no query; this will force the empty text.
     $this->view->built = TRUE;
     $this->view->executed = TRUE;
-    $this->view->result = array();
+    $this->view->result = [];
     return FALSE;
   }
 
@@ -897,7 +897,7 @@ public function summaryBasics($count_field = TRUE) {
     // Add the number of nodes counter
     $distinct = ($this->view->display_handler->getOption('distinct') && empty($this->query->no_distinct));
 
-    $count_alias = $this->query->addField($this->view->storage->get('base_table'), $this->view->storage->get('base_field'), 'num_records', array('count' => TRUE, 'distinct' => $distinct));
+    $count_alias = $this->query->addField($this->view->storage->get('base_table'), $this->view->storage->get('base_field'), 'num_records', ['count' => TRUE, 'distinct' => $distinct]);
     $this->query->addGroupBy($this->name_alias);
 
     if ($count_field) {
@@ -1074,7 +1074,7 @@ public function getValue() {
    * Get the display or row plugin, if it exists.
    */
   public function getPlugin($type = 'argument_default', $name = NULL) {
-    $options = array();
+    $options = [];
     switch ($type) {
       case 'argument_default':
         if (!isset($this->options['default_argument_type'])) {
@@ -1127,7 +1127,7 @@ public function getPlugin($type = 'argument_default', $name = NULL) {
    * their argument is (e.g. alphabetical, numeric, date).
    */
   public function getSortName() {
-    return $this->t('Default sort', array(), array('context' => 'Sort order'));
+    return $this->t('Default sort', [], ['context' => 'Sort order']);
   }
 
   /**
@@ -1142,12 +1142,12 @@ public function getSortName() {
   public static function processContainerRadios($element) {
     if (count($element['#options']) > 0) {
       foreach ($element['#options'] as $key => $choice) {
-        $element += array($key => array());
+        $element += [$key => []];
         // Generate the parents as the autogenerator does, so we will have a
         // unique id for each radio button.
-        $parents_for_id = array_merge($element['#parents'], array($key));
+        $parents_for_id = array_merge($element['#parents'], [$key]);
 
-        $element[$key] += array(
+        $element[$key] += [
           '#type' => 'radio',
           '#title' => $choice,
           // The key is sanitized in drupal_attributes() during output from the
@@ -1158,11 +1158,11 @@ public static function processContainerRadios($element) {
           '#parents' => $element['#parents'],
           '#id' => Html::getUniqueId('edit-' . implode('-', $parents_for_id)),
           '#ajax' => isset($element['#ajax']) ? $element['#ajax'] : NULL,
-        );
-        $element[$key . '_options'] = array(
+        ];
+        $element[$key . '_options'] = [
           '#type' => 'container',
-          '#attributes' => array('class' => array('views-admin-dependent')),
-        );
+          '#attributes' => ['class' => ['views-admin-dependent']],
+        ];
       }
     }
     return $element;
diff --git a/core/modules/views/src/Plugin/views/argument/Date.php b/core/modules/views/src/Plugin/views/argument/Date.php
index 8d1dd40..a751d56 100644
--- a/core/modules/views/src/Plugin/views/argument/Date.php
+++ b/core/modules/views/src/Plugin/views/argument/Date.php
@@ -85,9 +85,9 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   public function defaultArgumentForm(&$form, FormStateInterface $form_state) {
     parent::defaultArgumentForm($form, $form_state);
-    $form['default_argument_type']['#options'] += array('date' => $this->t('Current date'));
-    $form['default_argument_type']['#options'] += array('node_created' => $this->t("Current node's creation time"));
-    $form['default_argument_type']['#options'] += array('node_changed' => $this->t("Current node's update time"));
+    $form['default_argument_type']['#options'] += ['date' => $this->t('Current date')];
+    $form['default_argument_type']['#options'] += ['node_created' => $this->t("Current node's creation time")];
+    $form['default_argument_type']['#options'] += ['node_changed' => $this->t("Current node's update time")];
   }
 
   /**
@@ -98,7 +98,7 @@ public function getDefaultArgument($raw = FALSE) {
     if (!$raw && $this->options['default_argument_type'] == 'date') {
       return date($this->argFormat, REQUEST_TIME);
     }
-    elseif (!$raw && in_array($this->options['default_argument_type'], array('node_created', 'node_changed'))) {
+    elseif (!$raw && in_array($this->options['default_argument_type'], ['node_created', 'node_changed'])) {
       $node = $this->routeMatch->getParameter('node');
 
       if (!($node instanceof NodeInterface)) {
@@ -119,7 +119,7 @@ public function getDefaultArgument($raw = FALSE) {
    * {@inheritdoc}
    */
   public function getSortName() {
-    return $this->t('Date', array(), array('context' => 'Sort order'));
+    return $this->t('Date', [], ['context' => 'Sort order']);
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument/Formula.php b/core/modules/views/src/Plugin/views/argument/Formula.php
index a80074c..83b3378 100644
--- a/core/modules/views/src/Plugin/views/argument/Formula.php
+++ b/core/modules/views/src/Plugin/views/argument/Formula.php
@@ -59,9 +59,9 @@ public function query($group_by = FALSE) {
     // Now that our table is secure, get our formula.
     $placeholder = $this->placeholder();
     $formula = $this->getFormula() . ' = ' . $placeholder;
-    $placeholders = array(
+    $placeholders = [
       $placeholder => $this->argument,
-    );
+    ];
     $this->query->addWhere(0, $formula, $placeholders, 'formula');
   }
 
diff --git a/core/modules/views/src/Plugin/views/argument/GroupByNumeric.php b/core/modules/views/src/Plugin/views/argument/GroupByNumeric.php
index 1e7ba38..64be23e 100644
--- a/core/modules/views/src/Plugin/views/argument/GroupByNumeric.php
+++ b/core/modules/views/src/Plugin/views/argument/GroupByNumeric.php
@@ -16,7 +16,7 @@ public function query($group_by = FALSE) {
     $field = $this->getField();
     $placeholder = $this->placeholder();
 
-    $this->query->addHavingExpression(0, "$field = $placeholder", array($placeholder => $this->argument));
+    $this->query->addHavingExpression(0, "$field = $placeholder", [$placeholder => $this->argument]);
   }
 
   public function adminLabel($short = FALSE) {
@@ -27,7 +27,7 @@ public function adminLabel($short = FALSE) {
    * {@inheritdoc}
    */
   public function getSortName() {
-    return $this->t('Numerical', array(), array('context' => 'Sort order'));
+    return $this->t('Numerical', [], ['context' => 'Sort order']);
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/argument/ManyToOne.php b/core/modules/views/src/Plugin/views/argument/ManyToOne.php
index 48385d5..f0bd9ba 100644
--- a/core/modules/views/src/Plugin/views/argument/ManyToOne.php
+++ b/core/modules/views/src/Plugin/views/argument/ManyToOne.php
@@ -34,18 +34,18 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     // Ensure defaults for these, during summaries and stuff:
     $this->operator = 'or';
-    $this->value = array();
+    $this->value = [];
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
     if (!empty($this->definition['numeric'])) {
-      $options['break_phrase'] = array('default' => FALSE);
+      $options['break_phrase'] = ['default' => FALSE];
     }
 
-    $options['add_table'] = array('default' => FALSE);
-    $options['require_value'] = array('default' => FALSE);
+    $options['add_table'] = ['default' => FALSE];
+    $options['require_value'] = ['default' => FALSE];
 
     if (isset($this->helper)) {
       $this->helper->defineOptions($options);
@@ -62,28 +62,28 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     // allow + for or, , for and
-    $form['break_phrase'] = array(
+    $form['break_phrase'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple values'),
       '#description' => $this->t('If selected, users can enter multiple values in the form of 1+2+3 (for OR) or 1,2,3 (for AND).'),
       '#default_value' => !empty($this->options['break_phrase']),
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['add_table'] = array(
+    $form['add_table'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple filter values to work together'),
       '#description' => $this->t('If selected, multiple instances of this filter can work together, as though multiple values were supplied to the same filter. This setting is not compatible with the "Reduce duplicates" setting.'),
       '#default_value' => !empty($this->options['add_table']),
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['require_value'] = array(
+    $form['require_value'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Do not display items with no value in summary'),
       '#default_value' => !empty($this->options['require_value']),
       '#group' => 'options][more',
-    );
+    ];
 
     $this->helper->buildOptionsForm($form, $form_state);
   }
@@ -119,7 +119,7 @@ public function query($group_by = FALSE) {
       $this->unpackArgumentValue($force_int);
     }
     else {
-      $this->value = array($this->argument);
+      $this->value = [$this->argument];
       $this->operator = 'or';
     }
 
@@ -136,7 +136,7 @@ function title() {
       $this->unpackArgumentValue($force_int);
     }
     else {
-      $this->value = array($this->argument);
+      $this->value = [$this->argument];
       $this->operator = 'or';
     }
 
@@ -146,7 +146,7 @@ function title() {
       return !empty($this->definition['empty field name']) ? $this->definition['empty field name'] : $this->t('Uncategorized');
     }
 
-    if ($this->value === array(-1)) {
+    if ($this->value === [-1]) {
       return !empty($this->definition['invalid input']) ? $this->definition['invalid input'] : $this->t('Invalid input');
     }
 
diff --git a/core/modules/views/src/Plugin/views/argument/NullArgument.php b/core/modules/views/src/Plugin/views/argument/NullArgument.php
index 181fb33..7fadf16 100644
--- a/core/modules/views/src/Plugin/views/argument/NullArgument.php
+++ b/core/modules/views/src/Plugin/views/argument/NullArgument.php
@@ -15,7 +15,7 @@ class NullArgument extends ArgumentPluginBase {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['must_not_be'] = array('default' => FALSE);
+    $options['must_not_be'] = ['default' => FALSE];
     return $options;
   }
 
@@ -25,13 +25,13 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['must_not_be'] = array(
+    $form['must_not_be'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Fail basic validation if any argument is given'),
       '#default_value' => !empty($this->options['must_not_be']),
       '#description' => $this->t('By checking this field, you can use this to make sure views with more arguments than necessary fail validation.'),
       '#group' => 'options][more',
-    );
+    ];
 
     unset($form['exception']);
   }
@@ -42,7 +42,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   protected function defaultActions($which = NULL) {
     if ($which) {
-      if (in_array($which, array('ignore', 'not found', 'empty', 'default'))) {
+      if (in_array($which, ['ignore', 'not found', 'empty', 'default'])) {
         return parent::defaultActions($which);
       }
       return;
diff --git a/core/modules/views/src/Plugin/views/argument/NumericArgument.php b/core/modules/views/src/Plugin/views/argument/NumericArgument.php
index c2a8293..188d8e9 100644
--- a/core/modules/views/src/Plugin/views/argument/NumericArgument.php
+++ b/core/modules/views/src/Plugin/views/argument/NumericArgument.php
@@ -30,8 +30,8 @@ class NumericArgument extends ArgumentPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['break_phrase'] = array('default' => FALSE);
-    $options['not'] = array('default' => FALSE);
+    $options['break_phrase'] = ['default' => FALSE];
+    $options['not'] = ['default' => FALSE];
 
     return $options;
   }
@@ -40,21 +40,21 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     // allow + for or, , for and
-    $form['break_phrase'] = array(
+    $form['break_phrase'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple values'),
       '#description' => $this->t('If selected, users can enter multiple values in the form of 1+2+3 (for OR) or 1,2,3 (for AND).'),
       '#default_value' => !empty($this->options['break_phrase']),
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['not'] = array(
+    $form['not'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Exclude'),
       '#description' => $this->t('If selected, the numbers entered for the filter will be excluded rather than limiting the view.'),
       '#default_value' => !empty($this->options['not']),
       '#group' => 'options][more',
-    );
+    ];
   }
 
   function title() {
@@ -68,7 +68,7 @@ function title() {
       $this->operator = $break->operator;
     }
     else {
-      $this->value = array($this->argument);
+      $this->value = [$this->argument];
       $this->operator = 'or';
     }
 
@@ -76,7 +76,7 @@ function title() {
       return !empty($this->definition['empty field name']) ? $this->definition['empty field name'] : $this->t('Uncategorized');
     }
 
-    if ($this->value === array(-1)) {
+    if ($this->value === [-1]) {
       return !empty($this->definition['invalid input']) ? $this->definition['invalid input'] : $this->t('Invalid input');
     }
 
@@ -101,7 +101,7 @@ public function query($group_by = FALSE) {
       $this->operator = $break->operator;
     }
     else {
-      $this->value = array($this->argument);
+      $this->value = [$this->argument];
     }
 
     $placeholder = $this->placeholder();
@@ -110,11 +110,11 @@ public function query($group_by = FALSE) {
     if (count($this->value) > 1) {
       $operator = empty($this->options['not']) ? 'IN' : 'NOT IN';
       $placeholder .= '[]';
-      $this->query->addWhereExpression(0, "$this->tableAlias.$this->realField $operator($placeholder) $null_check", array($placeholder => $this->value));
+      $this->query->addWhereExpression(0, "$this->tableAlias.$this->realField $operator($placeholder) $null_check", [$placeholder => $this->value]);
     }
     else {
       $operator = empty($this->options['not']) ? '=' : '!=';
-      $this->query->addWhereExpression(0, "$this->tableAlias.$this->realField $operator $placeholder $null_check", array($placeholder => $this->argument));
+      $this->query->addWhereExpression(0, "$this->tableAlias.$this->realField $operator $placeholder $null_check", [$placeholder => $this->argument]);
     }
   }
 
@@ -122,7 +122,7 @@ public function query($group_by = FALSE) {
    * {@inheritdoc}
    */
   public function getSortName() {
-    return $this->t('Numerical', array(), array('context' => 'Sort order'));
+    return $this->t('Numerical', [], ['context' => 'Sort order']);
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument/StringArgument.php b/core/modules/views/src/Plugin/views/argument/StringArgument.php
index e138c1d..0948c67 100644
--- a/core/modules/views/src/Plugin/views/argument/StringArgument.php
+++ b/core/modules/views/src/Plugin/views/argument/StringArgument.php
@@ -31,23 +31,23 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
       // Ensure defaults for these, during summaries and stuff:
       $this->operator = 'or';
-      $this->value = array();
+      $this->value = [];
     }
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['glossary'] = array('default' => FALSE);
-    $options['limit'] = array('default' => 0);
-    $options['case'] = array('default' => 'none');
-    $options['path_case'] = array('default' => 'none');
-    $options['transform_dash'] = array('default' => FALSE);
-    $options['break_phrase'] = array('default' => FALSE);
+    $options['glossary'] = ['default' => FALSE];
+    $options['limit'] = ['default' => 0];
+    $options['case'] = ['default' => 'none'];
+    $options['path_case'] = ['default' => 'none'];
+    $options['transform_dash'] = ['default' => FALSE];
+    $options['break_phrase'] = ['default' => FALSE];
 
     if (!empty($this->definition['many to one'])) {
-      $options['add_table'] = array('default' => FALSE);
-      $options['require_value'] = array('default' => FALSE);
+      $options['add_table'] = ['default' => FALSE];
+      $options['require_value'] = ['default' => FALSE];
     }
 
     return $options;
@@ -56,89 +56,89 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['glossary'] = array(
+    $form['glossary'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Glossary mode'),
       '#description' => $this->t('Glossary mode applies a limit to the number of characters used in the filter value, which allows the summary view to act as a glossary.'),
       '#default_value' => $this->options['glossary'],
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['limit'] = array(
+    $form['limit'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Character limit'),
       '#description' => $this->t('How many characters of the filter value to filter against. If set to 1, all fields starting with the first letter in the filter value would be matched.'),
       '#default_value' => $this->options['limit'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[glossary]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[glossary]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['case'] = array(
+    $form['case'] = [
       '#type' => 'select',
       '#title' => $this->t('Case'),
       '#description' => $this->t('When printing the title and summary, how to transform the case of the filter value.'),
-      '#options' => array(
+      '#options' => [
         'none' => $this->t('No transform'),
         'upper' => $this->t('Upper case'),
         'lower' => $this->t('Lower case'),
         'ucfirst' => $this->t('Capitalize first letter'),
         'ucwords' => $this->t('Capitalize each word'),
-      ),
+      ],
       '#default_value' => $this->options['case'],
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['path_case'] = array(
+    $form['path_case'] = [
       '#type' => 'select',
       '#title' => $this->t('Case in path'),
       '#description' => $this->t('When printing URL paths, how to transform the case of the filter value. Do not use this unless with Postgres as it uses case sensitive comparisons.'),
-      '#options' => array(
+      '#options' => [
         'none' => $this->t('No transform'),
         'upper' => $this->t('Upper case'),
         'lower' => $this->t('Lower case'),
         'ucfirst' => $this->t('Capitalize first letter'),
         'ucwords' => $this->t('Capitalize each word'),
-      ),
+      ],
       '#default_value' => $this->options['path_case'],
       '#group' => 'options][more',
-    );
+    ];
 
-    $form['transform_dash'] = array(
+    $form['transform_dash'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Transform spaces to dashes in URL'),
       '#default_value' => $this->options['transform_dash'],
       '#group' => 'options][more',
-    );
+    ];
 
     if (!empty($this->definition['many to one'])) {
-      $form['add_table'] = array(
+      $form['add_table'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Allow multiple filter values to work together'),
         '#description' => $this->t('If selected, multiple instances of this filter can work together, as though multiple values were supplied to the same filter. This setting is not compatible with the "Reduce duplicates" setting.'),
         '#default_value' => !empty($this->options['add_table']),
         '#group' => 'options][more',
-      );
+      ];
 
-      $form['require_value'] = array(
+      $form['require_value'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Do not display items with no value in summary'),
         '#default_value' => !empty($this->options['require_value']),
         '#group' => 'options][more',
-      );
+      ];
     }
 
     // allow + for or, , for and
-    $form['break_phrase'] = array(
+    $form['break_phrase'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple values'),
       '#description' => $this->t('If selected, users can enter multiple values in the form of 1+2+3 (for OR) or 1,2,3 (for AND).'),
       '#default_value' => !empty($this->options['break_phrase']),
       '#group' => 'options][more',
-    );
+    ];
   }
 
   /**
@@ -206,7 +206,7 @@ public function query($group_by = FALSE) {
       $this->unpackArgumentValue();
     }
     else {
-      $this->value = array($argument);
+      $this->value = [$argument];
       $this->operator = 'or';
     }
 
@@ -253,9 +253,9 @@ public function query($group_by = FALSE) {
       else {
         $field .= ' = ' . $placeholder;
       }
-      $placeholders = array(
+      $placeholders = [
         $placeholder => $argument,
-      );
+      ];
       $this->query->addWhereExpression(0, $field, $placeholders);
     }
     else {
@@ -275,7 +275,7 @@ public function summaryArgument($data) {
    * {@inheritdoc}
    */
   public function getSortName() {
-    return $this->t('Alphabetical', array(), array('context' => 'Sort order'));
+    return $this->t('Alphabetical', [], ['context' => 'Sort order']);
   }
 
   function title() {
@@ -294,7 +294,7 @@ function title() {
       $this->unpackArgumentValue();
     }
     else {
-      $this->value = array($this->argument);
+      $this->value = [$this->argument];
       $this->operator = 'or';
     }
 
@@ -302,7 +302,7 @@ function title() {
       return !empty($this->definition['empty field name']) ? $this->definition['empty field name'] : $this->t('Uncategorized');
     }
 
-    if ($this->value === array(-1)) {
+    if ($this->value === [-1]) {
       return !empty($this->definition['invalid input']) ? $this->definition['invalid input'] : $this->t('Invalid input');
     }
 
diff --git a/core/modules/views/src/Plugin/views/argument/WeekDate.php b/core/modules/views/src/Plugin/views/argument/WeekDate.php
index 73cc205..918cfec 100644
--- a/core/modules/views/src/Plugin/views/argument/WeekDate.php
+++ b/core/modules/views/src/Plugin/views/argument/WeekDate.php
@@ -19,7 +19,7 @@ class WeekDate extends Date {
    */
   public function summaryName($data) {
     $created = $data->{$this->name_alias};
-    return $this->t('Week @week', array('@week' => $created));
+    return $this->t('Week @week', ['@week' => $created]);
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/argument_default/ArgumentDefaultPluginBase.php b/core/modules/views/src/Plugin/views/argument_default/ArgumentDefaultPluginBase.php
index c3b1c86..6cea74d 100644
--- a/core/modules/views/src/Plugin/views/argument_default/ArgumentDefaultPluginBase.php
+++ b/core/modules/views/src/Plugin/views/argument_default/ArgumentDefaultPluginBase.php
@@ -58,7 +58,7 @@ public function setArgument(ArgumentPluginBase $argument) {
    * Retrieve the options when this is a new access
    * control plugin
    */
-  protected function defineOptions() { return array(); }
+  protected function defineOptions() { return []; }
 
   /**
    * Provide the default form for setting options.
@@ -73,7 +73,7 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) { }
   /**
    * Provide the default form form for submitting options
    */
-  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = array()) { }
+  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = []) { }
 
   /**
    * Determine if the administrator has the privileges to use this
diff --git a/core/modules/views/src/Plugin/views/argument_default/Fixed.php b/core/modules/views/src/Plugin/views/argument_default/Fixed.php
index 317708a..da08e56 100644
--- a/core/modules/views/src/Plugin/views/argument_default/Fixed.php
+++ b/core/modules/views/src/Plugin/views/argument_default/Fixed.php
@@ -23,7 +23,7 @@ class Fixed extends ArgumentDefaultPluginBase implements CacheableDependencyInte
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['argument'] = array('default' => '');
+    $options['argument'] = ['default' => ''];
 
     return $options;
   }
@@ -33,11 +33,11 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['argument'] = array(
+    $form['argument'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Fixed value'),
       '#default_value' => $this->options['argument'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument_default/QueryParameter.php b/core/modules/views/src/Plugin/views/argument_default/QueryParameter.php
index e5b5e20..1b45615 100644
--- a/core/modules/views/src/Plugin/views/argument_default/QueryParameter.php
+++ b/core/modules/views/src/Plugin/views/argument_default/QueryParameter.php
@@ -23,9 +23,9 @@ class QueryParameter extends ArgumentDefaultPluginBase implements CacheableDepen
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['query_param'] = array('default' => '');
-    $options['fallback'] = array('default' => '');
-    $options['multiple'] = array('default' => 'and');
+    $options['query_param'] = ['default' => ''];
+    $options['fallback'] = ['default' => ''];
+    $options['multiple'] = ['default' => 'and'];
 
     return $options;
   }
@@ -35,28 +35,28 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['query_param'] = array(
+    $form['query_param'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Query parameter'),
       '#description' => $this->t('The query parameter to use.'),
       '#default_value' => $this->options['query_param'],
-    );
-    $form['fallback'] = array(
+    ];
+    $form['fallback'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Fallback value'),
       '#description' => $this->t('The fallback value to use when the above query parameter is not present.'),
       '#default_value' => $this->options['fallback'],
-    );
-    $form['multiple'] = array(
+    ];
+    $form['multiple'] = [
       '#type' => 'radios',
       '#title' => $this->t('Multiple values'),
       '#description' => $this->t('Conjunction to use when handling multiple values. E.g. "?value[0]=a&value[1]=b".'),
       '#default_value' => $this->options['multiple'],
-      '#options' => array(
+      '#options' => [
         'and' => $this->t('AND'),
         'or' => $this->t('OR'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument_default/Raw.php b/core/modules/views/src/Plugin/views/argument_default/Raw.php
index 8dd3273..2491bd8 100644
--- a/core/modules/views/src/Plugin/views/argument_default/Raw.php
+++ b/core/modules/views/src/Plugin/views/argument_default/Raw.php
@@ -74,8 +74,8 @@ public static function create(ContainerInterface $container, array $configuratio
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['index'] = array('default' => '');
-    $options['use_alias'] = array('default' => FALSE);
+    $options['index'] = ['default' => ''];
+    $options['use_alias'] = ['default' => FALSE];
 
     return $options;
   }
@@ -85,7 +85,7 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['index'] = array(
+    $form['index'] = [
       '#type' => 'select',
       '#title' => $this->t('Path component'),
       '#default_value' => $this->options['index'],
@@ -94,13 +94,13 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       // - values that count from 1 for display to humans.
       '#options' => range(1, 10),
       '#description' => $this->t('The numbering starts from 1, e.g. on the page admin/structure/types, the 3rd path component is "types".'),
-    );
-    $form['use_alias'] = array(
+    ];
+    $form['use_alias'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Use path alias'),
       '#default_value' => $this->options['use_alias'],
       '#description' => $this->t('Use path alias instead of internal path.'),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/argument_validator/ArgumentValidatorPluginBase.php b/core/modules/views/src/Plugin/views/argument_validator/ArgumentValidatorPluginBase.php
index c1d41d4..5f40430 100644
--- a/core/modules/views/src/Plugin/views/argument_validator/ArgumentValidatorPluginBase.php
+++ b/core/modules/views/src/Plugin/views/argument_validator/ArgumentValidatorPluginBase.php
@@ -53,7 +53,7 @@ public function setArgument(ArgumentPluginBase $argument) {
   /**
    * Retrieves the options when this is a new access control plugin.
    */
-  protected function defineOptions() { return array(); }
+  protected function defineOptions() { return []; }
 
   /**
    * Provides the default form for setting options.
@@ -68,7 +68,7 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) { }
   /**
    * Provides the default form for submitting options.
    */
-  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = array()) { }
+  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = []) { }
 
   /**
    * Determines if the administrator has the privileges to use this plugin.
diff --git a/core/modules/views/src/Plugin/views/argument_validator/Entity.php b/core/modules/views/src/Plugin/views/argument_validator/Entity.php
index 5a963ba..896d24b 100644
--- a/core/modules/views/src/Plugin/views/argument_validator/Entity.php
+++ b/core/modules/views/src/Plugin/views/argument_validator/Entity.php
@@ -71,10 +71,10 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['bundles'] = array('default' => array());
-    $options['access'] = array('default' => FALSE);
-    $options['operation'] = array('default' => 'view');
-    $options['multiple'] = array('default' => FALSE);
+    $options['bundles'] = ['default' => []];
+    $options['access'] = ['default' => FALSE];
+    $options['operation'] = ['default' => 'view'];
+    $options['multiple'] = ['default' => FALSE];
 
     return $options;
   }
@@ -93,60 +93,60 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     // If the entity has bundles, allow option to restrict to bundle(s).
     if ($entity_type->hasKey('bundle')) {
-      $bundle_options = array();
+      $bundle_options = [];
       foreach ($this->entityManager->getBundleInfo($entity_type_id) as $bundle_id => $bundle_info) {
         $bundle_options[$bundle_id] = $bundle_info['label'];
       }
 
-      $form['bundles'] = array(
+      $form['bundles'] = [
         '#title' => $entity_type->getBundleLabel() ?: $this->t('Bundles'),
         '#default_value' => $this->options['bundles'],
         '#type' => 'checkboxes',
         '#options' => $bundle_options,
         '#description' => $this->t('If none are selected, all are allowed.'),
-      );
+      ];
     }
 
     // Offer the option to filter by access to the entity in the argument.
-    $form['access'] = array(
+    $form['access'] = [
       '#type' => 'checkbox',
-      '#title' => $this->t('Validate user has access to the %name', array('%name' => $entity_type->getLabel())),
+      '#title' => $this->t('Validate user has access to the %name', ['%name' => $entity_type->getLabel()]),
       '#default_value' => $this->options['access'],
-    );
-    $form['operation'] = array(
+    ];
+    $form['operation'] = [
       '#type' => 'radios',
       '#title' => $this->t('Access operation to check'),
-      '#options' => array(
+      '#options' => [
         'view' => $this->t('View'),
         'update' => $this->t('Edit'),
         'delete' => $this->t('Delete'),
-      ),
+      ],
       '#default_value' => $this->options['operation'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[validate][options][' . $sanitized_id . '][access]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[validate][options][' . $sanitized_id . '][access]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
     // If class is multiple capable give the option to validate single/multiple.
     if ($this->multipleCapable) {
-      $form['multiple'] = array(
+      $form['multiple'] = [
         '#type' => 'radios',
         '#title' => $this->t('Multiple arguments'),
-        '#options' => array(
-          0 => $this->t('Single ID', array('%type' => $entity_type->getLabel())),
-          1 => $this->t('One or more IDs separated by , or +', array('%type' => $entity_type->getLabel())),
-        ),
+        '#options' => [
+          0 => $this->t('Single ID', ['%type' => $entity_type->getLabel()]),
+          1 => $this->t('One or more IDs separated by , or +', ['%type' => $entity_type->getLabel()]),
+        ],
         '#default_value' => (string) $this->options['multiple'],
-      );
+      ];
     }
   }
 
   /**
    * {@inheritdoc}
    */
-  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = array()) {
+  public function submitOptionsForm(&$form, FormStateInterface $form_state, &$options = []) {
     // Filter out unused options so we don't store giant unnecessary arrays.
     $options['bundles'] = array_filter($options['bundles']);
   }
@@ -163,7 +163,7 @@ public function validateArgument($argument) {
       $ids = array_filter(preg_split('/[,+ ]/', $argument));
     }
     elseif ($argument) {
-      $ids = array($argument);
+      $ids = [$argument];
     }
     // No specified argument should be invalid.
     else {
diff --git a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
index 3b79c69..36b8e19 100644
--- a/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
+++ b/core/modules/views/src/Plugin/views/cache/CachePluginBase.php
@@ -31,7 +31,7 @@
   /**
    * Contains all data that should be written/read from cache.
    */
-  public $storage = array();
+  public $storage = [];
 
   /**
    * Which cache bin to store query results in.
@@ -104,11 +104,11 @@ public function cacheSet($type) {
         // Not supported currently, but this is certainly where we'd put it.
         break;
       case 'results':
-        $data = array(
+        $data = [
           'result' => $this->prepareViewResult($this->view->result),
           'total_rows' => isset($this->view->total_rows) ? $this->view->total_rows : 0,
           'current_page' => $this->view->getCurrentPage(),
-        );
+        ];
         $expire = ($this->cacheSetMaxAge($type) === Cache::PERMANENT) ? Cache::PERMANENT : (int) $this->view->getRequest()->server->get('REQUEST_TIME') + $this->cacheSetMaxAge($type);
         \Drupal::cache($this->resultsBin)->set($this->generateResultsKey(), $data, $expire, $this->getCacheTags());
         break;
@@ -183,16 +183,16 @@ public function generateResultsKey() {
     if (!isset($this->resultsKey)) {
       $build_info = $this->view->build_info;
 
-      foreach (array('query', 'count_query') as $index) {
+      foreach (['query', 'count_query'] as $index) {
         // If the default query back-end is used generate SQL query strings from
         // the query objects.
         if ($build_info[$index] instanceof Select) {
           $query = clone $build_info[$index];
           $query->preExecute();
-          $build_info[$index] = array(
+          $build_info[$index] = [
             'query' => (string)$query,
             'arguments' => $query->getArguments(),
-          );
+          ];
         }
       }
 
diff --git a/core/modules/views/src/Plugin/views/cache/Time.php b/core/modules/views/src/Plugin/views/cache/Time.php
index 601fbac..962693d 100644
--- a/core/modules/views/src/Plugin/views/cache/Time.php
+++ b/core/modules/views/src/Plugin/views/cache/Time.php
@@ -76,64 +76,64 @@ public static function create(ContainerInterface $container, array $configuratio
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['results_lifespan'] = array('default' => 3600);
-    $options['results_lifespan_custom'] = array('default' => 0);
-    $options['output_lifespan'] = array('default' => 3600);
-    $options['output_lifespan_custom'] = array('default' => 0);
+    $options['results_lifespan'] = ['default' => 3600];
+    $options['results_lifespan_custom'] = ['default' => 0];
+    $options['output_lifespan'] = ['default' => 3600];
+    $options['output_lifespan_custom'] = ['default' => 0];
 
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $options = array(60, 300, 1800, 3600, 21600, 518400);
-    $options = array_map(array($this->dateFormatter, 'formatInterval'), array_combine($options, $options));
-    $options = array(0 => $this->t('Never cache')) + $options + array('custom' => $this->t('Custom'));
+    $options = [60, 300, 1800, 3600, 21600, 518400];
+    $options = array_map([$this->dateFormatter, 'formatInterval'], array_combine($options, $options));
+    $options = [0 => $this->t('Never cache')] + $options + ['custom' => $this->t('Custom')];
 
-    $form['results_lifespan'] = array(
+    $form['results_lifespan'] = [
       '#type' => 'select',
       '#title' => $this->t('Query results'),
       '#description' => $this->t('The length of time raw query results should be cached.'),
       '#options' => $options,
       '#default_value' => $this->options['results_lifespan'],
-    );
-    $form['results_lifespan_custom'] = array(
+    ];
+    $form['results_lifespan_custom'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Seconds'),
       '#size' => '25',
       '#maxlength' => '30',
       '#description' => $this->t('Length of time in seconds raw query results should be cached.'),
       '#default_value' => $this->options['results_lifespan_custom'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="cache_options[results_lifespan]"]' => array('value' => 'custom'),
-        ),
-      ),
-    );
-    $form['output_lifespan'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="cache_options[results_lifespan]"]' => ['value' => 'custom'],
+        ],
+      ],
+    ];
+    $form['output_lifespan'] = [
       '#type' => 'select',
       '#title' => $this->t('Rendered output'),
       '#description' => $this->t('The length of time rendered HTML output should be cached.'),
       '#options' => $options,
       '#default_value' => $this->options['output_lifespan'],
-    );
-    $form['output_lifespan_custom'] = array(
+    ];
+    $form['output_lifespan_custom'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Seconds'),
       '#size' => '25',
       '#maxlength' => '30',
       '#description' => $this->t('Length of time in seconds rendered HTML output should be cached.'),
       '#default_value' => $this->options['output_lifespan_custom'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="cache_options[output_lifespan]"]' => array('value' => 'custom'),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="cache_options[output_lifespan]"]' => ['value' => 'custom'],
+        ],
+      ],
+    ];
   }
 
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
-    $custom_fields = array('output_lifespan', 'results_lifespan');
+    $custom_fields = ['output_lifespan', 'results_lifespan'];
     foreach ($custom_fields as $field) {
       $cache_options = $form_state->getValue('cache_options');
       if ($cache_options[$field] == 'custom' && !is_numeric($cache_options[$field . '_custom'])) {
diff --git a/core/modules/views/src/Plugin/views/display/Attachment.php b/core/modules/views/src/Plugin/views/display/Attachment.php
index 6171525..315ab59 100644
--- a/core/modules/views/src/Plugin/views/display/Attachment.php
+++ b/core/modules/views/src/Plugin/views/display/Attachment.php
@@ -34,12 +34,12 @@ class Attachment extends DisplayPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['displays'] = array('default' => array());
-    $options['attachment_position'] = array('default' => 'before');
-    $options['inherit_arguments'] = array('default' => TRUE);
-    $options['inherit_exposed_filters'] = array('default' => FALSE);
-    $options['inherit_pager'] = array('default' => FALSE);
-    $options['render_pager'] = array('default' => FALSE);
+    $options['displays'] = ['default' => []];
+    $options['attachment_position'] = ['default' => 'before'];
+    $options['inherit_arguments'] = ['default' => TRUE];
+    $options['inherit_exposed_filters'] = ['default' => FALSE];
+    $options['inherit_pager'] = ['default' => FALSE];
+    $options['render_pager'] = ['default' => FALSE];
 
     return $options;
   }
@@ -49,11 +49,11 @@ public function execute() {
   }
 
   public function attachmentPositions($position = NULL) {
-    $positions = array(
+    $positions = [
       'before' => $this->t('Before'),
       'after' => $this->t('After'),
       'both' => $this->t('Both'),
-    );
+    ];
 
     if ($position) {
       return $positions[$position];
@@ -71,13 +71,13 @@ public function optionsSummary(&$categories, &$options) {
     // It is very important to call the parent function here:
     parent::optionsSummary($categories, $options);
 
-    $categories['attachment'] = array(
+    $categories['attachment'] = [
       'title' => $this->t('Attachment settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -10,
-      ),
-    );
+      ],
+    ];
 
     $displays = array_filter($this->getOption('displays'));
     if (count($displays) > 1) {
@@ -94,41 +94,41 @@ public function optionsSummary(&$categories, &$options) {
       $attach_to = $this->t('Not defined');
     }
 
-    $options['displays'] = array(
+    $options['displays'] = [
       'category' => 'attachment',
       'title' => $this->t('Attach to'),
       'value' => $attach_to,
-    );
+    ];
 
-    $options['attachment_position'] = array(
+    $options['attachment_position'] = [
       'category' => 'attachment',
       'title' => $this->t('Attachment position'),
       'value' => $this->attachmentPositions($this->getOption('attachment_position')),
-    );
+    ];
 
-    $options['inherit_arguments'] = array(
+    $options['inherit_arguments'] = [
       'category' => 'attachment',
       'title' => $this->t('Inherit contextual filters'),
       'value' => $this->getOption('inherit_arguments') ? $this->t('Yes') : $this->t('No'),
-    );
+    ];
 
-    $options['inherit_exposed_filters'] = array(
+    $options['inherit_exposed_filters'] = [
       'category' => 'attachment',
       'title' => $this->t('Inherit exposed filters'),
       'value' => $this->getOption('inherit_exposed_filters') ? $this->t('Yes') : $this->t('No'),
-    );
+    ];
 
-    $options['inherit_pager'] = array(
+    $options['inherit_pager'] = [
       'category' => 'pager',
       'title' => $this->t('Inherit pager'),
       'value' => $this->getOption('inherit_pager') ? $this->t('Yes') : $this->t('No'),
-    );
+    ];
 
-    $options['render_pager'] = array(
+    $options['render_pager'] = [
       'category' => 'pager',
       'title' => $this->t('Render pager'),
       'value' => $this->getOption('render_pager') ? $this->t('Yes') : $this->t('No'),
-    );
+    ];
 
   }
 
@@ -142,65 +142,65 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'inherit_arguments':
         $form['#title'] .= $this->t('Inherit contextual filters');
-        $form['inherit_arguments'] = array(
+        $form['inherit_arguments'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Inherit'),
           '#description' => $this->t('Should this display inherit its contextual filter values from the parent display to which it is attached?'),
           '#default_value' => $this->getOption('inherit_arguments'),
-        );
+        ];
         break;
       case 'inherit_exposed_filters':
         $form['#title'] .= $this->t('Inherit exposed filters');
-        $form['inherit_exposed_filters'] = array(
+        $form['inherit_exposed_filters'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Inherit'),
           '#description' => $this->t('Should this display inherit its exposed filter values from the parent display to which it is attached?'),
           '#default_value' => $this->getOption('inherit_exposed_filters'),
-        );
+        ];
         break;
       case 'inherit_pager':
         $form['#title'] .= $this->t('Inherit pager');
-        $form['inherit_pager'] = array(
+        $form['inherit_pager'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Inherit'),
           '#description' => $this->t('Should this display inherit its paging values from the parent display to which it is attached?'),
           '#default_value' => $this->getOption('inherit_pager'),
-        );
+        ];
         break;
       case 'render_pager':
         $form['#title'] .= $this->t('Render pager');
-        $form['render_pager'] = array(
+        $form['render_pager'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Render'),
           '#description' => $this->t('Should this display render the pager values? This is only meaningful if inheriting a pager.'),
           '#default_value' => $this->getOption('render_pager'),
-        );
+        ];
         break;
       case 'attachment_position':
         $form['#title'] .= $this->t('Position');
-        $form['attachment_position'] = array(
+        $form['attachment_position'] = [
           '#title' => $this->t('Position'),
           '#type' => 'radios',
           '#description' => $this->t('Attach before or after the parent display?'),
           '#options' => $this->attachmentPositions(),
           '#default_value' => $this->getOption('attachment_position'),
-        );
+        ];
         break;
       case 'displays':
         $form['#title'] .= $this->t('Attach to');
-        $displays = array();
+        $displays = [];
         foreach ($this->view->storage->get('display') as $display_id => $display) {
           if ($this->view->displayHandlers->has($display_id) && $this->view->displayHandlers->get($display_id)->acceptAttachments()) {
             $displays[$display_id] = $display['display_title'];
           }
         }
-        $form['displays'] = array(
+        $form['displays'] = [
           '#title' => $this->t('Displays'),
           '#type' => 'checkboxes',
           '#description' => $this->t('Select which display or displays this should attach to.'),
           '#options' => array_map('\Drupal\Component\Utility\Html::escape', $displays),
           '#default_value' => $this->getOption('displays'),
-        );
+        ];
         break;
     }
   }
@@ -240,7 +240,7 @@ public function attachTo(ViewExecutable $view, $display_id, array &$build) {
       return;
     }
 
-    $args = $this->getOption('inherit_arguments') ? $this->view->args : array();
+    $args = $this->getOption('inherit_arguments') ? $this->view->args : [];
     $view->setArguments($args);
     $view->setDisplay($this->display['id']);
     if ($this->getOption('inherit_pager')) {
diff --git a/core/modules/views/src/Plugin/views/display/Block.php b/core/modules/views/src/Plugin/views/display/Block.php
index 5cc04a7..5e833d7 100644
--- a/core/modules/views/src/Plugin/views/display/Block.php
+++ b/core/modules/views/src/Plugin/views/display/Block.php
@@ -78,15 +78,15 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['block_description'] = array('default' => '');
-    $options['block_category'] = array('default' => $this->t('Lists (Views)'));
-    $options['block_hide_empty'] = array('default' => FALSE);
+    $options['block_description'] = ['default' => ''];
+    $options['block_category'] = ['default' => $this->t('Lists (Views)')];
+    $options['block_hide_empty'] = ['default' => FALSE];
 
-    $options['allow'] = array(
-      'contains' => array(
-        'items_per_page' => array('default' => 'items_per_page'),
-      ),
-    );
+    $options['allow'] = [
+      'contains' => [
+        'items_per_page' => ['default' => 'items_per_page'],
+      ],
+    ];
 
     return $options;
   }
@@ -116,7 +116,7 @@ public function execute() {
     // display, and arguments should be set on the view.
     $element = $this->view->render();
     if ($this->outputIsEmpty() && $this->getOption('block_hide_empty') && empty($this->view->style_plugin->definition['even empty'])) {
-      return array();
+      return [];
     }
     else {
       return $element;
@@ -131,13 +131,13 @@ public function execute() {
   public function optionsSummary(&$categories, &$options) {
     parent::optionsSummary($categories, $options);
 
-    $categories['block'] = array(
+    $categories['block'] = [
       'title' => $this->t('Block settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -10,
-      ),
-    );
+      ],
+    ];
 
     $block_description = strip_tags($this->getOption('block_description'));
     if (empty($block_description)) {
@@ -145,30 +145,30 @@ public function optionsSummary(&$categories, &$options) {
     }
     $block_category = $this->getOption('block_category');
 
-    $options['block_description'] = array(
+    $options['block_description'] = [
       'category' => 'block',
       'title' => $this->t('Block name'),
       'value' => views_ui_truncate($block_description, 24),
-    );
-    $options['block_category'] = array(
+    ];
+    $options['block_category'] = [
       'category' => 'block',
       'title' => $this->t('Block category'),
       'value' => views_ui_truncate($block_category, 24),
-    );
+    ];
 
     $filtered_allow = array_filter($this->getOption('allow'));
 
-    $options['allow'] = array(
+    $options['allow'] = [
       'category' => 'block',
       'title' => $this->t('Allow settings'),
       'value' => empty($filtered_allow) ? $this->t('None') : $this->t('Items per page'),
-    );
+    ];
 
-    $options['block_hide_empty'] = array(
+    $options['block_hide_empty'] = [
       'category' => 'other',
       'title' => $this->t('Hide block if the view output is empty'),
       'value' => $this->getOption('block_hide_empty') ? $this->t('Yes') : $this->t('No'),
-    );
+    ];
   }
 
   /**
@@ -180,53 +180,53 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'block_description':
         $form['#title'] .= $this->t('Block admin description');
-        $form['block_description'] = array(
+        $form['block_description'] = [
           '#type' => 'textfield',
           '#description' => $this->t('This will appear as the name of this block in administer >> structure >> blocks.'),
           '#default_value' => $this->getOption('block_description'),
-        );
+        ];
         break;
       case 'block_category':
         $form['#title'] .= $this->t('Block category');
-        $form['block_category'] = array(
+        $form['block_category'] = [
           '#type' => 'textfield',
           '#autocomplete_route_name' => 'block.category_autocomplete',
-          '#description' => $this->t('The category this block will appear under on the <a href=":href">blocks placement page</a>.', array(':href' => \Drupal::url('block.admin_display'))),
+          '#description' => $this->t('The category this block will appear under on the <a href=":href">blocks placement page</a>.', [':href' => \Drupal::url('block.admin_display')]),
           '#default_value' => $this->getOption('block_category'),
-        );
+        ];
         break;
       case 'block_hide_empty':
         $form['#title'] .= $this->t('Block empty settings');
 
-        $form['block_hide_empty'] = array(
+        $form['block_hide_empty'] = [
           '#title' => $this->t('Hide block if no result/empty text'),
           '#type' => 'checkbox',
           '#description' => $this->t('Hide the block if there is no result and no empty text and no header/footer which is shown on empty result'),
           '#default_value' => $this->getOption('block_hide_empty'),
-        );
+        ];
         break;
       case 'exposed_form_options':
         $this->view->initHandlers();
         if (!$this->usesExposed() && parent::usesExposed()) {
-          $form['exposed_form_options']['warning'] = array(
+          $form['exposed_form_options']['warning'] = [
             '#weight' => -10,
             '#markup' => '<div class="messages messages--warning">' . $this->t('Exposed filters in block displays require "Use AJAX" to be set to work correctly.') . '</div>',
-          );
+          ];
         }
         break;
       case 'allow':
         $form['#title'] .= $this->t('Allow settings in the block configuration');
 
-        $options = array(
+        $options = [
           'items_per_page' => $this->t('Items per page'),
-        );
+        ];
 
         $allow = array_filter($this->getOption('allow'));
-        $form['allow'] = array(
+        $form['allow'] = [
           '#type' => 'checkboxes',
           '#default_value' => $allow,
           '#options' => $options,
-        );
+        ];
         break;
     }
   }
@@ -276,18 +276,18 @@ public function blockForm(ViewsBlock $block, array &$form, FormStateInterface $f
       }
       switch ($type) {
         case 'items_per_page':
-          $form['override']['items_per_page'] = array(
+          $form['override']['items_per_page'] = [
             '#type' => 'select',
             '#title' => $this->t('Items per block'),
-            '#options' => array(
-              'none' => $this->t('@count (default setting)', array('@count' => $this->getPlugin('pager')->getItemsPerPage())),
+            '#options' => [
+              'none' => $this->t('@count (default setting)', ['@count' => $this->getPlugin('pager')->getItemsPerPage()]),
               5 => 5,
               10 => 10,
               20 => 20,
               40 => 40,
-            ),
+            ],
             '#default_value' => $block_configuration['items_per_page'],
-          );
+          ];
           break;
       }
     }
@@ -323,10 +323,10 @@ public function blockValidate(ViewsBlock $block, array $form, FormStateInterface
    * @see \Drupal\views\Plugin\Block\ViewsBlock::blockSubmit()
    */
   public function blockSubmit(ViewsBlock $block, $form, FormStateInterface $form_state) {
-    if ($items_per_page = $form_state->getValue(array('override', 'items_per_page'))) {
+    if ($items_per_page = $form_state->getValue(['override', 'items_per_page'])) {
       $block->setConfigurationValue('items_per_page', $items_per_page);
     }
-    $form_state->unsetValue(array('override', 'items_per_page'));
+    $form_state->unsetValue(['override', 'items_per_page']);
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/display/DisplayPluginBase.php b/core/modules/views/src/Plugin/views/display/DisplayPluginBase.php
index c8b07ea..c16ee3b 100644
--- a/core/modules/views/src/Plugin/views/display/DisplayPluginBase.php
+++ b/core/modules/views/src/Plugin/views/display/DisplayPluginBase.php
@@ -44,7 +44,7 @@
    *
    * @var \Drupal\views\Plugin\views\ViewsPluginInterface[]
    */
-  protected $plugins = array();
+  protected $plugins = [];
 
   /**
    * Stores all available display extenders.
@@ -107,7 +107,7 @@
    *
    * @var array
    */
-  protected static $unpackOptions = array();
+  protected static $unpackOptions = [];
 
   /**
    * The display information coming directly from the view entity.
@@ -139,7 +139,7 @@
    *   The plugin implementation definition.
    */
   public function __construct(array $configuration, $plugin_id, $plugin_definition) {
-    parent::__construct(array(), $plugin_id, $plugin_definition);
+    parent::__construct([], $plugin_id, $plugin_definition);
   }
 
   /**
@@ -150,7 +150,7 @@ public function initDisplay(ViewExecutable $view, array &$display, array &$optio
 
     // Load extenders as soon as possible.
     $display['display_options'] += ['display_extenders' => []];
-    $this->extenders = array();
+    $this->extenders = [];
     if ($extenders = Views::getEnabledDisplayExtenders()) {
       $manager = Views::pluginManager('display_extender');
       $display_extender_options = $display['display_options']['display_extenders'];
@@ -182,7 +182,7 @@ public function initDisplay(ViewExecutable $view, array &$display, array &$optio
     $skip_cache = \Drupal::config('views.settings')->get('skip_cache');
 
     if (empty($view->editing) || !$skip_cache) {
-      $cid = 'views:unpack_options:' . hash('sha256', serialize(array($this->options, $options))) . ':' . \Drupal::languageManager()->getCurrentLanguage()->getId();
+      $cid = 'views:unpack_options:' . hash('sha256', serialize([$this->options, $options])) . ':' . \Drupal::languageManager()->getCurrentLanguage()->getId();
       if (empty(static::$unpackOptions[$cid])) {
         $cache = \Drupal::cache('data')->get($cid);
         if (!empty($cache->data)) {
@@ -400,40 +400,40 @@ public function attachTo(ViewExecutable $view, $display_id, array &$build) { }
    * {@inheritdoc}
    */
   public function defaultableSections($section = NULL) {
-    $sections = array(
-      'access' => array('access'),
-      'cache' => array('cache'),
-      'title' => array('title'),
-      'css_class' => array('css_class'),
-      'use_ajax' => array('use_ajax'),
-      'hide_attachment_summary' => array('hide_attachment_summary'),
-      'show_admin_links' => array('show_admin_links'),
-      'group_by' => array('group_by'),
-      'query' => array('query'),
-      'use_more' => array('use_more', 'use_more_always', 'use_more_text'),
-      'use_more_always' => array('use_more', 'use_more_always', 'use_more_text'),
-      'use_more_text' => array('use_more', 'use_more_always', 'use_more_text'),
-      'link_display' => array('link_display', 'link_url'),
+    $sections = [
+      'access' => ['access'],
+      'cache' => ['cache'],
+      'title' => ['title'],
+      'css_class' => ['css_class'],
+      'use_ajax' => ['use_ajax'],
+      'hide_attachment_summary' => ['hide_attachment_summary'],
+      'show_admin_links' => ['show_admin_links'],
+      'group_by' => ['group_by'],
+      'query' => ['query'],
+      'use_more' => ['use_more', 'use_more_always', 'use_more_text'],
+      'use_more_always' => ['use_more', 'use_more_always', 'use_more_text'],
+      'use_more_text' => ['use_more', 'use_more_always', 'use_more_text'],
+      'link_display' => ['link_display', 'link_url'],
 
       // Force these to cascade properly.
-      'style' => array('style', 'row'),
-      'row' => array('style', 'row'),
+      'style' => ['style', 'row'],
+      'row' => ['style', 'row'],
 
-      'pager' => array('pager'),
+      'pager' => ['pager'],
 
-      'exposed_form' => array('exposed_form'),
+      'exposed_form' => ['exposed_form'],
 
       // These sections are special.
-      'header' => array('header'),
-      'footer' => array('footer'),
-      'empty' => array('empty'),
-      'relationships' => array('relationships'),
-      'fields' => array('fields'),
-      'sorts' => array('sorts'),
-      'arguments' => array('arguments'),
-      'filters' => array('filters', 'filter_groups'),
-      'filter_groups' => array('filters', 'filter_groups'),
-    );
+      'header' => ['header'],
+      'footer' => ['footer'],
+      'empty' => ['empty'],
+      'relationships' => ['relationships'],
+      'fields' => ['fields'],
+      'sorts' => ['sorts'],
+      'arguments' => ['arguments'],
+      'filters' => ['filters', 'filter_groups'],
+      'filter_groups' => ['filters', 'filter_groups'],
+    ];
 
     // If the display cannot use a pager, then we cannot default it.
     if (!$this->usesPager()) {
@@ -456,9 +456,9 @@ public function defaultableSections($section = NULL) {
   }
 
   protected function defineOptions() {
-    $options = array(
-      'defaults' => array(
-        'default' => array(
+    $options = [
+      'defaults' => [
+        'default' => [
           'access' => TRUE,
           'cache' => TRUE,
           'query' => TRUE,
@@ -492,152 +492,152 @@ protected function defineOptions() {
           'arguments' => TRUE,
           'filters' => TRUE,
           'filter_groups' => TRUE,
-        ),
-      ),
+        ],
+      ],
 
-      'title' => array(
+      'title' => [
         'default' => '',
-      ),
-      'enabled' => array(
+      ],
+      'enabled' => [
         'default' => TRUE,
-      ),
-      'display_comment' => array(
+      ],
+      'display_comment' => [
         'default' => '',
-      ),
-      'css_class' => array(
+      ],
+      'css_class' => [
         'default' => '',
-      ),
-      'display_description' => array(
+      ],
+      'display_description' => [
         'default' => '',
-      ),
-      'use_ajax' => array(
+      ],
+      'use_ajax' => [
         'default' => FALSE,
-      ),
-      'hide_attachment_summary' => array(
+      ],
+      'hide_attachment_summary' => [
         'default' => FALSE,
-      ),
-      'show_admin_links' => array(
+      ],
+      'show_admin_links' => [
         'default' => TRUE,
-      ),
-      'use_more' => array(
+      ],
+      'use_more' => [
         'default' => FALSE,
-      ),
-      'use_more_always' => array(
+      ],
+      'use_more_always' => [
         'default' => TRUE,
-      ),
-      'use_more_text' => array(
+      ],
+      'use_more_text' => [
         'default' => 'more',
-      ),
-      'link_display' => array(
+      ],
+      'link_display' => [
         'default' => '',
-      ),
-      'link_url' => array(
+      ],
+      'link_url' => [
         'default' => '',
-      ),
-      'group_by' => array(
+      ],
+      'group_by' => [
         'default' => FALSE,
-      ),
-      'rendering_language' => array(
+      ],
+      'rendering_language' => [
         'default' => '***LANGUAGE_entity_translation***',
-      ),
+      ],
 
       // These types are all plugins that can have individual settings
       // and therefore need special handling.
-      'access' => array(
-        'contains' => array(
-          'type' => array('default' => 'none'),
-          'options' => array('default' => array()),
-        ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'cache' => array(
-        'contains' => array(
-          'type' => array('default' => 'tag'),
-          'options' => array('default' => array()),
-        ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'query' => array(
-        'contains' => array(
-          'type' => array('default' => 'views_query'),
-          'options' => array('default' => array()),
-         ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'exposed_form' => array(
-        'contains' => array(
-          'type' => array('default' => 'basic'),
-          'options' => array('default' => array()),
-         ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'pager' => array(
-        'contains' => array(
-          'type' => array('default' => 'mini'),
-          'options' => array('default' => array()),
-         ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'style' => array(
-        'contains' => array(
-          'type' => array('default' => 'default'),
-          'options' => array('default' => array()),
-        ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
-      'row' => array(
-        'contains' => array(
-          'type' => array('default' => 'fields'),
-          'options' => array('default' => array()),
-        ),
-        'merge_defaults' => array($this, 'mergePlugin'),
-      ),
+      'access' => [
+        'contains' => [
+          'type' => ['default' => 'none'],
+          'options' => ['default' => []],
+        ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'cache' => [
+        'contains' => [
+          'type' => ['default' => 'tag'],
+          'options' => ['default' => []],
+        ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'query' => [
+        'contains' => [
+          'type' => ['default' => 'views_query'],
+          'options' => ['default' => []],
+         ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'exposed_form' => [
+        'contains' => [
+          'type' => ['default' => 'basic'],
+          'options' => ['default' => []],
+         ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'pager' => [
+        'contains' => [
+          'type' => ['default' => 'mini'],
+          'options' => ['default' => []],
+         ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'style' => [
+        'contains' => [
+          'type' => ['default' => 'default'],
+          'options' => ['default' => []],
+        ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
+      'row' => [
+        'contains' => [
+          'type' => ['default' => 'fields'],
+          'options' => ['default' => []],
+        ],
+        'merge_defaults' => [$this, 'mergePlugin'],
+      ],
 
-      'exposed_block' => array(
+      'exposed_block' => [
         'default' => FALSE,
-      ),
+      ],
 
-      'header' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'footer' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'empty' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
+      'header' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'footer' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'empty' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
 
       // We want these to export last.
       // These are the 5 handler types.
-      'relationships' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'fields' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'sorts' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'arguments' => array(
-        'default' => array(),
-        'merge_defaults' => array($this, 'mergeHandler'),
-      ),
-      'filter_groups' => array(
-        'contains' => array(
-          'operator' => array('default' => 'AND'),
-          'groups' => array('default' => array(1 => 'AND')),
-        ),
-      ),
-      'filters' => array(
-        'default' => array(),
-      ),
-    );
+      'relationships' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'fields' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'sorts' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'arguments' => [
+        'default' => [],
+        'merge_defaults' => [$this, 'mergeHandler'],
+      ],
+      'filter_groups' => [
+        'contains' => [
+          'operator' => ['default' => 'AND'],
+          'groups' => ['default' => [1 => 'AND']],
+        ],
+      ],
+      'filters' => [
+        'default' => [],
+      ],
+    ];
 
     if (!$this->usesPager()) {
       $options['defaults']['default']['pager'] = FALSE;
@@ -682,7 +682,7 @@ public function usesExposedFormInBlock() { return $this->hasPath(); }
    */
   public function getAttachedDisplays() {
     $current_display_id = $this->display['id'];
-    $attached_displays = array();
+    $attached_displays = [];
 
     // Go through all displays and search displays which link to this one.
     foreach ($this->view->storage->get('display') as $display_id => $display) {
@@ -840,7 +840,7 @@ public function &getHandler($type, $id) {
    */
   public function &getHandlers($type) {
     if (!isset($this->handlers[$type])) {
-      $this->handlers[$type] = array();
+      $this->handlers[$type] = [];
       $types = ViewExecutable::getHandlerTypes();
       $plural = $types[$type]['plural'];
 
@@ -950,7 +950,7 @@ public function calculateDependencies() {
     // Collect all the dependencies of handlers and plugins. Only calculate
     // their dependencies if they are configured by this display.
     $plugins = array_merge($this->getAllHandlers(TRUE), $this->getAllPlugins(TRUE));
-    array_walk($plugins, array($this, 'calculatePluginDependencies'));
+    array_walk($plugins, [$this, 'calculatePluginDependencies']);
 
     return $this->dependencies;
   }
@@ -960,7 +960,7 @@ public function calculateDependencies() {
    * {@inheritdoc}
    */
   public function getFieldLabels($groupable_only = FALSE) {
-    $options = array();
+    $options = [];
     foreach ($this->getHandlers('relationship') as $relationship => $handler) {
       $relationships[$relationship] = $handler->adminLabel();
     }
@@ -1015,32 +1015,32 @@ public function optionLink($text, $section, $class = '', $title = '') {
     }
 
     if (!empty($class)) {
-      $text = SafeMarkup::format('<span>@text</span>', array('@text' => $text));
+      $text = SafeMarkup::format('<span>@text</span>', ['@text' => $text]);
     }
 
     if (empty($title)) {
       $title = $text;
     }
 
-    return \Drupal::l($text, new Url('views_ui.form_display', array(
+    return \Drupal::l($text, new Url('views_ui.form_display', [
         'js' => 'nojs',
         'view' => $this->view->storage->id(),
         'display_id' => $this->display['id'],
         'type' => $section
-      ), array(
-        'attributes' => array(
-          'class' => array('views-ajax-link', $class),
+      ], [
+        'attributes' => [
+          'class' => ['views-ajax-link', $class],
           'title' => $title,
           'id' => Html::getUniqueId('views-' . $this->display['id'] . '-' . $section)
-        )
-    )));
+        ]
+    ]));
   }
 
   /**
    * {@inheritdoc}
    */
   public function getArgumentsTokens() {
-    $tokens = array();
+    $tokens = [];
     if (!empty($this->view->build_info['substitutions'])) {
       $tokens = $this->view->build_info['substitutions'];
     }
@@ -1052,94 +1052,94 @@ public function getArgumentsTokens() {
    * {@inheritdoc}
    */
   public function optionsSummary(&$categories, &$options) {
-    $categories = array(
-      'title' => array(
+    $categories = [
+      'title' => [
         'title' => $this->t('Title'),
         'column' => 'first',
-      ),
-      'format' => array(
+      ],
+      'format' => [
         'title' => $this->t('Format'),
         'column' => 'first',
-      ),
-      'filters' => array(
+      ],
+      'filters' => [
         'title' => $this->t('Filters'),
         'column' => 'first',
-      ),
-      'fields' => array(
+      ],
+      'fields' => [
         'title' => $this->t('Fields'),
         'column' => 'first',
-      ),
-      'pager' => array(
+      ],
+      'pager' => [
         'title' => $this->t('Pager'),
         'column' => 'second',
-      ),
-      'language' => array(
+      ],
+      'language' => [
         'title' => $this->t('Language'),
         'column' => 'second',
-      ),
-      'exposed' => array(
+      ],
+      'exposed' => [
         'title' => $this->t('Exposed form'),
         'column' => 'third',
-        'build' => array(
+        'build' => [
           '#weight' => 1,
-        ),
-      ),
-      'access' => array(
+        ],
+      ],
+      'access' => [
         'title' => '',
         'column' => 'second',
-        'build' => array(
+        'build' => [
           '#weight' => -5,
-        ),
-      ),
-      'other' => array(
+        ],
+      ],
+      'other' => [
         'title' => $this->t('Other'),
         'column' => 'third',
-        'build' => array(
+        'build' => [
           '#weight' => 2,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     if ($this->display['id'] != 'default') {
-      $options['display_id'] = array(
+      $options['display_id'] = [
         'category' => 'other',
         'title' => $this->t('Machine Name'),
         'value' => !empty($this->display['new_id']) ? $this->display['new_id'] : $this->display['id'],
         'desc' => $this->t('Change the machine name of this display.'),
-      );
+      ];
     }
 
     $display_comment = views_ui_truncate($this->getOption('display_comment'), 80);
-    $options['display_comment'] = array(
+    $options['display_comment'] = [
       'category' => 'other',
       'title' => $this->t('Administrative comment'),
       'value' => !empty($display_comment) ? $display_comment : $this->t('None'),
       'desc' => $this->t('Comment or document this display.'),
-    );
+    ];
 
     $title = strip_tags($this->getOption('title'));
     if (!$title) {
       $title = $this->t('None');
     }
 
-    $options['title'] = array(
+    $options['title'] = [
       'category' => 'title',
       'title' => $this->t('Title'),
       'value' => views_ui_truncate($title, 32),
       'desc' => $this->t('Change the title that this display will use.'),
-    );
+    ];
 
     $style_plugin_instance = $this->getPlugin('style');
     $style_summary = empty($style_plugin_instance->definition['title']) ? $this->t('Missing style plugin') : $style_plugin_instance->summaryTitle();
     $style_title = empty($style_plugin_instance->definition['title']) ? $this->t('Missing style plugin') : $style_plugin_instance->pluginTitle();
 
-    $options['style'] = array(
+    $options['style'] = [
       'category' => 'format',
       'title' => $this->t('Format'),
       'value' => $style_title,
       'setting' => $style_summary,
       'desc' => $this->t('Change the way content is formatted.'),
-    );
+    ];
 
     // This adds a 'Settings' link to the style_options setting if the style has
     // options.
@@ -1152,13 +1152,13 @@ public function optionsSummary(&$categories, &$options) {
       $row_summary = empty($row_plugin_instance->definition['title']) ? $this->t('Missing row plugin') : $row_plugin_instance->summaryTitle();
       $row_title = empty($row_plugin_instance->definition['title']) ? $this->t('Missing row plugin') : $row_plugin_instance->pluginTitle();
 
-      $options['row'] = array(
+      $options['row'] = [
         'category' => 'format',
         'title' => $this->t('Show'),
         'value' => $row_title,
         'setting' => $row_summary,
         'desc' => $this->t('Change the way each row in the view is styled.'),
-      );
+      ];
       // This adds a 'Settings' link to the row_options setting if the row style
       // has options.
       if ($row_plugin_instance->usesOptions()) {
@@ -1166,28 +1166,28 @@ public function optionsSummary(&$categories, &$options) {
       }
     }
     if ($this->usesAJAX()) {
-      $options['use_ajax'] = array(
+      $options['use_ajax'] = [
         'category' => 'other',
         'title' => $this->t('Use AJAX'),
         'value' => $this->getOption('use_ajax') ? $this->t('Yes') : $this->t('No'),
         'desc' => $this->t('Change whether or not this display will use AJAX.'),
-      );
+      ];
     }
     if ($this->usesAttachments()) {
-      $options['hide_attachment_summary'] = array(
+      $options['hide_attachment_summary'] = [
         'category' => 'other',
         'title' => $this->t('Hide attachments in summary'),
         'value' => $this->getOption('hide_attachment_summary') ? $this->t('Yes') : $this->t('No'),
         'desc' => $this->t('Change whether or not to display attachments when displaying a contextual filter summary.'),
-      );
+      ];
     }
     if (!isset($this->definition['contextual links locations']) || !empty($this->definition['contextual links locations'])) {
-      $options['show_admin_links'] = array(
+      $options['show_admin_links'] = [
         'category' => 'other',
         'title' => $this->t('Contextual links'),
         'value' => $this->getOption('show_admin_links') ? $this->t('Shown') : $this->t('Hidden'),
         'desc' => $this->t('Change whether or not to display contextual links for this view.'),
-      );
+      ];
     }
 
     $pager_plugin = $this->getPlugin('pager');
@@ -1198,13 +1198,13 @@ public function optionsSummary(&$categories, &$options) {
 
     $pager_str = $pager_plugin->summaryTitle();
 
-    $options['pager'] = array(
+    $options['pager'] = [
       'category' => 'pager',
       'title' => $this->t('Use pager'),
       'value' => $pager_plugin->pluginTitle(),
       'setting' => $pager_str,
       'desc' => $this->t("Change this display's pager setting."),
-    );
+    ];
 
     // If pagers aren't allowed, change the text of the item.
     if (!$this->usesPager()) {
@@ -1216,39 +1216,39 @@ public function optionsSummary(&$categories, &$options) {
     }
 
     if ($this->usesMore()) {
-      $options['use_more'] = array(
+      $options['use_more'] = [
         'category' => 'pager',
         'title' => $this->t('More link'),
         'value' => $this->getOption('use_more') ? $this->t('Yes') : $this->t('No'),
         'desc' => $this->t('Specify whether this display will provide a "more" link.'),
-      );
+      ];
     }
 
     $this->view->initQuery();
     if ($this->view->query->getAggregationInfo()) {
-      $options['group_by'] = array(
+      $options['group_by'] = [
         'category' => 'other',
         'title' => $this->t('Use aggregation'),
         'value' => $this->getOption('group_by') ? $this->t('Yes') : $this->t('No'),
         'desc' => $this->t('Allow grouping and aggregation (calculation) of fields.'),
-      );
+      ];
     }
 
-    $options['query'] = array(
+    $options['query'] = [
       'category' => 'other',
       'title' => $this->t('Query settings'),
       'value' => $this->t('Settings'),
       'desc' => $this->t('Allow to set some advanced settings for the query plugin'),
-    );
+    ];
 
     if (\Drupal::languageManager()->isMultilingual() && $this->isBaseTableTranslatable()) {
       $rendering_language_options = $this->buildRenderingLanguageOptions();
-      $options['rendering_language'] = array(
+      $options['rendering_language'] = [
         'category' => 'language',
         'title' => $this->t('Rendering Language'),
         'value' => $rendering_language_options[$this->getOption('rendering_language')],
         'desc' => $this->t('All content that supports translations will be displayed in the selected language.'),
-      );
+      ];
     }
 
     $access_plugin = $this->getPlugin('access');
@@ -1259,13 +1259,13 @@ public function optionsSummary(&$categories, &$options) {
 
     $access_str = $access_plugin->summaryTitle();
 
-    $options['access'] = array(
+    $options['access'] = [
       'category' => 'access',
       'title' => $this->t('Access'),
       'value' => $access_plugin->pluginTitle(),
       'setting' => $access_str,
       'desc' => $this->t('Specify access control type for this display.'),
-    );
+    ];
 
     if ($access_plugin->usesOptions()) {
       $options['access']['links']['access_options'] = $this->t('Change settings for this access type.');
@@ -1279,13 +1279,13 @@ public function optionsSummary(&$categories, &$options) {
 
     $cache_str = $cache_plugin->summaryTitle();
 
-    $options['cache'] = array(
+    $options['cache'] = [
       'category' => 'other',
       'title' => $this->t('Caching'),
       'value' => $cache_plugin->pluginTitle(),
       'setting' => $cache_str,
       'desc' => $this->t('Specify caching type for this display.'),
-    );
+    ];
 
     if ($cache_plugin->usesOptions()) {
       $options['cache']['links']['cache_options'] = $this->t('Change settings for this caching type.');
@@ -1310,21 +1310,21 @@ public function optionsSummary(&$categories, &$options) {
         }
       }
 
-      $options['link_display'] = array(
+      $options['link_display'] = [
         'category' => 'pager',
         'title' => $this->t('Link display'),
         'value' => $link_display,
         'desc' => $this->t('Specify which display or custom URL this display will link to.'),
-      );
+      ];
     }
 
     if ($this->usesExposedFormInBlock()) {
-      $options['exposed_block'] = array(
+      $options['exposed_block'] = [
         'category' => 'exposed',
         'title' => $this->t('Exposed form in block'),
         'value' => $this->getOption('exposed_block') ? $this->t('Yes') : $this->t('No'),
         'desc' => $this->t('Allow the exposed form to appear in a block instead of the view.'),
-      );
+      ];
     }
 
     /** @var \Drupal\views\Plugin\views\exposed_form\ExposedFormPluginInterface $exposed_form_plugin */
@@ -1336,13 +1336,13 @@ public function optionsSummary(&$categories, &$options) {
 
     $exposed_form_str = $exposed_form_plugin->summaryTitle();
 
-    $options['exposed_form'] = array(
+    $options['exposed_form'] = [
       'category' => 'exposed',
       'title' => $this->t('Exposed form style'),
       'value' => $exposed_form_plugin->pluginTitle(),
       'setting' => $exposed_form_str,
       'desc' => $this->t('Select the kind of exposed filter to use.'),
-    );
+    ];
 
     if ($exposed_form_plugin->usesOptions()) {
       $options['exposed_form']['links']['exposed_form_options'] = $this->t('Exposed form settings for this exposed form style.');
@@ -1353,12 +1353,12 @@ public function optionsSummary(&$categories, &$options) {
       $css_class = $this->t('None');
     }
 
-    $options['css_class'] = array(
+    $options['css_class'] = [
       'category' => 'other',
       'title' => $this->t('CSS class'),
       'value' => $css_class,
       'desc' => $this->t('Change the CSS class name(s) that will be added to this display.'),
-    );
+    ];
 
     foreach ($this->extenders as $extender) {
       $extender->optionsSummary($categories, $options);
@@ -1390,144 +1390,144 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($section) {
       case 'display_id':
         $form['#title'] .= $this->t('The machine name of this display');
-        $form['display_id'] = array(
+        $form['display_id'] = [
           '#type' => 'textfield',
           '#title' => $this->t('Machine name of the display'),
           '#default_value' => !empty($this->display['new_id']) ? $this->display['new_id'] : $this->display['id'],
           '#required' => TRUE,
           '#size' => 64,
-        );
+        ];
         break;
       case 'display_title':
         $form['#title'] .= $this->t('The name and the description of this display');
-        $form['display_title'] = array(
+        $form['display_title'] = [
           '#title' => $this->t('Administrative name'),
           '#type' => 'textfield',
           '#default_value' => $this->display['display_title'],
-        );
-        $form['display_description'] = array(
+        ];
+        $form['display_description'] = [
           '#title' => $this->t('Administrative description'),
           '#type' => 'textfield',
           '#default_value' => $this->getOption('display_description'),
-        );
+        ];
         break;
       case 'display_comment':
         $form['#title'] .= $this->t('Administrative comment');
-        $form['display_comment'] = array(
+        $form['display_comment'] = [
           '#type' => 'textarea',
           '#title' => $this->t('Administrative comment'),
           '#description' => $this->t('This description will only be seen within the administrative interface and can be used to document this display.'),
           '#default_value' => $this->getOption('display_comment'),
-        );
+        ];
         break;
       case 'title':
         $form['#title'] .= $this->t('The title of this view');
-        $form['title'] = array(
+        $form['title'] = [
           '#title' => $this->t('Title'),
           '#type' => 'textfield',
           '#description' => $this->t('This title will be displayed with the view, wherever titles are normally displayed; i.e, as the page title, block title, etc.'),
           '#default_value' => $this->getOption('title'),
           '#maxlength' => 255,
-        );
+        ];
         break;
       case 'css_class':
         $form['#title'] .= $this->t('CSS class');
-        $form['css_class'] = array(
+        $form['css_class'] = [
           '#type' => 'textfield',
           '#title' => $this->t('CSS class name(s)'),
           '#description' => $this->t('Separate multiple classes by spaces.'),
           '#default_value' => $this->getOption('css_class'),
-        );
+        ];
         break;
       case 'use_ajax':
         $form['#title'] .= $this->t('AJAX');
-        $form['use_ajax'] = array(
+        $form['use_ajax'] = [
           '#description' => $this->t('Options such as paging, table sorting, and exposed filters will not initiate a page refresh.'),
           '#type' => 'checkbox',
           '#title' => $this->t('Use AJAX'),
           '#default_value' => $this->getOption('use_ajax') ? 1 : 0,
-        );
+        ];
         break;
       case 'hide_attachment_summary':
         $form['#title'] .= $this->t('Hide attachments when displaying a contextual filter summary');
-        $form['hide_attachment_summary'] = array(
+        $form['hide_attachment_summary'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Hide attachments in summary'),
           '#default_value' => $this->getOption('hide_attachment_summary') ? 1 : 0,
-        );
+        ];
         break;
       case 'show_admin_links':
         $form['#title'] .= $this->t('Show contextual links on this view.');
-        $form['show_admin_links'] = array(
+        $form['show_admin_links'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Show contextual links'),
           '#default_value' => $this->getOption('show_admin_links'),
-        );
+        ];
       break;
       case 'use_more':
         $form['#title'] .= $this->t('Add a more link to the bottom of the display.');
-        $form['use_more'] = array(
+        $form['use_more'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Create more link'),
           '#description' => $this->t("This will add a more link to the bottom of this view, which will link to the page view. If you have more than one page view, the link will point to the display specified in 'Link display' section under pager. You can override the URL at the link display setting."),
           '#default_value' => $this->getOption('use_more'),
-        );
-        $form['use_more_always'] = array(
+        ];
+        $form['use_more_always'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Always display the more link'),
           '#description' => $this->t('Check this to display the more link even if there are no more items to display.'),
           '#default_value' => $this->getOption('use_more_always'),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="use_more"]' => array('checked' => TRUE),
-            ),
-          ),
-        );
-        $form['use_more_text'] = array(
+          '#states' => [
+            'visible' => [
+              ':input[name="use_more"]' => ['checked' => TRUE],
+            ],
+          ],
+        ];
+        $form['use_more_text'] = [
           '#type' => 'textfield',
           '#title' => $this->t('More link text'),
           '#description' => $this->t('The text to display for the more link.'),
           '#default_value' => $this->getOption('use_more_text'),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="use_more"]' => array('checked' => TRUE),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              ':input[name="use_more"]' => ['checked' => TRUE],
+            ],
+          ],
+        ];
         break;
       case 'group_by':
         $form['#title'] .= $this->t('Allow grouping and aggregation (calculation) of fields.');
-        $form['group_by'] = array(
+        $form['group_by'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Aggregate'),
           '#description' => $this->t('If enabled, some fields may become unavailable. All fields that are selected for grouping will be collapsed to one record per distinct value. Other fields which are selected for aggregation will have the function run on them. For example, you can group nodes on title and count the number of nids in order to get a list of duplicate titles.'),
           '#default_value' => $this->getOption('group_by'),
-        );
+        ];
         break;
       case 'access':
         $form['#title'] .= $this->t('Access restrictions');
-        $form['access'] = array(
+        $form['access'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
+        ];
 
         $access = $this->getOption('access');
-        $form['access']['type'] = array(
+        $form['access']['type'] = [
           '#title' => $this->t('Access'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('access', $this->getType(), array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('access', $this->getType(), [$this->view->storage->get('base_table')]),
           '#default_value' => $access['type'],
-        );
+        ];
 
         $access_plugin = $this->getPlugin('access');
         if ($access_plugin->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected access restriction.', array('@settings' => $this->optionLink($this->t('settings'), 'access_options'))),
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected access restriction.', ['@settings' => $this->optionLink($this->t('settings'), 'access_options')]),
             '#suffix' => '</div>',
-          );
+          ];
         }
 
         break;
@@ -1535,45 +1535,45 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $plugin = $this->getPlugin('access');
         $form['#title'] .= $this->t('Access options');
         if ($plugin) {
-          $form['access_options'] = array(
+          $form['access_options'] = [
             '#tree' => TRUE,
-          );
+          ];
           $plugin->buildOptionsForm($form['access_options'], $form_state);
         }
         break;
       case 'cache':
         $form['#title'] .= $this->t('Caching');
-        $form['cache'] = array(
+        $form['cache'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
+        ];
 
         $cache = $this->getOption('cache');
-        $form['cache']['type'] = array(
+        $form['cache']['type'] = [
           '#title' => $this->t('Caching'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('cache', $this->getType(), array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('cache', $this->getType(), [$this->view->storage->get('base_table')]),
           '#default_value' => $cache['type'],
-        );
+        ];
 
         $cache_plugin = $this->getPlugin('cache');
         if ($cache_plugin->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
             '#suffix' => '</div>',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected cache mechanism.', array('@settings' => $this->optionLink($this->t('settings'), 'cache_options'))),
-          );
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected cache mechanism.', ['@settings' => $this->optionLink($this->t('settings'), 'cache_options')]),
+          ];
         }
         break;
       case 'cache_options':
         $plugin = $this->getPlugin('cache');
         $form['#title'] .= $this->t('Caching options');
         if ($plugin) {
-          $form['cache_options'] = array(
+          $form['cache_options'] = [
             '#tree' => TRUE,
-          );
+          ];
           $plugin->buildOptionsForm($form['cache_options'], $form_state);
         }
         break;
@@ -1584,16 +1584,16 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $form['#title'] .= $this->t('Query options');
         $this->view->initQuery();
         if ($this->view->query) {
-          $form['query'] = array(
+          $form['query'] = [
             '#tree' => TRUE,
-            'type' => array(
+            'type' => [
               '#type' => 'value',
               '#value' => $plugin_name,
-            ),
-            'options' => array(
+            ],
+            'options' => [
               '#tree' => TRUE,
-            ),
-          );
+            ],
+          ];
 
           $this->view->query->buildOptionsForm($form['query']['options'], $form_state);
         }
@@ -1602,13 +1602,13 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $form['#title'] .= $this->t('Rendering language');
         if (\Drupal::languageManager()->isMultilingual() && $this->isBaseTableTranslatable()) {
           $options = $this->buildRenderingLanguageOptions();
-          $form['rendering_language'] = array(
+          $form['rendering_language'] = [
             '#type' => 'select',
             '#options' => $options,
             '#title' => $this->t('Rendering language'),
             '#description' => $this->t('All content that supports translations will be displayed in the selected language.'),
             '#default_value' => $this->getOption('rendering_language'),
-          );
+          ];
         }
         else {
           $form['rendering_language']['#markup'] = $this->t('The view is not based on a translatable entity type or the site is not multilingual.');
@@ -1617,26 +1617,26 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       case 'style':
         $form['#title'] .= $this->t('How should this view be styled');
         $style_plugin = $this->getPlugin('style');
-        $form['style'] = array(
+        $form['style'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
-        $form['style']['type'] = array(
+        ];
+        $form['style']['type'] = [
           '#title' => $this->t('Style'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('style', $this->getType(), array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('style', $this->getType(), [$this->view->storage->get('base_table')]),
           '#default_value' => $style_plugin->definition['id'],
           '#description' => $this->t('If the style you choose has settings, be sure to click the settings button that will appear next to it in the View summary.'),
-        );
+        ];
 
         if ($style_plugin->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
             '#suffix' => '</div>',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected style.', array('@settings' => $this->optionLink($this->t('settings'), 'style_options'))),
-          );
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected style.', ['@settings' => $this->optionLink($this->t('settings'), 'style_options')]),
+          ];
         }
 
         break;
@@ -1666,31 +1666,31 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       case 'row':
         $form['#title'] .= $this->t('How should each row in this view be styled');
         $row_plugin_instance = $this->getPlugin('row');
-        $form['row'] = array(
+        $form['row'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
-        $form['row']['type'] = array(
+        ];
+        $form['row']['type'] = [
           '#title' => $this->t('Row'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('row', $this->getType(), array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('row', $this->getType(), [$this->view->storage->get('base_table')]),
           '#default_value' => $row_plugin_instance->definition['id'],
-        );
+        ];
 
         if ($row_plugin_instance->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
             '#suffix' => '</div>',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected row style.', array('@settings' => $this->optionLink($this->t('settings'), 'row_options'))),
-          );
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected row style.', ['@settings' => $this->optionLink($this->t('settings'), 'row_options')]),
+          ];
         }
 
         break;
       case 'link_display':
         $form['#title'] .= $this->t('Which display to use for path');
-        $options = array(FALSE => $this->t('None'), 'custom_url' => $this->t('Custom URL'));
+        $options = [FALSE => $this->t('None'), 'custom_url' => $this->t('Custom URL')];
 
         foreach ($this->view->storage->get('display') as $display_id => $display) {
           if ($this->view->displayHandlers->get($display_id)->hasPath()) {
@@ -1698,18 +1698,18 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
           }
         }
 
-        $form['link_display'] = array(
+        $form['link_display'] = [
           '#type' => 'radios',
           '#options' => $options,
           '#description' => $this->t("Which display to use to get this display's path for things like summary links, rss feed links, more links, etc."),
           '#default_value' => $this->getOption('link_display'),
-        );
+        ];
 
-        $options = array();
+        $options = [];
         $optgroup_arguments = (string) t('Arguments');
         foreach ($this->view->display_handler->getHandlers('argument') as $arg => $handler) {
-          $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', array('@argument' => $handler->adminLabel()));
-          $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', array('@argument' => $handler->adminLabel()));
+          $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', ['@argument' => $handler->adminLabel()]);
+          $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', ['@argument' => $handler->adminLabel()]);
         }
 
         // Default text.
@@ -1726,102 +1726,102 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
           ];
           foreach (array_keys($options) as $type) {
             if (!empty($options[$type])) {
-              $items = array();
+              $items = [];
               foreach ($options[$type] as $key => $value) {
                 $items[] = $key . ' == ' . $value;
               }
-              $item_list = array(
+              $item_list = [
                 '#theme' => 'item_list',
                 '#items' => $items,
-              );
+              ];
               $description[] = $item_list;
             }
           }
         }
 
-        $form['link_url'] = array(
+        $form['link_url'] = [
           '#type' => 'textfield',
           '#title' => $this->t('Custom URL'),
           '#default_value' => $this->getOption('link_url'),
           '#description' => $description,
-          '#states' => array(
-            'visible' => array(
-              ':input[name="link_display"]' => array('value' => 'custom_url'),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              ':input[name="link_display"]' => ['value' => 'custom_url'],
+            ],
+          ],
+        ];
         break;
       case 'exposed_block':
         $form['#title'] .= $this->t('Put the exposed form in a block');
-        $form['description'] = array(
+        $form['description'] = [
           '#markup' => '<div class="js-form-item form-item description">' . $this->t('If set, any exposed widgets will not appear with this view. Instead, a block will be made available to the Drupal block administration system, and the exposed form will appear there. Note that this block must be enabled manually, Views will not enable it for you.') . '</div>',
-        );
-        $form['exposed_block'] = array(
+        ];
+        $form['exposed_block'] = [
           '#type' => 'radios',
-          '#options' => array(1 => $this->t('Yes'), 0 => $this->t('No')),
+          '#options' => [1 => $this->t('Yes'), 0 => $this->t('No')],
           '#default_value' => $this->getOption('exposed_block') ? 1 : 0,
-        );
+        ];
         break;
       case 'exposed_form':
         $form['#title'] .= $this->t('Exposed Form');
-        $form['exposed_form'] = array(
+        $form['exposed_form'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
+        ];
 
         $exposed_form = $this->getOption('exposed_form');
-        $form['exposed_form']['type'] = array(
+        $form['exposed_form']['type'] = [
           '#title' => $this->t('Exposed form'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('exposed_form', $this->getType(), array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('exposed_form', $this->getType(), [$this->view->storage->get('base_table')]),
           '#default_value' => $exposed_form['type'],
-        );
+        ];
 
         $exposed_form_plugin = $this->getPlugin('exposed_form');
         if ($exposed_form_plugin->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
             '#suffix' => '</div>',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected style.', array('@settings' => $this->optionLink($this->t('settings'), 'exposed_form_options'))),
-          );
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected style.', ['@settings' => $this->optionLink($this->t('settings'), 'exposed_form_options')]),
+          ];
         }
         break;
       case 'exposed_form_options':
         $plugin = $this->getPlugin('exposed_form');
         $form['#title'] .= $this->t('Exposed form options');
         if ($plugin) {
-          $form['exposed_form_options'] = array(
+          $form['exposed_form_options'] = [
             '#tree' => TRUE,
-          );
+          ];
           $plugin->buildOptionsForm($form['exposed_form_options'], $form_state);
         }
         break;
       case 'pager':
         $form['#title'] .= $this->t('Select pager');
-        $form['pager'] = array(
+        $form['pager'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
+        ];
 
         $pager = $this->getOption('pager');
-        $form['pager']['type'] = array(
+        $form['pager']['type'] = [
           '#title' => $this->t('Pager'),
           '#title_display' => 'invisible',
           '#type' => 'radios',
-          '#options' => Views::fetchPluginNames('pager', !$this->usesPager() ? 'basic' : NULL, array($this->view->storage->get('base_table'))),
+          '#options' => Views::fetchPluginNames('pager', !$this->usesPager() ? 'basic' : NULL, [$this->view->storage->get('base_table')]),
           '#default_value' => $pager['type'],
-        );
+        ];
 
         $pager_plugin = $this->getPlugin('pager');
         if ($pager_plugin->usesOptions()) {
-          $form['markup'] = array(
+          $form['markup'] = [
             '#prefix' => '<div class="js-form-item form-item description">',
             '#suffix' => '</div>',
-            '#markup' => $this->t('You may also adjust the @settings for the currently selected pager.', array('@settings' => $this->optionLink($this->t('settings'), 'pager_options'))),
-          );
+            '#markup' => $this->t('You may also adjust the @settings for the currently selected pager.', ['@settings' => $this->optionLink($this->t('settings'), 'pager_options')]),
+          ];
         }
 
         break;
@@ -1829,9 +1829,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $plugin = $this->getPlugin('pager');
         $form['#title'] .= $this->t('Pager options');
         if ($plugin) {
-          $form['pager_options'] = array(
+          $form['pager_options'] = [
             '#tree' => TRUE,
-          );
+          ];
           $plugin->buildOptionsForm($form['pager_options'], $form_state);
         }
         break;
@@ -1955,16 +1955,16 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
       case 'style':
         $plugin_type = $section;
         $plugin_options = $this->getOption($plugin_type);
-        $type = $form_state->getValue(array($plugin_type, 'type'));
+        $type = $form_state->getValue([$plugin_type, 'type']);
         if ($plugin_options['type'] != $type) {
           /** @var \Drupal\views\Plugin\views\ViewsPluginInterface $plugin */
           $plugin = Views::pluginManager($plugin_type)->createInstance($type);
           if ($plugin) {
             $plugin->init($this->view, $this, $plugin_options['options']);
-            $plugin_options = array(
+            $plugin_options = [
               'type' => $type,
               'options' => $plugin->options,
-            );
+            ];
             $plugin->filterByDefinedOptions($plugin_options['options']);
             $this->setOption($plugin_type, $plugin_options);
             if ($plugin->usesOptions()) {
@@ -2082,18 +2082,18 @@ public function renderMoreLink() {
       // If a URL is available (either from the display or a custom path),
       // render the "More" link.
       if ($url) {
-        $url_options = array();
+        $url_options = [];
         if (!empty($this->view->exposed_raw_input)) {
           $url_options['query'] = $this->view->exposed_raw_input;
         }
         $url->setOptions($url_options);
 
-        return array(
+        return [
           '#type' => 'more_link',
           '#url' => $url,
           '#title' => $this->useMoreText(),
           '#view' => $this->view,
-        );
+        ];
       }
     }
   }
@@ -2102,9 +2102,9 @@ public function renderMoreLink() {
    * {@inheritdoc}
    */
   public function render() {
-    $rows = (!empty($this->view->result) || $this->view->style_plugin->evenEmpty()) ? $this->view->style_plugin->render($this->view->result) : array();
+    $rows = (!empty($this->view->result) || $this->view->style_plugin->evenEmpty()) ? $this->view->style_plugin->render($this->view->result) : [];
 
-    $element = array(
+    $element = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#pre_render' => [[$this, 'elementPreRender']],
@@ -2113,7 +2113,7 @@ public function render() {
       // be available on the view.
       '#attached' => &$this->view->element['#attached'],
       '#cache' => &$this->view->element['#cache'],
-    );
+    ];
 
     $this->applyDisplayCacheabilityMetadata($this->view->element);
 
@@ -2163,15 +2163,15 @@ public function elementPreRender(array $element) {
 
     // Force a render array so CSS/JS can be attached.
     if (!is_array($element['#rows'])) {
-      $element['#rows'] = array('#markup' => $element['#rows']);
+      $element['#rows'] = ['#markup' => $element['#rows']];
     }
 
     $element['#header'] = $view->display_handler->renderArea('header', $empty);
     $element['#footer'] = $view->display_handler->renderArea('footer', $empty);
-    $element['#empty'] = $empty ? $view->display_handler->renderArea('empty', $empty) : array();
-    $element['#exposed'] = !empty($view->exposed_widgets) ? $view->exposed_widgets : array();
+    $element['#empty'] = $empty ? $view->display_handler->renderArea('empty', $empty) : [];
+    $element['#exposed'] = !empty($view->exposed_widgets) ? $view->exposed_widgets : [];
     $element['#more'] = $view->display_handler->renderMoreLink();
-    $element['#feed_icons'] = !empty($view->feedIcons) ? $view->feedIcons : array();
+    $element['#feed_icons'] = !empty($view->feedIcons) ? $view->feedIcons : [];
 
     if ($view->display_handler->renderPager()) {
       $exposed_input = isset($view->exposed_raw_input) ? $view->exposed_raw_input : NULL;
@@ -2201,12 +2201,12 @@ public function elementPreRender(array $element) {
       // The form is requesting that all non-essential views elements be hidden,
       // usually because the rendered step is not a view result.
       if ($form['show_view_elements']['#value'] == FALSE) {
-        $element['#header'] = array();
-        $element['#exposed'] = array();
-        $element['#pager'] = array();
-        $element['#footer'] = array();
-        $element['#more'] = array();
-        $element['#feed_icons'] = array();
+        $element['#header'] = [];
+        $element['#exposed'] = [];
+        $element['#pager'] = [];
+        $element['#footer'] = [];
+        $element['#more'] = [];
+        $element['#feed_icons'] = [];
       }
 
       $element['#rows'] = $form;
@@ -2219,7 +2219,7 @@ public function elementPreRender(array $element) {
    * {@inheritdoc}
    */
   public function renderArea($area, $empty = FALSE) {
-    $return = array();
+    $return = [];
     foreach ($this->getHandlers($area) as $key => $area_handler) {
       if ($area_render = $area_handler->render($empty)) {
         if (isset($area_handler->position)) {
@@ -2407,7 +2407,7 @@ public function getType() {
    * {@inheritdoc}
    */
   public function validate() {
-    $errors = array();
+    $errors = [];
     // Make sure displays that use fields HAVE fields.
     if ($this->usesFields()) {
       $fields = FALSE;
@@ -2418,7 +2418,7 @@ public function validate() {
       }
 
       if (!$fields) {
-        $errors[] = $this->t('Display "@display" uses fields but there are none defined for it or all are excluded.', array('@display' => $this->display['display_title']));
+        $errors[] = $this->t('Display "@display" uses fields but there are none defined for it or all are excluded.', ['@display' => $this->display['display_title']]);
       }
     }
 
@@ -2426,18 +2426,18 @@ public function validate() {
     if ($this->isMoreEnabled() && $this->getOption('link_display') !== 'custom_url') {
       $routed_display = $this->getRoutedDisplay();
       if (!$routed_display || !$routed_display->isEnabled()) {
-        $errors[] = $this->t('Display "@display" uses a "more" link but there are no displays it can link to. You need to specify a custom URL.', array('@display' => $this->display['display_title']));
+        $errors[] = $this->t('Display "@display" uses a "more" link but there are no displays it can link to. You need to specify a custom URL.', ['@display' => $this->display['display_title']]);
       }
     }
 
     if ($this->hasPath() && !$this->getOption('path')) {
-      $errors[] = $this->t('Display "@display" uses a path but the path is undefined.', array('@display' => $this->display['display_title']));
+      $errors[] = $this->t('Display "@display" uses a path but the path is undefined.', ['@display' => $this->display['display_title']]);
     }
 
     // Validate style plugin.
     $style = $this->getPlugin('style');
     if (empty($style)) {
-      $errors[] = $this->t('Display "@display" has an invalid style plugin.', array('@display' => $this->display['display_title']));
+      $errors[] = $this->t('Display "@display" has an invalid style plugin.', ['@display' => $this->display['display_title']]);
     }
     else {
       $result = $style->validate();
@@ -2458,7 +2458,7 @@ public function validate() {
     foreach (ViewExecutable::getHandlerTypes() as $type => $handler_type_info) {
       foreach ($this->getHandlers($type) as $handler_id => $handler) {
         if (!empty($handler->options['relationship']) && $handler->options['relationship'] != 'none' && !in_array($handler->options['relationship'], $relationships)) {
-          $errors[] = $this->t('The %handler_type %handler uses a relationship that has been removed.', array('%handler_type' => $handler_type_info['lstitle'], '%handler' => $handler->adminLabel()));
+          $errors[] = $this->t('The %handler_type %handler uses a relationship that has been removed.', ['%handler_type' => $handler_type_info['lstitle'], '%handler' => $handler->adminLabel()]);
         }
       }
     }
@@ -2514,7 +2514,7 @@ public function outputIsEmpty() {
     }
 
     // Check whether all of the area handlers are empty.
-    foreach (array('empty', 'footer', 'header') as $type) {
+    foreach (['empty', 'footer', 'header'] as $type) {
       $handlers = $this->getHandlers($type);
       foreach ($handlers as $handler) {
         // If one is not empty, return FALSE now.
@@ -2531,15 +2531,15 @@ public function outputIsEmpty() {
    * {@inheritdoc}
    */
   public function getSpecialBlocks() {
-    $blocks = array();
+    $blocks = [];
 
     if ($this->usesExposedFormInBlock()) {
       $delta = '-exp-' . $this->view->storage->id() . '-' . $this->display['id'];
-      $desc = $this->t('Exposed form: @view-@display_id', array('@view' => $this->view->storage->id(), '@display_id' => $this->display['id']));
+      $desc = $this->t('Exposed form: @view-@display_id', ['@view' => $this->view->storage->id(), '@display_id' => $this->display['id']]);
 
-      $blocks[$delta] = array(
+      $blocks[$delta] = [
         'info' => $desc,
-      );
+      ];
     }
 
     return $blocks;
@@ -2567,21 +2567,21 @@ public function viewExposedFormBlocks() {
    * {@inheritdoc}
    */
   public function getArgumentText() {
-    return array(
+    return [
       'filter value not present' => $this->t('When the filter value is <em>NOT</em> available'),
       'filter value present' => $this->t('When the filter value <em>IS</em> available or a default is provided'),
       'description' => $this->t("This display does not have a source for contextual filters, so no contextual filter value will be available unless you select 'Provide default'."),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getPagerText() {
-    return array(
+    return [
       'items per page title' => $this->t('Items to display'),
       'items per page description' => $this->t('Enter 0 for no limit.')
-    );
+    ];
   }
 
   /**
@@ -2591,7 +2591,7 @@ public function mergeDefaults() {
     $defined_options = $this->defineOptions();
 
     // Build a map of plural => singular for handler types.
-    $type_map = array();
+    $type_map = [];
     foreach (ViewExecutable::getHandlerTypes() as $type => $info) {
       $type_map[$info['plural']] = $type;
     }
@@ -2668,7 +2668,7 @@ protected function buildRenderingLanguageOptions() {
     //   https://www.drupal.org/node/2173811.
     // Pass the current rendering language (in this case a one element array) so
     // is not lost when there are language configuration changes.
-    return $this->listLanguages(LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_SITE_DEFAULT | PluginBase::INCLUDE_NEGOTIATED | PluginBase::INCLUDE_ENTITY, array($this->getOption('rendering_language')));
+    return $this->listLanguages(LanguageInterface::STATE_CONFIGURABLE | LanguageInterface::STATE_SITE_DEFAULT | PluginBase::INCLUDE_NEGOTIATED | PluginBase::INCLUDE_ENTITY, [$this->getOption('rendering_language')]);
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/display/EntityReference.php b/core/modules/views/src/Plugin/views/display/EntityReference.php
index 8291378..4dedd51 100644
--- a/core/modules/views/src/Plugin/views/display/EntityReference.php
+++ b/core/modules/views/src/Plugin/views/display/EntityReference.php
@@ -49,9 +49,9 @@ protected function defineOptions() {
 
     // Force the style plugin to 'entity_reference_style' and the row plugin to
     // 'fields'.
-    $options['style']['contains']['type'] = array('default' => 'entity_reference');
+    $options['style']['contains']['type'] = ['default' => 'entity_reference'];
     $options['defaults']['default']['style'] = FALSE;
-    $options['row']['contains']['type'] = array('default' => 'entity_reference');
+    $options['row']['contains']['type'] = ['default' => 'entity_reference'];
     $options['defaults']['default']['row'] = FALSE;
 
     // Make sure the query is not cached.
@@ -167,14 +167,14 @@ public function validate() {
     // Verify that search fields are set up.
     $style = $this->getOption('style');
     if (!isset($style['options']['search_fields'])) {
-      $errors[] = $this->t('Display "@display" needs a selected search fields to work properly. See the settings for the Entity Reference list format.', array('@display' => $this->display['display_title']));
+      $errors[] = $this->t('Display "@display" needs a selected search fields to work properly. See the settings for the Entity Reference list format.', ['@display' => $this->display['display_title']]);
     }
     else {
       // Verify that the search fields used actually exist.
       $fields = array_keys($this->handlers['field']);
       foreach ($style['options']['search_fields'] as $field_alias => $enabled) {
         if ($enabled && !in_array($field_alias, $fields)) {
-          $errors[] = $this->t('Display "@display" uses field %field as search field, but the field is no longer present. See the settings for the Entity Reference list format.', array('@display' => $this->display['display_title'], '%field' => $field_alias));
+          $errors[] = $this->t('Display "@display" uses field %field as search field, but the field is no longer present. See the settings for the Entity Reference list format.', ['@display' => $this->display['display_title'], '%field' => $field_alias]);
         }
       }
     }
diff --git a/core/modules/views/src/Plugin/views/display/Feed.php b/core/modules/views/src/Plugin/views/display/Feed.php
index 35da245..c664c05 100644
--- a/core/modules/views/src/Plugin/views/display/Feed.php
+++ b/core/modules/views/src/Plugin/views/display/Feed.php
@@ -90,11 +90,11 @@ public function preview() {
     $output = $this->view->render();
 
     if (!empty($this->view->live_preview)) {
-      $output = array(
+      $output = [
         '#prefix' => '<pre>',
         '#plain_text' => drupal_render_root($output),
         '#suffix' => '</pre>',
-      );
+      ];
     }
 
     return $output;
@@ -117,7 +117,7 @@ public function render() {
   public function defaultableSections($section = NULL) {
     $sections = parent::defaultableSections($section);
 
-    if (in_array($section, array('style', 'row'))) {
+    if (in_array($section, ['style', 'row'])) {
       return FALSE;
     }
 
@@ -137,11 +137,11 @@ public function defaultableSections($section = NULL) {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['displays'] = array('default' => array());
+    $options['displays'] = ['default' => []];
 
     // Overrides for standard stuff.
     $options['style']['contains']['type']['default'] = 'rss';
-    $options['style']['contains']['options']['default']  = array('description' => '');
+    $options['style']['contains']['options']['default']  = ['description' => ''];
     $options['sitename_title']['default'] = FALSE;
     $options['row']['contains']['type']['default'] = 'rss_fields';
     $options['defaults']['default']['style'] = FALSE;
@@ -160,7 +160,7 @@ public function newDisplay() {
     // definition, but in this case it's dependent on the view's base table,
     // which we don't know until init().
     if (empty($this->options['row']['type']) || $this->options['row']['type'] === 'rss_fields') {
-      $row_plugins = Views::fetchPluginNames('row', $this->getType(), array($this->view->storage->get('base_table')));
+      $row_plugins = Views::fetchPluginNames('row', $this->getType(), [$this->view->storage->get('base_table')]);
       $default_row_plugin = key($row_plugins);
 
       $options = $this->getOption('row');
@@ -177,13 +177,13 @@ public function optionsSummary(&$categories, &$options) {
 
     // Since we're childing off the 'path' type, we'll still *call* our
     // category 'page' but let's override it so it says feed settings.
-    $categories['page'] = array(
+    $categories['page'] = [
       'title' => $this->t('Feed settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -10,
-      ),
-    );
+      ],
+    ];
 
     if ($this->getOption('sitename_title')) {
       $options['title']['value'] = $this->t('Using the site name');
@@ -205,11 +205,11 @@ public function optionsSummary(&$categories, &$options) {
       $attach_to = $this->t('None');
     }
 
-    $options['displays'] = array(
+    $options['displays'] = [
       'category' => 'page',
       'title' => $this->t('Attach to'),
       'value' => $attach_to,
-    );
+    ];
   }
 
   /**
@@ -224,34 +224,34 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $title = $form['title'];
         // A little juggling to move the 'title' field beyond our checkbox.
         unset($form['title']);
-        $form['sitename_title'] = array(
+        $form['sitename_title'] = [
           '#type' => 'checkbox',
           '#title' => $this->t('Use the site name for the title'),
           '#default_value' => $this->getOption('sitename_title'),
-        );
+        ];
         $form['title'] = $title;
-        $form['title']['#states'] = array(
-          'visible' => array(
-            ':input[name="sitename_title"]' => array('checked' => FALSE),
-          ),
-        );
+        $form['title']['#states'] = [
+          'visible' => [
+            ':input[name="sitename_title"]' => ['checked' => FALSE],
+          ],
+        ];
         break;
       case 'displays':
         $form['#title'] .= $this->t('Attach to');
-        $displays = array();
+        $displays = [];
         foreach ($this->view->storage->get('display') as $display_id => $display) {
           // @todo The display plugin should have display_title and id as well.
           if ($this->view->displayHandlers->has($display_id) && $this->view->displayHandlers->get($display_id)->acceptAttachments()) {
             $displays[$display_id] = $display['display_title'];
           }
         }
-        $form['displays'] = array(
+        $form['displays'] = [
           '#title' => $this->t('Displays'),
           '#type' => 'checkboxes',
           '#description' => $this->t('The feed icon will be available only to the selected displays.'),
           '#options' => array_map('\Drupal\Component\Utility\Html::escape', $displays),
           '#default_value' => $this->getOption('displays'),
-        );
+        ];
         break;
       case 'path':
         $form['path']['#description'] = $this->t('This view will be displayed by visiting this path on your site. It is recommended that the path be something like "path/%/%/feed" or "path/%/%/rss.xml", putting one % in the path for each contextual filter you have defined in the view.');
diff --git a/core/modules/views/src/Plugin/views/display/Page.php b/core/modules/views/src/Plugin/views/display/Page.php
index d79b75b..aca0683 100644
--- a/core/modules/views/src/Plugin/views/display/Page.php
+++ b/core/modules/views/src/Plugin/views/display/Page.php
@@ -118,27 +118,27 @@ public static function &getPageRenderArray() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['menu'] = array(
-      'contains' => array(
-        'type' => array('default' => 'none'),
-        'title' => array('default' => ''),
-        'description' => array('default' => ''),
-        'weight' => array('default' => 0),
-        'enabled' => array('default' => TRUE),
-        'menu_name' => array('default' => 'main'),
-        'parent' => array('default' => ''),
-        'context' => array('default' => ''),
-        'expanded' => array('default' => FALSE),
-      ),
-    );
-    $options['tab_options'] = array(
-      'contains' => array(
-        'type' => array('default' => 'none'),
-        'title' => array('default' => ''),
-        'description' => array('default' => ''),
-        'weight' => array('default' => 0),
-      ),
-    );
+    $options['menu'] = [
+      'contains' => [
+        'type' => ['default' => 'none'],
+        'title' => ['default' => ''],
+        'description' => ['default' => ''],
+        'weight' => ['default' => 0],
+        'enabled' => ['default' => TRUE],
+        'menu_name' => ['default' => 'main'],
+        'parent' => ['default' => ''],
+        'context' => ['default' => ''],
+        'expanded' => ['default' => FALSE],
+      ],
+    ];
+    $options['tab_options'] = [
+      'contains' => [
+        'type' => ['default' => 'none'],
+        'title' => ['default' => ''],
+        'description' => ['default' => ''],
+        'weight' => ['default' => 0],
+      ],
+    ];
 
     return $options;
   }
@@ -175,9 +175,9 @@ public function execute() {
     // @todo Figure out how to support custom response objects. Maybe for pages
     //   it should be dropped.
     if (is_array($render)) {
-      $render += array(
+      $render += [
         '#title' => ['#markup' => $this->view->getTitle(), '#allowed_tags' => Xss::getHtmlTagList()],
-      );
+      ];
     }
     return $render;
   }
@@ -190,7 +190,7 @@ public function optionsSummary(&$categories, &$options) {
 
     $menu = $this->getOption('menu');
     if (!is_array($menu)) {
-      $menu = array('type' => 'none');
+      $menu = ['type' => 'none'];
     }
     switch ($menu['type']) {
       case 'none':
@@ -198,19 +198,19 @@ public function optionsSummary(&$categories, &$options) {
         $menu_str = $this->t('No menu');
         break;
       case 'normal':
-        $menu_str = $this->t('Normal: @title', array('@title' => $menu['title']));
+        $menu_str = $this->t('Normal: @title', ['@title' => $menu['title']]);
         break;
       case 'tab':
       case 'default tab':
-        $menu_str = $this->t('Tab: @title', array('@title' => $menu['title']));
+        $menu_str = $this->t('Tab: @title', ['@title' => $menu['title']]);
         break;
     }
 
-    $options['menu'] = array(
+    $options['menu'] = [
       'category' => 'page',
       'title' => $this->t('Menu'),
       'value' => views_ui_truncate($menu_str, 24),
-    );
+    ];
 
     // This adds a 'Settings' link to the style_options setting if the style
     // has options.
@@ -229,67 +229,67 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'menu':
         $form['#title'] .= $this->t('Menu item entry');
-        $form['menu'] = array(
+        $form['menu'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
+        ];
         $menu = $this->getOption('menu');
         if (empty($menu)) {
-          $menu = array('type' => 'none', 'title' => '', 'weight' => 0, 'expanded' => FALSE);
+          $menu = ['type' => 'none', 'title' => '', 'weight' => 0, 'expanded' => FALSE];
         }
-        $form['menu']['type'] = array(
+        $form['menu']['type'] = [
           '#prefix' => '<div class="views-left-30">',
           '#suffix' => '</div>',
           '#title' => $this->t('Type'),
           '#type' => 'radios',
-          '#options' => array(
+          '#options' => [
             'none' => $this->t('No menu entry'),
             'normal' => $this->t('Normal menu entry'),
             'tab' => $this->t('Menu tab'),
             'default tab' => $this->t('Default menu tab')
-          ),
+          ],
           '#default_value' => $menu['type'],
-        );
+        ];
 
-        $form['menu']['title'] = array(
+        $form['menu']['title'] = [
           '#prefix' => '<div class="views-left-50">',
           '#title' => $this->t('Menu link title'),
           '#type' => 'textfield',
           '#default_value' => $menu['title'],
-          '#states' => array(
-            'visible' => array(
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'normal'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'tab'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'default tab'),
-              ),
-            ),
-          ),
-        );
-        $form['menu']['description'] = array(
+          '#states' => [
+            'visible' => [
+              [
+                ':input[name="menu[type]"]' => ['value' => 'normal'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'tab'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'default tab'],
+              ],
+            ],
+          ],
+        ];
+        $form['menu']['description'] = [
           '#title' => $this->t('Description'),
           '#type' => 'textfield',
           '#default_value' => $menu['description'],
           '#description' => $this->t("Shown when hovering over the menu link."),
-          '#states' => array(
-            'visible' => array(
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'normal'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'tab'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'default tab'),
-              ),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              [
+                ':input[name="menu[type]"]' => ['value' => 'normal'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'tab'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'default tab'],
+              ],
+            ],
+          ],
+        ];
         $form['menu']['expanded'] = [
           '#title' => $this->t('Show as expanded'),
           '#type' => 'checkbox',
@@ -302,133 +302,133 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         if (\Drupal::moduleHandler()->moduleExists('menu_ui')) {
           $menu_link = 'views_view:views.' . $form_state->get('view')->id() . '.' . $form_state->get('display_id');
           $form['menu']['parent'] = \Drupal::service('menu.parent_form_selector')->parentSelectElement($menu_parent, $menu_link);
-          $form['menu']['parent'] += array(
+          $form['menu']['parent'] += [
             '#title' => $this->t('Parent'),
             '#description' => $this->t('The maximum depth for a link and all its children is fixed. Some menu links may not be available as parents if selecting them would exceed this limit.'),
-            '#attributes' => array('class' => array('menu-title-select')),
-            '#states' => array(
-              'visible' => array(
-                array(
-                  ':input[name="menu[type]"]' => array('value' => 'normal'),
-                ),
-                array(
-                  ':input[name="menu[type]"]' => array('value' => 'tab'),
-                ),
-              ),
-            ),
-          );
+            '#attributes' => ['class' => ['menu-title-select']],
+            '#states' => [
+              'visible' => [
+                [
+                  ':input[name="menu[type]"]' => ['value' => 'normal'],
+                ],
+                [
+                  ':input[name="menu[type]"]' => ['value' => 'tab'],
+                ],
+              ],
+            ],
+          ];
         }
         else {
-          $form['menu']['parent'] = array(
+          $form['menu']['parent'] = [
             '#type' => 'value',
             '#value' => $menu_parent,
-          );
-          $form['menu']['markup'] = array(
+          ];
+          $form['menu']['markup'] = [
             '#markup' => $this->t('Menu selection requires the activation of Menu UI module.'),
-          );
+          ];
         }
-        $form['menu']['weight'] = array(
+        $form['menu']['weight'] = [
           '#title' => $this->t('Weight'),
           '#type' => 'textfield',
           '#default_value' => isset($menu['weight']) ? $menu['weight'] : 0,
           '#description' => $this->t('In the menu, the heavier links will sink and the lighter links will be positioned nearer the top.'),
-          '#states' => array(
-            'visible' => array(
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'normal'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'tab'),
-              ),
-              array(
-                ':input[name="menu[type]"]' => array('value' => 'default tab'),
-              ),
-            ),
-          ),
-        );
-        $form['menu']['context'] = array(
+          '#states' => [
+            'visible' => [
+              [
+                ':input[name="menu[type]"]' => ['value' => 'normal'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'tab'],
+              ],
+              [
+                ':input[name="menu[type]"]' => ['value' => 'default tab'],
+              ],
+            ],
+          ],
+        ];
+        $form['menu']['context'] = [
           '#title' => $this->t('Context'),
           '#suffix' => '</div>',
           '#type' => 'checkbox',
           '#default_value' => !empty($menu['context']),
           '#description' => $this->t('Displays the link in contextual links'),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="menu[type]"]' => array('value' => 'tab'),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              ':input[name="menu[type]"]' => ['value' => 'tab'],
+            ],
+          ],
+        ];
         break;
       case 'tab_options':
         $form['#title'] .= $this->t('Default tab options');
         $tab_options = $this->getOption('tab_options');
         if (empty($tab_options)) {
-          $tab_options = array('type' => 'none', 'title' => '', 'weight' => 0);
+          $tab_options = ['type' => 'none', 'title' => '', 'weight' => 0];
         }
 
-        $form['tab_markup'] = array(
+        $form['tab_markup'] = [
           '#markup' => '<div class="js-form-item form-item description">' . $this->t('When providing a menu item as a tab, Drupal needs to know what the parent menu item of that tab will be. Sometimes the parent will already exist, but other times you will need to have one created. The path of a parent item will always be the same path with the last part left off. i.e, if the path to this view is <em>foo/bar/baz</em>, the parent path would be <em>foo/bar</em>.') . '</div>',
-        );
+        ];
 
-        $form['tab_options'] = array(
+        $form['tab_options'] = [
           '#prefix' => '<div class="clearfix">',
           '#suffix' => '</div>',
           '#tree' => TRUE,
-        );
-        $form['tab_options']['type'] = array(
+        ];
+        $form['tab_options']['type'] = [
           '#prefix' => '<div class="views-left-25">',
           '#suffix' => '</div>',
           '#title' => $this->t('Parent menu item'),
           '#type' => 'radios',
-          '#options' => array('none' => $this->t('Already exists'), 'normal' => $this->t('Normal menu item'), 'tab' => $this->t('Menu tab')),
+          '#options' => ['none' => $this->t('Already exists'), 'normal' => $this->t('Normal menu item'), 'tab' => $this->t('Menu tab')],
           '#default_value' => $tab_options['type'],
-        );
-        $form['tab_options']['title'] = array(
+        ];
+        $form['tab_options']['title'] = [
           '#prefix' => '<div class="views-left-75">',
           '#title' => $this->t('Title'),
           '#type' => 'textfield',
           '#default_value' => $tab_options['title'],
           '#description' => $this->t('If creating a parent menu item, enter the title of the item.'),
-          '#states' => array(
-            'visible' => array(
-              array(
-                ':input[name="tab_options[type]"]' => array('value' => 'normal'),
-              ),
-              array(
-                ':input[name="tab_options[type]"]' => array('value' => 'tab'),
-              ),
-            ),
-          ),
-        );
-        $form['tab_options']['description'] = array(
+          '#states' => [
+            'visible' => [
+              [
+                ':input[name="tab_options[type]"]' => ['value' => 'normal'],
+              ],
+              [
+                ':input[name="tab_options[type]"]' => ['value' => 'tab'],
+              ],
+            ],
+          ],
+        ];
+        $form['tab_options']['description'] = [
           '#title' => $this->t('Description'),
           '#type' => 'textfield',
           '#default_value' => $tab_options['description'],
           '#description' => $this->t('If creating a parent menu item, enter the description of the item.'),
-          '#states' => array(
-            'visible' => array(
-              array(
-                ':input[name="tab_options[type]"]' => array('value' => 'normal'),
-              ),
-              array(
-                ':input[name="tab_options[type]"]' => array('value' => 'tab'),
-              ),
-            ),
-          ),
-        );
-        $form['tab_options']['weight'] = array(
+          '#states' => [
+            'visible' => [
+              [
+                ':input[name="tab_options[type]"]' => ['value' => 'normal'],
+              ],
+              [
+                ':input[name="tab_options[type]"]' => ['value' => 'tab'],
+              ],
+            ],
+          ],
+        ];
+        $form['tab_options']['weight'] = [
           '#suffix' => '</div>',
           '#title' => $this->t('Tab weight'),
           '#type' => 'textfield',
           '#default_value' => $tab_options['weight'],
           '#size' => 5,
           '#description' => $this->t('If the parent menu item is a tab, enter the weight of the tab. Heavier tabs will sink and the lighter tabs will be positioned nearer to the first menu item.'),
-          '#states' => array(
-            'visible' => array(
-              ':input[name="tab_options[type]"]' => array('value' => 'tab'),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              ':input[name="tab_options[type]"]' => ['value' => 'tab'],
+            ],
+          ],
+        ];
         break;
     }
   }
@@ -441,7 +441,7 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) {
 
     if ($form_state->get('section') == 'menu') {
       $path = $this->getOption('path');
-      $menu_type = $form_state->getValue(array('menu', 'type'));
+      $menu_type = $form_state->getValue(['menu', 'type']);
       if ($menu_type == 'normal' && strpos($path, '%') !== FALSE) {
         $form_state->setError($form['menu']['type'], $this->t('Views cannot create normal menu items for paths with a % in them.'));
       }
@@ -454,7 +454,7 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) {
         }
       }
 
-      if ($menu_type != 'none' && $form_state->isValueEmpty(array('menu', 'title'))) {
+      if ($menu_type != 'none' && $form_state->isValueEmpty(['menu', 'title'])) {
         $form_state->setError($form['menu']['title'], $this->t('Title is required for this menu type.'));
       }
     }
@@ -472,7 +472,7 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
         list($menu['menu_name'], $menu['parent']) = explode(':', $menu['parent'], 2);
         $this->setOption('menu', $menu);
         // send ajax form to options page if we use it.
-        if ($form_state->getValue(array('menu', 'type')) == 'default tab') {
+        if ($form_state->getValue(['menu', 'type']) == 'default tab') {
           $form_state->get('view')->addFormToStack('display', $this->display['id'], 'tab_options');
         }
         break;
@@ -490,13 +490,13 @@ public function validate() {
 
     $menu = $this->getOption('menu');
     if (!empty($menu['type']) && $menu['type'] != 'none' && empty($menu['title'])) {
-      $errors[] = $this->t('Display @display is set to use a menu but the menu link text is not set.', array('@display' => $this->display['display_title']));
+      $errors[] = $this->t('Display @display is set to use a menu but the menu link text is not set.', ['@display' => $this->display['display_title']]);
     }
 
     if ($menu['type'] == 'default tab') {
       $tab_options = $this->getOption('tab_options');
       if (!empty($tab_options['type']) && $tab_options['type'] != 'none' && empty($tab_options['title'])) {
-        $errors[] = $this->t('Display @display is set to use a parent menu but the parent menu link text is not set.', array('@display' => $this->display['display_title']));
+        $errors[] = $this->t('Display @display is set to use a parent menu but the parent menu link text is not set.', ['@display' => $this->display['display_title']]);
       }
     }
 
@@ -507,21 +507,21 @@ public function validate() {
    * {@inheritdoc}
    */
   public function getArgumentText() {
-    return array(
+    return [
       'filter value not present' => $this->t('When the filter value is <em>NOT</em> in the URL'),
       'filter value present' => $this->t('When the filter value <em>IS</em> in the URL or a default is provided'),
       'description' => $this->t('The contextual filter values are provided by the URL.'),
-    );
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function getPagerText() {
-    return array(
+    return [
       'items per page title' => $this->t('Items per page'),
       'items per page description' => $this->t('Enter 0 for no limit.')
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/display/PathPluginBase.php b/core/modules/views/src/Plugin/views/display/PathPluginBase.php
index 3654d63..17d8663 100644
--- a/core/modules/views/src/Plugin/views/display/PathPluginBase.php
+++ b/core/modules/views/src/Plugin/views/display/PathPluginBase.php
@@ -109,8 +109,8 @@ protected function isDefaultTabPath() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['path'] = array('default' => '');
-    $options['route_name'] = array('default' => '');
+    $options['path'] = ['default' => ''];
+    $options['route_name'] = ['default' => ''];
 
     return $options;
   }
@@ -127,13 +127,13 @@ protected function defineOptions() {
    *   The route for the view.
    */
   protected function getRoute($view_id, $display_id) {
-    $defaults = array(
+    $defaults = [
       '_controller' => 'Drupal\views\Routing\ViewPageController::handle',
       '_title' => $this->view->getTitle(),
       'view_id' => $view_id,
       'display_id' => $display_id,
       '_view_display_show_admin_links' => $this->getOption('show_admin_links'),
-    );
+    ];
 
     // @todo How do we apply argument validation?
     $bits = explode('/', $this->getOption('path'));
@@ -145,7 +145,7 @@ protected function getRoute($view_id, $display_id) {
     $argument_ids = array_keys((array) $this->getOption('arguments'));
     $total_arguments = count($argument_ids);
 
-    $argument_map = array();
+    $argument_map = [];
 
     // Replace arguments in the views UI (defined via %) with parameters in
     // routes (defined via {}). As a name for the parameter use arg_$key, so
@@ -223,7 +223,7 @@ public function collectRoutes(RouteCollection $collection) {
       $route_name = "view.$view_id.$display_id";
     }
     $collection->add($route_name, $route);
-    return array("$view_id.$display_id" => $route_name);
+    return ["$view_id.$display_id" => $route_name];
   }
 
   /**
@@ -274,7 +274,7 @@ protected function overrideAppliesPathAndMethod($view_path, Route $view_route, R
    * {@inheritdoc}
    */
   public function alterRoutes(RouteCollection $collection) {
-    $view_route_names = array();
+    $view_route_names = [];
     $view_path = $this->getPath();
     $view_id = $this->view->storage->id();
     $display_id = $this->display['id'];
@@ -293,7 +293,7 @@ public function alterRoutes(RouteCollection $collection) {
 
         $path = $view_route->getPath();
         // Replace the path with the original parameter names and add a mapping.
-        $argument_map = array();
+        $argument_map = [];
         // We assume that the numeric ids of the parameters match the one from
         // the view argument handlers.
         foreach ($parameters as $position => $parameter_name) {
@@ -324,7 +324,7 @@ public function alterRoutes(RouteCollection $collection) {
    * {@inheritdoc}
    */
   public function getMenuLinks() {
-    $links = array();
+    $links = [];
 
     // Replace % with the link to our standard views argument loader
     // views_arg_load -- which lives in views.module.
@@ -336,7 +336,7 @@ public function getMenuLinks() {
     foreach ($bits as $pos => $bit) {
       if ($bit == '%') {
         // If a view requires any arguments we cannot create a static menu link.
-        return array();
+        return [];
       }
     }
 
@@ -349,15 +349,15 @@ public function getMenuLinks() {
     if ($path) {
       $menu = $this->getOption('menu');
       if (!empty($menu['type']) && $menu['type'] == 'normal') {
-        $links[$menu_link_id] = array();
+        $links[$menu_link_id] = [];
         // Some views might override existing paths, so we have to set the route
         // name based upon the altering.
-        $links[$menu_link_id] = array(
+        $links[$menu_link_id] = [
           'route_name' => $this->getRouteName(),
           // Identify URL embedded arguments and correlate them to a handler.
-          'load arguments'  => array($this->view->storage->id(), $this->display['id'], '%index'),
+          'load arguments'  => [$this->view->storage->id(), $this->display['id'], '%index'],
           'id' => $menu_link_id,
-        );
+        ];
         $links[$menu_link_id]['title'] = $menu['title'];
         $links[$menu_link_id]['description'] = $menu['description'];
         $links[$menu_link_id]['parent'] = $menu['parent'];
@@ -371,10 +371,10 @@ public function getMenuLinks() {
         // Insert item into the proper menu.
         $links[$menu_link_id]['menu_name'] = $menu['menu_name'];
         // Keep track of where we came from.
-        $links[$menu_link_id]['metadata'] = array(
+        $links[$menu_link_id]['metadata'] = [
           'view_id' => $view_id,
           'display_id' => $display_id,
-        );
+        ];
       }
     }
 
@@ -404,13 +404,13 @@ public function execute() {
   public function optionsSummary(&$categories, &$options) {
     parent::optionsSummary($categories, $options);
 
-    $categories['page'] = array(
+    $categories['page'] = [
       'title' => $this->t('Page settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -10,
-      ),
-    );
+      ],
+    ];
 
     $path = strip_tags($this->getOption('path'));
 
@@ -421,11 +421,11 @@ public function optionsSummary(&$categories, &$options) {
       $path = '/' . $path;
     }
 
-    $options['path'] = array(
+    $options['path'] = [
       'category' => 'page',
       'title' => $this->t('Path'),
       'value' => views_ui_truncate($path, 24),
-    );
+    ];
   }
 
   /**
@@ -437,17 +437,17 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'path':
         $form['#title'] .= $this->t('The menu path or URL of this view');
-        $form['path'] = array(
+        $form['path'] = [
           '#type' => 'textfield',
           '#title' => $this->t('Path'),
           '#description' => $this->t('This view will be displayed by visiting this path on your site. You may use "%" in your URL to represent values that will be used for contextual filters: For example, "node/%/feed". If needed you can even specify named route parameters like taxonomy/term/%taxonomy_term'),
           '#default_value' => $this->getOption('path'),
           '#field_prefix' => '<span dir="ltr">' . $this->url('<none>', [], ['absolute' => TRUE]),
           '#field_suffix' => '</span>&lrm;',
-          '#attributes' => array('dir' => LanguageInterface::DIRECTION_LTR),
+          '#attributes' => ['dir' => LanguageInterface::DIRECTION_LTR],
           // Account for the leading backslash.
           '#maxlength' => 254,
-        );
+        ];
         break;
     }
   }
@@ -490,7 +490,7 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
    *   A list of error strings.
    */
   protected function validatePath($path) {
-    $errors = array();
+    $errors = [];
     if (strpos($path, '%') === 0) {
       $errors[] = $this->t('"%" may not be used for the first segment of a path.');
     }
@@ -557,7 +557,7 @@ public function getRouteName() {
    * {@inheritdoc}
    */
   public function getAlteredRouteNames() {
-    return $this->state->get('views.view_route_names') ?: array();
+    return $this->state->get('views.view_route_names') ?: [];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php b/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php
index 4a2bc81..fffe084 100644
--- a/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php
+++ b/core/modules/views/src/Plugin/views/exposed_form/ExposedFormPluginBase.php
@@ -26,13 +26,13 @@
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['submit_button'] = array('default' => $this->t('Apply'));
-    $options['reset_button'] = array('default' => FALSE);
-    $options['reset_button_label'] = array('default' => $this->t('Reset'));
-    $options['exposed_sorts_label'] = array('default' => $this->t('Sort by'));
-    $options['expose_sort_order'] = array('default' => TRUE);
-    $options['sort_asc_label'] = array('default' => $this->t('Asc'));
-    $options['sort_desc_label'] = array('default' => $this->t('Desc'));
+    $options['submit_button'] = ['default' => $this->t('Apply')];
+    $options['reset_button'] = ['default' => FALSE];
+    $options['reset_button_label'] = ['default' => $this->t('Reset')];
+    $options['exposed_sorts_label'] = ['default' => $this->t('Sort by')];
+    $options['expose_sort_order'] = ['default' => TRUE];
+    $options['sort_asc_label'] = ['default' => $this->t('Asc')];
+    $options['sort_desc_label'] = ['default' => $this->t('Desc')];
     return $options;
   }
 
@@ -41,69 +41,69 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['submit_button'] = array(
+    $form['submit_button'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Submit button text'),
       '#default_value' => $this->options['submit_button'],
       '#required' => TRUE,
-    );
+    ];
 
-    $form['reset_button'] = array(
+    $form['reset_button'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Include reset button (resets all applied exposed filters)'),
       '#default_value' => $this->options['reset_button'],
-    );
+    ];
 
-    $form['reset_button_label'] = array(
+    $form['reset_button_label'] = [
      '#type' => 'textfield',
       '#title' => $this->t('Reset button label'),
       '#description' => $this->t('Text to display in the reset button of the exposed form.'),
       '#default_value' => $this->options['reset_button_label'],
       '#required' => TRUE,
-      '#states' => array(
-        'invisible' => array(
-          'input[name="exposed_form_options[reset_button]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          'input[name="exposed_form_options[reset_button]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
 
-    $form['exposed_sorts_label'] = array(
+    $form['exposed_sorts_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Exposed sorts label'),
       '#default_value' => $this->options['exposed_sorts_label'],
       '#required' => TRUE,
-    );
+    ];
 
-    $form['expose_sort_order'] = array(
+    $form['expose_sort_order'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow people to choose the sort order'),
       '#description' => $this->t('If sort order is not exposed, the sort criteria settings for each sort will determine its order.'),
       '#default_value' => $this->options['expose_sort_order'],
-    );
+    ];
 
-    $form['sort_asc_label'] = array(
+    $form['sort_asc_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label for ascending sort'),
       '#default_value' => $this->options['sort_asc_label'],
       '#required' => TRUE,
-      '#states' => array(
-        'visible' => array(
-          'input[name="exposed_form_options[expose_sort_order]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          'input[name="exposed_form_options[expose_sort_order]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $form['sort_desc_label'] = array(
+    $form['sort_desc_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label for descending sort'),
       '#default_value' => $this->options['sort_desc_label'],
       '#required' => TRUE,
-      '#states' => array(
-        'visible' => array(
-          'input[name="exposed_form_options[expose_sort_order]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          'input[name="exposed_form_options[expose_sort_order]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -141,7 +141,7 @@ public function renderExposedForm($block = FALSE) {
     }
 
     if (!$this->view->display_handler->displaysExposed() || (!$block && $this->view->display_handler->getOption('exposed_block'))) {
-      return array();
+      return [];
     }
     else {
       return $form;
@@ -153,19 +153,19 @@ public function renderExposedForm($block = FALSE) {
    */
   public function query() {
     $view = $this->view;
-    $exposed_data = isset($view->exposed_data) ? $view->exposed_data : array();
+    $exposed_data = isset($view->exposed_data) ? $view->exposed_data : [];
     $sort_by = isset($exposed_data['sort_by']) ? $exposed_data['sort_by'] : NULL;
     if (!empty($sort_by)) {
       // Make sure the original order of sorts is preserved
       // (e.g. a sticky sort is often first)
       if (isset($view->sort[$sort_by])) {
-        $view->query->orderby = array();
+        $view->query->orderby = [];
         foreach ($view->sort as $key => $sort) {
           if (!$sort->isExposed()) {
             $sort->query();
           }
           elseif ($key == $sort_by) {
-            if (isset($exposed_data['sort_order']) && in_array($exposed_data['sort_order'], array('ASC', 'DESC'))) {
+            if (isset($exposed_data['sort_order']) && in_array($exposed_data['sort_order'], ['ASC', 'DESC'])) {
               $sort->options['order'] = $exposed_data['sort_order'];
             }
             $sort->setRelationship();
@@ -205,7 +205,7 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
     }
 
     // Check if there is exposed sorts for this view
-    $exposed_sorts = array();
+    $exposed_sorts = [];
     foreach ($this->view->sort as $id => $handler) {
       if ($handler->canExpose() && $handler->isExposed()) {
         $exposed_sorts[$id] = Html::escape($handler->options['expose']['label']);
@@ -213,15 +213,15 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
     }
 
     if (count($exposed_sorts)) {
-      $form['sort_by'] = array(
+      $form['sort_by'] = [
         '#type' => 'select',
         '#options' => $exposed_sorts,
         '#title' => $this->options['exposed_sorts_label'],
-      );
-      $sort_order = array(
+      ];
+      $sort_order = [
         'ASC' => $this->options['sort_asc_label'],
         'DESC' => $this->options['sort_desc_label'],
-      );
+      ];
       $user_input = $form_state->getUserInput();
       if (isset($user_input['sort_by']) && isset($this->view->sort[$user_input['sort_by']])) {
         $default_sort_order = $this->view->sort[$user_input['sort_by']]->options['order'];
@@ -238,22 +238,22 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
       }
 
       if ($this->options['expose_sort_order']) {
-        $form['sort_order'] = array(
+        $form['sort_order'] = [
           '#type' => 'select',
           '#options' => $sort_order,
-          '#title' => $this->t('Order', array(), array('context' => 'Sort order')),
+          '#title' => $this->t('Order', [], ['context' => 'Sort order']),
           '#default_value' => $default_sort_order,
-        );
+        ];
       }
       $form['submit']['#weight'] = 10;
     }
 
     if (!empty($this->options['reset_button'])) {
-      $form['actions']['reset'] = array(
+      $form['actions']['reset'] = [
         '#value' => $this->options['reset_button_label'],
         '#type' => 'submit',
         '#weight' => 10,
-      );
+      ];
 
       // Get an array of exposed filters, keyed by identifier option.
       $exposed_filters = [];
@@ -329,7 +329,7 @@ public function resetForm(&$form, FormStateInterface $form_state) {
     }
     else {
       $form_state->setRebuild();
-      $this->view->exposed_data = array();
+      $this->view->exposed_data = [];
     }
 
     $form_state->setRedirect('<current>');
diff --git a/core/modules/views/src/Plugin/views/exposed_form/InputRequired.php b/core/modules/views/src/Plugin/views/exposed_form/InputRequired.php
index 8b88597..38a5283 100644
--- a/core/modules/views/src/Plugin/views/exposed_form/InputRequired.php
+++ b/core/modules/views/src/Plugin/views/exposed_form/InputRequired.php
@@ -21,28 +21,28 @@ class InputRequired extends ExposedFormPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['text_input_required'] = array('default' => $this->t('Select any filter and click on Apply to see results'));
-    $options['text_input_required_format'] = array('default' => NULL);
+    $options['text_input_required'] = ['default' => $this->t('Select any filter and click on Apply to see results')];
+    $options['text_input_required_format'] = ['default' => NULL];
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['text_input_required'] = array(
+    $form['text_input_required'] = [
       '#type' => 'text_format',
       '#title' => $this->t('Text on demand'),
       '#description' => $this->t('Text to display instead of results until the user selects and applies an exposed filter.'),
       '#default_value' => $this->options['text_input_required'],
       '#format' => isset($this->options['text_input_required_format']) ? $this->options['text_input_required_format'] : filter_default_format(),
       '#editor' => FALSE,
-    );
+    ];
   }
 
   public function submitOptionsForm(&$form, FormStateInterface $form_state) {
     $exposed_form_options = $form_state->getValue('exposed_form_options');
-    $form_state->setValue(array('exposed_form_options', 'text_input_required_format'), $exposed_form_options['text_input_required']['format']);
-    $form_state->setValue(array('exposed_form_options', 'text_input_required'), $exposed_form_options['text_input_required']['value']);
+    $form_state->setValue(['exposed_form_options', 'text_input_required_format'], $exposed_form_options['text_input_required']['format']);
+    $form_state->setValue(['exposed_form_options', 'text_input_required'], $exposed_form_options['text_input_required']['value']);
     parent::submitOptionsForm($form, $form_state);
   }
 
@@ -72,7 +72,7 @@ public function preRender($values) {
     // text to display instead of results until the user selects and applies
     // an exposed filter.
     if (!$this->exposedFilterApplied()) {
-      $options = array(
+      $options = [
         'id' => 'area',
         'table' => 'views',
         'field' => 'area',
@@ -88,14 +88,14 @@ public function preRender($values) {
           'value' => $this->options['text_input_required'],
           'format' => $this->options['text_input_required_format'],
         ],
-      );
+      ];
       $handler = Views::handlerManager('area')->getHandler($options);
       $handler->init($this->view, $this->displayHandler, $options);
-      $this->displayHandler->handlers['empty'] = array(
+      $this->displayHandler->handlers['empty'] = [
         'area' => $handler,
-      );
+      ];
       // Override the existing empty result message (if applicable).
-      $this->displayHandler->setOption('empty', array('text' => $options));
+      $this->displayHandler->setOption('empty', ['text' => $options]);
     }
   }
 
@@ -104,7 +104,7 @@ public function query() {
       // We return with no query; this will force the empty text.
       $this->view->built = TRUE;
       $this->view->executed = TRUE;
-      $this->view->result = array();
+      $this->view->result = [];
     }
     else {
       parent::query();
diff --git a/core/modules/views/src/Plugin/views/field/Boolean.php b/core/modules/views/src/Plugin/views/field/Boolean.php
index 59d3b29..75f097e 100644
--- a/core/modules/views/src/Plugin/views/field/Boolean.php
+++ b/core/modules/views/src/Plugin/views/field/Boolean.php
@@ -34,10 +34,10 @@ class Boolean extends FieldPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['type'] = array('default' => 'yes-no');
-    $options['type_custom_true'] = array('default' => '');
-    $options['type_custom_false'] = array('default' => '');
-    $options['not'] = array('default' => FALSE);
+    $options['type'] = ['default' => 'yes-no'];
+    $options['type_custom_true'] = ['default' => ''];
+    $options['type_custom_false'] = ['default' => ''];
+    $options['not'] = ['default' => FALSE];
 
     return $options;
   }
@@ -48,16 +48,16 @@ protected function defineOptions() {
   public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL) {
     parent::init($view, $display, $options);
 
-    $default_formats = array(
-      'yes-no' => array(t('Yes'), $this->t('No')),
-      'true-false' => array(t('True'), $this->t('False')),
-      'on-off' => array(t('On'), $this->t('Off')),
-      'enabled-disabled' => array(t('Enabled'), $this->t('Disabled')),
-      'boolean' => array(1, 0),
-      'unicode-yes-no' => array('✔', '✖'),
-    );
-    $output_formats = isset($this->definition['output formats']) ? $this->definition['output formats'] : array();
-    $custom_format = array('custom' => array(t('Custom')));
+    $default_formats = [
+      'yes-no' => [t('Yes'), $this->t('No')],
+      'true-false' => [t('True'), $this->t('False')],
+      'on-off' => [t('On'), $this->t('Off')],
+      'enabled-disabled' => [t('Enabled'), $this->t('Disabled')],
+      'boolean' => [1, 0],
+      'unicode-yes-no' => ['✔', '✖'],
+    ];
+    $output_formats = isset($this->definition['output formats']) ? $this->definition['output formats'] : [];
+    $custom_format = ['custom' => [t('Custom')]];
     $this->formats = array_merge($default_formats, $output_formats, $custom_format);
   }
 
@@ -69,38 +69,38 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       $options[$key] = implode('/', $item);
     }
 
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'select',
       '#title' => $this->t('Output format'),
       '#options' => $options,
       '#default_value' => $this->options['type'],
-    );
-    $form['type_custom_true'] = array(
+    ];
+    $form['type_custom_true'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Custom output for TRUE'),
       '#default_value' => $this->options['type_custom_true'],
-      '#states' => array(
-        'visible' => array(
-          'select[name="options[type]"]' => array('value' => 'custom'),
-        ),
-      ),
-    );
-    $form['type_custom_false'] = array(
+      '#states' => [
+        'visible' => [
+          'select[name="options[type]"]' => ['value' => 'custom'],
+        ],
+      ],
+    ];
+    $form['type_custom_false'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Custom output for FALSE'),
       '#default_value' => $this->options['type_custom_false'],
-      '#states' => array(
-        'visible' => array(
-          'select[name="options[type]"]' => array('value' => 'custom'),
-        ),
-      ),
-    );
-    $form['not'] = array(
+      '#states' => [
+        'visible' => [
+          'select[name="options[type]"]' => ['value' => 'custom'],
+        ],
+      ],
+    ];
+    $form['not'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Reverse'),
       '#description' => $this->t('If checked, true will be displayed as false.'),
       '#default_value' => $this->options['not'],
-    );
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
diff --git a/core/modules/views/src/Plugin/views/field/Counter.php b/core/modules/views/src/Plugin/views/field/Counter.php
index 06d9b56..d32e5e7 100644
--- a/core/modules/views/src/Plugin/views/field/Counter.php
+++ b/core/modules/views/src/Plugin/views/field/Counter.php
@@ -28,7 +28,7 @@ public function usesGroupBy() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['counter_start'] = array('default' => 1);
+    $options['counter_start'] = ['default' => 1];
     return $options;
   }
 
@@ -36,13 +36,13 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['counter_start'] = array(
+    $form['counter_start'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Starting value'),
       '#default_value' => $this->options['counter_start'],
       '#description' => $this->t('Specify the number the counter should start at.'),
       '#size' => 2,
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
diff --git a/core/modules/views/src/Plugin/views/field/Custom.php b/core/modules/views/src/Plugin/views/field/Custom.php
index 19552b2..6dfa8ac 100644
--- a/core/modules/views/src/Plugin/views/field/Custom.php
+++ b/core/modules/views/src/Plugin/views/field/Custom.php
@@ -37,8 +37,8 @@ protected function defineOptions() {
     $options = parent::defineOptions();
 
     // Override the alter text option to always alter the text.
-    $options['alter']['contains']['alter_text'] = array('default' => TRUE);
-    $options['hide_alter_empty'] = array('default' => FALSE);
+    $options['alter']['contains']['alter_text'] = ['default' => TRUE];
+    $options['hide_alter_empty'] = ['default' => FALSE];
     return $options;
   }
 
@@ -52,7 +52,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     unset($form['alter']['alter_text']);
     unset($form['alter']['text']['#states']);
     unset($form['alter']['help']['#states']);
-    $form['#pre_render'][] = array($this, 'preRenderCustomForm');
+    $form['#pre_render'][] = [$this, 'preRenderCustomForm'];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/field/Date.php b/core/modules/views/src/Plugin/views/field/Date.php
index f5a5204..37455cc 100644
--- a/core/modules/views/src/Plugin/views/field/Date.php
+++ b/core/modules/views/src/Plugin/views/field/Date.php
@@ -71,9 +71,9 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['date_format'] = array('default' => 'small');
-    $options['custom_date_format'] = array('default' => '');
-    $options['timezone'] = array('default' => '');
+    $options['date_format'] = ['default' => 'small'];
+    $options['custom_date_format'] = ['default' => ''];
+    $options['timezone'] = ['default' => ''];
 
     return $options;
   }
@@ -83,15 +83,15 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
-    $date_formats = array();
+    $date_formats = [];
     foreach ($this->dateFormatStorage->loadMultiple() as $machine_name => $value) {
-      $date_formats[$machine_name] = $this->t('@name format: @date', array('@name' => $value->label(), '@date' => $this->dateFormatter->format(REQUEST_TIME, $machine_name)));
+      $date_formats[$machine_name] = $this->t('@name format: @date', ['@name' => $value->label(), '@date' => $this->dateFormatter->format(REQUEST_TIME, $machine_name)]);
     }
 
-    $form['date_format'] = array(
+    $form['date_format'] = [
       '#type' => 'select',
       '#title' => $this->t('Date format'),
-      '#options' => $date_formats + array(
+      '#options' => $date_formats + [
         'custom' => $this->t('Custom'),
         'raw time ago' => $this->t('Time ago'),
         'time ago' => $this->t('Time ago (with "ago" appended)'),
@@ -100,32 +100,32 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         'raw time span' => $this->t('Time span (future dates have "-" prepended)'),
         'inverse time span' => $this->t('Time span (past dates have "-" prepended)'),
         'time span' => $this->t('Time span (with "ago/hence" appended)'),
-      ),
+      ],
       '#default_value' => isset($this->options['date_format']) ? $this->options['date_format'] : 'small',
-    );
-    $form['custom_date_format'] = array(
+    ];
+    $form['custom_date_format'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Custom date format'),
       '#description' => $this->t('If "Custom", see <a href="http://us.php.net/manual/en/function.date.php" target="_blank">the PHP docs</a> for date formats. Otherwise, enter the number of different time units to display, which defaults to 2.'),
       '#default_value' => isset($this->options['custom_date_format']) ? $this->options['custom_date_format'] : '',
-    );
+    ];
     // Setup #states for all possible date_formats on the custom_date_format form element.
-    foreach (array('custom', 'raw time ago', 'time ago', 'raw time hence', 'time hence', 'raw time span', 'time span', 'raw time span', 'inverse time span', 'time span') as $custom_date_possible) {
-      $form['custom_date_format']['#states']['visible'][] = array(
-        ':input[name="options[date_format]"]' => array('value' => $custom_date_possible),
-      );
+    foreach (['custom', 'raw time ago', 'time ago', 'raw time hence', 'time hence', 'raw time span', 'time span', 'raw time span', 'inverse time span', 'time span'] as $custom_date_possible) {
+      $form['custom_date_format']['#states']['visible'][] = [
+        ':input[name="options[date_format]"]' => ['value' => $custom_date_possible],
+      ];
     }
-    $form['timezone'] = array(
+    $form['timezone'] = [
       '#type' => 'select',
       '#title' => $this->t('Timezone'),
       '#description' => $this->t('Timezone to be used for date output.'),
-      '#options' => array('' => $this->t('- Default site/user timezone -')) + system_time_zones(FALSE),
+      '#options' => ['' => $this->t('- Default site/user timezone -')] + system_time_zones(FALSE),
       '#default_value' => $this->options['timezone'],
-    );
-    foreach (array_merge(array('custom'), array_keys($date_formats)) as $timezone_date_formats) {
-      $form['timezone']['#states']['visible'][] = array(
-        ':input[name="options[date_format]"]' => array('value' => $timezone_date_formats),
-      );
+    ];
+    foreach (array_merge(['custom'], array_keys($date_formats)) as $timezone_date_formats) {
+      $form['timezone']['#states']['visible'][] = [
+        ':input[name="options[date_format]"]' => ['value' => $timezone_date_formats],
+      ];
     }
 
     parent::buildOptionsForm($form, $form_state);
@@ -137,7 +137,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
   public function render(ResultRow $values) {
     $value = $this->getValue($values);
     $format = $this->options['date_format'];
-    if (in_array($format, array('custom', 'raw time ago', 'time ago', 'raw time hence', 'time hence', 'raw time span', 'time span', 'raw time span', 'inverse time span', 'time span'))) {
+    if (in_array($format, ['custom', 'raw time ago', 'time ago', 'raw time hence', 'time hence', 'raw time span', 'time span', 'raw time span', 'inverse time span', 'time span'])) {
       $custom_format = $this->options['custom_date_format'];
     }
 
@@ -146,26 +146,26 @@ public function render(ResultRow $values) {
       $time_diff = REQUEST_TIME - $value; // will be positive for a datetime in the past (ago), and negative for a datetime in the future (hence)
       switch ($format) {
         case 'raw time ago':
-          return $this->dateFormatter->formatTimeDiffSince($value, array('granularity' => is_numeric($custom_format) ? $custom_format : 2));
+          return $this->dateFormatter->formatTimeDiffSince($value, ['granularity' => is_numeric($custom_format) ? $custom_format : 2]);
 
         case 'time ago':
-          return $this->t('%time ago', array('%time' => $this->dateFormatter->formatTimeDiffSince($value, array('granularity' => is_numeric($custom_format) ? $custom_format : 2))));
+          return $this->t('%time ago', ['%time' => $this->dateFormatter->formatTimeDiffSince($value, ['granularity' => is_numeric($custom_format) ? $custom_format : 2])]);
 
         case 'raw time hence':
-          return $this->dateFormatter->formatTimeDiffUntil($value, array('granularity' => is_numeric($custom_format) ? $custom_format : 2));
+          return $this->dateFormatter->formatTimeDiffUntil($value, ['granularity' => is_numeric($custom_format) ? $custom_format : 2]);
 
         case 'time hence':
-          return $this->t('%time hence', array('%time' => $this->dateFormatter->formatTimeDiffUntil($value, array('granularity' => is_numeric($custom_format) ? $custom_format : 2))));
+          return $this->t('%time hence', ['%time' => $this->dateFormatter->formatTimeDiffUntil($value, ['granularity' => is_numeric($custom_format) ? $custom_format : 2])]);
 
         case 'raw time span':
-          return ($time_diff < 0 ? '-' : '') . $this->dateFormatter->formatTimeDiffSince($value, array('strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2));
+          return ($time_diff < 0 ? '-' : '') . $this->dateFormatter->formatTimeDiffSince($value, ['strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2]);
 
         case 'inverse time span':
-          return ($time_diff > 0 ? '-' : '') . $this->dateFormatter->formatTimeDiffSince($value, array('strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2));
+          return ($time_diff > 0 ? '-' : '') . $this->dateFormatter->formatTimeDiffSince($value, ['strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2]);
 
         case 'time span':
-          $time = $this->dateFormatter->formatTimeDiffSince($value, array('strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2));
-          return ($time_diff < 0) ? $this->t('%time hence', array('%time' => $time)) : $this->t('%time ago', array('%time' => $time));
+          $time = $this->dateFormatter->formatTimeDiffSince($value, ['strict' => FALSE, 'granularity' => is_numeric($custom_format) ? $custom_format : 2]);
+          return ($time_diff < 0) ? $this->t('%time hence', ['%time' => $time]) : $this->t('%time ago', ['%time' => $time]);
 
         case 'custom':
           if ($custom_format == 'r') {
diff --git a/core/modules/views/src/Plugin/views/field/Dropbutton.php b/core/modules/views/src/Plugin/views/field/Dropbutton.php
index f5cf4d3..b5a9b60 100644
--- a/core/modules/views/src/Plugin/views/field/Dropbutton.php
+++ b/core/modules/views/src/Plugin/views/field/Dropbutton.php
@@ -20,10 +20,10 @@ public function render(ResultRow $values) {
     $links = $this->getLinks();
 
     if (!empty($links)) {
-      return array(
+      return [
         '#type' => 'dropbutton',
         '#links' => $links,
-      );
+      ];
     }
     else {
       return '';
diff --git a/core/modules/views/src/Plugin/views/field/EntityField.php b/core/modules/views/src/Plugin/views/field/EntityField.php
index dfabda3..6a0c762 100644
--- a/core/modules/views/src/Plugin/views/field/EntityField.php
+++ b/core/modules/views/src/Plugin/views/field/EntityField.php
@@ -44,7 +44,7 @@ class EntityField extends FieldPluginBase implements CacheableDependencyInterfac
    *
    * @var array
    */
-  public $items = array();
+  public $items = [];
 
   /**
    * Does the field supports multiple field values.
@@ -232,14 +232,14 @@ public function query($use_groupby = FALSE) {
 
     if ($use_groupby) {
       // Add the fields that we're actually grouping on.
-      $options = array();
+      $options = [];
       if ($this->options['group_column'] != 'entity_id') {
-        $options = array($this->options['group_column'] => $this->options['group_column']);
+        $options = [$this->options['group_column'] => $this->options['group_column']];
       }
-      $options += is_array($this->options['group_columns']) ? $this->options['group_columns'] : array();
+      $options += is_array($this->options['group_columns']) ? $this->options['group_columns'] : [];
 
       // Go through the list and determine the actual column name from field api.
-      $fields = array();
+      $fields = [];
       $table_mapping = $this->getTableMapping();
       $field_definition = $this->getFieldStorageDefinition();
 
@@ -354,9 +354,9 @@ protected function defineOptions() {
     }
 
     // If the field has a "value" column, we probably need that one.
-    $options['click_sort_column'] = array(
+    $options['click_sort_column'] = [
       'default' => $default_column,
-    );
+    ];
 
     if (isset($this->definition['default_formatter'])) {
       $options['type'] = ['default' => $this->definition['default_formatter']];
@@ -368,45 +368,45 @@ protected function defineOptions() {
       $options['type'] = ['default' => ''];
     }
 
-    $options['settings'] = array(
+    $options['settings'] = [
       'default' => isset($this->definition['default_formatter_settings']) ? $this->definition['default_formatter_settings'] : [],
-    );
-    $options['group_column'] = array(
+    ];
+    $options['group_column'] = [
       'default' => $default_column,
-    );
-    $options['group_columns'] = array(
-      'default' => array(),
-    );
+    ];
+    $options['group_columns'] = [
+      'default' => [],
+    ];
 
     // Options used for multiple value fields.
-    $options['group_rows'] = array(
+    $options['group_rows'] = [
       'default' => TRUE,
-    );
+    ];
     // If we know the exact number of allowed values, then that can be
     // the default. Otherwise, default to 'all'.
-    $options['delta_limit'] = array(
+    $options['delta_limit'] = [
       'default' => ($field_storage_definition->getCardinality() > 1) ? $field_storage_definition->getCardinality() : 0,
-    );
-    $options['delta_offset'] = array(
+    ];
+    $options['delta_offset'] = [
       'default' => 0,
-    );
-    $options['delta_reversed'] = array(
+    ];
+    $options['delta_reversed'] = [
       'default' => FALSE,
-    );
-    $options['delta_first_last'] = array(
+    ];
+    $options['delta_first_last'] = [
       'default' => FALSE,
-    );
+    ];
 
-    $options['multi_type'] = array(
+    $options['multi_type'] = [
       'default' => 'separator'
-    );
-    $options['separator'] = array(
+    ];
+    $options['separator'] = [
       'default' => ', '
-    );
+    ];
 
-    $options['field_api_classes'] = array(
+    $options['field_api_classes'] = [
       'default' => FALSE,
-    );
+    ];
 
     return $options;
   }
@@ -428,48 +428,48 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     // No need to ask the user anything if the field has only one column.
     if (count($field->getColumns()) == 1) {
-      $form['click_sort_column'] = array(
+      $form['click_sort_column'] = [
         '#type' => 'value',
         '#value' => isset($column_names[0]) ? $column_names[0] : '',
-      );
+      ];
     }
     else {
-      $form['click_sort_column'] = array(
+      $form['click_sort_column'] = [
         '#type' => 'select',
         '#title' => $this->t('Column used for click sorting'),
         '#options' => array_combine($column_names, $column_names),
         '#default_value' => $this->options['click_sort_column'],
         '#description' => $this->t('Used by Style: Table to determine the actual column to click sort the field on. The default is usually fine.'),
-      );
+      ];
     }
 
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'select',
       '#title' => $this->t('Formatter'),
       '#options' => $formatters,
       '#default_value' => $this->options['type'],
-      '#ajax' => array(
+      '#ajax' => [
         'url' => views_ui_build_form_url($form_state),
-      ),
-      '#submit' => array(array($this, 'submitTemporaryForm')),
+      ],
+      '#submit' => [[$this, 'submitTemporaryForm']],
       '#executes_submit_callback' => TRUE,
-    );
+    ];
 
-    $form['field_api_classes'] = array(
+    $form['field_api_classes'] = [
       '#title' => $this->t('Use field template'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['field_api_classes'],
       '#description' => $this->t('If checked, field api classes will be added by field templates. This is not recommended unless your CSS depends upon these classes. If not checked, template will not be used.'),
       '#fieldset' => 'style_settings',
       '#weight' => 20,
-    );
+    ];
 
     if ($this->multiple) {
       $form['field_api_classes']['#description'] .= ' ' . $this->t('Checking this option will cause the group Display Type and Separator values to be ignored.');
     }
 
     // Get the settings form.
-    $settings_form = array('#value' => array());
+    $settings_form = ['#value' => []];
     $format = isset($form_state->getUserInput()['options']['type']) ? $form_state->getUserInput()['options']['type'] : $this->options['type'];
     if ($formatter = $this->getFormatterInstance($format)) {
       $settings_form = $formatter->settingsForm($form, $form_state);
@@ -500,19 +500,19 @@ public function submitFormCalculateOptions(array $options, array $form_state_opt
   function multiple_options_form(&$form, FormStateInterface $form_state) {
     $field = $this->getFieldDefinition();
 
-    $form['multiple_field_settings'] = array(
+    $form['multiple_field_settings'] = [
       '#type' => 'details',
       '#title' => $this->t('Multiple field settings'),
       '#weight' => 5,
-    );
+    ];
 
-    $form['group_rows'] = array(
+    $form['group_rows'] = [
       '#title' => $this->t('Display all values in the same row'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['group_rows'],
       '#description' => $this->t('If checked, multiple values for this field will be shown in the same row. If not checked, each value in this field will create a new row. If using group by, please make sure to group by "Entity ID" for this setting to have any effect.'),
       '#fieldset' => 'multiple_field_settings',
-    );
+    ];
 
     // Make the string translatable by keeping it as a whole rather than
     // translating prefix and suffix separately.
@@ -529,37 +529,37 @@ function multiple_options_form(&$form, FormStateInterface $form_state) {
       $options = array_combine($range, $range);
       $size = 1;
     }
-    $form['multi_type'] = array(
+    $form['multi_type'] = [
       '#type' => 'radios',
       '#title' => $this->t('Display type'),
-      '#options' => array(
+      '#options' => [
         'ul' => $this->t('Unordered list'),
         'ol' => $this->t('Ordered list'),
         'separator' => $this->t('Simple separator'),
-      ),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-        ),
-      ),
+      ],
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#default_value' => $this->options['multi_type'],
       '#fieldset' => 'multiple_field_settings',
-    );
+    ];
 
-    $form['separator'] = array(
+    $form['separator'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Separator'),
       '#default_value' => $this->options['separator'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-          ':input[name="options[multi_type]"]' => array('value' => 'separator'),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+          ':input[name="options[multi_type]"]' => ['value' => 'separator'],
+        ],
+      ],
       '#fieldset' => 'multiple_field_settings',
-    );
+    ];
 
-    $form['delta_limit'] = array(
+    $form['delta_limit'] = [
       '#type' => $type,
       '#size' => $size,
       '#field_prefix' => $prefix,
@@ -567,54 +567,54 @@ function multiple_options_form(&$form, FormStateInterface $form_state) {
       '#options' => $options,
       '#default_value' => $this->options['delta_limit'],
       '#prefix' => '<div class="container-inline">',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'multiple_field_settings',
-    );
+    ];
 
     list($prefix, $suffix) = explode('@count', $this->t('starting from @count'));
-    $form['delta_offset'] = array(
+    $form['delta_offset'] = [
       '#type' => 'textfield',
       '#size' => 5,
       '#field_prefix' => $prefix,
       '#field_suffix' => $suffix,
       '#default_value' => $this->options['delta_offset'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#description' => $this->t('(first item is 0)'),
       '#fieldset' => 'multiple_field_settings',
-    );
-    $form['delta_reversed'] = array(
+    ];
+    $form['delta_reversed'] = [
       '#title' => $this->t('Reversed'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['delta_reversed'],
       '#suffix' => $suffix,
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#description' => $this->t('(start from last values)'),
       '#fieldset' => 'multiple_field_settings',
-    );
-    $form['delta_first_last'] = array(
+    ];
+    $form['delta_first_last'] = [
       '#title' => $this->t('First and last only'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['delta_first_last'],
       '#suffix' => '</div>',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[group_rows]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[group_rows]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'multiple_field_settings',
-    );
+    ];
   }
 
   /**
@@ -626,31 +626,31 @@ public function buildGroupByForm(&$form, FormStateInterface $form_state) {
     // and any additional grouping columns must be specified.
 
     $field_columns = array_keys($this->getFieldDefinition()->getColumns());
-    $group_columns = array(
+    $group_columns = [
       'entity_id' => $this->t('Entity ID'),
-    ) + array_map('ucfirst', array_combine($field_columns, $field_columns));
+    ] + array_map('ucfirst', array_combine($field_columns, $field_columns));
 
-    $form['group_column'] = array(
+    $form['group_column'] = [
       '#type' => 'select',
       '#title' => $this->t('Group column'),
       '#default_value' => $this->options['group_column'],
       '#description' => $this->t('Select the column of this field to apply the grouping function selected above.'),
       '#options' => $group_columns,
-    );
+    ];
 
-    $options = array(
+    $options = [
       'bundle' => 'Bundle',
       'language' => 'Language',
       'entity_type' => 'Entity_type',
-    );
+    ];
     // Add on defined fields, noting that they're prefixed with the field name.
-    $form['group_columns'] = array(
+    $form['group_columns'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Group columns (additional)'),
       '#default_value' => $this->options['group_columns'],
       '#description' => $this->t('Select any additional columns of this field to include in the query and to group on.'),
       '#options' => $options + $group_columns,
-    );
+    ];
   }
 
   public function submitGroupByForm(&$form, FormStateInterface $form_state) {
@@ -658,8 +658,8 @@ public function submitGroupByForm(&$form, FormStateInterface $form_state) {
     $item = &$form_state->get('handler')->options;
 
     // Add settings for "field API" fields.
-    $item['group_column'] = $form_state->getValue(array('options', 'group_column'));
-    $item['group_columns'] = array_filter($form_state->getValue(array('options', 'group_columns')));
+    $item['group_column'] = $form_state->getValue(['options', 'group_column']);
+    $item['group_columns'] = array_filter($form_state->getValue(['options', 'group_columns']));
   }
 
   /**
@@ -680,12 +680,12 @@ public function renderItems($items) {
         ];
       }
       else {
-        $build = array(
+        $build = [
           '#theme' => 'item_list',
           '#items' => $items,
           '#title' => NULL,
           '#list_type' => $this->options['multi_type'],
-        );
+        ];
       }
       return $this->renderer->render($build);
     }
@@ -738,7 +738,7 @@ protected function prepareItemsByDelta(array $all_values) {
       // Determine if only the first and last values should be shown.
       $delta_first_last = $this->options['delta_first_last'];
 
-      $new_values = array();
+      $new_values = [];
       for ($i = 0; $i < $delta_limit; $i++) {
         $new_delta = $offset + $i;
 
@@ -877,7 +877,7 @@ protected function createEntityForGroupBy(EntityInterface $entity, ResultRow $ro
     // cause some weirdness, but there is only so much we can hope to do.
     if (!empty($this->group_fields) && isset($entity->{$this->definition['field_name']})) {
       // first, test to see if we have a base value.
-      $base_value = array();
+      $base_value = [];
       // Note: We would copy original values here, but it can cause problems.
       // For example, text fields store cached filtered values as 'safe_value'
       // which does not appear anywhere in the field definition so we cannot
@@ -896,10 +896,10 @@ protected function createEntityForGroupBy(EntityInterface $entity, ResultRow $ro
       if ($data) {
         // Now, overwrite the original value with our aggregated value.
         // This overwrites it so there is always just one entry.
-        $processed_entity->{$this->definition['field_name']} = array($base_value);
+        $processed_entity->{$this->definition['field_name']} = [$base_value];
       }
       else {
-        $processed_entity->{$this->definition['field_name']} = array();
+        $processed_entity->{$this->definition['field_name']} = [];
       }
     }
 
@@ -913,7 +913,7 @@ function render_item($count, $item) {
   protected function documentSelfTokens(&$tokens) {
     $field = $this->getFieldDefinition();
     foreach ($field->getColumns() as $id => $column) {
-      $tokens['{{ ' . $this->options['id'] . '__' . $id . ' }}'] = $this->t('Raw @column', array('@column' => $id));
+      $tokens['{{ ' . $this->options['id'] . '__' . $id . ' }}'] = $this->t('Raw @column', ['@column' => $id]);
     }
   }
 
diff --git a/core/modules/views/src/Plugin/views/field/EntityLabel.php b/core/modules/views/src/Plugin/views/field/EntityLabel.php
index 967fd52..86ccd05 100644
--- a/core/modules/views/src/Plugin/views/field/EntityLabel.php
+++ b/core/modules/views/src/Plugin/views/field/EntityLabel.php
@@ -23,7 +23,7 @@ class EntityLabel extends FieldPluginBase {
    *
    * @var array
    */
-  protected $loadedReferencers = array();
+  protected $loadedReferencers = [];
 
   /**
    * EntityManager class.
@@ -75,7 +75,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['link_to_entity'] = array('default' => FALSE);
+    $options['link_to_entity'] = ['default' => FALSE];
     return $options;
   }
 
@@ -83,12 +83,12 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['link_to_entity'] = array(
+    $form['link_to_entity'] = [
       '#title' => $this->t('Link to entity'),
       '#description' => $this->t('Make entity label a link to entity page.'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['link_to_entity']),
-    );
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
@@ -128,7 +128,7 @@ public function render(ResultRow $values) {
   public function preRender(&$values) {
     parent::preRender($values);
 
-    $entity_ids_per_type = array();
+    $entity_ids_per_type = [];
     foreach ($values as $value) {
       if ($type = $this->getValue($value, 'type')) {
         $entity_ids_per_type[$type][] = $this->getValue($value);
diff --git a/core/modules/views/src/Plugin/views/field/EntityOperations.php b/core/modules/views/src/Plugin/views/field/EntityOperations.php
index f2a3ba9..c8a307b 100644
--- a/core/modules/views/src/Plugin/views/field/EntityOperations.php
+++ b/core/modules/views/src/Plugin/views/field/EntityOperations.php
@@ -83,9 +83,9 @@ public function usesGroupBy() {
   public function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['destination'] = array(
+    $options['destination'] = [
       'default' => TRUE,
-    );
+    ];
 
     return $options;
   }
@@ -96,12 +96,12 @@ public function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['destination'] = array(
+    $form['destination'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Include destination'),
       '#description' => $this->t('Include a <code>destination</code> parameter in the link to return the user to the original view upon completing the link action.'),
       '#default_value' => $this->options['destination'],
-    );
+    ];
   }
 
   /**
@@ -113,15 +113,15 @@ public function render(ResultRow $values) {
     if ($this->options['destination']) {
       foreach ($operations as &$operation) {
         if (!isset($operation['query'])) {
-          $operation['query'] = array();
+          $operation['query'] = [];
         }
         $operation['query'] += $this->getDestinationArray();
       }
     }
-    $build = array(
+    $build = [
       '#type' => 'operations',
       '#links' => $operations,
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/views/src/Plugin/views/field/FieldPluginBase.php b/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
index 1432972..8291fed 100644
--- a/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
+++ b/core/modules/views/src/Plugin/views/field/FieldPluginBase.php
@@ -69,7 +69,7 @@
   const RENDER_TEXT_PHASE_EMPTY = 2;
 
   public $field_alias = 'unknown';
-  public $aliases = array();
+  public $aliases = [];
 
   /**
    * The field value prior to any rewriting.
@@ -85,7 +85,7 @@
    *
    * @var array
    */
-  public $additional_fields = array();
+  public $additional_fields = [];
 
   /**
    * The link generator.
@@ -114,7 +114,7 @@
   public function init(ViewExecutable $view, DisplayPluginBase $display, array &$options = NULL) {
     parent::init($view, $display, $options);
 
-    $this->additional_fields = array();
+    $this->additional_fields = [];
     if (!empty($this->definition['additional fields'])) {
       $this->additional_fields = $this->definition['additional fields'];
     }
@@ -140,7 +140,7 @@ protected function allowAdvancedRender() {
   public function query() {
     $this->ensureMyTable();
     // Add the field.
-    $params = $this->options['group_type'] != 'group' ? array('function' => $this->options['group_type']) : array();
+    $params = $this->options['group_type'] != 'group' ? ['function' => $this->options['group_type']] : [];
     $this->field_alias = $this->query->addField($this->tableAlias, $this->realField, NULL, $params);
 
     $this->addAdditionalFields();
@@ -165,11 +165,11 @@ protected function addAdditionalFields($fields = NULL) {
       $fields = $this->additional_fields;
     }
 
-    $group_params = array();
+    $group_params = [];
     if ($this->options['group_type'] != 'group') {
-      $group_params = array(
+      $group_params = [
         'function' => $this->options['group_type'],
-      );
+      ];
     }
 
     if (!empty($fields) && is_array($fields)) {
@@ -183,12 +183,12 @@ protected function addAdditionalFields($fields = NULL) {
           }
 
           if (empty($table_alias)) {
-            debug(t('Handler @handler tried to add additional_field @identifier but @table could not be added!', array('@handler' => $this->definition['id'], '@identifier' => $identifier, '@table' => $info['table'])));
+            debug(t('Handler @handler tried to add additional_field @identifier but @table could not be added!', ['@handler' => $this->definition['id'], '@identifier' => $identifier, '@table' => $info['table']]));
             $this->aliases[$identifier] = 'broken';
             continue;
           }
 
-          $params = array();
+          $params = [];
           if (!empty($info['params'])) {
             $params = $info['params'];
           }
@@ -210,7 +210,7 @@ public function clickSort($order) {
     if (isset($this->field_alias)) {
       // Since fields should always have themselves already added, just
       // add a sort on the field.
-      $params = $this->options['group_type'] != 'group' ? array('function' => $this->options['group_type']) : array();
+      $params = $this->options['group_type'] != 'group' ? ['function' => $this->options['group_type']] : [];
       $this->query->addOrderBy(NULL, NULL, $order, $this->field_alias, $params);
     }
   }
@@ -307,10 +307,10 @@ public function getElements() {
     static $elements = NULL;
     if (!isset($elements)) {
       // @todo Add possible html5 elements.
-      $elements = array(
+      $elements = [
         '' => $this->t('- Use default -'),
         '0' => $this->t('- None -')
-      );
+      ];
       $elements += \Drupal::config('views.settings')->get('field_rewrite_elements');
     }
 
@@ -334,10 +334,10 @@ public function elementClasses($row_index = NULL) {
    */
   public function tokenizeValue($value, $row_index = NULL) {
     if (strpos($value, '{{') !== FALSE) {
-      $fake_item = array(
+      $fake_item = [
         'alter_text' => TRUE,
         'text' => $value,
-      );
+      ];
 
       // Use isset() because empty() will trigger on 0 and 0 is
       // the first row.
@@ -421,60 +421,60 @@ public function useStringGroupBy() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['label'] = array('default' => '');
+    $options['label'] = ['default' => ''];
     // Some styles (for example table) should have labels enabled by default.
     $style = $this->view->getStyle();
     if (isset($style) && $style->defaultFieldLabels()) {
       $options['label']['default'] = $this->definition['title'];
     }
 
-    $options['exclude'] = array('default' => FALSE);
-    $options['alter'] = array(
-      'contains' => array(
-        'alter_text' => array('default' => FALSE),
-        'text' => array('default' => ''),
-        'make_link' => array('default' => FALSE),
-        'path' => array('default' => ''),
-        'absolute' => array('default' => FALSE),
-        'external' => array('default' => FALSE),
-        'replace_spaces' => array('default' => FALSE),
-        'path_case' => array('default' => 'none'),
-        'trim_whitespace' => array('default' => FALSE),
-        'alt' => array('default' => ''),
-        'rel' => array('default' => ''),
-        'link_class' => array('default' => ''),
-        'prefix' => array('default' => ''),
-        'suffix' => array('default' => ''),
-        'target' => array('default' => ''),
-        'nl2br' => array('default' => FALSE),
-        'max_length' => array('default' => 0),
-        'word_boundary' => array('default' => TRUE),
-        'ellipsis' => array('default' => TRUE),
-        'more_link' => array('default' => FALSE),
-        'more_link_text' => array('default' => ''),
-        'more_link_path' => array('default' => ''),
-        'strip_tags' => array('default' => FALSE),
-        'trim' => array('default' => FALSE),
-        'preserve_tags' => array('default' => ''),
-        'html' => array('default' => FALSE),
-      ),
-    );
-    $options['element_type'] = array('default' => '');
-    $options['element_class'] = array('default' => '');
+    $options['exclude'] = ['default' => FALSE];
+    $options['alter'] = [
+      'contains' => [
+        'alter_text' => ['default' => FALSE],
+        'text' => ['default' => ''],
+        'make_link' => ['default' => FALSE],
+        'path' => ['default' => ''],
+        'absolute' => ['default' => FALSE],
+        'external' => ['default' => FALSE],
+        'replace_spaces' => ['default' => FALSE],
+        'path_case' => ['default' => 'none'],
+        'trim_whitespace' => ['default' => FALSE],
+        'alt' => ['default' => ''],
+        'rel' => ['default' => ''],
+        'link_class' => ['default' => ''],
+        'prefix' => ['default' => ''],
+        'suffix' => ['default' => ''],
+        'target' => ['default' => ''],
+        'nl2br' => ['default' => FALSE],
+        'max_length' => ['default' => 0],
+        'word_boundary' => ['default' => TRUE],
+        'ellipsis' => ['default' => TRUE],
+        'more_link' => ['default' => FALSE],
+        'more_link_text' => ['default' => ''],
+        'more_link_path' => ['default' => ''],
+        'strip_tags' => ['default' => FALSE],
+        'trim' => ['default' => FALSE],
+        'preserve_tags' => ['default' => ''],
+        'html' => ['default' => FALSE],
+      ],
+    ];
+    $options['element_type'] = ['default' => ''];
+    $options['element_class'] = ['default' => ''];
 
-    $options['element_label_type'] = array('default' => '');
-    $options['element_label_class'] = array('default' => '');
-    $options['element_label_colon'] = array('default' => TRUE);
+    $options['element_label_type'] = ['default' => ''];
+    $options['element_label_class'] = ['default' => ''];
+    $options['element_label_colon'] = ['default' => TRUE];
 
-    $options['element_wrapper_type'] = array('default' => '');
-    $options['element_wrapper_class'] = array('default' => '');
+    $options['element_wrapper_type'] = ['default' => ''];
+    $options['element_wrapper_class'] = ['default' => ''];
 
-    $options['element_default_classes'] = array('default' => TRUE);
+    $options['element_default_classes'] = ['default' => TRUE];
 
-    $options['empty'] = array('default' => '');
-    $options['hide_empty'] = array('default' => FALSE);
-    $options['empty_zero'] = array('default' => FALSE);
-    $options['hide_alter_empty'] = array('default' => TRUE);
+    $options['empty'] = ['default' => ''];
+    $options['hide_empty'] = ['default' => FALSE];
+    $options['empty_zero'] = ['default' => FALSE];
+    $options['hide_alter_empty'] = ['default' => TRUE];
 
     return $options;
   }
@@ -484,8 +484,8 @@ protected function defineOptions() {
    */
   public function submitOptionsForm(&$form, FormStateInterface $form_state) {
     $options = &$form_state->getValue('options');
-    $types = array('element_type', 'element_label_type', 'element_wrapper_type');
-    $classes = array_combine(array('element_class', 'element_label_class', 'element_wrapper_class'), $types);
+    $types = ['element_type', 'element_label_type', 'element_wrapper_type'];
+    $classes = array_combine(['element_class', 'element_label_class', 'element_wrapper_class'], $types);
 
     foreach ($types as $type) {
       if (!$options[$type . '_enable']) {
@@ -513,349 +513,349 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     $label = $this->label();
-    $form['custom_label'] = array(
+    $form['custom_label'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Create a label'),
       '#default_value' => $label !== '',
       '#weight' => -103,
-    );
-    $form['label'] = array(
+    ];
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Label'),
       '#default_value' => $label,
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[custom_label]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[custom_label]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#weight' => -102,
-    );
-    $form['element_label_colon'] = array(
+    ];
+    $form['element_label_colon'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Place a colon after the label'),
       '#default_value' => $this->options['element_label_colon'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[custom_label]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[custom_label]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#weight' => -101,
-    );
+    ];
 
-    $form['exclude'] = array(
+    $form['exclude'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Exclude from display'),
       '#default_value' => $this->options['exclude'],
       '#description' => $this->t('Enable to load this field as hidden. Often used to group fields, or to use as token in another field.'),
       '#weight' => -100,
-    );
+    ];
 
-    $form['style_settings'] = array(
+    $form['style_settings'] = [
       '#type' => 'details',
       '#title' => $this->t('Style settings'),
       '#weight' => 99,
-    );
+    ];
 
-    $form['element_type_enable'] = array(
+    $form['element_type_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Customize field HTML'),
       '#default_value' => !empty($this->options['element_type']) || (string) $this->options['element_type'] == '0' || !empty($this->options['element_class']) || (string) $this->options['element_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_type'] = array(
+    ];
+    $form['element_type'] = [
       '#title' => $this->t('HTML element'),
       '#options' => $this->getElements(),
       '#type' => 'select',
       '#default_value' => $this->options['element_type'],
       '#description' => $this->t('Choose the HTML element to wrap around this field, e.g. H1, H2, etc.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['element_class_enable'] = array(
+    $form['element_class_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Create a CSS class'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#default_value' => !empty($this->options['element_class']) || (string) $this->options['element_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_class'] = array(
+    ];
+    $form['element_class'] = [
       '#title' => $this->t('CSS class'),
       '#description' => $this->t('You may use token substitutions from the rewriting section in this class.'),
       '#type' => 'textfield',
       '#default_value' => $this->options['element_class'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_type_enable]"]' => array('checked' => TRUE),
-          ':input[name="options[element_class_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_type_enable]"]' => ['checked' => TRUE],
+          ':input[name="options[element_class_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['element_label_type_enable'] = array(
+    $form['element_label_type_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Customize label HTML'),
       '#default_value' => !empty($this->options['element_label_type']) || (string) $this->options['element_label_type'] == '0' || !empty($this->options['element_label_class']) || (string) $this->options['element_label_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_label_type'] = array(
+    ];
+    $form['element_label_type'] = [
       '#title' => $this->t('Label HTML element'),
       '#options' => $this->getElements(FALSE),
       '#type' => 'select',
       '#default_value' => $this->options['element_label_type'],
       '#description' => $this->t('Choose the HTML element to wrap around this label, e.g. H1, H2, etc.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_label_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_label_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
-    $form['element_label_class_enable'] = array(
+    ];
+    $form['element_label_class_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Create a CSS class'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_label_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_label_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#default_value' => !empty($this->options['element_label_class']) || (string) $this->options['element_label_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_label_class'] = array(
+    ];
+    $form['element_label_class'] = [
       '#title' => $this->t('CSS class'),
       '#description' => $this->t('You may use token substitutions from the rewriting section in this class.'),
       '#type' => 'textfield',
       '#default_value' => $this->options['element_label_class'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_label_type_enable]"]' => array('checked' => TRUE),
-          ':input[name="options[element_label_class_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_label_type_enable]"]' => ['checked' => TRUE],
+          ':input[name="options[element_label_class_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['element_wrapper_type_enable'] = array(
+    $form['element_wrapper_type_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Customize field and label wrapper HTML'),
       '#default_value' => !empty($this->options['element_wrapper_type']) || (string) $this->options['element_wrapper_type'] == '0' || !empty($this->options['element_wrapper_class']) || (string) $this->options['element_wrapper_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_wrapper_type'] = array(
+    ];
+    $form['element_wrapper_type'] = [
       '#title' => $this->t('Wrapper HTML element'),
       '#options' => $this->getElements(FALSE),
       '#type' => 'select',
       '#default_value' => $this->options['element_wrapper_type'],
       '#description' => $this->t('Choose the HTML element to wrap around this field and label, e.g. H1, H2, etc. This may not be used if the field and label are not rendered together, such as with a table.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_wrapper_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_wrapper_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['element_wrapper_class_enable'] = array(
+    $form['element_wrapper_class_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Create a CSS class'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_wrapper_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_wrapper_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#default_value' => !empty($this->options['element_wrapper_class']) || (string) $this->options['element_wrapper_class'] == '0',
       '#fieldset' => 'style_settings',
-    );
-    $form['element_wrapper_class'] = array(
+    ];
+    $form['element_wrapper_class'] = [
       '#title' => $this->t('CSS class'),
       '#description' => $this->t('You may use token substitutions from the rewriting section in this class.'),
       '#type' => 'textfield',
       '#default_value' => $this->options['element_wrapper_class'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[element_wrapper_class_enable]"]' => array('checked' => TRUE),
-          ':input[name="options[element_wrapper_type_enable]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="options[element_wrapper_class_enable]"]' => ['checked' => TRUE],
+          ':input[name="options[element_wrapper_type_enable]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['element_default_classes'] = array(
+    $form['element_default_classes'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Add default classes'),
       '#default_value' => $this->options['element_default_classes'],
       '#description' => $this->t('Use default Views classes to identify the field, field label and field content.'),
       '#fieldset' => 'style_settings',
-    );
+    ];
 
-    $form['alter'] = array(
+    $form['alter'] = [
       '#title' => $this->t('Rewrite results'),
       '#type' => 'details',
       '#weight' => 100,
-    );
+    ];
 
     if ($this->allowAdvancedRender()) {
       $form['alter']['#tree'] = TRUE;
-      $form['alter']['alter_text'] = array(
+      $form['alter']['alter_text'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Override the output of this field with custom text'),
         '#default_value' => $this->options['alter']['alter_text'],
-      );
+      ];
 
-      $form['alter']['text'] = array(
+      $form['alter']['text'] = [
         '#title' => $this->t('Text'),
         '#type' => 'textarea',
         '#default_value' => $this->options['alter']['text'],
-        '#description' => $this->t('The text to display for this field. You may include HTML or <a href=":url">Twig</a>. You may enter data from this view as per the "Replacement patterns" below.', array(':url' => CoreUrl::fromUri('http://twig.sensiolabs.org/documentation')->toString())),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][alter_text]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#description' => $this->t('The text to display for this field. You may include HTML or <a href=":url">Twig</a>. You may enter data from this view as per the "Replacement patterns" below.', [':url' => CoreUrl::fromUri('http://twig.sensiolabs.org/documentation')->toString()]),
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][alter_text]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['make_link'] = array(
+      $form['alter']['make_link'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Output this field as a custom link'),
         '#default_value' => $this->options['alter']['make_link'],
-      );
-      $form['alter']['path'] = array(
+      ];
+      $form['alter']['path'] = [
         '#title' => $this->t('Link path'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['path'],
         '#description' => $this->t('The Drupal path or absolute URL for this link. You may enter data from this view as per the "Replacement patterns" below.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#maxlength' => 255,
-      );
-      $form['alter']['absolute'] = array(
+      ];
+      $form['alter']['absolute'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Use absolute path'),
         '#default_value' => $this->options['alter']['absolute'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['replace_spaces'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['replace_spaces'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Replace spaces with dashes'),
         '#default_value' => $this->options['alter']['replace_spaces'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['external'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['external'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('External server URL'),
         '#default_value' => $this->options['alter']['external'],
         '#description' => $this->t("Links to an external server using a full URL: e.g. 'http://www.example.com' or 'www.example.com'."),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['path_case'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['path_case'] = [
         '#type' => 'select',
         '#title' => $this->t('Transform the case'),
         '#description' => $this->t('When printing URL paths, how to transform the case of the filter value.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-       '#options' => array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+       '#options' => [
           'none' => $this->t('No transform'),
           'upper' => $this->t('Upper case'),
           'lower' => $this->t('Lower case'),
           'ucfirst' => $this->t('Capitalize first letter'),
           'ucwords' => $this->t('Capitalize each word'),
-        ),
+        ],
         '#default_value' => $this->options['alter']['path_case'],
-      );
-      $form['alter']['link_class'] = array(
+      ];
+      $form['alter']['link_class'] = [
         '#title' => $this->t('Link class'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['link_class'],
         '#description' => $this->t('The CSS class to apply to the link.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['alt'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['alt'] = [
         '#title' => $this->t('Title text'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['alt'],
         '#description' => $this->t('Text to place as "title" text which most browsers display as a tooltip when hovering over the link.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['rel'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['rel'] = [
         '#title' => $this->t('Rel Text'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['rel'],
         '#description' => $this->t('Include Rel attribute for use in lightbox2 or other javascript utility.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['prefix'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['prefix'] = [
         '#title' => $this->t('Prefix text'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['prefix'],
         '#description' => $this->t('Any text to display before this link. You may include HTML.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['suffix'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['suffix'] = [
         '#title' => $this->t('Suffix text'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['suffix'],
         '#description' => $this->t('Any text to display after this link. You may include HTML.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['target'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['target'] = [
         '#title' => $this->t('Target'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['target'],
         '#description' => $this->t("Target of the link, such as _blank, _parent or an iframe's name. This field is rarely used."),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
 
       // Get a list of the available fields and arguments for token replacement.
@@ -871,8 +871,8 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       $options[$optgroup_fields]["{{ {$this->options['id']} }}"] = substr(strrchr($this->adminLabel(), ":"), 2 );
 
       foreach ($this->view->display_handler->getHandlers('argument') as $arg => $handler) {
-        $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', array('@argument' => $handler->adminLabel()));
-        $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', array('@argument' => $handler->adminLabel()));
+        $options[$optgroup_arguments]["{{ arguments.$arg }}"] = $this->t('@argument title', ['@argument' => $handler->adminLabel()]);
+        $options[$optgroup_arguments]["{{ raw_arguments.$arg }}"] = $this->t('@argument input', ['@argument' => $handler->adminLabel()]);
       }
 
       $this->documentSelfTokens($options[$optgroup_fields]);
@@ -890,14 +890,14 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         ];
         foreach (array_keys($options) as $type) {
           if (!empty($options[$type])) {
-            $items = array();
+            $items = [];
             foreach ($options[$type] as $key => $value) {
               $items[] = $key . ' == ' . $value;
             }
-            $item_list = array(
+            $item_list = [
               '#theme' => 'item_list',
               '#items' => $items,
-            );
+            ];
             $output[] = $item_list;
           }
         }
@@ -906,181 +906,181 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       // run. It also has an extra div because the dependency wants to hide
       // the parent in situations like this, so we need a second div to
       // make this work.
-      $form['alter']['help'] = array(
+      $form['alter']['help'] = [
         '#type' => 'details',
         '#title' => $this->t('Replacement patterns'),
         '#value' => $output,
-        '#states' => array(
-          'visible' => array(
-            array(
-              ':input[name="options[alter][make_link]"]' => array('checked' => TRUE),
-            ),
-            array(
-              ':input[name="options[alter][alter_text]"]' => array('checked' => TRUE),
-            ),
-            array(
-              ':input[name="options[alter][more_link]"]' => array('checked' => TRUE),
-            ),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            [
+              ':input[name="options[alter][make_link]"]' => ['checked' => TRUE],
+            ],
+            [
+              ':input[name="options[alter][alter_text]"]' => ['checked' => TRUE],
+            ],
+            [
+              ':input[name="options[alter][more_link]"]' => ['checked' => TRUE],
+            ],
+          ],
+        ],
+      ];
 
-      $form['alter']['trim'] = array(
+      $form['alter']['trim'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Trim this field to a maximum number of characters'),
         '#default_value' => $this->options['alter']['trim'],
-      );
+      ];
 
-      $form['alter']['max_length'] = array(
+      $form['alter']['max_length'] = [
         '#title' => $this->t('Maximum number of characters'),
         '#type' => 'textfield',
         '#default_value' => $this->options['alter']['max_length'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['word_boundary'] = array(
+      $form['alter']['word_boundary'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Trim only on a word boundary'),
         '#description' => $this->t('If checked, this field be trimmed only on a word boundary. This is guaranteed to be the maximum characters stated or less. If there are no word boundaries this could trim a field to nothing.'),
         '#default_value' => $this->options['alter']['word_boundary'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['ellipsis'] = array(
+      $form['alter']['ellipsis'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Add "…" at the end of trimmed text'),
         '#default_value' => $this->options['alter']['ellipsis'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['more_link'] = array(
+      $form['alter']['more_link'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Add a read-more link if output is trimmed'),
         '#default_value' => $this->options['alter']['more_link'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['more_link_text'] = array(
+      $form['alter']['more_link_text'] = [
         '#type' => 'textfield',
         '#title' => $this->t('More link label'),
         '#default_value' => $this->options['alter']['more_link_text'],
         '#description' => $this->t('You may use the "Replacement patterns" above.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-            ':input[name="options[alter][more_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
-      $form['alter']['more_link_path'] = array(
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+            ':input[name="options[alter][more_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
+      $form['alter']['more_link_path'] = [
         '#type' => 'textfield',
         '#title' => $this->t('More link path'),
         '#default_value' => $this->options['alter']['more_link_path'],
         '#description' => $this->t('This can be an internal Drupal path such as node/add or an external URL such as "https://www.drupal.org". You may use the "Replacement patterns" above.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-            ':input[name="options[alter][more_link]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+            ':input[name="options[alter][more_link]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['html'] = array(
+      $form['alter']['html'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Field can contain HTML'),
         '#description' => $this->t('An HTML corrector will be run to ensure HTML tags are properly closed after trimming.'),
         '#default_value' => $this->options['alter']['html'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][trim]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][trim]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['strip_tags'] = array(
+      $form['alter']['strip_tags'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Strip HTML tags'),
         '#default_value' => $this->options['alter']['strip_tags'],
-      );
+      ];
 
-      $form['alter']['preserve_tags'] = array(
+      $form['alter']['preserve_tags'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Preserve certain tags'),
         '#description' => $this->t('List the tags that need to be preserved during the stripping process. example &quot;&lt;p&gt; &lt;br&gt;&quot; which will preserve all p and br elements'),
         '#default_value' => $this->options['alter']['preserve_tags'],
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[alter][strip_tags]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[alter][strip_tags]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
 
-      $form['alter']['trim_whitespace'] = array(
+      $form['alter']['trim_whitespace'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Remove whitespace'),
         '#default_value' => $this->options['alter']['trim_whitespace'],
-      );
+      ];
 
-      $form['alter']['nl2br'] = array(
+      $form['alter']['nl2br'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Convert newlines to HTML &lt;br&gt; tags'),
         '#default_value' => $this->options['alter']['nl2br'],
-      );
+      ];
     }
 
-    $form['empty_field_behavior'] = array(
+    $form['empty_field_behavior'] = [
       '#type' => 'details',
       '#title' => $this->t('No results behavior'),
       '#weight' => 100,
-    );
+    ];
 
-    $form['empty'] = array(
+    $form['empty'] = [
       '#type' => 'textarea',
       '#title' => $this->t('No results text'),
       '#default_value' => $this->options['empty'],
       '#description' => $this->t('Provide text to display if this field contains an empty result. You may include HTML. You may enter data from this view as per the "Replacement patterns" in the "Rewrite Results" section below.'),
       '#fieldset' => 'empty_field_behavior',
-    );
+    ];
 
-    $form['empty_zero'] = array(
+    $form['empty_zero'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Count the number 0 as empty'),
       '#default_value' => $this->options['empty_zero'],
       '#description' => $this->t('Enable to display the "no results text" if the field contains the number 0.'),
       '#fieldset' => 'empty_field_behavior',
-    );
+    ];
 
-    $form['hide_empty'] = array(
+    $form['hide_empty'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Hide if empty'),
       '#default_value' => $this->options['hide_empty'],
       '#description' => $this->t('Enable to hide this field if it is empty. Note that the field label or rewritten output may still be displayed. To hide labels, check the style or row style settings for empty fields. To hide rewritten content, check the "Hide rewriting if empty" checkbox.'),
       '#fieldset' => 'empty_field_behavior',
-    );
+    ];
 
-    $form['hide_alter_empty'] = array(
+    $form['hide_alter_empty'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Hide rewriting if empty'),
       '#default_value' => $this->options['hide_alter_empty'],
       '#description' => $this->t('Do not display rewritten content if this field is empty.'),
       '#fieldset' => 'empty_field_behavior',
-    );
+    ];
   }
 
   /**
@@ -1152,7 +1152,7 @@ public function advancedRender(ResultRow $values) {
     if ($this->allowAdvancedRender()) {
       $tokens = NULL;
       if ($this instanceof MultiItemsFieldHandlerInterface) {
-        $items = array();
+        $items = [];
         foreach ($raw_items as $count => $item) {
           $value = $this->render_item($count, $item);
           if (is_array($value)) {
@@ -1169,7 +1169,7 @@ public function advancedRender(ResultRow $values) {
         $value = $this->renderItems($items);
       }
       else {
-        $alter = array('phase' => static::RENDER_TEXT_PHASE_COMPLETELY) + $this->options['alter'];
+        $alter = ['phase' => static::RENDER_TEXT_PHASE_COMPLETELY] + $this->options['alter'];
         $value = $this->renderText($alter);
       }
 
@@ -1291,13 +1291,13 @@ public function renderText($alter) {
 
         // @todo Views should expect and store a leading /. See
         //   https://www.drupal.org/node/2423913.
-        $options = array(
-          'attributes' => array(
-            'class' => array(
+        $options = [
+          'attributes' => [
+            'class' => [
               'views-more-link',
-            ),
-          ),
-        );
+            ],
+          ],
+        ];
         if (UrlHelper::isExternal($more_link_path)) {
           $more_link_url = CoreUrl::fromUri($more_link_path, $options);
         }
@@ -1375,7 +1375,7 @@ protected function renderTrimText($alter, $value) {
    * the user.
    */
   protected function renderAsLink($alter, $text, $tokens) {
-    $options = array(
+    $options = [
       'absolute' => !empty($alter['absolute']) ? TRUE : FALSE,
       'alias' => FALSE,
       'entity' => NULL,
@@ -1383,7 +1383,7 @@ protected function renderAsLink($alter, $text, $tokens) {
       'fragment' => NULL,
       'language' => NULL,
       'query' => [],
-    );
+    ];
 
     $alter += [
       'path' => NULL
@@ -1488,7 +1488,7 @@ protected function renderAsLink($alter, $text, $tokens) {
     }
 
     if (isset($url['fragment'])) {
-      $path = strtr($path, array('#' . $url['fragment'] => ''));
+      $path = strtr($path, ['#' . $url['fragment'] => '']);
       // If the path is empty we want to have a fragment for the current site.
       if ($path == '') {
         $options['external'] = TRUE;
@@ -1504,7 +1504,7 @@ protected function renderAsLink($alter, $text, $tokens) {
 
     $class = $this->viewsTokenReplace($alter['link_class'], $tokens);
     if ($class) {
-      $options['attributes']['class'] = array($class);
+      $options['attributes']['class'] = [$class];
     }
 
     if (!empty($alter['rel']) && $rel = $this->viewsTokenReplace($alter['rel'], $tokens)) {
@@ -1534,7 +1534,7 @@ protected function renderAsLink($alter, $text, $tokens) {
       // \Drupal\Core\Utility\LinkGeneratorInterface::generate().
       $options['query'] = UrlHelper::buildQuery($alter['query']);
       $options['query'] = $this->viewsTokenReplace($options['query'], $tokens);
-      $query = array();
+      $query = [];
       parse_str($options['query'], $query);
       $options['query'] = $query;
     }
@@ -1582,7 +1582,7 @@ protected function renderAsLink($alter, $text, $tokens) {
    * {@inheritdoc}
    */
   public function getRenderTokens($item) {
-    $tokens = array();
+    $tokens = [];
     if (!empty($this->view->build_info['substitutions'])) {
       $tokens = $this->view->build_info['substitutions'];
     }
@@ -1677,8 +1677,8 @@ protected function getFieldTokenPlaceholder() {
    * @return
    *   An array of available tokens, with nested keys representative of the array structure.
    */
-  protected function getTokenValuesRecursive(array $array, array $parent_keys = array()) {
-    $tokens = array();
+  protected function getTokenValuesRecursive(array $array, array $parent_keys = []) {
+    $tokens = [];
 
     foreach ($array as $param => $val) {
       if (is_array($val)) {
@@ -1727,12 +1727,12 @@ protected function documentSelfTokens(&$tokens) { }
    */
   function theme(ResultRow $values) {
     $renderer = $this->getRenderer();
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#field' => $this,
       '#row' => $values,
-    );
+    ];
     $output = $renderer->render($build);
 
     // Set the bubbleable rendering metadata on $view->element. This ensures the
@@ -1744,7 +1744,7 @@ function theme(ResultRow $values) {
   }
 
   public function themeFunctions() {
-    $themes = array();
+    $themes = [];
     $hook = 'views_view_field';
 
     $display = $this->view->display_handler->display;
diff --git a/core/modules/views/src/Plugin/views/field/FileSize.php b/core/modules/views/src/Plugin/views/field/FileSize.php
index af184d3..c8a0b95 100644
--- a/core/modules/views/src/Plugin/views/field/FileSize.php
+++ b/core/modules/views/src/Plugin/views/field/FileSize.php
@@ -20,7 +20,7 @@ class FileSize extends FieldPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['file_size_display'] = array('default' => 'formatted');
+    $options['file_size_display'] = ['default' => 'formatted'];
 
     return $options;
   }
@@ -30,14 +30,14 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['file_size_display'] = array(
+    $form['file_size_display'] = [
       '#title' => $this->t('File size display'),
       '#type' => 'select',
-      '#options' => array(
+      '#options' => [
         'formatted' => $this->t('Formatted (in KB or MB)'),
         'bytes' => $this->t('Raw bytes'),
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/field/LanguageField.php b/core/modules/views/src/Plugin/views/field/LanguageField.php
index f51f2fb..53e2c84 100644
--- a/core/modules/views/src/Plugin/views/field/LanguageField.php
+++ b/core/modules/views/src/Plugin/views/field/LanguageField.php
@@ -19,7 +19,7 @@ class LanguageField extends FieldPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['native_language'] = array('default' => FALSE);
+    $options['native_language'] = ['default' => FALSE];
 
     return $options;
   }
@@ -29,11 +29,11 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['native_language'] = array(
+    $form['native_language'] = [
       '#title' => $this->t('Display in native language'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['native_language'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/field/LinkBase.php b/core/modules/views/src/Plugin/views/field/LinkBase.php
index ebe1e9d..31dca4c 100644
--- a/core/modules/views/src/Plugin/views/field/LinkBase.php
+++ b/core/modules/views/src/Plugin/views/field/LinkBase.php
@@ -82,7 +82,7 @@ protected function currentUser() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['text'] = array('default' => $this->getDefaultLabel());
+    $options['text'] = ['default' => $this->getDefaultLabel()];
     return $options;
   }
 
diff --git a/core/modules/views/src/Plugin/views/field/Links.php b/core/modules/views/src/Plugin/views/field/Links.php
index 6f16957..4e731a9 100644
--- a/core/modules/views/src/Plugin/views/field/Links.php
+++ b/core/modules/views/src/Plugin/views/field/Links.php
@@ -26,8 +26,8 @@ public function usesGroupBy() {
   public function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['fields'] = array('default' => array());
-    $options['destination'] = array('default' => TRUE);
+    $options['fields'] = ['default' => []];
+    $options['destination'] = ['default' => TRUE];
 
     return $options;
   }
@@ -39,19 +39,19 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     // Only show fields that precede this one.
     $field_options = $this->getPreviousFieldLabels();
-    $form['fields'] = array(
+    $form['fields'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Fields'),
       '#description' => $this->t('Fields to be included as links.'),
       '#options' => $field_options,
       '#default_value' => $this->options['fields'],
-    );
-    $form['destination'] = array(
+    ];
+    $form['destination'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Include destination'),
       '#description' => $this->t('Include a "destination" parameter in the link to return the user to the original view upon completing the link action.'),
       '#default_value' => $this->options['destination'],
-    );
+    ];
   }
 
   /**
@@ -61,7 +61,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    *   The links which are used by the render function.
    */
   protected function getLinks() {
-    $links = array();
+    $links = [];
     foreach ($this->options['fields'] as $field) {
       if (empty($this->view->field[$field]->last_render_text)) {
         continue;
@@ -76,13 +76,13 @@ protected function getLinks() {
         $url = $this->view->field[$field]->options['alter']['url'];
       }
       // Make sure that tokens are replaced for this paths as well.
-      $tokens = $this->getRenderTokens(array());
+      $tokens = $this->getRenderTokens([]);
       $path = strip_tags(Html::decodeEntities($this->viewsTokenReplace($path, $tokens)));
 
-      $links[$field] = array(
+      $links[$field] = [
         'url' => $path ? UrlObject::fromUri('internal:/' . $path) : $url,
         'title' => $title,
-      );
+      ];
       if (!empty($this->options['destination'])) {
         $links[$field]['query'] = \Drupal::destination()->getAsArray();
       }
diff --git a/core/modules/views/src/Plugin/views/field/MachineName.php b/core/modules/views/src/Plugin/views/field/MachineName.php
index feba80e..ea6a0c4 100644
--- a/core/modules/views/src/Plugin/views/field/MachineName.php
+++ b/core/modules/views/src/Plugin/views/field/MachineName.php
@@ -36,7 +36,7 @@ public function getValueOptions() {
       }
     }
     else {
-      $this->valueOptions = array();
+      $this->valueOptions = [];
     }
   }
 
@@ -45,7 +45,7 @@ public function getValueOptions() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['machine_name'] = array('default' => FALSE);
+    $options['machine_name'] = ['default' => FALSE];
 
     return $options;
   }
@@ -56,12 +56,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['machine_name'] = array(
+    $form['machine_name'] = [
       '#title' => $this->t('Output machine name'),
       '#description' => $this->t('Display field as machine name.'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['machine_name']),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/field/Markup.php b/core/modules/views/src/Plugin/views/field/Markup.php
index 7ca789f..883bd56 100644
--- a/core/modules/views/src/Plugin/views/field/Markup.php
+++ b/core/modules/views/src/Plugin/views/field/Markup.php
@@ -29,7 +29,7 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     $this->format = $this->definition['format'];
 
-    $this->additional_fields = array();
+    $this->additional_fields = [];
     if (is_array($this->format)) {
       $this->additional_fields['format'] = $this->format;
     }
diff --git a/core/modules/views/src/Plugin/views/field/NumericField.php b/core/modules/views/src/Plugin/views/field/NumericField.php
index 0cf4c88..8b6a209 100644
--- a/core/modules/views/src/Plugin/views/field/NumericField.php
+++ b/core/modules/views/src/Plugin/views/field/NumericField.php
@@ -25,14 +25,14 @@ class NumericField extends FieldPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['set_precision'] = array('default' => FALSE);
-    $options['precision'] = array('default' => 0);
-    $options['decimal'] = array('default' => '.');
-    $options['separator'] = array('default' => ',');
-    $options['format_plural'] = array('default' => FALSE);
-    $options['format_plural_string'] = array('default' => '1' . LOCALE_PLURAL_DELIMITER . '@count');
-    $options['prefix'] = array('default' => '');
-    $options['suffix'] = array('default' => '');
+    $options['set_precision'] = ['default' => FALSE];
+    $options['precision'] = ['default' => 0];
+    $options['decimal'] = ['default' => '.'];
+    $options['separator'] = ['default' => ','];
+    $options['format_plural'] = ['default' => FALSE];
+    $options['format_plural_string'] = ['default' => '1' . LOCALE_PLURAL_DELIMITER . '@count'];
+    $options['prefix'] = ['default' => ''];
+    $options['suffix'] = ['default' => ''];
 
     return $options;
   }
@@ -42,72 +42,72 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     if (!empty($this->definition['float'])) {
-      $form['set_precision'] = array(
+      $form['set_precision'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Round'),
         '#description' => $this->t('If checked, the number will be rounded.'),
         '#default_value' => $this->options['set_precision'],
-      );
-      $form['precision'] = array(
+      ];
+      $form['precision'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Precision'),
         '#default_value' => $this->options['precision'],
         '#description' => $this->t('Specify how many digits to print after the decimal point.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[set_precision]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#states' => [
+          'visible' => [
+            ':input[name="options[set_precision]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#size' => 2,
-      );
-      $form['decimal'] = array(
+      ];
+      $form['decimal'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Decimal point'),
         '#default_value' => $this->options['decimal'],
         '#description' => $this->t('What single character to use as a decimal point.'),
         '#size' => 2,
-      );
+      ];
     }
-    $form['separator'] = array(
+    $form['separator'] = [
       '#type' => 'select',
       '#title' => $this->t('Thousands marker'),
-      '#options' => array(
+      '#options' => [
         '' => $this->t('- None -'),
         ',' => $this->t('Comma'),
         ' ' => $this->t('Space'),
         '.' => $this->t('Decimal'),
         '\'' => $this->t('Apostrophe'),
-      ),
+      ],
       '#default_value' => $this->options['separator'],
       '#description' => $this->t('What single character to use as the thousands separator.'),
       '#size' => 2,
-    );
-    $form['format_plural'] = array(
+    ];
+    $form['format_plural'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Format plural'),
       '#description' => $this->t('If checked, special handling will be used for plurality.'),
       '#default_value' => $this->options['format_plural'],
-    );
-    $form['format_plural_string'] = array(
+    ];
+    $form['format_plural_string'] = [
       '#type' => 'value',
       '#default_value' => $this->options['format_plural_string'],
-    );
+    ];
 
     $plural_array = explode(LOCALE_PLURAL_DELIMITER, $this->options['format_plural_string']);
     $plurals = $this->getNumberOfPlurals($this->view->storage->get('langcode'));
     for ($i = 0; $i < $plurals; $i++) {
-      $form['format_plural_values'][$i] = array(
+      $form['format_plural_values'][$i] = [
         '#type' => 'textfield',
         // @todo Should use better labels https://www.drupal.org/node/2499639
         '#title' => ($i == 0 ? $this->t('Singular form') : $this->formatPlural($i, 'First plural form', '@count. plural form')),
         '#default_value' => isset($plural_array[$i]) ? $plural_array[$i] : '',
         '#description' => $this->t('Text to use for this variant, @count will be replaced with the value.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[format_plural]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[format_plural]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
     }
     if ($plurals == 2) {
       // Simplify interface text for the most common case.
@@ -116,18 +116,18 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       $form['format_plural_values'][1]['#description'] = $this->t('Text to use for the plural form, @count will be replaced with the value.');
     }
 
-    $form['prefix'] = array(
+    $form['prefix'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Prefix'),
       '#default_value' => $this->options['prefix'],
       '#description' => $this->t('Text to put before the number, such as currency symbol.'),
-    );
-    $form['suffix'] = array(
+    ];
+    $form['suffix'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Suffix'),
       '#default_value' => $this->options['suffix'],
       '#description' => $this->t('Text to put after the number, such as currency symbol.'),
-    );
+    ];
 
     parent::buildOptionsForm($form, $form_state);
   }
diff --git a/core/modules/views/src/Plugin/views/field/PrerenderList.php b/core/modules/views/src/Plugin/views/field/PrerenderList.php
index aa8f752..f851cbb 100644
--- a/core/modules/views/src/Plugin/views/field/PrerenderList.php
+++ b/core/modules/views/src/Plugin/views/field/PrerenderList.php
@@ -25,7 +25,7 @@
    *
    * @var array
    */
-  public $items = array();
+  public $items = [];
 
   /**
    * {@inheritdoc}
@@ -33,8 +33,8 @@
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['type'] = array('default' => 'separator');
-    $options['separator'] = array('default' => ', ');
+    $options['type'] = ['default' => 'separator'];
+    $options['separator'] = ['default' => ', '];
 
     return $options;
   }
@@ -43,27 +43,27 @@ protected function defineOptions() {
    * {@inheritdoc}
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'radios',
       '#title' => $this->t('Display type'),
-      '#options' => array(
+      '#options' => [
         'ul' => $this->t('Unordered list'),
         'ol' => $this->t('Ordered list'),
         'separator' => $this->t('Simple separator'),
-      ),
+      ],
       '#default_value' => $this->options['type'],
-    );
+    ];
 
-    $form['separator'] = array(
+    $form['separator'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Separator'),
       '#default_value' => $this->options['separator'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[type]"]' => array('value' => 'separator'),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[type]"]' => ['value' => 'separator'],
+        ],
+      ],
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
@@ -83,12 +83,12 @@ public function renderItems($items) {
         ];
       }
       else {
-        $render = array(
+        $render = [
           '#theme' => 'item_list',
           '#items' => $items,
           '#title' => NULL,
           '#list_type' => $this->options['type'],
-        );
+        ];
       }
       return drupal_render($render);
     }
@@ -110,7 +110,7 @@ public function getItems(ResultRow $values) {
       return $this->items[$field];
     }
 
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/field/Serialized.php b/core/modules/views/src/Plugin/views/field/Serialized.php
index 3df1cca..4d74a4f 100644
--- a/core/modules/views/src/Plugin/views/field/Serialized.php
+++ b/core/modules/views/src/Plugin/views/field/Serialized.php
@@ -19,8 +19,8 @@ class Serialized extends FieldPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['format'] = array('default' => 'unserialized');
-    $options['key'] = array('default' => '');
+    $options['format'] = ['default' => 'unserialized'];
+    $options['key'] = ['default' => ''];
     return $options;
   }
 
@@ -30,27 +30,27 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['format'] = array(
+    $form['format'] = [
       '#type' => 'select',
       '#title' => $this->t('Display format'),
       '#description' => $this->t('How should the serialized data be displayed. You can choose a custom array/object key or a print_r on the full output.'),
-      '#options' => array(
+      '#options' => [
         'unserialized' => $this->t('Full data (unserialized)'),
         'serialized' => $this->t('Full data (serialized)'),
         'key' => $this->t('A certain key'),
-      ),
+      ],
       '#default_value' => $this->options['format'],
-    );
-    $form['key'] = array(
+    ];
+    $form['key'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Which key should be displayed'),
       '#default_value' => $this->options['key'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[format]"]' => array('value' => 'key'),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[format]"]' => ['value' => 'key'],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -58,7 +58,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     // Require a key if the format is key.
-    if ($form_state->getValue(array('options', 'format')) == 'key' && $form_state->getValue(array('options', 'key')) == '') {
+    if ($form_state->getValue(['options', 'format']) == 'key' && $form_state->getValue(['options', 'key']) == '') {
       $form_state->setError($form['key'], $this->t('You have to enter a key if you want to display a key of the data.'));
     }
   }
diff --git a/core/modules/views/src/Plugin/views/field/TimeInterval.php b/core/modules/views/src/Plugin/views/field/TimeInterval.php
index d7ec0d3..79cd190 100644
--- a/core/modules/views/src/Plugin/views/field/TimeInterval.php
+++ b/core/modules/views/src/Plugin/views/field/TimeInterval.php
@@ -58,7 +58,7 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['granularity'] = array('default' => 2);
+    $options['granularity'] = ['default' => 2];
 
     return $options;
   }
@@ -69,12 +69,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['granularity'] = array(
+    $form['granularity'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Granularity'),
       '#description' => $this->t('How many different units to display in the string.'),
       '#default_value' => $this->options['granularity'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/field/Url.php b/core/modules/views/src/Plugin/views/field/Url.php
index e847e44..08e1fba 100644
--- a/core/modules/views/src/Plugin/views/field/Url.php
+++ b/core/modules/views/src/Plugin/views/field/Url.php
@@ -21,7 +21,7 @@ class Url extends FieldPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['display_as_link'] = array('default' => TRUE);
+    $options['display_as_link'] = ['default' => TRUE];
 
     return $options;
   }
@@ -30,11 +30,11 @@ protected function defineOptions() {
    * Provide link to the page being visited.
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['display_as_link'] = array(
+    $form['display_as_link'] = [
       '#title' => $this->t('Display as link'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['display_as_link']),
-    );
+    ];
     parent::buildOptionsForm($form, $form_state);
   }
 
diff --git a/core/modules/views/src/Plugin/views/filter/BooleanOperator.php b/core/modules/views/src/Plugin/views/filter/BooleanOperator.php
index 7078032..69b6eba 100644
--- a/core/modules/views/src/Plugin/views/filter/BooleanOperator.php
+++ b/core/modules/views/src/Plugin/views/filter/BooleanOperator.php
@@ -54,7 +54,7 @@ class BooleanOperator extends FilterPluginBase {
    * {@inheritdoc}
    */
   public function operatorOptions($which = 'title') {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       $options[$id] = $info[$which];
     }
@@ -68,22 +68,22 @@ public function operatorOptions($which = 'title') {
    * @return array
    */
   protected function operators() {
-    return array(
-      '=' => array(
+    return [
+      '=' => [
         'title' => $this->t('Is equal to'),
         'method' => 'queryOpBoolean',
         'short' => $this->t('='),
         'values' => 1,
         'query_operator' => static::EQUAL,
-      ),
-      '!=' => array(
+      ],
+      '!=' => [
         'title' => $this->t('Is not equal to'),
         'method' => 'queryOpBoolean',
         'short' => $this->t('!='),
         'values' => 1,
         'query_operator' => static::NOT_EQUAL,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
@@ -125,19 +125,19 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   public function getValueOptions() {
     if (isset($this->definition['type'])) {
       if ($this->definition['type'] == 'yes-no') {
-        $this->valueOptions = array(1 => $this->t('Yes'), 0 => $this->t('No'));
+        $this->valueOptions = [1 => $this->t('Yes'), 0 => $this->t('No')];
       }
       if ($this->definition['type'] == 'on-off') {
-        $this->valueOptions = array(1 => $this->t('On'), 0 => $this->t('Off'));
+        $this->valueOptions = [1 => $this->t('On'), 0 => $this->t('Off')];
       }
       if ($this->definition['type'] == 'enabled-disabled') {
-        $this->valueOptions = array(1 => $this->t('Enabled'), 0 => $this->t('Disabled'));
+        $this->valueOptions = [1 => $this->t('Enabled'), 0 => $this->t('Disabled')];
       }
     }
 
     // Provide a fallback if the above didn't set anything.
     if (!isset($this->valueOptions)) {
-      $this->valueOptions = array(1 => $this->t('True'), 0 => $this->t('False'));
+      $this->valueOptions = [1 => $this->t('True'), 0 => $this->t('False')];
     }
   }
 
@@ -162,12 +162,12 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
       // Configuring a filter: use radios for clarity.
       $filter_form_type = 'radios';
     }
-    $form['value'] = array(
+    $form['value'] = [
       '#type' => $filter_form_type,
       '#title' => $this->value_value,
       '#options' => $this->valueOptions,
       '#default_value' => $this->value,
-    );
+    ];
     if (!empty($this->options['exposed'])) {
       $identifier = $this->options['expose']['identifier'];
       $user_input = $form_state->getUserInput();
@@ -177,13 +177,13 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
       }
       // If we're configuring an exposed filter, add an - Any - option.
       if (!$exposed || empty($this->options['expose']['required'])) {
-        $form['value']['#options'] = array('All' => $this->t('- Any -')) + $form['value']['#options'];
+        $form['value']['#options'] = ['All' => $this->t('- Any -')] + $form['value']['#options'];
       }
     }
   }
 
   protected function valueValidate($form, FormStateInterface $form_state) {
-    if ($form_state->getValue(array('options', 'value')) == 'All' && !$form_state->isValueEmpty(array('options', 'expose', 'required'))) {
+    if ($form_state->getValue(['options', 'value']) == 'All' && !$form_state->isValueEmpty(['options', 'expose', 'required'])) {
       $form_state->setErrorByName('value', $this->t('You must select a value unless this is an non-required exposed filter.'));
     }
   }
@@ -221,7 +221,7 @@ public function query() {
 
     $info = $this->operators();
     if (!empty($info[$this->operator]['method'])) {
-      call_user_func(array($this, $info[$this->operator]['method']), $field, $info[$this->operator]['query_operator']);
+      call_user_func([$this, $info[$this->operator]['method']], $field, $info[$this->operator]['query_operator']);
     }
   }
 
diff --git a/core/modules/views/src/Plugin/views/filter/Bundle.php b/core/modules/views/src/Plugin/views/filter/Bundle.php
index 1ae5eb3..46142fe 100644
--- a/core/modules/views/src/Plugin/views/filter/Bundle.php
+++ b/core/modules/views/src/Plugin/views/filter/Bundle.php
@@ -94,9 +94,9 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   public function getValueOptions() {
     if (!isset($this->valueOptions)) {
       $types = $this->bundleInfoService->getBundleInfo($this->entityTypeId);
-      $this->valueTitle = $this->t('@entity types', array('@entity' => $this->entityType->getLabel()));
+      $this->valueTitle = $this->t('@entity types', ['@entity' => $this->entityType->getLabel()]);
 
-      $options = array();
+      $options = [];
       foreach ($types as $type => $info) {
         $options[$type] = $info['label'];
       }
diff --git a/core/modules/views/src/Plugin/views/filter/Combine.php b/core/modules/views/src/Plugin/views/filter/Combine.php
index 1b4ab9c..0396ff4 100644
--- a/core/modules/views/src/Plugin/views/filter/Combine.php
+++ b/core/modules/views/src/Plugin/views/filter/Combine.php
@@ -21,7 +21,7 @@ class Combine extends StringFilter {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['fields'] = array('default' => array());
+    $options['fields'] = ['default' => []];
 
     return $options;
   }
@@ -32,7 +32,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     // Allow to choose all fields as possible
     if ($this->view->style_plugin->usesFields()) {
-      $options = array();
+      $options = [];
       foreach ($this->view->display_handler->getHandlers('field') as $name => $field) {
         // Only allow clickSortable fields. Fields without clickSorting will
         // probably break in the Combine filter.
@@ -41,14 +41,14 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         }
       }
       if ($options) {
-        $form['fields'] = array(
+        $form['fields'] = [
           '#type' => 'select',
           '#title' => $this->t('Choose fields to combine for filtering'),
           '#description' => $this->t("This filter doesn't work for very special field handlers."),
           '#multiple' => TRUE,
           '#options' => $options,
           '#default_value' => $this->options['fields'],
-        );
+        ];
       }
       else {
         $form_state->setErrorByName('', $this->t('You have to add some fields to be able to use this filter.'));
@@ -58,7 +58,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
   public function query() {
     $this->view->_build('field');
-    $fields = array();
+    $fields = [];
     // Only add the fields if they have a proper field and table alias.
     foreach ($this->options['fields'] as $id) {
       // Overridden fields can lead to fields missing from a display that are
@@ -78,7 +78,7 @@ public function query() {
     }
     if ($fields) {
       $count = count($fields);
-      $separated_fields = array();
+      $separated_fields = [];
       foreach ($fields as $key => $field) {
         $separated_fields[] = $field;
         if ($key < $count - 1) {
@@ -106,7 +106,7 @@ public function validate() {
         if (!isset($fields[$id])) {
           // Combined field filter only works with fields that are in the field
           // settings.
-          $errors[] = $this->t('Field %field set in %filter is not set in display %display.', array('%field' => $id, '%filter' => $this->adminLabel(), '%display' => $this->displayHandler->display['display_title']));
+          $errors[] = $this->t('Field %field set in %filter is not set in display %display.', ['%field' => $id, '%filter' => $this->adminLabel(), '%display' => $this->displayHandler->display['display_title']]);
           break;
         }
         elseif (!$fields[$id]->clickSortable()) {
@@ -114,12 +114,12 @@ public function validate() {
           // is not click sortable we can assume it is not a simple field.
           // @todo change this check to isComputed. See
           // https://www.drupal.org/node/2349465
-          $errors[] = $this->t('Field %field set in %filter is not usable for this filter type. Combined field filter only works for simple fields.', array('%field' => $fields[$id]->adminLabel(), '%filter' => $this->adminLabel()));
+          $errors[] = $this->t('Field %field set in %filter is not usable for this filter type. Combined field filter only works for simple fields.', ['%field' => $fields[$id]->adminLabel(), '%filter' => $this->adminLabel()]);
         }
       }
     }
     else {
-      $errors[] = $this->t('%display: %filter can only be used on displays that use fields. Set the style or row format for that display to one using fields to use the combine field filter.', array('%display' => $this->displayHandler->display['display_title'], '%filter' => $this->adminLabel()));
+      $errors[] = $this->t('%display: %filter can only be used on displays that use fields. Set the style or row format for that display to one using fields to use the combine field filter.', ['%display' => $this->displayHandler->display['display_title'], '%filter' => $this->adminLabel()]);
     }
     return $errors;
   }
@@ -131,12 +131,12 @@ public function validate() {
   function opEqual($expression) {
     $placeholder = $this->placeholder();
     $operator = $this->operator();
-    $this->query->addWhereExpression($this->options['group'], "$expression $operator $placeholder", array($placeholder => $this->value));
+    $this->query->addWhereExpression($this->options['group'], "$expression $operator $placeholder", [$placeholder => $this->value]);
   }
 
   protected function opContains($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", array($placeholder => '%' . db_like($this->value) . '%'));
+    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", [$placeholder => '%' . db_like($this->value) . '%']);
   }
 
   /**
@@ -169,38 +169,38 @@ protected function opContainsWord($expression) {
       $temp_placeholder = $placeholder . '_' . $match_key;
       // Clean up the user input and remove the sentence delimiters.
       $word = trim($match[2], ',?!();:-"');
-      $this->query->addWhereExpression($group, "$expression $operator $temp_placeholder", array($temp_placeholder => '%' . Database::getConnection()->escapeLike($word) . '%'));
+      $this->query->addWhereExpression($group, "$expression $operator $temp_placeholder", [$temp_placeholder => '%' . Database::getConnection()->escapeLike($word) . '%']);
     }
   }
 
   protected function opStartsWith($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", array($placeholder => db_like($this->value) . '%'));
+    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", [$placeholder => db_like($this->value) . '%']);
   }
 
   protected function opNotStartsWith($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", array($placeholder => db_like($this->value) . '%'));
+    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", [$placeholder => db_like($this->value) . '%']);
   }
 
   protected function opEndsWith($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", array($placeholder => '%' . db_like($this->value)));
+    $this->query->addWhereExpression($this->options['group'], "$expression LIKE $placeholder", [$placeholder => '%' . db_like($this->value)]);
   }
 
   protected function opNotEndsWith($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", array($placeholder => '%' . db_like($this->value)));
+    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", [$placeholder => '%' . db_like($this->value)]);
   }
 
   protected function opNotLike($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", array($placeholder => '%' . db_like($this->value) . '%'));
+    $this->query->addWhereExpression($this->options['group'], "$expression NOT LIKE $placeholder", [$placeholder => '%' . db_like($this->value) . '%']);
   }
 
   protected function opRegex($expression) {
     $placeholder = $this->placeholder();
-    $this->query->addWhereExpression($this->options['group'], "$expression REGEXP $placeholder", array($placeholder => $this->value));
+    $this->query->addWhereExpression($this->options['group'], "$expression REGEXP $placeholder", [$placeholder => $this->value]);
   }
 
   protected function opEmpty($expression) {
diff --git a/core/modules/views/src/Plugin/views/filter/Date.php b/core/modules/views/src/Plugin/views/filter/Date.php
index 84a1c42..b69be2b 100644
--- a/core/modules/views/src/Plugin/views/filter/Date.php
+++ b/core/modules/views/src/Plugin/views/filter/Date.php
@@ -27,15 +27,15 @@ protected function defineOptions() {
    */
   protected function valueForm(&$form, FormStateInterface $form_state) {
     if (!$form_state->get('exposed')) {
-      $form['value']['type'] = array(
+      $form['value']['type'] = [
         '#type' => 'radios',
         '#title' => $this->t('Value type'),
-        '#options' => array(
+        '#options' => [
           'date' => $this->t('A date in any machine readable format. CCYY-MM-DD HH:MM:SS is preferred.'),
-          'offset' => $this->t('An offset from the current time such as "@example1" or "@example2"', array('@example1' => '+1 day', '@example2' => '-2 hours -30 minutes')),
-        ),
+          'offset' => $this->t('An offset from the current time such as "@example1" or "@example2"', ['@example1' => '+1 day', '@example2' => '-2 hours -30 minutes']),
+        ],
         '#default_value' => !empty($this->value['type']) ? $this->value['type'] : 'date',
-      );
+      ];
     }
     parent::valueForm($form, $form_state);
   }
@@ -43,12 +43,12 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     parent::validateOptionsForm($form, $form_state);
 
-    if (!empty($this->options['exposed']) && $form_state->isValueEmpty(array('options', 'expose', 'required'))) {
+    if (!empty($this->options['exposed']) && $form_state->isValueEmpty(['options', 'expose', 'required'])) {
       // Who cares what the value is if it's exposed and non-required.
       return;
     }
 
-    $this->validateValidTime($form['value'], $form_state, $form_state->getValue(array('options', 'operator')), $form_state->getValue(array('options', 'value')));
+    $this->validateValidTime($form['value'], $form_state, $form_state->getValue(['options', 'operator']), $form_state->getValue(['options', 'value']));
   }
 
   public function validateExposed(&$form, FormStateInterface $form_state) {
diff --git a/core/modules/views/src/Plugin/views/filter/Equality.php b/core/modules/views/src/Plugin/views/filter/Equality.php
index 748c60d..e1d2aeb 100644
--- a/core/modules/views/src/Plugin/views/filter/Equality.php
+++ b/core/modules/views/src/Plugin/views/filter/Equality.php
@@ -20,22 +20,22 @@ class Equality extends FilterPluginBase {
    * Provide simple equality operator
    */
   public function operatorOptions() {
-    return array(
+    return [
       '=' => $this->t('Is equal to'),
       '!=' => $this->t('Is not equal to'),
-    );
+    ];
   }
 
   /**
    * Provide a simple textfield for equality
    */
   protected function valueForm(&$form, FormStateInterface $form_state) {
-    $form['value'] = array(
+    $form['value'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Value'),
       '#size' => 30,
       '#default_value' => $this->value,
-    );
+    ];
 
     if ($exposed = $form_state->get('exposed')) {
       $identifier = $this->options['expose']['identifier'];
diff --git a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
index 5c2a8d8..bce17f3 100644
--- a/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
+++ b/core/modules/views/src/Plugin/views/filter/FilterPluginBase.php
@@ -116,26 +116,26 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['operator'] = array('default' => '=');
-    $options['value'] = array('default' => '');
-    $options['group'] = array('default' => '1');
-    $options['exposed'] = array('default' => FALSE);
-    $options['expose'] = array(
-      'contains' => array(
-        'operator_id' => array('default' => FALSE),
-        'label' => array('default' => ''),
-        'description' => array('default' => ''),
-        'use_operator' => array('default' => FALSE),
-        'operator' => array('default' => ''),
-        'identifier' => array('default' => ''),
-        'required' => array('default' => FALSE),
-        'remember' => array('default' => FALSE),
-        'multiple' => array('default' => FALSE),
-        'remember_roles' => array('default' => array(
+    $options['operator'] = ['default' => '='];
+    $options['value'] = ['default' => ''];
+    $options['group'] = ['default' => '1'];
+    $options['exposed'] = ['default' => FALSE];
+    $options['expose'] = [
+      'contains' => [
+        'operator_id' => ['default' => FALSE],
+        'label' => ['default' => ''],
+        'description' => ['default' => ''],
+        'use_operator' => ['default' => FALSE],
+        'operator' => ['default' => ''],
+        'identifier' => ['default' => ''],
+        'required' => ['default' => FALSE],
+        'remember' => ['default' => FALSE],
+        'multiple' => ['default' => FALSE],
+        'remember_roles' => ['default' => [
           RoleInterface::AUTHENTICATED_ID => RoleInterface::AUTHENTICATED_ID,
-        )),
-      ),
-    );
+        ]],
+      ],
+    ];
 
     // A group is a combination of a filter, an operator and a value
     // operating like a single filter.
@@ -145,21 +145,21 @@ protected function defineOptions() {
     // an identifier and other settings like the widget and the label.
     // This settings are saved in another array to allow users to switch
     // between a normal filter and a group of filters with a single click.
-    $options['is_grouped'] = array('default' => FALSE);
-    $options['group_info'] = array(
-      'contains' => array(
-        'label' => array('default' => ''),
-        'description' => array('default' => ''),
-        'identifier' => array('default' => ''),
-        'optional' => array('default' => TRUE),
-        'widget' => array('default' => 'select'),
-        'multiple' => array('default' => FALSE),
-        'remember' => array('default' => 0),
-        'default_group' => array('default' => 'All'),
-        'default_group_multiple' => array('default' => array()),
-        'group_items' => array('default' => array()),
-      ),
-    );
+    $options['is_grouped'] = ['default' => FALSE];
+    $options['group_info'] = [
+      'contains' => [
+        'label' => ['default' => ''],
+        'description' => ['default' => ''],
+        'identifier' => ['default' => ''],
+        'optional' => ['default' => TRUE],
+        'widget' => ['default' => 'select'],
+        'multiple' => ['default' => FALSE],
+        'remember' => ['default' => 0],
+        'default_group' => ['default' => 'All'],
+        'default_group_multiple' => ['default' => []],
+        'group_items' => ['default' => []],
+      ],
+    ];
 
     return $options;
   }
@@ -205,19 +205,19 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     if ($this->canBuildGroup()) {
       $this->showBuildGroupButton($form, $form_state);
     }
-    $form['clear_markup_start'] = array(
+    $form['clear_markup_start'] = [
       '#markup' => '<div class="clearfix">',
-    );
+    ];
     if ($this->isAGroup()) {
       if ($this->canBuildGroup()) {
-        $form['clear_markup_start'] = array(
+        $form['clear_markup_start'] = [
           '#markup' => '<div class="clearfix">',
-        );
+        ];
         // Render the build group form.
         $this->showBuildGroupForm($form, $form_state);
-        $form['clear_markup_end'] = array(
+        $form['clear_markup_end'] = [
           '#markup' => '</div>',
-        );
+        ];
       }
     }
     else {
@@ -225,9 +225,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       $this->showOperatorForm($form, $form_state);
       // Add the subform from valueForm().
       $this->showValueForm($form, $form_state);
-      $form['clear_markup_end'] = array(
+      $form['clear_markup_end'] = [
         '#markup' => '</div>',
-      );
+      ];
       if ($this->canExpose()) {
         // Add the subform from buildExposeForm().
         $this->showExposeForm($form, $form_state);
@@ -289,12 +289,12 @@ public function showOperatorForm(&$form, FormStateInterface $form_state) {
   protected function operatorForm(&$form, FormStateInterface $form_state) {
     $options = $this->operatorOptions();
     if (!empty($options)) {
-      $form['operator'] = array(
+      $form['operator'] = [
         '#type' => count($options) < 10 ? 'radios' : 'select',
         '#title' => $this->t('Operator'),
         '#default_value' => $this->operator,
         '#options' => $options,
-      );
+      ];
     }
   }
 
@@ -302,7 +302,7 @@ protected function operatorForm(&$form, FormStateInterface $form_state) {
    * Provide a list of options for the default operator form.
    * Should be overridden by classes that don't override operatorForm
    */
-  public function operatorOptions() { return array(); }
+  public function operatorOptions() { return []; }
 
   /**
    * Validate the operator form.
@@ -335,7 +335,7 @@ protected function showValueForm(&$form, FormStateInterface $form_state) {
    * @see buildOptionsForm()
    */
   protected function valueForm(&$form, FormStateInterface $form_state) {
-    $form['value'] = array();
+    $form['value'] = [];
   }
 
   /**
@@ -377,47 +377,47 @@ public function showBuildGroupForm(&$form, FormStateInterface $form_state) {
    */
   protected function showBuildGroupButton(&$form, FormStateInterface $form_state) {
 
-    $form['group_button'] = array(
+    $form['group_button'] = [
       '#prefix' => '<div class="views-grouped clearfix">',
       '#suffix' => '</div>',
       // Should always come after the description and the relationship.
       '#weight' => -190,
-    );
+    ];
 
     $grouped_description = $this->t('Grouped filters allow a choice between predefined operator|value pairs.');
-    $form['group_button']['radios'] = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('js-only')),
-    );
-    $form['group_button']['radios']['radios'] = array(
+    $form['group_button']['radios'] = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['js-only']],
+    ];
+    $form['group_button']['radios']['radios'] = [
       '#title' => $this->t('Filter type to expose'),
       '#description' => $grouped_description,
       '#type' => 'radios',
-      '#options' => array(
+      '#options' => [
         $this->t('Single filter'),
         $this->t('Grouped filters'),
-      ),
-    );
+      ],
+    ];
 
     if (empty($this->options['is_grouped'])) {
-      $form['group_button']['markup'] = array(
+      $form['group_button']['markup'] = [
         '#markup' => '<div class="description grouped-description">' . $grouped_description . '</div>',
-      );
-      $form['group_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      ];
+      $form['group_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Grouped filters'),
-        '#submit' => array(array($this, 'buildGroupForm')),
-      );
+        '#submit' => [[$this, 'buildGroupForm']],
+      ];
       $form['group_button']['radios']['radios']['#default_value'] = 0;
     }
     else {
-      $form['group_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      $form['group_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Single filter'),
-        '#submit' => array(array($this, 'buildGroupForm')),
-      );
+        '#submit' => [[$this, 'buildGroupForm']],
+      ];
       $form['group_button']['radios']['radios']['#default_value'] = 1;
     }
   }
@@ -453,47 +453,47 @@ public function buildGroupForm($form, FormStateInterface $form_state) {
    * Shortcut to display the expose/hide button.
    */
   public function showExposeButton(&$form, FormStateInterface $form_state) {
-    $form['expose_button'] = array(
+    $form['expose_button'] = [
       '#prefix' => '<div class="views-expose clearfix">',
       '#suffix' => '</div>',
       // Should always come after the description and the relationship.
       '#weight' => -200,
-    );
+    ];
 
     // Add a checkbox for JS users, which will have behavior attached to it
     // so it can replace the button.
-    $form['expose_button']['checkbox'] = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('js-only')),
-    );
-    $form['expose_button']['checkbox']['checkbox'] = array(
+    $form['expose_button']['checkbox'] = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['js-only']],
+    ];
+    $form['expose_button']['checkbox']['checkbox'] = [
       '#title' => $this->t('Expose this filter to visitors, to allow them to change it'),
       '#type' => 'checkbox',
-    );
+    ];
 
     // Then add the button itself.
     if (empty($this->options['exposed'])) {
-      $form['expose_button']['markup'] = array(
+      $form['expose_button']['markup'] = [
         '#markup' => '<div class="description exposed-description">' . $this->t('This filter is not exposed. Expose it to allow the users to change it.') . '</div>',
-      );
-      $form['expose_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      ];
+      $form['expose_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Expose filter'),
-        '#submit' => array(array($this, 'displayExposedForm')),
-      );
+        '#submit' => [[$this, 'displayExposedForm']],
+      ];
       $form['expose_button']['checkbox']['checkbox']['#default_value'] = 0;
     }
     else {
-      $form['expose_button']['markup'] = array(
+      $form['expose_button']['markup'] = [
         '#markup' => '<div class="description exposed-description">' . $this->t('This filter is exposed. If you hide it, users will not be able to change it.') . '</div>',
-      );
-      $form['expose_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      ];
+      $form['expose_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Hide filter'),
-        '#submit' => array(array($this, 'displayExposedForm')),
-      );
+        '#submit' => [[$this, 'displayExposedForm']],
+      ];
       $form['expose_button']['checkbox']['checkbox']['#default_value'] = 1;
     }
   }
@@ -509,35 +509,35 @@ public function buildExposeForm(&$form, FormStateInterface $form_state) {
     // prior to rendering. That's why the preRender for it needs to run first,
     // so that when the next preRender (the one for fieldsets) runs, it gets
     // the flattened data.
-    array_unshift($form['#pre_render'], array(get_class($this), 'preRenderFlattenData'));
+    array_unshift($form['#pre_render'], [get_class($this), 'preRenderFlattenData']);
     $form['expose']['#flatten'] = TRUE;
 
     if (empty($this->always_required)) {
-      $form['expose']['required'] = array(
+      $form['expose']['required'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Required'),
         '#default_value' => $this->options['expose']['required'],
-      );
+      ];
     }
     else {
-      $form['expose']['required'] = array(
+      $form['expose']['required'] = [
         '#type' => 'value',
         '#value' => TRUE,
-      );
+      ];
     }
-    $form['expose']['label'] = array(
+    $form['expose']['label'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['expose']['label'],
       '#title' => $this->t('Label'),
       '#size' => 40,
-    );
+    ];
 
-    $form['expose']['description'] = array(
+    $form['expose']['description'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['expose']['description'],
       '#title' => $this->t('Description'),
       '#size' => 60,
-    );
+    ];
 
     if (!empty($form['operator']['#type'])) {
       // Increase the width of the left (operator) column.
@@ -546,75 +546,75 @@ public function buildExposeForm(&$form, FormStateInterface $form_state) {
       $form['value']['#prefix'] = '<div class="views-group-box views-right-60">';
       $form['value']['#suffix'] = '</div>';
 
-      $form['expose']['use_operator'] = array(
+      $form['expose']['use_operator'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Expose operator'),
         '#description' => $this->t('Allow the user to choose the operator.'),
         '#default_value' => !empty($this->options['expose']['use_operator']),
-      );
-      $form['expose']['operator_id'] = array(
+      ];
+      $form['expose']['operator_id'] = [
         '#type' => 'textfield',
         '#default_value' => $this->options['expose']['operator_id'],
         '#title' => $this->t('Operator identifier'),
         '#size' => 40,
         '#description' => $this->t('This will appear in the URL after the ? to identify this operator.'),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="options[expose][use_operator]"]' => array('checked' => TRUE),
-          ),
-        ),
-      );
+        '#states' => [
+          'visible' => [
+            ':input[name="options[expose][use_operator]"]' => ['checked' => TRUE],
+          ],
+        ],
+      ];
     }
     else {
-      $form['expose']['operator_id'] = array(
+      $form['expose']['operator_id'] = [
         '#type' => 'value',
         '#value' => '',
-      );
+      ];
     }
 
     if (empty($this->alwaysMultiple)) {
-      $form['expose']['multiple'] = array(
+      $form['expose']['multiple'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Allow multiple selections'),
         '#description' => $this->t('Enable to allow users to select multiple items.'),
         '#default_value' => $this->options['expose']['multiple'],
-      );
+      ];
     }
-    $form['expose']['remember'] = array(
+    $form['expose']['remember'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Remember the last selection'),
       '#description' => $this->t('Enable to remember the last selection made by the user.'),
       '#default_value' => $this->options['expose']['remember'],
-    );
+    ];
 
     $role_options = array_map('\Drupal\Component\Utility\Html::escape', user_role_names());
-    $form['expose']['remember_roles'] = array(
+    $form['expose']['remember_roles'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('User roles'),
       '#description' => $this->t('Remember exposed selection only for the selected user role(s). If you select no roles, the exposed data will never be stored.'),
       '#default_value' => $this->options['expose']['remember_roles'],
       '#options' => $role_options,
-      '#states' => array(
-        'invisible' => array(
-          ':input[name="options[expose][remember]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          ':input[name="options[expose][remember]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
 
-    $form['expose']['identifier'] = array(
+    $form['expose']['identifier'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['expose']['identifier'],
       '#title' => $this->t('Filter identifier'),
       '#size' => 40,
       '#description' => $this->t('This will appear in the URL after the ? to identify this filter. Cannot be blank. Only letters, digits and the dot ("."), hyphen ("-"), underscore ("_"), and tilde ("~") characters are allowed.'),
-    );
+    ];
   }
 
   /**
    * Validate the options form.
    */
   public function validateExposeForm($form, FormStateInterface $form_state) {
-    $identifier = $form_state->getValue(array('options', 'expose', 'identifier'));
+    $identifier = $form_state->getValue(['options', 'expose', 'identifier']);
     $this->validateIdentifier($identifier, $form_state, $form['expose']['identifier']);
   }
 
@@ -654,12 +654,12 @@ protected function hasValidGroupedValue(array $group) {
    * Validate the build group options form.
    */
   protected function buildGroupValidate($form, FormStateInterface $form_state) {
-    if (!$form_state->isValueEmpty(array('options', 'group_info'))) {
-      $identifier = $form_state->getValue(array('options', 'group_info', 'identifier'));
+    if (!$form_state->isValueEmpty(['options', 'group_info'])) {
+      $identifier = $form_state->getValue(['options', 'group_info', 'identifier']);
       $this->validateIdentifier($identifier, $form_state, $form['group_info']['identifier']);
     }
 
-    if ($group_items = $form_state->getValue(array('options', 'group_info', 'group_items'))) {
+    if ($group_items = $form_state->getValue(['options', 'group_info', 'group_items'])) {
       foreach ($group_items as $id => $group) {
         if (empty($group['remove'])) {
           $has_valid_value = $this->hasValidGroupedValue($group);
@@ -694,7 +694,7 @@ protected function buildGroupValidate($form, FormStateInterface $form_state) {
    *
    * @return string
    */
-  protected function validateIdentifier($identifier, FormStateInterface $form_state = NULL, &$form_group = array()) {
+  protected function validateIdentifier($identifier, FormStateInterface $form_state = NULL, &$form_group = []) {
     $error = '';
     if (empty($identifier)) {
       $error = $this->t('The identifier is required if the filter is exposed.');
@@ -720,9 +720,9 @@ protected function validateIdentifier($identifier, FormStateInterface $form_stat
    * Save new group items, re-enumerates and remove groups marked to delete.
    */
   protected function buildGroupSubmit($form, FormStateInterface $form_state) {
-    $groups = array();
-    $group_items = $form_state->getValue(array('options', 'group_info', 'group_items'));
-    uasort($group_items, array('Drupal\Component\Utility\SortArray', 'sortByWeightElement'));
+    $groups = [];
+    $group_items = $form_state->getValue(['options', 'group_info', 'group_items']);
+    uasort($group_items, ['Drupal\Component\Utility\SortArray', 'sortByWeightElement']);
     // Filter out removed items.
 
     // Start from 1 to avoid problems with #default_value in the widget.
@@ -735,26 +735,26 @@ protected function buildGroupSubmit($form, FormStateInterface $form_state) {
         unset($group['weight']);
         $groups[$new_id] = $group;
 
-        if ($form_state->getValue(array('options', 'group_info', 'default_group')) == $id) {
+        if ($form_state->getValue(['options', 'group_info', 'default_group']) == $id) {
           $new_default = $new_id;
         }
       }
       $new_id++;
     }
     if ($new_default != 'All') {
-      $form_state->setValue(array('options', 'group_info', 'default_group'), $new_default);
+      $form_state->setValue(['options', 'group_info', 'default_group'], $new_default);
     }
-    $filter_default_multiple = $form_state->getValue(array('options', 'group_info', 'default_group_multiple'));
-    $form_state->setValue(array('options', 'group_info', 'default_group_multiple'), array_filter($filter_default_multiple));
+    $filter_default_multiple = $form_state->getValue(['options', 'group_info', 'default_group_multiple']);
+    $form_state->setValue(['options', 'group_info', 'default_group_multiple'], array_filter($filter_default_multiple));
 
-    $form_state->setValue(array('options', 'group_info', 'group_items'), $groups);
+    $form_state->setValue(['options', 'group_info', 'group_items'], $groups);
   }
 
   /**
    * Provide default options for exposed filters.
    */
   public function defaultExposeOptions() {
-    $this->options['expose'] = array(
+    $this->options['expose'] = [
       'use_operator' => FALSE,
       'operator' => $this->options['id'] . '_op',
       'identifier' => $this->options['id'],
@@ -763,14 +763,14 @@ public function defaultExposeOptions() {
       'remember' => FALSE,
       'multiple' => FALSE,
       'required' => FALSE,
-    );
+    ];
   }
 
   /**
    * Provide default options for exposed filters.
    */
   protected function buildGroupOptions() {
-    $this->options['group_info'] = array(
+    $this->options['group_info'] = [
       'label' => $this->definition['title'],
       'description' => NULL,
       'identifier' => $this->options['id'],
@@ -779,9 +779,9 @@ protected function buildGroupOptions() {
       'multiple' => FALSE,
       'remember' => FALSE,
       'default_group' => 'All',
-      'default_group_multiple' => array(),
-      'group_items' => array(),
-    );
+      'default_group_multiple' => [],
+      'group_items' => [],
+    ];
   }
 
   /**
@@ -790,7 +790,7 @@ protected function buildGroupOptions() {
    */
   public function groupForm(&$form, FormStateInterface $form_state) {
     if (!empty($this->options['group_info']['optional']) && !$this->multipleExposedInput()) {
-      $groups = array('All' => $this->t('- Any -'));
+      $groups = ['All' => $this->t('- Any -')];
     }
     foreach ($this->options['group_info']['group_items'] as $id => $group) {
       if (!empty($group['title'])) {
@@ -801,12 +801,12 @@ public function groupForm(&$form, FormStateInterface $form_state) {
     if (count($groups)) {
       $value = $this->options['group_info']['identifier'];
 
-      $form[$value] = array(
+      $form[$value] = [
         '#title' => $this->options['group_info']['label'],
         '#type' => $this->options['group_info']['widget'],
         '#default_value' => $this->group_info,
         '#options' => $groups,
-      );
+      ];
       if (!empty($this->options['group_info']['multiple'])) {
         if (count($groups) < 5) {
           $form[$value]['#type'] = 'checkboxes';
@@ -890,7 +890,7 @@ protected function buildExposedFiltersGroupForm(&$form, FormStateInterface $form
     // prior to rendering. That's why the preRender for it needs to run first,
     // so that when the next preRender (the one for fieldsets) runs, it gets
     // the flattened data.
-    array_unshift($form['#pre_render'], array(get_class($this), 'preRenderFlattenData'));
+    array_unshift($form['#pre_render'], [get_class($this), 'preRenderFlattenData']);
     $form['group_info']['#flatten'] = TRUE;
 
     if (!empty($this->options['group_info']['identifier'])) {
@@ -899,53 +899,53 @@ protected function buildExposedFiltersGroupForm(&$form, FormStateInterface $form
     else {
       $identifier = 'group_' . $this->options['expose']['identifier'];
     }
-    $form['group_info']['identifier'] = array(
+    $form['group_info']['identifier'] = [
       '#type' => 'textfield',
       '#default_value' => $identifier,
       '#title' => $this->t('Filter identifier'),
       '#size' => 40,
       '#description' => $this->t('This will appear in the URL after the ? to identify this filter. Cannot be blank. Only letters, digits and the dot ("."), hyphen ("-"), underscore ("_"), and tilde ("~") characters are allowed.'),
-    );
-    $form['group_info']['label'] = array(
+    ];
+    $form['group_info']['label'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['group_info']['label'],
       '#title' => $this->t('Label'),
       '#size' => 40,
-    );
-    $form['group_info']['description'] = array(
+    ];
+    $form['group_info']['description'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['group_info']['description'],
       '#title' => $this->t('Description'),
       '#size' => 60,
-    );
-    $form['group_info']['optional'] = array(
+    ];
+    $form['group_info']['optional'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Optional'),
       '#description' => $this->t('This exposed filter is optional and will have added options to allow it not to be set.'),
       '#default_value' => $this->options['group_info']['optional'],
-    );
-    $form['group_info']['multiple'] = array(
+    ];
+    $form['group_info']['multiple'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow multiple selections'),
       '#description' => $this->t('Enable to allow users to select multiple items.'),
       '#default_value' => $this->options['group_info']['multiple'],
-    );
-    $form['group_info']['widget'] = array(
+    ];
+    $form['group_info']['widget'] = [
       '#type' => 'radios',
       '#default_value' => $this->options['group_info']['widget'],
       '#title' => $this->t('Widget type'),
-      '#options' => array(
+      '#options' => [
         'radios' => $this->t('Radios'),
         'select' => $this->t('Select'),
-      ),
+      ],
       '#description' => $this->t('Select which kind of widget will be used to render the group of filters'),
-    );
-    $form['group_info']['remember'] = array(
+    ];
+    $form['group_info']['remember'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Remember'),
       '#description' => $this->t('Remember the last setting the user gave this filter.'),
       '#default_value' => $this->options['group_info']['remember'],
-    );
+    ];
 
     if (!empty($this->options['group_info']['identifier'])) {
       $identifier = $this->options['group_info']['identifier'];
@@ -953,53 +953,53 @@ protected function buildExposedFiltersGroupForm(&$form, FormStateInterface $form
     else {
       $identifier = 'group_' . $this->options['expose']['identifier'];
     }
-    $form['group_info']['identifier'] = array(
+    $form['group_info']['identifier'] = [
       '#type' => 'textfield',
       '#default_value' => $identifier,
       '#title' => $this->t('Filter identifier'),
       '#size' => 40,
       '#description' => $this->t('This will appear in the URL after the ? to identify this filter. Cannot be blank. Only letters, digits and the dot ("."), hyphen ("-"), underscore ("_"), and tilde ("~") characters are allowed.'),
-    );
-    $form['group_info']['label'] = array(
+    ];
+    $form['group_info']['label'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['group_info']['label'],
       '#title' => $this->t('Label'),
       '#size' => 40,
-    );
-    $form['group_info']['optional'] = array(
+    ];
+    $form['group_info']['optional'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Optional'),
       '#description' => $this->t('This exposed filter is optional and will have added options to allow it not to be set.'),
       '#default_value' => $this->options['group_info']['optional'],
-    );
-    $form['group_info']['widget'] = array(
+    ];
+    $form['group_info']['widget'] = [
       '#type' => 'radios',
       '#default_value' => $this->options['group_info']['widget'],
       '#title' => $this->t('Widget type'),
-      '#options' => array(
+      '#options' => [
         'radios' => $this->t('Radios'),
         'select' => $this->t('Select'),
-      ),
+      ],
       '#description' => $this->t('Select which kind of widget will be used to render the group of filters'),
-    );
-    $form['group_info']['remember'] = array(
+    ];
+    $form['group_info']['remember'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Remember'),
       '#description' => $this->t('Remember the last setting the user gave this filter.'),
       '#default_value' => $this->options['group_info']['remember'],
-    );
+    ];
 
-    $groups = array('All' => $this->t('- Any -')); // The string '- Any -' will not be rendered see @theme_views_ui_build_group_filter_form
+    $groups = ['All' => $this->t('- Any -')]; // The string '- Any -' will not be rendered see @theme_views_ui_build_group_filter_form
 
     // Provide 3 options to start when we are in a new group.
     if (count($this->options['group_info']['group_items']) == 0) {
-      $this->options['group_info']['group_items'] = array_fill(1, 3, array());
+      $this->options['group_info']['group_items'] = array_fill(1, 3, []);
     }
 
     // After the general settings, comes a table with all the existent groups.
     $default_weight = 0;
     foreach ($this->options['group_info']['group_items'] as $item_id => $item) {
-      if (!$form_state->isValueEmpty(array('options', 'group_info', 'group_items', $item_id, 'remove'))) {
+      if (!$form_state->isValueEmpty(['options', 'group_info', 'group_items', $item_id, 'remove'])) {
         continue;
       }
       // Each rows contains three widgets:
@@ -1009,8 +1009,8 @@ protected function buildExposedFiltersGroupForm(&$form, FormStateInterface $form
 
       // In each row, we have to display the operator form and the value from
       // $row acts as a fake form to render each widget in a row.
-      $row = array();
-      $groups[$item_id] = $this->t('Grouping @id', array('@id' => $item_id));
+      $row = [];
+      $groups[$item_id] = $this->t('Grouping @id', ['@id' => $item_id]);
       $this->operatorForm($row, $form_state);
       // Force the operator form to be a select box. Some handlers uses
       // radios and they occupy a lot of space in a table row.
@@ -1057,71 +1057,71 @@ protected function buildExposedFiltersGroupForm(&$form, FormStateInterface $form
       }
 
       // Per item group, we have a title that identifies it.
-      $form['group_info']['group_items'][$item_id] = array(
-        'title' => array(
+      $form['group_info']['group_items'][$item_id] = [
+        'title' => [
           '#title' => $this->t('Label'),
           '#title_display' => 'invisible',
           '#type' => 'textfield',
           '#size' => 20,
           '#default_value' => $default_title,
-        ),
+        ],
         'operator' => $row['operator'],
         'value' => $row['value'],
         // No title is given here, since this input is never displayed. It is
         // only triggered by JavaScript.
-        'remove' => array(
+        'remove' => [
           '#type' => 'checkbox',
           '#id' => 'views-removed-' . $item_id,
-          '#attributes' => array('class' => array('views-remove-checkbox')),
+          '#attributes' => ['class' => ['views-remove-checkbox']],
           '#default_value' => 0,
-        ),
-        'weight' => array(
+        ],
+        'weight' => [
           '#title' => $this->t('Weight'),
           '#title_display' => 'invisible',
           '#type' => 'weight',
           '#delta' => 10,
           '#default_value' => $default_weight++,
-          '#attributes' => array('class' => array('weight')),
-        ),
-      );
+          '#attributes' => ['class' => ['weight']],
+        ],
+      ];
     }
     // From all groups, let chose which is the default.
-    $form['group_info']['default_group'] = array(
+    $form['group_info']['default_group'] = [
       '#type' => 'radios',
       '#options' => $groups,
       '#default_value' => $this->options['group_info']['default_group'],
       '#required' => TRUE,
-      '#attributes' => array(
-        'class' => array('default-radios'),
-      )
-    );
+      '#attributes' => [
+        'class' => ['default-radios'],
+      ]
+    ];
     // From all groups, let chose which is the default.
-    $form['group_info']['default_group_multiple'] = array(
+    $form['group_info']['default_group_multiple'] = [
       '#type' => 'checkboxes',
       '#options' => $groups,
       '#default_value' => $this->options['group_info']['default_group_multiple'],
-      '#attributes' => array(
-        'class' => array('default-checkboxes'),
-      )
-    );
+      '#attributes' => [
+        'class' => ['default-checkboxes'],
+      ]
+    ];
 
-    $form['group_info']['add_group'] = array(
+    $form['group_info']['add_group'] = [
       '#prefix' => '<div class="views-build-group clear-block">',
       '#suffix' => '</div>',
       '#type' => 'submit',
       '#value' => $this->t('Add another item'),
-      '#submit' => array(array($this, 'addGroupForm')),
-    );
+      '#submit' => [[$this, 'addGroupForm']],
+    ];
 
-    $js = array();
-    $js['tableDrag']['views-filter-groups']['weight'][0] = array(
+    $js = [];
+    $js['tableDrag']['views-filter-groups']['weight'][0] = [
       'target' => 'weight',
       'source' => NULL,
       'relationship' => 'sibling',
       'action' => 'order',
       'hidden' => TRUE,
       'limit' => 0,
-    );
+    ];
     $js_settings = $form_state->get('js_settings');
     if ($js_settings && is_array($js)) {
       $js_settings = array_merge($js_settings, $js);
@@ -1139,7 +1139,7 @@ public function addGroupForm($form, FormStateInterface $form_state) {
     $item = &$this->options;
 
     // Add a new row.
-    $item['group_info']['group_items'][] = array();
+    $item['group_info']['group_items'][] = [];
 
     $view = $form_state->get('view');
     $display_id = $form_state->get('display_id');
@@ -1186,7 +1186,7 @@ protected function exposedTranslate(&$form, $type) {
     }
 
     if ($type == 'value' && empty($this->always_required) && empty($this->options['expose']['required']) && $form['#type'] == 'select' && empty($form['#multiple'])) {
-      $form['#options'] = array('All' => $this->t('- Any -')) + $form['#options'];
+      $form['#options'] = ['All' => $this->t('- Any -')] + $form['#options'];
       $form['#default_value'] = 'All';
     }
 
@@ -1240,19 +1240,19 @@ public function exposedInfo() {
     }
 
     if ($this->isAGroup()) {
-      return array(
+      return [
         'value' => $this->options['group_info']['identifier'],
         'label' => $this->options['group_info']['label'],
         'description' => $this->options['group_info']['description'],
-      );
+      ];
     }
 
-    return array(
+    return [
       'operator' => $this->options['expose']['operator_id'],
       'value' => $this->options['expose']['identifier'],
       'label' => $this->options['expose']['label'],
       'description' => $this->options['expose']['description'],
-    );
+    ];
   }
 
   /**
@@ -1309,7 +1309,7 @@ public function groupMultipleExposedInput(&$input) {
     if (!empty($input[$this->options['group_info']['identifier']])) {
       return array_filter($input[$this->options['group_info']['identifier']]);
     }
-    return array();
+    return [];
   }
 
   /**
@@ -1350,7 +1350,7 @@ public function storeGroupInput($input, $status) {
 
     if ($status !== FALSE) {
       if (!isset($_SESSION['views'][$this->view->storage->id()][$display_id])) {
-        $_SESSION['views'][$this->view->storage->id()][$display_id] = array();
+        $_SESSION['views'][$this->view->storage->id()][$display_id] = [];
       }
 
       $session = &$_SESSION['views'][$this->view->storage->id()][$display_id];
@@ -1388,7 +1388,7 @@ public function acceptExposedInput($input) {
         }
 
         if ($this->operator != 'empty' && $this->operator != 'not empty') {
-          if ($value == 'All' || $value === array()) {
+          if ($value == 'All' || $value === []) {
             return FALSE;
           }
 
@@ -1406,7 +1406,7 @@ public function acceptExposedInput($input) {
       if (isset($value)) {
         $this->value = $value;
         if (empty($this->alwaysMultiple) && empty($this->options['expose']['multiple']) && !is_array($value)) {
-          $this->value = array($value);
+          $this->value = [$value];
         }
       }
       else {
@@ -1428,7 +1428,7 @@ public function storeExposedInput($input, $status) {
 
     // Check if we store exposed value for current user.
     $user = \Drupal::currentUser();
-    $allowed_rids = empty($this->options['expose']['remember_roles']) ? array() : array_filter($this->options['expose']['remember_roles']);
+    $allowed_rids = empty($this->options['expose']['remember_roles']) ? [] : array_filter($this->options['expose']['remember_roles']);
     $intersect_rids = array_intersect(array_keys($allowed_rids), $user->getRoles());
     if (empty($intersect_rids)) {
       return;
@@ -1456,7 +1456,7 @@ public function storeExposedInput($input, $status) {
 
     if ($status) {
       if (!isset($_SESSION['views'][$this->view->storage->id()][$display_id])) {
-        $_SESSION['views'][$this->view->storage->id()][$display_id] = array();
+        $_SESSION['views'][$this->view->storage->id()][$display_id] = [];
       }
 
       $session = &$_SESSION['views'][$this->view->storage->id()][$display_id];
diff --git a/core/modules/views/src/Plugin/views/filter/GroupByNumeric.php b/core/modules/views/src/Plugin/views/filter/GroupByNumeric.php
index 4f1baa1..4934e6e 100644
--- a/core/modules/views/src/Plugin/views/filter/GroupByNumeric.php
+++ b/core/modules/views/src/Plugin/views/filter/GroupByNumeric.php
@@ -24,17 +24,17 @@ protected function opBetween($field) {
     $placeholder_min = $this->placeholder();
     $placeholder_max = $this->placeholder();
     if ($this->operator == 'between') {
-      $this->query->addHavingExpression($this->options['group'], "$field >= $placeholder_min", array($placeholder_min => $this->value['min']));
-      $this->query->addHavingExpression($this->options['group'], "$field <= $placeholder_max", array($placeholder_max => $this->value['max']));
+      $this->query->addHavingExpression($this->options['group'], "$field >= $placeholder_min", [$placeholder_min => $this->value['min']]);
+      $this->query->addHavingExpression($this->options['group'], "$field <= $placeholder_max", [$placeholder_max => $this->value['max']]);
     }
     else {
-      $this->query->addHavingExpression($this->options['group'], "$field < $placeholder_min OR $field > $placeholder_max", array($placeholder_min => $this->value['min'], $placeholder_max => $this->value['max']));
+      $this->query->addHavingExpression($this->options['group'], "$field < $placeholder_min OR $field > $placeholder_max", [$placeholder_min => $this->value['min'], $placeholder_max => $this->value['max']]);
     }
   }
 
   protected function opSimple($field) {
     $placeholder = $this->placeholder();
-    $this->query->addHavingExpression($this->options['group'], "$field $this->operator $placeholder", array($placeholder => $this->value['value']));
+    $this->query->addHavingExpression($this->options['group'], "$field $this->operator $placeholder", [$placeholder => $this->value['value']]);
   }
 
   protected function opEmpty($field) {
diff --git a/core/modules/views/src/Plugin/views/filter/InOperator.php b/core/modules/views/src/Plugin/views/filter/InOperator.php
index ff4186f..df01536 100644
--- a/core/modules/views/src/Plugin/views/filter/InOperator.php
+++ b/core/modules/views/src/Plugin/views/filter/InOperator.php
@@ -71,7 +71,7 @@ public function getValueOptions() {
       }
     }
     else {
-      $this->valueOptions = array(t('Yes'), $this->t('No'));
+      $this->valueOptions = [t('Yes'), $this->t('No')];
     }
 
     return $this->valueOptions;
@@ -84,20 +84,20 @@ public function defaultExposeOptions() {
 
   public function buildExposeForm(&$form, FormStateInterface $form_state) {
     parent::buildExposeForm($form, $form_state);
-    $form['expose']['reduce'] = array(
+    $form['expose']['reduce'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Limit list to selected items'),
       '#description' => $this->t('If checked, the only items presented to the user will be the ones selected here.'),
       '#default_value' => !empty($this->options['expose']['reduce']), // safety
-    );
+    ];
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
     $options['operator']['default'] = 'in';
-    $options['value']['default'] = array();
-    $options['expose']['contains']['reduce'] = array('default' => FALSE);
+    $options['value']['default'] = [];
+    $options['expose']['contains']['reduce'] = ['default' => FALSE];
 
     return $options;
   }
@@ -108,38 +108,38 @@ protected function defineOptions() {
    * adding/removing items from this array.
    */
   function operators() {
-    $operators = array(
-      'in' => array(
+    $operators = [
+      'in' => [
         'title' => $this->t('Is one of'),
         'short' => $this->t('in'),
         'short_single' => $this->t('='),
         'method' => 'opSimple',
         'values' => 1,
-      ),
-      'not in' => array(
+      ],
+      'not in' => [
         'title' => $this->t('Is not one of'),
         'short' => $this->t('not in'),
         'short_single' => $this->t('<>'),
         'method' => 'opSimple',
         'values' => 1,
-      ),
-    );
+      ],
+    ];
     // if the definition allows for the empty operator, add it.
     if (!empty($this->definition['allow empty'])) {
-      $operators += array(
-        'empty' => array(
+      $operators += [
+        'empty' => [
           'title' => $this->t('Is empty (NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('empty'),
           'values' => 0,
-        ),
-        'not empty' => array(
+        ],
+        'not empty' => [
           'title' => $this->t('Is not empty (NOT NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('not empty'),
           'values' => 0,
-        ),
-      );
+        ],
+      ];
     }
 
     return $operators;
@@ -149,7 +149,7 @@ function operators() {
    * Build strings from the operators() for 'select' options
    */
   public function operatorOptions($which = 'title') {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       $options[$id] = $info[$which];
     }
@@ -158,7 +158,7 @@ public function operatorOptions($which = 'title') {
   }
 
   protected function operatorValues($values = 1) {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       if (isset($info['values']) && $info['values'] == $values) {
         $options[] = $id;
@@ -169,13 +169,13 @@ protected function operatorValues($values = 1) {
   }
 
   protected function valueForm(&$form, FormStateInterface $form_state) {
-    $form['value'] = array();
-    $options = array();
+    $form['value'] = [];
+    $options = [];
 
     $exposed = $form_state->get('exposed');
     if (!$exposed) {
       // Add a select all option to the value form.
-      $options = array('all' => $this->t('Select all'));
+      $options = ['all' => $this->t('Select all')];
     }
 
     $this->getValueOptions();
@@ -201,7 +201,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
         $options = $this->reduceValueOptions();
 
         if (!empty($this->options['expose']['multiple']) && empty($this->options['expose']['required'])) {
-          $default_value = array();
+          $default_value = [];
         }
       }
 
@@ -221,7 +221,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
     }
 
     if ($which == 'all' || $which == 'value') {
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => $this->valueFormType,
         '#title' => $this->valueTitle,
         '#options' => $options,
@@ -229,7 +229,7 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
         // These are only valid for 'select' type, but do no harm to checkboxes.
         '#multiple' => TRUE,
         '#size' => count($options) > 8 ? 8 : count($options),
-      );
+      ];
       $user_input = $form_state->getUserInput();
       if ($exposed && !isset($user_input[$identifier])) {
         $user_input[$identifier] = $default_value;
@@ -243,9 +243,9 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
         }
         // Setup #states for all operators with one value.
         foreach ($this->operatorValues(1) as $operator) {
-          $form['value']['#states']['visible'][] = array(
-            $source => array('value' => $operator),
-          );
+          $form['value']['#states']['visible'][] = [
+            $source => ['value' => $operator],
+          ];
         }
       }
     }
@@ -262,7 +262,7 @@ public function reduceValueOptions($input = NULL) {
     // Because options may be an array of strings, or an array of mixed arrays
     // and strings (optgroups) or an array of objects, we have to
     // step through and handle each one individually.
-    $options = array();
+    $options = [];
     foreach ($input as $id => $option) {
       if (is_array($option)) {
         $options[$id] = $this->reduceValueOptions($option);
@@ -313,7 +313,7 @@ protected function valueSubmit($form, FormStateInterface $form_state) {
     // *only* a list of checkboxes that were set, and we can use that
     // instead.
 
-    $form_state->setValue(array('options', 'value'), $form['value']['#value']);
+    $form_state->setValue(['options', 'value'], $form['value']['#value']);
   }
 
   public function adminSummary() {
@@ -417,11 +417,11 @@ public function validate() {
     // If the operator is an operator which doesn't require a value, there is
     // no need for additional validation.
     if (in_array($this->operator, $this->operatorValues(0))) {
-      return array();
+      return [];
     }
 
     if (!in_array($this->operator, $this->operatorValues(1))) {
-      $errors[] = $this->t('The operator is invalid on filter: @filter.', array('@filter' => $this->adminLabel(TRUE)));
+      $errors[] = $this->t('The operator is invalid on filter: @filter.', ['@filter' => $this->adminLabel(TRUE)]);
     }
     if (is_array($this->value)) {
       if (!isset($this->valueOptions)) {
@@ -444,11 +444,11 @@ public function validate() {
       }
       // Choose different kind of output for 0, a single and multiple values.
       if (count($this->value) == 0) {
-        $errors[] = $this->t('No valid values found on filter: @filter.', array('@filter' => $this->adminLabel(TRUE)));
+        $errors[] = $this->t('No valid values found on filter: @filter.', ['@filter' => $this->adminLabel(TRUE)]);
       }
     }
     elseif (!empty($this->value) && ($this->operator == 'in' || $this->operator == 'not in')) {
-      $errors[] = $this->t('The value @value is not an array for @operator on filter: @filter', array('@value' => var_export($this->value), '@operator' => $this->operator, '@filter' => $this->adminLabel(TRUE)));
+      $errors[] = $this->t('The value @value is not an array for @operator on filter: @filter', ['@value' => var_export($this->value), '@operator' => $this->operator, '@filter' => $this->adminLabel(TRUE)]);
     }
     return $errors;
   }
diff --git a/core/modules/views/src/Plugin/views/filter/ManyToOne.php b/core/modules/views/src/Plugin/views/filter/ManyToOne.php
index 7fa1fbc..645dc81 100644
--- a/core/modules/views/src/Plugin/views/filter/ManyToOne.php
+++ b/core/modules/views/src/Plugin/views/filter/ManyToOne.php
@@ -41,7 +41,7 @@ protected function defineOptions() {
     $options = parent::defineOptions();
 
     $options['operator']['default'] = 'or';
-    $options['value']['default'] = array();
+    $options['value']['default'] = [];
 
     if (isset($this->helper)) {
       $this->helper->defineOptions($options);
@@ -55,48 +55,48 @@ protected function defineOptions() {
   }
 
   function operators() {
-    $operators = array(
-      'or' => array(
+    $operators = [
+      'or' => [
         'title' => $this->t('Is one of'),
         'short' => $this->t('or'),
         'short_single' => $this->t('='),
         'method' => 'opHelper',
         'values' => 1,
         'ensure_my_table' => 'helper',
-      ),
-      'and' => array(
+      ],
+      'and' => [
         'title' => $this->t('Is all of'),
         'short' => $this->t('and'),
         'short_single' => $this->t('='),
         'method' => 'opHelper',
         'values' => 1,
         'ensure_my_table' => 'helper',
-      ),
-      'not' => array(
+      ],
+      'not' => [
         'title' => $this->t('Is none of'),
         'short' => $this->t('not'),
         'short_single' => $this->t('<>'),
         'method' => 'opHelper',
         'values' => 1,
         'ensure_my_table' => 'helper',
-      ),
-    );
+      ],
+    ];
     // if the definition allows for the empty operator, add it.
     if (!empty($this->definition['allow empty'])) {
-      $operators += array(
-        'empty' => array(
+      $operators += [
+        'empty' => [
           'title' => $this->t('Is empty (NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('empty'),
           'values' => 0,
-        ),
-        'not empty' => array(
+        ],
+        'not empty' => [
           'title' => $this->t('Is not empty (NOT NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('not empty'),
           'values' => 0,
-        ),
-      );
+        ],
+      ];
     }
 
     return $operators;
diff --git a/core/modules/views/src/Plugin/views/filter/NumericFilter.php b/core/modules/views/src/Plugin/views/filter/NumericFilter.php
index d1b5257..347c9f2 100644
--- a/core/modules/views/src/Plugin/views/filter/NumericFilter.php
+++ b/core/modules/views/src/Plugin/views/filter/NumericFilter.php
@@ -18,91 +18,91 @@ class NumericFilter extends FilterPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['value'] = array(
-      'contains' => array(
-        'min' => array('default' => ''),
-        'max' => array('default' => ''),
-        'value' => array('default' => ''),
-      ),
-    );
+    $options['value'] = [
+      'contains' => [
+        'min' => ['default' => ''],
+        'max' => ['default' => ''],
+        'value' => ['default' => ''],
+      ],
+    ];
 
     return $options;
   }
 
   function operators() {
-    $operators = array(
-      '<' => array(
+    $operators = [
+      '<' => [
         'title' => $this->t('Is less than'),
         'method' => 'opSimple',
         'short' => $this->t('<'),
         'values' => 1,
-      ),
-      '<=' => array(
+      ],
+      '<=' => [
         'title' => $this->t('Is less than or equal to'),
         'method' => 'opSimple',
         'short' => $this->t('<='),
         'values' => 1,
-      ),
-      '=' => array(
+      ],
+      '=' => [
         'title' => $this->t('Is equal to'),
         'method' => 'opSimple',
         'short' => $this->t('='),
         'values' => 1,
-      ),
-      '!=' => array(
+      ],
+      '!=' => [
         'title' => $this->t('Is not equal to'),
         'method' => 'opSimple',
         'short' => $this->t('!='),
         'values' => 1,
-      ),
-      '>=' => array(
+      ],
+      '>=' => [
         'title' => $this->t('Is greater than or equal to'),
         'method' => 'opSimple',
         'short' => $this->t('>='),
         'values' => 1,
-      ),
-      '>' => array(
+      ],
+      '>' => [
         'title' => $this->t('Is greater than'),
         'method' => 'opSimple',
         'short' => $this->t('>'),
         'values' => 1,
-      ),
-      'between' => array(
+      ],
+      'between' => [
         'title' => $this->t('Is between'),
         'method' => 'opBetween',
         'short' => $this->t('between'),
         'values' => 2,
-      ),
-      'not between' => array(
+      ],
+      'not between' => [
         'title' => $this->t('Is not between'),
         'method' => 'opBetween',
         'short' => $this->t('not between'),
         'values' => 2,
-      ),
-      'regular_expression' => array(
+      ],
+      'regular_expression' => [
         'title' => $this->t('Regular expression'),
         'short' => $this->t('regex'),
         'method' => 'opRegex',
         'values' => 1,
-      ),
-    );
+      ],
+    ];
 
     // if the definition allows for the empty operator, add it.
     if (!empty($this->definition['allow empty'])) {
-      $operators += array(
-        'empty' => array(
+      $operators += [
+        'empty' => [
           'title' => $this->t('Is empty (NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('empty'),
           'values' => 0,
-        ),
-        'not empty' => array(
+        ],
+        'not empty' => [
           'title' => $this->t('Is not empty (NOT NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('not empty'),
           'values' => 0,
-        ),
-      );
+        ],
+      ];
     }
 
     return $operators;
@@ -112,7 +112,7 @@ function operators() {
    * Provide a list of all the numeric operators
    */
   public function operatorOptions($which = 'title') {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       $options[$id] = $info[$which];
     }
@@ -121,7 +121,7 @@ public function operatorOptions($which = 'title') {
   }
 
   protected function operatorValues($values = 1) {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       if ($info['values'] == $values) {
         $options[] = $id;
@@ -159,17 +159,17 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
 
     $user_input = $form_state->getUserInput();
     if ($which == 'all') {
-      $form['value']['value'] = array(
+      $form['value']['value'] = [
         '#type' => 'textfield',
         '#title' => !$exposed ? $this->t('Value') : '',
         '#size' => 30,
         '#default_value' => $this->value['value'],
-      );
+      ];
       // Setup #states for all operators with one value.
       foreach ($this->operatorValues(1) as $operator) {
-        $form['value']['value']['#states']['visible'][] = array(
-          $source => array('value' => $operator),
-        );
+        $form['value']['value']['#states']['visible'][] = [
+          $source => ['value' => $operator],
+        ];
       }
       if ($exposed && !isset($user_input[$identifier]['value'])) {
         $user_input[$identifier]['value'] = $this->value['value'];
@@ -179,12 +179,12 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
     elseif ($which == 'value') {
       // When exposed we drop the value-value and just do value if
       // the operator is locked.
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => 'textfield',
         '#title' => !$exposed ? $this->t('Value') : '',
         '#size' => 30,
         '#default_value' => $this->value['value'],
-      );
+      ];
       if ($exposed && !isset($user_input[$identifier])) {
         $user_input[$identifier] = $this->value['value'];
         $form_state->setUserInput($user_input);
@@ -192,26 +192,26 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
     }
 
     if ($which == 'all' || $which == 'minmax') {
-      $form['value']['min'] = array(
+      $form['value']['min'] = [
         '#type' => 'textfield',
         '#title' => !$exposed ? $this->t('Min') : $this->exposedInfo()['label'],
         '#size' => 30,
         '#default_value' => $this->value['min'],
         '#description' => !$exposed ? '' : $this->exposedInfo()['description']
-      );
-      $form['value']['max'] = array(
+      ];
+      $form['value']['max'] = [
         '#type' => 'textfield',
         '#title' => !$exposed ? $this->t('And max') : $this->t('And'),
         '#size' => 30,
         '#default_value' => $this->value['max'],
-      );
+      ];
       if ($which == 'all') {
-        $states = array();
+        $states = [];
         // Setup #states for all operators with two values.
         foreach ($this->operatorValues(2) as $operator) {
-          $states['#states']['visible'][] = array(
-            $source => array('value' => $operator),
-          );
+          $states['#states']['visible'][] = [
+            $source => ['value' => $operator],
+          ];
         }
         $form['value']['min'] += $states;
         $form['value']['max'] += $states;
@@ -225,10 +225,10 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
 
       if (!isset($form['value'])) {
         // Ensure there is something in the 'value'.
-        $form['value'] = array(
+        $form['value'] = [
           '#type' => 'value',
           '#value' => NULL
-        );
+        ];
       }
     }
   }
@@ -245,10 +245,10 @@ public function query() {
 
   protected function opBetween($field) {
     if ($this->operator == 'between') {
-      $this->query->addWhere($this->options['group'], $field, array($this->value['min'], $this->value['max']), 'BETWEEN');
+      $this->query->addWhere($this->options['group'], $field, [$this->value['min'], $this->value['max']], 'BETWEEN');
     }
     else {
-      $this->query->addWhere($this->options['group'], $field, array($this->value['min'], $this->value['max']), 'NOT BETWEEN');
+      $this->query->addWhere($this->options['group'], $field, [$this->value['min'], $this->value['max']], 'NOT BETWEEN');
     }
   }
 
@@ -288,7 +288,7 @@ public function adminSummary() {
     $options = $this->operatorOptions('short');
     $output = $options[$this->operator];
     if (in_array($this->operator, $this->operatorValues(2))) {
-      $output .= ' ' . $this->t('@min and @max', array('@min' => $this->value['min'], '@max' => $this->value['max']));
+      $output .= ' ' . $this->t('@min and @max', ['@min' => $this->value['min'], '@max' => $this->value['max']]);
     }
     elseif (in_array($this->operator, $this->operatorValues(1))) {
       $output .= ' ' . $this->value['value'];
@@ -309,9 +309,9 @@ public function acceptExposedInput($input) {
     if (!empty($this->options['expose']['identifier'])) {
       $value = &$input[$this->options['expose']['identifier']];
       if (!is_array($value)) {
-        $value = array(
+        $value = [
           'value' => $value,
-        );
+        ];
       }
     }
 
diff --git a/core/modules/views/src/Plugin/views/filter/StringFilter.php b/core/modules/views/src/Plugin/views/filter/StringFilter.php
index 68739c3..d55fe69 100644
--- a/core/modules/views/src/Plugin/views/filter/StringFilter.php
+++ b/core/modules/views/src/Plugin/views/filter/StringFilter.php
@@ -26,7 +26,7 @@ class StringFilter extends FilterPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['expose']['contains']['required'] = array('default' => FALSE);
+    $options['expose']['contains']['required'] = ['default' => FALSE];
 
     return $options;
   }
@@ -37,102 +37,102 @@ protected function defineOptions() {
    * adding/removing items from this array.
    */
   function operators() {
-    $operators = array(
-      '=' => array(
+    $operators = [
+      '=' => [
         'title' => $this->t('Is equal to'),
         'short' => $this->t('='),
         'method' => 'opEqual',
         'values' => 1,
-      ),
-      '!=' => array(
+      ],
+      '!=' => [
         'title' => $this->t('Is not equal to'),
         'short' => $this->t('!='),
         'method' => 'opEqual',
         'values' => 1,
-      ),
-      'contains' => array(
+      ],
+      'contains' => [
         'title' => $this->t('Contains'),
         'short' => $this->t('contains'),
         'method' => 'opContains',
         'values' => 1,
-      ),
-      'word' => array(
+      ],
+      'word' => [
         'title' => $this->t('Contains any word'),
         'short' => $this->t('has word'),
         'method' => 'opContainsWord',
         'values' => 1,
-      ),
-      'allwords' => array(
+      ],
+      'allwords' => [
         'title' => $this->t('Contains all words'),
         'short' => $this->t('has all'),
         'method' => 'opContainsWord',
         'values' => 1,
-      ),
-      'starts' => array(
+      ],
+      'starts' => [
         'title' => $this->t('Starts with'),
         'short' => $this->t('begins'),
         'method' => 'opStartsWith',
         'values' => 1,
-      ),
-      'not_starts' => array(
+      ],
+      'not_starts' => [
         'title' => $this->t('Does not start with'),
         'short' => $this->t('not_begins'),
         'method' => 'opNotStartsWith',
         'values' => 1,
-      ),
-      'ends' => array(
+      ],
+      'ends' => [
         'title' => $this->t('Ends with'),
         'short' => $this->t('ends'),
         'method' => 'opEndsWith',
         'values' => 1,
-      ),
-      'not_ends' => array(
+      ],
+      'not_ends' => [
         'title' => $this->t('Does not end with'),
         'short' => $this->t('not_ends'),
         'method' => 'opNotEndsWith',
         'values' => 1,
-      ),
-      'not' => array(
+      ],
+      'not' => [
         'title' => $this->t('Does not contain'),
         'short' => $this->t('!has'),
         'method' => 'opNotLike',
         'values' => 1,
-      ),
-      'shorterthan' => array(
+      ],
+      'shorterthan' => [
         'title' => $this->t('Length is shorter than'),
         'short' => $this->t('shorter than'),
         'method' => 'opShorterThan',
         'values' => 1,
-      ),
-      'longerthan' => array(
+      ],
+      'longerthan' => [
         'title' => $this->t('Length is longer than'),
         'short' => $this->t('longer than'),
         'method' => 'opLongerThan',
         'values' => 1,
-      ),
-      'regular_expression' => array(
+      ],
+      'regular_expression' => [
         'title' => $this->t('Regular expression'),
         'short' => $this->t('regex'),
         'method' => 'opRegex',
         'values' => 1,
-      ),
-    );
+      ],
+    ];
     // if the definition allows for the empty operator, add it.
     if (!empty($this->definition['allow empty'])) {
-      $operators += array(
-        'empty' => array(
+      $operators += [
+        'empty' => [
           'title' => $this->t('Is empty (NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('empty'),
           'values' => 0,
-        ),
-        'not empty' => array(
+        ],
+        'not empty' => [
           'title' => $this->t('Is not empty (NOT NULL)'),
           'method' => 'opEmpty',
           'short' => $this->t('not empty'),
           'values' => 0,
-        ),
-      );
+        ],
+      ];
     }
 
     return $operators;
@@ -142,7 +142,7 @@ function operators() {
    * Build strings from the operators() for 'select' options
    */
   public function operatorOptions($which = 'title') {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       $options[$id] = $info[$which];
     }
@@ -170,7 +170,7 @@ public function adminSummary() {
   }
 
   protected function operatorValues($values = 1) {
-    $options = array();
+    $options = [];
     foreach ($this->operators() as $id => $info) {
       if (isset($info['values']) && $info['values'] == $values) {
         $options[] = $id;
@@ -205,12 +205,12 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
     }
 
     if ($which == 'all' || $which == 'value') {
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Value'),
         '#size' => 30,
         '#default_value' => $this->value,
-      );
+      ];
       $user_input = $form_state->getUserInput();
       if ($exposed && !isset($user_input[$identifier])) {
         $user_input[$identifier] = $this->value;
@@ -220,19 +220,19 @@ protected function valueForm(&$form, FormStateInterface $form_state) {
       if ($which == 'all') {
         // Setup #states for all operators with one value.
         foreach ($this->operatorValues(1) as $operator) {
-          $form['value']['#states']['visible'][] = array(
-            $source => array('value' => $operator),
-          );
+          $form['value']['#states']['visible'][] = [
+            $source => ['value' => $operator],
+          ];
         }
       }
     }
 
     if (!isset($form['value'])) {
       // Ensure there is something in the 'value'.
-      $form['value'] = array(
+      $form['value'] = [
         '#type' => 'value',
         '#value' => NULL
-      );
+      ];
     }
   }
 
@@ -282,7 +282,7 @@ protected function opContainsWord($field) {
         $phrase = TRUE;
       }
       $words = trim($match[2], ',?!();:-');
-      $words = $phrase ? array($words) : preg_split('/ /', $words, -1, PREG_SPLIT_NO_EMPTY);
+      $words = $phrase ? [$words] : preg_split('/ /', $words, -1, PREG_SPLIT_NO_EMPTY);
       foreach ($words as $word) {
         $where->condition($field, '%' . db_like(trim($word, " ,!?")) . '%', 'LIKE');
       }
@@ -321,14 +321,14 @@ protected function opShorterThan($field) {
     $placeholder = $this->placeholder();
     // Type cast the argument to an integer because the SQLite database driver
     // has to do some specific alterations to the query base on that data type.
-    $this->query->addWhereExpression($this->options['group'], "LENGTH($field) < $placeholder", array($placeholder => (int) $this->value));
+    $this->query->addWhereExpression($this->options['group'], "LENGTH($field) < $placeholder", [$placeholder => (int) $this->value]);
   }
 
   protected function opLongerThan($field) {
     $placeholder = $this->placeholder();
     // Type cast the argument to an integer because the SQLite database driver
     // has to do some specific alterations to the query base on that data type.
-    $this->query->addWhereExpression($this->options['group'], "LENGTH($field) > $placeholder", array($placeholder => (int) $this->value));
+    $this->query->addWhereExpression($this->options['group'], "LENGTH($field) > $placeholder", [$placeholder => (int) $this->value]);
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/join/JoinPluginBase.php b/core/modules/views/src/Plugin/views/join/JoinPluginBase.php
index 37c1e06..0aa6aa3 100644
--- a/core/modules/views/src/Plugin/views/join/JoinPluginBase.php
+++ b/core/modules/views/src/Plugin/views/join/JoinPluginBase.php
@@ -191,7 +191,7 @@ class JoinPluginBase extends PluginBase implements JoinPluginInterface {
    *
    * @see \Drupal\views\Plugin\views\join\JoinPluginBase::initJoin()
    */
-  public $configuration = array();
+  public $configuration = [];
 
   /**
    * How all the extras will be combined. Either AND or OR.
@@ -223,10 +223,10 @@ class JoinPluginBase extends PluginBase implements JoinPluginInterface {
   public function __construct(array $configuration, $plugin_id, $plugin_definition) {
     parent::__construct($configuration, $plugin_id, $plugin_definition);
     // Merge in some default values.
-    $configuration += array(
+    $configuration += [
       'type' => 'LEFT',
       'extra_operator' => 'AND'
-    );
+    ];
     $this->configuration = $configuration;
 
     if (!empty($configuration['table'])) {
@@ -270,17 +270,17 @@ public function buildJoin($select_query, $table, $view_query) {
     }
 
     $condition = "$left_field = $table[alias].$this->field";
-    $arguments = array();
+    $arguments = [];
 
     // Tack on the extra.
     if (isset($this->extra)) {
       if (is_array($this->extra)) {
-        $extras = array();
+        $extras = [];
         foreach ($this->extra as $info) {
           // Do not require 'value' to be set; allow for field syntax instead.
-          $info += array(
+          $info += [
             'value' => NULL,
-          );
+          ];
           // Figure out the table name. Remember, only use aliases provided
           // if at all possible.
           $join_table = '';
diff --git a/core/modules/views/src/Plugin/views/join/Subquery.php b/core/modules/views/src/Plugin/views/join/Subquery.php
index fa2e421..f407ffc 100644
--- a/core/modules/views/src/Plugin/views/join/Subquery.php
+++ b/core/modules/views/src/Plugin/views/join/Subquery.php
@@ -48,14 +48,14 @@ public function buildJoin($select_query, $table, $view_query) {
 
     // Add our join condition, using a subquery on the left instead of a field.
     $condition = "($this->left_query) = $table[alias].$this->field";
-    $arguments = array();
+    $arguments = [];
 
     // Tack on the extra.
     // This is just copied verbatim from the parent class, which itself has a
     //   bug: https://www.drupal.org/node/1118100.
     if (isset($this->extra)) {
       if (is_array($this->extra)) {
-        $extras = array();
+        $extras = [];
         foreach ($this->extra as $info) {
           // Figure out the table name. Remember, only use aliases provided
           // if at all possible.
diff --git a/core/modules/views/src/Plugin/views/pager/Full.php b/core/modules/views/src/Plugin/views/pager/Full.php
index 76e6469..7d3adae 100644
--- a/core/modules/views/src/Plugin/views/pager/Full.php
+++ b/core/modules/views/src/Plugin/views/pager/Full.php
@@ -27,10 +27,10 @@ protected function defineOptions() {
     $options = parent::defineOptions();
 
     // Use the same default quantity that core uses by default.
-    $options['quantity'] = array('default' => 9);
+    $options['quantity'] = ['default' => 9];
 
-    $options['tags']['contains']['first'] = array('default' => $this->t('« First'));
-    $options['tags']['contains']['last'] = array('default' => $this->t('Last »'));
+    $options['tags']['contains']['first'] = ['default' => $this->t('« First')];
+    $options['tags']['contains']['last'] = ['default' => $this->t('Last »')];
 
     return $options;
   }
@@ -41,26 +41,26 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['quantity'] = array(
+    $form['quantity'] = [
       '#type' => 'number',
       '#title' => $this->t('Number of pager links visible'),
       '#description' => $this->t('Specify the number of links to pages to display in the pager.'),
       '#default_value' => $this->options['quantity'],
-    );
+    ];
 
-    $form['tags']['first'] = array(
+    $form['tags']['first'] = [
       '#type' => 'textfield',
       '#title' => $this->t('First page link text'),
       '#default_value' => $this->options['tags']['first'],
       '#weight' => -10,
-    );
+    ];
 
-    $form['tags']['last'] = array(
+    $form['tags']['last'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Last page link text'),
       '#default_value' => $this->options['tags']['last'],
       '#weight' => 10,
-    );
+    ];
   }
 
   /**
@@ -68,9 +68,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function summaryTitle() {
     if (!empty($this->options['offset'])) {
-      return $this->formatPlural($this->options['items_per_page'], '@count item, skip @skip', 'Paged, @count items, skip @skip', array('@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']));
+      return $this->formatPlural($this->options['items_per_page'], '@count item, skip @skip', 'Paged, @count items, skip @skip', ['@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']]);
     }
-    return $this->formatPlural($this->options['items_per_page'], '@count item', 'Paged, @count items', array('@count' => $this->options['items_per_page']));
+    return $this->formatPlural($this->options['items_per_page'], '@count item', 'Paged, @count items', ['@count' => $this->options['items_per_page']]);
   }
 
   /**
@@ -79,20 +79,20 @@ public function summaryTitle() {
   public function render($input) {
     // The 0, 1, 3, 4 indexes are correct. See the template_preprocess_pager()
     // documentation.
-    $tags = array(
+    $tags = [
       0 => $this->options['tags']['first'],
       1 => $this->options['tags']['previous'],
       3 => $this->options['tags']['next'],
       4 => $this->options['tags']['last'],
-    );
-    return array(
+    ];
+    return [
       '#theme' => $this->themeFunctions(),
       '#tags' => $tags,
       '#element' => $this->options['id'],
       '#parameters' => $input,
       '#quantity' => $this->options['quantity'],
       '#route_name' => !empty($this->view->live_preview) ? '<current>' : '<none>',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/pager/Mini.php b/core/modules/views/src/Plugin/views/pager/Mini.php
index c6520f4..f92f193 100644
--- a/core/modules/views/src/Plugin/views/pager/Mini.php
+++ b/core/modules/views/src/Plugin/views/pager/Mini.php
@@ -36,9 +36,9 @@ public function defineOptions() {
    */
   public function summaryTitle() {
     if (!empty($this->options['offset'])) {
-      return $this->formatPlural($this->options['items_per_page'], 'Mini pager, @count item, skip @skip', 'Mini pager, @count items, skip @skip', array('@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']));
+      return $this->formatPlural($this->options['items_per_page'], 'Mini pager, @count item, skip @skip', 'Mini pager, @count items, skip @skip', ['@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']]);
     }
-    return $this->formatPlural($this->options['items_per_page'], 'Mini pager, @count item', 'Mini pager, @count items', array('@count' => $this->options['items_per_page']));
+    return $this->formatPlural($this->options['items_per_page'], 'Mini pager, @count item', 'Mini pager, @count items', ['@count' => $this->options['items_per_page']]);
   }
 
   /**
@@ -89,17 +89,17 @@ public function postExecute(&$result) {
    */
   public function render($input) {
     // The 1, 3 indexes are correct, see template_preprocess_pager().
-    $tags = array(
+    $tags = [
       1 => $this->options['tags']['previous'],
       3 => $this->options['tags']['next'],
-    );
-    return array(
+    ];
+    return [
       '#theme' => $this->themeFunctions(),
       '#tags' => $tags,
       '#element' => $this->options['id'],
       '#parameters' => $input,
       '#route_name' => !empty($this->view->live_preview) ? '<current>' : '<none>',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/pager/None.php b/core/modules/views/src/Plugin/views/pager/None.php
index e5dcecd..ae2891a 100644
--- a/core/modules/views/src/Plugin/views/pager/None.php
+++ b/core/modules/views/src/Plugin/views/pager/None.php
@@ -32,14 +32,14 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
   public function summaryTitle() {
     if (!empty($this->options['offset'])) {
-      return $this->t('All items, skip @skip', array('@skip' => $this->options['offset']));
+      return $this->t('All items, skip @skip', ['@skip' => $this->options['offset']]);
     }
     return $this->t('All items');
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['offset'] = array('default' => 0);
+    $options['offset'] = ['default' => 0];
 
     return $options;
   }
@@ -49,12 +49,12 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['offset'] = array(
+    $form['offset'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Offset (number of items to skip)'),
       '#description' => $this->t('For example, set this to 3 and the first 3 items will not be displayed.'),
       '#default_value' => $this->options['offset'],
-    );
+    ];
   }
 
   public function usePager() {
diff --git a/core/modules/views/src/Plugin/views/pager/Some.php b/core/modules/views/src/Plugin/views/pager/Some.php
index ef7f65d..59edaea 100644
--- a/core/modules/views/src/Plugin/views/pager/Some.php
+++ b/core/modules/views/src/Plugin/views/pager/Some.php
@@ -20,15 +20,15 @@ class Some extends PagerPluginBase {
 
   public function summaryTitle() {
     if (!empty($this->options['offset'])) {
-      return $this->formatPlural($this->options['items_per_page'], '@count item, skip @skip', '@count items, skip @skip', array('@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']));
+      return $this->formatPlural($this->options['items_per_page'], '@count item, skip @skip', '@count items, skip @skip', ['@count' => $this->options['items_per_page'], '@skip' => $this->options['offset']]);
     }
-    return $this->formatPlural($this->options['items_per_page'], '@count item', '@count items', array('@count' => $this->options['items_per_page']));
+    return $this->formatPlural($this->options['items_per_page'], '@count item', '@count items', ['@count' => $this->options['items_per_page']]);
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['items_per_page'] = array('default' => 10);
-    $options['offset'] = array('default' => 0);
+    $options['items_per_page'] = ['default' => 10];
+    $options['offset'] = ['default' => 0];
 
     return $options;
   }
@@ -39,19 +39,19 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     $pager_text = $this->displayHandler->getPagerText();
-    $form['items_per_page'] = array(
+    $form['items_per_page'] = [
       '#title' => $pager_text['items per page title'],
       '#type' => 'textfield',
       '#description' => $pager_text['items per page description'],
       '#default_value' => $this->options['items_per_page'],
-    );
+    ];
 
-    $form['offset'] = array(
+    $form['offset'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Offset (number of items to skip)'),
       '#description' => $this->t('For example, set this to 3 and the first 3 items will not be displayed.'),
       '#default_value' => $this->options['offset'],
-    );
+    ];
   }
 
   public function usePager() {
diff --git a/core/modules/views/src/Plugin/views/pager/SqlBase.php b/core/modules/views/src/Plugin/views/pager/SqlBase.php
index 0154762..46daeb7 100644
--- a/core/modules/views/src/Plugin/views/pager/SqlBase.php
+++ b/core/modules/views/src/Plugin/views/pager/SqlBase.php
@@ -13,28 +13,28 @@
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['items_per_page'] = array('default' => 10);
-    $options['offset'] = array('default' => 0);
-    $options['id'] = array('default' => 0);
-    $options['total_pages'] = array('default' => '');
-    $options['expose'] = array(
-      'contains' => array(
-        'items_per_page' => array('default' => FALSE),
-        'items_per_page_label' => array('default' => $this->t('Items per page')),
-        'items_per_page_options' => array('default' => '5, 10, 25, 50'),
-        'items_per_page_options_all' => array('default' => FALSE),
-        'items_per_page_options_all_label' => array('default' => $this->t('- All -')),
+    $options['items_per_page'] = ['default' => 10];
+    $options['offset'] = ['default' => 0];
+    $options['id'] = ['default' => 0];
+    $options['total_pages'] = ['default' => ''];
+    $options['expose'] = [
+      'contains' => [
+        'items_per_page' => ['default' => FALSE],
+        'items_per_page_label' => ['default' => $this->t('Items per page')],
+        'items_per_page_options' => ['default' => '5, 10, 25, 50'],
+        'items_per_page_options_all' => ['default' => FALSE],
+        'items_per_page_options_all_label' => ['default' => $this->t('- All -')],
 
-        'offset' => array('default' => FALSE),
-        'offset_label' => array('default' => $this->t('Offset')),
-      ),
-    );
-    $options['tags'] = array(
-      'contains' => array(
-        'previous' => array('default' => $this->t('‹ Previous')),
-        'next' => array('default' => $this->t('Next ›')),
-      ),
-    );
+        'offset' => ['default' => FALSE],
+        'offset_label' => ['default' => $this->t('Offset')],
+      ],
+    ];
+    $options['tags'] = [
+      'contains' => [
+        'previous' => ['default' => $this->t('‹ Previous')],
+        'next' => ['default' => $this->t('Next ›')],
+      ],
+    ];
     return $options;
   }
 
@@ -44,135 +44,135 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     $pager_text = $this->displayHandler->getPagerText();
-    $form['items_per_page'] = array(
+    $form['items_per_page'] = [
       '#title' => $pager_text['items per page title'],
       '#type' => 'number',
       '#description' => $pager_text['items per page description'],
       '#default_value' => $this->options['items_per_page'],
-    );
+    ];
 
-    $form['offset'] = array(
+    $form['offset'] = [
       '#type' => 'number',
       '#title' => $this->t('Offset (number of items to skip)'),
       '#description' => $this->t('For example, set this to 3 and the first 3 items will not be displayed.'),
       '#default_value' => $this->options['offset'],
-    );
+    ];
 
-    $form['id'] = array(
+    $form['id'] = [
       '#type' => 'number',
       '#title' => $this->t('Pager ID'),
       '#description' => $this->t("Unless you're experiencing problems with pagers related to this view, you should leave this at 0. If using multiple pagers on one page you may need to set this number to a higher value so as not to conflict within the ?page= array. Large values will add a lot of commas to your URLs, so avoid if possible."),
       '#default_value' => $this->options['id'],
-    );
+    ];
 
-    $form['total_pages'] = array(
+    $form['total_pages'] = [
       '#type' => 'number',
       '#title' => $this->t('Number of pages'),
       '#description' => $this->t('Leave empty to show all pages.'),
       '#default_value' => $this->options['total_pages'],
-    );
+    ];
 
-    $form['tags'] = array(
+    $form['tags'] = [
       '#type' => 'details',
       '#open' => TRUE,
       '#tree' => TRUE,
       '#title' => $this->t('Pager link labels'),
       '#input' => TRUE,
-    );
+    ];
 
-    $form['tags']['previous'] = array(
+    $form['tags']['previous'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Previous page link text'),
       '#default_value' => $this->options['tags']['previous'],
-    );
+    ];
 
-    $form['tags']['next'] = array(
+    $form['tags']['next'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Next page link text'),
       '#default_value' => $this->options['tags']['next'],
-    );
+    ];
 
-    $form['expose'] = array(
+    $form['expose'] = [
       '#type' => 'details',
       '#open' => TRUE,
       '#tree' => TRUE,
       '#title' => $this->t('Exposed options'),
       '#input' => TRUE,
       '#description' => $this->t('Allow user to control selected display options for this view.'),
-    );
+    ];
 
-    $form['expose']['items_per_page'] = array(
+    $form['expose']['items_per_page'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow user to control the number of items displayed in this view'),
       '#default_value' => $this->options['expose']['items_per_page'],
-    );
+    ];
 
-    $form['expose']['items_per_page_label'] = array(
+    $form['expose']['items_per_page_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Items per page label'),
       '#required' => TRUE,
       '#default_value' => $this->options['expose']['items_per_page_label'],
-      '#states' => array(
-        'invisible' => array(
-          'input[name="pager_options[expose][items_per_page]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          'input[name="pager_options[expose][items_per_page]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
 
-    $form['expose']['items_per_page_options'] = array(
+    $form['expose']['items_per_page_options'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Exposed items per page options'),
       '#required' => TRUE,
       '#description' => $this->t('Set between which values the user can choose when determining the items per page. Separated by comma.'),
       '#default_value' => $this->options['expose']['items_per_page_options'],
-      '#states' => array(
-        'invisible' => array(
-          'input[name="pager_options[expose][items_per_page]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          'input[name="pager_options[expose][items_per_page]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
 
 
-    $form['expose']['items_per_page_options_all'] = array(
+    $form['expose']['items_per_page_options_all'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow user to display all items'),
       '#default_value' => $this->options['expose']['items_per_page_options_all'],
-    );
+    ];
 
-    $form['expose']['items_per_page_options_all_label'] = array(
+    $form['expose']['items_per_page_options_all_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('All items label'),
       '#default_value' => $this->options['expose']['items_per_page_options_all_label'],
-      '#states' => array(
-        'invisible' => array(
-          'input[name="pager_options[expose][items_per_page_options_all]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          'input[name="pager_options[expose][items_per_page_options_all]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
 
-    $form['expose']['offset'] = array(
+    $form['expose']['offset'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Allow user to specify number of items skipped from beginning of this view.'),
       '#default_value' => $this->options['expose']['offset'],
-    );
+    ];
 
-    $form['expose']['offset_label'] = array(
+    $form['expose']['offset_label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Offset label'),
       '#required' => TRUE,
       '#default_value' => $this->options['expose']['offset_label'],
-      '#states' => array(
-        'invisible' => array(
-          'input[name="pager_options[expose][offset]"]' => array('checked' => FALSE),
-        ),
-      ),
-    );
+      '#states' => [
+        'invisible' => [
+          'input[name="pager_options[expose][offset]"]' => ['checked' => FALSE],
+        ],
+      ],
+    ];
   }
 
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     // Only accept integer values.
     $error = FALSE;
-    $exposed_options = $form_state->getValue(array('pager_options', 'expose', 'items_per_page_options'));
+    $exposed_options = $form_state->getValue(['pager_options', 'expose', 'items_per_page_options']);
     if (strpos($exposed_options, '.') !== FALSE) {
       $error = TRUE;
     }
@@ -192,11 +192,11 @@ public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     }
 
     // Make sure that the items_per_page is part of the expose settings.
-    if (!$form_state->isValueEmpty(array('pager_options', 'expose', 'items_per_page')) && !$form_state->isValueEmpty(array('pager_options', 'items_per_page'))) {
-      $items_per_page = $form_state->getValue(array('pager_options', 'items_per_page'));
+    if (!$form_state->isValueEmpty(['pager_options', 'expose', 'items_per_page']) && !$form_state->isValueEmpty(['pager_options', 'items_per_page'])) {
+      $items_per_page = $form_state->getValue(['pager_options', 'items_per_page']);
       if (array_search($items_per_page, $options) === FALSE) {
         $form_state->setErrorByName('pager_options][expose][items_per_page_options', $this->t("The <em>Exposed items per page</em> field's options must include the value from the <em>Items per page</em> field (@items_per_page).",
-          array('@items_per_page' => $items_per_page))
+          ['@items_per_page' => $items_per_page])
         );
       }
     }
@@ -253,13 +253,13 @@ public function setCurrentPage($number = NULL) {
     global $pager_page_array;
 
     if (empty($pager_page_array)) {
-      $pager_page_array = array();
+      $pager_page_array = [];
     }
 
     // Fill in missing values in the global page array, in case the global page
     // array hasn't been initialized before.
     $page = $this->view->getRequest()->query->get('page');
-    $page = isset($page) ? explode(',', $page) : array();
+    $page = isset($page) ? explode(',', $page) : [];
 
     for ($i = 0; $i <= $this->options['id'] || $i < count($pager_page_array); $i++) {
       $pager_page_array[$i] = empty($page[$i]) ? 0 : $page[$i];
@@ -331,7 +331,7 @@ protected function isOffsetExposed() {
   public function exposedFormAlter(&$form, FormStateInterface $form_state) {
     if ($this->itemsPerPageExposed()) {
       $options = explode(',', $this->options['expose']['items_per_page_options']);
-      $sanitized_options = array();
+      $sanitized_options = [];
       if (is_array($options)) {
         foreach ($options as $option) {
           $sanitized_options[intval($option)] = intval($option);
@@ -339,23 +339,23 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
         if (!empty($this->options['expose']['items_per_page_options_all']) && !empty($this->options['expose']['items_per_page_options_all_label'])) {
           $sanitized_options['All'] = $this->options['expose']['items_per_page_options_all_label'];
         }
-        $form['items_per_page'] = array(
+        $form['items_per_page'] = [
           '#type' => 'select',
           '#title' => $this->options['expose']['items_per_page_label'],
           '#options' => $sanitized_options,
           '#default_value' => $this->getItemsPerPage(),
-        );
+        ];
       }
     }
 
     if ($this->isOffsetExposed()) {
-      $form['offset'] = array(
+      $form['offset'] = [
         '#type' => 'textfield',
         '#size' => 10,
         '#maxlength' => 10,
         '#title' => $this->options['expose']['offset_label'],
         '#default_value' => $this->getOffset(),
-      );
+      ];
     }
   }
 
diff --git a/core/modules/views/src/Plugin/views/query/QueryPluginBase.php b/core/modules/views/src/Plugin/views/query/QueryPluginBase.php
index d4e1b23..3f9535e 100644
--- a/core/modules/views/src/Plugin/views/query/QueryPluginBase.php
+++ b/core/modules/views/src/Plugin/views/query/QueryPluginBase.php
@@ -173,7 +173,7 @@ public function setWhereGroup($type = 'AND', $group = NULL, $where = 'where') {
 
     // Create an empty group
     if (empty($groups[$group])) {
-      $groups[$group] = array('conditions' => array(), 'args' => array());
+      $groups[$group] = ['conditions' => [], 'args' => []];
     }
 
     $groups[$group]['type'] = strtoupper($type);
@@ -261,19 +261,19 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
    */
   public function getEntityTableInfo() {
     // Start with the base table.
-    $entity_tables = array();
+    $entity_tables = [];
     $views_data = Views::viewsData();
     $base_table = $this->view->storage->get('base_table');
     $base_table_data = $views_data->get($base_table);
 
     if (isset($base_table_data['table']['entity type'])) {
-      $entity_tables[$base_table_data['table']['entity type']] = array(
+      $entity_tables[$base_table_data['table']['entity type']] = [
         'base' => $base_table,
         'alias' => $base_table,
         'relationship_id' => 'none',
         'entity_type' => $base_table_data['table']['entity type'],
         'revision' => $base_table_data['table']['entity revision'],
-      );
+      ];
 
       // Include the entity provider.
       if (!empty($base_table_data['table']['provider'])) {
@@ -293,13 +293,13 @@ public function getEntityTableInfo() {
           continue;
         }
 
-        $entity_tables[$relationship_id . '__' . $relationship->tableAlias] = array(
+        $entity_tables[$relationship_id . '__' . $relationship->tableAlias] = [
           'base' => $relationship->definition['base'],
           'relationship_id' => $relationship_id,
           'alias' => $relationship->alias,
           'entity_type' => $table_data['table']['entity type'],
           'revision' => $table_data['table']['entity revision'],
-        );
+        ];
 
         // Include the entity provider.
         if (!empty($table_data['table']['provider'])) {
diff --git a/core/modules/views/src/Plugin/views/query/Sql.php b/core/modules/views/src/Plugin/views/query/Sql.php
index 9252b6c..ab056f5 100644
--- a/core/modules/views/src/Plugin/views/query/Sql.php
+++ b/core/modules/views/src/Plugin/views/query/Sql.php
@@ -33,31 +33,31 @@ class Sql extends QueryPluginBase {
   /**
    * A list of tables in the order they should be added, keyed by alias.
    */
-  protected $tableQueue = array();
+  protected $tableQueue = [];
 
   /**
    * Holds an array of tables and counts added so that we can create aliases
    */
-  public $tables = array();
+  public $tables = [];
 
   /**
    * Holds an array of relationships, which are aliases of the primary
    * table that represent different ways to join the same table in.
    */
-  public $relationships = array();
+  public $relationships = [];
 
   /**
    * An array of sections of the WHERE query. Each section is in itself
    * an array of pieces and a flag as to whether or not it should be AND
    * or OR.
    */
-  public $where = array();
+  public $where = [];
   /**
    * An array of sections of the HAVING query. Each section is in itself
    * an array of pieces and a flag as to whether or not it should be AND
    * or OR.
    */
-  public $having = array();
+  public $having = [];
   /**
    * The default operator to use when connecting the WHERE groups. May be
    * AND or OR.
@@ -67,18 +67,18 @@ class Sql extends QueryPluginBase {
   /**
    * A simple array of order by clauses.
    */
-  public $orderby = array();
+  public $orderby = [];
 
   /**
    * A simple array of group by clauses.
    */
-  public $groupby = array();
+  public $groupby = [];
 
 
   /**
    * An array of fields.
    */
-  public $fields = array();
+  public $fields = [];
 
   /**
    * A flag as to whether or not to make the primary field distinct.
@@ -95,12 +95,12 @@ class Sql extends QueryPluginBase {
   /**
    * An array mapping table aliases and field names to field aliases.
    */
-  protected $fieldAliases = array();
+  protected $fieldAliases = [];
 
   /**
    * Query tags which will be passed over to the dbtng query object.
    */
-  public $tags = array();
+  public $tags = [];
 
   /**
    * Is the view marked as not distinct.
@@ -151,33 +151,33 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
 
     $base_table = $this->view->storage->get('base_table');
     $base_field = $this->view->storage->get('base_field');
-    $this->relationships[$base_table] = array(
+    $this->relationships[$base_table] = [
       'link' => NULL,
       'table' => $base_table,
       'alias' => $base_table,
       'base' => $base_table
-    );
+    ];
 
     // init the table queue with our primary table.
-    $this->tableQueue[$base_table] = array(
+    $this->tableQueue[$base_table] = [
       'alias' => $base_table,
       'table' => $base_table,
       'relationship' => $base_table,
       'join' => NULL,
-    );
+    ];
 
     // init the tables with our primary table
-    $this->tables[$base_table][$base_table] = array(
+    $this->tables[$base_table][$base_table] = [
       'count' => 1,
       'alias' => $base_table,
-    );
+    ];
 
-    $this->count_field = array(
+    $this->count_field = [
       'table' => $base_table,
       'field' => $base_field,
       'alias' => $base_field,
       'count' => TRUE,
-    );
+    ];
   }
 
   /**
@@ -199,31 +199,31 @@ public function setCountField($table, $field, $alias = NULL) {
     if (empty($alias)) {
       $alias = $table . '_' . $field;
     }
-    $this->count_field = array(
+    $this->count_field = [
       'table' => $table,
       'field' => $field,
       'alias' => $alias,
       'count' => TRUE,
-    );
+    ];
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['disable_sql_rewrite'] = array(
+    $options['disable_sql_rewrite'] = [
       'default' => FALSE,
-    );
-    $options['distinct'] = array(
+    ];
+    $options['distinct'] = [
       'default' => FALSE,
-    );
-    $options['replica'] = array(
+    ];
+    $options['replica'] = [
       'default' => FALSE,
-    );
-    $options['query_comment'] = array(
+    ];
+    $options['query_comment'] = [
       'default' => '',
-    );
-    $options['query_tags'] = array(
-      'default' => array(),
-    );
+    ];
+    $options['query_tags'] = [
+      'default' => [],
+    ];
 
     return $options;
   }
@@ -234,45 +234,45 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['disable_sql_rewrite'] = array(
+    $form['disable_sql_rewrite'] = [
       '#title' => $this->t('Disable SQL rewriting'),
       '#description' => $this->t('Disabling SQL rewriting will omit all query tags, i. e. disable node access checks as well as override hook_query_alter() implementations in other modules.'),
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['disable_sql_rewrite']),
       '#suffix' => '<div class="messages messages--warning sql-rewrite-warning js-hide">' . $this->t('WARNING: Disabling SQL rewriting means that node access security is disabled. This may allow users to see data they should not be able to see if your view is misconfigured. Use this option only if you understand and accept this security risk.') . '</div>',
-    );
-    $form['distinct'] = array(
+    ];
+    $form['distinct'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Distinct'),
       '#description' => $this->t('This will make the view display only distinct items. If there are multiple identical items, each will be displayed only once. You can use this to try and remove duplicates from a view, though it does not always work. Note that this can slow queries down, so use it with caution.'),
       '#default_value' => !empty($this->options['distinct']),
-    );
-    $form['replica'] = array(
+    ];
+    $form['replica'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Use Secondary Server'),
       '#description' => $this->t('This will make the query attempt to connect to a replica server if available.  If no replica server is defined or available, it will fall back to the default server.'),
       '#default_value' => !empty($this->options['replica']),
-    );
-    $form['query_comment'] = array(
+    ];
+    $form['query_comment'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Query Comment'),
       '#description' => $this->t('If set, this comment will be embedded in the query and passed to the SQL server. This can be helpful for logging or debugging.'),
       '#default_value' => $this->options['query_comment'],
-    );
-    $form['query_tags'] = array(
+    ];
+    $form['query_tags'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Query Tags'),
       '#description' => $this->t('If set, these tags will be appended to the query and can be used to identify the query in a module. This can be helpful for altering queries.'),
       '#default_value' => implode(', ', $this->options['query_tags']),
-      '#element_validate' => array('views_element_validate_tags'),
-    );
+      '#element_validate' => ['views_element_validate_tags'],
+    ];
   }
 
   /**
    * Special submit handling.
    */
   public function submitOptionsForm(&$form, FormStateInterface $form_state) {
-    $element = array('#parents' => array('query', 'options', 'query_tags'));
+    $element = ['#parents' => ['query', 'options', 'query_tags']];
     $value = explode(',', NestedArray::getValue($form_state->getValues(), $element['#parents']));
     $value = array_filter(array_map('trim', $value));
     $form_state->setValueForElement($element, $value);
@@ -328,24 +328,24 @@ public function addRelationship($alias, JoinPluginBase $join, $base, $link_point
 
     // Add the table directly to the queue to avoid accidentally marking
     // it.
-    $this->tableQueue[$alias] = array(
+    $this->tableQueue[$alias] = [
       'table' => $join->table,
       'num' => 1,
       'alias' => $alias,
       'join' => $join,
       'relationship' => $link_point,
-    );
+    ];
 
-    $this->relationships[$alias] = array(
+    $this->relationships[$alias] = [
       'link' => $link_point,
       'table' => $join->table,
       'base' => $base,
-    );
+    ];
 
-    $this->tables[$this->view->storage->get('base_table')][$alias] = array(
+    $this->tables[$this->view->storage->get('base_table')][$alias] = [
       'count' => 1,
       'alias' => $alias,
-    );
+    ];
 
     return $alias;
   }
@@ -471,13 +471,13 @@ public function queueTable($table, $relationship = NULL, JoinPluginBase $join =
       $join = $this->adjustJoin($join, $relationship);
     }
 
-    $this->tableQueue[$alias] = array(
+    $this->tableQueue[$alias] = [
       'table' => $table,
       'num' => $this->tables[$relationship][$table]['count'],
       'alias' => $alias,
       'join' => $join,
       'relationship' => $relationship,
-    );
+    ];
 
     return $alias;
   }
@@ -494,10 +494,10 @@ protected function markTable($table, $relationship, $alias) {
         }
         $alias .= $table;
       }
-      $this->tables[$relationship][$table] = array(
+      $this->tables[$relationship][$table] = [
         'count' => 1,
         'alias' => $alias,
-      );
+      ];
     }
     else {
       $this->tables[$relationship][$table]['count']++;
@@ -603,7 +603,7 @@ public function ensureTable($table, $relationship = NULL, JoinPluginBase $join =
    * query they will be added, but additional copies will NOT be added
    * if the table is already there.
    */
-  protected function ensurePath($table, $relationship = NULL, $join = NULL, $traced = array(), $add = array()) {
+  protected function ensurePath($table, $relationship = NULL, $join = NULL, $traced = [], $add = []) {
     if (!isset($relationship)) {
       $relationship = $this->view->storage->get('base_table');
     }
@@ -763,7 +763,7 @@ public function getTableInfo($table) {
    * @return string
    *   The name that this field can be referred to as. Usually this is the alias.
    */
-  public function addField($table, $field, $alias = '', $params = array()) {
+  public function addField($table, $field, $alias = '', $params = []) {
     // We check for this specifically because it gets a special alias.
     if ($table == $this->view->storage->get('base_table') && $field == $this->view->storage->get('base_field') && empty($alias)) {
       $alias = $this->view->storage->get('base_field');
@@ -788,11 +788,11 @@ public function addField($table, $field, $alias = '', $params = array()) {
     $alias = strtolower(substr($alias, 0, 60));
 
     // Create a field info array.
-    $field_info = array(
+    $field_info = [
       'field' => $field,
       'table' => $table,
       'alias' => $alias,
-    ) + $params;
+    ] + $params;
 
     // Test to see if the field is actually the same or not. Due to
     // differing parameters changing the aggregation function, we need
@@ -818,7 +818,7 @@ public function addField($table, $field, $alias = '', $params = array()) {
    * mode where we're changing the query because we didn't get data we needed.
    */
   public function clearFields() {
-    $this->fields = array();
+    $this->fields = [];
   }
 
   /**
@@ -867,11 +867,11 @@ public function addWhere($group, $field, $value = NULL, $operator = NULL) {
       $this->setWhereGroup('AND', $group);
     }
 
-    $this->where[$group]['conditions'][] = array(
+    $this->where[$group]['conditions'][] = [
       'field' => $field,
       'value' => $value,
       'operator' => $operator,
-    );
+    ];
   }
 
   /**
@@ -893,7 +893,7 @@ public function addWhere($group, $field, $value = NULL, $operator = NULL) {
    *
    * @see QueryConditionInterface::where()
    */
-  public function addWhereExpression($group, $snippet, $args = array()) {
+  public function addWhereExpression($group, $snippet, $args = []) {
     // Ensure all variants of 0 are actually 0. Thus '', 0 and NULL are all
     // the default group.
     if (empty($group)) {
@@ -905,11 +905,11 @@ public function addWhereExpression($group, $snippet, $args = array()) {
       $this->setWhereGroup('AND', $group);
     }
 
-    $this->where[$group]['conditions'][] = array(
+    $this->where[$group]['conditions'][] = [
       'field' => $snippet,
       'value' => $args,
       'operator' => 'formula',
-    );
+    ];
   }
 
   /**
@@ -930,7 +930,7 @@ public function addWhereExpression($group, $snippet, $args = array()) {
    *
    * @see QueryConditionInterface::having()
    */
-  public function addHavingExpression($group, $snippet, $args = array()) {
+  public function addHavingExpression($group, $snippet, $args = []) {
     // Ensure all variants of 0 are actually 0. Thus '', 0 and NULL are all
     // the default group.
     if (empty($group)) {
@@ -943,11 +943,11 @@ public function addHavingExpression($group, $snippet, $args = array()) {
     }
 
     // Add the clause and the args.
-    $this->having[$group]['conditions'][] = array(
+    $this->having[$group]['conditions'][] = [
       'field' => $snippet,
       'value' => $args,
       'operator' => 'formula',
-    );
+    ];
   }
 
   /**
@@ -969,7 +969,7 @@ public function addHavingExpression($group, $snippet, $args = array()) {
    * @param $params
    *   Any params that should be passed through to the addField.
    */
-  public function addOrderBy($table, $field = NULL, $order = 'ASC', $alias = '', $params = array()) {
+  public function addOrderBy($table, $field = NULL, $order = 'ASC', $alias = '', $params = []) {
     // Only ensure the table if it's not the special random key.
     // @todo: Maybe it would make sense to just add an addOrderByRand or something similar.
     if ($table && $table != 'rand') {
@@ -989,10 +989,10 @@ public function addOrderBy($table, $field = NULL, $order = 'ASC', $alias = '', $
       $as = $this->addField($table, $field, $as, $params);
     }
 
-    $this->orderby[] = array(
+    $this->orderby[] = [
       'field' => $as,
       'direction' => strtoupper($order)
-    );
+    ];
   }
 
   /**
@@ -1031,7 +1031,7 @@ public function addTag($tag) {
    * Generates a unique placeholder used in the db query.
    */
   public function placeholder($base = 'views') {
-    static $placeholders = array();
+    static $placeholders = [];
     if (!isset($placeholders[$base])) {
       $placeholders[$base] = 0;
       return ':' . $base;
@@ -1111,7 +1111,7 @@ protected function buildCondition($where = 'where') {
    *   An array of the fieldnames which are non-aggregates.
    */
   protected function getNonAggregates() {
-    $non_aggregates = array();
+    $non_aggregates = [];
     foreach ($this->fields as $field) {
       $string = '';
       if (!empty($field['table'])) {
@@ -1167,9 +1167,9 @@ protected function compileFields($query) {
 
       if (!empty($field['function'])) {
         $info = $this->getAggregationInfo();
-        if (!empty($info[$field['function']]['method']) && is_callable(array($this, $info[$field['function']]['method']))) {
+        if (!empty($info[$field['function']]['method']) && is_callable([$this, $info[$field['function']]['method']])) {
           $string = $this::{$info[$field['function']]['method']}($field['function'], $string);
-          $placeholders = !empty($field['placeholders']) ? $field['placeholders'] : array();
+          $placeholders = !empty($field['placeholders']) ? $field['placeholders'] : [];
           $query->addExpression($string, $fieldname, $placeholders);
         }
 
@@ -1177,7 +1177,7 @@ protected function compileFields($query) {
       }
       // This is a formula, using no tables.
       elseif (empty($field['table'])) {
-        $placeholders = !empty($field['placeholders']) ? $field['placeholders'] : array();
+        $placeholders = !empty($field['placeholders']) ? $field['placeholders'] : [];
         $query->addExpression($string, $fieldname, $placeholders);
       }
       elseif ($this->distinct && !in_array($fieldname, $this->groupby)) {
@@ -1228,7 +1228,7 @@ public function query($get_count = FALSE) {
       $this->getCountOptimized = TRUE;
     }
 
-    $options = array();
+    $options = [];
     $target = 'default';
     $key = 'default';
     // Detect an external database and set the
@@ -1274,7 +1274,7 @@ public function query($get_count = FALSE) {
       // Allow 'GROUP BY' even no aggregation function has been set.
       $this->hasAggregate = $this->view->display_handler->getOption('group_by');
     }
-    $groupby = array();
+    $groupby = [];
     if ($this->hasAggregate && (!empty($this->groupby) || !empty($non_aggregates))) {
       $groupby = array_unique(array_merge($this->groupby, $non_aggregates));
     }
@@ -1283,12 +1283,12 @@ public function query($get_count = FALSE) {
     // entities can be loaded.
     $entity_information = $this->getEntityTableInfo();
     if ($entity_information) {
-      $params = array();
+      $params = [];
       if ($groupby) {
         // Handle grouping, by retrieving the minimum entity_id.
-        $params = array(
+        $params = [
           'function' => 'min',
-        );
+        ];
       }
 
       foreach ($entity_information as $entity_type_id => $info) {
@@ -1347,7 +1347,7 @@ public function query($get_count = FALSE) {
     }
 
     // Add all query substitutions as metadata.
-    $query->addMetaData('views_substitutions', \Drupal::moduleHandler()->invokeAll('views_query_substitutions', array($this->view)));
+    $query->addMetaData('views_substitutions', \Drupal::moduleHandler()->invokeAll('views_query_substitutions', [$this->view]));
 
     return $query;
   }
@@ -1356,7 +1356,7 @@ public function query($get_count = FALSE) {
    * Get the arguments attached to the WHERE and HAVING clauses of this query.
    */
   public function getWhereArgs() {
-    $args = array();
+    $args = [];
     foreach ($this->where as $where) {
       $args = array_merge($args, $where['args']);
     }
@@ -1370,7 +1370,7 @@ public function getWhereArgs() {
    * Let modules modify the query just prior to finalizing it.
    */
   public function alter(ViewExecutable $view) {
-    \Drupal::moduleHandler()->invokeAll('views_query_alter', array($view, $this));
+    \Drupal::moduleHandler()->invokeAll('views_query_alter', [$view, $this]);
   }
 
   /**
@@ -1425,7 +1425,7 @@ public function execute(ViewExecutable $view) {
     }
 
     if ($query) {
-      $additional_arguments = \Drupal::moduleHandler()->invokeAll('views_query_substitutions', array($view));
+      $additional_arguments = \Drupal::moduleHandler()->invokeAll('views_query_substitutions', [$view]);
 
       // Count queries must be run through the preExecute() method.
       // If not, then hook_query_node_access_alter() may munge the count by
@@ -1481,7 +1481,7 @@ public function execute(ViewExecutable $view) {
         $this->loadEntities($view->result);
       }
       catch (DatabaseExceptionWrapper $e) {
-        $view->result = array();
+        $view->result = [];
         if (!empty($view->live_preview)) {
           drupal_set_message($e->getMessage(), 'error');
         }
@@ -1515,7 +1515,7 @@ public function loadEntities(&$results) {
     }
 
     // Extract all entity types from entity_information.
-    $entity_types = array();
+    $entity_types = [];
     foreach ($entity_information as $info) {
       $entity_type = $info['entity_type'];
       if (!isset($entity_types[$entity_type])) {
@@ -1665,82 +1665,82 @@ public function addSignature(ViewExecutable $view) {
   public function getAggregationInfo() {
     // @todo -- need a way to get database specific and customized aggregation
     // functions into here.
-    return array(
-      'group' => array(
+    return [
+      'group' => [
         'title' => $this->t('Group results together'),
         'is aggregate' => FALSE,
-      ),
-      'count' => array(
+      ],
+      'count' => [
         'title' => $this->t('Count'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'count_distinct' => array(
+        ],
+      ],
+      'count_distinct' => [
         'title' => $this->t('Count DISTINCT'),
         'method' => 'aggregationMethodDistinct',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'sum' => array(
+        ],
+      ],
+      'sum' => [
         'title' => $this->t('Sum'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'avg' => array(
+        ],
+      ],
+      'avg' => [
         'title' => $this->t('Average'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'min' => array(
+        ],
+      ],
+      'min' => [
         'title' => $this->t('Minimum'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'max' => array(
+        ],
+      ],
+      'max' => [
         'title' => $this->t('Maximum'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      ),
-      'stddev_pop' => array(
+        ],
+      ],
+      'stddev_pop' => [
         'title' => $this->t('Standard deviation'),
         'method' => 'aggregationMethodSimple',
-        'handler' => array(
+        'handler' => [
           'argument' => 'groupby_numeric',
           'field' => 'numeric',
           'filter' => 'groupby_numeric',
           'sort' => 'groupby_numeric',
-        ),
-      )
-    );
+        ],
+      ]
+    ];
   }
 
   public function aggregationMethodSimple($group_type, $field) {
@@ -1795,7 +1795,7 @@ public function setupTimezone() {
 
     // set up the database timezone
     $db_type = Database::getConnection()->databaseType();
-    if (in_array($db_type, array('mysql', 'pgsql'))) {
+    if (in_array($db_type, ['mysql', 'pgsql'])) {
       $offset = '+00:00';
       static $already_set = FALSE;
       if (!$already_set) {
@@ -1820,7 +1820,7 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
     $db_type = Database::getConnection()->databaseType();
     switch ($db_type) {
       case 'mysql':
-        $replace = array(
+        $replace = [
           'Y' => '%Y',
           'y' => '%y',
           'M' => '%b',
@@ -1837,11 +1837,11 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
           'i' => '%i',
           's' => '%s',
           'A' => '%p',
-        );
+        ];
         $format = strtr($format, $replace);
         return "DATE_FORMAT($field, '$format')";
       case 'pgsql':
-        $replace = array(
+        $replace = [
           'Y' => 'YYYY',
           'y' => 'YY',
           'M' => 'Mon',
@@ -1861,7 +1861,7 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
           'i' => 'MI',
           's' => 'SS',
           'A' => 'AM',
-        );
+        ];
         $format = strtr($format, $replace);
         if (!$string_date) {
           return "TO_CHAR($field, '$format')";
@@ -1870,7 +1870,7 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
         // date, back to a string again.
         return "TO_CHAR(TO_TIMESTAMP($field, 'YYYY-MM-DD HH24:MI:SS'), '$format')";
       case 'sqlite':
-        $replace = array(
+        $replace = [
           'Y' => '%Y',
           // No format for 2 digit year number.
           'y' => '%Y',
@@ -1896,7 +1896,7 @@ public function getDateFormat($field, $format, $string_date = FALSE) {
           's' => '%S',
           // No format for AM/PM.
           'A' => '',
-        );
+        ];
         $format = strtr($format, $replace);
 
         // Don't use the 'unixepoch' flag for string date comparisons.
diff --git a/core/modules/views/src/Plugin/views/relationship/EntityReverse.php b/core/modules/views/src/Plugin/views/relationship/EntityReverse.php
index 42d6fa1..7c01604 100644
--- a/core/modules/views/src/Plugin/views/relationship/EntityReverse.php
+++ b/core/modules/views/src/Plugin/views/relationship/EntityReverse.php
@@ -48,13 +48,13 @@ public function query() {
     $views_data = Views::viewsData()->get($this->table);
     $left_field = $views_data['table']['base']['field'];
 
-    $first = array(
+    $first = [
       'left_table' => $this->tableAlias,
       'left_field' => $left_field,
       'table' => $this->definition['field table'],
       'field' => $this->definition['field field'],
       'adjusted' => TRUE
-    );
+    ];
     if (!empty($this->options['required'])) {
       $first['type'] = 'INNER';
     }
@@ -76,13 +76,13 @@ public function query() {
 
     // Second, relate the field table to the entity specified using
     // the entity id on the field table and the entity's id field.
-    $second = array(
+    $second = [
       'left_table' => $this->first_alias,
       'left_field' => 'entity_id',
       'table' => $this->definition['base'],
       'field' => $this->definition['base field'],
       'adjusted' => TRUE
-    );
+    ];
 
     if (!empty($this->options['required'])) {
       $second['type'] = 'INNER';
diff --git a/core/modules/views/src/Plugin/views/relationship/GroupwiseMax.php b/core/modules/views/src/Plugin/views/relationship/GroupwiseMax.php
index dc23a68..1db8da7 100644
--- a/core/modules/views/src/Plugin/views/relationship/GroupwiseMax.php
+++ b/core/modules/views/src/Plugin/views/relationship/GroupwiseMax.php
@@ -65,12 +65,12 @@ class GroupwiseMax extends RelationshipPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['subquery_sort'] = array('default' => NULL);
+    $options['subquery_sort'] = ['default' => NULL];
     // Descending more useful.
-    $options['subquery_order'] = array('default' => 'DESC');
-    $options['subquery_regenerate'] = array('default' => FALSE);
-    $options['subquery_view'] = array('default' => FALSE);
-    $options['subquery_namespace'] = array('default' => FALSE);
+    $options['subquery_order'] = ['default' => 'DESC'];
+    $options['subquery_regenerate'] = ['default' => FALSE];
+    $options['subquery_view'] = ['default' => FALSE];
+    $options['subquery_namespace'] = ['default' => FALSE];
 
     return $options;
   }
@@ -83,7 +83,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     // Get the sorts that apply to our base.
     $sorts = Views::viewsDataHelper()->fetchFields($this->definition['base'], 'sort');
-    $sort_options = array();
+    $sort_options = [];
     foreach ($sorts as $sort_id => $sort) {
       $sort_options[$sort_id] = "$sort[group]: $sort[title]";
     }
@@ -91,34 +91,34 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
 
     // Extends the relationship's basic options, allowing the user to pick a
     // sort and an order for it.
-    $form['subquery_sort'] = array(
+    $form['subquery_sort'] = [
       '#type' => 'select',
       '#title' => $this->t('Representative sort criteria'),
       // Provide the base field as sane default sort option.
       '#default_value' => !empty($this->options['subquery_sort']) ? $this->options['subquery_sort'] : $this->definition['base'] . '.' . $base_table_data['table']['base']['field'],
       '#options' => $sort_options,
       '#description' => $this->t("The sort criteria is applied to the data brought in by the relationship to determine how a representative item is obtained for each row. For example, to show the most recent node for each user, pick 'Content: Updated date'."),
-    );
+    ];
 
-    $form['subquery_order'] = array(
+    $form['subquery_order'] = [
       '#type' => 'radios',
       '#title' => $this->t('Representative sort order'),
       '#description' => $this->t("The ordering to use for the sort criteria selected above."),
-      '#options' => array('ASC' => $this->t('Ascending'), 'DESC' => $this->t('Descending')),
+      '#options' => ['ASC' => $this->t('Ascending'), 'DESC' => $this->t('Descending')],
       '#default_value' => $this->options['subquery_order'],
-    );
+    ];
 
-    $form['subquery_namespace'] = array(
+    $form['subquery_namespace'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Subquery namespace'),
       '#description' => $this->t('Advanced. Enter a namespace for the subquery used by this relationship.'),
       '#default_value' => $this->options['subquery_namespace'],
-    );
+    ];
 
 
     // WIP: This stuff doesn't work yet: namespacing issues.
     // A list of suitable views to pick one as the subview.
-    $views = array('' => '- None -');
+    $views = ['' => '- None -'];
     foreach (Views::getAllViews() as $view) {
       // Only get views that are suitable:
       // - base must the base that our relationship joins towards
@@ -130,20 +130,20 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       }
     }
 
-    $form['subquery_view'] = array(
+    $form['subquery_view'] = [
       '#type' => 'select',
       '#title' => $this->t('Representative view'),
       '#default_value' => $this->options['subquery_view'],
       '#options' => $views,
       '#description' => $this->t('Advanced. Use another view to generate the relationship subquery. This allows you to use filtering and more than one sort. If you pick a view here, the sort options above are ignored. Your view must have the ID of its base as its only field, and should have some kind of sorting.'),
-    );
+    ];
 
-    $form['subquery_regenerate'] = array(
+    $form['subquery_regenerate'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Generate subquery each time view is run'),
       '#default_value' => $this->options['subquery_regenerate'],
       '#description' => $this->t('Will re-generate the subquery for this relationship every time the view is run, instead of only when these options are saved. Use for testing if you are making changes elsewhere. WARNING: seriously impairs performance.'),
-    );
+    ];
   }
 
   /**
@@ -152,7 +152,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    * We use this to obtain our subquery SQL.
    */
   protected function getTemporaryView() {
-    $view = View::create(array('base_table' => $this->definition['base']));
+    $view = View::create(['base_table' => $this->definition['base']]);
     $view->addDisplay('default');
     return $view->getExecutable();
   }
@@ -198,7 +198,7 @@ protected function leftQuery($options) {
       // We work around this further down.
       $sort = $options['subquery_sort'];
       list($sort_table, $sort_field) = explode('.', $sort);
-      $sort_options = array('order' => $options['subquery_order']);
+      $sort_options = ['order' => $options['subquery_order']];
       $temp_view->addHandler('default', 'sort', $sort_table, $sort_field, $sort_options);
     }
 
@@ -219,7 +219,7 @@ protected function leftQuery($options) {
       list($relationship_table, $relationship_field) = explode(':', $this->definition['relationship']);
       $relationship_id = $temp_view->addHandler('default', 'relationship', $relationship_table, $relationship_field);
     }
-    $temp_item_options = array('relationship' => $relationship_id);
+    $temp_item_options = ['relationship' => $relationship_id];
 
     // Add the correct argument for our relationship's base
     // ie the 'how to get back to base' argument.
diff --git a/core/modules/views/src/Plugin/views/relationship/RelationshipPluginBase.php b/core/modules/views/src/Plugin/views/relationship/RelationshipPluginBase.php
index 25a0001..8601891 100644
--- a/core/modules/views/src/Plugin/views/relationship/RelationshipPluginBase.php
+++ b/core/modules/views/src/Plugin/views/relationship/RelationshipPluginBase.php
@@ -99,7 +99,7 @@ protected function defineOptions() {
     }
 
     $options['admin_label']['default'] = $label;
-    $options['required'] = array('default' => FALSE);
+    $options['required'] = ['default' => FALSE];
 
     return $options;
   }
@@ -113,12 +113,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     unset($form['admin_label']['#fieldset']);
     $form['admin_label']['#weight'] = -1;
 
-    $form['required'] = array(
+    $form['required'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Require this relationship'),
       '#description' => $this->t('Enable to hide items that do not contain this relationship'),
       '#default_value' => !empty($this->options['required']),
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/row/EntityReference.php b/core/modules/views/src/Plugin/views/row/EntityReference.php
index 4ca79ba..a985ee3 100644
--- a/core/modules/views/src/Plugin/views/row/EntityReference.php
+++ b/core/modules/views/src/Plugin/views/row/EntityReference.php
@@ -25,7 +25,7 @@ class EntityReference extends Fields {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['separator'] = array('default' => '-');
+    $options['separator'] = ['default' => '-'];
 
     return $options;
   }
diff --git a/core/modules/views/src/Plugin/views/row/EntityRow.php b/core/modules/views/src/Plugin/views/row/EntityRow.php
index f536529..e98133a 100644
--- a/core/modules/views/src/Plugin/views/row/EntityRow.php
+++ b/core/modules/views/src/Plugin/views/row/EntityRow.php
@@ -130,7 +130,7 @@ protected function getView() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['view_mode'] = array('default' => 'default');
+    $options['view_mode'] = ['default' => 'default'];
     return $options;
   }
 
@@ -140,12 +140,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['view_mode'] = array(
+    $form['view_mode'] = [
       '#type' => 'select',
       '#options' => \Drupal::entityManager()->getViewModeOptions($this->entityTypeId),
       '#title' => $this->t('View mode'),
       '#default_value' => $this->options['view_mode'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/row/Fields.php b/core/modules/views/src/Plugin/views/row/Fields.php
index 3904b0c..711704e 100644
--- a/core/modules/views/src/Plugin/views/row/Fields.php
+++ b/core/modules/views/src/Plugin/views/row/Fields.php
@@ -32,10 +32,10 @@ class Fields extends RowPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['inline'] = array('default' => array());
-    $options['separator'] = array('default' => '');
-    $options['hide_empty'] = array('default' => FALSE);
-    $options['default_field_elements'] = array('default' => TRUE);
+    $options['inline'] = ['default' => []];
+    $options['separator'] = ['default' => ''];
+    $options['hide_empty'] = ['default' => FALSE];
+    $options['default_field_elements'] = ['default' => TRUE];
     return $options;
   }
 
@@ -47,48 +47,48 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $options = $this->displayHandler->getFieldLabels();
 
     if (empty($this->options['inline'])) {
-      $this->options['inline'] = array();
+      $this->options['inline'] = [];
     }
 
-    $form['default_field_elements'] = array(
+    $form['default_field_elements'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Provide default field wrapper elements'),
       '#default_value' => $this->options['default_field_elements'],
       '#description' => $this->t('If not checked, fields that are not configured to customize their HTML elements will get no wrappers at all for their field, label and field + label wrappers. You can use this to quickly reduce the amount of markup the view provides by default, at the cost of making it more difficult to apply CSS.'),
-    );
+    ];
 
-    $form['inline'] = array(
+    $form['inline'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Inline fields'),
       '#options' => $options,
       '#default_value' => $this->options['inline'],
       '#description' => $this->t('Inline fields will be displayed next to each other rather than one after another. Note that some fields will ignore this if they are block elements, particularly body fields and other formatted HTML.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[default_field_elements]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[default_field_elements]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $form['separator'] = array(
+    $form['separator'] = [
       '#title' => $this->t('Separator'),
       '#type' => 'textfield',
       '#size' => 10,
       '#default_value' => isset($this->options['separator']) ? $this->options['separator'] : '',
       '#description' => $this->t('The separator may be placed between inline fields to keep them from squishing up next to each other. You can use HTML in this field.'),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[default_field_elements]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[default_field_elements]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $form['hide_empty'] = array(
+    $form['hide_empty'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Hide empty fields'),
       '#default_value' => $this->options['hide_empty'],
       '#description' => $this->t('Do not display fields, labels or markup for fields that are empty.'),
-    );
+    ];
 
   }
 
@@ -97,8 +97,8 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    * There is no need for this function to actually store the data.
    */
   public function submitOptionsForm(&$form, FormStateInterface $form_state) {
-    $inline = $form_state->getValue(array('row_options', 'inline'));
-    $form_state->setValue(array('row_options', 'inline'), array_filter($inline));
+    $inline = $form_state->getValue(['row_options', 'inline']);
+    $form_state->setValue(['row_options', 'inline'], array_filter($inline));
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/row/OpmlFields.php b/core/modules/views/src/Plugin/views/row/OpmlFields.php
index 0c8f684..aaeecbf 100644
--- a/core/modules/views/src/Plugin/views/row/OpmlFields.php
+++ b/core/modules/views/src/Plugin/views/row/OpmlFields.php
@@ -29,14 +29,14 @@ class OpmlFields extends RowPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['text_field'] = array('default' => '');
-    $options['created_field'] = array('default' => '');
-    $options['type_field'] = array('default' => '');
-    $options['description_field'] = array('default' => '');
-    $options['html_url_field'] = array('default' => '');
-    $options['language_field'] = array('default' => '');
-    $options['xml_url_field'] = array('default' => '');
-    $options['url_field'] = array('default' => '');
+    $options['text_field'] = ['default' => ''];
+    $options['created_field'] = ['default' => ''];
+    $options['type_field'] = ['default' => ''];
+    $options['description_field'] = ['default' => ''];
+    $options['html_url_field'] = ['default' => ''];
+    $options['language_field'] = ['default' => ''];
+    $options['xml_url_field'] = ['default' => ''];
+    $options['url_field'] = ['default' => ''];
     return $options;
   }
 
@@ -46,101 +46,101 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $initial_labels = array('' => $this->t('- None -'));
+    $initial_labels = ['' => $this->t('- None -')];
     $view_fields_labels = $this->displayHandler->getFieldLabels();
     $view_fields_labels = array_merge($initial_labels, $view_fields_labels);
 
-    $types = array(
+    $types = [
       'rss' => $this->t('RSS'),
       'link' => $this->t('Link'),
       'include' => $this->t('Include'),
-    );
+    ];
     $types = array_merge($initial_labels, $types);
-    $form['type_field'] = array(
+    $form['type_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Type attribute'),
       '#description' => $this->t('The type of this row.'),
       '#options' => $types,
       '#default_value' => $this->options['type_field'],
-    );
-    $form['text_field'] = array(
+    ];
+    $form['text_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Text attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML text attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['text_field'],
       '#required' => TRUE,
-    );
-    $form['created_field'] = array(
+    ];
+    $form['created_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Created attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML created attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['created_field'],
-    );
-    $form['description_field'] = array(
+    ];
+    $form['description_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Description attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML description attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['description_field'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[type_field]"]' => array('value' => 'rss'),
-        ),
-      ),
-    );
-    $form['html_url_field'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[type_field]"]' => ['value' => 'rss'],
+        ],
+      ],
+    ];
+    $form['html_url_field'] = [
       '#type' => 'select',
       '#title' => $this->t('HTML URL attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML htmlUrl attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['html_url_field'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[type_field]"]' => array('value' => 'rss'),
-        ),
-      ),
-    );
-    $form['language_field'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[type_field]"]' => ['value' => 'rss'],
+        ],
+      ],
+    ];
+    $form['language_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Language attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML language attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['language_field'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[type_field]"]' => array('value' => 'rss'),
-        ),
-      ),
-    );
-    $form['xml_url_field'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[type_field]"]' => ['value' => 'rss'],
+        ],
+      ],
+    ];
+    $form['xml_url_field'] = [
       '#type' => 'select',
       '#title' => $this->t('XML URL attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML text attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['xml_url_field'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[type_field]"]' => array('value' => 'rss'),
-        ),
-      ),
-    );
-    $form['url_field'] = array(
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[type_field]"]' => ['value' => 'rss'],
+        ],
+      ],
+    ];
+    $form['url_field'] = [
       '#type' => 'select',
       '#title' => $this->t('URL attribute'),
       '#description' => $this->t('The field that is going to be used as the OPML URL attribute for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['url_field'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="row_options[type_field]"]' => array(
-            array('value' => 'link'),
-            array('value' => 'include'),
-          ),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="row_options[type_field]"]' => [
+            ['value' => 'link'],
+            ['value' => 'include'],
+          ],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -157,7 +157,7 @@ public function validate() {
           $errors[] = $this->t('Row style plugin requires specifying which views field to use for XML URL attribute.');
         }
       }
-      elseif (in_array($this->options['type_field'], array('link', 'include'))) {
+      elseif (in_array($this->options['type_field'], ['link', 'include'])) {
         if (empty($this->options['url_field'])) {
           $errors[] = $this->t('Row style plugin requires specifying which views field to use for URL attribute.');
         }
@@ -171,7 +171,7 @@ public function validate() {
    */
   public function render($row) {
     // Create the OPML item array.
-    $item = array();
+    $item = [];
     $row_index = $this->view->row_index;
     $item['text'] = $this->getField($row_index, $this->options['text_field']);
     $item['created'] = $this->getField($row_index, $this->options['created_field']);
@@ -190,13 +190,13 @@ public function render($row) {
     // Remove empty attributes.
     $item = array_filter($item);
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $item,
       '#field_alias' => isset($this->field_alias) ? $this->field_alias : '',
-    );
+    ];
     return $build;
   }
 
diff --git a/core/modules/views/src/Plugin/views/row/RowPluginBase.php b/core/modules/views/src/Plugin/views/row/RowPluginBase.php
index d1e090e..fd2b96c 100644
--- a/core/modules/views/src/Plugin/views/row/RowPluginBase.php
+++ b/core/modules/views/src/Plugin/views/row/RowPluginBase.php
@@ -64,7 +64,7 @@ function usesFields() {
   protected function defineOptions() {
     $options = parent::defineOptions();
     if (isset($this->base_table)) {
-      $options['relationship'] = array('default' => 'none');
+      $options['relationship'] = ['default' => 'none'];
     }
 
     return $options;
@@ -81,7 +81,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       // A whole bunch of code to figure out what relationships are valid for
       // this item.
       $relationships = $executable->display_handler->getOption('relationships');
-      $relationship_options = array();
+      $relationship_options = [];
 
       foreach ($relationships as $relationship) {
         $relationship_handler = Views::handlerManager('relationship')->getHandler($relationship);
@@ -96,25 +96,25 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       }
 
       if (!empty($relationship_options)) {
-        $relationship_options = array_merge(array('none' => $this->t('Do not use a relationship')), $relationship_options);
+        $relationship_options = array_merge(['none' => $this->t('Do not use a relationship')], $relationship_options);
         $rel = empty($this->options['relationship']) ? 'none' : $this->options['relationship'];
         if (empty($relationship_options[$rel])) {
           // Pick the first relationship.
           $rel = key($relationship_options);
         }
 
-        $form['relationship'] = array(
+        $form['relationship'] = [
           '#type' => 'select',
           '#title' => $this->t('Relationship'),
           '#options' => $relationship_options,
           '#default_value' => $rel,
-        );
+        ];
       }
       else {
-        $form['relationship'] = array(
+        $form['relationship'] = [
           '#type' => 'value',
           '#value' => 'none',
-        );
+        ];
       }
     }
   }
@@ -164,13 +164,13 @@ public function preRender($result) { }
    *   The rendered output of a single row, used by the style plugin.
    */
   public function render($row) {
-    return array(
+    return [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $row,
       '#field_alias' => isset($this->field_alias) ? $this->field_alias : '',
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/row/RssFields.php b/core/modules/views/src/Plugin/views/row/RssFields.php
index a420bb7..1b56aae 100644
--- a/core/modules/views/src/Plugin/views/row/RssFields.php
+++ b/core/modules/views/src/Plugin/views/row/RssFields.php
@@ -27,87 +27,87 @@ class RssFields extends RowPluginBase {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['title_field'] = array('default' => '');
-    $options['link_field'] = array('default' => '');
-    $options['description_field'] = array('default' => '');
-    $options['creator_field'] = array('default' => '');
-    $options['date_field'] = array('default' => '');
-    $options['guid_field_options']['contains']['guid_field'] = array('default' => '');
-    $options['guid_field_options']['contains']['guid_field_is_permalink'] = array('default' => TRUE);
+    $options['title_field'] = ['default' => ''];
+    $options['link_field'] = ['default' => ''];
+    $options['description_field'] = ['default' => ''];
+    $options['creator_field'] = ['default' => ''];
+    $options['date_field'] = ['default' => ''];
+    $options['guid_field_options']['contains']['guid_field'] = ['default' => ''];
+    $options['guid_field_options']['contains']['guid_field_is_permalink'] = ['default' => TRUE];
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $initial_labels = array('' => $this->t('- None -'));
+    $initial_labels = ['' => $this->t('- None -')];
     $view_fields_labels = $this->displayHandler->getFieldLabels();
     $view_fields_labels = array_merge($initial_labels, $view_fields_labels);
 
-    $form['title_field'] = array(
+    $form['title_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Title field'),
       '#description' => $this->t('The field that is going to be used as the RSS item title for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['title_field'],
       '#required' => TRUE,
-    );
-    $form['link_field'] = array(
+    ];
+    $form['link_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Link field'),
       '#description' => $this->t('The field that is going to be used as the RSS item link for each row. This must be a drupal relative path.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['link_field'],
       '#required' => TRUE,
-    );
-    $form['description_field'] = array(
+    ];
+    $form['description_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Description field'),
       '#description' => $this->t('The field that is going to be used as the RSS item description for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['description_field'],
       '#required' => TRUE,
-    );
-    $form['creator_field'] = array(
+    ];
+    $form['creator_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Creator field'),
       '#description' => $this->t('The field that is going to be used as the RSS item creator for each row.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['creator_field'],
       '#required' => TRUE,
-    );
-    $form['date_field'] = array(
+    ];
+    $form['date_field'] = [
       '#type' => 'select',
       '#title' => $this->t('Publication date field'),
       '#description' => $this->t('The field that is going to be used as the RSS item pubDate for each row. It needs to be in RFC 2822 format.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['date_field'],
       '#required' => TRUE,
-    );
-    $form['guid_field_options'] = array(
+    ];
+    $form['guid_field_options'] = [
       '#type' => 'details',
       '#title' => $this->t('GUID settings'),
       '#open' => TRUE,
-    );
-    $form['guid_field_options']['guid_field'] = array(
+    ];
+    $form['guid_field_options']['guid_field'] = [
       '#type' => 'select',
       '#title' => $this->t('GUID field'),
       '#description' => $this->t('The globally unique identifier of the RSS item.'),
       '#options' => $view_fields_labels,
       '#default_value' => $this->options['guid_field_options']['guid_field'],
       '#required' => TRUE,
-    );
-    $form['guid_field_options']['guid_field_is_permalink'] = array(
+    ];
+    $form['guid_field_options']['guid_field_is_permalink'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('GUID is permalink'),
       '#description' => $this->t('The RSS item GUID is a permalink.'),
       '#default_value' => $this->options['guid_field_options']['guid_field_is_permalink'],
-    );
+    ];
   }
 
   public function validate() {
     $errors = parent::validate();
-    $required_options = array('title_field', 'link_field', 'description_field', 'creator_field', 'date_field');
+    $required_options = ['title_field', 'link_field', 'description_field', 'creator_field', 'date_field'];
     foreach ($required_options as $required_option) {
       if (empty($this->options[$required_option])) {
         $errors[] = $this->t('Row style plugin requires specifying which views fields to use for RSS item.');
@@ -129,7 +129,7 @@ public function render($row) {
     if (function_exists('rdf_get_namespaces')) {
       // Merge RDF namespaces in the XML namespaces in case they are used
       // further in the RSS content.
-      $xml_rdf_namespaces = array();
+      $xml_rdf_namespaces = [];
       foreach (rdf_get_namespaces() as $prefix => $uri) {
         $xml_rdf_namespaces['xmlns:' . $prefix] = $uri;
       }
@@ -146,14 +146,14 @@ public function render($row) {
     $field = $this->getField($row_index, $this->options['description_field']);
     $item->description = is_array($field) ? $field : ['#markup' => $field];
 
-    $item->elements = array(
-      array('key' => 'pubDate', 'value' => $this->getField($row_index, $this->options['date_field'])),
-      array(
+    $item->elements = [
+      ['key' => 'pubDate', 'value' => $this->getField($row_index, $this->options['date_field'])],
+      [
         'key' => 'dc:creator',
         'value' => $this->getField($row_index, $this->options['creator_field']),
-        'namespace' => array('xmlns:dc' => 'http://purl.org/dc/elements/1.1/'),
-      ),
-    );
+        'namespace' => ['xmlns:dc' => 'http://purl.org/dc/elements/1.1/'],
+      ],
+    ];
     $guid_is_permalink_string = 'false';
     $item_guid = $this->getField($row_index, $this->options['guid_field_options']['guid_field']);
     if ($this->options['guid_field_options']['guid_field_is_permalink']) {
@@ -162,11 +162,11 @@ public function render($row) {
       //   https://www.drupal.org/node/2430589.
       $item_guid = Url::fromUserInput('/' . $item_guid)->setAbsolute()->toString();
     }
-    $item->elements[] = array(
+    $item->elements[] = [
       'key' => 'guid',
       'value' => $item_guid,
-      'attributes' => array('isPermaLink' => $guid_is_permalink_string),
-    );
+      'attributes' => ['isPermaLink' => $guid_is_permalink_string],
+    ];
 
     $row_index++;
 
@@ -176,13 +176,13 @@ public function render($row) {
       }
     }
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#row' => $item,
       '#field_alias' => isset($this->field_alias) ? $this->field_alias : '',
-    );
+    ];
 
     return $build;
   }
diff --git a/core/modules/views/src/Plugin/views/row/RssPluginBase.php b/core/modules/views/src/Plugin/views/row/RssPluginBase.php
index b5fd385..b8c518b 100644
--- a/core/modules/views/src/Plugin/views/row/RssPluginBase.php
+++ b/core/modules/views/src/Plugin/views/row/RssPluginBase.php
@@ -61,7 +61,7 @@ public static function create(ContainerInterface $container, array $configuratio
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['view_mode'] = array('default' => 'default');
+    $options['view_mode'] = ['default' => 'default'];
 
     return $options;
   }
@@ -72,12 +72,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['view_mode'] = array(
+    $form['view_mode'] = [
       '#type' => 'select',
       '#title' => $this->t('Display type'),
       '#options' => $this->buildOptionsForm_summary_options(),
       '#default_value' => $this->options['view_mode'],
-    );
+    ];
   }
 
   /**
@@ -85,7 +85,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function buildOptionsForm_summary_options() {
     $view_modes = $this->entityManager->getViewModes($this->entityTypeId);
-    $options = array();
+    $options = [];
     foreach ($view_modes as $mode => $settings) {
       $options[$mode] = $settings['label'];
     }
diff --git a/core/modules/views/src/Plugin/views/sort/Date.php b/core/modules/views/src/Plugin/views/sort/Date.php
index 4017e2b..0c7d9e1 100644
--- a/core/modules/views/src/Plugin/views/sort/Date.php
+++ b/core/modules/views/src/Plugin/views/sort/Date.php
@@ -17,7 +17,7 @@ class Date extends SortPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['granularity'] = array('default' => 'second');
+    $options['granularity'] = ['default' => 'second'];
 
     return $options;
   }
@@ -25,20 +25,20 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['granularity'] = array(
+    $form['granularity'] = [
       '#type' => 'radios',
       '#title' => $this->t('Granularity'),
-      '#options' => array(
+      '#options' => [
         'second' => $this->t('Second'),
         'minute' => $this->t('Minute'),
         'hour'   => $this->t('Hour'),
         'day'    => $this->t('Day'),
         'month'  => $this->t('Month'),
         'year'   => $this->t('Year'),
-      ),
+      ],
       '#description' => $this->t('The granularity is the smallest unit to use when determining whether two dates are the same; for example, if the granularity is "Year" then all dates in 1999, regardless of when they fall in 1999, will be considered the same date.'),
       '#default_value' => $this->options['granularity'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/sort/GroupByNumeric.php b/core/modules/views/src/Plugin/views/sort/GroupByNumeric.php
index b7245dd..5308439 100644
--- a/core/modules/views/src/Plugin/views/sort/GroupByNumeric.php
+++ b/core/modules/views/src/Plugin/views/sort/GroupByNumeric.php
@@ -30,9 +30,9 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
   public function query() {
     $this->ensureMyTable();
 
-    $params = array(
+    $params = [
       'function' => $this->options['group_type'],
-    );
+    ];
 
     $this->query->addOrderBy($this->tableAlias, $this->realField, $this->options['order'], NULL, $params);
   }
diff --git a/core/modules/views/src/Plugin/views/sort/SortPluginBase.php b/core/modules/views/src/Plugin/views/sort/SortPluginBase.php
index 97122b1..a40dc34 100644
--- a/core/modules/views/src/Plugin/views/sort/SortPluginBase.php
+++ b/core/modules/views/src/Plugin/views/sort/SortPluginBase.php
@@ -42,13 +42,13 @@ public function query() {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['order'] = array('default' => 'ASC');
-    $options['exposed'] = array('default' => FALSE);
-    $options['expose'] = array(
-      'contains' => array(
-        'label' => array('default' => ''),
-      ),
-    );
+    $options['order'] = ['default' => 'ASC'];
+    $options['exposed'] = ['default' => FALSE];
+    $options['expose'] = [
+      'contains' => [
+        'label' => ['default' => ''],
+      ],
+    ];
     return $options;
   }
 
@@ -79,9 +79,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     if ($this->canExpose()) {
       $this->showExposeButton($form, $form_state);
     }
-    $form['op_val_start'] = array('#value' => '<div class="clearfix">');
+    $form['op_val_start'] = ['#value' => '<div class="clearfix">'];
     $this->showSortForm($form, $form_state);
-    $form['op_val_end'] = array('#value' => '</div>');
+    $form['op_val_end'] = ['#value' => '</div>'];
     if ($this->canExpose()) {
       $this->showExposeForm($form, $form_state);
     }
@@ -91,47 +91,47 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    * Shortcut to display the expose/hide button.
    */
   public function showExposeButton(&$form, FormStateInterface $form_state) {
-    $form['expose_button'] = array(
+    $form['expose_button'] = [
       '#prefix' => '<div class="views-expose clearfix">',
       '#suffix' => '</div>',
       // Should always come first
       '#weight' => -1000,
-    );
+    ];
 
     // Add a checkbox for JS users, which will have behavior attached to it
     // so it can replace the button.
-    $form['expose_button']['checkbox'] = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('js-only')),
-    );
-    $form['expose_button']['checkbox']['checkbox'] = array(
+    $form['expose_button']['checkbox'] = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['js-only']],
+    ];
+    $form['expose_button']['checkbox']['checkbox'] = [
       '#title' => $this->t('Expose this sort to visitors, to allow them to change it'),
       '#type' => 'checkbox',
-    );
+    ];
 
     // Then add the button itself.
     if (empty($this->options['exposed'])) {
-      $form['expose_button']['markup'] = array(
+      $form['expose_button']['markup'] = [
         '#markup' => '<div class="description exposed-description" style="float: left; margin-right:10px">' . $this->t('This sort is not exposed. Expose it to allow the users to change it.') . '</div>',
-      );
-      $form['expose_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      ];
+      $form['expose_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Expose sort'),
-        '#submit' => array(array($this, 'displayExposedForm')),
-      );
+        '#submit' => [[$this, 'displayExposedForm']],
+      ];
       $form['expose_button']['checkbox']['checkbox']['#default_value'] = 0;
     }
     else {
-      $form['expose_button']['markup'] = array(
+      $form['expose_button']['markup'] = [
         '#markup' => '<div class="description exposed-description">' . $this->t('This sort is exposed. If you hide it, users will not be able to change it.') . '</div>',
-      );
-      $form['expose_button']['button'] = array(
-        '#limit_validation_errors' => array(),
+      ];
+      $form['expose_button']['button'] = [
+        '#limit_validation_errors' => [],
         '#type' => 'submit',
         '#value' => $this->t('Hide sort'),
-        '#submit' => array(array($this, 'displayExposedForm')),
-      );
+        '#submit' => [[$this, 'displayExposedForm']],
+      ];
       $form['expose_button']['checkbox']['checkbox']['#default_value'] = 1;
     }
   }
@@ -166,12 +166,12 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
   protected function showSortForm(&$form, FormStateInterface $form_state) {
     $options = $this->sortOptions();
     if (!empty($options)) {
-      $form['order'] = array(
+      $form['order'] = [
         '#title' => $this->t('Order'),
         '#type' => 'radios',
         '#options' => $options,
         '#default_value' => $this->options['order'],
-      );
+      ];
     }
   }
 
@@ -184,10 +184,10 @@ public function sortSubmit(&$form, FormStateInterface $form_state) { }
    * Should be overridden by classes that don't override sort_form
    */
   protected function sortOptions() {
-    return array(
+    return [
       'ASC' => $this->t('Sort ascending'),
       'DESC' => $this->t('Sort descending'),
-    );
+    ];
   }
 
   public function buildExposeForm(&$form, FormStateInterface $form_state) {
@@ -195,26 +195,26 @@ public function buildExposeForm(&$form, FormStateInterface $form_state) {
     // prior to rendering. That's why the preRender for it needs to run first,
     // so that when the next preRender (the one for fieldsets) runs, it gets
     // the flattened data.
-    array_unshift($form['#pre_render'], array(get_class($this), 'preRenderFlattenData'));
+    array_unshift($form['#pre_render'], [get_class($this), 'preRenderFlattenData']);
     $form['expose']['#flatten'] = TRUE;
 
-    $form['expose']['label'] = array(
+    $form['expose']['label'] = [
       '#type' => 'textfield',
       '#default_value' => $this->options['expose']['label'],
       '#title' => $this->t('Label'),
       '#required' => TRUE,
       '#size' => 40,
       '#weight' => -1,
-   );
+   ];
   }
 
   /**
    * Provide default options for exposed sorts.
    */
   public function defaultExposeOptions() {
-    $this->options['expose'] = array(
+    $this->options['expose'] = [
       'label' => $this->definition['title'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/src/Plugin/views/style/DefaultSummary.php b/core/modules/views/src/Plugin/views/style/DefaultSummary.php
index abd149d..0b4325b 100644
--- a/core/modules/views/src/Plugin/views/style/DefaultSummary.php
+++ b/core/modules/views/src/Plugin/views/style/DefaultSummary.php
@@ -22,10 +22,10 @@ class DefaultSummary extends StylePluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['base_path'] = array('default' => '');
-    $options['count'] = array('default' => TRUE);
-    $options['override'] = array('default' => FALSE);
-    $options['items_per_page'] = array('default' => 25);
+    $options['base_path'] = ['default' => ''];
+    $options['count'] = ['default' => TRUE];
+    $options['override'] = ['default' => FALSE];
+    $options['items_per_page'] = ['default' => 25];
 
     return $options;
   }
@@ -37,7 +37,7 @@ public function query() {
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
-    $form['base_path'] = array(
+    $form['base_path'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Base path'),
       '#default_value' => $this->options['base_path'],
@@ -46,43 +46,43 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         Do not include beginning and ending forward slash. If this value
         is empty, views will use the first path found as the base path,
         in page displays, or / if no path could be found.'),
-    );
-    $form['count'] = array(
+    ];
+    $form['count'] = [
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['count']),
       '#title' => $this->t('Display record count with link'),
-    );
-    $form['override'] = array(
+    ];
+    $form['override'] = [
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['override']),
       '#title' => $this->t('Override number of items to display'),
-    );
+    ];
 
-    $form['items_per_page'] = array(
+    $form['items_per_page'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Items to display'),
       '#default_value' => $this->options['items_per_page'],
-      '#states' => array(
-        'visible' => array(
-          ':input[name="options[summary][options][' . $this->definition['id'] . '][override]"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="options[summary][options][' . $this->definition['id'] . '][override]"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
   }
 
   public function render() {
-    $rows = array();
+    $rows = [];
     foreach ($this->view->result as $row) {
       // @todo: Include separator as an option.
       $rows[] = $row;
     }
 
-    return array(
+    return [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#rows' => $rows,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/style/EntityReference.php b/core/modules/views/src/Plugin/views/style/EntityReference.php
index f694b00..e07a0f1 100644
--- a/core/modules/views/src/Plugin/views/style/EntityReference.php
+++ b/core/modules/views/src/Plugin/views/style/EntityReference.php
@@ -41,7 +41,7 @@ class EntityReference extends StylePluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['search_fields'] = array('default' => array());
+    $options['search_fields'] = ['default' => []];
 
     return $options;
   }
@@ -53,7 +53,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
     $options = $this->displayHandler->getFieldLabels(TRUE);
-    $form['search_fields'] = array(
+    $form['search_fields'] = [
       '#type' => 'checkboxes',
       '#title' => $this->t('Search fields'),
       '#options' => $options,
@@ -61,7 +61,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       '#default_value' => $this->options['search_fields'],
       '#description' => $this->t('Select the field(s) that will be searched when using the autocomplete widget.'),
       '#weight' => -3,
-    );
+    ];
   }
 
   /**
@@ -81,7 +81,7 @@ public function render() {
 
     // @todo We don't display grouping info for now. Could be useful for select
     // widget, though.
-    $results = array();
+    $results = [];
     foreach ($sets as $records) {
       foreach ($records as $values) {
         $results[$values->{$id_field_alias}] = $this->view->rowPlugin->render($values);
diff --git a/core/modules/views/src/Plugin/views/style/Grid.php b/core/modules/views/src/Plugin/views/style/Grid.php
index 34ab8ed..938c1b5 100644
--- a/core/modules/views/src/Plugin/views/style/Grid.php
+++ b/core/modules/views/src/Plugin/views/style/Grid.php
@@ -32,13 +32,13 @@ class Grid extends StylePluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['columns'] = array('default' => '4');
-    $options['automatic_width'] = array('default' => TRUE);
-    $options['alignment'] = array('default' => 'horizontal');
-    $options['col_class_custom'] = array('default' => '');
-    $options['col_class_default'] = array('default' => TRUE);
-    $options['row_class_custom'] = array('default' => '');
-    $options['row_class_default'] = array('default' => TRUE);
+    $options['columns'] = ['default' => '4'];
+    $options['automatic_width'] = ['default' => TRUE];
+    $options['alignment'] = ['default' => 'horizontal'];
+    $options['col_class_custom'] = ['default' => ''];
+    $options['col_class_default'] = ['default' => TRUE];
+    $options['row_class_custom'] = ['default' => ''];
+    $options['row_class_default'] = ['default' => TRUE];
     return $options;
   }
 
@@ -47,53 +47,53 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['columns'] = array(
+    $form['columns'] = [
       '#type' => 'number',
       '#title' => $this->t('Number of columns'),
       '#default_value' => $this->options['columns'],
       '#required' => TRUE,
       '#min' => 1,
-    );
-    $form['automatic_width'] = array(
+    ];
+    $form['automatic_width'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Automatic width'),
       '#description' => $this->t('The width of each column will be calculated automatically based on the number of columns provided. If additional classes are entered or a theme injects classes based on a grid system, disabling this option may prove beneficial.'),
       '#default_value' => $this->options['automatic_width'],
-    );
-    $form['alignment'] = array(
+    ];
+    $form['alignment'] = [
       '#type' => 'radios',
       '#title' => $this->t('Alignment'),
-      '#options' => array('horizontal' => $this->t('Horizontal'), 'vertical' => $this->t('Vertical')),
+      '#options' => ['horizontal' => $this->t('Horizontal'), 'vertical' => $this->t('Vertical')],
       '#default_value' => $this->options['alignment'],
       '#description' => $this->t('Horizontal alignment will place items starting in the upper left and moving right. Vertical alignment will place items starting in the upper left and moving down.'),
-    );
-    $form['col_class_default'] = array(
+    ];
+    $form['col_class_default'] = [
       '#title' => $this->t('Default column classes'),
       '#description' => $this->t('Add the default views column classes like views-col, col-1 and clearfix to the output. You can use this to quickly reduce the amount of markup the view provides by default, at the cost of making it more difficult to apply CSS.'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['col_class_default'],
-    );
-    $form['col_class_custom'] = array(
+    ];
+    $form['col_class_custom'] = [
       '#title' => $this->t('Custom column class'),
       '#description' => $this->t('Additional classes to provide on each column. Separated by a space.'),
       '#type' => 'textfield',
       '#default_value' => $this->options['col_class_custom'],
-    );
+    ];
     if ($this->usesFields()) {
       $form['col_class_custom']['#description'] .= ' ' . $this->t('You may use field tokens from as per the "Replacement patterns" used in "Rewrite the output of this field" for all fields.');
     }
-    $form['row_class_default'] = array(
+    $form['row_class_default'] = [
       '#title' => $this->t('Default row classes'),
       '#description' => $this->t('Adds the default views row classes like views-row, row-1 and clearfix to the output. You can use this to quickly reduce the amount of markup the view provides by default, at the cost of making it more difficult to apply CSS.'),
       '#type' => 'checkbox',
       '#default_value' => $this->options['row_class_default'],
-    );
-    $form['row_class_custom'] = array(
+    ];
+    $form['row_class_custom'] = [
       '#title' => $this->t('Custom row class'),
       '#description' => $this->t('Additional classes to provide on each row. Separated by a space.'),
       '#type' => 'textfield',
       '#default_value' => $this->options['row_class_custom'],
-    );
+    ];
     if ($this->usesFields()) {
       $form['row_class_custom']['#description'] .= ' ' . $this->t('You may use field tokens from as per the "Replacement patterns" used in "Rewrite the output of this field" for all fields.');
     }
diff --git a/core/modules/views/src/Plugin/views/style/HtmlList.php b/core/modules/views/src/Plugin/views/style/HtmlList.php
index a89b0f1..a6df09d 100644
--- a/core/modules/views/src/Plugin/views/style/HtmlList.php
+++ b/core/modules/views/src/Plugin/views/style/HtmlList.php
@@ -39,9 +39,9 @@ class HtmlList extends StylePluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['type'] = array('default' => 'ul');
-    $options['class'] = array('default' => '');
-    $options['wrapper_class'] = array('default' => 'item-list');
+    $options['type'] = ['default' => 'ul'];
+    $options['class'] = ['default' => ''];
+    $options['wrapper_class'] = ['default' => 'item-list'];
 
     return $options;
   }
@@ -51,26 +51,26 @@ protected function defineOptions() {
    */
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['type'] = array(
+    $form['type'] = [
       '#type' => 'radios',
       '#title' => $this->t('List type'),
-      '#options' => array('ul' => $this->t('Unordered list'), 'ol' => $this->t('Ordered list')),
+      '#options' => ['ul' => $this->t('Unordered list'), 'ol' => $this->t('Ordered list')],
       '#default_value' => $this->options['type'],
-    );
-    $form['wrapper_class'] = array(
+    ];
+    $form['wrapper_class'] = [
       '#title' => $this->t('Wrapper class'),
       '#description' => $this->t('The class to provide on the wrapper, outside the list.'),
       '#type' => 'textfield',
       '#size' => '30',
       '#default_value' => $this->options['wrapper_class'],
-    );
-    $form['class'] = array(
+    ];
+    $form['class'] = [
       '#title' => $this->t('List class'),
       '#description' => $this->t('The class to provide on the list element itself.'),
       '#type' => 'textfield',
       '#size' => '30',
       '#default_value' => $this->options['class'],
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/style/Mapping.php b/core/modules/views/src/Plugin/views/style/Mapping.php
index e7c7242..7db5247 100644
--- a/core/modules/views/src/Plugin/views/style/Mapping.php
+++ b/core/modules/views/src/Plugin/views/style/Mapping.php
@@ -49,14 +49,14 @@ protected function defineOptions() {
 
     // Parse the mapping and add a default for each.
     foreach ($this->defineMapping() as $key => $value) {
-      $default = !empty($value['#multiple']) ? array() : '';
-      $options['mapping']['contains'][$key] = array(
+      $default = !empty($value['#multiple']) ? [] : '';
+      $options['mapping']['contains'][$key] = [
         'default' => isset($value['#default_value']) ? $value['#default_value'] : $default,
-      );
+      ];
       if (!empty($value['#toggle'])) {
-        $options['mapping']['contains']["toggle_$key"] = array(
+        $options['mapping']['contains']["toggle_$key"] = [
           'default' => FALSE,
-        );
+        ];
       }
     }
 
@@ -79,19 +79,19 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $field_labels = $this->displayHandler->getFieldLabels();
 
     // Provide some default values.
-    $defaults = array(
+    $defaults = [
       '#type' => 'select',
       '#required' => FALSE,
       '#multiple' => FALSE,
-    );
+    ];
 
     // For each mapping, add a select element to the form.
     foreach ($options as $key => $value) {
       // If the field is optional, add a 'None' value to the top of the options.
-      $field_options = array();
+      $field_options = [];
       $required = !empty($mapping[$key]['#required']);
       if (!$required && empty($mapping[$key]['#multiple'])) {
-        $field_options = array('' => $this->t('- None -'));
+        $field_options = ['' => $this->t('- None -')];
       }
       $field_options += $field_labels;
 
@@ -104,19 +104,19 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
       }
 
       // These values must always be set.
-      $overrides = array(
+      $overrides = [
         '#options' => $field_options,
         '#default_value' => $options[$key],
-      );
+      ];
 
       // Optionally allow the select to be toggleable.
       if (!empty($mapping[$key]['#toggle'])) {
-        $form['mapping']["toggle_$key"] = array(
+        $form['mapping']["toggle_$key"] = [
           '#type' => 'checkbox',
-          '#title' => $this->t('Use a custom %field_name', array('%field_name' => strtolower($mapping[$key]['#title']))),
+          '#title' => $this->t('Use a custom %field_name', ['%field_name' => strtolower($mapping[$key]['#title'])]),
           '#default_value' => $this->options['mapping']["toggle_$key"],
-        );
-        $overrides['#states']['visible'][':input[name="style_options[mapping][' . "toggle_$key" . ']"]'] = array('checked' => TRUE);
+        ];
+        $overrides['#states']['visible'][':input[name="style_options[mapping][' . "toggle_$key" . ']"]'] = ['checked' => TRUE];
       }
 
       $form['mapping'][$key] = $overrides + $mapping[$key] + $defaults;
@@ -129,13 +129,13 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    * Provides the mapping definition as an available variable.
    */
   public function render() {
-    return array(
+    return [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#rows' => $this->view->result,
       '#mapping' => $this->defineMapping(),
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/style/Opml.php b/core/modules/views/src/Plugin/views/style/Opml.php
index ed02511..69679d3 100644
--- a/core/modules/views/src/Plugin/views/style/Opml.php
+++ b/core/modules/views/src/Plugin/views/style/Opml.php
@@ -31,7 +31,7 @@ class Opml extends StylePluginBase {
    */
   public function attachTo(array &$build, $display_id, Url $feed_url, $title) {
     $display = $this->view->displayHandlers->get($display_id);
-    $url_options = array();
+    $url_options = [];
     $input = $this->view->getExposedInput();
     if ($input) {
       $url_options['query'] = $input;
@@ -41,15 +41,15 @@ public function attachTo(array &$build, $display_id, Url $feed_url, $title) {
     $url = $feed_url->setOptions($url_options)->toString();
     if ($display->hasPath()) {
       if (empty($this->preview)) {
-        $build['#attached']['feed'][] = array($url, $title);
+        $build['#attached']['feed'][] = [$url, $title];
       }
     }
     else {
-      $this->view->feedIcons[] = array(
+      $this->view->feedIcons[] = [
         '#theme' => 'feed_icon',
         '#url' => $url,
         '#title' => $title,
-      );
+      ];
     }
   }
 
@@ -61,19 +61,19 @@ public function render() {
       debug('Drupal\views\Plugin\views\style\Opml: Missing row plugin');
       return;
     }
-    $rows = array();
+    $rows = [];
 
     foreach ($this->view->result as $row_index => $row) {
       $this->view->row_index = $row_index;
       $rows[] = $this->view->rowPlugin->render($row);
     }
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#rows' => $rows,
-    );
+    ];
     unset($this->view->row_index);
     return $build;
   }
diff --git a/core/modules/views/src/Plugin/views/style/Rss.php b/core/modules/views/src/Plugin/views/style/Rss.php
index e612453..b7efa57 100644
--- a/core/modules/views/src/Plugin/views/style/Rss.php
+++ b/core/modules/views/src/Plugin/views/style/Rss.php
@@ -28,7 +28,7 @@ class Rss extends StylePluginBase {
   protected $usesRowPlugin = TRUE;
 
   public function attachTo(array &$build, $display_id, Url $feed_url, $title) {
-    $url_options = array();
+    $url_options = [];
     $input = $this->view->getExposedInput();
     if ($input) {
       $url_options['query'] = $input;
@@ -45,18 +45,18 @@ public function attachTo(array &$build, $display_id, Url $feed_url, $title) {
     ];
 
     // Attach a link to the RSS feed, which is an alternate representation.
-    $build['#attached']['html_head_link'][][] = array(
+    $build['#attached']['html_head_link'][][] = [
       'rel' => 'alternate',
       'type' => 'application/rss+xml',
       'title' => $title,
       'href' => $url,
-    );
+    ];
   }
 
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['description'] = array('default' => '');
+    $options['description'] = ['default' => ''];
 
     return $options;
   }
@@ -64,13 +64,13 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['description'] = array(
+    $form['description'] = [
       '#type' => 'textfield',
       '#title' => $this->t('RSS description'),
       '#default_value' => $this->options['description'],
       '#description' => $this->t('This will appear in the RSS feed itself.'),
       '#maxlength' => 1024,
-    );
+    ];
   }
 
   /**
@@ -80,7 +80,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    *   A render array.
    */
   protected function getChannelElements() {
-    return array();
+    return [];
   }
 
   /**
@@ -101,13 +101,13 @@ public function getDescription() {
   public function render() {
     if (empty($this->view->rowPlugin)) {
       debug('Drupal\views\Plugin\views\style\Rss: Missing row plugin');
-      return array();
+      return [];
     }
     $rows = [];
 
     // This will be filled in by the row plugin and is used later on in the
     // theming output.
-    $this->namespaces = array('xmlns:dc' => 'http://purl.org/dc/elements/1.1/');
+    $this->namespaces = ['xmlns:dc' => 'http://purl.org/dc/elements/1.1/'];
 
     // Fetch any additional elements for the channel and merge in their
     // namespaces.
@@ -123,12 +123,12 @@ public function render() {
       $rows[] = $this->view->rowPlugin->render($row);
     }
 
-    $build = array(
+    $build = [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#options' => $this->options,
       '#rows' => $rows,
-    );
+    ];
     unset($this->view->row_index);
     return $build;
   }
diff --git a/core/modules/views/src/Plugin/views/style/StylePluginBase.php b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
index a7b1917..1131b6a 100644
--- a/core/modules/views/src/Plugin/views/style/StylePluginBase.php
+++ b/core/modules/views/src/Plugin/views/style/StylePluginBase.php
@@ -47,7 +47,7 @@
   /**
    * Store all available tokens row rows.
    */
-  protected $rowTokens = array();
+  protected $rowTokens = [];
 
   /**
    * Does the style plugin allows to use style plugins.
@@ -122,9 +122,9 @@ public function init(ViewExecutable $view, DisplayPluginBase $display, array &$o
       $this->view->rowPlugin = $display->getPlugin('row');
     }
 
-    $this->options += array(
-      'grouping' => array(),
-    );
+    $this->options += [
+      'grouping' => [],
+    ];
 
   }
 
@@ -230,7 +230,7 @@ public function getRowClass($row_index) {
   public function tokenizeValue($value, $row_index) {
     if (strpos($value, '{{') !== FALSE) {
       // Row tokens might be empty, for example for node row style.
-      $tokens = isset($this->rowTokens[$row_index]) ? $this->rowTokens[$row_index] : array();
+      $tokens = isset($this->rowTokens[$row_index]) ? $this->rowTokens[$row_index] : [];
       if (!empty($this->view->build_info['substitutions'])) {
         $tokens += $this->view->build_info['substitutions'];
       }
@@ -257,12 +257,12 @@ public function evenEmpty() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['grouping'] = array('default' => array());
+    $options['grouping'] = ['default' => []];
     if ($this->usesRowClass()) {
-      $options['row_class'] = array('default' => '');
-      $options['default_row_class'] = array('default' => TRUE);
+      $options['row_class'] = ['default' => ''];
+      $options['default_row_class'] = ['default' => TRUE];
     }
-    $options['uses_fields'] = array('default' => FALSE);
+    $options['uses_fields'] = ['default' => FALSE];
 
     return $options;
   }
@@ -277,7 +277,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     // to FALSE.
     // @TODO: Document "usesGrouping" in docs.php when docs.php is written.
     if ($this->usesFields() && $this->usesGrouping()) {
-      $options = array('' => $this->t('- None -'));
+      $options = ['' => $this->t('- None -')];
       $field_labels = $this->displayHandler->getFieldLabels(TRUE);
       $options += $field_labels;
       // If there are no fields, we can't group on them.
@@ -286,7 +286,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         // select form.
         if (is_string($this->options['grouping'])) {
           $grouping = $this->options['grouping'];
-          $this->options['grouping'] = array();
+          $this->options['grouping'] = [];
           $this->options['grouping'][0]['field'] = $grouping;
         }
         if (isset($this->options['group_rendered']) && is_string($this->options['group_rendered'])) {
@@ -297,67 +297,67 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         $c = count($this->options['grouping']);
         // Add a form for every grouping, plus one.
         for ($i = 0; $i <= $c; $i++) {
-          $grouping = !empty($this->options['grouping'][$i]) ? $this->options['grouping'][$i] : array();
-          $grouping += array('field' => '', 'rendered' => TRUE, 'rendered_strip' => FALSE);
-          $form['grouping'][$i]['field'] = array(
+          $grouping = !empty($this->options['grouping'][$i]) ? $this->options['grouping'][$i] : [];
+          $grouping += ['field' => '', 'rendered' => TRUE, 'rendered_strip' => FALSE];
+          $form['grouping'][$i]['field'] = [
             '#type' => 'select',
-            '#title' => $this->t('Grouping field Nr.@number', array('@number' => $i + 1)),
+            '#title' => $this->t('Grouping field Nr.@number', ['@number' => $i + 1]),
             '#options' => $options,
             '#default_value' => $grouping['field'],
             '#description' => $this->t('You may optionally specify a field by which to group the records. Leave blank to not group.'),
-          );
-          $form['grouping'][$i]['rendered'] = array(
+          ];
+          $form['grouping'][$i]['rendered'] = [
             '#type' => 'checkbox',
             '#title' => $this->t('Use rendered output to group rows'),
             '#default_value' => $grouping['rendered'],
             '#description' => $this->t('If enabled the rendered output of the grouping field is used to group the rows.'),
-            '#states' => array(
-              'invisible' => array(
-                ':input[name="style_options[grouping][' . $i . '][field]"]' => array('value' => ''),
-              ),
-            ),
-          );
-          $form['grouping'][$i]['rendered_strip'] = array(
+            '#states' => [
+              'invisible' => [
+                ':input[name="style_options[grouping][' . $i . '][field]"]' => ['value' => ''],
+              ],
+            ],
+          ];
+          $form['grouping'][$i]['rendered_strip'] = [
             '#type' => 'checkbox',
             '#title' => $this->t('Remove tags from rendered output'),
             '#default_value' => $grouping['rendered_strip'],
-            '#states' => array(
-              'invisible' => array(
-                ':input[name="style_options[grouping][' . $i . '][field]"]' => array('value' => ''),
-              ),
-            ),
-          );
+            '#states' => [
+              'invisible' => [
+                ':input[name="style_options[grouping][' . $i . '][field]"]' => ['value' => ''],
+              ],
+            ],
+          ];
         }
       }
     }
 
     if ($this->usesRowClass()) {
-      $form['row_class'] = array(
+      $form['row_class'] = [
         '#title' => $this->t('Row class'),
         '#description' => $this->t('The class to provide on each row.'),
         '#type' => 'textfield',
         '#default_value' => $this->options['row_class'],
-      );
+      ];
 
       if ($this->usesFields()) {
         $form['row_class']['#description'] .= ' ' . $this->t('You may use field tokens from as per the "Replacement patterns" used in "Rewrite the output of this field" for all fields.');
       }
 
-      $form['default_row_class'] = array(
+      $form['default_row_class'] = [
         '#title' => $this->t('Add views row classes'),
-        '#description' => $this->t('Add the default row classes like @classes to the output. You can use this to quickly reduce the amount of markup the view provides by default, at the cost of making it more difficult to apply CSS.', array('@classes' => 'views-row')),
+        '#description' => $this->t('Add the default row classes like @classes to the output. You can use this to quickly reduce the amount of markup the view provides by default, at the cost of making it more difficult to apply CSS.', ['@classes' => 'views-row']),
         '#type' => 'checkbox',
         '#default_value' => $this->options['default_row_class'],
-      );
+      ];
     }
 
     if (!$this->usesFields() || !empty($this->options['uses_fields'])) {
-      $form['uses_fields'] = array(
+      $form['uses_fields'] = [
         '#type' => 'checkbox',
         '#title' => $this->t('Force using fields'),
         '#description' => $this->t('If neither the row nor the style plugin supports fields, this field allows to enable them, so you can for example use groupby.'),
         '#default_value' => $this->options['uses_fields'],
-      );
+      ];
     }
   }
 
@@ -366,12 +366,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function validateOptionsForm(&$form, FormStateInterface $form_state) {
     // Don't run validation on style plugins without the grouping setting.
-    if ($form_state->hasValue(array('style_options', 'grouping'))) {
+    if ($form_state->hasValue(['style_options', 'grouping'])) {
       // Don't save grouping if no field is specified.
-      $groupings = $form_state->getValue(array('style_options', 'grouping'));
+      $groupings = $form_state->getValue(['style_options', 'grouping']);
       foreach ($groupings as $index => $grouping) {
         if (empty($grouping['field'])) {
-          $form_state->unsetValue(array('style_options', 'grouping', $index));
+          $form_state->unsetValue(['style_options', 'grouping', $index]);
         }
       }
     }
@@ -442,12 +442,12 @@ public function preRender($result) {
    * @return array
    *   The render array containing the single group theme output.
    */
-  protected function renderRowGroup(array $rows = array()) {
-    return array(
+  protected function renderRowGroup(array $rows = []) {
+    return [
       '#theme' => $this->themeFunctions(),
       '#view' => $this->view,
       '#rows' => $rows,
-    );
+    ];
   }
 
   /**
@@ -486,7 +486,7 @@ public function render() {
    *   Rendered output of given grouping sets.
    */
   public function renderGroupingSets($sets) {
-    $output = array();
+    $output = [];
     $theme_functions = $this->view->buildThemeFunctions($this->groupingTheme);
     foreach ($sets as $set) {
       $level = isset($set['level']) ? $set['level'] : 0;
@@ -494,12 +494,12 @@ public function renderGroupingSets($sets) {
       $row = reset($set['rows']);
       // Render as a grouping set.
       if (is_array($row) && isset($row['group'])) {
-        $single_output = array(
+        $single_output = [
           '#theme' => $theme_functions,
           '#view' => $this->view,
           '#grouping' => $this->options['grouping'][$level],
           '#rows' => $set['rows'],
-        );
+        ];
       }
       // Render as a record set.
       else {
@@ -562,17 +562,17 @@ public function renderGroupingSets($sets) {
    *   )
    *   @endcode
    */
-  public function renderGrouping($records, $groupings = array(), $group_rendered = NULL) {
+  public function renderGrouping($records, $groupings = [], $group_rendered = NULL) {
     // This is for backward compatibility, when $groupings was a string
     // containing the ID of a single field.
     if (is_string($groupings)) {
       $rendered = $group_rendered === NULL ? TRUE : $group_rendered;
-      $groupings = array(array('field' => $groupings, 'rendered' => $rendered));
+      $groupings = [['field' => $groupings, 'rendered' => $rendered]];
     }
 
     // Make sure fields are rendered
     $this->renderFields($this->view->result);
-    $sets = array();
+    $sets = [];
     if ($groupings) {
       foreach ($records as $index => $row) {
         // Iterate through configured grouping fields to determine the
@@ -613,7 +613,7 @@ public function renderGrouping($records, $groupings = array(), $group_rendered =
           if (empty($set[$grouping])) {
             $set[$grouping]['group'] = $group_content;
             $set[$grouping]['level'] = $level;
-            $set[$grouping]['rows'] = array();
+            $set[$grouping]['rows'] = [];
           }
 
           // Move the set reference into the row set of the group we just determined.
@@ -625,17 +625,17 @@ public function renderGrouping($records, $groupings = array(), $group_rendered =
     }
     else {
       // Create a single group with an empty grouping field.
-      $sets[''] = array(
+      $sets[''] = [
         'group' => '',
         'rows' => $records,
-      );
+      ];
     }
 
     // If this parameter isn't explicitly set, modify the output to be fully
     // backward compatible to code before Views 7.x-3.0-rc2.
     // @TODO Remove this as soon as possible e.g. October 2020
     if ($group_rendered === NULL) {
-      $old_style_sets = array();
+      $old_style_sets = [];
       foreach ($sets as $group) {
         $old_style_sets[$group['group']] = $group['rows'];
       }
@@ -806,7 +806,7 @@ public function validate() {
     if ($this->usesRowPlugin()) {
       $plugin = $this->displayHandler->getPlugin('row');
       if (empty($plugin)) {
-        $errors[] = $this->t('Style @style requires a row style but the row plugin is invalid.', array('@style' => $this->definition['title']));
+        $errors[] = $this->t('Style @style requires a row style but the row plugin is invalid.', ['@style' => $this->definition['title']]);
       }
       else {
         $result = $plugin->validate();
diff --git a/core/modules/views/src/Plugin/views/style/Table.php b/core/modules/views/src/Plugin/views/style/Table.php
index c49f6e9..00e28b3 100644
--- a/core/modules/views/src/Plugin/views/style/Table.php
+++ b/core/modules/views/src/Plugin/views/style/Table.php
@@ -65,16 +65,16 @@ class Table extends StylePluginBase implements CacheableDependencyInterface {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['columns'] = array('default' => array());
-    $options['default'] = array('default' => '');
-    $options['info'] = array('default' => array());
-    $options['override'] = array('default' => TRUE);
-    $options['sticky'] = array('default' => FALSE);
-    $options['order'] = array('default' => 'asc');
-    $options['caption'] = array('default' => '');
-    $options['summary'] = array('default' => '');
-    $options['description'] = array('default' => '');
-    $options['empty_table'] = array('default' => FALSE);
+    $options['columns'] = ['default' => []];
+    $options['default'] = ['default' => ''];
+    $options['info'] = ['default' => []];
+    $options['override'] = ['default' => TRUE];
+    $options['sticky'] = ['default' => FALSE];
+    $options['order'] = ['default' => 'asc'];
+    $options['caption'] = ['default' => ''];
+    $options['summary'] = ['default' => ''];
+    $options['description'] = ['default' => ''];
+    $options['empty_table'] = ['default' => FALSE];
 
     return $options;
   }
@@ -165,7 +165,7 @@ public function buildSortPost() {
    *    An array of all the sanitized columns.
    */
   public function sanitizeColumns($columns, $fields = NULL) {
-    $sanitized = array();
+    $sanitized = [];
     if ($fields === NULL) {
       $fields = $this->displayHandler->getOption('fields');
     }
@@ -202,57 +202,57 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
     $handlers = $this->displayHandler->getHandlers('field');
     if (empty($handlers)) {
-      $form['error_markup'] = array(
+      $form['error_markup'] = [
         '#markup' => '<div class="messages messages--error">' . $this->t('You need at least one field before you can configure your table settings') . '</div>',
-      );
+      ];
       return;
     }
 
-    $form['override'] = array(
+    $form['override'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Override normal sorting if click sorting is used'),
       '#default_value' => !empty($this->options['override']),
-    );
+    ];
 
-    $form['sticky'] = array(
+    $form['sticky'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Enable Drupal style "sticky" table headers (Javascript)'),
       '#default_value' => !empty($this->options['sticky']),
       '#description' => $this->t('(Sticky header effects will not be active for preview below, only on live output.)'),
-    );
+    ];
 
-    $form['caption'] = array(
+    $form['caption'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Caption for the table'),
       '#description' => $this->t('A title semantically associated with your table for increased accessibility.'),
       '#default_value' => $this->options['caption'],
       '#maxlength' => 255,
-    );
+    ];
 
-    $form['accessibility_details'] = array(
+    $form['accessibility_details'] = [
       '#type' => 'details',
       '#title' => $this->t('Table details'),
-    );
+    ];
 
-    $form['summary'] = array(
+    $form['summary'] = [
       '#title' => $this->t('Summary title'),
       '#type' => 'textfield',
       '#default_value' => $this->options['summary'],
       '#fieldset' => 'accessibility_details',
-    );
+    ];
 
-    $form['description'] = array(
+    $form['description'] = [
       '#title' => $this->t('Table description'),
       '#type' => 'textarea',
       '#description' => $this->t('Provide additional details about the table to increase accessibility.'),
       '#default_value' => $this->options['description'],
-      '#states' => array(
-        'visible' => array(
-          'input[name="style_options[summary]"]' => array('filled' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          'input[name="style_options[summary]"]' => ['filled' => TRUE],
+        ],
+      ],
       '#fieldset' => 'accessibility_details',
-    );
+    ];
 
     // Note: views UI registers this theme handler on our behalf. Your module
     // will have to register your theme handlers if you do stuff like this.
@@ -276,137 +276,137 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     foreach ($columns as $field => $column) {
       $column_selector = ':input[name="style_options[columns][' . $field . ']"]';
 
-      $form['columns'][$field] = array(
-        '#title' => $this->t('Columns for @field', array('@field' => $field)),
+      $form['columns'][$field] = [
+        '#title' => $this->t('Columns for @field', ['@field' => $field]),
         '#title_display' => 'invisible',
         '#type' => 'select',
         '#options' => $field_names,
         '#default_value' => $column,
-      );
+      ];
       if ($handlers[$field]->clickSortable()) {
-        $form['info'][$field]['sortable'] = array(
-          '#title' => $this->t('Sortable for @field', array('@field' => $field)),
+        $form['info'][$field]['sortable'] = [
+          '#title' => $this->t('Sortable for @field', ['@field' => $field]),
           '#title_display' => 'invisible',
           '#type' => 'checkbox',
           '#default_value' => !empty($this->options['info'][$field]['sortable']),
-          '#states' => array(
-            'visible' => array(
-              $column_selector => array('value' => $field),
-            ),
-          ),
-        );
-        $form['info'][$field]['default_sort_order'] = array(
-          '#title' => $this->t('Default sort order for @field', array('@field' => $field)),
+          '#states' => [
+            'visible' => [
+              $column_selector => ['value' => $field],
+            ],
+          ],
+        ];
+        $form['info'][$field]['default_sort_order'] = [
+          '#title' => $this->t('Default sort order for @field', ['@field' => $field]),
           '#title_display' => 'invisible',
           '#type' => 'select',
-          '#options' => array('asc' => $this->t('Ascending'), 'desc' => $this->t('Descending')),
+          '#options' => ['asc' => $this->t('Ascending'), 'desc' => $this->t('Descending')],
           '#default_value' => !empty($this->options['info'][$field]['default_sort_order']) ? $this->options['info'][$field]['default_sort_order'] : 'asc',
-          '#states' => array(
-            'visible' => array(
-              $column_selector => array('value' => $field),
-              ':input[name="style_options[info][' . $field . '][sortable]"]' => array('checked' => TRUE),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              $column_selector => ['value' => $field],
+              ':input[name="style_options[info][' . $field . '][sortable]"]' => ['checked' => TRUE],
+            ],
+          ],
+        ];
         // Provide an ID so we can have such things.
         $radio_id = Html::getUniqueId('edit-default-' . $field);
-        $form['default'][$field] = array(
-          '#title' => $this->t('Default sort for @field', array('@field' => $field)),
+        $form['default'][$field] = [
+          '#title' => $this->t('Default sort for @field', ['@field' => $field]),
           '#title_display' => 'invisible',
           '#type' => 'radio',
           '#return_value' => $field,
-          '#parents' => array('style_options', 'default'),
+          '#parents' => ['style_options', 'default'],
           '#id' => $radio_id,
           // because 'radio' doesn't fully support '#id' =(
-          '#attributes' => array('id' => $radio_id),
+          '#attributes' => ['id' => $radio_id],
           '#default_value' => $default,
-          '#states' => array(
-            'visible' => array(
-              $column_selector => array('value' => $field),
-            ),
-          ),
-        );
+          '#states' => [
+            'visible' => [
+              $column_selector => ['value' => $field],
+            ],
+          ],
+        ];
       }
-      $form['info'][$field]['align'] = array(
-        '#title' => $this->t('Alignment for @field', array('@field' => $field)),
+      $form['info'][$field]['align'] = [
+        '#title' => $this->t('Alignment for @field', ['@field' => $field]),
         '#title_display' => 'invisible',
         '#type' => 'select',
         '#default_value' => !empty($this->options['info'][$field]['align']) ? $this->options['info'][$field]['align'] : '',
-        '#options' => array(
+        '#options' => [
           '' => $this->t('None'),
-          'views-align-left' => $this->t('Left', array(), array('context' => 'Text alignment')),
-          'views-align-center' => $this->t('Center', array(), array('context' => 'Text alignment')),
-          'views-align-right' => $this->t('Right', array(), array('context' => 'Text alignment')),
-          ),
-        '#states' => array(
-          'visible' => array(
-            $column_selector => array('value' => $field),
-          ),
-        ),
-      );
-      $form['info'][$field]['separator'] = array(
-        '#title' => $this->t('Separator for @field', array('@field' => $field)),
+          'views-align-left' => $this->t('Left', [], ['context' => 'Text alignment']),
+          'views-align-center' => $this->t('Center', [], ['context' => 'Text alignment']),
+          'views-align-right' => $this->t('Right', [], ['context' => 'Text alignment']),
+          ],
+        '#states' => [
+          'visible' => [
+            $column_selector => ['value' => $field],
+          ],
+        ],
+      ];
+      $form['info'][$field]['separator'] = [
+        '#title' => $this->t('Separator for @field', ['@field' => $field]),
         '#title_display' => 'invisible',
         '#type' => 'textfield',
         '#size' => 10,
         '#default_value' => isset($this->options['info'][$field]['separator']) ? $this->options['info'][$field]['separator'] : '',
-        '#states' => array(
-          'visible' => array(
-            $column_selector => array('value' => $field),
-          ),
-        ),
-      );
-      $form['info'][$field]['empty_column'] = array(
-        '#title' => $this->t('Hide empty column for @field', array('@field' => $field)),
+        '#states' => [
+          'visible' => [
+            $column_selector => ['value' => $field],
+          ],
+        ],
+      ];
+      $form['info'][$field]['empty_column'] = [
+        '#title' => $this->t('Hide empty column for @field', ['@field' => $field]),
         '#title_display' => 'invisible',
         '#type' => 'checkbox',
         '#default_value' => isset($this->options['info'][$field]['empty_column']) ? $this->options['info'][$field]['empty_column'] : FALSE,
-        '#states' => array(
-          'visible' => array(
-            $column_selector => array('value' => $field),
-          ),
-        ),
-      );
-      $form['info'][$field]['responsive'] = array(
-        '#title' => $this->t('Responsive setting for @field', array('@field' => $field)),
+        '#states' => [
+          'visible' => [
+            $column_selector => ['value' => $field],
+          ],
+        ],
+      ];
+      $form['info'][$field]['responsive'] = [
+        '#title' => $this->t('Responsive setting for @field', ['@field' => $field]),
         '#title_display' => 'invisible',
         '#type' => 'select',
         '#default_value' => isset($this->options['info'][$field]['responsive']) ? $this->options['info'][$field]['responsive'] : '',
-        '#options' => array('' => $this->t('High'), RESPONSIVE_PRIORITY_MEDIUM => $this->t('Medium'), RESPONSIVE_PRIORITY_LOW => $this->t('Low')),
-        '#states' => array(
-          'visible' => array(
-            $column_selector => array('value' => $field),
-          ),
-        ),
-      );
+        '#options' => ['' => $this->t('High'), RESPONSIVE_PRIORITY_MEDIUM => $this->t('Medium'), RESPONSIVE_PRIORITY_LOW => $this->t('Low')],
+        '#states' => [
+          'visible' => [
+            $column_selector => ['value' => $field],
+          ],
+        ],
+      ];
 
       // markup for the field name
-      $form['info'][$field]['name'] = array(
+      $form['info'][$field]['name'] = [
         '#markup' => $field_names[$field],
-      );
+      ];
     }
 
     // Provide a radio for no default sort
-    $form['default'][-1] = array(
+    $form['default'][-1] = [
       '#title' => $this->t('No default sort'),
       '#title_display' => 'invisible',
       '#type' => 'radio',
       '#return_value' => -1,
-      '#parents' => array('style_options', 'default'),
+      '#parents' => ['style_options', 'default'],
       '#id' => 'edit-default-0',
       '#default_value' => $default,
-    );
+    ];
 
-    $form['empty_table'] = array(
+    $form['empty_table'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show the empty text in the table'),
       '#default_value' => $this->options['empty_table'],
       '#description' => $this->t('Per default the table is hidden for an empty view. With this option it is possible to show an empty table with the text in it.'),
-    );
+    ];
 
-    $form['description_markup'] = array(
+    $form['description_markup'] = [
       '#markup' => '<div class="js-form-item form-item description">' . $this->t('Place fields into columns; you may combine multiple fields into the same column. If you do, the separator in the column specified will be used to separate the fields. Check the sortable box to make that column click sortable, and check the default sort radio to determine which column will be sorted by default, if any. You may control column order and field labels in the fields section.') . '</div>',
-    );
+    ];
   }
 
   public function evenEmpty() {
diff --git a/core/modules/views/src/Plugin/views/style/UnformattedSummary.php b/core/modules/views/src/Plugin/views/style/UnformattedSummary.php
index b6b6d6e..6460841 100644
--- a/core/modules/views/src/Plugin/views/style/UnformattedSummary.php
+++ b/core/modules/views/src/Plugin/views/style/UnformattedSummary.php
@@ -21,23 +21,23 @@ class UnformattedSummary extends DefaultSummary {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['inline'] = array('default' => FALSE);
-    $options['separator'] = array('default' => '');
+    $options['inline'] = ['default' => FALSE];
+    $options['separator'] = ['default' => ''];
     return $options;
   }
 
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
-    $form['inline'] = array(
+    $form['inline'] = [
       '#type' => 'checkbox',
       '#default_value' => !empty($this->options['inline']),
       '#title' => $this->t('Display items inline'),
-    );
-    $form['separator'] = array(
+    ];
+    $form['separator'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Separator'),
       '#default_value' => $this->options['separator'],
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php b/core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php
index aab57a6..1771c71 100644
--- a/core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php
+++ b/core/modules/views/src/Plugin/views/wizard/WizardPluginBase.php
@@ -66,7 +66,7 @@
    *
    * @var array
    */
-  protected $validated_views = array();
+  protected $validated_views = [];
 
   /**
    * The table column used for sorting by create date of this wizard.
@@ -80,21 +80,21 @@
    *
    * @var array
    */
-  protected $filters = array();
+  protected $filters = [];
 
   /**
    * Views items configuration arrays for sorts added by the wizard.
    *
    * @var array
    */
-  protected $sorts = array();
+  protected $sorts = [];
 
   /**
    * The available store criteria.
    *
    * @var array
    */
-  protected $availableSorts = array();
+  protected $availableSorts = [];
 
   /**
    * Default values for filters.
@@ -104,11 +104,11 @@
    *
    * @var array()
    */
-  protected $filter_defaults = array(
+  protected $filter_defaults = [
     'id' => NULL,
-    'expose' => array('operator' => FALSE),
+    'expose' => ['operator' => FALSE],
     'group' => 1,
-  );
+  ];
 
   /**
    * The bundle info service.
@@ -163,7 +163,7 @@ public function getCreatedColumn() {
    * @return array
    */
   public function getFilters() {
-    $filters = array();
+    $filters = [];
 
     $default = $this->filter_defaults;
 
@@ -197,100 +197,100 @@ public function getSorts() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $style_options = Views::fetchPluginNames('style', 'normal', array($this->base_table));
-    $feed_row_options = Views::fetchPluginNames('row', 'feed', array($this->base_table));
+    $style_options = Views::fetchPluginNames('style', 'normal', [$this->base_table]);
+    $feed_row_options = Views::fetchPluginNames('row', 'feed', [$this->base_table]);
     $path_prefix = $this->url('<none>', [], ['absolute' => TRUE]);
 
     // Add filters and sorts which apply to the view as a whole.
     $this->buildFilters($form, $form_state);
     $this->buildSorts($form, $form_state);
 
-    $form['displays']['page'] = array(
+    $form['displays']['page'] = [
       '#type' => 'fieldset',
       '#title' => $this->t('Page settings'),
-      '#attributes' => array('class' => array('views-attachment', 'fieldset-no-legend')),
+      '#attributes' => ['class' => ['views-attachment', 'fieldset-no-legend']],
       '#tree' => TRUE,
-    );
-    $form['displays']['page']['create'] = array(
+    ];
+    $form['displays']['page']['create'] = [
       '#title' => $this->t('Create a page'),
       '#type' => 'checkbox',
-      '#attributes' => array('class' => array('strong')),
+      '#attributes' => ['class' => ['strong']],
       '#default_value' => FALSE,
       '#id' => 'edit-page-create',
-    );
+    ];
 
     // All options for the page display are included in this container so they
     // can be hidden as a group when the "Create a page" checkbox is unchecked.
-    $form['displays']['page']['options'] = array(
+    $form['displays']['page']['options'] = [
       '#type' => 'container',
-      '#attributes' => array('class' => array('options-set')),
-      '#states' => array(
-        'visible' => array(
-          ':input[name="page[create]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#attributes' => ['class' => ['options-set']],
+      '#states' => [
+        'visible' => [
+          ':input[name="page[create]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#prefix' => '<div><div id="edit-page-wrapper">',
       '#suffix' => '</div></div>',
-      '#parents' => array('page'),
-    );
+      '#parents' => ['page'],
+    ];
 
-    $form['displays']['page']['options']['title'] = array(
+    $form['displays']['page']['options']['title'] = [
       '#title' => $this->t('Page title'),
       '#type' => 'textfield',
       '#maxlength' => 255,
-    );
-    $form['displays']['page']['options']['path'] = array(
+    ];
+    $form['displays']['page']['options']['path'] = [
       '#title' => $this->t('Path'),
       '#type' => 'textfield',
       '#field_prefix' => $path_prefix,
       // Account for the leading backslash.
       '#maxlength' => 254,
-    );
-    $form['displays']['page']['options']['style'] = array(
+    ];
+    $form['displays']['page']['options']['style'] = [
       '#type' => 'fieldset',
       '#title' => $this->t('Page display settings'),
-      '#attributes' => array('class' => array('container-inline', 'fieldset-no-legend')),
-    );
+      '#attributes' => ['class' => ['container-inline', 'fieldset-no-legend']],
+    ];
 
     // Create the dropdown for choosing the display format.
-    $form['displays']['page']['options']['style']['style_plugin'] = array(
+    $form['displays']['page']['options']['style']['style_plugin'] = [
       '#title' => $this->t('Display format'),
       '#type' => 'select',
       '#options' => $style_options,
-    );
+    ];
     $style_form = &$form['displays']['page']['options']['style'];
-    $style_form['style_plugin']['#default_value'] = static::getSelected($form_state, array('page', 'style', 'style_plugin'), 'default', $style_form['style_plugin']);
+    $style_form['style_plugin']['#default_value'] = static::getSelected($form_state, ['page', 'style', 'style_plugin'], 'default', $style_form['style_plugin']);
     // Changing this dropdown updates $form['displays']['page']['options'] via
     // AJAX.
-    views_ui_add_ajax_trigger($style_form, 'style_plugin', array('displays', 'page', 'options'));
+    views_ui_add_ajax_trigger($style_form, 'style_plugin', ['displays', 'page', 'options']);
 
     $this->buildFormStyle($form, $form_state, 'page');
-    $form['displays']['page']['options']['items_per_page'] = array(
+    $form['displays']['page']['options']['items_per_page'] = [
       '#title' => $this->t('Items to display'),
       '#type' => 'number',
       '#default_value' => 10,
       '#min' => 0,
-    );
-    $form['displays']['page']['options']['pager'] = array(
+    ];
+    $form['displays']['page']['options']['pager'] = [
       '#title' => $this->t('Use a pager'),
       '#type' => 'checkbox',
       '#default_value' => TRUE,
-    );
-    $form['displays']['page']['options']['link'] = array(
+    ];
+    $form['displays']['page']['options']['link'] = [
       '#title' => $this->t('Create a menu link'),
       '#type' => 'checkbox',
       '#id' => 'edit-page-link',
-    );
-    $form['displays']['page']['options']['link_properties'] = array(
+    ];
+    $form['displays']['page']['options']['link_properties'] = [
       '#type' => 'container',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="page[link]"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="page[link]"]' => ['checked' => TRUE],
+        ],
+      ],
       '#prefix' => '<div id="edit-page-link-properties-wrapper">',
       '#suffix' => '</div>',
-    );
+    ];
     if (\Drupal::moduleHandler()->moduleExists('menu_ui')) {
       $menu_options = menu_ui_get_menus();
     }
@@ -301,162 +301,162 @@ public function buildForm(array $form, FormStateInterface $form_state) {
         $menu_options[$name] = $this->t($title);
       }
     }
-    $form['displays']['page']['options']['link_properties']['menu_name'] = array(
+    $form['displays']['page']['options']['link_properties']['menu_name'] = [
       '#title' => $this->t('Menu'),
       '#type' => 'select',
       '#options' => $menu_options,
-    );
-    $form['displays']['page']['options']['link_properties']['title'] = array(
+    ];
+    $form['displays']['page']['options']['link_properties']['title'] = [
       '#title' => $this->t('Link text'),
       '#type' => 'textfield',
-    );
+    ];
     // Only offer a feed if we have at least one available feed row style.
     if ($feed_row_options) {
-      $form['displays']['page']['options']['feed'] = array(
+      $form['displays']['page']['options']['feed'] = [
         '#title' => $this->t('Include an RSS feed'),
         '#type' => 'checkbox',
         '#id' => 'edit-page-feed',
-      );
-      $form['displays']['page']['options']['feed_properties'] = array(
+      ];
+      $form['displays']['page']['options']['feed_properties'] = [
         '#type' => 'container',
-        '#states' => array(
-          'visible' => array(
-            ':input[name="page[feed]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#states' => [
+          'visible' => [
+            ':input[name="page[feed]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#prefix' => '<div id="edit-page-feed-properties-wrapper">',
         '#suffix' => '</div>',
-      );
-      $form['displays']['page']['options']['feed_properties']['path'] = array(
+      ];
+      $form['displays']['page']['options']['feed_properties']['path'] = [
         '#title' => $this->t('Feed path'),
         '#type' => 'textfield',
         '#field_prefix' => $path_prefix,
         // Account for the leading backslash.
         '#maxlength' => 254,
-      );
+      ];
       // This will almost never be visible.
-      $form['displays']['page']['options']['feed_properties']['row_plugin'] = array(
+      $form['displays']['page']['options']['feed_properties']['row_plugin'] = [
         '#title' => $this->t('Feed row style'),
         '#type' => 'select',
         '#options' => $feed_row_options,
         '#default_value' => key($feed_row_options),
         '#access' => (count($feed_row_options) > 1),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="page[feed]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#states' => [
+          'visible' => [
+            ':input[name="page[feed]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#prefix' => '<div id="edit-page-feed-properties-row-plugin-wrapper">',
         '#suffix' => '</div>',
-      );
+      ];
     }
 
     // Only offer the block settings if the module is enabled.
     if (\Drupal::moduleHandler()->moduleExists('block')) {
-      $form['displays']['block'] = array(
+      $form['displays']['block'] = [
         '#type' => 'fieldset',
         '#title' => $this->t('Block settings'),
-        '#attributes' => array('class' => array('views-attachment', 'fieldset-no-legend')),
+        '#attributes' => ['class' => ['views-attachment', 'fieldset-no-legend']],
         '#tree' => TRUE,
-      );
-      $form['displays']['block']['create'] = array(
+      ];
+      $form['displays']['block']['create'] = [
         '#title' => $this->t('Create a block'),
         '#type' => 'checkbox',
-        '#attributes' => array('class' => array('strong')),
+        '#attributes' => ['class' => ['strong']],
         '#id' => 'edit-block-create',
-      );
+      ];
 
       // All options for the block display are included in this container so
       // they can be hidden as a group when the "Create a block" checkbox is
       // unchecked.
-      $form['displays']['block']['options'] = array(
+      $form['displays']['block']['options'] = [
         '#type' => 'container',
-        '#attributes' => array('class' => array('options-set')),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="block[create]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#attributes' => ['class' => ['options-set']],
+        '#states' => [
+          'visible' => [
+            ':input[name="block[create]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#prefix' => '<div id="edit-block-wrapper">',
         '#suffix' => '</div>',
-        '#parents' => array('block'),
-      );
+        '#parents' => ['block'],
+      ];
 
-      $form['displays']['block']['options']['title'] = array(
+      $form['displays']['block']['options']['title'] = [
         '#title' => $this->t('Block title'),
         '#type' => 'textfield',
         '#maxlength' => 255,
-      );
-      $form['displays']['block']['options']['style'] = array(
+      ];
+      $form['displays']['block']['options']['style'] = [
         '#type' => 'fieldset',
         '#title' => $this->t('Block display settings'),
-        '#attributes' => array('class' => array('container-inline', 'fieldset-no-legend')),
-      );
+        '#attributes' => ['class' => ['container-inline', 'fieldset-no-legend']],
+      ];
 
       // Create the dropdown for choosing the display format.
-      $form['displays']['block']['options']['style']['style_plugin'] = array(
+      $form['displays']['block']['options']['style']['style_plugin'] = [
         '#title' => $this->t('Display format'),
         '#type' => 'select',
         '#options' => $style_options,
-      );
+      ];
       $style_form = &$form['displays']['block']['options']['style'];
-      $style_form['style_plugin']['#default_value'] = static::getSelected($form_state, array('block', 'style', 'style_plugin'), 'default', $style_form['style_plugin']);
+      $style_form['style_plugin']['#default_value'] = static::getSelected($form_state, ['block', 'style', 'style_plugin'], 'default', $style_form['style_plugin']);
       // Changing this dropdown updates $form['displays']['block']['options']
       // via AJAX.
-      views_ui_add_ajax_trigger($style_form, 'style_plugin', array('displays', 'block', 'options'));
+      views_ui_add_ajax_trigger($style_form, 'style_plugin', ['displays', 'block', 'options']);
 
       $this->buildFormStyle($form, $form_state, 'block');
-      $form['displays']['block']['options']['items_per_page'] = array(
+      $form['displays']['block']['options']['items_per_page'] = [
         '#title' => $this->t('Items per block'),
         '#type' => 'number',
         '#default_value' => 5,
         '#min' => 0,
-      );
-      $form['displays']['block']['options']['pager'] = array(
+      ];
+      $form['displays']['block']['options']['pager'] = [
         '#title' => $this->t('Use a pager'),
         '#type' => 'checkbox',
         '#default_value' => FALSE,
-      );
+      ];
     }
 
     // Only offer the REST export settings if the module is enabled.
     if (\Drupal::moduleHandler()->moduleExists('rest')) {
-      $form['displays']['rest_export'] = array(
+      $form['displays']['rest_export'] = [
         '#type' => 'fieldset',
         '#title' => $this->t('REST export settings'),
-        '#attributes' => array('class' => array('views-attachment', 'fieldset-no-legend')),
+        '#attributes' => ['class' => ['views-attachment', 'fieldset-no-legend']],
         '#tree' => TRUE,
-      );
-      $form['displays']['rest_export']['create'] = array(
+      ];
+      $form['displays']['rest_export']['create'] = [
         '#title' => $this->t('Provide a REST export'),
         '#type' => 'checkbox',
-        '#attributes' => array('class' => array('strong')),
+        '#attributes' => ['class' => ['strong']],
         '#id' => 'edit-rest-export-create',
-      );
+      ];
 
       // All options for the REST export display are included in this container
       // so they can be hidden as a group when the "Provide a REST export"
       // checkbox is unchecked.
-      $form['displays']['rest_export']['options'] = array(
+      $form['displays']['rest_export']['options'] = [
         '#type' => 'container',
-        '#attributes' => array('class' => array('options-set')),
-        '#states' => array(
-          'visible' => array(
-            ':input[name="rest_export[create]"]' => array('checked' => TRUE),
-          ),
-        ),
+        '#attributes' => ['class' => ['options-set']],
+        '#states' => [
+          'visible' => [
+            ':input[name="rest_export[create]"]' => ['checked' => TRUE],
+          ],
+        ],
         '#prefix' => '<div id="edit-rest-export-wrapper">',
         '#suffix' => '</div>',
-        '#parents' => array('rest_export'),
-      );
+        '#parents' => ['rest_export'],
+      ];
 
-      $form['displays']['rest_export']['options']['path'] = array(
+      $form['displays']['rest_export']['options']['path'] = [
         '#title' => $this->t('REST export path'),
         '#type' => 'textfield',
         '#field_prefix' => $path_prefix,
         // Account for the leading backslash.
         '#maxlength' => 254,
-      );
+      ];
     }
 
     return $form;
@@ -561,28 +561,28 @@ protected function buildFormStyle(array &$form, FormStateInterface $form_state,
     $style_plugin = Views::pluginManager('style')->createInstance($style);
     if (isset($style_plugin) && $style_plugin->usesRowPlugin()) {
       $options = $this->rowStyleOptions();
-      $style_form['row_plugin'] = array(
+      $style_form['row_plugin'] = [
         '#type' => 'select',
         '#title' => $this->t('of'),
         '#options' => $options,
         '#access' => count($options) > 1,
-      );
+      ];
       // For the block display, the default value should be "titles (linked)",
       // if it's available (since that's the most common use case).
       $block_with_linked_titles_available = ($type == 'block' && isset($options['titles_linked']));
       $default_value = $block_with_linked_titles_available ? 'titles_linked' : key($options);
-      $style_form['row_plugin']['#default_value'] = static::getSelected($form_state, array($type, 'style', 'row_plugin'), $default_value, $style_form['row_plugin']);
+      $style_form['row_plugin']['#default_value'] = static::getSelected($form_state, [$type, 'style', 'row_plugin'], $default_value, $style_form['row_plugin']);
       // Changing this dropdown updates the individual row options via AJAX.
-      views_ui_add_ajax_trigger($style_form, 'row_plugin', array('displays', $type, 'options', 'style', 'row_options'));
+      views_ui_add_ajax_trigger($style_form, 'row_plugin', ['displays', $type, 'options', 'style', 'row_options']);
 
       // This is the region that can be updated by AJAX. The base class doesn't
       // add anything here, but child classes can.
-      $style_form['row_options'] = array(
-        '#theme_wrappers' => array('container'),
-      );
+      $style_form['row_options'] = [
+        '#theme_wrappers' => ['container'],
+      ];
     }
     elseif ($style_plugin->usesFields()) {
-      $style_form['row_plugin'] = array('#markup' => '<span>' . $this->t('of fields') . '</span>');
+      $style_form['row_plugin'] = ['#markup' => '<span>' . $this->t('of fields') . '</span>'];
     }
   }
 
@@ -594,7 +594,7 @@ protected function buildFormStyle(array &$form, FormStateInterface $form_state,
    */
   protected function rowStyleOptions() {
     // Get all available row plugins by default.
-    $options = Views::fetchPluginNames('row', 'normal', array($this->base_table));
+    $options = Views::fetchPluginNames('row', 'normal', [$this->base_table]);
     return $options;
   }
 
@@ -611,21 +611,21 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
     // If the current base table support bundles and has more than one (like user).
     if (!empty($bundles) && $this->entityType && $this->entityType->hasKey('bundle')) {
       // Get all bundles and their human readable names.
-      $options = array('all' => $this->t('All'));
+      $options = ['all' => $this->t('All')];
       foreach ($bundles as $type => $bundle) {
         $options[$type] = $bundle['label'];
       }
-      $form['displays']['show']['type'] = array(
+      $form['displays']['show']['type'] = [
         '#type' => 'select',
         '#title' => $this->t('of type'),
         '#options' => $options,
-      );
-      $selected_bundle = static::getSelected($form_state, array('show', 'type'), 'all', $form['displays']['show']['type']);
+      ];
+      $selected_bundle = static::getSelected($form_state, ['show', 'type'], 'all', $form['displays']['show']['type']);
       $form['displays']['show']['type']['#default_value'] = $selected_bundle;
       // Changing this dropdown updates the entire content of $form['displays']
       // via AJAX, since each bundle might have entirely different fields
       // attached to it, etc.
-      views_ui_add_ajax_trigger($form['displays']['show'], 'type', array('displays'));
+      views_ui_add_ajax_trigger($form['displays']['show'], 'type', ['displays']);
     }
   }
 
@@ -635,16 +635,16 @@ protected function buildFilters(&$form, FormStateInterface $form_state) {
    * By default, this adds a "sorted by [date]" filter (when it is available).
    */
   protected function buildSorts(&$form, FormStateInterface $form_state) {
-    $sorts = array(
+    $sorts = [
       'none' => $this->t('Unsorted'),
-    );
+    ];
     // Check if we are allowed to sort by creation date.
     $created_column = $this->getCreatedColumn();
     if ($created_column) {
-      $sorts += array(
+      $sorts += [
         $created_column . ':DESC' => $this->t('Newest first'),
         $created_column . ':ASC' => $this->t('Oldest first'),
-      );
+      ];
     }
     if ($available_sorts = $this->getAvailableSorts()) {
       $sorts += $available_sorts;
@@ -652,12 +652,12 @@ protected function buildSorts(&$form, FormStateInterface $form_state) {
 
     // If there is no sorts option available continue.
     if (!empty($sorts)) {
-      $form['displays']['show']['sort'] = array(
+      $form['displays']['show']['sort'] = [
         '#type' => 'select',
         '#title' => $this->t('sorted by'),
         '#options' => $sorts,
         '#default_value' => isset($created_column) ? $created_column . ':DESC' : 'none',
-      );
+      ];
     }
   }
 
@@ -669,13 +669,13 @@ protected function buildSorts(&$form, FormStateInterface $form_state) {
    */
   protected function instantiateView($form, FormStateInterface $form_state) {
     // Build the basic view properties and create the view.
-    $values = array(
+    $values = [
       'id' => $form_state->getValue('id'),
       'label' => $form_state->getValue('label'),
       'description' => $form_state->getValue('description'),
       'base_table' => $this->base_table,
       'langcode' => \Drupal::languageManager()->getDefaultLanguage()->getId(),
-    );
+    ];
 
     $view = View::create($values);
 
@@ -702,25 +702,25 @@ protected function instantiateView($form, FormStateInterface $form_state) {
   protected function buildDisplayOptions($form, FormStateInterface $form_state) {
     // Display: Master
     $display_options['default'] = $this->defaultDisplayOptions();
-    $display_options['default'] += array(
-      'filters' => array(),
-      'sorts' => array(),
-    );
+    $display_options['default'] += [
+      'filters' => [],
+      'sorts' => [],
+    ];
     $display_options['default']['filters'] += $this->defaultDisplayFilters($form, $form_state);
     $display_options['default']['sorts'] += $this->defaultDisplaySorts($form, $form_state);
 
     // Display: Page
-    if (!$form_state->isValueEmpty(array('page', 'create'))) {
+    if (!$form_state->isValueEmpty(['page', 'create'])) {
       $display_options['page'] = $this->pageDisplayOptions($form, $form_state);
 
       // Display: Feed (attached to the page)
-      if (!$form_state->isValueEmpty(array('page', 'feed'))) {
+      if (!$form_state->isValueEmpty(['page', 'feed'])) {
         $display_options['feed'] = $this->pageFeedDisplayOptions($form, $form_state);
       }
     }
 
     // Display: Block
-    if (!$form_state->isValueEmpty(array('block', 'create'))) {
+    if (!$form_state->isValueEmpty(['block', 'create'])) {
       $display_options['block'] = $this->blockDisplayOptions($form, $form_state);
     }
 
@@ -812,7 +812,7 @@ protected function addDisplays(View $view, $display_options, $form, FormStateInt
    *   Returns an array of display options.
    */
   protected function defaultDisplayOptions() {
-    $display_options = array();
+    $display_options = [];
     $display_options['access']['type'] = 'none';
     $display_options['cache']['type'] = 'tag';
     $display_options['query']['type'] = 'views_query';
@@ -823,7 +823,7 @@ protected function defaultDisplayOptions() {
 
     // Add default options array to each plugin type.
     foreach ($display_options as &$options) {
-      $options['options'] = array();
+      $options['options'] = [];
     }
 
     // Add a least one field so the view validates and the user has a preview.
@@ -849,14 +849,14 @@ protected function defaultDisplayOptions() {
     }
     // @todo Refactor the code to use ViewExecutable::addHandler. See
     //   https://www.drupal.org/node/2383157.
-    $display_options['fields'][$default_field] = array(
+    $display_options['fields'][$default_field] = [
       'table' => $default_table,
       'field' => $default_field,
       'id' => $default_field,
       'entity_type' => isset($data[$default_field]['entity type']) ? $data[$default_field]['entity type'] : NULL,
       'entity_field' => isset($data[$default_field]['entity field']) ? $data[$default_field]['entity field'] : NULL,
       'plugin_id' => $data[$default_field]['field']['id'],
-    );
+    ];
 
     return $display_options;
   }
@@ -877,7 +877,7 @@ protected function defaultDisplayOptions() {
    *   accepted by a filter handler.
    */
   protected function defaultDisplayFilters($form, FormStateInterface $form_state) {
-    $filters = array();
+    $filters = [];
 
     // Add any filters provided by the plugin.
     foreach ($this->getFilters() as $name => $info) {
@@ -903,9 +903,9 @@ protected function defaultDisplayFilters($form, FormStateInterface $form_state)
    *   accepted by a filter handler.
    */
   protected function defaultDisplayFiltersUser(array $form, FormStateInterface $form_state) {
-    $filters = array();
+    $filters = [];
 
-    if (($type = $form_state->getValue(array('show', 'type'))) && $type != 'all') {
+    if (($type = $form_state->getValue(['show', 'type'])) && $type != 'all') {
       $bundle_key = $this->entityType->getKey('bundle');
       // Figure out the table where $bundle_key lives. It may not be the same as
       // the base table for the view; the taxonomy vocabulary machine_name, for
@@ -928,14 +928,14 @@ protected function defaultDisplayFiltersUser(array $form, FormStateInterface $fo
       $handler = $table_data[$bundle_key]['filter']['id'];
       $handler_definition = Views::pluginManager('filter')->getDefinition($handler);
       if ($handler == 'in_operator' || is_subclass_of($handler_definition['class'], 'Drupal\\views\\Plugin\\views\\filter\\InOperator')) {
-        $value = array($type => $type);
+        $value = [$type => $type];
       }
       // Otherwise, use just a single value.
       else {
         $value = $type;
       }
 
-      $filters[$bundle_key] = array(
+      $filters[$bundle_key] = [
         'id' => $bundle_key,
         'table' => $table,
         'field' => $bundle_key,
@@ -943,7 +943,7 @@ protected function defaultDisplayFiltersUser(array $form, FormStateInterface $fo
         'entity_type' => isset($table_data['table']['entity type']) ? $table_data['table']['entity type'] : NULL,
         'entity_field' => isset($table_data[$bundle_key]['entity field']) ? $table_data[$bundle_key]['entity field'] : NULL,
         'plugin_id' => $handler,
-      );
+      ];
     }
 
     return $filters;
@@ -965,7 +965,7 @@ protected function defaultDisplayFiltersUser(array $form, FormStateInterface $fo
    *   accepted by a sort handler.
    */
   protected function defaultDisplaySorts($form, FormStateInterface $form_state) {
-    $sorts = array();
+    $sorts = [];
 
     // Add any sorts provided by the plugin.
     foreach ($this->getSorts() as $name => $info) {
@@ -991,11 +991,11 @@ protected function defaultDisplaySorts($form, FormStateInterface $form_state) {
    *   accepted by a sort handler.
    */
   protected function defaultDisplaySortsUser($form, FormStateInterface $form_state) {
-    $sorts = array();
+    $sorts = [];
 
     // Don't add a sort if there is no form value or the user set the sort to
     // 'none'.
-    if (($sort_type = $form_state->getValue(array('show', 'sort'))) && $sort_type != 'none') {
+    if (($sort_type = $form_state->getValue(['show', 'sort'])) && $sort_type != 'none') {
       list($column, $sort) = explode(':', $sort_type);
       // Column either be a column-name or the table-column-name.
       $column = explode('-', $column);
@@ -1014,7 +1014,7 @@ protected function defaultDisplaySortsUser($form, FormStateInterface $form_state
       // enabled.
       $data = Views::viewsData()->get($table);
       if (isset($data[$column]['sort'])) {
-        $sorts[$column] = array(
+        $sorts[$column] = [
           'id' => $column,
           'table' => $table,
           'field' => $column,
@@ -1022,7 +1022,7 @@ protected function defaultDisplaySortsUser($form, FormStateInterface $form_state
           'entity_type' => isset($data['table']['entity type']) ? $data['table']['entity type'] : NULL,
           'entity_field' => isset($data[$column]['entity field']) ? $data[$column]['entity field'] : NULL,
           'plugin_id' => $data[$column]['sort']['id'],
-       );
+       ];
       }
     }
 
@@ -1041,15 +1041,15 @@ protected function defaultDisplaySortsUser($form, FormStateInterface $form_state
    *   Returns an array of display options.
    */
   protected function pageDisplayOptions(array $form, FormStateInterface $form_state) {
-    $display_options = array();
+    $display_options = [];
     $page = $form_state->getValue('page');
     $display_options['title'] = $page['title'];
     $display_options['path'] = $page['path'];
-    $display_options['style'] = array('type' => $page['style']['style_plugin']);
+    $display_options['style'] = ['type' => $page['style']['style_plugin']];
     // Not every style plugin supports row style plugins.
     // Make sure that the selected row plugin is a valid one.
     $options = $this->rowStyleOptions();
-    $display_options['row'] = array('type' => (isset($page['style']['row_plugin']) && isset($options[$page['style']['row_plugin']])) ? $page['style']['row_plugin'] : 'fields');
+    $display_options['row'] = ['type' => (isset($page['style']['row_plugin']) && isset($options[$page['style']['row_plugin']])) ? $page['style']['row_plugin'] : 'fields'];
 
     // If the specific 0 items per page, use no pager.
     if (empty($page['items_per_page'])) {
@@ -1087,12 +1087,12 @@ protected function pageDisplayOptions(array $form, FormStateInterface $form_stat
    *   Returns an array of display options.
    */
   protected function blockDisplayOptions(array $form, FormStateInterface $form_state) {
-    $display_options = array();
+    $display_options = [];
     $block = $form_state->getValue('block');
     $display_options['title'] = $block['title'];
-    $display_options['style'] = array('type' => $block['style']['style_plugin']);
+    $display_options['style'] = ['type' => $block['style']['style_plugin']];
     $options = $this->rowStyleOptions();
-    $display_options['row'] = array('type' => (isset($block['style']['row_plugin']) && isset($options[$block['style']['row_plugin']])) ? $block['style']['row_plugin'] : 'fields');
+    $display_options['row'] = ['type' => (isset($block['style']['row_plugin']) && isset($options[$block['style']['row_plugin']])) ? $block['style']['row_plugin'] : 'fields'];
     $display_options['pager']['type'] = $block['pager'] ? 'full' : (empty($block['items_per_page']) ? 'none' : 'some');
     $display_options['pager']['options']['items_per_page'] = $block['items_per_page'];
     return $display_options;
@@ -1110,9 +1110,9 @@ protected function blockDisplayOptions(array $form, FormStateInterface $form_sta
    *   Returns an array of display options.
    */
   protected function restExportDisplayOptions(array $form, FormStateInterface $form_state) {
-    $display_options = array();
+    $display_options = [];
     $display_options['path'] = $form_state->getValue(['rest_export', 'path']);
-    $display_options['style'] = array('type' => 'serializer');
+    $display_options['style'] = ['type' => 'serializer'];
 
     return $display_options;
   }
@@ -1129,16 +1129,16 @@ protected function restExportDisplayOptions(array $form, FormStateInterface $for
    *   Returns an array of display options.
    */
   protected function pageFeedDisplayOptions($form, FormStateInterface $form_state) {
-    $display_options = array();
+    $display_options = [];
     $display_options['pager']['type'] = 'some';
-    $display_options['style'] = array('type' => 'rss');
-    $display_options['row'] = array('type' => $form_state->getValue(array('page', 'feed_properties', 'row_plugin')));
-    $display_options['path'] = $form_state->getValue(array('page', 'feed_properties', 'path'));
-    $display_options['title'] = $form_state->getValue(array('page', 'title'));
-    $display_options['displays'] = array(
+    $display_options['style'] = ['type' => 'rss'];
+    $display_options['row'] = ['type' => $form_state->getValue(['page', 'feed_properties', 'row_plugin'])];
+    $display_options['path'] = $form_state->getValue(['page', 'feed_properties', 'path']);
+    $display_options['title'] = $form_state->getValue(['page', 'title']);
+    $display_options['displays'] = [
       'default' => 'default',
       'page_1' => 'page_1',
-    );
+    ];
     return $display_options;
   }
 
diff --git a/core/modules/views/src/ResultRow.php b/core/modules/views/src/ResultRow.php
index 39febcf..da55038 100644
--- a/core/modules/views/src/ResultRow.php
+++ b/core/modules/views/src/ResultRow.php
@@ -34,7 +34,7 @@ class ResultRow {
    * @param array $values
    *   (optional) An array of values to add as properties on the object.
    */
-  public function __construct(array $values = array()) {
+  public function __construct(array $values = []) {
     foreach ($values as $key => $value) {
       $this->{$key} = $value;
     }
diff --git a/core/modules/views/src/Routing/ViewPageController.php b/core/modules/views/src/Routing/ViewPageController.php
index dc9153c..772103d 100644
--- a/core/modules/views/src/Routing/ViewPageController.php
+++ b/core/modules/views/src/Routing/ViewPageController.php
@@ -22,9 +22,9 @@ class ViewPageController {
    * @return null|void
    */
   public function handle($view_id, $display_id, RouteMatchInterface $route_match) {
-    $args = array();
+    $args = [];
     $route = $route_match->getRouteObject();
-    $map = $route->hasOption('_view_argument_map') ? $route->getOption('_view_argument_map') : array();
+    $map = $route->hasOption('_view_argument_map') ? $route->getOption('_view_argument_map') : [];
 
     foreach ($map as $attribute => $parameter_name) {
       // Allow parameters be pulled from the request.
diff --git a/core/modules/views/src/Tests/DefaultViewsTest.php b/core/modules/views/src/Tests/DefaultViewsTest.php
index 5c1f601..e5349ab 100644
--- a/core/modules/views/src/Tests/DefaultViewsTest.php
+++ b/core/modules/views/src/Tests/DefaultViewsTest.php
@@ -29,18 +29,18 @@ class DefaultViewsTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'node', 'search', 'comment', 'taxonomy', 'block', 'user');
+  public static $modules = ['views', 'node', 'search', 'comment', 'taxonomy', 'block', 'user'];
 
   /**
    * An array of argument arrays to use for default views.
    *
    * @var array
    */
-  protected $viewArgMap = array(
-    'backlinks' => array(1),
-    'taxonomy_term' => array(1),
-    'glossary' => array('all'),
-  );
+  protected $viewArgMap = [
+    'backlinks' => [1],
+    'taxonomy_term' => [1],
+    'glossary' => ['all'],
+  ];
 
   protected function setUp() {
     parent::setUp();
@@ -48,7 +48,7 @@ protected function setUp() {
     $this->drupalPlaceBlock('page_title_block');
 
     // Create Basic page node type.
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     $vocabulary = Vocabulary::create([
       'name' => $this->randomMachineName(),
@@ -56,7 +56,7 @@ protected function setUp() {
       'vid' => Unicode::strtolower($this->randomMachineName()),
       'langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED,
       'help' => '',
-      'nodes' => array('page' => 'page'),
+      'nodes' => ['page' => 'page'],
       'weight' => mt_rand(0, 10),
     ]);
     $vocabulary->save();
@@ -64,12 +64,12 @@ protected function setUp() {
     // Create a field.
     $field_name = Unicode::strtolower($this->randomMachineName());
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $vocabulary->id() => $vocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', 'page', $field_name, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     // Create a time in the past for the archive.
@@ -81,7 +81,7 @@ protected function setUp() {
       $user = $this->drupalCreateUser();
       $term = $this->createTerm($vocabulary);
 
-      $values = array('created' => $time, 'type' => 'page');
+      $values = ['created' => $time, 'type' => 'page'];
       $values[$field_name][]['target_id'] = $term->id();
 
       // Make every other node promoted.
@@ -92,19 +92,19 @@ protected function setUp() {
 
       $node = $this->drupalCreateNode($values);
 
-      $comment = array(
+      $comment = [
         'uid' => $user->id(),
         'status' => CommentInterface::PUBLISHED,
         'entity_id' => $node->id(),
         'entity_type' => 'node',
         'field_name' => 'comment'
-      );
+      ];
       Comment::create($comment)->save();
     }
 
     // Some views, such as the "Who's Online" view, only return results if at
     // least one user is logged in.
-    $account = $this->drupalCreateUser(array());
+    $account = $this->drupalCreateUser([]);
     $this->drupalLogin($account);
   }
 
@@ -127,14 +127,14 @@ public function testDefaultViews() {
           $view->preExecute($this->viewArgMap[$name]);
         }
 
-        $this->assert(TRUE, format_string('View @view will be executed.', array('@view' => $view->storage->id())));
+        $this->assert(TRUE, format_string('View @view will be executed.', ['@view' => $view->storage->id()]));
         $view->execute();
 
-        $tokens = array('@name' => $name, '@display_id' => $display_id);
+        $tokens = ['@name' => $name, '@display_id' => $display_id];
         $this->assertTrue($view->executed, format_string('@name:@display_id has been executed.', $tokens));
 
         $count = count($view->result);
-        $this->assertTrue($count > 0, format_string('@count results returned', array('@count' => $count)));
+        $this->assertTrue($count > 0, format_string('@count results returned', ['@count' => $count]));
         $view->destroy();
       }
     }
@@ -164,49 +164,49 @@ function createTerm($vocabulary) {
   public function testArchiveView() {
     // Create additional nodes compared to the one in the setup method.
     // Create two nodes in the same month, and one in each following month.
-    $node = array(
+    $node = [
       'created' => 280299600, // Sun, 19 Nov 1978 05:00:00 GMT
-    );
+    ];
     $this->drupalCreateNode($node);
     $this->drupalCreateNode($node);
-    $node = array(
+    $node = [
       'created' => 282891600, // Tue, 19 Dec 1978 05:00:00 GMT
-    );
+    ];
     $this->drupalCreateNode($node);
-    $node = array(
+    $node = [
       'created' => 285570000, // Fri, 19 Jan 1979 05:00:00 GMT
-    );
+    ];
     $this->drupalCreateNode($node);
 
     $view = Views::getView('archive');
     $view->setDisplay('page_1');
     $this->executeView($view);
-    $columns = array('nid', 'created_year_month', 'num_records');
+    $columns = ['nid', 'created_year_month', 'num_records'];
     $column_map = array_combine($columns, $columns);
     // Create time of additional nodes created in the setup method.
     $created_year_month = date('Ym', REQUEST_TIME - 3600);
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'nid' => 1,
         'created_year_month' => $created_year_month,
         'num_records' => 11,
-      ),
-      array(
+      ],
+      [
         'nid' => 15,
         'created_year_month' => 197901,
         'num_records' => 1,
-      ),
-      array(
+      ],
+      [
         'nid' => 14,
         'created_year_month' => 197812,
         'num_records' => 1,
-      ),
-      array(
+      ],
+      [
         'nid' => 12,
         'created_year_month' => 197811,
         'num_records' => 2,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $column_map);
 
     $view->storage->setStatus(TRUE);
diff --git a/core/modules/views/src/Tests/Entity/BaseFieldAccessTest.php b/core/modules/views/src/Tests/Entity/BaseFieldAccessTest.php
index db1110d..698a43e 100644
--- a/core/modules/views/src/Tests/Entity/BaseFieldAccessTest.php
+++ b/core/modules/views/src/Tests/Entity/BaseFieldAccessTest.php
@@ -18,7 +18,7 @@ class BaseFieldAccessTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_test_protected_access');
+  public static $testViews = ['test_entity_test_protected_access'];
 
   /**
    * Modules to enable
@@ -38,7 +38,7 @@ protected function setUp() {
     $update_manager = $this->container->get('entity.definition_update_manager');
     \Drupal::entityManager()->clearCachedDefinitions();
     $update_manager->applyUpdates();
-    ViewTestData::createTestViews(get_class($this), array('comment_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['comment_test_views']);
     \Drupal::state()->set('entity_test.views_data', [
       'entity_test' => [
         'test_text_access' => [
diff --git a/core/modules/views/src/Tests/Entity/FieldEntityTest.php b/core/modules/views/src/Tests/Entity/FieldEntityTest.php
index 215b631..89f71ed 100644
--- a/core/modules/views/src/Tests/Entity/FieldEntityTest.php
+++ b/core/modules/views/src/Tests/Entity/FieldEntityTest.php
@@ -24,14 +24,14 @@ class FieldEntityTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_field_get_entity');
+  public static $testViews = ['test_field_get_entity'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'comment');
+  public static $modules = ['node', 'comment'];
 
   /**
    * {@inheritdoc}
@@ -39,10 +39,10 @@ class FieldEntityTest extends ViewTestBase {
   protected function setUp($import_test_views = TRUE) {
     parent::setUp(FALSE);
 
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'page');
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
   }
 
   /**
@@ -61,12 +61,12 @@ public function testGetEntity() {
       'title' => $this->randomString(),
     ]);
     $node->save();
-    $comment = Comment::create(array(
+    $comment = Comment::create([
       'uid' => $account->id(),
       'entity_id' => $node->id(),
       'entity_type' => 'node',
       'field_name' => 'comment'
-    ));
+    ]);
     $comment->save();
 
     $user = $this->drupalCreateUser(['access comments']);
diff --git a/core/modules/views/src/Tests/Entity/FilterEntityBundleTest.php b/core/modules/views/src/Tests/Entity/FilterEntityBundleTest.php
index 589c4dc..f099569 100644
--- a/core/modules/views/src/Tests/Entity/FilterEntityBundleTest.php
+++ b/core/modules/views/src/Tests/Entity/FilterEntityBundleTest.php
@@ -19,14 +19,14 @@ class FilterEntityBundleTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_type_filter');
+  public static $testViews = ['test_entity_type_filter'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Entity bundle data.
@@ -40,15 +40,15 @@ class FilterEntityBundleTest extends ViewTestBase {
    *
    * @var array
    */
-  protected $entities = array();
+  protected $entities = [];
 
   protected function setUp() {
     parent::setUp(FALSE);
 
-    $this->drupalCreateContentType(array('type' => 'test_bundle'));
-    $this->drupalCreateContentType(array('type' => 'test_bundle_2'));
+    $this->drupalCreateContentType(['type' => 'test_bundle']);
+    $this->drupalCreateContentType(['type' => 'test_bundle_2']);
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
 
     $this->entityBundles = $this->container->get('entity_type.bundle.info')->getBundleInfo('node');
 
@@ -92,7 +92,7 @@ public function testFilterEntity() {
     $this->assertEqual(count($view->result), $this->entities['count']);
 
     // Test the valueOptions of the filter handler.
-    $expected = array();
+    $expected = [];
 
     foreach ($this->entityBundles as $key => $info) {
       $expected[$key] = $info['label'];
@@ -106,7 +106,7 @@ public function testFilterEntity() {
       // Test each bundle type.
       $view->initDisplay();
       $filters = $view->display_handler->getOption('filters');
-      $filters['type']['value'] = array($key => $key);
+      $filters['type']['value'] = [$key => $key];
       $view->display_handler->setOption('filters', $filters);
       $this->executeView($view);
 
@@ -118,7 +118,7 @@ public function testFilterEntity() {
     // Test an invalid bundle type to make sure we have no results.
     $view->initDisplay();
     $filters = $view->display_handler->getOption('filters');
-    $filters['type']['value'] = array('type_3' => 'type_3');
+    $filters['type']['value'] = ['type_3' => 'type_3'];
     $view->display_handler->setOption('filters', $filters);
     $this->executeView($view);
 
diff --git a/core/modules/views/src/Tests/Entity/ViewNonTranslatableEntityTest.php b/core/modules/views/src/Tests/Entity/ViewNonTranslatableEntityTest.php
index df6f7d4..82c6839 100644
--- a/core/modules/views/src/Tests/Entity/ViewNonTranslatableEntityTest.php
+++ b/core/modules/views/src/Tests/Entity/ViewNonTranslatableEntityTest.php
@@ -18,12 +18,12 @@ class ViewNonTranslatableEntityTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'entity_test',
     'content_translation',
     'language_test',
     'views_ui',
-  );
+  ];
 
   /**
    * Tests displaying a view of non-translatable entities.
diff --git a/core/modules/views/src/Tests/FieldApiDataTest.php b/core/modules/views/src/Tests/FieldApiDataTest.php
index 3fd8a03..24b2cf3 100644
--- a/core/modules/views/src/Tests/FieldApiDataTest.php
+++ b/core/modules/views/src/Tests/FieldApiDataTest.php
@@ -19,12 +19,12 @@ protected function setUp() {
     $field_names = $this->setUpFieldStorages(1);
 
     // Attach the field to nodes only.
-    $field = array(
+    $field = [
       'field_name' => $field_names[0],
       'entity_type' => 'node',
       'bundle' => 'page',
       'label' => 'GiraffeA" label'
-    );
+    ];
     FieldConfig::create($field)->save();
 
     // Attach the same field to a different bundle with a different label.
@@ -38,9 +38,9 @@ protected function setUp() {
 
     // Now create some example nodes/users for the view result.
     for ($i = 0; $i < 5; $i++) {
-      $edit = array(
-        $field_names[0] => array((array('value' => $this->randomMachineName()))),
-      );
+      $edit = [
+        $field_names[0] => [(['value' => $this->randomMachineName()])],
+      ];
       $nodes[] = $this->drupalCreateNode($edit);
     }
   }
@@ -63,25 +63,25 @@ function testViewsData() {
     $this->assertTrue(isset($data[$current_table]['table']['join']['node_field_data']));
     $this->assertTrue(isset($data[$revision_table]['table']['join']['node_field_revision']));
 
-    $expected_join = array(
+    $expected_join = [
       'table' => $current_table,
       'left_field' => 'nid',
       'field' => 'entity_id',
-      'extra' => array(
-        array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-        array('left_field' => 'langcode', 'field' => 'langcode'),
-      ),
-    );
+      'extra' => [
+        ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+        ['left_field' => 'langcode', 'field' => 'langcode'],
+      ],
+    ];
     $this->assertEqual($expected_join, $data[$current_table]['table']['join']['node_field_data']);
-    $expected_join = array(
+    $expected_join = [
       'table' => $revision_table,
       'left_field' => 'vid',
       'field' => 'revision_id',
-      'extra' => array(
-        array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-        array('left_field' => 'langcode', 'field' => 'langcode'),
-      ),
-    );
+      'extra' => [
+        ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+        ['left_field' => 'langcode', 'field' => 'langcode'],
+      ],
+    ];
     $this->assertEqual($expected_join, $data[$revision_table]['table']['join']['node_field_revision']);
 
     // Test click sortable.
@@ -124,7 +124,7 @@ function testViewsData() {
    */
   protected function getViewsData() {
     $views_data = $this->container->get('views.views_data');
-    $data = array();
+    $data = [];
 
     // Check the table and the joins of the first field.
     // Attached to node only.
diff --git a/core/modules/views/src/Tests/GlossaryTest.php b/core/modules/views/src/Tests/GlossaryTest.php
index 2a5bc90..b165768 100644
--- a/core/modules/views/src/Tests/GlossaryTest.php
+++ b/core/modules/views/src/Tests/GlossaryTest.php
@@ -21,7 +21,7 @@ class GlossaryTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Tests the default glossary view.
@@ -29,19 +29,19 @@ class GlossaryTest extends ViewTestBase {
   public function testGlossaryView() {
     // Create a content type and add some nodes, with a non-random title.
     $type = $this->drupalCreateContentType();
-    $nodes_per_char = array(
+    $nodes_per_char = [
       'd' => 1,
       'r' => 4,
       'u' => 10,
       'p' => 2,
       'a' => 3,
       'l' => 6,
-    );
+    ];
     $nodes_by_char = [];
     foreach ($nodes_per_char as $char => $count) {
-      $setting = array(
+      $setting = [
         'type' => $type->id()
-      );
+      ];
       for ($i = 0; $i < $count; $i++) {
         $node = $setting;
         $node['title'] = $char . $this->randomString(3);
@@ -111,10 +111,10 @@ public function testGlossaryView() {
       $label = Unicode::strtoupper($char);
       // Get the summary link for a certain character. Filter by label and href
       // to ensure that both of them are correct.
-      $result = $this->xpath('//a[contains(@href, :href) and normalize-space(text())=:label]/..', array(':href' => $href, ':label' => $label));
+      $result = $this->xpath('//a[contains(@href, :href) and normalize-space(text())=:label]/..', [':href' => $href, ':label' => $label]);
       $this->assertTrue(count($result));
       // The rendered output looks like "| (count)" so let's figure out the int.
-      $result_count = trim(str_replace(array('|', '(', ')'), '', (string) $result[0]));
+      $result_count = trim(str_replace(['|', '(', ')'], '', (string) $result[0]));
       $this->assertEqual($result_count, $count, 'The expected number got rendered.');
     }
   }
diff --git a/core/modules/views/src/Tests/Handler/AreaHTTPStatusCodeTest.php b/core/modules/views/src/Tests/Handler/AreaHTTPStatusCodeTest.php
index 86d1f99..2656adc 100644
--- a/core/modules/views/src/Tests/Handler/AreaHTTPStatusCodeTest.php
+++ b/core/modules/views/src/Tests/Handler/AreaHTTPStatusCodeTest.php
@@ -17,14 +17,14 @@ class AreaHTTPStatusCodeTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_http_status_code');
+  public static $testViews = ['test_http_status_code'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Tests the area handler.
diff --git a/core/modules/views/src/Tests/Handler/AreaTest.php b/core/modules/views/src/Tests/Handler/AreaTest.php
index 454ab58..ca9fc42 100644
--- a/core/modules/views/src/Tests/Handler/AreaTest.php
+++ b/core/modules/views/src/Tests/Handler/AreaTest.php
@@ -19,14 +19,14 @@ class AreaTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_example_area', 'test_example_area_access');
+  public static $testViews = ['test_example_area', 'test_example_area_access'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui');
+  public static $modules = ['node', 'views_ui'];
 
   protected function setUp() {
     parent::setUp();
@@ -36,13 +36,13 @@ protected function setUp() {
 
   protected function viewsData() {
     $data = parent::viewsData();
-    $data['views']['test_example'] = array(
+    $data['views']['test_example'] = [
       'title' => 'Test Example area',
       'help' => 'A area handler which just exists for tests.',
-      'area' => array(
+      'area' => [
         'id' => 'test_example'
-      )
-    );
+      ]
+    ];
 
     return $data;
   }
@@ -52,21 +52,21 @@ protected function viewsData() {
    * Tests the generic UI of a area handler.
    */
   public function testUI() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
-    $types = array('header', 'footer', 'empty');
-    $labels = array();
+    $types = ['header', 'footer', 'empty'];
+    $labels = [];
     foreach ($types as $type) {
       $edit_path = 'admin/structure/views/nojs/handler/test_example_area/default/' . $type . '/test_example';
 
       // First setup an empty label.
-      $this->drupalPostForm($edit_path, array(), t('Apply'));
+      $this->drupalPostForm($edit_path, [], t('Apply'));
       $this->assertText('Test Example area');
 
       // Then setup a no empty label.
       $labels[$type] = $this->randomMachineName();
-      $this->drupalPostForm($edit_path, array('options[admin_label]' => $labels[$type]), t('Apply'));
+      $this->drupalPostForm($edit_path, ['options[admin_label]' => $labels[$type]], t('Apply'));
       // Make sure that the new label appears on the site.
       $this->assertText($labels[$type]);
 
@@ -188,7 +188,7 @@ public function testAreaAccess() {
    * Tests global tokens.
    */
   public function testRenderAreaToken() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     $view = Views::getView('test_example_area');
@@ -204,7 +204,7 @@ public function testRenderAreaToken() {
 
     // Test the list of available tokens.
     $available = $empty_handler->getAvailableGlobalTokens();
-    foreach (array('site', 'view') as $type) {
+    foreach (['site', 'view'] as $type) {
       $this->assertTrue(!empty($available[$type]) && is_array($available[$type]));
       // Test that each item exists in the list.
       foreach ($available[$type] as $token => $info) {
@@ -230,8 +230,8 @@ public function testTitleArea() {
     $view->initDisplay('page_1');
 
     // Add the title area handler to the empty area.
-    $view->displayHandlers->get('page_1')->overrideOption('empty', array(
-      'title' => array(
+    $view->displayHandlers->get('page_1')->overrideOption('empty', [
+      'title' => [
         'id' => 'title',
         'table' => 'views',
         'field' => 'title',
@@ -239,8 +239,8 @@ public function testTitleArea() {
         'empty' => '0',
         'title' => 'Overridden title',
         'plugin_id' => 'title',
-      ),
-    ));
+      ],
+    ]);
 
     $view->storage->enable()->save();
 
diff --git a/core/modules/views/src/Tests/Handler/ArgumentStringTest.php b/core/modules/views/src/Tests/Handler/ArgumentStringTest.php
index e47b1a3..9d83fad 100644
--- a/core/modules/views/src/Tests/Handler/ArgumentStringTest.php
+++ b/core/modules/views/src/Tests/Handler/ArgumentStringTest.php
@@ -16,14 +16,14 @@ class ArgumentStringTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_glossary');
+  public static $testViews = ['test_glossary'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Tests the glossary feature.
@@ -31,11 +31,11 @@ class ArgumentStringTest extends HandlerTestBase {
   function testGlossary() {
     // Setup some nodes, one with a, two with b and three with c.
     $counter = 1;
-    foreach (array('a', 'b', 'c') as $char) {
+    foreach (['a', 'b', 'c'] as $char) {
       for ($i = 0; $i < $counter; $i++) {
-        $edit = array(
+        $edit = [
           'title' => $char . $this->randomMachineName(),
-        );
+        ];
         $this->drupalCreateNode($edit);
       }
     }
diff --git a/core/modules/views/src/Tests/Handler/FieldDropButtonTest.php b/core/modules/views/src/Tests/Handler/FieldDropButtonTest.php
index f2082f0..9d5c67f 100644
--- a/core/modules/views/src/Tests/Handler/FieldDropButtonTest.php
+++ b/core/modules/views/src/Tests/Handler/FieldDropButtonTest.php
@@ -15,14 +15,14 @@ class FieldDropButtonTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_dropbutton');
+  public static $testViews = ['test_dropbutton'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * {@inheritdoc}
@@ -39,16 +39,16 @@ protected function setUp() {
    */
   public function testDropbutton() {
     // Create some test nodes.
-    $nodes = array();
+    $nodes = [];
     for ($i = 0; $i < 5; $i++) {
       $nodes[] = $this->drupalCreateNode();
     }
 
     $this->drupalGet('test-dropbutton');
     foreach ($nodes as $node) {
-      $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[contains(@href, :path) and text()=:title]', array(':path' => '/node/' . $node->id(), ':title' => $node->label()));
+      $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[contains(@href, :path) and text()=:title]', [':path' => '/node/' . $node->id(), ':title' => $node->label()]);
       $this->assertEqual(count($result), 1, 'Just one node title link was found.');
-      $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[contains(@href, :path) and text()=:title]', array(':path' => '/node/' . $node->id(), ':title' => t('Custom Text')));
+      $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[contains(@href, :path) and text()=:title]', [':path' => '/node/' . $node->id(), ':title' => t('Custom Text')]);
       $this->assertEqual(count($result), 1, 'Just one custom link was found.');
     }
 
diff --git a/core/modules/views/src/Tests/Handler/FieldEntityOperationsTest.php b/core/modules/views/src/Tests/Handler/FieldEntityOperationsTest.php
index e76d54e..57544b5 100644
--- a/core/modules/views/src/Tests/Handler/FieldEntityOperationsTest.php
+++ b/core/modules/views/src/Tests/Handler/FieldEntityOperationsTest.php
@@ -18,14 +18,14 @@ class FieldEntityOperationsTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_operations');
+  public static $testViews = ['test_entity_operations'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'language', 'views_ui');
+  public static $modules = ['node', 'language', 'views_ui'];
 
   function setUp() {
     parent::setUp();
@@ -46,7 +46,7 @@ public function testEntityOperations() {
 
     // Create some test entities. Every other entity is Hungarian while all
     // have a Spanish translation.
-    $entities = array();
+    $entities = [];
     for ($i = 0; $i < 5; $i++) {
       $entity = Node::create([
         'title' => $this->randomString(),
@@ -60,7 +60,7 @@ public function testEntityOperations() {
       $entities[$i] = $entity;
     }
 
-    $admin_user = $this->drupalCreateUser(array('access administration pages', 'administer nodes', 'bypass node access'));
+    $admin_user = $this->drupalCreateUser(['access administration pages', 'administer nodes', 'bypass node access']);
     $this->drupalLogin($this->rootUser);
     $this->drupalGet('test-entity-operations');
     /** @var $entity \Drupal\entity_test\Entity\EntityTest */
@@ -72,8 +72,8 @@ public function testEntityOperations() {
         $this->assertTrue(count($operations) > 0, 'There are operations.');
         foreach ($operations as $operation) {
           $expected_destination = Url::fromUri('internal:/test-entity-operations')->toString();
-          $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[@href=:path and text()=:title]', array(':path' => $operation['url']->toString() . '?destination=' . $expected_destination, ':title' => $operation['title']));
-          $this->assertEqual(count($result), 1, t('Found entity @operation link with destination parameter.', array('@operation' => $operation['title'])));
+          $result = $this->xpath('//ul[contains(@class, dropbutton)]/li/a[@href=:path and text()=:title]', [':path' => $operation['url']->toString() . '?destination=' . $expected_destination, ':title' => $operation['title']]);
+          $this->assertEqual(count($result), 1, t('Found entity @operation link with destination parameter.', ['@operation' => $operation['title']]));
           // Entities which were created in Hungarian should link to the Hungarian
           // edit form, others to the English one (which has no path prefix here).
           $base_path = \Drupal::request()->getBasePath();
diff --git a/core/modules/views/src/Tests/Handler/FieldGroupRowsTest.php b/core/modules/views/src/Tests/Handler/FieldGroupRowsTest.php
index 8720361..2521e63 100644
--- a/core/modules/views/src/Tests/Handler/FieldGroupRowsTest.php
+++ b/core/modules/views/src/Tests/Handler/FieldGroupRowsTest.php
@@ -22,14 +22,14 @@ class FieldGroupRowsTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_group_rows', 'test_ungroup_rows');
+  public static $testViews = ['test_group_rows', 'test_ungroup_rows'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'field_test');
+  public static $modules = ['node', 'field_test'];
 
   /**
    * Field that will be created to test the group/ungroup rows functionality
@@ -42,22 +42,22 @@ protected function setUp() {
     parent::setUp();
 
     // Create content type with unlimited text field.
-    $node_type = $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
+    $node_type = $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
 
     // Create the unlimited text field.
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
         'field_name' => $this->fieldName,
         'entity_type' => 'node',
         'type' => 'text',
         'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
-      ));
+      ]);
     $field_storage->save();
 
     // Create an instance of the text field on the content type.
-    $field = array(
+    $field = [
       'field_storage' => $field_storage,
       'bundle' => $node_type->id(),
-    );
+    ];
     FieldConfig::create($field)->save();
   }
 
@@ -68,10 +68,10 @@ public function testGroupRows() {
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
     $renderer = \Drupal::service('renderer');
 
-    $edit = array(
+    $edit = [
       'title' => $this->randomMachineName(),
-      $this->fieldName => array('a', 'b', 'c'),
-    );
+      $this->fieldName => ['a', 'b', 'c'],
+    ];
     $this->drupalCreateNode($edit);
 
     $view = Views::getView('test_group_rows');
diff --git a/core/modules/views/src/Tests/Handler/FieldWebTest.php b/core/modules/views/src/Tests/Handler/FieldWebTest.php
index e852069..31de7be 100644
--- a/core/modules/views/src/Tests/Handler/FieldWebTest.php
+++ b/core/modules/views/src/Tests/Handler/FieldWebTest.php
@@ -25,7 +25,7 @@ class FieldWebTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_field_classes', 'test_field_output', 'test_click_sort');
+  public static $testViews = ['test_view', 'test_field_classes', 'test_field_output', 'test_click_sort'];
 
   /**
    * {@inheritdoc}
@@ -37,9 +37,9 @@ class FieldWebTest extends HandlerTestBase {
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
-  );
+  ];
 
   protected function setUp() {
     parent::setUp();
@@ -97,7 +97,7 @@ public function testClickSorting() {
    */
   protected function clickSortLoadIdsFromOutput() {
     $fields = $this->xpath("//td[contains(@class, 'views-field-id')]");
-    $ids = array();
+    $ids = [];
     foreach ($fields as $field) {
       $ids[] = (int) $field[0];
     }
@@ -174,14 +174,14 @@ protected function parseContent($content) {
    *   format and return values see the SimpleXML documentation,
    *   http://php.net/manual/function.simplexml-element-xpath.php.
    */
-  protected function xpathContent($content, $xpath, array $arguments = array()) {
+  protected function xpathContent($content, $xpath, array $arguments = []) {
     if ($elements = $this->parseContent($content)) {
       $xpath = $this->buildXPathQuery($xpath, $arguments);
       $result = $elements->xpath($xpath);
       // Some combinations of PHP / libxml versions return an empty array
       // instead of the documented FALSE. Forcefully convert any falsish values
       // to an empty array to allow foreach(...) constructions.
-      return $result ? $result : array();
+      return $result ? $result : [];
     }
     else {
       return FALSE;
@@ -224,7 +224,7 @@ public function testAlterUrl() {
 
     // Some generic test code adapted from the UrlTest class, which tests
     // mostly the different options for the path.
-    foreach (array(FALSE, TRUE) as $absolute) {
+    foreach ([FALSE, TRUE] as $absolute) {
       $alter = &$id_field->options['alter'];
       $alter['path'] = 'node/123';
 
@@ -258,7 +258,7 @@ public function testAlterUrl() {
 
       // @todo The route-based URL generator strips out NULL attributes.
       // $expected_result = \Drupal::url('entity.node.canonical', ['node' => '123'], ['query' => ['foo' => NULL], 'fragment' => 'bar', 'absolute' => $absolute]);
-      $expected_result = Url::fromUserInput('/node/123', array('query' => array('foo' => NULL), 'fragment' => 'bar', 'absolute' => $absolute))->toString();
+      $expected_result = Url::fromUserInput('/node/123', ['query' => ['foo' => NULL], 'fragment' => 'bar', 'absolute' => $absolute])->toString();
       $alter['path'] = 'node/123?foo#bar';
       $result = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
         return $id_field->theme($row);
@@ -345,7 +345,7 @@ public function testAlterUrl() {
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
       return $id_field->theme($row);
     });
-    $elements = $this->xpathContent($output, '//a[contains(@class, :class)]', array(':class' => $class));
+    $elements = $this->xpathContent($output, '//a[contains(@class, :class)]', [':class' => $class]);
     $this->assertTrue($elements);
     // @fixme link_class, alt, rel cannot be unset, which should be fixed.
     $id_field->options['alter']['link_class'] = '';
@@ -355,7 +355,7 @@ public function testAlterUrl() {
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
       return $id_field->theme($row);
     });
-    $elements = $this->xpathContent($output, '//a[contains(@title, :alt)]', array(':alt' => $rel));
+    $elements = $this->xpathContent($output, '//a[contains(@title, :alt)]', [':alt' => $rel]);
     $this->assertTrue($elements);
     $id_field->options['alter']['alt'] = '';
 
@@ -364,7 +364,7 @@ public function testAlterUrl() {
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
       return $id_field->theme($row);
     });
-    $elements = $this->xpathContent($output, '//a[contains(@rel, :rel)]', array(':rel' => $rel));
+    $elements = $this->xpathContent($output, '//a[contains(@rel, :rel)]', [':rel' => $rel]);
     $this->assertTrue($elements);
     $id_field->options['alter']['rel'] = '';
 
@@ -373,7 +373,7 @@ public function testAlterUrl() {
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($id_field, $row) {
       return $id_field->theme($row);
     });
-    $elements = $this->xpathContent($output, '//a[contains(@target, :target)]', array(':target' => $target));
+    $elements = $this->xpathContent($output, '//a[contains(@target, :target)]', [':target' => $target]);
     $this->assertTrue($elements);
     unset($id_field->options['alter']['target']);
   }
@@ -395,81 +395,81 @@ public function testFieldClasses() {
     $id_field->options['label'] = $this->randomMachineName();
     $output = $view->preview();
     $output = $renderer->renderRoot($output);
-    $this->assertFalse($this->xpathContent($output, '//div[contains(@class, :class)]', array(':class' => 'field-content')));
-    $this->assertFalse($this->xpathContent($output, '//div[contains(@class, :class)]', array(':class' => 'field__label')));
+    $this->assertFalse($this->xpathContent($output, '//div[contains(@class, :class)]', [':class' => 'field-content']));
+    $this->assertFalse($this->xpathContent($output, '//div[contains(@class, :class)]', [':class' => 'field__label']));
 
     $id_field->options['element_default_classes'] = TRUE;
     $output = $view->preview();
     $output = $renderer->renderRoot($output);
     // Per default the label and the element of the field are spans.
-    $this->assertTrue($this->xpathContent($output, '//span[contains(@class, :class)]', array(':class' => 'field-content')));
-    $this->assertTrue($this->xpathContent($output, '//span[contains(@class, :class)]', array(':class' => 'views-label')));
-    $this->assertTrue($this->xpathContent($output, '//div[contains(@class, :class)]', array(':class' => 'views-field')));
+    $this->assertTrue($this->xpathContent($output, '//span[contains(@class, :class)]', [':class' => 'field-content']));
+    $this->assertTrue($this->xpathContent($output, '//span[contains(@class, :class)]', [':class' => 'views-label']));
+    $this->assertTrue($this->xpathContent($output, '//div[contains(@class, :class)]', [':class' => 'views-field']));
 
     // Tests the element wrapper classes/element.
     $random_class = $this->randomMachineName();
 
     // Set some common wrapper element types and see whether they appear with and without a custom class set.
-    foreach (array('h1', 'span', 'p', 'div') as $element_type) {
+    foreach (['h1', 'span', 'p', 'div'] as $element_type) {
       $id_field->options['element_wrapper_type'] = $element_type;
 
       // Set a custom wrapper element css class.
       $id_field->options['element_wrapper_class'] = $random_class;
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertTrue($this->xpathContent($output, "//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertTrue($this->xpathContent($output, "//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
 
       // Set no custom css class.
       $id_field->options['element_wrapper_class'] = '';
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertFalse($this->xpathContent($output, "//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertFalse($this->xpathContent($output, "//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
       $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]/{$element_type}"));
     }
 
     // Tests the label class/element.
 
     // Set some common label element types and see whether they appear with and without a custom class set.
-    foreach (array('h1', 'span', 'p', 'div') as $element_type) {
+    foreach (['h1', 'span', 'p', 'div'] as $element_type) {
       $id_field->options['element_label_type'] = $element_type;
 
       // Set a custom label element css class.
       $id_field->options['element_label_class'] = $random_class;
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
 
       // Set no custom css class.
       $id_field->options['element_label_class'] = '';
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertFalse($this->xpathContent($output, "//li[contains(@class, views-row)]//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertFalse($this->xpathContent($output, "//li[contains(@class, views-row)]//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
       $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//{$element_type}"));
     }
 
     // Tests the element classes/element.
 
     // Set some common element element types and see whether they appear with and without a custom class set.
-    foreach (array('h1', 'span', 'p', 'div') as $element_type) {
+    foreach (['h1', 'span', 'p', 'div'] as $element_type) {
       $id_field->options['element_type'] = $element_type;
 
       // Set a custom label element css class.
       $id_field->options['element_class'] = $random_class;
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//div[contains(@class, views-field)]//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//div[contains(@class, views-field)]//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
 
       // Set no custom css class.
       $id_field->options['element_class'] = '';
       $output = $view->preview();
       $output = $renderer->renderRoot($output);
-      $this->assertFalse($this->xpathContent($output, "//li[contains(@class, views-row)]//div[contains(@class, views-field)]//{$element_type}[contains(@class, :class)]", array(':class' => $random_class)));
+      $this->assertFalse($this->xpathContent($output, "//li[contains(@class, views-row)]//div[contains(@class, views-field)]//{$element_type}[contains(@class, :class)]", [':class' => $random_class]));
       $this->assertTrue($this->xpathContent($output, "//li[contains(@class, views-row)]//div[contains(@class, views-field)]//{$element_type}"));
     }
 
     // Tests the available html elements.
     $element_types = $id_field->getElements();
-    $expected_elements = array(
+    $expected_elements = [
       '',
       0,
       'div',
@@ -484,7 +484,7 @@ public function testFieldClasses() {
       'strong',
       'em',
       'marquee'
-    );
+    ];
 
     $this->assertEqual(array_keys($element_types), $expected_elements);
   }
@@ -560,14 +560,14 @@ public function testTextRendering() {
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($name_field, $row) {
       return $name_field->advancedRender($row);
     });
-    $this->assertSubString($output, $trimmed_name, format_string('Make sure the trimmed output (@trimmed) appears in the rendered output (@output).', array('@trimmed' => $trimmed_name, '@output' => $output)));
-    $this->assertNotSubString($output, $row->views_test_data_name, format_string("Make sure the untrimmed value (@untrimmed) shouldn't appear in the rendered output (@output).", array('@untrimmed' => $row->views_test_data_name, '@output' => $output)));
+    $this->assertSubString($output, $trimmed_name, format_string('Make sure the trimmed output (@trimmed) appears in the rendered output (@output).', ['@trimmed' => $trimmed_name, '@output' => $output]));
+    $this->assertNotSubString($output, $row->views_test_data_name, format_string("Make sure the untrimmed value (@untrimmed) shouldn't appear in the rendered output (@output).", ['@untrimmed' => $row->views_test_data_name, '@output' => $output]));
 
     $name_field->options['alter']['max_length'] = 9;
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($name_field, $row) {
       return $name_field->advancedRender($row);
     });
-    $this->assertSubString($output, $trimmed_name, format_string('Make sure the untrimmed (@untrimmed) output appears in the rendered output  (@output).', array('@trimmed' => $trimmed_name, '@output' => $output)));
+    $this->assertSubString($output, $trimmed_name, format_string('Make sure the untrimmed (@untrimmed) output appears in the rendered output  (@output).', ['@trimmed' => $trimmed_name, '@output' => $output]));
 
     // Take word_boundary into account for the tests.
     $name_field->options['alter']['max_length'] = 5;
@@ -575,34 +575,34 @@ public function testTextRendering() {
     $random_text_2 = $this->randomMachineName(2);
     $random_text_4 = $this->randomMachineName(4);
     $random_text_8 = $this->randomMachineName(8);
-    $tuples = array(
+    $tuples = [
       // Create one string which doesn't fit at all into the limit.
-      array(
+      [
         'value' => $random_text_8,
         'trimmed_value' => '',
         'trimmed' => TRUE
-      ),
+      ],
       // Create one string with two words which doesn't fit both into the limit.
-      array(
+      [
         'value' => $random_text_8 . ' ' . $random_text_8,
         'trimmed_value' => '',
         'trimmed' => TRUE
-      ),
+      ],
       // Create one string which contains of two words, of which only the first
       // fits into the limit.
-      array(
+      [
         'value' => $random_text_4 . ' ' . $random_text_8,
         'trimmed_value' => $random_text_4,
         'trimmed' => TRUE
-      ),
+      ],
       // Create one string which contains of two words, of which both fits into
       // the limit.
-      array(
+      [
         'value' => $random_text_2 . ' ' . $random_text_2,
         'trimmed_value' => $random_text_2 . ' ' . $random_text_2,
         'trimmed' => FALSE
-      )
-    );
+      ]
+    ];
 
     foreach ($tuples as $tuple) {
       $row->views_test_data_name = $tuple['value'];
@@ -611,10 +611,10 @@ public function testTextRendering() {
       });
 
       if ($tuple['trimmed']) {
-        $this->assertNotSubString($output, $tuple['value'], format_string('The untrimmed value (@untrimmed) should not appear in the trimmed output (@output).', array('@untrimmed' => $tuple['value'], '@output' => $output)));
+        $this->assertNotSubString($output, $tuple['value'], format_string('The untrimmed value (@untrimmed) should not appear in the trimmed output (@output).', ['@untrimmed' => $tuple['value'], '@output' => $output]));
       }
       if (!empty($tuple['trimmed_value'])) {
-        $this->assertSubString($output, $tuple['trimmed_value'], format_string('The trimmed value (@trimmed) should appear in the trimmed output (@output).', array('@trimmed' => $tuple['trimmed_value'], '@output' => $output)));
+        $this->assertSubString($output, $tuple['trimmed_value'], format_string('The trimmed value (@trimmed) should appear in the trimmed output (@output).', ['@trimmed' => $tuple['trimmed_value'], '@output' => $output]));
       }
     }
 
@@ -629,14 +629,14 @@ public function testTextRendering() {
       return $name_field->advancedRender($row);
     });
     $this->assertSubString($output, $more_text, 'Make sure a read more text is displayed if the output got trimmed');
-    $this->assertTrue($this->xpathContent($output, '//a[contains(@href, :path)]', array(':path' => $more_path)), 'Make sure the read more link points to the right destination.');
+    $this->assertTrue($this->xpathContent($output, '//a[contains(@href, :path)]', [':path' => $more_path]), 'Make sure the read more link points to the right destination.');
 
     $name_field->options['alter']['more_link'] = FALSE;
     $output = $renderer->executeInRenderContext(new RenderContext(), function () use ($name_field, $row) {
       return $name_field->advancedRender($row);
     });
     $this->assertNotSubString($output, $more_text, 'Make sure no read more text appears.');
-    $this->assertFalse($this->xpathContent($output, '//a[contains(@href, :path)]', array(':path' => $more_path)), 'Make sure no read more link appears.');
+    $this->assertFalse($this->xpathContent($output, '//a[contains(@href, :path)]', [':path' => $more_path]), 'Make sure no read more link appears.');
 
     // Check for the ellipses.
     $row->views_test_data_name = $this->randomMachineName(8);
diff --git a/core/modules/views/src/Tests/Handler/FilterDateTest.php b/core/modules/views/src/Tests/Handler/FilterDateTest.php
index 2045b8a..52789f4 100644
--- a/core/modules/views/src/Tests/Handler/FilterDateTest.php
+++ b/core/modules/views/src/Tests/Handler/FilterDateTest.php
@@ -16,27 +16,27 @@ class FilterDateTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_date_between');
+  public static $testViews = ['test_filter_date_between'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui');
+  public static $modules = ['node', 'views_ui'];
 
   protected function setUp() {
     parent::setUp();
     // Add some basic test nodes.
-    $this->nodes = array();
-    $this->nodes[] = $this->drupalCreateNode(array('created' => 100000));
-    $this->nodes[] = $this->drupalCreateNode(array('created' => 200000));
-    $this->nodes[] = $this->drupalCreateNode(array('created' => 300000));
-    $this->nodes[] = $this->drupalCreateNode(array('created' => time() + 86400));
+    $this->nodes = [];
+    $this->nodes[] = $this->drupalCreateNode(['created' => 100000]);
+    $this->nodes[] = $this->drupalCreateNode(['created' => 200000]);
+    $this->nodes[] = $this->drupalCreateNode(['created' => 300000]);
+    $this->nodes[] = $this->drupalCreateNode(['created' => time() + 86400]);
 
-    $this->map = array(
+    $this->map = [
       'nid' => 'nid',
-    );
+    ];
   }
 
   /**
@@ -60,9 +60,9 @@ protected function _testOffset() {
     $view->filter['created']->value['type'] = 'offset';
     $view->filter['created']->value['value'] = '+1 hour';
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[3]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[3]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
     $view->destroy();
 
@@ -73,9 +73,9 @@ protected function _testOffset() {
     $view->filter['created']->value['max'] = '+2 days';
     $view->filter['created']->value['min'] = '+1 hour';
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[3]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[3]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
   }
 
@@ -91,9 +91,9 @@ protected function _testBetween() {
     $view->filter['created']->value['min'] = format_date(150000, 'custom', 'Y-m-d H:i:s');
     $view->filter['created']->value['max'] = format_date(200000, 'custom', 'Y-m-d H:i:s');
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[1]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[1]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
     $view->destroy();
 
@@ -102,10 +102,10 @@ protected function _testBetween() {
     $view->filter['created']->operator = 'between';
     $view->filter['created']->value['max'] = format_date(200000, 'custom', 'Y-m-d H:i:s');
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[0]->id()),
-      array('nid' => $this->nodes[1]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[0]->id()],
+      ['nid' => $this->nodes[1]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
     $view->destroy();
 
@@ -116,10 +116,10 @@ protected function _testBetween() {
     $view->filter['created']->value['max'] = format_date(200000, 'custom', 'Y-m-d H:i:s');
 
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[2]->id()),
-      array('nid' => $this->nodes[3]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[2]->id()],
+      ['nid' => $this->nodes[3]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
     $view->destroy();
 
@@ -128,10 +128,10 @@ protected function _testBetween() {
     $view->filter['created']->operator = 'not between';
     $view->filter['created']->value['max'] = format_date(200000, 'custom', 'Y-m-d H:i:s');
     $view->executeDisplay('default');
-    $expected_result = array(
-      array('nid' => $this->nodes[2]->id()),
-      array('nid' => $this->nodes[3]->id()),
-    );
+    $expected_result = [
+      ['nid' => $this->nodes[2]->id()],
+      ['nid' => $this->nodes[3]->id()],
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->map);
   }
 
@@ -140,12 +140,12 @@ protected function _testBetween() {
    */
   protected function _testUiValidation() {
 
-    $this->drupalLogin($this->drupalCreateUser(array('administer views', 'administer site configuration')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views', 'administer site configuration']));
 
     $this->drupalGet('admin/structure/views/view/test_filter_date_between/edit');
     $this->drupalGet('admin/structure/views/nojs/handler/test_filter_date_between/default/filter/created');
 
-    $edit = array();
+    $edit = [];
     // Generate a definitive wrong value, which should be checked by validation.
     $edit['options[value][value]'] = $this->randomString() . '-------';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
diff --git a/core/modules/views/src/Tests/Handler/HandlerAllTest.php b/core/modules/views/src/Tests/Handler/HandlerAllTest.php
index c15ce57..5654376 100644
--- a/core/modules/views/src/Tests/Handler/HandlerAllTest.php
+++ b/core/modules/views/src/Tests/Handler/HandlerAllTest.php
@@ -22,7 +22,7 @@ class HandlerAllTest extends HandlerTestBase {
    *
    * @var array
    */
-  public static $modules = array(
+  public static $modules = [
     'aggregator',
     'book',
     'block',
@@ -40,13 +40,13 @@ class HandlerAllTest extends HandlerTestBase {
     'statistics',
     'taxonomy',
     'user',
-  );
+  ];
 
   /**
    * Tests most of the handlers.
    */
   public function testHandlers() {
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
     $this->addDefaultCommentField('node', 'article');
 
     $object_types = array_keys(ViewExecutable::getHandlerTypes());
@@ -55,7 +55,7 @@ public function testHandlers() {
         continue;
       }
 
-      $view = View::create(array('base_table' => $base_table));
+      $view = View::create(['base_table' => $base_table]);
       $view = $view->getExecutable();
 
       // @todo The groupwise relationship is currently broken.
@@ -66,18 +66,18 @@ public function testHandlers() {
       foreach ($info as $field => $field_info) {
         // Table is a reserved key for the metainformation.
         if ($field != 'table' && !in_array("$base_table:$field", $exclude)) {
-          $item = array(
+          $item = [
             'table' => $base_table,
             'field' => $field,
-          );
+          ];
           foreach ($object_types as $type) {
             if (isset($field_info[$type]['id'])) {
-              $options = array();
+              $options = [];
               if ($type == 'filter') {
                 $handler = $this->container->get("plugin.manager.views.$type")->getHandler($item);
                 // Set the value to use for the filter based on the filter type.
                 if ($handler instanceof InOperator) {
-                  $options['value'] = array(1);
+                  $options['value'] = [1];
                 }
                 else {
                   $options['value'] = 1;
@@ -102,10 +102,10 @@ public function testHandlers() {
           foreach ($view->{$type} as $handler) {
             $this->assertTrue($handler instanceof HandlerBase, format_string(
               '@type handler of class %class is an instance of HandlerBase',
-              array(
+              [
                 '@type' => $type,
                 '%class' => get_class($handler),
-              )));
+              ]));
           }
         }
       }
diff --git a/core/modules/views/src/Tests/Handler/HandlerTest.php b/core/modules/views/src/Tests/Handler/HandlerTest.php
index 8ff4033..e07beb3 100644
--- a/core/modules/views/src/Tests/Handler/HandlerTest.php
+++ b/core/modules/views/src/Tests/Handler/HandlerTest.php
@@ -23,18 +23,18 @@ class HandlerTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_view_handler_weight', 'test_handler_relationships', 'test_handler_test_access', 'test_filter_in_operator_ui');
+  public static $testViews = ['test_view', 'test_view_handler_weight', 'test_handler_relationships', 'test_handler_test_access', 'test_filter_in_operator_ui'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'comment', 'node');
+  public static $modules = ['views_ui', 'comment', 'node'];
 
   protected function setUp() {
     parent::setUp();
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'page');
     $this->enableViewsTestModule();
   }
@@ -56,7 +56,7 @@ protected function viewsData() {
         $data['views_test_data']['access_callback'][$type]['access callback'] = 'views_test_data_handler_test_access_callback';
 
         $data['views_test_data']['access_callback_arguments'][$type]['access callback'] = 'views_test_data_handler_test_access_callback_argument';
-        $data['views_test_data']['access_callback_arguments'][$type]['access arguments'] = array(TRUE);
+        $data['views_test_data']['access_callback_arguments'][$type]['access arguments'] = [TRUE];
       }
     }
 
@@ -68,45 +68,45 @@ protected function viewsData() {
    */
   public function testBreakString() {
     // Check defaults.
-    $this->assertEqual((object) array('value' => array(), 'operator' => NULL), HandlerBase::breakString(''));
+    $this->assertEqual((object) ['value' => [], 'operator' => NULL], HandlerBase::breakString(''));
 
     // Test ors
     $handler = HandlerBase::breakString('word1 word2+word');
-    $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
+    $this->assertEqualValue(['word1', 'word2', 'word'], $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word1+word2+word');
-    $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
+    $this->assertEqualValue(['word1', 'word2', 'word'], $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word1 word2 word');
-    $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
+    $this->assertEqualValue(['word1', 'word2', 'word'], $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('word-1+word-2+word');
-    $this->assertEqualValue(array('word-1', 'word-2', 'word'), $handler);
+    $this->assertEqualValue(['word-1', 'word-2', 'word'], $handler);
     $this->assertEqual('or', $handler->operator);
     $handler = HandlerBase::breakString('wõrd1+wõrd2+wõrd');
-    $this->assertEqualValue(array('wõrd1', 'wõrd2', 'wõrd'), $handler);
+    $this->assertEqualValue(['wõrd1', 'wõrd2', 'wõrd'], $handler);
     $this->assertEqual('or', $handler->operator);
 
     // Test ands.
     $handler = HandlerBase::breakString('word1,word2,word');
-    $this->assertEqualValue(array('word1', 'word2', 'word'), $handler);
+    $this->assertEqualValue(['word1', 'word2', 'word'], $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word1 word2,word');
-    $this->assertEqualValue(array('word1 word2', 'word'), $handler);
+    $this->assertEqualValue(['word1 word2', 'word'], $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word1,word2 word');
-    $this->assertEqualValue(array('word1', 'word2 word'), $handler);
+    $this->assertEqualValue(['word1', 'word2 word'], $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('word-1,word-2,word');
-    $this->assertEqualValue(array('word-1', 'word-2', 'word'), $handler);
+    $this->assertEqualValue(['word-1', 'word-2', 'word'], $handler);
     $this->assertEqual('and', $handler->operator);
     $handler = HandlerBase::breakString('wõrd1,wõrd2,wõrd');
-    $this->assertEqualValue(array('wõrd1', 'wõrd2', 'wõrd'), $handler);
+    $this->assertEqualValue(['wõrd1', 'wõrd2', 'wõrd'], $handler);
     $this->assertEqual('and', $handler->operator);
 
     // Test a single word
     $handler = HandlerBase::breakString('word');
-    $this->assertEqualValue(array('word'), $handler);
+    $this->assertEqualValue(['word'], $handler);
     $this->assertEqual('and', $handler->operator);
 
     $s1 = $this->randomMachineName();
@@ -117,45 +117,45 @@ public function testBreakString() {
 
     // Test "or"s.
     $handlerBase = HandlerBase::breakString("$s1 $n2+$n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1+$n2+$n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1 $n2 $n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1 $n2++$n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     // Test "and"s.
     $handlerBase = HandlerBase::breakString("$s1,$n2,$n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1,,$n2,$n3");
-    $this->assertEqualValue(array($s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$s1, $n2, $n3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
 
     // Enforce int values.
     $handlerBase = HandlerBase::breakString("$n1,$n2,$n3", TRUE);
-    $this->assertEqualValue(array($n1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$n1, $n2, $n3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$n1+$n2+$n3", TRUE);
-    $this->assertEqualValue(array($n1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([$n1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1,$n2,$n3", TRUE);
-    $this->assertEqualValue(array((int) $s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([(int) $s1, $n2, $n3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1+$n2+$n3", TRUE);
-    $this->assertEqualValue(array((int) $s1, $n2, $n3), $handlerBase);
+    $this->assertEqualValue([(int) $s1, $n2, $n3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     // Generate three random decimals which can be used below;
@@ -165,28 +165,28 @@ public function testBreakString() {
 
     // Test "or"s.
     $handlerBase = HandlerBase::breakString("$s1 $d1+$d2");
-    $this->assertEqualValue(array($s1, $d1, $d2), $handlerBase);
+    $this->assertEqualValue([$s1, $d1, $d2], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1+$d1+$d3");
-    $this->assertEqualValue(array($s1, $d1, $d3), $handlerBase);
+    $this->assertEqualValue([$s1, $d1, $d3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1 $d2 $d3");
-    $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
+    $this->assertEqualValue([$s1, $d2, $d3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1 $d2++$d3");
-    $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
+    $this->assertEqualValue([$s1, $d2, $d3], $handlerBase);
     $this->assertEqual('or', $handlerBase->operator);
 
     // Test "and"s.
     $handlerBase = HandlerBase::breakString("$s1,$d2,$d3");
-    $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
+    $this->assertEqualValue([$s1, $d2, $d3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
 
     $handlerBase = HandlerBase::breakString("$s1,,$d2,$d3");
-    $this->assertEqualValue(array($s1, $d2, $d3), $handlerBase);
+    $this->assertEqualValue([$s1, $d2, $d3], $handlerBase);
     $this->assertEqual('and', $handlerBase->operator);
   }
 
@@ -194,13 +194,13 @@ public function testBreakString() {
    * Tests the order of handlers is the same before and after saving.
    */
   public function testHandlerWeights() {
-    $handler_types = array('fields', 'filters', 'sorts');
+    $handler_types = ['fields', 'filters', 'sorts'];
 
     $view = Views::getView('test_view_handler_weight');
     $view->initDisplay();
 
     // Store the order of handlers before saving the view.
-    $original_order = array();
+    $original_order = [];
     foreach ($handler_types as $type) {
       $original_order[$type] = array_keys($view->display_handler->getOption($type));
     }
@@ -233,7 +233,7 @@ public function testHandlerWeights() {
    */
   protected function assertEqualValue($expected, $handler, $message = '', $group = 'Other') {
     if (empty($message)) {
-      $message = t('Comparing @first and @second', array('@first' => implode(',', $expected), '@second' => implode(',', $handler->value)));
+      $message = t('Comparing @first and @second', ['@first' => implode(',', $expected), '@second' => implode(',', $handler->value)]);
     }
 
     return $this->assert($expected == $handler->value, $message, $group);
@@ -243,7 +243,7 @@ protected function assertEqualValue($expected, $handler, $message = '', $group =
    * Tests the relationship ui for field/filter/argument/relationship.
    */
   public function testRelationshipUI() {
-    $views_admin = $this->drupalCreateUser(array('administer views'));
+    $views_admin = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($views_admin);
 
     // Make sure the link to the field options exists.
@@ -262,18 +262,18 @@ public function testRelationshipUI() {
     // Check for available options.
     $xpath = $this->constructFieldXpath('name', $relationship_name);
     $fields = $this->xpath($xpath);
-    $options = array();
+    $options = [];
     foreach ($fields as $field) {
       $items = $this->getAllOptions($field);
       foreach ($items as $item) {
         $options[] = $item->attributes()->value;
       }
     }
-    $expected_options = array('none', 'nid');
+    $expected_options = ['none', 'nid'];
     $this->assertEqual($options, $expected_options);
 
     // Remove the relationship and make sure no relationship option appears.
-    $this->drupalPostForm('admin/structure/views/nojs/handler/test_handler_relationships/default/relationship/nid', array(), t('Remove'));
+    $this->drupalPostForm('admin/structure/views/nojs/handler/test_handler_relationships/default/relationship/nid', [], t('Remove'));
     $this->drupalGet($handler_options_path);
     $this->assertNoFieldByName($relationship_name, NULL, 'Make sure that no relationship option is available');
 
@@ -298,9 +298,9 @@ public function testSetRelationship() {
     $view = Views::getView('test_handler_relationships');
     $view->setDisplay();
     // Setup a broken relationship.
-    $view->addHandler('default', 'relationship', $this->randomMachineName(), $this->randomMachineName(), array(), 'broken_relationship');
+    $view->addHandler('default', 'relationship', $this->randomMachineName(), $this->randomMachineName(), [], 'broken_relationship');
     // Setup a valid relationship.
-    $view->addHandler('default', 'relationship', 'comment_field_data', 'node', array('relationship' => 'cid'), 'valid_relationship');
+    $view->addHandler('default', 'relationship', 'comment_field_data', 'node', ['relationship' => 'cid'], 'valid_relationship');
     $view->initHandlers();
     $field = $view->field['title'];
 
@@ -377,7 +377,7 @@ public function testAccess() {
     $view->initHandlers();
 
     foreach ($views_data['access_callback'] as $type => $info) {
-      if (!in_array($type, array('title', 'help'))) {
+      if (!in_array($type, ['title', 'help'])) {
         $this->assertTrue($view->field['access_callback'] instanceof HandlerBase, 'Make sure the user got access to the access_callback field ');
         $this->assertFalse(isset($view->field['access_callback_arguments']), 'Make sure the user got no access to the access_callback_arguments field ');
       }
@@ -391,7 +391,7 @@ public function testAccess() {
     $view->initHandlers();
 
     foreach ($views_data['access_callback'] as $type => $info) {
-      if (!in_array($type, array('title', 'help'))) {
+      if (!in_array($type, ['title', 'help'])) {
         $this->assertFalse(isset($view->field['access_callback']), 'Make sure the user got no access to the access_callback field ');
         $this->assertTrue($view->field['access_callback_arguments'] instanceof HandlerBase, 'Make sure the user got access to the access_callback_arguments field ');
       }
diff --git a/core/modules/views/src/Tests/Plugin/AccessTest.php b/core/modules/views/src/Tests/Plugin/AccessTest.php
index 1bcf300..2278f67 100644
--- a/core/modules/views/src/Tests/Plugin/AccessTest.php
+++ b/core/modules/views/src/Tests/Plugin/AccessTest.php
@@ -19,14 +19,14 @@ class AccessTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_access_none', 'test_access_static', 'test_access_dynamic');
+  public static $testViews = ['test_access_none', 'test_access_static', 'test_access_dynamic'];
 
   /**
    * Modules to enable.
    *
    * @return array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Web user for testing.
@@ -47,12 +47,12 @@ protected function setUp() {
 
     $this->enableViewsTestModule();
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_data'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_data']);
 
     $this->webUser = $this->drupalCreateUser();
 
-    $normal_role = $this->drupalCreateRole(array());
-    $this->normalUser = $this->drupalCreateUser(array('views_test_data test permission'));
+    $normal_role = $this->drupalCreateRole([]);
+    $this->normalUser = $this->drupalCreateUser(['views_test_data test permission']);
     $this->normalUser->addRole($normal_role);
     // @todo when all the plugin information is cached make a reset function and
     // call it here.
diff --git a/core/modules/views/src/Tests/Plugin/ArgumentDefaultTest.php b/core/modules/views/src/Tests/Plugin/ArgumentDefaultTest.php
index 5abc27c..a4e8217 100644
--- a/core/modules/views/src/Tests/Plugin/ArgumentDefaultTest.php
+++ b/core/modules/views/src/Tests/Plugin/ArgumentDefaultTest.php
@@ -22,20 +22,20 @@ class ArgumentDefaultTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array(
+  public static $testViews = [
     'test_view',
     'test_argument_default_fixed',
     'test_argument_default_current_user',
     'test_argument_default_node',
     'test_argument_default_query_param',
-    );
+    ];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui', 'block');
+  public static $modules = ['node', 'views_ui', 'block'];
 
   protected function setUp() {
     parent::setUp();
@@ -52,13 +52,13 @@ public function testArgumentDefaultPlugin() {
     $view = Views::getView('test_view');
 
     // Add a new argument and set the test plugin for the argument_default.
-    $options = array(
+    $options = [
       'default_argument_type' => 'argument_default_test',
-      'default_argument_options' => array(
+      'default_argument_options' => [
         'value' => 'John'
-      ),
+      ],
       'default_action' => 'default'
-    );
+    ];
     $id = $view->addHandler('default', 'argument', 'views_test_data', 'name', $options);
     $view->initHandlers();
     $plugin = $view->argument[$id]->getPlugin('argument_default');
@@ -70,15 +70,15 @@ public function testArgumentDefaultPlugin() {
     // just returns John.
     $this->executeView($view);
     $this->assertEqual($view->argument[$id]->getValue(), 'John', 'The correct argument value is used.');
-    $expected_result = array(array('name' => 'John'));
-    $this->assertIdenticalResultset($view, $expected_result, array('views_test_data_name' => 'name'));
+    $expected_result = [['name' => 'John']];
+    $this->assertIdenticalResultset($view, $expected_result, ['views_test_data_name' => 'name']);
 
     // Pass in value as argument to be sure that not the default value is used.
     $view->destroy();
-    $this->executeView($view, array('George'));
+    $this->executeView($view, ['George']);
     $this->assertEqual($view->argument[$id]->getValue(), 'George', 'The correct argument value is used.');
-    $expected_result = array(array('name' => 'George'));
-    $this->assertIdenticalResultset($view, $expected_result, array('views_test_data_name' => 'name'));
+    $expected_result = [['name' => 'George']];
+    $this->assertIdenticalResultset($view, $expected_result, ['views_test_data_name' => 'name']);
   }
 
 
@@ -86,24 +86,24 @@ public function testArgumentDefaultPlugin() {
    * Tests the use of a default argument plugin that provides no options.
    */
   public function testArgumentDefaultNoOptions() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     // The current_user plugin has no options form, and should pass validation.
     $argument_type = 'current_user';
-    $edit = array(
+    $edit = [
       'options[default_argument_type]' => $argument_type,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_argument_default_current_user/default/argument/uid', $edit, t('Apply'));
 
     // Note, the undefined index error has two spaces after it.
-    $error = array(
+    $error = [
       '%type' => 'Notice',
       '@message' => 'Undefined index:  ' . $argument_type,
       '%function' => 'views_handler_argument->validateOptionsForm()',
-    );
+    ];
     $message = t('%type: @message in %function', $error);
-    $this->assertNoRaw($message, format_string('Did not find error message: @message.', array('@message' => $message)));
+    $this->assertNoRaw($message, format_string('Did not find error message: @message.', ['@message' => $message]));
   }
 
   /**
@@ -122,7 +122,7 @@ public function testArgumentDefaultFixed() {
 
     // Make sure that a normal argument provided is used
     $random_string = $this->randomMachineName();
-    $view->executeDisplay('default', array($random_string));
+    $view->executeDisplay('default', [$random_string]);
 
     $this->assertEqual($view->args[0], $random_string, 'Provided argument should be used.');
   }
@@ -137,13 +137,13 @@ public function testArgumentDefaultFixed() {
    */
   public function testArgumentDefaultNode() {
     // Create a user that has permission to place a view block.
-    $permissions = array(
+    $permissions = [
       'administer views',
       'administer blocks',
       'bypass node access',
       'access user profiles',
       'view all revisions',
-      );
+      ];
     $views_admin = $this->drupalCreateUser($permissions);
     $this->drupalLogin($views_admin);
 
diff --git a/core/modules/views/src/Tests/Plugin/CacheTagTest.php b/core/modules/views/src/Tests/Plugin/CacheTagTest.php
index eaee656..72d94f3 100644
--- a/core/modules/views/src/Tests/Plugin/CacheTagTest.php
+++ b/core/modules/views/src/Tests/Plugin/CacheTagTest.php
@@ -19,14 +19,14 @@ class CacheTagTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_tag_cache');
+  public static $testViews = ['test_tag_cache'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * The node storage.
@@ -73,17 +73,17 @@ class CacheTagTest extends PluginTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page', 'name' => 'Basic page'));
-    $this->drupalCreateContentType(array('type' => 'article', 'name' => 'Article'));
+    $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
+    $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
     $this->nodeStorage = $this->container->get('entity.manager')->getStorage('node');
     $this->nodeViewBuilder = $this->container->get('entity.manager')->getViewBuilder('node');
     $this->userViewBuilder = $this->container->get('entity.manager')->getViewBuilder('user');
 
     for ($i = 1; $i <= 5; $i++) {
-      $this->pages[] = $this->drupalCreateNode(array('title' => "Test $i", 'type' => 'page'));
+      $this->pages[] = $this->drupalCreateNode(['title' => "Test $i", 'type' => 'page']);
     }
-    $this->article = $this->drupalCreateNode(array('title' => "Test article", 'type' => 'article'));
+    $this->article = $this->drupalCreateNode(['title' => "Test article", 'type' => 'article']);
     $this->user = $this->drupalCreateUser();
 
     // Mark the current request safe, in order to make render cache working, see
@@ -183,7 +183,7 @@ public function testTagCaching() {
     $this->assertTrue($cache_plugin->cacheGet('results'), 'Results cache found.');
     $this->assertTrue($this->getRenderCache($view), 'Output cache found.');
 
-    $this->userViewBuilder->resetCache(array($this->user));
+    $this->userViewBuilder->resetCache([$this->user]);
 
     $cache_plugin = $view->display_handler->getPlugin('cache');
     $this->assertTrue($cache_plugin->cacheGet('results'), 'Results cache found after a user is invalidated.');
diff --git a/core/modules/views/src/Tests/Plugin/CacheWebTest.php b/core/modules/views/src/Tests/Plugin/CacheWebTest.php
index f41e786..7786606 100644
--- a/core/modules/views/src/Tests/Plugin/CacheWebTest.php
+++ b/core/modules/views/src/Tests/Plugin/CacheWebTest.php
@@ -21,14 +21,14 @@ class CacheWebTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display');
+  public static $testViews = ['test_display'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * {@inheritdoc}
@@ -46,13 +46,13 @@ public function testCacheOutputOnPage() {
     $view = Views::getView('test_display');
     $view->storage->setStatus(TRUE);
     $view->setDisplay('page_1');
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'results_lifespan' => '3600',
         'output_lifespan' => '3600'
-      )
-    ));
+      ]
+    ]);
     $view->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
 
diff --git a/core/modules/views/src/Tests/Plugin/DisabledDisplayTest.php b/core/modules/views/src/Tests/Plugin/DisabledDisplayTest.php
index 9238dda..cb43946 100644
--- a/core/modules/views/src/Tests/Plugin/DisabledDisplayTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisabledDisplayTest.php
@@ -15,14 +15,14 @@ class DisabledDisplayTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_disabled_display');
+  public static $testViews = ['test_disabled_display'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('block', 'node', 'views');
+  public static $modules = ['block', 'node', 'views'];
 
   protected function setUp() {
     parent::setUp();
@@ -31,7 +31,7 @@ protected function setUp() {
 
     $this->drupalPlaceBlock('page_title_block');
 
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
   }
 
@@ -44,7 +44,7 @@ protected function setUp() {
    */
   public function testDisabledDisplays() {
     // The displays defined in this view.
-    $display_ids = array('attachment_1', 'block_1', 'embed_1', 'feed_1', 'page_2');
+    $display_ids = ['attachment_1', 'block_1', 'embed_1', 'feed_1', 'page_2'];
 
     $this->drupalCreateContentType(['type' => 'page']);
     $this->drupalCreateNode();
diff --git a/core/modules/views/src/Tests/Plugin/DisplayAttachmentTest.php b/core/modules/views/src/Tests/Plugin/DisplayAttachmentTest.php
index 88db8b1..16c0680 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayAttachmentTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayAttachmentTest.php
@@ -17,21 +17,21 @@ class DisplayAttachmentTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display_attachment', 'test_attached_disabled');
+  public static $testViews = ['test_display_attachment', 'test_attached_disabled'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views');
+  public static $modules = ['node', 'views'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->enableViewsTestModule();
 
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
   }
 
diff --git a/core/modules/views/src/Tests/Plugin/DisplayEntityReferenceTest.php b/core/modules/views/src/Tests/Plugin/DisplayEntityReferenceTest.php
index 96d0369..ac7209c 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayEntityReferenceTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayEntityReferenceTest.php
@@ -24,14 +24,14 @@ class DisplayEntityReferenceTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display_entity_reference');
+  public static $testViews = ['test_display_entity_reference'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'field', 'views_ui');
+  public static $modules = ['entity_test', 'field', 'views_ui'];
 
   /**
    * The used field name in the test.
@@ -67,7 +67,7 @@ class DisplayEntityReferenceTest extends PluginTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalLogin($this->drupalCreateUser(array('administer views')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views']));
 
     // Create the text field.
     $this->fieldName = 'field_test_entity_ref_display';
diff --git a/core/modules/views/src/Tests/Plugin/DisplayExtenderTest.php b/core/modules/views/src/Tests/Plugin/DisplayExtenderTest.php
index 33c3713..896b134 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayExtenderTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayExtenderTest.php
@@ -18,7 +18,7 @@ class DisplayExtenderTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   protected function setUp() {
     parent::setUp();
@@ -30,7 +30,7 @@ protected function setUp() {
    * Test display extenders.
    */
   public function testDisplayExtenders() {
-    $this->config('views.settings')->set('display_extenders', array('display_extender_test'))->save();
+    $this->config('views.settings')->set('display_extenders', ['display_extender_test'])->save();
     $this->assertEqual(count(Views::getEnabledDisplayExtenders()), 1, 'Make sure that there is only one enabled display extender.');
 
     $view = Views::getView('test_view');
diff --git a/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php b/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
index d31f457..2a3dc4e 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayFeedTest.php
@@ -17,21 +17,21 @@ class DisplayFeedTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display_feed', 'test_attached_disabled', 'test_feed_icon');
+  public static $testViews = ['test_display_feed', 'test_attached_disabled', 'test_feed_icon'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('block', 'node', 'views');
+  public static $modules = ['block', 'node', 'views'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->enableViewsTestModule();
 
-    $admin_user = $this->drupalCreateUser(array('administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer site configuration']);
     $this->drupalLogin($admin_user);
   }
 
@@ -101,13 +101,13 @@ public function testFeedFieldOutput() {
 
     // Verify a title with HTML entities is properly escaped.
     $node_title = 'This "cool" & "neat" article\'s title';
-    $this->drupalCreateNode(array(
+    $this->drupalCreateNode([
       'title' => $node_title,
       'body' => [0 => [
         'value' => 'A paragraph',
         'format' => filter_default_format(),
       ]],
-    ));
+    ]);
 
     $this->drupalGet('test-feed-display-fields.xml');
     $result = $this->xpath('//title/a');
diff --git a/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php b/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
index acb3af8..b5c853f 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayPageWebTest.php
@@ -19,7 +19,7 @@ class DisplayPageWebTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_page_display', 'test_page_display_arguments', 'test_page_display_menu', 'test_page_display_path');
+  public static $testViews = ['test_page_display', 'test_page_display_arguments', 'test_page_display_menu', 'test_page_display_path'];
 
   /**
    * Modules to enable.
@@ -88,10 +88,10 @@ public function testPageDisplayMenu() {
     // Check local tasks.
     $this->drupalGet('test_page_display_menu');
     $this->assertResponse(200);
-    $element = $this->xpath('//ul[contains(@class, :ul_class)]//a[contains(@class, :a_class)]', array(
+    $element = $this->xpath('//ul[contains(@class, :ul_class)]//a[contains(@class, :a_class)]', [
       ':ul_class' => 'tabs primary',
       ':a_class' => 'is-active',
-    ));
+    ]);
     $this->assertEqual((string) $element[0], t('Test default tab'));
     $this->assertTitle(t('Test default page | Drupal'));
 
@@ -100,10 +100,10 @@ public function testPageDisplayMenu() {
 
     $this->drupalGet('test_page_display_menu/local');
     $this->assertResponse(200);
-    $element = $this->xpath('//ul[contains(@class, :ul_class)]//a[contains(@class, :a_class)]', array(
+    $element = $this->xpath('//ul[contains(@class, :ul_class)]//a[contains(@class, :a_class)]', [
       ':ul_class' => 'tabs primary',
       ':a_class' => 'is-active',
-    ));
+    ]);
     $this->assertEqual((string) $element[0], t('Test local tab'));
     $this->assertTitle(t('Test local page | Drupal'));
 
diff --git a/core/modules/views/src/Tests/Plugin/DisplayTest.php b/core/modules/views/src/Tests/Plugin/DisplayTest.php
index 3bbfd66..42a389c 100644
--- a/core/modules/views/src/Tests/Plugin/DisplayTest.php
+++ b/core/modules/views/src/Tests/Plugin/DisplayTest.php
@@ -19,26 +19,26 @@ class DisplayTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_groups', 'test_get_attach_displays', 'test_view', 'test_display_more', 'test_display_invalid', 'test_display_empty', 'test_exposed_relationship_admin_ui');
+  public static $testViews = ['test_filter_groups', 'test_get_attach_displays', 'test_view', 'test_display_more', 'test_display_invalid', 'test_display_empty', 'test_exposed_relationship_admin_ui'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'node', 'block');
+  public static $modules = ['views_ui', 'node', 'block'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->enableViewsTestModule();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer views'));
+    $this->adminUser = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($this->adminUser);
 
     // Create 10 nodes.
     for ($i = 0; $i <= 10; $i++) {
-      $this->drupalCreateNode(array('promote' => TRUE));
+      $this->drupalCreateNode(['promote' => TRUE]);
     }
   }
 
@@ -59,25 +59,25 @@ public function testDisplayPlugin() {
     $this->assertTrue(isset($displays['display_test_1']), 'Added display has been assigned to "display_test_1"');
 
     // Check the display options are like expected.
-    $options = array(
-      'display_options' => array(),
+    $options = [
+      'display_options' => [],
       'display_plugin' => 'display_test',
       'id' => 'display_test_1',
       'display_title' => 'Display test',
       'position' => 1,
-    );
+    ];
     $this->assertEqual($displays['display_test_1'], $options);
 
     // Add another one to ensure that position is counted up.
     $view->storage->addDisplay('display_test');
     $displays = $view->storage->get('display');
-    $options = array(
-      'display_options' => array(),
+    $options = [
+      'display_options' => [],
       'display_plugin' => 'display_test',
       'id' => 'display_test_2',
       'display_title' => 'Display test 2',
       'position' => 2,
-    );
+    ];
     $this->assertEqual($displays['display_test_2'], $options);
 
     // Move the second display before the first one in order to test custom
@@ -120,7 +120,7 @@ public function testDisplayPlugin() {
     $this->clickLink('Test option title');
 
     $test_option = $this->randomString();
-    $this->drupalPostForm(NULL, array('test_option' => $test_option), t('Apply'));
+    $this->drupalPostForm(NULL, ['test_option' => $test_option], t('Apply'));
 
     // Check the new value has been saved by checking the UI summary text.
     $this->drupalGet('admin/structure/views/view/test_view/edit/display_test_1');
@@ -154,10 +154,10 @@ public function testGetAttachedDisplays() {
 
     // Both the feed_1 and the feed_2 display are attached to the page display.
     $view->setDisplay('page_1');
-    $this->assertEqual($view->display_handler->getAttachedDisplays(), array('feed_1', 'feed_2'));
+    $this->assertEqual($view->display_handler->getAttachedDisplays(), ['feed_1', 'feed_2']);
 
     $view->setDisplay('feed_1');
-    $this->assertEqual($view->display_handler->getAttachedDisplays(), array());
+    $this->assertEqual($view->display_handler->getAttachedDisplays(), []);
   }
 
   /**
@@ -179,7 +179,7 @@ public function testReadMore() {
     $output = $renderer->renderRoot($output);
 
     $this->setRawContent($output);
-    $result = $this->xpath('//a[@class=:class]', array(':class' => 'more-link'));
+    $result = $this->xpath('//a[@class=:class]', [':class' => 'more-link']);
     $this->assertEqual($result[0]->attributes()->href, \Drupal::url('view.test_display_more.page_1'), 'The right more link is shown.');
     $this->assertEqual(trim($result[0][0]), $expected_more_text, 'The right link text is shown.');
 
@@ -188,7 +188,7 @@ public function testReadMore() {
     $more_link = $view->display_handler->renderMoreLink();
     $more_link = $renderer->renderRoot($more_link);
     $this->setRawContent($more_link);
-    $result = $this->xpath('//a[@class=:class]', array(':class' => 'more-link'));
+    $result = $this->xpath('//a[@class=:class]', [':class' => 'more-link']);
     $this->assertEqual($result[0]->attributes()->href, \Drupal::url('view.test_display_more.page_1'), 'The right more link is shown.');
     $this->assertEqual(trim($result[0][0]), $expected_more_text, 'The right link text is shown.');
 
@@ -204,25 +204,25 @@ public function testReadMore() {
     $output = $view->preview();
     $output = $renderer->renderRoot($output);
     $this->setRawContent($output);
-    $result = $this->xpath('//a[@class=:class]', array(':class' => 'more-link'));
+    $result = $this->xpath('//a[@class=:class]', [':class' => 'more-link']);
     $this->assertTrue(empty($result), 'The more link is not shown.');
 
     $view = Views::getView('test_display_more');
     $view->setDisplay();
     $view->display_handler->setOption('use_more', 0);
     $view->display_handler->setOption('use_more_always', 0);
-    $view->display_handler->setOption('pager', array(
+    $view->display_handler->setOption('pager', [
       'type' => 'some',
-      'options' => array(
+      'options' => [
         'items_per_page' => 1,
         'offset' => 0,
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
     $output = $view->preview();
     $output = $renderer->renderRoot($output);
     $this->setRawContent($output);
-    $result = $this->xpath('//a[@class=:class]', array(':class' => 'more-link'));
+    $result = $this->xpath('//a[@class=:class]', [':class' => 'more-link']);
     $this->assertTrue(empty($result), 'The more link is not shown when view has more records.');
 
     // Test the default value of use_more_always.
@@ -286,7 +286,7 @@ public function testInvalidDisplayPlugins() {
     $config->save();
 
     // Place the block display.
-    $block = $this->drupalPlaceBlock('views_block:test_display_invalid-block_1', array('label' => 'Invalid display'));
+    $block = $this->drupalPlaceBlock('views_block:test_display_invalid-block_1', ['label' => 'Invalid display']);
 
     $this->drupalGet('<front>');
     $this->assertResponse(200);
@@ -326,8 +326,8 @@ public function testMissingRelationship() {
     $errors = $view->validate();
     // Check that the error messages are shown.
     $this->assertTrue(count($errors['default']) == 2, 'Error messages found for required relationship');
-    $this->assertEqual($errors['default'][0], t('The %handler_type %handler uses a relationship that has been removed.', array('%handler_type' => 'field', '%handler' => 'User: Last login')));
-    $this->assertEqual($errors['default'][1], t('The %handler_type %handler uses a relationship that has been removed.', array('%handler_type' => 'field', '%handler' => 'User: Created')));
+    $this->assertEqual($errors['default'][0], t('The %handler_type %handler uses a relationship that has been removed.', ['%handler_type' => 'field', '%handler' => 'User: Last login']));
+    $this->assertEqual($errors['default'][1], t('The %handler_type %handler uses a relationship that has been removed.', ['%handler_type' => 'field', '%handler' => 'User: Created']));
   }
 
   /**
@@ -342,12 +342,12 @@ public function testOutputIsEmpty() {
 
     // Add a filter, so the view result is empty.
     $view->setDisplay('default');
-    $item = array(
+    $item = [
       'table' => 'views_test_data',
       'field' => 'id',
       'id' => 'id',
-      'value' => array('value' => 7297)
-    );
+      'value' => ['value' => 7297]
+    ];
     $view->setHandler('default', 'filter', 'id', $item);
     $this->executeView($view);
     $this->assertFalse(count($view->result), 'Ensure the result of the view is empty.');
diff --git a/core/modules/views/src/Tests/Plugin/ExposedFormTest.php b/core/modules/views/src/Tests/Plugin/ExposedFormTest.php
index b51129c..cfb3c0a 100644
--- a/core/modules/views/src/Tests/Plugin/ExposedFormTest.php
+++ b/core/modules/views/src/Tests/Plugin/ExposedFormTest.php
@@ -24,25 +24,25 @@ class ExposedFormTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_exposed_form_buttons', 'test_exposed_block', 'test_exposed_form_sort_items_per_page');
+  public static $testViews = ['test_exposed_form_buttons', 'test_exposed_block', 'test_exposed_form_sort_items_per_page'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui', 'block', 'entity_test');
+  public static $modules = ['node', 'views_ui', 'block', 'entity_test'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->enableViewsTestModule();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
     // Create some random nodes.
     for ($i = 0; $i < 5; $i++) {
-      $this->drupalCreateNode(array('type' => 'article'));
+      $this->drupalCreateNode(['type' => 'article']);
     }
   }
 
@@ -90,7 +90,7 @@ public function testExposedIdentifier() {
     $view = Views::getView('test_exposed_form_buttons');
     $view->setDisplay();
     $identifier = 'new_identifier';
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
       'type' => [
         'exposed' => TRUE,
         'field' => 'type',
@@ -107,9 +107,9 @@ public function testExposedIdentifier() {
           'description' => 'Exposed overridden description'
         ],
       ]
-    ));
+    ]);
     $view->save();
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array($identifier => 'article')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => [$identifier => 'article']]);
     $this->assertFieldById(Html::getId('edit-' . $identifier), 'article', "Article type filter set with new identifier.");
 
     // Alter the identifier of the filter to a random string containing
@@ -117,7 +117,7 @@ public function testExposedIdentifier() {
     $view = Views::getView('test_exposed_form_buttons');
     $view->setDisplay();
     $identifier = 'bad identifier';
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
       'type' => [
         'exposed' => TRUE,
         'field' => 'type',
@@ -134,7 +134,7 @@ public function testExposedIdentifier() {
           'description' => 'Exposed overridden description'
         ],
       ]
-    ));
+    ]);
     $this->executeView($view);
 
     $errors = $view->validate();
@@ -153,12 +153,12 @@ public function testResetButton() {
     $this->drupalGet('test_exposed_form_buttons');
     $this->assertNoField('edit-reset');
 
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('type' => 'article')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['type' => 'article']]);
     // Test that the type has been set.
     $this->assertFieldById('edit-type', 'article', 'Article type filter set.');
 
     // Test the reset works.
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('op' => 'Reset')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['op' => 'Reset']]);
     $this->assertResponse(200);
     // Test the type has been reset.
     $this->assertFieldById('edit-type', 'All', 'Article type filter has been reset.');
@@ -167,7 +167,7 @@ public function testResetButton() {
     $this->assertNoField('edit-reset');
 
     // Test the reset works with type set.
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('type' => 'article', 'op' => 'Reset')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['type' => 'article', 'op' => 'Reset']]);
     $this->assertResponse(200);
     $this->assertFieldById('edit-type', 'All', 'Article type filter has been reset.');
 
@@ -185,7 +185,7 @@ public function testResetButton() {
     $view->save();
 
     // Look whether the reset button label changed.
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('type' => 'article')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['type' => 'article']]);
     $this->assertResponse(200);
 
     $this->helperButtonHasLabel('edit-reset', $expected_label);
@@ -207,7 +207,7 @@ public function testExposedFormRender() {
     $expected_action = $view->display_handler->getUrlInfo()->toString();
     $this->assertFieldByXPath('//form/@action', $expected_action, 'The expected value for the action attribute was found.');
     // Make sure the description is shown.
-    $result = $this->xpath('//form//div[contains(@id, :id) and normalize-space(text())=:description]', array(':id' => 'edit-type--description', ':description' => t('Exposed description')));
+    $result = $this->xpath('//form//div[contains(@id, :id) and normalize-space(text())=:description]', [':id' => 'edit-type--description', ':description' => t('Exposed description')]);
     $this->assertEqual(count($result), 1, 'Filter description was found.');
   }
 
@@ -220,7 +220,7 @@ public function testExposedFormRenderCheckboxes() {
     $this->drupalCreateNode(['type' => 'page']);
 
     // Use a test theme to convert multi-select elements into checkboxes.
-    \Drupal::service('theme_handler')->install(array('views_test_checkboxes_theme'));
+    \Drupal::service('theme_handler')->install(['views_test_checkboxes_theme']);
     $this->config('system.theme')
       ->set('default', 'views_test_checkboxes_theme')
       ->save();
@@ -264,15 +264,15 @@ public function testExposedBlock() {
     $this->drupalGet('test_exposed_block');
 
     // Test there is an exposed form in a block.
-    $xpath = $this->buildXPathQuery('//div[@id=:id]/form/@id', array(':id' => Html::getUniqueId('block-' . $block->id())));
+    $xpath = $this->buildXPathQuery('//div[@id=:id]/form/@id', [':id' => Html::getUniqueId('block-' . $block->id())]);
     $this->assertFieldByXpath($xpath, $this->getExpectedExposedFormId($view), 'Expected form found in views block.');
 
     // Test there is not an exposed form in the view page content area.
-    $xpath = $this->buildXPathQuery('//div[@class="view-content"]/form/@id', array(':id' => Html::getUniqueId('block-' . $block->id())));
+    $xpath = $this->buildXPathQuery('//div[@class="view-content"]/form/@id', [':id' => Html::getUniqueId('block-' . $block->id())]);
     $this->assertNoFieldByXpath($xpath, $this->getExpectedExposedFormId($view), 'No exposed form found in views content region.');
 
     // Test there is only one views exposed form on the page.
-    $elements = $this->xpath('//form[@id=:id]', array(':id' => $this->getExpectedExposedFormId($view)));
+    $elements = $this->xpath('//form[@id=:id]', [':id' => $this->getExpectedExposedFormId($view)]);
     $this->assertEqual(count($elements), 1, 'One exposed form block found.');
 
     // Test that the correct option is selected after form submission.
@@ -302,7 +302,7 @@ public function testInputRequired() {
     $rows = $this->xpath("//div[contains(@class, 'views-row')]");
     $this->assertEqual(count($rows), 0, 'No rows are displayed by default when no input is provided.');
 
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('type' => 'article')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['type' => 'article']]);
 
     // Ensure that results are displayed.
     $rows = $this->xpath("//div[contains(@class, 'views-row')]");
@@ -330,7 +330,7 @@ public function testTextInputRequired() {
 
     // Ensure that the "on demand text" is not displayed when an exposed filter
     // is applied.
-    $this->drupalGet('test_exposed_form_buttons', array('query' => array('type' => 'article')));
+    $this->drupalGet('test_exposed_form_buttons', ['query' => ['type' => 'article']]);
     $this->assertNoText($on_demand_text);
   }
 
@@ -411,7 +411,7 @@ public function testFormErrorWithExposedForm() {
     $this->assertRaw(t('Apply'), 'Ensure the exposed form is rendered before submitting the normal form.');
     $this->assertRaw('<div class="views-row">', 'Views result shown.');
 
-    $this->drupalPostForm(NULL, array(), t('Submit'));
+    $this->drupalPostForm(NULL, [], t('Submit'));
     $this->assertResponse(200);
     $form = $this->cssSelect('form.views-exposed-form');
     $this->assertTrue($form, 'The exposed form element was found.');
diff --git a/core/modules/views/src/Tests/Plugin/FilterTest.php b/core/modules/views/src/Tests/Plugin/FilterTest.php
index 1b2cf22..081835f 100644
--- a/core/modules/views/src/Tests/Plugin/FilterTest.php
+++ b/core/modules/views/src/Tests/Plugin/FilterTest.php
@@ -18,21 +18,21 @@ class FilterTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter', 'test_filter_in_operator_ui');
+  public static $testViews = ['test_filter', 'test_filter_in_operator_ui'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'node');
+  public static $modules = ['views_ui', 'node'];
 
   protected function setUp() {
     parent::setUp();
 
     $this->enableViewsTestModule();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer views'));
+    $this->adminUser = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($this->adminUser);
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
     $this->drupalCreateContentType(['type' => 'page', 'name' => 'Page']);
@@ -60,16 +60,16 @@ public function testFilterQuery() {
     $view->initDisplay();
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data',
         'field' => 'name',
         'operator' => '=',
         'value' => 'John',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -90,23 +90,23 @@ public function testFilterQuery() {
 
     // Check that we have a single element, as a result of applying the '= John'
     // filter.
-    $this->assertEqual(count($view->result), 1, format_string('Results were returned. @count results.', array('@count' => count($view->result))));
+    $this->assertEqual(count($view->result), 1, format_string('Results were returned. @count results.', ['@count' => count($view->result)]));
 
     $view->destroy();
 
     $view->initDisplay();
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data',
         'field' => 'name',
         'operator' => '<>',
         'value' => 'John',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -116,15 +116,15 @@ public function testFilterQuery() {
 
     // Check if we have the other elements in the dataset, as a result of
     // applying the '<> John' filter.
-    $this->assertEqual(count($view->result), 4, format_string('Results were returned. @count results.', array('@count' => count($view->result))));
+    $this->assertEqual(count($view->result), 4, format_string('Results were returned. @count results.', ['@count' => count($view->result)]));
 
     $view->destroy();
     $view->initDisplay();
 
     // Set the test_enable option to FALSE. The 'where' clause should not be
     // added to the query.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data',
         'field' => 'name',
@@ -133,14 +133,14 @@ public function testFilterQuery() {
         'group' => 0,
         // Disable this option, so nothing should be added to the query.
         'test_enable' => FALSE,
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view again.
     $this->executeView($view);
 
     // Check if we have all 5 results.
-    $this->assertEqual(count($view->result), 5, format_string('All @count results returned', array('@count' => count($view->displayHandlers))));
+    $this->assertEqual(count($view->result), 5, format_string('All @count results returned', ['@count' => count($view->displayHandlers)]));
   }
 
   /**
diff --git a/core/modules/views/src/Tests/Plugin/MiniPagerTest.php b/core/modules/views/src/Tests/Plugin/MiniPagerTest.php
index 1a73b69..7e9f57a 100644
--- a/core/modules/views/src/Tests/Plugin/MiniPagerTest.php
+++ b/core/modules/views/src/Tests/Plugin/MiniPagerTest.php
@@ -17,14 +17,14 @@ class MiniPagerTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_mini_pager');
+  public static $testViews = ['test_mini_pager'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node');
+  public static $modules = ['node'];
 
   /**
    * Nodes used by the test.
@@ -36,7 +36,7 @@ class MiniPagerTest extends PluginTestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     // Create a bunch of test nodes.
     for ($i = 0; $i < 20; $i++) {
       $this->nodes[] = $this->drupalCreateNode();
@@ -55,7 +55,7 @@ public function testMiniPagerRender() {
     $this->assertText($this->nodes[1]->label());
     $this->assertText($this->nodes[2]->label());
 
-    $this->drupalGet('test_mini_pager', array('query' => array('page' => 1)));
+    $this->drupalGet('test_mini_pager', ['query' => ['page' => 1]]);
     $this->assertText('‹‹ test', 'The previous link appears.');
     $this->assertText('Page 2', 'The current page info shows the second page.');
     $this->assertText('›› test', 'The next link appears.');
@@ -63,7 +63,7 @@ public function testMiniPagerRender() {
     $this->assertText($this->nodes[4]->label());
     $this->assertText($this->nodes[5]->label());
 
-    $this->drupalGet('test_mini_pager', array('query' => array('page' => 6)));
+    $this->drupalGet('test_mini_pager', ['query' => ['page' => 6]]);
     $this->assertNoText('›› test', 'The next link appears on the last page.');
     $this->assertText('Page 7', 'The current page info shows the last page.');
     $this->assertText('‹‹ test', 'The previous link does not appear on the last page.');
@@ -77,9 +77,9 @@ public function testMiniPagerRender() {
     $this->assertIdentical($view->get_total_rows, TRUE, 'The query was set to calculate the total number of rows.');
     $this->assertEqual(count($this->nodes), $view->total_rows, 'The total row count is equal to the number of nodes.');
 
-    $this->drupalGet('test_mini_pager_total', array('query' => array('page' => 1)));
+    $this->drupalGet('test_mini_pager_total', ['query' => ['page' => 1]]);
     $this->assertText('of ' . count($this->nodes), 'The first page shows the total row count.');
-    $this->drupalGet('test_mini_pager_total', array('query' => array('page' => 6)));
+    $this->drupalGet('test_mini_pager_total', ['query' => ['page' => 6]]);
     $this->assertText('of ' . count($this->nodes), 'The last page shows the total row count.');
 
     // Test a mini pager with just one item per page.
@@ -88,13 +88,13 @@ public function testMiniPagerRender() {
     $this->assertText('Page 1');
     $this->assertText($this->nodes[0]->label());
 
-    $this->drupalGet('test_mini_pager_one', array('query' => array('page' => 1)));
+    $this->drupalGet('test_mini_pager_one', ['query' => ['page' => 1]]);
     $this->assertText('‹‹');
     $this->assertText('Page 2');
     $this->assertText('››');
     $this->assertText($this->nodes[1]->label());
 
-    $this->drupalGet('test_mini_pager_one', array('query' => array('page' => 19)));
+    $this->drupalGet('test_mini_pager_one', ['query' => ['page' => 19]]);
     $this->assertNoText('››');
     $this->assertText('Page 20');
     $this->assertText('‹‹');
diff --git a/core/modules/views/src/Tests/Plugin/NumericFormatPluralTest.php b/core/modules/views/src/Tests/Plugin/NumericFormatPluralTest.php
index bb06328..79f1922 100644
--- a/core/modules/views/src/Tests/Plugin/NumericFormatPluralTest.php
+++ b/core/modules/views/src/Tests/Plugin/NumericFormatPluralTest.php
@@ -18,14 +18,14 @@ class NumericFormatPluralTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'file', 'language', 'locale');
+  public static $modules = ['views_ui', 'file', 'language', 'locale'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('numeric_test');
+  public static $testViews = ['numeric_test'];
 
   protected function setUp() {
     parent::setUp();
@@ -59,7 +59,7 @@ function testNumericFormatPlural() {
     // Assert that changing the settings will change configuration properly.
     $edit = ['options[format_plural_values][0]' => '1 time', 'options[format_plural_values][1]' => '@count times'];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $config = $this->config('views.view.numeric_test');
     $field_config_prefix = 'display.default.display_options.fields.count.';
@@ -103,7 +103,7 @@ function testNumericFormatPlural() {
       'options[format_plural_values][3]' => '@count time3',
     ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $config = $this->config('views.view.numeric_test');
     $field_config_prefix = 'display.default.display_options.fields.count.';
     $this->assertEqual($config->get($field_config_prefix . 'format_plural'), TRUE);
diff --git a/core/modules/views/src/Tests/Plugin/PagerTest.php b/core/modules/views/src/Tests/Plugin/PagerTest.php
index f922748..907fef2 100644
--- a/core/modules/views/src/Tests/Plugin/PagerTest.php
+++ b/core/modules/views/src/Tests/Plugin/PagerTest.php
@@ -20,14 +20,14 @@ class PagerTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_store_pager_settings', 'test_pager_none', 'test_pager_some', 'test_pager_full', 'test_view_pager_full_zero_items_per_page', 'test_view', 'content');
+  public static $testViews = ['test_store_pager_settings', 'test_pager_none', 'test_pager_some', 'test_pager_full', 'test_view_pager_full_zero_items_per_page', 'test_view', 'content'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui');
+  public static $modules = ['node', 'views_ui'];
 
   /**
    * String translation storage object.
@@ -45,27 +45,27 @@ public function testStorePagerSettings() {
     // Show the master display so the override selection is shown.
     \Drupal::configFactory()->getEditable('views.settings')->set('ui.show.master_display', TRUE)->save();
 
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
     // Test behavior described in
     //   https://www.drupal.org/node/652712#comment-2354918.
 
     $this->drupalGet('admin/structure/views/view/test_view/edit');
 
-    $edit = array(
+    $edit = [
       'pager[type]' => 'full',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/pager', $edit, t('Apply'));
-    $edit = array(
+    $edit = [
       'pager_options[items_per_page]' => 20,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/pager_options', $edit, t('Apply'));
     $this->assertText('20 items');
 
     // Change type and check whether the type is new type is stored.
-    $edit = array(
+    $edit = [
       'pager[type]' => 'mini',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/pager', $edit, t('Apply'));
     $this->drupalGet('admin/structure/views/view/test_view/edit');
     $this->assertText('Mini', 'Changed pager plugin, should change some text');
@@ -78,38 +78,38 @@ public function testStorePagerSettings() {
 
     $this->drupalGet('admin/structure/views/view/test_store_pager_settings/edit');
 
-    $edit = array(
+    $edit = [
       'pager[type]' => 'full',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/default/pager', $edit, t('Apply'));
     $this->drupalGet('admin/structure/views/view/test_store_pager_settings/edit');
     $this->assertText('Full');
 
-    $edit = array(
+    $edit = [
       'pager_options[items_per_page]' => 20,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/default/pager_options', $edit, t('Apply'));
     $this->assertText('20 items');
 
     // add new display and test the settings again, by override it.
-    $edit = array( );
+    $edit = [ ];
     // Add a display and override the pager settings.
     $this->drupalPostForm('admin/structure/views/view/test_store_pager_settings/edit', $edit, t('Add Page'));
-    $edit = array(
+    $edit = [
       'override[dropdown]' => 'page_1',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/page_1/pager', $edit, t('Apply'));
 
-    $edit = array(
+    $edit = [
       'pager[type]' => 'mini',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/page_1/pager', $edit, t('Apply'));
     $this->drupalGet('admin/structure/views/view/test_store_pager_settings/edit/page_1');
     $this->assertText('Mini', 'Changed pager plugin, should change some text');
 
-    $edit = array(
+    $edit = [
       'pager_options[items_per_page]' => 10,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_store_pager_settings/default/pager_options', $edit, t('Apply'));
     $this->assertText('10 items', 'The default value has been changed.');
     $this->drupalGet('admin/structure/views/view/test_store_pager_settings/edit/page_1');
@@ -128,7 +128,7 @@ public function testStorePagerSettings() {
   public function testNoLimit() {
     // Create 11 nodes and make sure that everyone is returned.
     // We create 11 nodes, because the default pager plugin had 10 items per page.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
@@ -139,12 +139,12 @@ public function testNoLimit() {
     // Setup and test a offset.
     $view = Views::getView('test_pager_none');
     $view->setDisplay();
-    $pager = array(
+    $pager = [
       'type' => 'none',
-      'options' => array(
+      'options' => [
         'offset' => 3,
-      ),
-    );
+      ],
+    ];
     $view->display_handler->setOption('pager', $pager);
     $this->executeView($view);
 
@@ -157,7 +157,7 @@ public function testNoLimit() {
   }
 
   public function testViewTotalRowsWithoutPager() {
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 23; $i++) {
       $this->drupalCreateNode();
     }
@@ -175,7 +175,7 @@ public function testViewTotalRowsWithoutPager() {
   public function testLimit() {
     // Create 11 nodes and make sure that everyone is returned.
     // We create 11 nodes, because the default pager plugin had 10 items per page.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
@@ -187,13 +187,13 @@ public function testLimit() {
     // Setup and test a offset.
     $view = Views::getView('test_pager_some');
     $view->setDisplay();
-    $pager = array(
+    $pager = [
       'type' => 'none',
-      'options' => array(
+      'options' => [
         'offset' => 8,
         'items_per_page' => 5,
-      ),
-    );
+      ],
+    ];
     $view->display_handler->setOption('pager', $pager);
     $this->executeView($view);
     $this->assertEqual(count($view->result), 3, 'Make sure that only a certain count of items is returned');
@@ -209,7 +209,7 @@ public function testLimit() {
   public function testNormalPager() {
     // Create 11 nodes and make sure that everyone is returned.
     // We create 11 nodes, because the default pager plugin had 10 items per page.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
@@ -221,13 +221,13 @@ public function testNormalPager() {
     // Setup and test a offset.
     $view = Views::getView('test_pager_full');
     $view->setDisplay();
-    $pager = array(
+    $pager = [
       'type' => 'full',
-      'options' => array(
+      'options' => [
         'offset' => 8,
         'items_per_page' => 5,
-      ),
-    );
+      ],
+    ];
     $view->display_handler->setOption('pager', $pager);
     $this->executeView($view);
     $this->assertEqual(count($view->result), 3, 'Make sure that only a certain count of items is returned');
@@ -244,13 +244,13 @@ public function testNormalPager() {
     // Setup and test a offset.
     $view = Views::getView('test_pager_full');
     $view->setDisplay();
-    $pager = array(
+    $pager = [
       'type' => 'full',
-      'options' => array(
+      'options' => [
         'offset' => 0,
         'items_per_page' => 0,
-      ),
-    );
+      ],
+    ];
 
     $view->display_handler->setOption('pager', $pager);
     $this->executeView($view);
@@ -268,7 +268,7 @@ public function testNormalPager() {
   public function testRenderNullPager() {
     // Create 11 nodes and make sure that everyone is returned.
     // We create 11 nodes, because the default pager plugin had 10 items per page.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
@@ -348,10 +348,10 @@ public function testPagerConfigTranslation() {
     $view->save();
 
     // Enable locale, config_translation and language module.
-    $this->container->get('module_installer')->install(array('locale', 'language', 'config_translation'));
+    $this->container->get('module_installer')->install(['locale', 'language', 'config_translation']);
     $this->resetAll();
 
-    $admin_user = $this->drupalCreateUser(array('access content overview', 'administer nodes', 'bypass node access', 'translate configuration'));
+    $admin_user = $this->drupalCreateUser(['access content overview', 'administer nodes', 'bypass node access', 'translate configuration']);
     $this->drupalLogin($admin_user);
 
     $langcode = 'nl';
@@ -362,29 +362,29 @@ public function testPagerConfigTranslation() {
     // Add Dutch language programmatically.
     ConfigurableLanguage::createFromLangcode($langcode)->save();
 
-    $edit = array(
+    $edit = [
       'translation[config_names][views.view.content][display][default][display_options][pager][options][tags][first]' => '« Eerste',
       'translation[config_names][views.view.content][display][default][display_options][pager][options][tags][previous]' => '‹ Vorige',
       'translation[config_names][views.view.content][display][default][display_options][pager][options][tags][next]' => 'Volgende ›',
       'translation[config_names][views.view.content][display][default][display_options][pager][options][tags][last]' => 'Laatste »',
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/view/content/translate/nl/edit', $edit, t('Save translation'));
 
     // We create 11 nodes, this will give us 3 pages.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
 
     // Go to the second page so we see both previous and next buttons.
-    $this->drupalGet('nl/admin/content', array('query' => array('page' => 1)));
+    $this->drupalGet('nl/admin/content', ['query' => ['page' => 1]]);
     // Translation mapping..
-    $labels = array(
+    $labels = [
       '« First' => '« Eerste',
       '‹ Previous' => '‹ Vorige',
       'Next ›' => 'Volgende ›',
       'Last »' => 'Laatste »',
-    );
+    ];
     foreach ($labels as $label => $translation) {
       // Check if we can find the translation.
       $this->assertRaw($translation);
@@ -396,7 +396,7 @@ public function testPagerConfigTranslation() {
    */
   public function testPagerLocale() {
     // Enable locale and language module.
-    $this->container->get('module_installer')->install(array('locale', 'language'));
+    $this->container->get('module_installer')->install(['locale', 'language']);
     $this->resetAll();
     $langcode = 'nl';
 
@@ -407,31 +407,31 @@ public function testPagerLocale() {
     ConfigurableLanguage::createFromLangcode($langcode)->save();
 
     // Labels that need translations.
-    $labels = array(
+    $labels = [
       '« First' => '« Eerste',
       '‹ Previous' => '‹ Vorige',
       'Next ›' => 'Volgende ›',
       'Last »' => 'Laatste »',
-    );
+    ];
     foreach ($labels as $label => $translation) {
       // Create source string.
       $source = $this->localeStorage->createString(
-        array(
+        [
           'source' => $label
-        )
+        ]
       );
       $source->save();
       $this->createTranslation($source, $translation, $langcode);
     }
 
     // We create 11 nodes, this will give us 3 pages.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
 
     // Go to the second page so we see both previous and next buttons.
-    $this->drupalGet('nl/test_pager_full', array('query' => array('page' => 1)));
+    $this->drupalGet('nl/test_pager_full', ['query' => ['page' => 1]]);
     foreach ($labels as $label => $translation) {
       // Check if we can find the translation.
       $this->assertRaw($translation);
@@ -442,11 +442,11 @@ public function testPagerLocale() {
    * Creates single translation for source string.
    */
   protected function createTranslation($source, $translation, $langcode) {
-    $values = array(
+    $values = [
       'lid' => $source->lid,
       'language' => $langcode,
       'translation' => $translation,
-    );
+    ];
     return $this->localeStorage->createTranslation($values)->save();
   }
 
diff --git a/core/modules/views/src/Tests/Plugin/StyleGridTest.php b/core/modules/views/src/Tests/Plugin/StyleGridTest.php
index 49bf67d..3b8989c 100644
--- a/core/modules/views/src/Tests/Plugin/StyleGridTest.php
+++ b/core/modules/views/src/Tests/Plugin/StyleGridTest.php
@@ -18,12 +18,12 @@ class StyleGridTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_grid');
+  public static $testViews = ['test_grid'];
 
   /**
    * Keeps track of which alignments have been tested.
    */
-  protected $alignmentsTested = array();
+  protected $alignmentsTested = [];
 
   /**
    * {@inheritdoc}
@@ -38,7 +38,7 @@ protected function setUp() {
    */
   public function testGrid() {
     $view = Views::getView('test_grid');
-    foreach (array('horizontal', 'vertical') as $alignment) {
+    foreach (['horizontal', 'vertical'] as $alignment) {
       $this->assertGrid($view, $alignment, 5);
       $this->assertGrid($view, $alignment, 4);
       $this->assertGrid($view, $alignment, 3);
@@ -73,7 +73,7 @@ protected function assertGrid(ViewExecutable $view, $alignment, $columns) {
     $output = \Drupal::service('renderer')->renderRoot($output);
     $this->setRawContent($output);
     if (!in_array($alignment, $this->alignmentsTested)) {
-      $result = $this->xpath('//div[contains(@class, "views-view-grid") and contains(@class, :alignment) and contains(@class, :columns)]', array(':alignment' => $alignment, ':columns' => 'cols-' . $columns));
+      $result = $this->xpath('//div[contains(@class, "views-view-grid") and contains(@class, :alignment) and contains(@class, :columns)]', [':alignment' => $alignment, ':columns' => 'cols-' . $columns]);
       $this->assertTrue(count($result), ucfirst($alignment) . " grid markup detected.");
       $this->alignmentsTested[] = $alignment;
     }
@@ -86,10 +86,10 @@ protected function assertGrid(ViewExecutable $view, $alignment, $columns) {
       case 1: $width = '100'; break;
     }
     // Ensure last column exists.
-    $result = $this->xpath('//div[contains(@class, "views-col") and contains(@class, :columns) and starts-with(@style, :width)]', array(':columns' => 'col-' . $columns, ':width' => 'width: ' . $width));
+    $result = $this->xpath('//div[contains(@class, "views-col") and contains(@class, :columns) and starts-with(@style, :width)]', [':columns' => 'col-' . $columns, ':width' => 'width: ' . $width]);
     $this->assertTrue(count($result), ucfirst($alignment) . " $columns column grid: last column exists and automatic width calculated correctly.");
     // Ensure no extra columns were generated.
-    $result = $this->xpath('//div[contains(@class, "views-col") and contains(@class, :columns)]', array(':columns' => 'col-' . ($columns + 1)));
+    $result = $this->xpath('//div[contains(@class, "views-col") and contains(@class, :columns)]', [':columns' => 'col-' . ($columns + 1)]);
     $this->assertFalse(count($result), ucfirst($alignment) . " $columns column grid: no extraneous columns exist.");
     // Ensure tokens are being replaced in custom row/column classes.
     $result = $this->xpath('//div[contains(@class, "views-col") and contains(@class, "name-John")]');
diff --git a/core/modules/views/src/Tests/Plugin/StyleOpmlTest.php b/core/modules/views/src/Tests/Plugin/StyleOpmlTest.php
index 1b4a53d..4e84433 100644
--- a/core/modules/views/src/Tests/Plugin/StyleOpmlTest.php
+++ b/core/modules/views/src/Tests/Plugin/StyleOpmlTest.php
@@ -15,14 +15,14 @@ class StyleOpmlTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_style_opml');
+  public static $testViews = ['test_style_opml'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('aggregator');
+  public static $modules = ['aggregator'];
 
   /**
    * {@inheritdoc}
@@ -32,7 +32,7 @@ protected function setUp() {
 
     $this->enableViewsTestModule();
 
-    $admin_user = $this->drupalCreateUser(array('administer news feeds'));
+    $admin_user = $this->drupalCreateUser(['administer news feeds']);
     $this->drupalLogin($admin_user);
   }
 
@@ -41,11 +41,11 @@ protected function setUp() {
    */
   public function testOpmlOutput() {
     // Create a test feed.
-    $values = array(
+    $values = [
       'title' => $this->randomMachineName(10),
       'url' => 'http://example.com/rss.xml',
       'refresh' => '900',
-    );
+    ];
     $feed = $this->container->get('entity.manager')
       ->getStorage('aggregator_feed')
       ->create($values);
diff --git a/core/modules/views/src/Tests/Plugin/StyleTableTest.php b/core/modules/views/src/Tests/Plugin/StyleTableTest.php
index 9a3f25e..537839f 100644
--- a/core/modules/views/src/Tests/Plugin/StyleTableTest.php
+++ b/core/modules/views/src/Tests/Plugin/StyleTableTest.php
@@ -16,7 +16,7 @@ class StyleTableTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_table');
+  public static $testViews = ['test_table'];
 
   /**
    * {@inheritdoc}
@@ -115,13 +115,13 @@ public function testNumericFieldVisible() {
     $data_set = $this->dataSet();
     $query = db_insert('views_test_data')
       ->fields(array_keys($data_set[0]));
-    $query->values(array(
+    $query->values([
       'name' => 'James McCartney',
       'age' => 0,
       'job' => 'Baby',
       'created' => gmmktime(6, 30, 10, 1, 1, 2000),
       'status' => 1,
-    ));
+    ]);
     $query->execute();
 
     $this->drupalGet('test-table');
@@ -162,11 +162,11 @@ public function testGrouping() {
     // specific style options.
     $display = &$view->getDisplay('default');
     // Set job as the grouping field.
-    $display['display_options']['style']['options']['grouping'][0] = array(
+    $display['display_options']['style']['options']['grouping'][0] = [
       'field' => 'job',
       'rendered' => TRUE,
       'rendered_strip' => FALSE,
-    );
+    ];
     // Clear the caption text, the rendered job field will be used as a caption.
     $display['display_options']['style']['options']['caption'] = '';
     $display['display_options']['style']['options']['summary'] = '';
@@ -175,13 +175,13 @@ public function testGrouping() {
 
     // Add a record containing unsafe markup to be sure it's filtered out.
     $unsafe_markup = '<script>alert("Rapper");</script>';
-    $unsafe_markup_data = array(
+    $unsafe_markup_data = [
       'name' => 'Marshall',
       'age' => 42,
       'job' => $unsafe_markup,
       'created' => gmmktime(0, 0, 0, 2, 15, 2001),
       'status' => 1,
-    );
+    ];
     $database = $this->container->get('database');
     $database->insert('views_test_data')
       ->fields(array_keys($unsafe_markup_data))
@@ -189,13 +189,13 @@ public function testGrouping() {
       ->execute();
 
     $this->drupalGet('test-table');
-    $expected_captions = array(
+    $expected_captions = [
       'Job: Speaker',
       'Job: Songwriter',
       'Job: Drummer',
       'Job: Singer',
       'Job: ' . $unsafe_markup,
-    );
+    ];
 
     // Ensure that we don't find the caption containing unsafe markup.
     $this->assertNoRaw($unsafe_markup, "Didn't find caption containing unsafe markup.");
@@ -211,13 +211,13 @@ public function testGrouping() {
     $view->save();
 
     $this->drupalGet('test-table');
-    $expected_captions = array(
+    $expected_captions = [
       'Speaker',
       'Songwriter',
       'Drummer',
       'Singer',
       $unsafe_markup,
-    );
+    ];
 
     // Ensure that we don't find the caption containing unsafe markup.
     $this->assertNoRaw($unsafe_markup, "Didn't find caption containing unsafe markup.");
diff --git a/core/modules/views/src/Tests/Plugin/StyleTest.php b/core/modules/views/src/Tests/Plugin/StyleTest.php
index 6773c83..61798a6 100644
--- a/core/modules/views/src/Tests/Plugin/StyleTest.php
+++ b/core/modules/views/src/Tests/Plugin/StyleTest.php
@@ -22,7 +22,7 @@ class StyleTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Stores the SimpleXML representation of the output.
@@ -100,52 +100,52 @@ function _testGrouping($stripped = FALSE) {
     $view->setDisplay();
     // Setup grouping by the job and the age field.
     $view->initStyle();
-    $view->style_plugin->options['grouping'] = array(
-      array('field' => 'job'),
-      array('field' => 'age'),
-    );
+    $view->style_plugin->options['grouping'] = [
+      ['field' => 'job'],
+      ['field' => 'age'],
+    ];
 
     // Reduce the amount of items to make the test a bit easier.
     // Set up the pager.
-    $view->displayHandlers->get('default')->overrideOption('pager', array(
+    $view->displayHandlers->get('default')->overrideOption('pager', [
       'type' => 'some',
-      'options' => array('items_per_page' => 3),
-    ));
+      'options' => ['items_per_page' => 3],
+    ]);
 
     // Add the job and age field.
-    $fields = array(
-      'name' => array(
+    $fields = [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'label' => 'Name',
-      ),
-      'job' => array(
+      ],
+      'job' => [
         'id' => 'job',
         'table' => 'views_test_data',
         'field' => 'job',
         'relationship' => 'none',
         'label' => 'Job',
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'label' => 'Age',
-      ),
-    );
+      ],
+    ];
     $view->displayHandlers->get('default')->overrideOption('fields', $fields);
 
     // Now run the query and groupby the result.
     $this->executeView($view);
 
-    $expected = array();
-    $expected['Job: Singer'] = array();
+    $expected = [];
+    $expected['Job: Singer'] = [];
     $expected['Job: Singer']['group'] = 'Job: Singer';
     $expected['Job: Singer']['level'] = 0;
-    $expected['Job: Singer']['rows']['Age: 25'] = array();
+    $expected['Job: Singer']['rows']['Age: 25'] = [];
     $expected['Job: Singer']['rows']['Age: 25']['group'] = 'Age: 25';
     $expected['Job: Singer']['rows']['Age: 25']['level'] = 1;
     $expected['Job: Singer']['rows']['Age: 25']['rows'][0] = new ResultRow(['index' => 0]);
@@ -153,7 +153,7 @@ function _testGrouping($stripped = FALSE) {
     $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_job = 'Singer';
     $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_age = '25';
     $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_id = '1';
-    $expected['Job: Singer']['rows']['Age: 27'] = array();
+    $expected['Job: Singer']['rows']['Age: 27'] = [];
     $expected['Job: Singer']['rows']['Age: 27']['group'] = 'Age: 27';
     $expected['Job: Singer']['rows']['Age: 27']['level'] = 1;
     $expected['Job: Singer']['rows']['Age: 27']['rows'][1] = new ResultRow(['index' => 1]);
@@ -161,10 +161,10 @@ function _testGrouping($stripped = FALSE) {
     $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_job = 'Singer';
     $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_age = '27';
     $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_id = '2';
-    $expected['Job: Drummer'] = array();
+    $expected['Job: Drummer'] = [];
     $expected['Job: Drummer']['group'] = 'Job: Drummer';
     $expected['Job: Drummer']['level'] = 0;
-    $expected['Job: Drummer']['rows']['Age: 28'] = array();
+    $expected['Job: Drummer']['rows']['Age: 28'] = [];
     $expected['Job: Drummer']['rows']['Age: 28']['group'] = 'Age: 28';
     $expected['Job: Drummer']['rows']['Age: 28']['level'] = 1;
     $expected['Job: Drummer']['rows']['Age: 28']['rows'][2] = new ResultRow(['index' => 2]);
@@ -190,8 +190,8 @@ function _testGrouping($stripped = FALSE) {
       $expected['Job: Drummer']['rows']['Age: 28']['rows'][2]->views_test_data_job = 'Drummer' . $rand3;
       $expected['Job: Drummer']['group'] = 'Job: Drummer';
 
-      $view->style_plugin->options['grouping'][0] = array('field' => 'job', 'rendered' => TRUE, 'rendered_strip' => TRUE);
-      $view->style_plugin->options['grouping'][1] = array('field' => 'age', 'rendered' => TRUE, 'rendered_strip' => TRUE);
+      $view->style_plugin->options['grouping'][0] = ['field' => 'job', 'rendered' => TRUE, 'rendered_strip' => TRUE];
+      $view->style_plugin->options['grouping'][1] = ['field' => 'age', 'rendered' => TRUE, 'rendered_strip' => TRUE];
     }
 
 
@@ -226,10 +226,10 @@ function _testGrouping($stripped = FALSE) {
     $view->setDisplay();
     $view->initStyle();
     $view->displayHandlers->get('default')->overrideOption('fields', $fields);
-    $view->style_plugin->options['grouping'] = array(
-      array('field' => 'job'),
-      array('field' => 'age'),
-    );
+    $view->style_plugin->options['grouping'] = [
+      ['field' => 'job'],
+      ['field' => 'age'],
+    ];
 
     $this->executeView($view);
 
@@ -237,8 +237,8 @@ function _testGrouping($stripped = FALSE) {
       $view->result[0]->views_test_data_job .= $rand1;
       $view->result[1]->views_test_data_job .= $rand2;
       $view->result[2]->views_test_data_job .= $rand3;
-      $view->style_plugin->options['grouping'][0] = array('field' => 'job', 'rendered' => TRUE, 'rendered_strip' => TRUE);
-      $view->style_plugin->options['grouping'][1] = array('field' => 'age', 'rendered' => TRUE, 'rendered_strip' => TRUE);
+      $view->style_plugin->options['grouping'][0] = ['field' => 'job', 'rendered' => TRUE, 'rendered_strip' => TRUE];
+      $view->style_plugin->options['grouping'][1] = ['field' => 'age', 'rendered' => TRUE, 'rendered_strip' => TRUE];
     }
 
     $sets_new_rendered = $view->style_plugin->renderGrouping($view->result, $view->style_plugin->options['grouping'], TRUE);
diff --git a/core/modules/views/src/Tests/Plugin/ViewsBulkTest.php b/core/modules/views/src/Tests/Plugin/ViewsBulkTest.php
index fd98889..d7df00a 100644
--- a/core/modules/views/src/Tests/Plugin/ViewsBulkTest.php
+++ b/core/modules/views/src/Tests/Plugin/ViewsBulkTest.php
@@ -23,7 +23,7 @@ class ViewsBulkTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'views');
+  public static $modules = ['node', 'views'];
 
   public function setUp() {
     parent::setUp();
diff --git a/core/modules/views/src/Tests/Plugin/ViewsFormTest.php b/core/modules/views/src/Tests/Plugin/ViewsFormTest.php
index 01f7a8c..a730189 100644
--- a/core/modules/views/src/Tests/Plugin/ViewsFormTest.php
+++ b/core/modules/views/src/Tests/Plugin/ViewsFormTest.php
@@ -16,7 +16,7 @@ class ViewsFormTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('action_bulk_test');
+  public static $modules = ['action_bulk_test'];
 
   /**
    * Tests the Views form wrapper.
diff --git a/core/modules/views/src/Tests/Plugin/ViewsSqlExceptionTest.php b/core/modules/views/src/Tests/Plugin/ViewsSqlExceptionTest.php
index 27504d2..d3c93de 100644
--- a/core/modules/views/src/Tests/Plugin/ViewsSqlExceptionTest.php
+++ b/core/modules/views/src/Tests/Plugin/ViewsSqlExceptionTest.php
@@ -17,7 +17,7 @@ class ViewsSqlExceptionTest extends PluginTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter');
+  public static $testViews = ['test_filter'];
 
   /**
    * {@inheritdoc}
@@ -46,16 +46,16 @@ public function testSqlException() {
     $view->initDisplay();
 
     // Adding a filter that will result in an invalid query.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_exception_filter',
         'table' => 'views_test_data',
         'field' => 'name',
         'operator' => '=',
         'value' => 'John',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     try {
       $this->executeView($view);
diff --git a/core/modules/views/src/Tests/SearchIntegrationTest.php b/core/modules/views/src/Tests/SearchIntegrationTest.php
index e71e159..1b6ab89 100644
--- a/core/modules/views/src/Tests/SearchIntegrationTest.php
+++ b/core/modules/views/src/Tests/SearchIntegrationTest.php
@@ -16,14 +16,14 @@ class SearchIntegrationTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'search');
+  public static $modules = ['node', 'search'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_search');
+  public static $testViews = ['test_search'];
 
   /**
    * Tests search integration.
@@ -36,7 +36,7 @@ public function testSearchIntegration() {
     // "sandwich", and one containing "cola is good with pizza". Make the
     // second node link to the first.
     $node['title'] = 'pizza';
-    $node['body'] = array(array('value' => 'pizza'));
+    $node['body'] = [['value' => 'pizza']];
     $node['type'] = $type->id();
     $this->drupalCreateNode($node);
 
@@ -44,11 +44,11 @@ public function testSearchIntegration() {
     $node_url = $this->getUrl();
 
     $node['title'] = 'sandwich';
-    $node['body'] = array(array('value' => 'sandwich with a <a href="' . $node_url . '">link to first node</a>'));
+    $node['body'] = [['value' => 'sandwich with a <a href="' . $node_url . '">link to first node</a>']];
     $this->drupalCreateNode($node);
 
     $node['title'] = 'cola';
-    $node['body'] = array(array('value' => 'cola is good with pizza'));
+    $node['body'] = [['value' => 'cola is good with pizza']];
     $node['type'] = $type->id();
     $this->drupalCreateNode($node);
 
@@ -141,8 +141,8 @@ public function testSearchIntegration() {
    *   TRUE if the assertion succeeded, FALSE otherwise.
    */
   protected function assertOneLink($label) {
-    $links = $this->xpath('//a[normalize-space(text())=:label]', array(':label' => $label));
-    $message = SafeMarkup::format('Link with label %label found once.', array('%label' => $label));
+    $links = $this->xpath('//a[normalize-space(text())=:label]', [':label' => $label]);
+    $message = SafeMarkup::format('Link with label %label found once.', ['%label' => $label]);
     return $this->assert(isset($links[0]) && !isset($links[1]), $message);
   }
 
diff --git a/core/modules/views/src/Tests/SearchMultilingualTest.php b/core/modules/views/src/Tests/SearchMultilingualTest.php
index 3fdb8db..f534219 100644
--- a/core/modules/views/src/Tests/SearchMultilingualTest.php
+++ b/core/modules/views/src/Tests/SearchMultilingualTest.php
@@ -17,14 +17,14 @@ class SearchMultilingualTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'search', 'language', 'content_translation');
+  public static $modules = ['node', 'search', 'language', 'content_translation'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_search');
+  public static $testViews = ['test_search'];
 
   /**
    * Tests search with multilingual nodes.
@@ -32,7 +32,7 @@ class SearchMultilingualTest extends ViewTestBase {
   public function testMultilingualSearchFilter() {
     // Create a user with admin for languages, content, and content types, plus
     // the ability to access content and searches.
-    $user = $this->drupalCreateUser(array('administer nodes', 'administer content types', 'administer languages', 'administer content translation', 'access content', 'search content'));
+    $user = $this->drupalCreateUser(['administer nodes', 'administer content types', 'administer languages', 'administer content translation', 'access content', 'search content']);
     $this->drupalLogin($user);
 
     // Add Spanish language programmatically.
@@ -40,24 +40,24 @@ public function testMultilingualSearchFilter() {
 
     // Create a content type and make it translatable.
     $type = $this->drupalCreateContentType();
-    $edit = array(
+    $edit = [
       'language_configuration[language_alterable]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/types/manage/' . $type->id(), $edit, t('Save content type'));
-    $edit = array(
+    $edit = [
       'entity_types[node]' => TRUE,
       'settings[node][' . $type->id() . '][translatable]' => TRUE,
       'settings[node][' . $type->id() . '][fields][title]' => TRUE,
       'settings[node][' . $type->id() . '][fields][body]' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/config/regional/content-language', $edit, t('Save configuration'));
     \Drupal::entityManager()->clearCachedDefinitions();
 
     // Add a node in English, with title "sandwich".
-    $values = array(
+    $values = [
       'title' => 'sandwich',
       'type' => $type->id(),
-    );
+    ];
     $node = $this->drupalCreateNode($values);
 
     // "Translate" this node into Spanish, with title "pizza".
diff --git a/core/modules/views/src/Tests/ViewAjaxTest.php b/core/modules/views/src/Tests/ViewAjaxTest.php
index c1705a5..b8b2730 100644
--- a/core/modules/views/src/Tests/ViewAjaxTest.php
+++ b/core/modules/views/src/Tests/ViewAjaxTest.php
@@ -17,7 +17,7 @@ class ViewAjaxTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_ajax_view');
+  public static $testViews = ['test_ajax_view'];
 
   protected function setUp() {
     parent::setUp();
@@ -38,14 +38,14 @@ public function testAjaxView() {
     $this->assertEqual($drupal_settings['views']['ajaxViews'][$view_entry]['view_name'], 'test_ajax_view', 'The view\'s ajaxViews array entry has the correct \'view_name\' key.');
     $this->assertEqual($drupal_settings['views']['ajaxViews'][$view_entry]['view_display_id'], 'page_1', 'The view\'s ajaxViews array entry has the correct \'view_display_id\' key.');
 
-    $data = array();
+    $data = [];
     $data['view_name'] = 'test_ajax_view';
     $data['view_display_id'] = 'test_ajax_view';
 
-    $post = array(
+    $post = [
       'view_name' => 'test_ajax_view',
       'view_display_id' => 'page_1',
-    );
+    ];
     $post += $this->getAjaxPageStatePostData();
     $response = $this->drupalPost('views/ajax', '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]);
     $data = Json::decode($response);
diff --git a/core/modules/views/src/Tests/ViewElementTest.php b/core/modules/views/src/Tests/ViewElementTest.php
index 2ec2e67..ff11dc2 100644
--- a/core/modules/views/src/Tests/ViewElementTest.php
+++ b/core/modules/views/src/Tests/ViewElementTest.php
@@ -16,7 +16,7 @@ class ViewElementTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_embed');
+  public static $testViews = ['test_view_embed'];
 
   protected function setUp() {
     parent::setUp();
@@ -60,23 +60,23 @@ public function testViewElement() {
     $this->assertEqual(count($xpath), 5);
 
     // Add an argument and save the view.
-    $view->displayHandlers->get('default')->overrideOption('arguments', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('arguments', [
+      'age' => [
         'default_action' => 'ignore',
         'title' => '',
         'default_argument_type' => 'fixed',
-        'validate' => array(
+        'validate' => [
           'type' => 'none',
           'fail' => 'not found',
-        ),
+        ],
         'break_phrase' => FALSE,
         'not' => FALSE,
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'plugin_id' => 'numeric',
-      )
-    ));
+      ]
+    ]);
     $view->save();
 
     // Test the render array again.
@@ -129,23 +129,23 @@ public function testViewElementEmbed() {
     $this->assertEqual(count($xpath), 5);
 
     // Add an argument and save the view.
-    $view->displayHandlers->get('default')->overrideOption('arguments', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('arguments', [
+      'age' => [
         'default_action' => 'ignore',
         'title' => '',
         'default_argument_type' => 'fixed',
-        'validate' => array(
+        'validate' => [
           'type' => 'none',
           'fail' => 'not found',
-        ),
+        ],
         'break_phrase' => FALSE,
         'not' => FALSE,
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'plugin_id' => 'numeric',
-      )
-    ));
+      ]
+    ]);
     $view->save();
 
     // Test the render array again.
diff --git a/core/modules/views/src/Tests/ViewKernelTestBase.php b/core/modules/views/src/Tests/ViewKernelTestBase.php
index 3a5df34..b39bc74 100644
--- a/core/modules/views/src/Tests/ViewKernelTestBase.php
+++ b/core/modules/views/src/Tests/ViewKernelTestBase.php
@@ -26,7 +26,7 @@
    *
    * @var array
    */
-  public static $modules = array('system', 'views', 'views_test_config', 'views_test_data', 'user');
+  public static $modules = ['system', 'views', 'views_test_config', 'views_test_data', 'user'];
 
   /**
    * {@inheritdoc}
@@ -39,11 +39,11 @@
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
-    $this->installSchema('system', array('sequences'));
+    $this->installSchema('system', ['sequences']);
     $this->setUpFixtures();
 
     if ($import_test_views) {
-      ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+      ViewTestData::createTestViews(get_class($this), ['views_test_config']);
     }
   }
 
@@ -56,13 +56,13 @@ protected function setUp($import_test_views = TRUE) {
   protected function setUpFixtures() {
     // First install the system module. Many Views have Page displays have menu
     // links, and for those to work, the system menus must already be present.
-    $this->installConfig(array('system'));
+    $this->installConfig(['system']);
 
     // Define the schema and views data variable before enabling the test module.
     \Drupal::state()->set('views_test_data_schema', $this->schemaDefinition());
     \Drupal::state()->set('views_test_data_views_data', $this->viewsData());
 
-    $this->installConfig(array('views', 'views_test_config', 'views_test_data'));
+    $this->installConfig(['views', 'views_test_config', 'views_test_data']);
     foreach ($this->schemaDefinition() as $table => $schema) {
       $this->installSchema('views_test_data', $table);
     }
@@ -113,7 +113,7 @@ protected function orderResultSet($result_set, $column, $reverse = FALSE) {
    * @param array $args
    *   (optional) An array of the view arguments to use for the view.
    */
-  protected function executeView($view, array $args = array()) {
+  protected function executeView($view, array $args = []) {
     $view->setDisplay();
     $view->preExecute($args);
     $view->execute();
diff --git a/core/modules/views/src/Tests/ViewRenderTest.php b/core/modules/views/src/Tests/ViewRenderTest.php
index 4bde8b2..0b3f0ee 100644
--- a/core/modules/views/src/Tests/ViewRenderTest.php
+++ b/core/modules/views/src/Tests/ViewRenderTest.php
@@ -16,7 +16,7 @@ class ViewRenderTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_render');
+  public static $testViews = ['test_view_render'];
 
   protected function setUp() {
     parent::setUp();
diff --git a/core/modules/views/src/Tests/ViewResultAssertionTrait.php b/core/modules/views/src/Tests/ViewResultAssertionTrait.php
index de5a2aa..00501f5 100644
--- a/core/modules/views/src/Tests/ViewResultAssertionTrait.php
+++ b/core/modules/views/src/Tests/ViewResultAssertionTrait.php
@@ -30,7 +30,7 @@
    * @return bool
    *   TRUE if the assertion succeeded, or FALSE otherwise.
    */
-  protected function assertIdenticalResultset($view, $expected_result, $column_map = array(), $message = NULL) {
+  protected function assertIdenticalResultset($view, $expected_result, $column_map = [], $message = NULL) {
     return $this->assertIdenticalResultsetHelper($view, $expected_result, $column_map, 'assertIdentical', $message);
   }
 
@@ -53,7 +53,7 @@ protected function assertIdenticalResultset($view, $expected_result, $column_map
    * @return bool
    *   TRUE if the assertion succeeded, or FALSE otherwise.
    */
-  protected function assertNotIdenticalResultset($view, $expected_result, $column_map = array(), $message = NULL) {
+  protected function assertNotIdenticalResultset($view, $expected_result, $column_map = [], $message = NULL) {
     return $this->assertIdenticalResultsetHelper($view, $expected_result, $column_map, 'assertNotIdentical', $message);
   }
 
@@ -81,9 +81,9 @@ protected function assertNotIdenticalResultset($view, $expected_result, $column_
    */
   protected function assertIdenticalResultsetHelper($view, $expected_result, $column_map, $assert_method, $message = NULL) {
     // Convert $view->result to an array of arrays.
-    $result = array();
+    $result = [];
     foreach ($view->result as $key => $value) {
-      $row = array();
+      $row = [];
       foreach ($column_map as $view_column => $expected_column) {
         if (property_exists($value, $view_column)) {
           $row[$expected_column] = (string) $value->$view_column;
@@ -104,7 +104,7 @@ protected function assertIdenticalResultsetHelper($view, $expected_result, $colu
 
     // Remove the columns we don't need from the expected result.
     foreach ($expected_result as $key => $value) {
-      $row = array();
+      $row = [];
       foreach ($column_map as $expected_column) {
         // The comparison will be done on the string representation of the value.
         if (is_object($value)) {
@@ -136,10 +136,10 @@ protected function assertIdenticalResultsetHelper($view, $expected_result, $colu
     // Do the actual comparison.
     if (!isset($message)) {
       $not = (strpos($assert_method, 'Not') ? 'not' : '');
-      $message = format_string("Actual result <pre>\n@actual\n</pre> is $not identical to expected <pre>\n@expected\n</pre>", array(
+      $message = format_string("Actual result <pre>\n@actual\n</pre> is $not identical to expected <pre>\n@expected\n</pre>", [
         '@actual' => var_export($result, TRUE),
         '@expected' => var_export($expected_result, TRUE),
-      ));
+      ]);
     }
     return $this->$assert_method($result, $expected_result, $message);
   }
diff --git a/core/modules/views/src/Tests/ViewTestBase.php b/core/modules/views/src/Tests/ViewTestBase.php
index 6ce3494..c694a86 100644
--- a/core/modules/views/src/Tests/ViewTestBase.php
+++ b/core/modules/views/src/Tests/ViewTestBase.php
@@ -25,12 +25,12 @@
    *
    * @var array
    */
-  public static $modules = array('views', 'views_test_config');
+  public static $modules = ['views', 'views_test_config'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
     if ($import_test_views) {
-      ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+      ViewTestData::createTestViews(get_class($this), ['views_test_config']);
     }
   }
 
@@ -45,7 +45,7 @@ protected function enableViewsTestModule() {
     \Drupal::state()->set('views_test_data_schema', $this->schemaDefinition());
     \Drupal::state()->set('views_test_data_views_data', $this->viewsData());
 
-    \Drupal::service('module_installer')->install(array('views_test_data'));
+    \Drupal::service('module_installer')->install(['views_test_data']);
     $this->resetAll();
     $this->rebuildContainer();
     $this->container->get('module_handler')->reload();
@@ -101,7 +101,7 @@ protected function orderResultSet($result_set, $column, $reverse = FALSE) {
    *   TRUE if the assertion was successful, or FALSE on failure.
    */
   protected function helperButtonHasLabel($id, $expected_label, $message = 'Label has the expected value: %label.') {
-    return $this->assertFieldById($id, $expected_label, t($message, array('%label' => $expected_label)));
+    return $this->assertFieldById($id, $expected_label, t($message, ['%label' => $expected_label]));
   }
 
   /**
@@ -112,7 +112,7 @@ protected function helperButtonHasLabel($id, $expected_label, $message = 'Label
    * @param array $args
    *   (optional) An array of the view arguments to use for the view.
    */
-  protected function executeView(ViewExecutable $view, $args = array()) {
+  protected function executeView(ViewExecutable $view, $args = []) {
     // A view does not really work outside of a request scope, due to many
     // dependencies like the current user.
     $view->setDisplay();
diff --git a/core/modules/views/src/Tests/ViewTestData.php b/core/modules/views/src/Tests/ViewTestData.php
index d54902d..7b9bc9e 100644
--- a/core/modules/views/src/Tests/ViewTestData.php
+++ b/core/modules/views/src/Tests/ViewTestData.php
@@ -23,7 +23,7 @@ class ViewTestData {
    *   The module directories to look in for test views.
    */
   public static function createTestViews($class, array $modules) {
-    $views = array();
+    $views = [];
     while ($class) {
       if (property_exists($class, 'testViews')) {
         $views = array_merge($views, $class::$testViews);
@@ -60,57 +60,57 @@ public static function createTestViews($class, array $modules) {
    * Returns the schema definition.
    */
   public static function schemaDefinition() {
-    $schema['views_test_data'] = array(
+    $schema['views_test_data'] = [
       'description' => 'Basic test table for Views tests.',
-      'fields' => array(
-        'id' => array(
+      'fields' => [
+        'id' => [
           'type' => 'serial',
           'unsigned' => TRUE,
           'not null' => TRUE,
-        ),
-        'name' => array(
+        ],
+        'name' => [
           'description' => "A person's name",
           'type' => 'varchar_ascii',
           'length' => 255,
           'not null' => TRUE,
           'default' => '',
-        ),
-        'age' => array(
+        ],
+        'age' => [
           'description' => "The person's age",
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
-          'default' => 0),
-        'job' => array(
+          'default' => 0],
+        'job' => [
           'description' => "The person's job",
           'type' => 'varchar',
           'length' => 255,
           'not null' => TRUE,
           'default' => 'Undefined',
-        ),
-        'created' => array(
+        ],
+        'created' => [
           'description' => "The creation date of this record",
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
-        ),
-        'status' => array(
+        ],
+        'status' => [
           'description' => "The status of this record",
           'type' => 'int',
           'unsigned' => TRUE,
           'not null' => TRUE,
           'default' => 0,
-        ),
-      ),
-      'primary key' => array('id'),
-      'unique keys' => array(
-        'name' => array('name')
-      ),
-      'indexes' => array(
-        'ages' => array('age'),
-      ),
-    );
+        ],
+      ],
+      'primary key' => ['id'],
+      'unique keys' => [
+        'name' => ['name']
+      ],
+      'indexes' => [
+        'ages' => ['age'],
+      ],
+    ];
     return $schema;
   }
 
@@ -119,109 +119,109 @@ public static function schemaDefinition() {
    */
   public static function viewsData() {
     // Declaration of the base table.
-    $data['views_test_data']['table'] = array(
+    $data['views_test_data']['table'] = [
       'group' => 'Views test',
-      'base' => array(
+      'base' => [
         'field' => 'id',
         'title' => 'Views test data',
         'help' => 'Users who have created accounts on your site.',
-      ),
-    );
+      ],
+    ];
 
     // Declaration of fields.
-    $data['views_test_data']['id'] = array(
+    $data['views_test_data']['id'] = [
       'title' => 'ID',
       'help' => 'The test data ID',
-      'field' => array(
+      'field' => [
         'id' => 'numeric',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'numeric',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['views_test_data']['name'] = array(
+      ],
+    ];
+    $data['views_test_data']['name'] = [
       'title' => 'Name',
       'help' => 'The name of the person',
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['views_test_data']['age'] = array(
+      ],
+    ];
+    $data['views_test_data']['age'] = [
       'title' => 'Age',
       'help' => 'The age of the person',
-      'field' => array(
+      'field' => [
         'id' => 'numeric',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'numeric',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'numeric',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['views_test_data']['job'] = array(
+      ],
+    ];
+    $data['views_test_data']['job'] = [
       'title' => 'Job',
       'help' => 'The job of the person',
-      'field' => array(
+      'field' => [
         'id' => 'standard',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'string',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'string',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
-    $data['views_test_data']['created'] = array(
+      ],
+    ];
+    $data['views_test_data']['created'] = [
       'title' => 'Created',
       'help' => 'The creation date of this record',
-      'field' => array(
+      'field' => [
         'id' => 'date',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'id' => 'date',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'date',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'date',
-      ),
-    );
-    $data['views_test_data']['status'] = array(
+      ],
+    ];
+    $data['views_test_data']['status'] = [
       'title' => 'Status',
       'help' => 'The status of this record',
-      'field' => array(
+      'field' => [
         'id' => 'boolean',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'id' => 'boolean',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'id' => 'standard',
-      ),
-    );
+      ],
+    ];
     return $data;
   }
 
@@ -229,43 +229,43 @@ public static function viewsData() {
    * Returns a very simple test dataset.
    */
   public static function dataSet() {
-    return array(
-      array(
+    return [
+      [
         'name' => 'John',
         'age' => 25,
         'job' => 'Singer',
         'created' => gmmktime(0, 0, 0, 1, 1, 2000),
         'status' => 1,
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'age' => 27,
         'job' => 'Singer',
         'created' => gmmktime(0, 0, 0, 1, 2, 2000),
         'status' => 0,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
         'job' => 'Drummer',
         'created' => gmmktime(6, 30, 30, 1, 1, 2000),
         'status' => 1,
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
         'age' => 26,
         'job' => 'Songwriter',
         'created' => gmmktime(6, 0, 0, 1, 1, 2000),
         'status' => 0,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
         'job' => 'Speaker',
         'created' => gmmktime(6, 30, 10, 1, 1, 2000),
         'status' => 1,
-      ),
-    );
+      ],
+    ];
   }
 
 }
diff --git a/core/modules/views/src/Tests/ViewsEscapingTest.php b/core/modules/views/src/Tests/ViewsEscapingTest.php
index 08892c0..1ec3a9f 100644
--- a/core/modules/views/src/Tests/ViewsEscapingTest.php
+++ b/core/modules/views/src/Tests/ViewsEscapingTest.php
@@ -14,7 +14,7 @@ class ViewsEscapingTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_page_display', 'test_field_header');
+  public static $testViews = ['test_page_display', 'test_field_header'];
 
   /**
    * Used by WebTestBase::setup()
@@ -25,7 +25,7 @@ class ViewsEscapingTest extends ViewTestBase {
    *
    * @see \Drupal\simpletest\WebTestBase::setup()
    */
-  public static $modules = array('views', 'theme_test');
+  public static $modules = ['views', 'theme_test'];
 
   /**
    * {@inheritdoc}
@@ -47,7 +47,7 @@ public function testViewsViewFieldsEscaping() {
     $this->assertNoEscaped('<');
 
     // Install theme to test with template system.
-    \Drupal::service('theme_handler')->install(array('views_test_theme'));
+    \Drupal::service('theme_handler')->install(['views_test_theme']);
 
     // Make base theme default then test for hook invocations.
     $this->config('system.theme')
diff --git a/core/modules/views/src/Tests/ViewsTemplateTest.php b/core/modules/views/src/Tests/ViewsTemplateTest.php
index 2d7b206..4a06908 100644
--- a/core/modules/views/src/Tests/ViewsTemplateTest.php
+++ b/core/modules/views/src/Tests/ViewsTemplateTest.php
@@ -17,7 +17,7 @@ class ViewsTemplateTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_display_template');
+  public static $testViews = ['test_view_display_template'];
 
   /**
    * {@inheritdoc}
@@ -26,7 +26,7 @@ protected function setUp() {
     parent::setUp(FALSE);
 
     $this->enableViewsTestModule();
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
   }
 
   /**
diff --git a/core/modules/views/src/Tests/ViewsThemeIntegrationTest.php b/core/modules/views/src/Tests/ViewsThemeIntegrationTest.php
index 63e7e2e..1fe836a 100644
--- a/core/modules/views/src/Tests/ViewsThemeIntegrationTest.php
+++ b/core/modules/views/src/Tests/ViewsThemeIntegrationTest.php
@@ -16,7 +16,7 @@ class ViewsThemeIntegrationTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_page_display');
+  public static $testViews = ['test_page_display'];
 
 
   /**
@@ -28,7 +28,7 @@ class ViewsThemeIntegrationTest extends ViewTestBase {
    *
    * @see \Drupal\simpletest\WebTestBase::setup()
    */
-  public static $modules = array('views', 'theme_test');
+  public static $modules = ['views', 'theme_test'];
 
   /**
    * {@inheritdoc}
@@ -45,7 +45,7 @@ protected function setUp() {
    */
   public function testThemedViewPage() {
 
-    \Drupal::service('theme_handler')->install(array('test_basetheme', 'test_subtheme'));
+    \Drupal::service('theme_handler')->install(['test_basetheme', 'test_subtheme']);
 
     // Make base theme default then test for hook invocations.
     $this->config('system.theme')
diff --git a/core/modules/views/src/Tests/Wizard/BasicTest.php b/core/modules/views/src/Tests/Wizard/BasicTest.php
index 00237d7..e635832 100644
--- a/core/modules/views/src/Tests/Wizard/BasicTest.php
+++ b/core/modules/views/src/Tests/Wizard/BasicTest.php
@@ -21,15 +21,15 @@ protected function setUp() {
   }
 
   function testViewsWizardAndListing() {
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $this->drupalCreateContentType(['type' => 'page']);
 
     // Check if we can access the main views admin page.
     $this->drupalGet('admin/structure/views');
     $this->assertText(t('Add view'));
 
     // Create a simple and not at all useful view.
-    $view1 = array();
+    $view1 = [];
     $view1['label'] = $this->randomMachineName(16);
     $view1['id'] = strtolower($this->randomMachineName(16));
     $view1['description'] = $this->randomMachineName(16);
@@ -51,11 +51,11 @@ function testViewsWizardAndListing() {
     $this->assertNoText($view1['label']);
 
     // Create two nodes.
-    $node1 = $this->drupalCreateNode(array('type' => 'page'));
-    $node2 = $this->drupalCreateNode(array('type' => 'article'));
+    $node1 = $this->drupalCreateNode(['type' => 'page']);
+    $node2 = $this->drupalCreateNode(['type' => 'article']);
 
     // Now create a page with simple node listing and an attached feed.
-    $view2 = array();
+    $view2 = [];
     $view2['label'] = $this->randomMachineName(16);
     $view2['id'] = strtolower($this->randomMachineName(16));
     $view2['description'] = $this->randomMachineName(16);
@@ -102,7 +102,7 @@ function testViewsWizardAndListing() {
     $this->assertNoText('View: ' . $view2['label']);
 
     // Create a view with a page and a block, and filter the listing.
-    $view3 = array();
+    $view3 = [];
     $view3['label'] = $this->randomMachineName(16);
     $view3['id'] = strtolower($this->randomMachineName(16));
     $view3['description'] = $this->randomMachineName(16);
@@ -150,7 +150,7 @@ function testViewsWizardAndListing() {
     $this->assertNoText('tracker', 'Default tracker view does not show on the listing page.');
 
     // Create a view with only a REST export.
-    $view4 = array();
+    $view4 = [];
     $view4['label'] = $this->randomMachineName(16);
     $view4['id'] = strtolower($this->randomMachineName(16));
     $view4['description'] = $this->randomMachineName(16);
@@ -159,7 +159,7 @@ function testViewsWizardAndListing() {
     $view4['rest_export[create]'] = 1;
     $view4['rest_export[path]'] = $this->randomMachineName(16);
     $this->drupalPostForm('admin/structure/views/add', $view4, t('Save and edit'));
-    $this->assertRaw(t('The view %view has been saved.', array('%view' => $view4['label'])));
+    $this->assertRaw(t('The view %view has been saved.', ['%view' => $view4['label']]));
 
     // Check that the REST export path works.
     $this->drupalGet($view4['rest_export[path]']);
@@ -178,7 +178,7 @@ function testViewsWizardAndListing() {
   public function testWizardDefaultValues() {
     $random_id = strtolower($this->randomMachineName(16));
     // Create a basic view.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = $random_id;
     $view['description'] = $this->randomMachineName(16);
@@ -192,8 +192,8 @@ public function testWizardDefaultValues() {
     $displays = $view->storage->get('display');
 
     foreach ($displays as $display) {
-      foreach (array('query', 'exposed_form', 'pager', 'style', 'row') as $type) {
-        $this->assertFalse(empty($display['display_options'][$type]['options']), SafeMarkup::format('Default options found for @plugin.', array('@plugin' => $type)));
+      foreach (['query', 'exposed_form', 'pager', 'style', 'row'] as $type) {
+        $this->assertFalse(empty($display['display_options'][$type]['options']), SafeMarkup::format('Default options found for @plugin.', ['@plugin' => $type]));
       }
     }
   }
diff --git a/core/modules/views/src/Tests/Wizard/ItemsPerPageTest.php b/core/modules/views/src/Tests/Wizard/ItemsPerPageTest.php
index 7a2f430..500eff2 100644
--- a/core/modules/views/src/Tests/Wizard/ItemsPerPageTest.php
+++ b/core/modules/views/src/Tests/Wizard/ItemsPerPageTest.php
@@ -20,22 +20,22 @@ protected function setUp() {
    * Tests the number of items per page.
    */
   function testItemsPerPage() {
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
     // Create articles, each with a different creation time so that we can do a
     // meaningful sort.
-    $node1 = $this->drupalCreateNode(array('type' => 'article', 'created' => REQUEST_TIME));
-    $node2 = $this->drupalCreateNode(array('type' => 'article', 'created' => REQUEST_TIME + 1));
-    $node3 = $this->drupalCreateNode(array('type' => 'article', 'created' => REQUEST_TIME + 2));
-    $node4 = $this->drupalCreateNode(array('type' => 'article', 'created' => REQUEST_TIME + 3));
-    $node5 = $this->drupalCreateNode(array('type' => 'article', 'created' => REQUEST_TIME + 4));
+    $node1 = $this->drupalCreateNode(['type' => 'article', 'created' => REQUEST_TIME]);
+    $node2 = $this->drupalCreateNode(['type' => 'article', 'created' => REQUEST_TIME + 1]);
+    $node3 = $this->drupalCreateNode(['type' => 'article', 'created' => REQUEST_TIME + 2]);
+    $node4 = $this->drupalCreateNode(['type' => 'article', 'created' => REQUEST_TIME + 3]);
+    $node5 = $this->drupalCreateNode(['type' => 'article', 'created' => REQUEST_TIME + 4]);
 
     // Create a page. This should never appear in the view created below.
-    $page_node = $this->drupalCreateNode(array('type' => 'page', 'created' => REQUEST_TIME + 2));
+    $page_node = $this->drupalCreateNode(['type' => 'page', 'created' => REQUEST_TIME + 2]);
 
     // Create a view that sorts newest first, and shows 4 items in the page and
     // 3 in the block.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
diff --git a/core/modules/views/src/Tests/Wizard/MenuTest.php b/core/modules/views/src/Tests/Wizard/MenuTest.php
index 552ff50..242065f 100644
--- a/core/modules/views/src/Tests/Wizard/MenuTest.php
+++ b/core/modules/views/src/Tests/Wizard/MenuTest.php
@@ -19,7 +19,7 @@ function testMenus() {
     $this->drupalPlaceBlock('system_menu_block:main');
 
     // Create a view with a page display and a menu link in the Main Menu.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
@@ -44,9 +44,9 @@ function testMenus() {
     /** @var \Drupal\Core\Menu\MenuLinkInterface $link */
     $link = $menu_link_manager->createInstance('views_view:views.' . $view['id'] . '.page_1');
     $url = $link->getUrlObject();
-    $this->assertEqual($url->getRouteName(), 'view.' . $view['id'] . '.page_1', SafeMarkup::format('Found a link to %path in the main menu', array('%path' => $view['page[path]'])));
+    $this->assertEqual($url->getRouteName(), 'view.' . $view['id'] . '.page_1', SafeMarkup::format('Found a link to %path in the main menu', ['%path' => $view['page[path]']]));
     $metadata = $link->getMetaData();
-    $this->assertEqual(array('view_id' => $view['id'], 'display_id' => 'page_1'), $metadata);
+    $this->assertEqual(['view_id' => $view['id'], 'display_id' => 'page_1'], $metadata);
   }
 
 }
diff --git a/core/modules/views/src/Tests/Wizard/NodeWizardTest.php b/core/modules/views/src/Tests/Wizard/NodeWizardTest.php
index 14a1766..dd63efe 100644
--- a/core/modules/views/src/Tests/Wizard/NodeWizardTest.php
+++ b/core/modules/views/src/Tests/Wizard/NodeWizardTest.php
@@ -15,9 +15,9 @@ class NodeWizardTest extends WizardTestBase {
    * Tests creating a view with node titles.
    */
   public function testViewAddWithNodeTitles() {
-    $this->drupalCreateContentType(array('type' => 'article'));
+    $this->drupalCreateContentType(['type' => 'article']);
 
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
diff --git a/core/modules/views/src/Tests/Wizard/PagerTest.php b/core/modules/views/src/Tests/Wizard/PagerTest.php
index 1dfc21e..2ec6d55 100644
--- a/core/modules/views/src/Tests/Wizard/PagerTest.php
+++ b/core/modules/views/src/Tests/Wizard/PagerTest.php
@@ -15,9 +15,9 @@ class PagerTest extends WizardTestBase {
   public function testPager() {
     // Create nodes, each with a different creation time so that we have
     // conditions that are meaningful for the use of a pager.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 12; $i++) {
-      $this->drupalCreateNode(array('created' => REQUEST_TIME - $i));
+      $this->drupalCreateNode(['created' => REQUEST_TIME - $i]);
     }
 
     // Make a View that uses a pager.
@@ -27,14 +27,14 @@ public function testPager() {
 
     // This technique for finding the existence of a pager
     // matches that used in Drupal\views_ui\Tests\PreviewTest.php.
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Full pager found.');
 
     // Make a View that does not have a pager.
     $path_with_no_pager = 'test-view-without-pager';
     $this->createViewAtPath($path_with_no_pager, FALSE);
     $this->drupalGet($path_with_no_pager);
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(empty($elements), 'Full pager not found.');
   }
 
@@ -47,7 +47,7 @@ public function testPager() {
    *   A boolean for whether the View created should use a pager.
    */
   protected function createViewAtPath($path, $pager = TRUE) {
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['show[sort]'] = 'node_field_data-created:ASC';
diff --git a/core/modules/views/src/Tests/Wizard/SortingTest.php b/core/modules/views/src/Tests/Wizard/SortingTest.php
index 6172930..545c50d 100644
--- a/core/modules/views/src/Tests/Wizard/SortingTest.php
+++ b/core/modules/views/src/Tests/Wizard/SortingTest.php
@@ -21,13 +21,13 @@ protected function setUp() {
   function testSorting() {
     // Create nodes, each with a different creation time so that we can do a
     // meaningful sort.
-    $this->drupalCreateContentType(array('type' => 'page'));
-    $node1 = $this->drupalCreateNode(array('created' => REQUEST_TIME));
-    $node2 = $this->drupalCreateNode(array('created' => REQUEST_TIME + 1));
-    $node3 = $this->drupalCreateNode(array('created' => REQUEST_TIME + 2));
+    $this->drupalCreateContentType(['type' => 'page']);
+    $node1 = $this->drupalCreateNode(['created' => REQUEST_TIME]);
+    $node2 = $this->drupalCreateNode(['created' => REQUEST_TIME + 1]);
+    $node3 = $this->drupalCreateNode(['created' => REQUEST_TIME + 2]);
 
     // Create a view that sorts oldest first.
-    $view1 = array();
+    $view1 = [];
     $view1['label'] = $this->randomMachineName(16);
     $view1['id'] = strtolower($this->randomMachineName(16));
     $view1['description'] = $this->randomMachineName(16);
@@ -52,7 +52,7 @@ function testSorting() {
     $this->assertTrue($pos1 < $pos2 && $pos2 < $pos3, 'The nodes appear in the expected order in a view that sorts by oldest first.');
 
     // Create a view that sorts newest first.
-    $view2 = array();
+    $view2 = [];
     $view2['label'] = $this->randomMachineName(16);
     $view2['id'] = strtolower($this->randomMachineName(16));
     $view2['description'] = $this->randomMachineName(16);
diff --git a/core/modules/views/src/Tests/Wizard/TaggedWithTest.php b/core/modules/views/src/Tests/Wizard/TaggedWithTest.php
index 939473f..d929946 100644
--- a/core/modules/views/src/Tests/Wizard/TaggedWithTest.php
+++ b/core/modules/views/src/Tests/Wizard/TaggedWithTest.php
@@ -21,7 +21,7 @@ class TaggedWithTest extends WizardTestBase {
    *
    * @var array
    */
-  public static $modules = array('taxonomy');
+  public static $modules = ['taxonomy'];
 
   /**
    * Node type with an autocomplete tagging field.
@@ -83,31 +83,31 @@ protected function setUp() {
     // Create the tag field itself.
     $this->tagFieldName = 'field_views_testing_tags';
 
-    $handler_settings = array(
-      'target_bundles' => array(
+    $handler_settings = [
+      'target_bundles' => [
         $this->tagVocabulary->id() => $this->tagVocabulary->id(),
-      ),
+      ],
       'auto_create' => TRUE,
-    );
+    ];
     $this->createEntityReferenceField('node', $this->nodeTypeWithTags->id(), $this->tagFieldName, NULL, 'taxonomy_term', 'default', $handler_settings, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED);
 
     entity_get_form_display('node', $this->nodeTypeWithTags->id(), 'default')
-      ->setComponent($this->tagFieldName, array(
+      ->setComponent($this->tagFieldName, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
 
     entity_get_display('node', $this->nodeTypeWithTags->id(), 'default')
-      ->setComponent($this->tagFieldName, array(
+      ->setComponent($this->tagFieldName, [
         'type' => 'entity_reference_label',
         'weight' => 10,
-      ))
+      ])
       ->save();
     entity_get_display('node', $this->nodeTypeWithTags->id(), 'teaser')
-      ->setComponent('field_views_testing_tags', array(
+      ->setComponent('field_views_testing_tags', [
         'type' => 'entity_reference_label',
         'weight' => 10,
-      ))
+      ])
       ->save();
   }
 
@@ -120,21 +120,21 @@ function testTaggedWith() {
     $node_add_path = 'node/add/' . $this->nodeTypeWithTags->id();
 
     // Create three nodes, with different tags.
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $node_tag1_title = $this->randomMachineName();
     $edit[$this->tagFieldName . '[target_id]'] = 'tag1';
     $this->drupalPostForm($node_add_path, $edit, t('Save'));
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $node_tag1_tag2_title = $this->randomMachineName();
     $edit[$this->tagFieldName . '[target_id]'] = 'tag1, tag2';
     $this->drupalPostForm($node_add_path, $edit, t('Save'));
-    $edit = array();
+    $edit = [];
     $edit['title[0][value]'] = $node_no_tags_title = $this->randomMachineName();
     $this->drupalPostForm($node_add_path, $edit, t('Save'));
 
     // Create a view that filters by taxonomy term "tag1". It should show only
     // the two nodes from above that are tagged with "tag1".
-    $view1 = array();
+    $view1 = [];
     // First select the node type and update the form so the correct tag field
     // is used.
     $view1['show[type]'] = $this->nodeTypeWithTags->id();
@@ -158,7 +158,7 @@ function testTaggedWith() {
 
     // Create a view that filters by taxonomy term "tag2". It should show only
     // the one node from above that is tagged with "tag2".
-    $view2 = array();
+    $view2 = [];
     $view2['show[type]'] = $this->nodeTypeWithTags->id();
     $this->drupalPostForm('admin/structure/views/add', $view2, t('Update "of type" choice'));
     $this->assertResponse(200);
@@ -202,20 +202,20 @@ function testTaggedWithByNodeType() {
       'field_name' => $this->tagFieldName,
       'entity_type' => 'node',
       'bundle' => $this->nodeTypeWithoutTags->id(),
-      'settings' => array(
+      'settings' => [
         'handler' => 'default',
-        'handler_settings' => array(
-          'target_bundles' => array(
+        'handler_settings' => [
+          'target_bundles' => [
             $this->tagVocabulary->id() => $this->tagVocabulary->id(),
-          ),
+          ],
           'auto_create' => TRUE,
-        ),
-      ),
+        ],
+      ],
     ])->save();
     entity_get_form_display('node', $this->nodeTypeWithoutTags->id(), 'default')
-      ->setComponent($this->tagFieldName, array(
+      ->setComponent($this->tagFieldName, [
         'type' => 'entity_reference_autocomplete_tags',
-      ))
+      ])
       ->save();
 
     $view['show[type]'] = $this->nodeTypeWithTags->id();
diff --git a/core/modules/views/src/Tests/Wizard/WizardTestBase.php b/core/modules/views/src/Tests/Wizard/WizardTestBase.php
index e00b018..835b9f4 100644
--- a/core/modules/views/src/Tests/Wizard/WizardTestBase.php
+++ b/core/modules/views/src/Tests/Wizard/WizardTestBase.php
@@ -14,13 +14,13 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui', 'block', 'rest');
+  public static $modules = ['node', 'views_ui', 'block', 'rest'];
 
   protected function setUp() {
     parent::setUp();
 
     // Create and log in a user with administer views permission.
-    $views_admin = $this->drupalCreateUser(array('administer views', 'administer blocks', 'bypass node access', 'access user profiles', 'view all revisions'));
+    $views_admin = $this->drupalCreateUser(['administer views', 'administer blocks', 'bypass node access', 'access user profiles', 'view all revisions']);
     $this->drupalLogin($views_admin);
     $this->drupalPlaceBlock('local_actions_block');
   }
diff --git a/core/modules/views/src/ViewExecutable.php b/core/modules/views/src/ViewExecutable.php
index 991f6c3..b1861f7 100644
--- a/core/modules/views/src/ViewExecutable.php
+++ b/core/modules/views/src/ViewExecutable.php
@@ -51,14 +51,14 @@ class ViewExecutable implements \Serializable {
    *
    * @var array
    */
-  public $args = array();
+  public $args = [];
 
   /**
    * An array of build info.
    *
    * @var array
    */
-  public $build_info = array();
+  public $build_info = [];
 
   /**
    * Whether this view uses AJAX.
@@ -74,7 +74,7 @@ class ViewExecutable implements \Serializable {
    *
    * @var \Drupal\views\ResultRow[]
    */
-  public $result = array();
+  public $result = [];
 
   // May be used to override the current pager info.
 
@@ -111,21 +111,21 @@ class ViewExecutable implements \Serializable {
    *
    * @var array()
    */
-  public $attachment_before = array();
+  public $attachment_before = [];
 
   /**
    * Attachments to place after the view.
    *
    * @var array
    */
-  public $attachment_after = array();
+  public $attachment_after = [];
 
   /**
    * Feed icons attached to the view.
    *
    * @var array
    */
-  public $feedIcons = array();
+  public $feedIcons = [];
 
   // Exposed widget input
 
@@ -134,35 +134,35 @@ class ViewExecutable implements \Serializable {
    *
    * @var array
    */
-  public $exposed_data = array();
+  public $exposed_data = [];
 
   /**
    * An array of input values from exposed forms.
    *
    * @var array
    */
-  protected $exposed_input = array();
+  protected $exposed_input = [];
 
   /**
    * Exposed widget input directly from the $form_state->getValues().
    *
    * @var array
    */
-  public $exposed_raw_input = array();
+  public $exposed_raw_input = [];
 
   /**
    * Used to store views that were previously running if we recurse.
    *
    * @var \Drupal\views\ViewExecutable[]
    */
-  public $old_view = array();
+  public $old_view = [];
 
   /**
    * To avoid recursion in views embedded into areas.
    *
    * @var \Drupal\views\ViewExecutable[]
    */
-  public $parent_views = array();
+  public $parent_views = [];
 
   /**
    * Whether this view is an attachment to another view.
@@ -680,7 +680,7 @@ public function getExposedInput() {
 
       $this->exposed_input = \Drupal::request()->query->all();
       // unset items that are definitely not our input:
-      foreach (array('page', 'q') as $key) {
+      foreach (['page', 'q'] as $key) {
         if (isset($this->exposed_input[$key])) {
           unset($this->exposed_input[$key]);
         }
@@ -788,7 +788,7 @@ public function setDisplay($display_id = NULL) {
 
     // Ensure the requested display exists.
     if (!$this->displayHandlers->has($display_id)) {
-      debug(format_string('setDisplay() called with invalid display ID "@display".', array('@display' => $display_id)));
+      debug(format_string('setDisplay() called with invalid display ID "@display".', ['@display' => $display_id]));
       return FALSE;
     }
 
@@ -956,10 +956,10 @@ public function renderPager($exposed_input) {
    *   An array of base tables to be used by the view.
    */
   public function getBaseTables() {
-    $base_tables = array(
+    $base_tables = [
       $this->storage->get('base_table') => TRUE,
       '#global' => TRUE,
-    );
+    ];
 
     foreach ($this->display_handler->getHandlers('relationship') as $handler) {
       $base_tables[$handler->definition['base']] = TRUE;
@@ -1054,7 +1054,7 @@ protected function _buildArguments() {
 
     // build arguments.
     $position = -1;
-    $substitutions = array();
+    $substitutions = [];
     $status = TRUE;
 
     // Get the title.
@@ -1192,18 +1192,18 @@ public function build($display_id = NULL) {
 
     // Let modules modify the view just prior to building it.
     $module_handler = \Drupal::moduleHandler();
-    $module_handler->invokeAll('views_pre_build', array($this));
+    $module_handler->invokeAll('views_pre_build', [$this]);
 
     // Attempt to load from cache.
     // @todo Load a build_info from cache.
 
     $start = microtime(TRUE);
     // If that fails, let's build!
-    $this->build_info = array(
+    $this->build_info = [
       'query' => '',
       'count_query' => '',
-      'query_args' => array(),
-    );
+      'query_args' => [],
+    ];
 
     $this->initQuery();
 
@@ -1314,7 +1314,7 @@ public function build($display_id = NULL) {
     $this->attachDisplays();
 
     // Let modules modify the view just after building it.
-    $module_handler->invokeAll('views_post_build', array($this));
+    $module_handler->invokeAll('views_post_build', [$this]);
 
     return TRUE;
   }
@@ -1335,7 +1335,7 @@ public function _build($key) {
     foreach ($handlers as $id => $data) {
 
       if (!empty($handlers[$id]) && is_object($handlers[$id])) {
-        $multiple_exposed_input = array(0 => NULL);
+        $multiple_exposed_input = [0 => NULL];
         if ($handlers[$id]->multipleExposedInput()) {
           $multiple_exposed_input = $handlers[$id]->groupMultipleExposedInput($this->exposed_data);
         }
@@ -1391,7 +1391,7 @@ public function execute($display_id = NULL) {
 
     // Let modules modify the view just prior to executing it.
     $module_handler = \Drupal::moduleHandler();
-    $module_handler->invokeAll('views_pre_execute', array($this));
+    $module_handler->invokeAll('views_pre_execute', [$this]);
 
     // Check for already-cached results.
     /** @var \Drupal\views\Plugin\views\cache\CachePluginBase $cache */
@@ -1418,7 +1418,7 @@ public function execute($display_id = NULL) {
     }
 
     // Let modules modify the view just after executing it.
-    $module_handler->invokeAll('views_post_execute', array($this));
+    $module_handler->invokeAll('views_post_execute', [$this]);
 
     return $this->executed = TRUE;
   }
@@ -1494,7 +1494,7 @@ public function render($display_id = NULL) {
     $this->style_plugin->preRender($this->result);
 
     // Let each area handler have access to the result set.
-    $areas = array('header', 'footer');
+    $areas = ['header', 'footer'];
     // Only call preRender() on the empty handlers if the result is empty.
     if (empty($this->result)) {
       $areas[] = 'empty';
@@ -1506,7 +1506,7 @@ public function render($display_id = NULL) {
     }
 
     // Let modules modify the view just prior to rendering it.
-    $module_handler->invokeAll('views_pre_render', array($this));
+    $module_handler->invokeAll('views_pre_render', [$this]);
 
     // Let the themes play too, because pre render is a very themey thing.
     foreach ($themes as $theme_name) {
@@ -1523,7 +1523,7 @@ public function render($display_id = NULL) {
     $cache->postRender($this->display_handler->output);
 
     // Let modules modify the view output after it is rendered.
-    $module_handler->invokeAll('views_post_render', array($this, &$this->display_handler->output, $cache));
+    $module_handler->invokeAll('views_post_render', [$this, &$this->display_handler->output, $cache]);
 
     // Let the themes play too, because post render is a very themey thing.
     foreach ($themes as $theme_name) {
@@ -1570,7 +1570,7 @@ public function getCacheTags() {
    *   A renderable array with #type 'view' or NULL if the display ID was
    *   invalid.
    */
-  public function buildRenderable($display_id = NULL, $args = array(), $cache = TRUE) {
+  public function buildRenderable($display_id = NULL, $args = [], $cache = TRUE) {
     // @todo Extract that into a generic method.
     if (empty($this->current_display) || $this->current_display != $this->chooseDisplay($display_id)) {
       if (!$this->setDisplay($display_id)) {
@@ -1603,7 +1603,7 @@ public function buildRenderable($display_id = NULL, $args = array(), $cache = TR
    *   A renderable array containing the view output or NULL if the display ID
    *   of the view to be executed doesn't exist.
    */
-  public function executeDisplay($display_id = NULL, $args = array()) {
+  public function executeDisplay($display_id = NULL, $args = []) {
     if (empty($this->current_display) || $this->current_display != $this->chooseDisplay($display_id)) {
       if (!$this->setDisplay($display_id)) {
         return NULL;
@@ -1635,7 +1635,7 @@ public function executeDisplay($display_id = NULL, $args = array()) {
    *   A renderable array containing the view output or NULL if the display ID
    *   of the view to be executed doesn't exist.
    */
-  public function preview($display_id = NULL, $args = array()) {
+  public function preview($display_id = NULL, $args = []) {
     if (empty($this->current_display) || ((!empty($display_id)) && $this->current_display != $display_id)) {
       if (!$this->setDisplay($display_id)) {
         return FALSE;
@@ -1657,7 +1657,7 @@ public function preview($display_id = NULL, $args = array()) {
    * @param array $args
    *   An array of arguments from the URL that can be used by the view.
    */
-  public function preExecute($args = array()) {
+  public function preExecute($args = []) {
     $this->old_view[] = views_get_current_view();
     views_set_current_view($this);
     $display_id = $this->current_display;
@@ -1669,7 +1669,7 @@ public function preExecute($args = array()) {
     }
 
     // Let modules modify the view just prior to executing it.
-    \Drupal::moduleHandler()->invokeAll('views_pre_view', array($this, $display_id, &$this->args));
+    \Drupal::moduleHandler()->invokeAll('views_pre_view', [$this, $display_id, &$this->args]);
 
     // Allow hook_views_pre_view() to set the dom_id, then ensure it is set.
     $this->dom_id = !empty($this->dom_id) ? $this->dom_id : hash('sha256', $this->storage->id() . REQUEST_TIME . mt_rand());
@@ -1947,7 +1947,7 @@ public function getUrl($args = NULL, $display_id = NULL) {
       return $display_handler->getUrlInfo();
     }
 
-    $argument_keys = isset($this->argument) ? array_keys($this->argument) : array();
+    $argument_keys = isset($this->argument) ? array_keys($this->argument) : [];
     $id = current($argument_keys);
 
     /** @var \Drupal\Core\Url $url */
@@ -2084,7 +2084,7 @@ public function destroy() {
    *   errors.
    */
   public function validate() {
-    $errors = array();
+    $errors = [];
 
     $this->initDisplay();
     $current_display = $this->current_display;
@@ -2158,7 +2158,7 @@ public static function getPluginTypes($type = NULL) {
    * @return string
    *   The unique ID for this handler instance.
    */
-  public function addHandler($display_id, $type, $table, $field, $options = array(), $id = NULL) {
+  public function addHandler($display_id, $type, $table, $field, $options = [], $id = NULL) {
     $types = $this::getHandlerTypes();
     $this->setDisplay($display_id);
 
@@ -2172,11 +2172,11 @@ public function addHandler($display_id, $type, $table, $field, $options = array(
     // If the desired type is not found, use the original value directly.
     $handler_type = !empty($types[$type]['type']) ? $types[$type]['type'] : $type;
 
-    $fields[$id] = array(
+    $fields[$id] = [
       'id' => $id,
       'table' => $table,
       'field' => $field,
-    ) + $options;
+    ] + $options;
 
     if (isset($data['table']['entity type'])) {
       $fields[$id]['entity_type'] = $data['table']['entity type'];
@@ -2405,7 +2405,7 @@ public function mergeDefaults() {
    *   An array of theme hook suggestions.
    */
   public function buildThemeFunctions($hook) {
-    $themes = array();
+    $themes = [];
     $display = isset($this->display_handler) ? $this->display_handler->display : NULL;
     $id = $this->storage->id();
 
diff --git a/core/modules/views/src/Views.php b/core/modules/views/src/Views.php
index 5628d96..9962d38 100644
--- a/core/modules/views/src/Views.php
+++ b/core/modules/views/src/Views.php
@@ -26,7 +26,7 @@ class Views {
    *
    * @var array
    */
-  protected static $plugins = array(
+  protected static $plugins = [
     'access' => 'plugin',
     'area' => 'handler',
     'argument' => 'handler',
@@ -46,7 +46,7 @@ class Views {
     'sort' => 'handler',
     'style' => 'plugin',
     'wizard' => 'plugin',
-  );
+  ];
 
   /**
    * Returns the views data service.
@@ -139,9 +139,9 @@ public static function getView($id) {
    * @return
    *   A keyed array of in the form of 'base_table' => 'Description'.
    */
-  public static function fetchPluginNames($type, $key = NULL, array $base = array()) {
+  public static function fetchPluginNames($type, $key = NULL, array $base = []) {
     $definitions = static::pluginManager($type)->getDefinitions();
-    $plugins = array();
+    $plugins = [];
 
     foreach ($definitions as $id => $plugin) {
       // Skip plugins that don't conform to our key, if they have one.
@@ -169,7 +169,7 @@ public static function fetchPluginNames($type, $key = NULL, array $base = array(
    *   An array of plugin definitions for all types.
    */
   public static function getPluginDefinitions() {
-    $plugins = array();
+    $plugins = [];
     foreach (ViewExecutable::getPluginTypes() as $plugin_type) {
       $plugins[$plugin_type] = static::pluginManager($plugin_type)->getDefinitions();
     }
@@ -218,7 +218,7 @@ public static function getApplicableViews($type) {
       ->condition("display.*.display_plugin", $plugin_ids, 'IN')
       ->execute();
 
-    $result = array();
+    $result = [];
     foreach (\Drupal::entityTypeManager()->getStorage('view')->loadMultiple($entity_ids) as $view) {
       // Check each display to see if it meets the criteria and is enabled.
 
@@ -309,7 +309,7 @@ public static function getViewsAsOptions($views_only = FALSE, $filter = 'all', $
         $views = call_user_func("static::get{$filter}Views");
         break;
       default:
-        return array();
+        return [];
     }
 
     // Prepare exclude view strings for comparison.
@@ -327,7 +327,7 @@ public static function getViewsAsOptions($views_only = FALSE, $filter = 'all', $
       list($exclude_view_name, $exclude_view_display) = explode(':', "$exclude_view:");
     }
 
-    $options = array();
+    $options = [];
     foreach ($views as $view) {
       $id = $view->id();
       // Return only views.
@@ -339,10 +339,10 @@ public static function getViewsAsOptions($views_only = FALSE, $filter = 'all', $
         foreach ($view->get('display') as $display_id => $display) {
           if (!($id == $exclude_view_name && $display_id == $exclude_view_display)) {
             if ($optgroup) {
-              $options[$id][$id . ':' . $display['id']] = t('@view : @display', array('@view' => $id, '@display' => $display['id']));
+              $options[$id][$id . ':' . $display['id']] = t('@view : @display', ['@view' => $id, '@display' => $display['id']]);
             }
             else {
-              $options[$id . ':' . $display['id']] = t('View: @view - Display: @display', array('@view' => $id, '@display' => $display['id']));
+              $options[$id . ':' . $display['id']] = t('View: @view - Display: @display', ['@view' => $id, '@display' => $display['id']]);
             }
           }
         }
@@ -368,7 +368,7 @@ public static function getViewsAsOptions($views_only = FALSE, $filter = 'all', $
    */
   public static function pluginList() {
     $plugin_data = static::getPluginDefinitions();
-    $plugins = array();
+    $plugins = [];
     foreach (static::getEnabledViews() as $view) {
       foreach ($view->get('display') as $display) {
         foreach ($plugin_data as $type => $info) {
@@ -389,12 +389,12 @@ public static function pluginList() {
           $key = $type . ':' . $name;
           // Add info for this plugin.
           if (!isset($plugins[$key])) {
-            $plugins[$key] = array(
+            $plugins[$key] = [
               'type' => $type,
               'title' => $info[$name]['title'],
               'provider' => $info[$name]['provider'],
-              'views' => array(),
-            );
+              'views' => [],
+            ];
           }
 
           // Add this view to the list for this plugin.
@@ -423,8 +423,8 @@ public static function getHandlerTypes() {
     // Statically cache this so translation only occurs once per request for all
     // of these values.
     if (!isset(static::$handlerTypes)) {
-      static::$handlerTypes = array(
-        'field' => array(
+      static::$handlerTypes = [
+        'field' => [
           // title
           'title' => static::t('Fields'),
           // Lowercase title for mid-sentence.
@@ -434,60 +434,60 @@ public static function getHandlerTypes() {
           // Singular lowercase title for mid sentence
           'lstitle' => static::t('field'),
           'plural' => 'fields',
-        ),
-        'argument' => array(
+        ],
+        'argument' => [
           'title' => static::t('Contextual filters'),
           'ltitle' => static::t('contextual filters'),
           'stitle' => static::t('Contextual filter'),
           'lstitle' => static::t('contextual filter'),
           'plural' => 'arguments',
-        ),
-        'sort' => array(
+        ],
+        'sort' => [
           'title' => static::t('Sort criteria'),
           'ltitle' => static::t('sort criteria'),
           'stitle' => static::t('Sort criterion'),
           'lstitle' => static::t('sort criterion'),
           'plural' => 'sorts',
-        ),
-        'filter' => array(
+        ],
+        'filter' => [
           'title' => static::t('Filter criteria'),
           'ltitle' => static::t('filter criteria'),
           'stitle' => static::t('Filter criterion'),
           'lstitle' => static::t('filter criterion'),
           'plural' => 'filters',
-        ),
-        'relationship' => array(
+        ],
+        'relationship' => [
           'title' => static::t('Relationships'),
           'ltitle' => static::t('relationships'),
           'stitle' => static::t('Relationship'),
           'lstitle' => static::t('Relationship'),
           'plural' => 'relationships',
-        ),
-        'header' => array(
+        ],
+        'header' => [
           'title' => static::t('Header'),
           'ltitle' => static::t('header'),
           'stitle' => static::t('Header'),
           'lstitle' => static::t('Header'),
           'plural' => 'header',
           'type' => 'area',
-        ),
-        'footer' => array(
+        ],
+        'footer' => [
           'title' => static::t('Footer'),
           'ltitle' => static::t('footer'),
           'stitle' => static::t('Footer'),
           'lstitle' => static::t('Footer'),
           'plural' => 'footer',
           'type' => 'area',
-        ),
-        'empty' => array(
+        ],
+        'empty' => [
           'title' => static::t('No results behavior'),
           'ltitle' => static::t('no results behavior'),
           'stitle' => static::t('No results behavior'),
           'lstitle' => static::t('No results behavior'),
           'plural' => 'empty',
           'type' => 'area',
-        ),
-      );
+        ],
+      ];
     }
 
     return static::$handlerTypes;
@@ -508,7 +508,7 @@ public static function getPluginTypes($type = NULL) {
       return array_keys(static::$plugins);
     }
 
-    if (!in_array($type, array('plugin', 'handler'))) {
+    if (!in_array($type, ['plugin', 'handler'])) {
       throw new \Exception('Invalid plugin type used. Valid types are "plugin" or "handler".');
     }
 
@@ -522,7 +522,7 @@ public static function getPluginTypes($type = NULL) {
    *
    * See the t() documentation for details.
    */
-  protected static function t($string, array $args = array(), array $options = array()) {
+  protected static function t($string, array $args = [], array $options = []) {
     if (empty(static::$translationManager)) {
       static::$translationManager = \Drupal::service('string_translation');
     }
diff --git a/core/modules/views/src/ViewsData.php b/core/modules/views/src/ViewsData.php
index a079413..e5281ab 100644
--- a/core/modules/views/src/ViewsData.php
+++ b/core/modules/views/src/ViewsData.php
@@ -40,7 +40,7 @@ class ViewsData {
    *
    * @var array
    */
-  protected $storage = array();
+  protected $storage = [];
 
   /**
    * All table storage data loaded from cache.
@@ -50,7 +50,7 @@ class ViewsData {
    *
    * @var array
    */
-  protected $allStorage = array();
+  protected $allStorage = [];
 
   /**
    * Whether the data has been fully loaded in this request.
@@ -167,8 +167,8 @@ public function get($key = NULL) {
           // Write an empty cache entry if no information for that table
           // exists to avoid repeated cache get calls for this table and
           // prevent loading all tables unnecessarily.
-          $this->storage[$key] = array();
-          $this->allStorage[$key] = array();
+          $this->storage[$key] = [];
+          $this->allStorage[$key] = [];
         }
         else {
           $this->storage[$key] = $this->allStorage[$key];
@@ -208,7 +208,7 @@ protected function cacheGet($cid) {
    *   The data that will be cached.
    */
   protected function cacheSet($cid, $data) {
-    return $this->cacheBackend->set($this->prepareCid($cid), $data, Cache::PERMANENT, array('views_data', 'config:core.extension'));
+    return $this->cacheBackend->set($this->prepareCid($cid), $data, Cache::PERMANENT, ['views_data', 'config:core.extension']);
   }
 
   /**
@@ -274,9 +274,9 @@ protected function processEntityTypes(array &$data) {
       if (!empty($table_info['table']['entity type'])) {
         $entity_table = 'views_entity_' . $table_info['table']['entity type'];
 
-        $data[$entity_table]['table']['join'][$table_name] = array(
+        $data[$entity_table]['table']['join'][$table_name] = [
           'left_table' => $table_name,
-        );
+        ];
         $data[$entity_table]['table']['entity type'] = $table_info['table']['entity type'];
         // Copy over the default table group if we have none yet.
         if (!empty($table_info['table']['group']) && empty($data[$entity_table]['table']['group'])) {
@@ -297,15 +297,15 @@ protected function processEntityTypes(array &$data) {
    *     - weight: The weight of the base table.
    */
   public function fetchBaseTables() {
-    $tables = array();
+    $tables = [];
 
     foreach ($this->get() as $table => $info) {
       if (!empty($info['table']['base'])) {
-        $tables[$table] = array(
+        $tables[$table] = [
           'title' => $info['table']['base']['title'],
           'help' => !empty($info['table']['base']['help']) ? $info['table']['base']['help'] : '',
           'weight' => !empty($info['table']['base']['weight']) ? $info['table']['base']['weight'] : 0,
-        );
+        ];
       }
     }
 
@@ -327,10 +327,10 @@ public function fetchBaseTables() {
    * Clears the class storage and cache.
    */
   public function clear() {
-    $this->storage = array();
-    $this->allStorage = array();
+    $this->storage = [];
+    $this->allStorage = [];
     $this->fullyLoaded = FALSE;
-    Cache::invalidateTags(array('views_data'));
+    Cache::invalidateTags(['views_data']);
   }
 
 }
diff --git a/core/modules/views/src/ViewsDataHelper.php b/core/modules/views/src/ViewsDataHelper.php
index bbdf809..32e6ada 100644
--- a/core/modules/views/src/ViewsDataHelper.php
+++ b/core/modules/views/src/ViewsDataHelper.php
@@ -64,9 +64,9 @@ public function fetchFields($base, $type, $grouping = FALSE, $sub_type = NULL) {
       // each field have a cheap kind of inheritance.
 
       foreach ($data as $table => $table_data) {
-        $bases = array();
-        $strings = array();
-        $skip_bases = array();
+        $bases = [];
+        $strings = [];
+        $skip_bases = [];
         foreach ($table_data as $field => $info) {
           // Collect table data from this table
           if ($field == 'table') {
@@ -78,7 +78,7 @@ public function fetchFields($base, $type, $grouping = FALSE, $sub_type = NULL) {
             $bases[] = $table;
             continue;
           }
-          foreach (array('field', 'sort', 'filter', 'argument', 'relationship', 'area') as $key) {
+          foreach (['field', 'sort', 'filter', 'argument', 'relationship', 'area'] as $key) {
             if (!empty($info[$key])) {
               if ($grouping && !empty($info[$key]['no group by'])) {
                 continue;
@@ -96,7 +96,7 @@ public function fetchFields($base, $type, $grouping = FALSE, $sub_type = NULL) {
                   $skip_bases[$field][$key][$base_name] = TRUE;
                 }
               }
-              foreach (array('title', 'group', 'help', 'base', 'aliases') as $string) {
+              foreach (['title', 'group', 'help', 'base', 'aliases'] as $string) {
                 // First, try the lowest possible level
                 if (!empty($info[$key][$string])) {
                   $strings[$field][$key][$string] = $info[$key][$string];
@@ -120,7 +120,7 @@ public function fetchFields($base, $type, $grouping = FALSE, $sub_type = NULL) {
                 }
                 else {
                   if ($string != 'base') {
-                    $strings[$field][$key][$string] = SafeMarkup::format("Error: missing @component", array('@component' => $string));
+                    $strings[$field][$key][$string] = SafeMarkup::format("Error: missing @component", ['@component' => $string]);
                   }
                 }
               }
@@ -143,21 +143,21 @@ public function fetchFields($base, $type, $grouping = FALSE, $sub_type = NULL) {
     // all and add them together. Duplicate keys will be lost and that's
     // Just Fine.
     if (is_array($base)) {
-      $strings = array();
+      $strings = [];
       foreach ($base as $base_table) {
         if (isset($this->fields[$base_table][$type])) {
           $strings += $this->fields[$base_table][$type];
         }
       }
-      uasort($strings, array('self', 'fetchedFieldSort'));
+      uasort($strings, ['self', 'fetchedFieldSort']);
       return $strings;
     }
 
     if (isset($this->fields[$base][$type])) {
-      uasort($this->fields[$base][$type], array($this, 'fetchedFieldSort'));
+      uasort($this->fields[$base][$type], [$this, 'fetchedFieldSort']);
       return $this->fields[$base][$type];
     }
-    return array();
+    return [];
   }
 
   /**
diff --git a/core/modules/views/tests/fixtures/update/argument-placeholder.php b/core/modules/views/tests/fixtures/update/argument-placeholder.php
index 2a7cf4b..2158eb2 100644
--- a/core/modules/views/tests/fixtures/update/argument-placeholder.php
+++ b/core/modules/views/tests/fixtures/update/argument-placeholder.php
@@ -11,9 +11,9 @@
 $connection = Database::getConnection();
 
 $connection->insert('config')
-  ->fields(array(
+  ->fields([
     'collection' => '',
     'name' => 'views.view.test_token_view',
     'data' => serialize(Yaml::decode(file_get_contents('core/modules/views/tests/modules/views_test_config/test_views/views.view.test_token_view.yml'))),
-  ))
+  ])
   ->execute();
diff --git a/core/modules/views/tests/fixtures/update/boolean-filter-values.php b/core/modules/views/tests/fixtures/update/boolean-filter-values.php
index d78a3ed..2b8e78f 100644
--- a/core/modules/views/tests/fixtures/update/boolean-filter-values.php
+++ b/core/modules/views/tests/fixtures/update/boolean-filter-values.php
@@ -11,9 +11,9 @@
 $connection = Database::getConnection();
 
 $connection->insert('config')
-  ->fields(array(
+  ->fields([
     'collection' => '',
     'name' => 'views.view.test_boolean_filter_values',
     'data' => serialize(Yaml::decode(file_get_contents('core/modules/views/tests/fixtures/update/views.view.test_boolean_filter_values.yml'))),
-  ))
+  ])
   ->execute();
diff --git a/core/modules/views/tests/fixtures/update/duplicate-field-handler.php b/core/modules/views/tests/fixtures/update/duplicate-field-handler.php
index 775f75a..21cf164 100644
--- a/core/modules/views/tests/fixtures/update/duplicate-field-handler.php
+++ b/core/modules/views/tests/fixtures/update/duplicate-field-handler.php
@@ -11,9 +11,9 @@
 $connection = Database::getConnection();
 
 $connection->insert('config')
-  ->fields(array(
+  ->fields([
     'collection' => '',
     'name' => 'views.view.test_duplicate_field_handlers',
     'data' => serialize(Yaml::decode(file_get_contents('core/modules/views/tests/modules/views_test_config/test_views/views.view.test_duplicate_field_handlers.yml'))),
-  ))
+  ])
   ->execute();
diff --git a/core/modules/views/tests/modules/views_entity_test/views_entity_test.module b/core/modules/views/tests/modules/views_entity_test/views_entity_test.module
index 0506710..cd13653 100644
--- a/core/modules/views/tests/modules/views_entity_test/views_entity_test.module
+++ b/core/modules/views/tests/modules/views_entity_test/views_entity_test.module
@@ -22,10 +22,10 @@ function views_entity_test_entity_base_field_info(EntityTypeInterface $entity_ty
       ->setLabel(t('Test access'))
       ->setTranslatable(FALSE)
       ->setSetting('max_length', 64)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
         'type' => 'string_textfield',
         'weight' => 10,
-      ));
+      ]);
     return $definitions;
   }
 }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Controller/ViewsTestDataController.php b/core/modules/views/tests/modules/views_test_data/src/Controller/ViewsTestDataController.php
index 6e7fcf1..987be30 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Controller/ViewsTestDataController.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Controller/ViewsTestDataController.php
@@ -14,11 +14,11 @@ class ViewsTestDataController {
    * an exposed form.
    */
   public function errorFormPage() {
-    $build = array();
-    $build['view'] = array(
+    $build = [];
+    $build['view'] = [
       '#type' => 'view',
       '#name' => 'test_exposed_form_buttons',
-    );
+    ];
     $build['error_form'] = \Drupal::formBuilder()->getForm('Drupal\views_test_data\Form\ViewsTestDataErrorForm');
 
     return $build;
diff --git a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementEmbedForm.php b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementEmbedForm.php
index f80092b..80d19d1 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementEmbedForm.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementEmbedForm.php
@@ -21,13 +21,13 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['view'] = array(
+    $form['view'] = [
       '#type' => 'view',
       '#name' => 'test_view_embed',
       '#display_id' => 'embed_1',
-      '#arguments' => array(25),
+      '#arguments' => [25],
       '#embed' => TRUE,
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementForm.php b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementForm.php
index ba00cac..78aa998 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementForm.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataElementForm.php
@@ -21,13 +21,13 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['view'] = array(
+    $form['view'] = [
       '#type' => 'view',
       '#name' => 'test_view_embed',
       '#display_id' => 'default',
-      '#arguments' => array(25),
+      '#arguments' => [25],
       '#embed' => FALSE,
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataErrorForm.php b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataErrorForm.php
index 77e578c..6ad0361 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataErrorForm.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Form/ViewsTestDataErrorForm.php
@@ -21,13 +21,13 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
-    $form['text'] = array(
+    $form['text'] = [
       '#type' => 'textfield',
-    );
-    $form['submit'] = array(
+    ];
+    $form['submit'] = [
       '#type' => 'submit',
       '#value' => t('Submit'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/access/StaticTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/access/StaticTest.php
index b2026f7..5515986 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/access/StaticTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/access/StaticTest.php
@@ -19,7 +19,7 @@ class StaticTest extends AccessPluginBase {
 
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['access'] = array('default' => FALSE);
+    $options['access'] = ['default' => FALSE];
 
     return $options;
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/area/TestExample.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/area/TestExample.php
index 5cd2623..74818e8 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/area/TestExample.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/area/TestExample.php
@@ -27,8 +27,8 @@ public function access(AccountInterface $account) {
    */
   public function defineOptions() {
     $options = parent::defineOptions();
-    $options['string'] = array('default' => '');
-    $options['custom_access'] = array('default' => TRUE);
+    $options['string'] = ['default' => ''];
+    $options['custom_access'] = ['default' => TRUE];
 
     return $options;
   }
@@ -46,11 +46,11 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   public function render($empty = FALSE) {
     if (!$empty || !empty($this->options['empty'])) {
-      return array(
+      return [
         '#markup' => $this->globalTokenReplace($this->options['string']),
-      );
+      ];
     }
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/argument_default/ArgumentDefaultTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/argument_default/ArgumentDefaultTest.php
index b2ad514..ac068e1 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/argument_default/ArgumentDefaultTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/argument_default/ArgumentDefaultTest.php
@@ -19,7 +19,7 @@ class ArgumentDefaultTest extends ArgumentDefaultPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['value'] = array('default' => '');
+    $options['value'] = ['default' => ''];
 
     return $options;
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display/DisplayTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display/DisplayTest.php
index c149dcb..0ff2ba8 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display/DisplayTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display/DisplayTest.php
@@ -39,7 +39,7 @@ public function getType() {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['test_option'] = array('default' => '');
+    $options['test_option'] = ['default' => ''];
 
     return $options;
   }
@@ -50,21 +50,21 @@ protected function defineOptions() {
   public function optionsSummary(&$categories, &$options) {
     parent::optionsSummary($categories, $options);
 
-    $categories['display_test'] = array(
+    $categories['display_test'] = [
       'title' => $this->t('Display test settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -100,
-      ),
-    );
+      ],
+    ];
 
     $test_option = $this->getOption('test_option') ?: $this->t('Empty');
 
-    $options['test_option'] = array(
+    $options['test_option'] = [
       'category' => 'display_test',
       'title' => $this->t('Test option'),
       'value' => views_ui_truncate($test_option, 24),
-    );
+    ];
   }
 
   /**
@@ -76,12 +76,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'test_option':
         $form['#title'] .= $this->t('Test option');
-        $form['test_option'] = array(
+        $form['test_option'] = [
           '#title' => $this->t('Test option'),
           '#type' => 'textfield',
           '#description' => $this->t('This is a textfield for test_option.'),
           '#default_value' => $this->getOption('test_option'),
-        );
+        ];
         break;
     }
   }
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display_extender/DisplayExtenderTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display_extender/DisplayExtenderTest.php
index 8e3dbd8..25594c3 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display_extender/DisplayExtenderTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/display_extender/DisplayExtenderTest.php
@@ -39,19 +39,19 @@ protected function defineOptions() {
   public function optionsSummary(&$categories, &$options) {
     parent::optionsSummary($categories, $options);
 
-    $categories['display_extender_test'] = array(
+    $categories['display_extender_test'] = [
       'title' => $this->t('Display extender test settings'),
       'column' => 'second',
-      'build' => array(
+      'build' => [
         '#weight' => -100,
-      ),
-    );
+      ],
+    ];
 
-    $options['test_extender_test_option'] = array(
+    $options['test_extender_test_option'] = [
       'category' => 'display_extender_test',
       'title' => $this->t('Test option'),
       'value' => views_ui_truncate($this->options['test_extender_test_option'], 24),
-    );
+    ];
   }
 
   /**
@@ -61,12 +61,12 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     switch ($form_state->get('section')) {
       case 'test_extender_test_option':
         $form['#title'] .= $this->t('Test option');
-        $form['test_extender_test_option'] = array(
+        $form['test_extender_test_option'] = [
           '#title' => $this->t('Test option'),
           '#type' => 'textfield',
           '#description' => $this->t('This is a textfield for test_option.'),
           '#default_value' => $this->options['test_extender_test_option'],
-        );
+        ];
     }
   }
 
@@ -86,7 +86,7 @@ public function submitOptionsForm(&$form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function defaultableSections(&$sections, $section = NULL) {
-    $sections['test_extender_test_option'] = array('test_extender_test_option');
+    $sections['test_extender_test_option'] = ['test_extender_test_option'];
   }
 
   /**
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/filter/FilterTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/filter/FilterTest.php
index 4d6cd29..5bc7a19 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/filter/FilterTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/filter/FilterTest.php
@@ -18,7 +18,7 @@ class FilterTest extends FilterPluginBase {
   protected function defineOptions() {
     $options = parent::defineOptions();
 
-    $options['test_enable'] = array('default' => TRUE);
+    $options['test_enable'] = ['default' => TRUE];
     return $options;
   }
 
@@ -30,11 +30,11 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['test_enable'] = array(
+    $form['test_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Controls whether the filter plugin should be active'),
       '#default_value' => $this->options['test_enable'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/query/QueryTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/query/QueryTest.php
index c1d04cf..cf430af 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/query/QueryTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/query/QueryTest.php
@@ -18,17 +18,17 @@
  * )
  */
 class QueryTest extends QueryPluginBase {
-  protected $conditions = array();
-  protected $fields = array();
-  protected $allItems = array();
-  protected $orderBy = array();
+  protected $conditions = [];
+  protected $fields = [];
+  protected $allItems = [];
+  protected $orderBy = [];
 
   /**
    * {@inheritdoc}
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['test_setting'] = array('default' => '');
+    $options['test_setting'] = ['default' => ''];
 
     return $options;
   }
@@ -39,11 +39,11 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['test_setting'] = array(
+    $form['test_setting'] = [
       '#title' => $this->t('Test setting'),
       '#type' => 'textfield',
       '#default_value' => $this->options['test_setting'],
-    );
+    ];
   }
 
   /**
@@ -57,21 +57,21 @@ public function setAllItems($allItems) {
   }
 
   public function addWhere($group, $field, $value = NULL, $operator = NULL) {
-    $this->conditions[] = array(
+    $this->conditions[] = [
       'field' => $field,
       'value' => $value,
       'operator' => $operator
-    );
+    ];
 
   }
 
-  public function addField($table, $field, $alias = '', $params = array()) {
+  public function addField($table, $field, $alias = '', $params = []) {
     $this->fields[$field] = $field;
     return $field;
   }
 
-  public function addOrderBy($table, $field = NULL, $order = 'ASC', $alias = '', $params = array()) {
-    $this->orderBy = array('field' => $field, 'order' => $order);
+  public function addOrderBy($table, $field = NULL, $order = 'ASC', $alias = '', $params = []) {
+    $this->orderBy = ['field' => $field, 'order' => $order];
   }
 
 
@@ -96,7 +96,7 @@ public function build(ViewExecutable $view) {
    * {@inheritdoc}
    */
   public function execute(ViewExecutable $view) {
-    $result = array();
+    $result = [];
     foreach ($this->allItems as $element) {
       // Run all conditions on the element, and add it to the result if they
       // match.
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/row/RowTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/row/RowTest.php
index 8ca36c6..6af493b 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/row/RowTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/row/RowTest.php
@@ -32,7 +32,7 @@ class RowTest extends RowPluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['test_option'] = array('default' => '');
+    $options['test_option'] = ['default' => ''];
 
     return $options;
   }
@@ -43,12 +43,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['test_option'] = array(
+    $form['test_option'] = [
       '#title' => $this->t('Test option'),
       '#type' => 'textfield',
       '#description' => $this->t('This is a textfield for test_option.'),
       '#default_value' => $this->options['test_option'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/MappingTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/MappingTest.php
index 2c655e7..3ae816a 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/MappingTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/MappingTest.php
@@ -24,26 +24,26 @@ class MappingTest extends Mapping {
    * {@inheritdoc}
    */
   protected function defineMapping() {
-    return array(
-      'title_field' => array(
+    return [
+      'title_field' => [
         '#title' => $this->t('Title field'),
         '#description' => $this->t('Choose the field with the custom title.'),
         '#toggle' => TRUE,
         '#required' => TRUE,
-      ),
-      'name_field' => array(
+      ],
+      'name_field' => [
         '#title' => $this->t('Name field'),
         '#description' => $this->t('Choose the field with the custom name.'),
-      ),
-      'numeric_field' => array(
+      ],
+      'numeric_field' => [
         '#title' => $this->t('Numeric field'),
         '#description' => $this->t('Select one or more numeric fields.'),
         '#multiple' => TRUE,
         '#toggle' => TRUE,
         '#filter' => 'filterNumericFields',
         '#required' => TRUE,
-      ),
-    );
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/StyleTest.php b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/StyleTest.php
index cb66d43..9c0c3d7 100644
--- a/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/StyleTest.php
+++ b/core/modules/views/tests/modules/views_test_data/src/Plugin/views/style/StyleTest.php
@@ -40,7 +40,7 @@ class StyleTest extends StylePluginBase {
    */
   protected function defineOptions() {
     $options = parent::defineOptions();
-    $options['test_option'] = array('default' => '');
+    $options['test_option'] = ['default' => ''];
 
     return $options;
   }
@@ -51,12 +51,12 @@ protected function defineOptions() {
   public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     parent::buildOptionsForm($form, $form_state);
 
-    $form['test_option'] = array(
+    $form['test_option'] = [
       '#title' => $this->t('Test option'),
       '#type' => 'textfield',
       '#description' => $this->t('This is a textfield for test_option.'),
       '#default_value' => $this->options['test_option'],
-    );
+    ];
   }
 
   /**
diff --git a/core/modules/views/tests/modules/views_test_data/views_test_data.install b/core/modules/views/tests/modules/views_test_data/views_test_data.install
index eeb5faa..3590440 100644
--- a/core/modules/views/tests/modules/views_test_data/views_test_data.install
+++ b/core/modules/views/tests/modules/views_test_data/views_test_data.install
@@ -17,7 +17,7 @@ function views_test_data_schema() {
  */
 function views_test_data_install() {
   // Add the marquee tag to possible html elements to test the field handler.
-  $values = array(
+  $values = [
     'div' => 'DIV',
     'span' => 'SPAN',
     'h1' => 'H1',
@@ -30,6 +30,6 @@ function views_test_data_install() {
     'strong' => 'STRONG',
     'em' => 'EM',
     'marquee' => 'MARQUEE'
-  );
+  ];
   \Drupal::configFactory()->getEditable('views.settings')->set('field_rewrite_elements', $values)->save();
 }
diff --git a/core/modules/views/tests/modules/views_test_data/views_test_data.module b/core/modules/views/tests/modules/views_test_data/views_test_data.module
index bd917c7..cdb99cc 100644
--- a/core/modules/views/tests/modules/views_test_data/views_test_data.module
+++ b/core/modules/views/tests/modules/views_test_data/views_test_data.module
@@ -66,13 +66,13 @@ function views_test_data_preprocess_views_view_table(&$variables) {
  *   - view: The view object.
  */
 function template_preprocess_views_view_mapping_test(&$variables) {
-  $variables['element'] = array();
+  $variables['element'] = [];
 
   foreach ($variables['rows'] as $delta => $row) {
-    $fields = array();
+    $fields = [];
     foreach ($variables['options']['mapping'] as $type => $field_names) {
       if (!is_array($field_names)) {
-        $field_names = array($field_names);
+        $field_names = [$field_names];
       }
       foreach ($field_names as $field_name) {
         if ($value = $variables['view']->style_plugin->getField($delta, $field_name)) {
@@ -87,26 +87,26 @@ function template_preprocess_views_view_mapping_test(&$variables) {
     }
 
     // Build a container for the row.
-    $variables['element'][$delta] = array(
+    $variables['element'][$delta] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array(
+      '#attributes' => [
+        'class' => [
           'views-row-mapping-test',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     // Add each field to the row.
     foreach ($fields as $key => $render) {
-      $variables['element'][$delta][$key] = array(
+      $variables['element'][$delta][$key] = [
         '#children' => $render,
         '#type' => 'container',
-        '#attributes' => array(
-          'class' => array(
+        '#attributes' => [
+          'class' => [
             $key,
-          ),
-        ),
-      );
+          ],
+        ],
+      ];
     }
   }
 }
diff --git a/core/modules/views/tests/modules/views_test_data/views_test_data.views.inc b/core/modules/views/tests/modules/views_test_data/views_test_data.views.inc
index ceaa8e9..1115941 100644
--- a/core/modules/views/tests/modules/views_test_data/views_test_data.views.inc
+++ b/core/modules/views/tests/modules/views_test_data/views_test_data.views.inc
@@ -39,7 +39,7 @@ function views_test_data_views_data_alter() {
 function views_test_data_views_analyze(ViewExecutable $view) {
   \Drupal::state()->set('views_hook_test_views_analyze', TRUE);
 
-  $ret = array();
+  $ret = [];
 
   $ret[] = Analyzer::formatMessage(t('Test ok message'), 'ok');
   $ret[] = Analyzer::formatMessage(t('Test warning message'), 'warning');
diff --git a/core/modules/views/tests/modules/views_test_data/views_test_data.views_execution.inc b/core/modules/views/tests/modules/views_test_data/views_test_data.views_execution.inc
index d9d2a66..dd69f4c 100644
--- a/core/modules/views/tests/modules/views_test_data/views_test_data.views_execution.inc
+++ b/core/modules/views/tests/modules/views_test_data/views_test_data.views_execution.inc
@@ -22,10 +22,10 @@ function views_test_data_views_query_substitutions(ViewExecutable $view) {
 function views_test_data_views_form_substitutions() {
   \Drupal::state()->set('views_hook_test_views_form_substitutions', TRUE);
   $render = ['#markup' => '<em>unescaped</em>'];
-  return array(
+  return [
     '<!--will-be-escaped-->' => '<em>escaped</em>',
     '<!--will-be-not-escaped-->' => \Drupal::service('renderer')->renderPlain($render),
-  );
+  ];
 }
 
 /**
diff --git a/core/modules/views/tests/src/FunctionalJavascript/GlossaryViewTest.php b/core/modules/views/tests/src/FunctionalJavascript/GlossaryViewTest.php
index 42da7b6..3611829 100644
--- a/core/modules/views/tests/src/FunctionalJavascript/GlossaryViewTest.php
+++ b/core/modules/views/tests/src/FunctionalJavascript/GlossaryViewTest.php
@@ -42,7 +42,7 @@ class GlossaryViewTest extends JavascriptTestBase {
   protected function setUp() {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
 
     // Create a Content type and some test nodes with titles that start with
     // different letters.
diff --git a/core/modules/views/tests/src/Kernel/BasicTest.php b/core/modules/views/tests/src/Kernel/BasicTest.php
index 49f4398..4ef22b1 100644
--- a/core/modules/views/tests/src/Kernel/BasicTest.php
+++ b/core/modules/views/tests/src/Kernel/BasicTest.php
@@ -16,7 +16,7 @@ class BasicTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_simple_argument');
+  public static $testViews = ['test_view', 'test_simple_argument'];
 
   /**
    * Tests a trivial result set.
@@ -30,10 +30,10 @@ public function testSimpleResultSet() {
 
     // Verify the result.
     $this->assertEqual(5, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->dataSet(), array(
+    $this->assertIdenticalResultset($view, $this->dataSet(), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
   }
 
   /**
@@ -44,55 +44,55 @@ public function testSimpleFiltering() {
     $view->setDisplay();
 
     // Add a filter.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'operator' => '<',
-        'value' => array(
+        'value' => [
           'value' => '28',
           'min' => '',
           'max' => '',
-        ),
+        ],
         'group' => '0',
         'exposed' => FALSE,
-        'expose' => array(
+        'expose' => [
           'operator' => FALSE,
           'label' => '',
-        ),
+        ],
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
 
     // Build the expected result.
-    $dataset = array(
-      array(
+    $dataset = [
+      [
         'id' => 1,
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'id' => 2,
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'id' => 4,
         'name' => 'Paul',
         'age' => 26,
-      ),
-    );
+      ],
+    ];
 
     // Verify the result.
     $this->assertEqual(3, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultSet($view, $dataset, array(
+    $this->assertIdenticalResultSet($view, $dataset, [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
   }
 
   /**
@@ -101,24 +101,24 @@ public function testSimpleFiltering() {
   public function testSimpleArgument() {
     // Execute with a view
     $view = Views::getView('test_simple_argument');
-    $view->setArguments(array(27));
+    $view->setArguments([27]);
     $this->executeView($view);
 
     // Build the expected result.
-    $dataset = array(
-      array(
+    $dataset = [
+      [
         'id' => 2,
         'name' => 'George',
         'age' => 27,
-      ),
-    );
+      ],
+    ];
 
     // Verify the result.
     $this->assertEqual(1, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultSet($view, $dataset, array(
+    $this->assertIdenticalResultSet($view, $dataset, [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
 
     // Test "show all" if no argument is present.
     $view = Views::getView('test_simple_argument');
@@ -128,10 +128,10 @@ public function testSimpleArgument() {
     $dataset = $this->dataSet();
 
     $this->assertEqual(5, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultSet($view, $dataset, array(
+    $this->assertIdenticalResultSet($view, $dataset, [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/views/tests/src/Kernel/Entity/RowEntityRenderersTest.php b/core/modules/views/tests/src/Kernel/Entity/RowEntityRenderersTest.php
index dfcb30e..b20f981 100644
--- a/core/modules/views/tests/src/Kernel/Entity/RowEntityRenderersTest.php
+++ b/core/modules/views/tests/src/Kernel/Entity/RowEntityRenderersTest.php
@@ -27,7 +27,7 @@ class RowEntityRenderersTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_row_renderers');
+  public static $testViews = ['test_entity_row_renderers'];
 
   /**
    * An array of added languages.
@@ -51,13 +51,13 @@ protected function setUp($import_test_views = TRUE) {
 
     $this->installEntitySchema('node');
     $this->installEntitySchema('user');
-    $this->installSchema('node', array('node_access'));
-    $this->installConfig(array('node', 'language'));
+    $this->installSchema('node', ['node_access']);
+    $this->installConfig(['node', 'language']);
 
     // The entity.node.canonical route must exist when nodes are rendered.
     $this->container->get('router.builder')->rebuild();
 
-    $this->langcodes = array(\Drupal::languageManager()->getDefaultLanguage()->getId());
+    $this->langcodes = [\Drupal::languageManager()->getDefaultLanguage()->getId()];
     for ($i = 0; $i < 2; $i++) {
       $langcode = 'l' . $i;
       $this->langcodes[] = $langcode;
@@ -65,27 +65,27 @@ protected function setUp($import_test_views = TRUE) {
     }
 
     // Make sure we do not try to render non-existing user data.
-    $node_type = NodeType::create(array('type' => 'test'));
+    $node_type = NodeType::create(['type' => 'test']);
     $node_type->setDisplaySubmitted(FALSE);
     $node_type->save();
 
-    $this->values = array();
+    $this->values = [];
     $controller = \Drupal::entityManager()->getStorage('node');
     $langcode_index = 0;
 
     for ($i = 0; $i < count($this->langcodes); $i++) {
       // Create a node with a different default language each time.
       $default_langcode = $this->langcodes[$langcode_index++];
-      $node = $controller->create(array('type' => 'test', 'uid' => 0, 'langcode' => $default_langcode));
+      $node = $controller->create(['type' => 'test', 'uid' => 0, 'langcode' => $default_langcode]);
       // Ensure the default language is processed first.
-      $langcodes = array_merge(array($default_langcode), array_diff($this->langcodes, array($default_langcode)));
+      $langcodes = array_merge([$default_langcode], array_diff($this->langcodes, [$default_langcode]));
 
       foreach ($langcodes as $langcode) {
         // Ensure we have a predictable result order.
         $this->values[$i][$langcode] = $i . '-' . $langcode . '-' . $this->randomMachineName();
 
         if ($langcode != $default_langcode) {
-          $node->addTranslation($langcode, array('title' => $this->values[$i][$langcode]));
+          $node->addTranslation($langcode, ['title' => $this->values[$i][$langcode]]);
         }
         else {
           $node->setTitle($this->values[$i][$langcode]);
@@ -121,7 +121,7 @@ public function testFieldRenderers() {
    *   node.
    */
   protected function checkLanguageRenderers($display, $values) {
-    $expected = array(
+    $expected = [
       $values[0]['en'],
       $values[0]['en'],
       $values[0]['en'],
@@ -131,10 +131,10 @@ protected function checkLanguageRenderers($display, $values) {
       $values[2]['en'],
       $values[2]['en'],
       $values[2]['en'],
-    );
+    ];
     $this->assertTranslations($display, '***LANGUAGE_language_content***', $expected, 'The current language renderer behaves as expected.');
 
-    $expected = array(
+    $expected = [
       $values[0]['en'],
       $values[0]['en'],
       $values[0]['en'],
@@ -144,10 +144,10 @@ protected function checkLanguageRenderers($display, $values) {
       $values[2]['l1'],
       $values[2]['l1'],
       $values[2]['l1'],
-    );
+    ];
     $this->assertTranslations($display, '***LANGUAGE_entity_default***', $expected, 'The default language renderer behaves as expected.');
 
-    $expected = array(
+    $expected = [
       $values[0]['en'],
       $values[0]['l0'],
       $values[0]['l1'],
@@ -157,10 +157,10 @@ protected function checkLanguageRenderers($display, $values) {
       $values[2]['en'],
       $values[2]['l0'],
       $values[2]['l1'],
-    );
+    ];
     $this->assertTranslations($display, '***LANGUAGE_entity_translation***', $expected, 'The translation language renderer behaves as expected.');
 
-    $expected = array(
+    $expected = [
       $values[0][$this->langcodes[0]],
       $values[0][$this->langcodes[0]],
       $values[0][$this->langcodes[0]],
@@ -170,10 +170,10 @@ protected function checkLanguageRenderers($display, $values) {
       $values[2][$this->langcodes[0]],
       $values[2][$this->langcodes[0]],
       $values[2][$this->langcodes[0]],
-    );
+    ];
     $this->assertTranslations($display, '***LANGUAGE_site_default***', $expected, 'The site default language renderer behaves as expected.');
 
-    $expected = array(
+    $expected = [
       $values[0]['l0'],
       $values[0]['l0'],
       $values[0]['l0'],
@@ -183,7 +183,7 @@ protected function checkLanguageRenderers($display, $values) {
       $values[2]['l0'],
       $values[2]['l0'],
       $values[2]['l0'],
-    );
+    ];
     $this->assertTranslations($display, 'l0', $expected, 'The language specific renderer behaves as expected.');
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Entity/ViewEntityDependenciesTest.php b/core/modules/views/tests/src/Kernel/Entity/ViewEntityDependenciesTest.php
index f97659a..4929c7e 100644
--- a/core/modules/views/tests/src/Kernel/Entity/ViewEntityDependenciesTest.php
+++ b/core/modules/views/tests/src/Kernel/Entity/ViewEntityDependenciesTest.php
@@ -40,14 +40,14 @@ protected function setUp($import_test_views = TRUE) {
 
     // Install the necessary dependencies for node type creation to work.
     $this->installEntitySchema('node');
-    $this->installConfig(array('field', 'node'));
+    $this->installConfig(['field', 'node']);
 
-    $comment_type = CommentType::create(array(
+    $comment_type = CommentType::create([
       'id' => 'comment',
       'label' => 'Comment settings',
       'description' => 'Comment settings',
       'target_entity_type_id' => 'node',
-    ));
+    ]);
     $comment_type->save();
 
     $content_type = NodeType::create([
@@ -55,29 +55,29 @@ protected function setUp($import_test_views = TRUE) {
       'name' => $this->randomString(),
     ]);
     $content_type->save();
-    $field_storage = FieldStorageConfig::create(array(
+    $field_storage = FieldStorageConfig::create([
       'field_name' => Unicode::strtolower($this->randomMachineName()),
       'entity_type' => 'node',
       'type' => 'comment',
-    ));
+    ]);
     $field_storage->save();
     FieldConfig::create([
       'field_storage' => $field_storage,
       'bundle' => $content_type->id(),
       'label' => $this->randomMachineName() . '_label',
       'description' => $this->randomMachineName() . '_description',
-      'settings' => array(
+      'settings' => [
         'comment_type' => $comment_type->id(),
-      ),
+      ],
     ])->save();
     FieldConfig::create([
       'field_storage' => FieldStorageConfig::loadByName('node', 'body'),
       'bundle' => $content_type->id(),
       'label' => $this->randomMachineName() . '_body',
-      'settings' => array('display_summary' => TRUE),
+      'settings' => ['display_summary' => TRUE],
     ])->save();
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
   }
 
   /**
diff --git a/core/modules/views/tests/src/Kernel/EventSubscriber/ViewsEntitySchemaSubscriberIntegrationTest.php b/core/modules/views/tests/src/Kernel/EventSubscriber/ViewsEntitySchemaSubscriberIntegrationTest.php
index 3c46c9e..bf98272 100644
--- a/core/modules/views/tests/src/Kernel/EventSubscriber/ViewsEntitySchemaSubscriberIntegrationTest.php
+++ b/core/modules/views/tests/src/Kernel/EventSubscriber/ViewsEntitySchemaSubscriberIntegrationTest.php
@@ -79,7 +79,7 @@ protected function setUp($import_test_views = TRUE) {
 
     // Install every entity type's schema that wasn't installed in the parent
     // method.
-    foreach (array_diff_key($this->entityManager->getDefinitions(), array_flip(array('user', 'entity_test'))) as $entity_type_id => $entity_type) {
+    foreach (array_diff_key($this->entityManager->getDefinitions(), array_flip(['user', 'entity_test'])) as $entity_type_id => $entity_type) {
       $this->installEntitySchema($entity_type_id);
     }
   }
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaEntityTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaEntityTest.php
index ebf9e05..a95214a 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaEntityTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaEntityTest.php
@@ -31,7 +31,7 @@ class AreaEntityTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_area');
+  public static $testViews = ['test_entity_area'];
 
   /**
    * {@inheritdoc}
@@ -70,9 +70,9 @@ public function testEntityAreaData() {
 
     // Test that all expected entity types have data.
     foreach (array_keys($expected_entities) as $entity) {
-      $this->assertTrue(!empty($data['entity_' . $entity]), format_string('Views entity area data found for @entity', array('@entity' => $entity)));
+      $this->assertTrue(!empty($data['entity_' . $entity]), format_string('Views entity area data found for @entity', ['@entity' => $entity]));
       // Test that entity_type is set correctly in the area data.
-      $this->assertEqual($entity, $data['entity_' . $entity]['area']['entity_type'], format_string('Correct entity_type set for @entity', array('@entity' => $entity)));
+      $this->assertEqual($entity, $data['entity_' . $entity]['area']['entity_type'], format_string('Correct entity_type set for @entity', ['@entity' => $entity]));
     }
 
     $expected_entities = array_filter($entity_types, function (EntityTypeInterface $type) {
@@ -81,7 +81,7 @@ public function testEntityAreaData() {
 
     // Test that no configuration entity types have data.
     foreach (array_keys($expected_entities) as $entity) {
-      $this->assertTrue(empty($data['entity_' . $entity]), format_string('Views config entity area data not found for @entity', array('@entity' => $entity)));
+      $this->assertTrue(empty($data['entity_' . $entity]), format_string('Views config entity area data not found for @entity', ['@entity' => $entity]));
     }
   }
 
@@ -90,10 +90,10 @@ public function testEntityAreaData() {
    */
   public function testEntityArea() {
     /** @var \Drupal\Core\Entity\EntityInterface[] $entities */
-    $entities = array();
+    $entities = [];
     for ($i = 0; $i < 3; $i++) {
       $random_label = $this->randomMachineName();
-      $data = array('bundle' => 'entity_test', 'name' => $random_label);
+      $data = ['bundle' => 'entity_test', 'name' => $random_label];
       $entity_test = $this->container->get('entity.manager')
         ->getStorage('entity_test')
         ->create($data);
@@ -137,7 +137,7 @@ public function doTestRender($entities) {
     $this->assertTrue(strpos(trim((string) $result[0]), $entities[1]->label()) !== FALSE, 'The rendered entity appears in the footer of the view.');
     $this->assertTrue(strpos(trim((string) $result[0]), 'full') !== FALSE, 'The rendered entity appeared in the right view mode.');
 
-    $preview = $view->preview('default', array($entities[1]->id()));
+    $preview = $view->preview('default', [$entities[1]->id()]);
     $this->setRawContent($renderer->renderRoot($preview));
 
     $result = $this->xpath($header_xpath);
@@ -159,7 +159,7 @@ public function doTestRender($entities) {
     $item['view_mode'] = 'test';
     $view->setHandler('default', 'header', 'entity_entity_test', $item);
 
-    $preview = $view->preview('default', array($entities[1]->id()));
+    $preview = $view->preview('default', [$entities[1]->id()]);
     $this->setRawContent($renderer->renderRoot($preview));
     $view_class = 'js-view-dom-id-' . $view->dom_id;
     $result = $this->xpath('//div[@class = "' . $view_class . '"]/header[1]');
@@ -168,14 +168,14 @@ public function doTestRender($entities) {
 
     // Test entity access.
     $view = Views::getView('test_entity_area');
-    $preview = $view->preview('default', array($entities[2]->id()));
+    $preview = $view->preview('default', [$entities[2]->id()]);
     $this->setRawContent($renderer->renderRoot($preview));
     $view_class = 'js-view-dom-id-' . $view->dom_id;
     $result = $this->xpath('//div[@class = "' . $view_class . '"]/footer[1]');
     $this->assertTrue(strpos($result[0], $entities[2]->label()) === FALSE, 'The rendered entity does not appear in the footer of the view.');
 
     // Test the available view mode options.
-    $form = array();
+    $form = [];
     $form_state = (new FormState())
       ->set('type', 'header');
     $view->display_handler->getHandler('header', 'entity_entity_test')->buildOptionsForm($form, $form_state);
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaMessagesTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaMessagesTest.php
index 7e1fbb9..476551c 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaMessagesTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaMessagesTest.php
@@ -18,7 +18,7 @@ class AreaMessagesTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_area_messages');
+  public static $testViews = ['test_area_messages'];
 
   /**
    * Tests the messages area handler.
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaOrderTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaOrderTest.php
index 9ade514..84a66ab 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaOrderTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaOrderTest.php
@@ -21,14 +21,14 @@ class AreaOrderTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'block');
+  public static $modules = ['user', 'block'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_area_order');
+  public static $testViews = ['test_area_order'];
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaTextTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaTextTest.php
index 5ccacd8..2feaaf1 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaTextTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaTextTest.php
@@ -13,19 +13,19 @@
  */
 class AreaTextTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system', 'user', 'filter');
+  public static $modules = ['system', 'user', 'filter'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
-    $this->installConfig(array('system', 'filter'));
+    $this->installConfig(['system', 'filter']);
     $this->installEntitySchema('user');
   }
 
@@ -37,16 +37,16 @@ public function testAreaText() {
 
     // add a text header
     $string = $this->randomMachineName();
-    $view->displayHandlers->get('default')->overrideOption('header', array(
-      'area' => array(
+    $view->displayHandlers->get('default')->overrideOption('header', [
+      'area' => [
         'id' => 'area',
         'table' => 'views',
         'field' => 'area',
-        'content' => array(
+        'content' => [
           'value' => $string,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
@@ -60,7 +60,7 @@ public function testAreaText() {
     $this->assertEqual(check_markup($string), $renderer->renderRoot($build), 'Existent format should return something');
 
     // Empty results, and it shouldn't be displayed .
-    $this->assertEqual(array(), $view->display_handler->handlers['header']['area']->render(TRUE), 'No result should lead to no header');
+    $this->assertEqual([], $view->display_handler->handlers['header']['area']->render(TRUE), 'No result should lead to no header');
     // Empty results, and it should be displayed.
     $view->display_handler->handlers['header']['area']->options['empty'] = TRUE;
     $build = $view->display_handler->handlers['header']['area']->render(TRUE);
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaTitleTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaTitleTest.php
index f2a4151..8c16b63 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaTitleTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaTitleTest.php
@@ -18,7 +18,7 @@ class AreaTitleTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_area_title');
+  public static $testViews = ['test_area_title'];
 
   /**
    * Tests the title area handler.
@@ -34,7 +34,7 @@ public function testTitleText() {
 
     $view->setDisplay('default');
     $this->executeView($view);
-    $view->result = array();
+    $view->result = [];
     $view->render();
     $this->assertEqual($view->getTitle(), 'test_title_empty', 'The title area should override the title if the result is empty.');
     $view->destroy();
@@ -47,7 +47,7 @@ public function testTitleText() {
 
     $view->setDisplay('page_1');
     $this->executeView($view);
-    $view->result = array();
+    $view->result = [];
     $view->render();
     $this->assertEqual($view->getTitle(), 'test_title_empty', 'The title area should override the title if the result is empty.');
     $view->destroy();
diff --git a/core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php b/core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php
index 89fe49e..6eaba13 100644
--- a/core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php
@@ -18,14 +18,14 @@ class AreaViewTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_simple_argument', 'test_area_view');
+  public static $testViews = ['test_simple_argument', 'test_area_view'];
 
   /**
    * Tests the view area handler.
@@ -44,7 +44,7 @@ public function testViewArea() {
     $this->assertTrue(strpos($output, 'js-view-dom-id-' . $view->dom_id) !== FALSE, 'The test view is correctly embedded.');
     $view->destroy();
 
-    $view->setArguments(array(27));
+    $view->setArguments([27]);
     $this->executeView($view);
     $output = $view->render();
     $output = $renderer->renderRoot($output);
diff --git a/core/modules/views/tests/src/Kernel/Handler/ArgumentDateTest.php b/core/modules/views/tests/src/Kernel/Handler/ArgumentDateTest.php
index 527bd72..db26e11 100644
--- a/core/modules/views/tests/src/Kernel/Handler/ArgumentDateTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/ArgumentDateTest.php
@@ -18,16 +18,16 @@ class ArgumentDateTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_argument_date');
+  public static $testViews = ['test_argument_date'];
 
   /**
    * Stores the column map for this testCase.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'id' => 'id',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -35,14 +35,14 @@ class ArgumentDateTest extends ViewsKernelTestBase {
   public function viewsData() {
     $data = parent::viewsData();
 
-    $date_plugins = array(
+    $date_plugins = [
       'date_fulldate',
       'date_day',
       'date_month',
       'date_week',
       'date_year',
       'date_year_month',
-    );
+    ];
     foreach ($date_plugins as $plugin_id) {
       $data['views_test_data'][$plugin_id] = $data['views_test_data']['created'];
       $data['views_test_data'][$plugin_id]['real field'] = 'created';
@@ -59,25 +59,25 @@ public function viewsData() {
   public function testCreatedFullDateHandler() {
     $view = Views::getView('test_argument_date');
     $view->setDisplay('default');
-    $this->executeView($view, array('20000102'));
-    $expected = array();
-    $expected[] = array('id' => 2);
+    $this->executeView($view, ['20000102']);
+    $expected = [];
+    $expected[] = ['id' => 2];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('default');
-    $this->executeView($view, array('20000101'));
-    $expected = array();
-    $expected[] = array('id' => 1);
-    $expected[] = array('id' => 3);
-    $expected[] = array('id' => 4);
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['20000101']);
+    $expected = [];
+    $expected[] = ['id' => 1];
+    $expected[] = ['id' => 3];
+    $expected[] = ['id' => 4];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('default');
-    $this->executeView($view, array('20001023'));
-    $expected = array();
+    $this->executeView($view, ['20001023']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
   }
@@ -90,25 +90,25 @@ public function testCreatedFullDateHandler() {
   public function testDayHandler() {
     $view = Views::getView('test_argument_date');
     $view->setDisplay('embed_1');
-    $this->executeView($view, array('02'));
-    $expected = array();
-    $expected[] = array('id' => 2);
+    $this->executeView($view, ['02']);
+    $expected = [];
+    $expected[] = ['id' => 2];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_1');
-    $this->executeView($view, array('01'));
-    $expected = array();
-    $expected[] = array('id' => 1);
-    $expected[] = array('id' => 3);
-    $expected[] = array('id' => 4);
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['01']);
+    $expected = [];
+    $expected[] = ['id' => 1];
+    $expected[] = ['id' => 3];
+    $expected[] = ['id' => 4];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_1');
-    $this->executeView($view, array('23'));
-    $expected = array();
+    $this->executeView($view, ['23']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
   }
 
@@ -120,19 +120,19 @@ public function testDayHandler() {
   public function testMonthHandler() {
     $view = Views::getView('test_argument_date');
     $view->setDisplay('embed_2');
-    $this->executeView($view, array('01'));
-    $expected = array();
-    $expected[] = array('id' => 1);
-    $expected[] = array('id' => 2);
-    $expected[] = array('id' => 3);
-    $expected[] = array('id' => 4);
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['01']);
+    $expected = [];
+    $expected[] = ['id' => 1];
+    $expected[] = ['id' => 2];
+    $expected[] = ['id' => 3];
+    $expected[] = ['id' => 4];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_2');
-    $this->executeView($view, array('12'));
-    $expected = array();
+    $this->executeView($view, ['12']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
   }
 
@@ -143,27 +143,27 @@ public function testMonthHandler() {
    */
   public function testWeekHandler() {
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 9, 26, 2008)))
+      ->fields(['created' => gmmktime(0, 0, 0, 9, 26, 2008)])
       ->condition('id', 1)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 2, 29, 2004)))
+      ->fields(['created' => gmmktime(0, 0, 0, 2, 29, 2004)])
       ->condition('id', 2)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 1, 2000)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 1, 2000)])
       ->condition('id', 3)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 10, 2000)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 10, 2000)])
       ->condition('id', 4)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 2, 1, 2000)))
+      ->fields(['created' => gmmktime(0, 0, 0, 2, 1, 2000)])
       ->condition('id', 5)
       ->execute();
 
@@ -171,46 +171,46 @@ public function testWeekHandler() {
     $view->setDisplay('embed_3');
     // Check the week calculation for a leap year.
     // @see http://wikipedia.org/wiki/ISO_week_date#Calculation
-    $this->executeView($view, array('39'));
-    $expected = array();
-    $expected[] = array('id' => 1);
+    $this->executeView($view, ['39']);
+    $expected = [];
+    $expected[] = ['id' => 1];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_3');
     // Check the week calculation for the 29th of February in a leap year.
     // @see http://wikipedia.org/wiki/ISO_week_date#Calculation
-    $this->executeView($view, array('09'));
-    $expected = array();
-    $expected[] = array('id' => 2);
+    $this->executeView($view, ['09']);
+    $expected = [];
+    $expected[] = ['id' => 2];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_3');
     // The first jan 2000 was still in the last week of the previous year.
-    $this->executeView($view, array('52'));
-    $expected = array();
-    $expected[] = array('id' => 3);
+    $this->executeView($view, ['52']);
+    $expected = [];
+    $expected[] = ['id' => 3];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_3');
-    $this->executeView($view, array('02'));
-    $expected = array();
-    $expected[] = array('id' => 4);
+    $this->executeView($view, ['02']);
+    $expected = [];
+    $expected[] = ['id' => 4];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_3');
-    $this->executeView($view, array('05'));
-    $expected = array();
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['05']);
+    $expected = [];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_3');
-    $this->executeView($view, array('23'));
-    $expected = array();
+    $this->executeView($view, ['23']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
   }
 
@@ -221,47 +221,47 @@ public function testWeekHandler() {
    */
   public function testYearHandler() {
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 1, 2001)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 1, 2001)])
       ->condition('id', 3)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 1, 2002)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 1, 2002)])
       ->condition('id', 4)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 1, 2002)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 1, 2002)])
       ->condition('id', 5)
       ->execute();
 
     $view = Views::getView('test_argument_date');
     $view->setDisplay('embed_4');
-    $this->executeView($view, array('2000'));
-    $expected = array();
-    $expected[] = array('id' => 1);
-    $expected[] = array('id' => 2);
+    $this->executeView($view, ['2000']);
+    $expected = [];
+    $expected[] = ['id' => 1];
+    $expected[] = ['id' => 2];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_4');
-    $this->executeView($view, array('2001'));
-    $expected = array();
-    $expected[] = array('id' => 3);
+    $this->executeView($view, ['2001']);
+    $expected = [];
+    $expected[] = ['id' => 3];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_4');
-    $this->executeView($view, array('2002'));
-    $expected = array();
-    $expected[] = array('id' => 4);
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['2002']);
+    $expected = [];
+    $expected[] = ['id' => 4];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_4');
-    $this->executeView($view, array('23'));
-    $expected = array();
+    $this->executeView($view, ['23']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
   }
 
@@ -272,47 +272,47 @@ public function testYearHandler() {
    */
   public function testYearMonthHandler() {
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 1, 1, 2001)))
+      ->fields(['created' => gmmktime(0, 0, 0, 1, 1, 2001)])
       ->condition('id', 3)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 4, 1, 2001)))
+      ->fields(['created' => gmmktime(0, 0, 0, 4, 1, 2001)])
       ->condition('id', 4)
       ->execute();
 
     $this->container->get('database')->update('views_test_data')
-      ->fields(array('created' => gmmktime(0, 0, 0, 4, 1, 2001)))
+      ->fields(['created' => gmmktime(0, 0, 0, 4, 1, 2001)])
       ->condition('id', 5)
       ->execute();
 
     $view = Views::getView('test_argument_date');
     $view->setDisplay('embed_5');
-    $this->executeView($view, array('200001'));
-    $expected = array();
-    $expected[] = array('id' => 1);
-    $expected[] = array('id' => 2);
+    $this->executeView($view, ['200001']);
+    $expected = [];
+    $expected[] = ['id' => 1];
+    $expected[] = ['id' => 2];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_5');
-    $this->executeView($view, array('200101'));
-    $expected = array();
-    $expected[] = array('id' => 3);
+    $this->executeView($view, ['200101']);
+    $expected = [];
+    $expected[] = ['id' => 3];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_5');
-    $this->executeView($view, array('200104'));
-    $expected = array();
-    $expected[] = array('id' => 4);
-    $expected[] = array('id' => 5);
+    $this->executeView($view, ['200104']);
+    $expected = [];
+    $expected[] = ['id' => 4];
+    $expected[] = ['id' => 5];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
     $view->destroy();
 
     $view->setDisplay('embed_5');
-    $this->executeView($view, array('201301'));
-    $expected = array();
+    $this->executeView($view, ['201301']);
+    $expected = [];
     $this->assertIdenticalResultset($view, $expected, $this->columnMap);
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/ArgumentNullTest.php b/core/modules/views/tests/src/Kernel/Handler/ArgumentNullTest.php
index e90ec85..99fa7c8 100644
--- a/core/modules/views/tests/src/Kernel/Handler/ArgumentNullTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/ArgumentNullTest.php
@@ -17,7 +17,7 @@ class ArgumentNullTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -32,13 +32,13 @@ public function testAreaText() {
     $view->setDisplay();
 
     // Add a null argument.
-    $view->displayHandlers->get('default')->overrideOption('arguments', array(
-      'null' => array(
+    $view->displayHandlers->get('default')->overrideOption('arguments', [
+      'null' => [
         'id' => 'null',
         'table' => 'views',
         'field' => 'null',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -57,15 +57,15 @@ public function testAreaText() {
     $view->setDisplay();
 
     // Add a argument, which has null as handler.
-    $view->displayHandlers->get('default')->overrideOption('arguments', array(
-      'id' => array(
+    $view->displayHandlers->get('default')->overrideOption('arguments', [
+      'id' => [
         'id' => 'id',
         'table' => 'views_test_data',
         'field' => 'id',
-      ),
-    ));
+      ],
+    ]);
 
-    $this->executeView($view, array(26));
+    $this->executeView($view, [26]);
 
     // The argument should be ignored, so every result should return.
     $this->assertEqual(5, count($view->result));
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldBooleanTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldBooleanTest.php
index 1a5551c..01f5166 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldBooleanTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldBooleanTest.php
@@ -17,7 +17,7 @@ class FieldBooleanTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   function dataSet() {
     // Use default dataset but remove the age from john and paul
@@ -37,14 +37,14 @@ public function testFieldBoolean() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -70,7 +70,7 @@ public function testFieldBoolean() {
     $this->assertEqual('✔', $view->field['age']->advancedRender($view->result[1]));
 
     // Set a custom output format.
-    $view->field['age']->formats['test'] = array(t('Test-True'), t('Test-False'));
+    $view->field['age']->formats['test'] = [t('Test-True'), t('Test-False')];
     $view->field['age']->options['type'] = 'test';
     $this->assertEqual(t('Test-False'), $view->field['age']->advancedRender($view->result[0]));
     $this->assertEqual(t('Test-True'), $view->field['age']->advancedRender($view->result[1]));
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldCounterTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldCounterTest.php
index 12f68ed..49d914e 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldCounterTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldCounterTest.php
@@ -17,71 +17,71 @@ class FieldCounterTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   function testSimple() {
     $view = Views::getView('test_view');
     $view->setDisplay();
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'counter' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'counter' => [
         'id' => 'counter',
         'table' => 'views',
         'field' => 'counter',
         'relationship' => 'none',
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
     $view->preview();
 
     $counter = $view->style_plugin->getField(0, 'counter');
-    $this->assertEqual($counter, '1', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => 1, '@counter' => $counter)));
+    $this->assertEqual($counter, '1', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => 1, '@counter' => $counter]));
     $counter = $view->style_plugin->getField(1, 'counter');
-    $this->assertEqual($counter, '2', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => 2, '@counter' => $counter)));
+    $this->assertEqual($counter, '2', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => 2, '@counter' => $counter]));
     $counter = $view->style_plugin->getField(2, 'counter');
-    $this->assertEqual($counter, '3', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => 3, '@counter' => $counter)));
+    $this->assertEqual($counter, '3', format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => 3, '@counter' => $counter]));
     $view->destroy();
     $view->storage->invalidateCaches();
 
     $view->setDisplay();
     $rand_start = rand(5, 10);
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'counter' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'counter' => [
         'id' => 'counter',
         'table' => 'views',
         'field' => 'counter',
         'relationship' => 'none',
         'counter_start' => $rand_start
-      ),
-      'name' => array(
+      ],
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
     $view->preview();
 
     $counter = $view->style_plugin->getField(0, 'counter');
     $expected_number = 0 + $rand_start;
-    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => $expected_number, '@counter' => $counter)));
+    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => $expected_number, '@counter' => $counter]));
     $counter = $view->style_plugin->getField(1, 'counter');
     $expected_number = 1 + $rand_start;
-    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => $expected_number, '@counter' => $counter)));
+    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => $expected_number, '@counter' => $counter]));
     $counter = $view->style_plugin->getField(2, 'counter');
     $expected_number = 2 + $rand_start;
-    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', array('@expected' => $expected_number, '@counter' => $counter)));
+    $this->assertEqual($counter, (string) $expected_number, format_string('Make sure the expected number (@expected) patches with the rendered number (@counter)', ['@expected' => $expected_number, '@counter' => $counter]));
   }
 
   /**
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldCustomTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldCustomTest.php
index af7bc1b..fb6e3c4 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldCustomTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldCustomTest.php
@@ -18,7 +18,7 @@ class FieldCustomTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * {@inheritdoc}
@@ -38,17 +38,17 @@ public function testFieldCustom() {
 
     // Alter the text of the field to a random string.
     $random = '<div>' . $this->randomMachineName() . '</div>';
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-        'alter' => array(
+        'alter' => [
           'text' => $random,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -98,17 +98,17 @@ public function testCustomFieldXss() {
 
     // Alter the text of the field to include XSS.
     $text = '<script>alert("kittens")</script>';
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-        'alter' => array(
+        'alter' => [
           'text' => $text,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
     $this->executeView($view);
     $this->assertEqual(Xss::filter($text), $view->style_plugin->getField(0, 'name'));
   }
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldDateTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldDateTest.php
index cb30bf7..833b5c9 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldDateTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldDateTest.php
@@ -17,20 +17,20 @@ class FieldDateTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * {@inheritdoc}
    */
   public function schemaDefinition() {
     $schema = parent::schemaDefinition();
-    $schema['views_test_data']['fields']['destroyed'] = array(
+    $schema['views_test_data']['fields']['destroyed'] = [
       'description' => "The destruction date of this record",
       'type' => 'int',
       'unsigned' => TRUE,
       'not null' => FALSE,
       'default' => 0,
-    );
+    ];
     return $schema;
   }
 
@@ -40,14 +40,14 @@ public function schemaDefinition() {
   public function viewsData() {
     $data = parent::viewsData();
     $data['views_test_data']['created']['field']['id'] = 'date';
-    $data['views_test_data']['destroyed'] = array(
+    $data['views_test_data']['destroyed'] = [
       'title' => 'Destroyed',
       'help' => 'Date in future this will be destroyed.',
-      'field' => array('id' => 'date'),
-      'argument' => array('id' => 'date'),
-      'filter' => array('id' => 'date'),
-      'sort' => array('id' => 'date'),
-    );
+      'field' => ['id' => 'date'],
+      'argument' => ['id' => 'date'],
+      'filter' => ['id' => 'date'],
+      'sort' => ['id' => 'date'],
+    ];
     return $data;
   }
 
@@ -69,36 +69,36 @@ public function testFieldDate() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'created' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'created' => [
         'id' => 'created',
         'table' => 'views_test_data',
         'field' => 'created',
         'relationship' => 'none',
         // ISO 8601 format, see http://php.net/manual/function.date.php
         'custom_date_format' => 'c',
-      ),
-      'destroyed' => array(
+      ],
+      'destroyed' => [
         'id' => 'destroyed',
         'table' => 'views_test_data',
         'field' => 'destroyed',
         'relationship' => 'none',
         'custom_date_format' => 'c',
-      ),
-    ));
+      ],
+    ]);
     $time = gmmktime(0, 0, 0, 1, 1, 2000);
 
     $this->executeView($view);
 
-    $timezones = array(
+    $timezones = [
       NULL,
       'UTC',
       'America/New_York',
-    );
+    ];
 
     // Check each date/time in various timezones.
     foreach ($timezones as $timezone) {
-      $dates = array(
+      $dates = [
         'short' => format_date($time, 'short', '', $timezone),
         'medium' => format_date($time, 'medium', '', $timezone),
         'long' => format_date($time, 'long', '', $timezone),
@@ -111,30 +111,30 @@ public function testFieldDate() {
         'html_week' => format_date($time, 'html_week', '', $timezone),
         'html_year' => format_date($time, 'html_year', '', $timezone),
         'html_yearless_date' => format_date($time, 'html_yearless_date', '', $timezone),
-      );
+      ];
       $this->assertRenderedDatesEqual($view, $dates, $timezone);
     }
 
     // Check times in the past.
     $time_since = $this->container->get('date.formatter')->formatTimeDiffSince($time);
-    $intervals = array(
+    $intervals = [
       'raw time ago' => $time_since,
-      'time ago' => t('%time ago', array('%time' => $time_since)),
+      'time ago' => t('%time ago', ['%time' => $time_since]),
       'raw time span' => $time_since,
       'inverse time span' => "-$time_since",
-      'time span' => t('%time ago', array('%time' => $time_since)),
-    );
+      'time span' => t('%time ago', ['%time' => $time_since]),
+    ];
     $this->assertRenderedDatesEqual($view, $intervals);
 
     // Check times in the future.
     $time = gmmktime(0, 0, 0, 1, 1, 2050);
     $formatted = $this->container->get('date.formatter')->formatTimeDiffUntil($time);
-    $intervals = array(
+    $intervals = [
       'raw time span' => "-$formatted",
-      'time span' => t('%time hence', array(
+      'time span' => t('%time hence', [
         '%time' => $formatted,
-      )),
-    );
+      ]),
+    ];
     $this->assertRenderedFutureDatesEqual($view, $intervals);
   }
 
@@ -151,10 +151,10 @@ public function testFieldDate() {
   protected function assertRenderedDatesEqual($view, $map, $timezone = NULL) {
     foreach ($map as $date_format => $expected_result) {
       $view->field['created']->options['date_format'] = $date_format;
-      $t_args = array(
+      $t_args = [
         '%value' => $expected_result,
         '%format' => $date_format,
-      );
+      ];
       if (isset($timezone)) {
         $t_args['%timezone'] = $timezone;
         $message = t('Value %value in %format format for timezone %timezone matches.', $t_args);
@@ -180,11 +180,11 @@ protected function assertRenderedFutureDatesEqual($view, $map) {
     foreach ($map as $format => $result) {
       $view->field['destroyed']->options['date_format'] = $format;
       $view_result = $view->field['destroyed']->advancedRender($view->result[0]);
-      $t_args = array(
+      $t_args = [
         '%value' => $result,
         '%format' => $format,
         '%actual' => $view_result,
-      );
+      ];
       $message = t('Value %value in %format matches %actual', $t_args);
       $this->assertEqual($view_result, $result, $message);
     }
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldEntityLinkTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldEntityLinkTest.php
index 8f53f6a..874f03d 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldEntityLinkTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldEntityLinkTest.php
@@ -23,14 +23,14 @@ class FieldEntityLinkTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_test_link');
+  public static $testViews = ['test_entity_test_link'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('user', 'entity_test');
+  public static $modules = ['user', 'entity_test'];
 
   /**
    * An admin user account.
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldFieldTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldFieldTest.php
index c82fc69..1d304f5 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldFieldTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldFieldTest.php
@@ -70,7 +70,7 @@ protected function setUp($import_test_views = TRUE) {
     $this->installEntitySchema('entity_test');
     $this->installEntitySchema('entity_test_rev');
 
-    ViewTestData::createTestViews(get_class($this), array('views_test_config'));
+    ViewTestData::createTestViews(get_class($this), ['views_test_config']);
 
     // Bypass any field access.
     $this->adminUser = User::create(['name' => $this->randomString()]);
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldFileSizeTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldFileSizeTest.php
index 2f60e34..7af6442 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldFileSizeTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldFileSizeTest.php
@@ -18,7 +18,7 @@ class FieldFileSizeTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   function dataSet() {
     $data = parent::dataSet();
@@ -41,13 +41,13 @@ public function testFieldFileSize() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldKernelTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldKernelTest.php
index be8a4f1..b5b04b0 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldKernelTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldKernelTest.php
@@ -15,23 +15,23 @@
  */
 class FieldKernelTest extends ViewsKernelTestBase {
 
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_field_tokens', 'test_field_argument_tokens', 'test_field_output');
+  public static $testViews = ['test_view', 'test_field_tokens', 'test_field_argument_tokens', 'test_field_output'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -73,7 +73,7 @@ public function testQuery() {
     $id_field = $view->field['id'];
     $id_field->additional_fields['job'] = 'job';
     // Choose also a field alias key which doesn't match to the table field.
-    $id_field->additional_fields['created_test'] = array('table' => 'views_test_data', 'field' => 'created');
+    $id_field->additional_fields['created_test'] = ['table' => 'views_test_data', 'field' => 'created'];
     $view->build();
 
     // Make sure the field aliases have the expected value.
@@ -778,10 +778,10 @@ function testIsValueEmpty() {
    */
   public function testClickSortable() {
     // Test that clickSortable is TRUE by default.
-    $item = array(
+    $item = [
       'table' => 'views_test_data',
       'field' => 'name',
-    );
+    ];
     $plugin = $this->container->get('plugin.manager.views.field')->getHandler($item);
     $this->assertTrue($plugin->clickSortable(), 'TRUE as a default value is correct.');
 
@@ -801,7 +801,7 @@ public function testClickSortable() {
    */
   public function testTrimText() {
     // Test unicode. See https://www.drupal.org/node/513396#comment-2839416.
-    $text = array(
+    $text = [
       'Tuy nhiên, những hi vọng',
       'Giả sử chúng tôi có 3 Apple',
       'siêu nhỏ này là bộ xử lý',
@@ -810,12 +810,12 @@ public function testTrimText() {
       'của hãng bao gồm ba dòng',
       'сд асд асд ас',
       'асд асд асд ас'
-    );
+    ];
     // Just test maxlength without word boundary.
-    $alter = array(
+    $alter = [
       'max_length' => 10,
-    );
-    $expect = array(
+    ];
+    $expect = [
       'Tuy nhiên,',
       'Giả sử chú',
       'siêu nhỏ n',
@@ -824,7 +824,7 @@ public function testTrimText() {
       'của hãng b',
       'сд асд асд',
       'асд асд ас',
-    );
+    ];
 
     foreach ($text as $key => $line) {
       $result_text = FieldPluginBase::trimText($alter, $line);
@@ -833,7 +833,7 @@ public function testTrimText() {
 
     // Test also word_boundary
     $alter['word_boundary'] = TRUE;
-    $expect = array(
+    $expect = [
       'Tuy nhiên',
       'Giả sử',
       'siêu nhỏ',
@@ -842,7 +842,7 @@ public function testTrimText() {
       'của hãng',
       'сд асд',
       'асд асд',
-    );
+    ];
 
     foreach ($text as $key => $line) {
       $result_text = FieldPluginBase::trimText($alter, $line);
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldUrlTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldUrlTest.php
index bfb764d..828fdb4 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldUrlTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldUrlTest.php
@@ -13,14 +13,14 @@
  */
 class FieldUrlTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -32,15 +32,15 @@ public function testFieldUrl() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'display_as_link' => FALSE,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -50,14 +50,14 @@ public function testFieldUrl() {
     $view->destroy();
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorStringTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorStringTest.php
index 5bd2157..325da51 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorStringTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorStringTest.php
@@ -19,23 +19,23 @@ class FilterBooleanOperatorStringTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_id' => 'id',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -43,13 +43,13 @@ class FilterBooleanOperatorStringTest extends ViewsKernelTestBase {
   protected function schemaDefinition() {
     $schema = parent::schemaDefinition();
 
-    $schema['views_test_data']['fields']['status'] = array(
+    $schema['views_test_data']['fields']['status'] = [
       'description' => 'The status of this record',
       'type' => 'varchar',
       'length' => 255,
       'not null' => TRUE,
       'default' => '',
-    );
+    ];
 
     return $schema;
   }
@@ -91,20 +91,20 @@ public function testFilterBooleanOperatorString() {
     $view->setDisplay();
 
     // Add a the status boolean filter.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'status' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'status' => [
         'id' => 'status',
         'field' => 'status',
         'table' => 'views_test_data',
         'value' => 0,
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 2),
-      array('id' => 4),
-    );
+    $expected_result = [
+      ['id' => 2],
+      ['id' => 4],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -113,21 +113,21 @@ public function testFilterBooleanOperatorString() {
     $view->setDisplay();
 
     // Add the status boolean filter.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'status' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'status' => [
         'id' => 'status',
         'field' => 'status',
         'table' => 'views_test_data',
         'value' => 1,
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -140,32 +140,32 @@ public function testFilterGroupedExposed() {
     $filters = $this->getGroupedExposedFilters();
     $view = Views::getView('test_view');
 
-    $view->setExposedInput(array('status' => 1));
+    $view->setExposedInput(['status' => 1]);
     $view->setDisplay();
     $view->displayHandlers->get('default')->overrideOption('filters', $filters);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
     $view->destroy();
 
-    $view->setExposedInput(array('status' => 2));
+    $view->setExposedInput(['status' => 2]);
     $view->setDisplay();
     $view->displayHandlers->get('default')->overrideOption('filters', $filters);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 2),
-      array('id' => 4),
-    );
+    $expected_result = [
+      ['id' => 2],
+      ['id' => 4],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -178,38 +178,38 @@ public function testFilterGroupedExposed() {
    *   Returns the filter configuration for exposed filters.
    */
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'status' => array(
+    $filters = [
+      'status' => [
         'id' => 'status',
         'table' => 'views_test_data',
         'field' => 'status',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'status_op',
           'label' => 'status',
           'identifier' => 'status',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'status',
           'identifier' => 'status',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Active',
               'operator' => '=',
               'value' => '1',
-            ),
-            2 => array(
+            ],
+            2 => [
               'title' => 'Blocked',
               'operator' => '=',
               'value' => '0',
-            ),
-          ),
-        ),
-      ),
-    );
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorTest.php
index 7a88066..7cdd41f 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterBooleanOperatorTest.php
@@ -18,23 +18,23 @@ class FilterBooleanOperatorTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_id' => 'id',
-  );
+  ];
 
   /**
    * Tests the BooleanOperator filter.
@@ -44,20 +44,20 @@ public function testFilterBooleanOperator() {
     $view->setDisplay();
 
     // Add a the status boolean filter.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'status' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'status' => [
         'id' => 'status',
         'field' => 'status',
         'table' => 'views_test_data',
         'value' => 0,
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 2),
-      array('id' => 4),
-    );
+    $expected_result = [
+      ['id' => 2],
+      ['id' => 4],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -66,21 +66,21 @@ public function testFilterBooleanOperator() {
     $view->setDisplay();
 
     // Add the status boolean filter.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'status' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'status' => [
         'id' => 'status',
         'field' => 'status',
         'table' => 'views_test_data',
         'value' => 1,
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -89,22 +89,22 @@ public function testFilterBooleanOperator() {
     $view->setDisplay();
 
     // Testing the same scenario but using the reverse status and operation.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'status' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'status' => [
         'id' => 'status',
         'field' => 'status',
         'table' => 'views_test_data',
         'value' => 0,
         'operator' => '!=',
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -117,32 +117,32 @@ public function testFilterGroupedExposed() {
     $filters = $this->getGroupedExposedFilters();
     $view = Views::getView('test_view');
 
-    $view->setExposedInput(array('status' => 1));
+    $view->setExposedInput(['status' => 1]);
     $view->setDisplay();
     $view->displayHandlers->get('default')->overrideOption('filters', $filters);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
     $view->destroy();
 
-    $view->setExposedInput(array('status' => 2));
+    $view->setExposedInput(['status' => 2]);
     $view->setDisplay();
     $view->displayHandlers->get('default')->overrideOption('filters', $filters);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 2),
-      array('id' => 4),
-    );
+    $expected_result = [
+      ['id' => 2],
+      ['id' => 4],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -156,11 +156,11 @@ public function testFilterGroupedExposed() {
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array('id' => 1),
-      array('id' => 3),
-      array('id' => 5),
-    );
+    $expected_result = [
+      ['id' => 1],
+      ['id' => 3],
+      ['id' => 5],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -172,45 +172,45 @@ public function testFilterGroupedExposed() {
    * @return array
    */
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'status' => array(
+    $filters = [
+      'status' => [
         'id' => 'status',
         'table' => 'views_test_data',
         'field' => 'status',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'status_op',
           'label' => 'status',
           'identifier' => 'status',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'status',
           'identifier' => 'status',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Active',
               'operator' => '=',
               'value' => '1',
-            ),
-            2 => array(
+            ],
+            2 => [
               'title' => 'Blocked',
               'operator' => '=',
               'value' => '0',
-            ),
+            ],
             // This group should return the same results as group 1, because it
             // is the negation of group 2.
-            3 => array(
+            3 => [
               'title' => 'Active (reverse)',
               'operator' => '!=',
               'value' => '0',
-            ),
-          ),
-        ),
-      ),
-    );
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterCombineTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterCombineTest.php
index 0424263..e5d3711 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterCombineTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterCombineTest.php
@@ -15,24 +15,24 @@ class FilterCombineTest extends ViewsKernelTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('entity_test');
+  public static $modules = ['entity_test'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'entity_test_fields');
+  public static $testViews = ['test_view', 'entity_test_fields'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
     'views_test_data_job' => 'job',
-  );
+  ];
 
   /**
    * {@inheritdoc}
@@ -48,50 +48,50 @@ public function testFilterCombineContains() {
     $view->setDisplay();
 
     $fields = $view->displayHandlers->get('default')->getOption('fields');
-    $view->displayHandlers->get('default')->overrideOption('fields', $fields + array(
-      'job' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', $fields + [
+      'job' => [
         'id' => 'job',
         'table' => 'views_test_data',
         'field' => 'job',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'combine',
         'table' => 'views',
         'field' => 'combine',
         'relationship' => 'none',
         'operator' => 'contains',
-        'fields' => array(
+        'fields' => [
           'name',
           'job',
-        ),
+        ],
         'value' => 'ing',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
         'job' => 'Singer',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'job' => 'Singer',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'job' => 'Drummer',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ginger',
         'job' => NULL,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -103,46 +103,46 @@ public function testFilterCombineWord() {
     $view->setDisplay();
 
     $fields = $view->displayHandlers->get('default')->getOption('fields');
-    $view->displayHandlers->get('default')->overrideOption('fields', $fields + array(
-        'job' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', $fields + [
+        'job' => [
           'id' => 'job',
           'table' => 'views_test_data',
           'field' => 'job',
           'relationship' => 'none',
-        ),
-      ));
+        ],
+      ]);
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'combine',
         'table' => 'views',
         'field' => 'combine',
         'relationship' => 'none',
         'operator' => 'word',
-        'fields' => array(
+        'fields' => [
           'name',
           'job',
-        ),
+        ],
         'value' => 'singer ringo',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
         'job' => 'Singer',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'job' => 'Singer',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'job' => 'Drummer',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -154,39 +154,39 @@ public function testFilterCombineAllWords() {
     $view->setDisplay();
 
     $fields = $view->displayHandlers->get('default')->getOption('fields');
-    $view->displayHandlers->get('default')->overrideOption('fields', $fields + array(
-        'job' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', $fields + [
+        'job' => [
           'id' => 'job',
           'table' => 'views_test_data',
           'field' => 'job',
           'relationship' => 'none',
-        ),
-      ));
+        ],
+      ]);
 
     // Set the filtering to allwords and simulate searching for a phrase.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'combine',
         'table' => 'views',
         'field' => 'combine',
         'relationship' => 'none',
         'operator' => 'allwords',
-        'fields' => array(
+        'fields' => [
           'name',
           'job',
           'age',
-        ),
+        ],
         'value' => '25 "john   singer"',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
         'job' => 'Singer',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -202,40 +202,40 @@ public function testFilterCombineContainsFieldsOverwritten() {
     $view->setDisplay();
 
     $fields = $view->displayHandlers->get('default')->getOption('fields');
-    $view->displayHandlers->get('default')->overrideOption('fields', $fields + array(
-      'job' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', $fields + [
+      'job' => [
         'id' => 'job',
         'table' => 'views_test_data',
         'field' => 'job',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'combine',
         'table' => 'views',
         'field' => 'combine',
         'relationship' => 'none',
         'operator' => 'contains',
-        'fields' => array(
+        'fields' => [
           'name',
           'job',
           // Add a dummy field to the combined fields to simulate
           // a removed or deleted field.
           'dummy',
-        ),
+        ],
         'value' => 'ing',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
     // Make sure this view will not get displayed.
     $this->assertTrue($view->build_info['fail'], "View build has been marked as failed.");
     // Make sure this view does not pass validation with the right error.
     $errors = $view->validate();
-    $this->assertEquals(t('Field %field set in %filter is not set in display %display.', array('%field' => 'dummy', '%filter' => 'Global: Combine fields filter', '%display' => 'Master')), reset($errors['default']));
+    $this->assertEquals(t('Field %field set in %filter is not set in display %display.', ['%field' => 'dummy', '%filter' => 'Global: Combine fields filter', '%display' => 'Master']), reset($errors['default']));
   }
 
   /**
@@ -247,30 +247,30 @@ public function testNonFieldsRow() {
     $view->setDisplay();
 
     // Set the rows to a plugin type that doesn't support fields.
-    $view->displayHandlers->get('default')->overrideOption('row', array(
+    $view->displayHandlers->get('default')->overrideOption('row', [
       'type' => 'entity:entity_test',
-      'options' => array(
+      'options' => [
         'view_mode' => 'teaser',
-      ),
-    ));
+      ],
+    ]);
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'combine',
         'table' => 'views',
         'field' => 'combine',
         'relationship' => 'none',
         'operator' => 'contains',
-        'fields' => array(
+        'fields' => [
           'name',
-        ),
+        ],
         'value' => 'ing',
-      ),
-    ));
+      ],
+    ]);
     $this->executeView($view);
     $errors = $view->validate();
     // Check that the right error is shown.
-    $this->assertEquals(t('%display: %filter can only be used on displays that use fields. Set the style or row format for that display to one using fields to use the combine field filter.', array('%filter' => 'Global: Combine fields filter', '%display' => 'Master')), reset($errors['default']));
+    $this->assertEquals(t('%display: %filter can only be used on displays that use fields. Set the style or row format for that display to one using fields to use the combine field filter.', ['%filter' => 'Global: Combine fields filter', '%display' => 'Master']), reset($errors['default']));
   }
 
   /**
@@ -278,13 +278,13 @@ public function testNonFieldsRow() {
    */
   protected function dataSet() {
     $data_set = parent::dataSet();
-    $data_set[] = array(
+    $data_set[] = [
       'name' => 'Ginger',
       'age' => 25,
       'job' => NULL,
       'created' => gmmktime(0, 0, 0, 1, 2, 2000),
       'status' => 1,
-    );
+    ];
     return $data_set;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterEqualityTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterEqualityTest.php
index a4bd6c8..41002e8 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterEqualityTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterEqualityTest.php
@@ -12,23 +12,23 @@
  */
 class FilterEqualityTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
-  );
+  ];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -41,23 +41,23 @@ function testEqual() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => '=',
         'value' => 'Ringo',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -74,11 +74,11 @@ public function testEqualGroupedExposed() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -87,32 +87,32 @@ function testNotEqual() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => '!=',
         'value' => 'Ringo',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -129,27 +129,27 @@ public function testEqualGroupedNotExposed() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
 
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'name' => array(
+    $filters = [
+      'name' => [
         'id' => 'name',
         'plugin_id' => 'equality',
         'table' => 'views_test_data',
@@ -157,31 +157,31 @@ protected function getGroupedExposedFilters() {
         'relationship' => 'none',
         'group' => 1,
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'name_op',
           'label' => 'name',
           'identifier' => 'name',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'name',
           'identifier' => 'name',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Name is equal to Ringo',
               'operator' => '=',
               'value' => 'Ringo',
-            ),
-            2 => array(
+            ],
+            2 => [
               'title' => 'Name is not equal to Ringo',
               'operator' => '!=',
               'value' => 'Ringo',
-            ),
-          ),
-        ),
-      ),
-    );
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterInOperatorTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterInOperatorTest.php
index 9ab08e1..b542c9c 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterInOperatorTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterInOperatorTest.php
@@ -12,24 +12,24 @@
  */
 class FilterInOperatorTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
     'views_test_data_age' => 'age',
-  );
+  ];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -42,28 +42,28 @@ public function testFilterInOperatorSimple() {
     $view->setDisplay();
 
     // Add a in_operator ordering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'field' => 'age',
         'table' => 'views_test_data',
-        'value' => array(26, 30),
+        'value' => [26, 30],
         'operator' => 'in',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -72,32 +72,32 @@ public function testFilterInOperatorSimple() {
     $view->setDisplay();
 
     // Add a in_operator ordering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'field' => 'age',
         'table' => 'views_test_data',
-        'value' => array(26, 30),
+        'value' => [26, 30],
         'operator' => 'not in',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -114,16 +114,16 @@ public function testFilterInOperatorGroupedExposedSimple() {
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
 
     $this->assertEqual(2, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
@@ -140,58 +140,58 @@ public function testFilterNotInOperatorGroupedExposedSimple() {
 
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
 
     $this->assertEqual(3, count($view->result));
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
   }
 
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'age' => array(
+    $filters = [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'age_op',
           'label' => 'age',
           'identifier' => 'age',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'age',
           'identifier' => 'age',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Age is one of 26, 30',
               'operator' => 'in',
-              'value' => array(26, 30),
-            ),
-            2 => array(
+              'value' => [26, 30],
+            ],
+            2 => [
               'title' => 'Age is not one of 26, 30',
               'operator' => 'not in',
-              'value' => array(26, 30),
-            ),
-          ),
-        ),
-      ),
-    );
+              'value' => [26, 30],
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
index ca15879..d10b792 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
@@ -12,24 +12,24 @@
  */
 class FilterNumericTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
     'views_test_data_age' => 'age',
-  );
+  ];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -44,24 +44,24 @@ public function testFilterNumericSimple() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => '=',
-        'value' => array('value' => 28),
-      ),
-    ));
+        'value' => ['value' => 28],
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -78,12 +78,12 @@ public function testFilterNumericExposedGroupedSimple() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -92,35 +92,35 @@ public function testFilterNumericBetween() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => 'between',
-        'value' => array(
+        'value' => [
           'min' => 26,
           'max' => 29,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
 
     // test not between
@@ -128,31 +128,31 @@ public function testFilterNumericBetween() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => 'not between',
-        'value' => array(
+        'value' => [
           'min' => 26,
           'max' => 29,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -169,20 +169,20 @@ public function testFilterNumericExposedGroupedBetween() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -199,16 +199,16 @@ public function testFilterNumericExposedGroupedNotBetween() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -220,26 +220,26 @@ public function testFilterNumericRegularExpression() {
     $view->setDisplay();
 
     // Filtering by regular expression pattern.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => 'regular_expression',
-        'value' => array(
+        'value' => [
           'value' => '2[8]',
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -259,16 +259,16 @@ public function testFilterNumericExposedGroupedRegularExpression() {
     $view->save();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -277,58 +277,58 @@ public function testFilterNumericEmpty() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => 'empty',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-    );
+    $resultset = [
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
 
     $view->destroy();
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'operator' => 'not empty',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-    array(
+    $resultset = [
+    [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -345,8 +345,8 @@ public function testFilterNumericExposedGroupedEmpty() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-    );
+    $resultset = [
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -363,28 +363,28 @@ public function testFilterNumericExposedGroupedNotEmpty() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-    array(
+    $resultset = [
+    [
         'name' => 'John',
         'age' => 25,
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
         'age' => 27,
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
         'age' => 28,
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
         'age' => 26,
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
         'age' => 30,
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -392,20 +392,20 @@ public function testAllowEmpty() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'id' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'id' => [
         'id' => 'id',
         'table' => 'views_test_data',
         'field' => 'id',
         'relationship' => 'none',
-      ),
-      'age' => array(
+      ],
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     $view->initHandlers();
 
@@ -419,65 +419,65 @@ public function testAllowEmpty() {
   }
 
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'age' => array(
+    $filters = [
+      'age' => [
         'id' => 'age',
         'plugin_id' => 'numeric',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'age_op',
           'label' => 'age',
           'identifier' => 'age',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'age',
           'identifier' => 'age',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Age is 28',
               'operator' => '=',
-              'value' => array('value' => 28),
-            ),
-            2 => array(
+              'value' => ['value' => 28],
+            ],
+            2 => [
               'title' => 'Age is between 26 and 29',
               'operator' => 'between',
-              'value' => array(
+              'value' => [
                 'min' => 26,
                 'max' => 29,
-              ),
-            ),
-            3 => array(
+              ],
+            ],
+            3 => [
               'title' => 'Age is not between 26 and 29',
               'operator' => 'not between',
-              'value' => array(
+              'value' => [
                 'min' => 26,
                 'max' => 29,
-              ),
-            ),
-            4 => array(
+              ],
+            ],
+            4 => [
               'title' => 'Age is empty',
               'operator' => 'empty',
-            ),
-            5 => array(
+            ],
+            5 => [
               'title' => 'Age is not empty',
               'operator' => 'not empty',
-            ),
-            6 => array(
+            ],
+            6 => [
               'title' => 'Age is regexp 2[7-8]',
               'operator' => 'regular_expression',
-              'value' => array(
+              'value' => [
                 'value' => '2[7-8]',
-              ),
-            ),
-          ),
-        ),
-      ),
-    );
+              ],
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterStringTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterStringTest.php
index 5dd47ec..c21df9a 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterStringTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterStringTest.php
@@ -12,23 +12,23 @@
  */
 class FilterStringTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Map column names.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
-  );
+  ];
 
   function viewsData() {
     $data = parent::viewsData();
@@ -41,12 +41,12 @@ function viewsData() {
 
   protected function schemaDefinition() {
     $schema = parent::schemaDefinition();
-    $schema['views_test_data']['fields']['description'] = array(
+    $schema['views_test_data']['fields']['description'] = [
       'description' => "A person's description",
       'type' => 'text',
       'not null' => FALSE,
       'size' => 'big',
-    );
+    ];
 
     return $schema;
   }
@@ -86,23 +86,23 @@ function testFilterStringEqual() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => '=',
         'value' => 'Ringo',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -119,11 +119,11 @@ function testFilterStringGroupedExposedEqual() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
 
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
@@ -133,32 +133,32 @@ function testFilterStringNotEqual() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => '!=',
         'value' => 'Ringo',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -176,20 +176,20 @@ function testFilterStringGroupedExposedNotEqual() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-      array(
+      ],
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
 
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
@@ -199,23 +199,23 @@ function testFilterStringContains() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => 'contains',
         'value' => 'ing',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -233,11 +233,11 @@ function testFilterStringGroupedExposedContains() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
 
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
@@ -248,26 +248,26 @@ function testFilterStringWord() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'word',
         'value' => 'actor',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
     $view->destroy();
 
@@ -275,23 +275,23 @@ function testFilterStringWord() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'allwords',
         'value' => 'Richard Starkey',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -309,11 +309,11 @@ function testFilterStringGroupedExposedWord() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
 
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
     $view->destroy();
@@ -327,14 +327,14 @@ function testFilterStringGroupedExposedWord() {
     $view->displayHandlers->get('page_1')->overrideOption('filters', $filters);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -343,23 +343,23 @@ function testFilterStringStarts() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'starts',
         'value' => 'George',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -376,11 +376,11 @@ function testFilterStringGroupedExposedStarts() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -389,30 +389,30 @@ function testFilterStringNotStarts() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'not_starts',
         'value' => 'George',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -429,18 +429,18 @@ function testFilterStringGroupedExposedNotStarts() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -449,26 +449,26 @@ function testFilterStringEnds() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'ends',
         'value' => 'Beatles.',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -485,14 +485,14 @@ function testFilterStringGroupedExposedEnds() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'George',
-      ),
-      array(
+      ],
+      [
         'name' => 'Ringo',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -501,27 +501,27 @@ function testFilterStringNotEnds() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'not_ends',
         'value' => 'Beatles.',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -538,15 +538,15 @@ function testFilterStringGroupedExposedNotEnds() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -555,27 +555,27 @@ function testFilterStringNot() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'not',
         'value' => 'Beatles.',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -593,15 +593,15 @@ function testFilterStringGroupedExposedNot() {
 
     $this->executeView($view);
 
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
+      ],
       // There is no Meredith returned because his description is empty
-    );
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
 
   }
@@ -611,26 +611,26 @@ function testFilterStringShorter() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => 'shorterthan',
         'value' => 5,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -646,14 +646,14 @@ function testFilterStringGroupedExposedShorter() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'John',
-      ),
-      array(
+      ],
+      [
         'name' => 'Paul',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -662,23 +662,23 @@ function testFilterStringLonger() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'name' => [
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'operator' => 'longerthan',
         'value' => 7,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -694,11 +694,11 @@ function testFilterStringGroupedExposedLonger() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -708,22 +708,22 @@ function testFilterStringEmpty() {
     $view->setDisplay();
 
     // Change the filtering
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'description' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'description' => [
         'id' => 'description',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'operator' => 'empty',
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
@@ -739,119 +739,119 @@ function testFilterStringGroupedExposedEmpty() {
     $this->container->get('router.builder')->rebuild();
 
     $this->executeView($view);
-    $resultset = array(
-      array(
+    $resultset = [
+      [
         'name' => 'Meredith',
-      ),
-    );
+      ],
+    ];
     $this->assertIdenticalResultset($view, $resultset, $this->columnMap);
   }
 
   protected function getGroupedExposedFilters() {
-    $filters = array(
-      'name' => array(
+    $filters = [
+      'name' => [
         'id' => 'name',
         'plugin_id' => 'string',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'name_op',
           'label' => 'name',
           'identifier' => 'name',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'name',
           'identifier' => 'name',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Is Ringo',
               'operator' => '=',
               'value' => 'Ringo',
-            ),
-            2 => array(
+            ],
+            2 => [
               'title' => 'Is not Ringo',
               'operator' => '!=',
               'value' => 'Ringo',
-            ),
-            3 => array(
+            ],
+            3 => [
               'title' => 'Contains ing',
               'operator' => 'contains',
               'value' => 'ing',
-            ),
-            4 => array(
+            ],
+            4 => [
               'title' => 'Shorter than 5 letters',
               'operator' => 'shorterthan',
               'value' => 5,
-            ),
-            5 => array(
+            ],
+            5 => [
               'title' => 'Longer than 7 letters',
               'operator' => 'longerthan',
               'value' => 7,
-            ),
-          ),
-        ),
-      ),
-      'description' => array(
+            ],
+          ],
+        ],
+      ],
+      'description' => [
         'id' => 'description',
         'plugin_id' => 'string',
         'table' => 'views_test_data',
         'field' => 'description',
         'relationship' => 'none',
         'exposed' => TRUE,
-        'expose' => array(
+        'expose' => [
           'operator' => 'description_op',
           'label' => 'description',
           'identifier' => 'description',
-        ),
+        ],
         'is_grouped' => TRUE,
-        'group_info' => array(
+        'group_info' => [
           'label' => 'description',
           'identifier' => 'description',
           'default_group' => 'All',
-          'group_items' => array(
-            1 => array(
+          'group_items' => [
+            1 => [
               'title' => 'Contains the word: Actor',
               'operator' => 'word',
               'value' => 'actor',
-            ),
-            2 => array(
+            ],
+            2 => [
               'title' => 'Starts with George',
               'operator' => 'starts',
               'value' => 'George',
-            ),
-            3 => array(
+            ],
+            3 => [
               'title' => 'Not Starts with: George',
               'operator' => 'not_starts',
               'value' => 'George',
-            ),
-            4 => array(
+            ],
+            4 => [
               'title' => 'Ends with: Beatles',
               'operator' => 'ends',
               'value' => 'Beatles.',
-            ),
-            5 => array(
+            ],
+            5 => [
               'title' => 'Not Ends with: Beatles',
               'operator' => 'not_ends',
               'value' => 'Beatles.',
-            ),
-            6 => array(
+            ],
+            6 => [
               'title' => 'Does not contain: Beatles',
               'operator' => 'not',
               'value' => 'Beatles.',
-            ),
-            7 => array(
+            ],
+            7 => [
               'title' => 'Empty description',
               'operator' => 'empty',
               'value' => '',
-            ),
-          ),
-        ),
-      ),
-    );
+            ],
+          ],
+        ],
+      ],
+    ];
     return $filters;
   }
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/HandlerAliasTest.php b/core/modules/views/tests/src/Kernel/Handler/HandlerAliasTest.php
index 48f4e3d..53d25b3 100644
--- a/core/modules/views/tests/src/Kernel/Handler/HandlerAliasTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/HandlerAliasTest.php
@@ -12,14 +12,14 @@
  */
 class HandlerAliasTest extends ViewsKernelTestBase {
 
-  public static $modules = array('user');
+  public static $modules = ['user'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_filter', 'test_alias');
+  public static $testViews = ['test_filter', 'test_alias'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
@@ -45,16 +45,16 @@ public function testPluginAliases() {
     $view->initDisplay();
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data_alias',
         'field' => 'name_alias',
         'operator' => '=',
         'value' => 'John',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
diff --git a/core/modules/views/tests/src/Kernel/Handler/SortDateTest.php b/core/modules/views/tests/src/Kernel/Handler/SortDateTest.php
index 4a13754..2d1a2fc 100644
--- a/core/modules/views/tests/src/Kernel/Handler/SortDateTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/SortDateTest.php
@@ -18,123 +18,123 @@ class SortDateTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   protected function expectedResultSet($granularity, $reverse = TRUE) {
-    $expected = array();
+    $expected = [];
     if (!$reverse) {
       switch ($granularity) {
         case 'second':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-            array('name' => 'Ringo'),
-            array('name' => 'George'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+            ['name' => 'Ringo'],
+            ['name' => 'George'],
+          ];
           break;
         case 'minute':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'Paul'),
-            array('name' => 'Ringo'),
-            array('name' => 'Meredith'),
-            array('name' => 'George'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'Paul'],
+            ['name' => 'Ringo'],
+            ['name' => 'Meredith'],
+            ['name' => 'George'],
+          ];
           break;
         case 'hour':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-            array('name' => 'George'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+            ['name' => 'George'],
+          ];
           break;
         case 'day':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-            array('name' => 'George'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+            ['name' => 'George'],
+          ];
           break;
         case 'month':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+          ];
           break;
         case 'year':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+          ];
           break;
       }
     }
     else {
       switch ($granularity) {
         case 'second':
-          $expected = array(
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Meredith'),
-            array('name' => 'Paul'),
-            array('name' => 'John'),
-          );
+          $expected = [
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Meredith'],
+            ['name' => 'Paul'],
+            ['name' => 'John'],
+          ];
           break;
         case 'minute':
-          $expected = array(
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Meredith'),
-            array('name' => 'Paul'),
-            array('name' => 'John'),
-           );
+          $expected = [
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Meredith'],
+            ['name' => 'Paul'],
+            ['name' => 'John'],
+           ];
           break;
         case 'hour':
-          $expected = array(
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-            array('name' => 'John'),
-          );
+          $expected = [
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+            ['name' => 'John'],
+          ];
           break;
         case 'day':
-          $expected = array(
-            array('name' => 'George'),
-            array('name' => 'John'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-          );
+          $expected = [
+            ['name' => 'George'],
+            ['name' => 'John'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+          ];
           break;
         case 'month':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+          ];
           break;
         case 'year':
-          $expected = array(
-            array('name' => 'John'),
-            array('name' => 'George'),
-            array('name' => 'Ringo'),
-            array('name' => 'Paul'),
-            array('name' => 'Meredith'),
-          );
+          $expected = [
+            ['name' => 'John'],
+            ['name' => 'George'],
+            ['name' => 'Ringo'],
+            ['name' => 'Paul'],
+            ['name' => 'Meredith'],
+          ];
           break;
       }
     }
@@ -146,54 +146,54 @@ protected function expectedResultSet($granularity, $reverse = TRUE) {
    * Tests numeric ordering of the result set.
    */
   public function testDateOrdering() {
-    foreach (array('second', 'minute', 'hour', 'day', 'month', 'year') as $granularity) {
-      foreach (array(FALSE, TRUE) as $reverse) {
+    foreach (['second', 'minute', 'hour', 'day', 'month', 'year'] as $granularity) {
+      foreach ([FALSE, TRUE] as $reverse) {
         $view = Views::getView('test_view');
         $view->setDisplay();
 
         // Change the fields.
-        $view->displayHandlers->get('default')->overrideOption('fields', array(
-          'name' => array(
+        $view->displayHandlers->get('default')->overrideOption('fields', [
+          'name' => [
             'id' => 'name',
             'table' => 'views_test_data',
             'field' => 'name',
             'relationship' => 'none',
-          ),
-          'created' => array(
+          ],
+          'created' => [
             'id' => 'created',
             'table' => 'views_test_data',
             'field' => 'created',
             'relationship' => 'none',
-          ),
-        ));
+          ],
+        ]);
 
         // Change the ordering
-        $view->displayHandlers->get('default')->overrideOption('sorts', array(
-          'created' => array(
+        $view->displayHandlers->get('default')->overrideOption('sorts', [
+          'created' => [
             'id' => 'created',
             'table' => 'views_test_data',
             'field' => 'created',
             'relationship' => 'none',
             'granularity' => $granularity,
             'order' => $reverse ? 'DESC' : 'ASC',
-          ),
-          'id' => array(
+          ],
+          'id' => [
             'id' => 'id',
             'table' => 'views_test_data',
             'field' => 'id',
             'relationship' => 'none',
             'order' => 'ASC',
-          ),
-        ));
+          ],
+        ]);
 
         // Execute the view.
         $this->executeView($view);
 
         // Verify the result.
         $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-        $this->assertIdenticalResultset($view, $this->expectedResultSet($granularity, $reverse), array(
+        $this->assertIdenticalResultset($view, $this->expectedResultSet($granularity, $reverse), [
           'views_test_data_name' => 'name',
-        ), SafeMarkup::format('Result is returned correctly when ordering by granularity @granularity, @reverse.', array('@granularity' => $granularity, '@reverse' => $reverse ? 'reverse' : 'forward')));
+        ], SafeMarkup::format('Result is returned correctly when ordering by granularity @granularity, @reverse.', ['@granularity' => $granularity, '@reverse' => $reverse ? 'reverse' : 'forward']));
         $view->destroy();
         unset($view);
       }
diff --git a/core/modules/views/tests/src/Kernel/Handler/SortRandomTest.php b/core/modules/views/tests/src/Kernel/Handler/SortRandomTest.php
index 97b2707..941ed8d 100644
--- a/core/modules/views/tests/src/Kernel/Handler/SortRandomTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/SortRandomTest.php
@@ -19,7 +19,7 @@ class SortRandomTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Add more items to the test set, to make the order tests more robust.
@@ -34,13 +34,13 @@ class SortRandomTest extends ViewsKernelTestBase {
   protected function dataSet() {
     $data = parent::dataSet();
     for ($i = 0; $i < 55; $i++) {
-      $data[] = array(
+      $data[] = [
         'name' => 'name_' . $i,
         'age' => $i,
         'job' => 'job_' . $i,
         'created' => rand(0, time()),
         'status' => 1,
-      );
+      ];
     }
     return $data;
   }
@@ -53,13 +53,13 @@ protected function getBasicRandomView() {
     $view->setDisplay();
 
     // Add a random ordering.
-    $view->displayHandlers->get('default')->overrideOption('sorts', array(
-      'random' => array(
+    $view->displayHandlers->get('default')->overrideOption('sorts', [
+      'random' => [
         'id' => 'random',
         'field' => 'random',
         'table' => 'views',
-      ),
-    ));
+      ],
+    ]);
 
     return $view;
   }
@@ -76,28 +76,28 @@ public function testRandomOrdering() {
 
     // Verify the result.
     $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->dataSet(), array(
+    $this->assertIdenticalResultset($view, $this->dataSet(), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
 
     // Execute a random view, we expect the result set to be different.
     $view_random = $this->getBasicRandomView();
     $this->executeView($view_random);
     $this->assertEqual(count($this->dataSet()), count($view_random->result), 'The number of returned rows match.');
-    $this->assertNotIdenticalResultset($view_random, $view->result, array(
+    $this->assertNotIdenticalResultset($view_random, $view->result, [
       'views_test_data_name' => 'views_test_data_name',
       'views_test_data_age' => 'views_test_data_name',
-    ));
+    ]);
 
     // Execute a second random view, we expect the result set to be different again.
     $view_random_2 = $this->getBasicRandomView();
     $this->executeView($view_random_2);
     $this->assertEqual(count($this->dataSet()), count($view_random_2->result), 'The number of returned rows match.');
-    $this->assertNotIdenticalResultset($view_random, $view->result, array(
+    $this->assertNotIdenticalResultset($view_random, $view->result, [
       'views_test_data_name' => 'views_test_data_name',
       'views_test_data_age' => 'views_test_data_name',
-    ));
+    ]);
   }
 
   /**
diff --git a/core/modules/views/tests/src/Kernel/Handler/SortTest.php b/core/modules/views/tests/src/Kernel/Handler/SortTest.php
index 38cbcd1..9156049 100644
--- a/core/modules/views/tests/src/Kernel/Handler/SortTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/SortTest.php
@@ -17,7 +17,7 @@ class SortTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests numeric ordering of the result set.
@@ -27,49 +27,49 @@ public function testNumericOrdering() {
     $view->setDisplay();
 
     // Change the ordering
-    $view->displayHandlers->get('default')->overrideOption('sorts', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('sorts', [
+      'age' => [
         'order' => 'ASC',
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
 
     // Verify the result.
     $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'age'), array(
+    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'age'), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
 
     $view->destroy();
     $view->setDisplay();
 
     // Reverse the ordering
-    $view->displayHandlers->get('default')->overrideOption('sorts', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('sorts', [
+      'age' => [
         'order' => 'DESC',
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
 
     // Verify the result.
     $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'age', TRUE), array(
+    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'age', TRUE), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
   }
 
   /**
@@ -80,49 +80,49 @@ public function testStringOrdering() {
     $view->setDisplay();
 
     // Change the ordering
-    $view->displayHandlers->get('default')->overrideOption('sorts', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('sorts', [
+      'name' => [
         'order' => 'ASC',
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
 
     // Verify the result.
     $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'name'), array(
+    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'name'), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
 
     $view->destroy();
     $view->setDisplay();
 
     // Reverse the ordering
-    $view->displayHandlers->get('default')->overrideOption('sorts', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('sorts', [
+      'name' => [
         'order' => 'DESC',
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'relationship' => 'none',
-      ),
-    ));
+      ],
+    ]);
 
     // Execute the view.
     $this->executeView($view);
 
     // Verify the result.
     $this->assertEqual(count($this->dataSet()), count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'name', TRUE), array(
+    $this->assertIdenticalResultset($view, $this->orderResultSet($this->dataSet(), 'name', TRUE), [
       'views_test_data_name' => 'name',
       'views_test_data_age' => 'age',
-    ));
+    ]);
   }
 
 }
diff --git a/core/modules/views/tests/src/Kernel/ModuleTest.php b/core/modules/views/tests/src/Kernel/ModuleTest.php
index 204433d..4ed5e0a 100644
--- a/core/modules/views/tests/src/Kernel/ModuleTest.php
+++ b/core/modules/views/tests/src/Kernel/ModuleTest.php
@@ -19,7 +19,7 @@ class ModuleTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_status', 'test_view', 'test_argument');
+  public static $testViews = ['test_view_status', 'test_view', 'test_argument'];
 
   /**
    * Modules to enable.
@@ -43,27 +43,27 @@ class ModuleTest extends ViewsKernelTestBase {
    * @see views_get_handler()
    */
   public function testViewsGetHandler() {
-    $types = array('field', 'area', 'filter');
+    $types = ['field', 'area', 'filter'];
     foreach ($types as $type) {
-      $item = array(
+      $item = [
         'table' => $this->randomMachineName(),
         'field' => $this->randomMachineName(),
-      );
+      ];
       $handler = $this->container->get('plugin.manager.views.' . $type)->getHandler($item);
       $this->assertEqual('Drupal\views\Plugin\views\\' . $type . '\Broken', get_class($handler), new FormattableMarkup('Make sure that a broken handler of type: @type is created.', ['@type' => $type]));
     }
 
     $views_data = $this->viewsData();
-    $test_tables = array('views_test_data' => array('id', 'name'));
+    $test_tables = ['views_test_data' => ['id', 'name']];
     foreach ($test_tables as $table => $fields) {
       foreach ($fields as $field) {
         $data = $views_data[$table][$field];
-        $item = array(
+        $item = [
           'table' => $table,
           'field' => $field,
-        );
+        ];
         foreach ($data as $id => $field_data) {
-          if (!in_array($id, array('title', 'help'))) {
+          if (!in_array($id, ['title', 'help'])) {
             $handler = $this->container->get('plugin.manager.views.' . $id)->getHandler($item);
             $this->assertInstanceHandler($handler, $table, $field, $id);
           }
@@ -72,10 +72,10 @@ public function testViewsGetHandler() {
     }
 
     // Test the override handler feature.
-    $item = array(
+    $item = [
       'table' => 'views_test_data',
       'field' => 'job',
-    );
+    ];
     $handler = $this->container->get('plugin.manager.views.filter')->getHandler($item, 'standard');
     $this->assertTrue($handler instanceof Standard);
 
@@ -84,29 +84,29 @@ public function testViewsGetHandler() {
     return;
 
     // Test non-existent tables/fields.
-    set_error_handler(array($this, 'customErrorHandler'));
-    $item = array(
+    set_error_handler([$this, 'customErrorHandler']);
+    $item = [
       'table' => 'views_test_data',
       'field' => 'field_invalid',
-    );
+    ];
     $this->container->get('plugin.manager.views.field')->getHandler($item);
-    $this->assertTrue(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", array('@table' => 'views_test_data', '@field' => 'field_invalid', '@type' => 'field'))) !== FALSE, 'An invalid field name throws a debug message.');
+    $this->assertTrue(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", ['@table' => 'views_test_data', '@field' => 'field_invalid', '@type' => 'field'])) !== FALSE, 'An invalid field name throws a debug message.');
     unset($this->lastErrorMessage);
 
-    $item = array(
+    $item = [
       'table' => 'table_invalid',
       'field' => 'id',
-    );
+    ];
     $this->container->get('plugin.manager.views.filter')->getHandler($item);
-    $this->assertEqual(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", array('@table' => 'table_invalid', '@field' => 'id', '@type' => 'filter'))) !== FALSE, 'An invalid table name throws a debug message.');
+    $this->assertEqual(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", ['@table' => 'table_invalid', '@field' => 'id', '@type' => 'filter'])) !== FALSE, 'An invalid table name throws a debug message.');
     unset($this->lastErrorMessage);
 
-    $item = array(
+    $item = [
       'table' => 'table_invalid',
       'field' => 'id',
-    );
+    ];
     $this->container->get('plugin.manager.views.filter')->getHandler($item);
-    $this->assertEqual(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", array('@table' => 'table_invalid', '@field' => 'id', '@type' => 'filter'))) !== FALSE, 'An invalid table name throws a debug message.');
+    $this->assertEqual(strpos($this->lastErrorMessage, format_string("Missing handler: @table @field @type", ['@table' => 'table_invalid', '@field' => 'id', '@type' => 'filter'])) !== FALSE, 'An invalid table name throws a debug message.');
     unset($this->lastErrorMessage);
 
     restore_error_handler();
@@ -139,8 +139,8 @@ public function customErrorHandler($error_level, $message, $filename, $line, $co
    * Tests the load wrapper/helper functions.
    */
   public function testLoadFunctions() {
-    $this->enableModules(array('text', 'node'));
-    $this->installConfig(array('node'));
+    $this->enableModules(['text', 'node']);
+    $this->installConfig(['node']);
     $storage = $this->container->get('entity.manager')->getStorage('view');
 
     // Test views_view_is_enabled/disabled.
@@ -172,7 +172,7 @@ public function testLoadFunctions() {
     // Test Views::getViewsAsOptions().
     // Test the $views_only parameter.
     $this->assertIdentical(array_keys($all_views), array_keys(Views::getViewsAsOptions(TRUE)), 'Expected option keys for all views were returned.');
-    $expected_options = array();
+    $expected_options = [];
     foreach ($all_views as $id => $view) {
       $expected_options[$id] = $view->label();
     }
@@ -196,10 +196,10 @@ public function testLoadFunctions() {
     $this->assertFalse(array_key_exists('archive', Views::getViewsAsOptions(TRUE, 'all', $archive->getExecutable())), 'View excluded from options based on object');
 
     // Test the $opt_group parameter.
-    $expected_opt_groups = array();
+    $expected_opt_groups = [];
     foreach ($all_views as $view) {
       foreach ($view->get('display') as $display) {
-        $expected_opt_groups[$view->id()][$view->id() . ':' . $display['id']] = (string) t('@view : @display', array('@view' => $view->id(), '@display' => $display['id']));
+        $expected_opt_groups[$view->id()][$view->id() . ':' . $display['id']] = (string) t('@view : @display', ['@view' => $view->id(), '@display' => $display['id']]);
       }
     }
     $this->assertIdentical($expected_opt_groups, $this->castSafeStrings(Views::getViewsAsOptions(FALSE, 'all', NULL, TRUE)), 'Expected option array for an option group returned.');
@@ -229,7 +229,7 @@ public function testViewsFetchPluginNames() {
     // All style plugins should be returned, as we have not specified a type.
     $plugins = Views::fetchPluginNames('style');
     $definitions = $this->container->get('plugin.manager.views.style')->getDefinitions();
-    $expected = array();
+    $expected = [];
     foreach ($definitions as $id => $definition) {
       $expected[$id] = $definition['title'];
     }
@@ -239,11 +239,11 @@ public function testViewsFetchPluginNames() {
     // Test using the 'test' style plugin type only returns the test_style and
     // mapping_test plugins.
     $plugins = Views::fetchPluginNames('style', 'test');
-    $this->assertIdentical(array_keys($plugins), array('mapping_test', 'test_style', 'test_template_style'));
+    $this->assertIdentical(array_keys($plugins), ['mapping_test', 'test_style', 'test_template_style']);
 
     // Test a non existent style plugin type returns no plugins.
     $plugins = Views::fetchPluginNames('style', $this->randomString());
-    $this->assertIdentical($plugins, array());
+    $this->assertIdentical($plugins, []);
   }
 
   /**
@@ -252,11 +252,11 @@ public function testViewsFetchPluginNames() {
   public function testViewsPluginList() {
     $plugin_list = Views::pluginList();
     // Only plugins used by 'test_view' should be in the plugin list.
-    foreach (array('display:default', 'pager:none') as $key) {
+    foreach (['display:default', 'pager:none'] as $key) {
       list($plugin_type, $plugin_id) = explode(':', $key);
       $plugin_def = $this->container->get("plugin.manager.views.$plugin_type")->getDefinition($plugin_id);
 
-      $this->assertTrue(isset($plugin_list[$key]), SafeMarkup::format('The expected @key plugin list key was found.', array('@key' => $key)));
+      $this->assertTrue(isset($plugin_list[$key]), SafeMarkup::format('The expected @key plugin list key was found.', ['@key' => $key]));
       $plugin_details = $plugin_list[$key];
 
       $this->assertEqual($plugin_details['type'], $plugin_type, 'The expected plugin type was found.');
@@ -303,35 +303,35 @@ public function testViewsPreview() {
     $this->assertEqual(count($result['#view']->result), 5);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('0' => 1));
+    $result = $view->preview('default', ['0' => 1]);
     $this->assertEqual(count($result['#view']->result), 1);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('3' => 1));
+    $result = $view->preview('default', ['3' => 1]);
     $this->assertEqual(count($result['#view']->result), 1);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('0' => '1,2'));
+    $result = $view->preview('default', ['0' => '1,2']);
     $this->assertEqual(count($result['#view']->result), 2);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('3' => '1,2'));
+    $result = $view->preview('default', ['3' => '1,2']);
     $this->assertEqual(count($result['#view']->result), 2);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('0' => '1,2', '1' => 'John'));
+    $result = $view->preview('default', ['0' => '1,2', '1' => 'John']);
     $this->assertEqual(count($result['#view']->result), 1);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('3' => '1,2', '4' => 'John'));
+    $result = $view->preview('default', ['3' => '1,2', '4' => 'John']);
     $this->assertEqual(count($result['#view']->result), 1);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('0' => '1,2', '1' => 'John,George'));
+    $result = $view->preview('default', ['0' => '1,2', '1' => 'John,George']);
     $this->assertEqual(count($result['#view']->result), 2);
 
     $view = Views::getView('test_argument');
-    $result = $view->preview('default', array('3' => '1,2', '4' => 'John,George'));
+    $result = $view->preview('default', ['3' => '1,2', '4' => 'John,George']);
     $this->assertEqual(count($result['#view']->result), 2);
   }
 
@@ -345,12 +345,12 @@ public function testViewsPreview() {
    * @return array
    *   A formatted options array that matches the expected output.
    */
-  protected function formatViewOptions(array $views = array()) {
-    $expected_options = array();
+  protected function formatViewOptions(array $views = []) {
+    $expected_options = [];
     foreach ($views as $view) {
       foreach ($view->get('display') as $display) {
         $expected_options[$view->id() . ':' . $display['id']] = (string) t('View: @view - Display: @display',
-          array('@view' => $view->id(), '@display' => $display['id']));
+          ['@view' => $view->id(), '@display' => $display['id']]);
       }
     }
 
diff --git a/core/modules/views/tests/src/Kernel/Plugin/BlockDependenciesTest.php b/core/modules/views/tests/src/Kernel/Plugin/BlockDependenciesTest.php
index 6b5de6e..1a9f32e 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/BlockDependenciesTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/BlockDependenciesTest.php
@@ -17,14 +17,14 @@ class BlockDependenciesTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_exposed_block');
+  public static $testViews = ['test_exposed_block'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('node', 'block', 'user', 'field');
+  public static $modules = ['node', 'block', 'user', 'field'];
 
   /**
    * Tests that exposed filter blocks have the correct dependencies.
@@ -34,11 +34,11 @@ class BlockDependenciesTest extends ViewsKernelTestBase {
   public function testExposedBlock() {
     $block = $this->createBlock('views_exposed_filter_block:test_exposed_block-page_1');
     $dependencies = $block->calculateDependencies()->getDependencies();
-    $expected = array(
-      'config' => array('views.view.test_exposed_block'),
-      'module' => array('views'),
-      'theme' => array('stark')
-    );
+    $expected = [
+      'config' => ['views.view.test_exposed_block'],
+      'module' => ['views'],
+      'theme' => ['stark']
+    ];
     $this->assertIdentical($expected, $dependencies);
   }
 
@@ -50,11 +50,11 @@ public function testExposedBlock() {
   public function testViewsBlock() {
     $block = $this->createBlock('views_block:content_recent-block_1');
     $dependencies = $block->calculateDependencies()->getDependencies();
-    $expected = array(
-      'config' => array('views.view.content_recent'),
-      'module' => array('views'),
-      'theme' => array('stark')
-    );
+    $expected = [
+      'config' => ['views.view.content_recent'],
+      'module' => ['views'],
+      'theme' => ['stark']
+    ];
     $this->assertIdentical($expected, $dependencies);
   }
 
@@ -82,18 +82,18 @@ public function testViewsBlock() {
    * @return \Drupal\block\Entity\Block
    *   The block entity.
    */
-  protected function createBlock($plugin_id, array $settings = array()) {
-    $settings += array(
+  protected function createBlock($plugin_id, array $settings = []) {
+    $settings += [
       'plugin' => $plugin_id,
       'region' => 'sidebar_first',
       'id' => strtolower($this->randomMachineName(8)),
       'theme' => $this->config('system.theme')->get('default'),
       'label' => $this->randomMachineName(8),
-      'visibility' => array(),
+      'visibility' => [],
       'weight' => 0,
-    );
+    ];
     $values = [];
-    foreach (array('region', 'id', 'theme', 'plugin', 'weight', 'visibility') as $key) {
+    foreach (['region', 'id', 'theme', 'plugin', 'weight', 'visibility'] as $key) {
       $values[$key] = $settings[$key];
       // Remove extra values that do not belong in the settings array.
       unset($settings[$key]);
diff --git a/core/modules/views/tests/src/Kernel/Plugin/CacheTest.php b/core/modules/views/tests/src/Kernel/Plugin/CacheTest.php
index e1328d7..01c6721 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/CacheTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/CacheTest.php
@@ -21,14 +21,14 @@ class CacheTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_cache', 'test_groupwise_term_ui', 'test_display', 'test_filter');
+  public static $testViews = ['test_view', 'test_cache', 'test_groupwise_term_ui', 'test_display', 'test_filter'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('taxonomy', 'text', 'user', 'node');
+  public static $modules = ['taxonomy', 'text', 'user', 'node'];
 
   /**
    * {@inheritdoc}
@@ -70,13 +70,13 @@ protected function viewsData() {
   public function testTimeResultCaching() {
     $view = Views::getView('test_cache');
     $view->setDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'results_lifespan' => '3600',
         'output_lifespan' => '3600',
-      )
-    ));
+      ]
+    ]);
 
     // Test the default (non-paged) display.
     $this->executeView($view);
@@ -84,11 +84,11 @@ public function testTimeResultCaching() {
     $this->assertEqual(5, count($view->result), 'The number of returned rows match.');
 
     // Add another man to the beatles.
-    $record = array(
+    $record = [
       'name' => 'Rod Davis',
       'age' => 29,
       'job' => 'Banjo',
-    );
+    ];
     db_insert('views_test_data')->fields($record)->execute();
 
     // The result should be the same as before, because of the caching. (Note
@@ -112,25 +112,25 @@ public function testTimeResultCachingWithFilter() {
 
     $view = Views::getView('test_filter');
     $view->initDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'results_lifespan' => '3600',
         'output_lifespan' => '3600',
-      ),
-    ));
+      ],
+    ]);
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data',
         'field' => 'name',
         'operator' => '=',
         'value' => 'John',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -138,29 +138,29 @@ public function testTimeResultCachingWithFilter() {
     $cid1 = $view->display_handler->getPlugin('cache')->generateResultsKey();
 
     // Build the expected result.
-    $dataset = array(array('name' => 'John'));
+    $dataset = [['name' => 'John']];
 
     // Verify the result.
     $this->assertEqual(1, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultSet($view, $dataset, array(
+    $this->assertIdenticalResultSet($view, $dataset, [
       'views_test_data_name' => 'name',
-    ));
+    ]);
 
     $view->destroy();
 
     $view->initDisplay();
 
     // Change the filtering.
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'test_filter' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'test_filter' => [
         'id' => 'test_filter',
         'table' => 'views_test_data',
         'field' => 'name',
         'operator' => '=',
         'value' => 'Ringo',
         'group' => 0,
-      ),
-    ));
+      ],
+    ]);
 
     $this->executeView($view);
 
@@ -169,13 +169,13 @@ public function testTimeResultCachingWithFilter() {
     $this->assertNotEqual($cid1, $cid2, "Results keys are different.");
 
     // Build the expected result.
-    $dataset = array(array('name' => 'Ringo'));
+    $dataset = [['name' => 'Ringo']];
 
     // Verify the result.
     $this->assertEqual(1, count($view->result), 'The number of returned rows match.');
-    $this->assertIdenticalResultSet($view, $dataset, array(
+    $this->assertIdenticalResultSet($view, $dataset, [
       'views_test_data_name' => 'name',
-    ));
+    ]);
   }
 
   /**
@@ -184,13 +184,13 @@ public function testTimeResultCachingWithFilter() {
   public function testTimeResultCachingWithPager() {
     $view = Views::getView('test_cache');
     $view->setDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'results_lifespan' => '3600',
         'output_lifespan' => '3600',
-      )
-    ));
+      ]
+    ]);
 
     $mapping = ['views_test_data_name' => 'name'];
 
@@ -228,30 +228,30 @@ function testNoneResultCaching() {
     // Create a basic result which just 2 results.
     $view = Views::getView('test_cache');
     $view->setDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'none',
-      'options' => array(),
-    ));
+      'options' => [],
+    ]);
 
     $this->executeView($view);
     // Verify the result.
     $this->assertEqual(5, count($view->result), 'The number of returned rows match.');
 
     // Add another man to the beatles.
-    $record = array(
+    $record = [
       'name' => 'Rod Davis',
       'age' => 29,
       'job' => 'Banjo',
-    );
+    ];
     db_insert('views_test_data')->fields($record)->execute();
 
     // The Result changes, because the view is not cached.
     $view = Views::getView('test_cache');
     $view->setDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'none',
-      'options' => array(),
-    ));
+      'options' => [],
+    ]);
 
     $this->executeView($view);
     // Verify the result.
@@ -268,12 +268,12 @@ function testHeaderStorage() {
     $view = Views::getView('test_view');
     $view->setDisplay();
     $view->storage->set('id', 'test_cache_header_storage');
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'output_lifespan' => '3600',
-      )
-    ));
+      ]
+    ]);
 
     $output = $view->buildRenderable();
     /** @var \Drupal\Core\Render\RendererInterface $renderer */
@@ -326,13 +326,13 @@ public function testCacheData() {
 
     $view = Views::getView('test_display');
     $view->setDisplay();
-    $view->display_handler->overrideOption('cache', array(
+    $view->display_handler->overrideOption('cache', [
       'type' => 'time',
-      'options' => array(
+      'options' => [
         'results_lifespan' => '3600',
         'output_lifespan' => '3600',
-      )
-    ));
+      ]
+    ]);
     $this->executeView($view);
 
     // Get the cache item.
@@ -390,13 +390,13 @@ public function testArgumentDefaultCache() {
     $view = Views::getView('test_view');
 
     // Add a new argument and set the test plugin for the argument_default.
-    $options = array(
+    $options = [
       'default_argument_type' => 'argument_default_test',
-      'default_argument_options' => array(
+      'default_argument_options' => [
         'value' => 'John'
-      ),
+      ],
       'default_action' => 'default'
-    );
+    ];
     $view->addHandler('default', 'argument', 'views_test_data', 'name', $options);
     $view->initHandlers();
 
diff --git a/core/modules/views/tests/src/Kernel/Plugin/DisplayKernelTest.php b/core/modules/views/tests/src/Kernel/Plugin/DisplayKernelTest.php
index 156b061..69666cf 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/DisplayKernelTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/DisplayKernelTest.php
@@ -24,14 +24,14 @@ class DisplayKernelTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'node', 'field', 'user');
+  public static $modules = ['block', 'node', 'field', 'user'];
 
   /**
    * Views plugin types to test.
    *
    * @var array
    */
-  protected $pluginTypes = array(
+  protected $pluginTypes = [
     'access',
     'cache',
     'query',
@@ -39,24 +39,24 @@ class DisplayKernelTest extends ViewsKernelTestBase {
     'pager',
     'style',
     'row',
-  );
+  ];
 
   /**
    * Views handler types to test.
    *
    * @var array
    */
-  protected $handlerTypes = array(
+  protected $handlerTypes = [
     'fields',
     'sorts',
-  );
+  ];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_display_defaults');
+  public static $testViews = ['test_display_defaults'];
 
   /**
    * Tests the default display options.
diff --git a/core/modules/views/tests/src/Kernel/Plugin/DisplayPageTest.php b/core/modules/views/tests/src/Kernel/Plugin/DisplayPageTest.php
index 5e4724a..8aaaa2d 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/DisplayPageTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/DisplayPageTest.php
@@ -22,14 +22,14 @@ class DisplayPageTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_page_display', 'test_page_display_route', 'test_page_display_menu');
+  public static $testViews = ['test_page_display', 'test_page_display_route', 'test_page_display_menu'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   /**
    * The router dumper to get all routes.
diff --git a/core/modules/views/tests/src/Kernel/Plugin/JoinTest.php b/core/modules/views/tests/src/Kernel/Plugin/JoinTest.php
index db0262a..0839fcb 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/JoinTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/JoinTest.php
@@ -21,7 +21,7 @@ class JoinTest extends RelationshipJoinTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * A plugin manager which handlers the instances of joins.
@@ -47,12 +47,12 @@ public function testExamplePlugin() {
     $view->initDisplay();
     $view->initQuery();
 
-    $configuration = array(
+    $configuration = [
       'left_table' => 'views_test_data',
       'left_field' => 'uid',
       'table' => 'users_field_data',
       'field' => 'uid',
-    );
+    ];
     $join = $this->manager->createInstance('join_test', $configuration);
     $this->assertTrue($join instanceof JoinTestPlugin, 'The correct join class got loaded.');
 
@@ -60,7 +60,7 @@ public function testExamplePlugin() {
     $join->setJoinValue($rand_int);
 
     $query = db_select('views_test_data');
-    $table = array('alias' => 'users_field_data');
+    $table = ['alias' => 'users_field_data'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -80,13 +80,13 @@ public function testBasePlugin() {
 
     // First define a simple join without an extra condition.
     // Set the various options on the join object.
-    $configuration = array(
+    $configuration = [
       'left_table' => 'views_test_data',
       'left_field' => 'uid',
       'table' => 'users_field_data',
       'field' => 'uid',
       'adjusted' => TRUE,
-    );
+    ];
     $join = $this->manager->createInstance('standard', $configuration);
     $this->assertTrue($join instanceof JoinPluginBase, 'The correct join class got loaded.');
     $this->assertNull($join->extra, 'The field extra was not overridden.');
@@ -95,7 +95,7 @@ public function testBasePlugin() {
     // Build the actual join values and read them back from the dbtng query
     // object.
     $query = db_select('views_test_data');
-    $table = array('alias' => 'users_field_data');
+    $table = ['alias' => 'users_field_data'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -107,7 +107,7 @@ public function testBasePlugin() {
 
     // Set a different alias and make sure table info is as expected.
     $join = $this->manager->createInstance('standard', $configuration);
-    $table = array('alias' => 'users1');
+    $table = ['alias' => 'users1'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -117,7 +117,7 @@ public function testBasePlugin() {
     // Set a different join type (INNER) and make sure it is used.
     $configuration['type'] = 'INNER';
     $join = $this->manager->createInstance('standard', $configuration);
-    $table = array('alias' => 'users2');
+    $table = ['alias' => 'users2'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -127,19 +127,19 @@ public function testBasePlugin() {
     // Setup addition conditions and make sure it is used.
     $random_name_1 = $this->randomMachineName();
     $random_name_2 = $this->randomMachineName();
-    $configuration['extra'] = array(
-      array(
+    $configuration['extra'] = [
+      [
         'field' => 'name',
         'value' => $random_name_1
-      ),
-      array(
+      ],
+      [
         'field' => 'name',
         'value' => $random_name_2,
         'operator' => '<>'
-      ),
-    );
+      ],
+    ];
     $join = $this->manager->createInstance('standard', $configuration);
-    $table = array('alias' => 'users3');
+    $table = ['alias' => 'users3'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -147,25 +147,25 @@ public function testBasePlugin() {
     $this->assertTrue(strpos($join_info['condition'], "views_test_data.uid = users3.uid") !== FALSE, 'Make sure the join condition appears in the query.');
     $this->assertTrue(strpos($join_info['condition'], "users3.name = :views_join_condition_0") !== FALSE, 'Make sure the first extra join condition appears in the query and uses the first placeholder.');
     $this->assertTrue(strpos($join_info['condition'], "users3.name <> :views_join_condition_1") !== FALSE, 'Make sure the second extra join condition appears in the query and uses the second placeholder.');
-    $this->assertEqual(array_values($join_info['arguments']), array($random_name_1, $random_name_2), 'Make sure the arguments are in the right order');
+    $this->assertEqual(array_values($join_info['arguments']), [$random_name_1, $random_name_2], 'Make sure the arguments are in the right order');
 
     // Test that 'IN' conditions are properly built.
     $random_name_1 = $this->randomMachineName();
     $random_name_2 = $this->randomMachineName();
     $random_name_3 = $this->randomMachineName();
     $random_name_4 = $this->randomMachineName();
-    $configuration['extra'] = array(
-      array(
+    $configuration['extra'] = [
+      [
         'field' => 'name',
         'value' => $random_name_1
-      ),
-      array(
+      ],
+      [
         'field' => 'name',
-        'value' => array($random_name_2, $random_name_3, $random_name_4),
-      ),
-    );
+        'value' => [$random_name_2, $random_name_3, $random_name_4],
+      ],
+    ];
     $join = $this->manager->createInstance('standard', $configuration);
-    $table = array('alias' => 'users4');
+    $table = ['alias' => 'users4'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -173,26 +173,26 @@ public function testBasePlugin() {
     $this->assertTrue(strpos($join_info['condition'], "views_test_data.uid = users4.uid") !== FALSE, 'Make sure the join condition appears in the query.');
     $this->assertTrue(strpos($join_info['condition'], "users4.name = :views_join_condition_2") !== FALSE, 'Make sure the first extra join condition appears in the query.');
     $this->assertTrue(strpos($join_info['condition'], "users4.name IN ( :views_join_condition_3[] )") !== FALSE, 'The IN condition for the join is properly formed.');
-    $this->assertEqual($join_info['arguments'][':views_join_condition_3[]'], array($random_name_2, $random_name_3, $random_name_4), 'Make sure the IN arguments are still part of an array.');
+    $this->assertEqual($join_info['arguments'][':views_join_condition_3[]'], [$random_name_2, $random_name_3, $random_name_4], 'Make sure the IN arguments are still part of an array.');
 
     // Test that all the conditions are properly built.
-    $configuration['extra'] = array(
-      array(
+    $configuration['extra'] = [
+      [
         'field' => 'langcode',
         'value' => 'en'
-      ),
-      array(
+      ],
+      [
         'left_field' => 'status',
         'value' => 0,
         'numeric' => TRUE,
-      ),
-      array(
+      ],
+      [
         'field' => 'name',
         'left_field' => 'name'
-      ),
-    );
+      ],
+    ];
     $join = $this->manager->createInstance('standard', $configuration);
-    $table = array('alias' => 'users5');
+    $table = ['alias' => 'users5'];
     $join->buildJoin($query, $table, $view->query);
 
     $tables = $query->getTables();
@@ -201,7 +201,7 @@ public function testBasePlugin() {
     $this->assertTrue(strpos($join_info['condition'], "users5.langcode = :views_join_condition_4") !== FALSE, 'Make sure the first extra join condition appears in the query.');
     $this->assertTrue(strpos($join_info['condition'], "views_test_data.status = :views_join_condition_5") !== FALSE, 'Make sure the second extra join condition appears in the query.');
     $this->assertTrue(strpos($join_info['condition'], "users5.name = views_test_data.name") !== FALSE, 'Make sure the third extra join condition appears in the query.');
-    $this->assertEqual(array_values($join_info['arguments']), array('en', 0), 'Make sure the arguments are in the right order');
+    $this->assertEqual(array_values($join_info['arguments']), ['en', 0], 'Make sure the arguments are in the right order');
   }
 
 }
diff --git a/core/modules/views/tests/src/Kernel/Plugin/QueryTest.php b/core/modules/views/tests/src/Kernel/Plugin/QueryTest.php
index 2422ded..02548b2 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/QueryTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/QueryTest.php
@@ -18,7 +18,7 @@ class QueryTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   protected function viewsData() {
     $data = parent::viewsData();
diff --git a/core/modules/views/tests/src/Kernel/Plugin/RelationshipJoinTestBase.php b/core/modules/views/tests/src/Kernel/Plugin/RelationshipJoinTestBase.php
index cf604f9..1163297 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/RelationshipJoinTestBase.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/RelationshipJoinTestBase.php
@@ -18,7 +18,7 @@
    *
    * @var array
    */
-  public static $modules = array('system', 'user', 'field');
+  public static $modules = ['system', 'user', 'field'];
 
   /**
    * @var \Drupal\user\Entity\User
@@ -30,7 +30,7 @@
    */
   protected function setUpFixtures() {
     $this->installEntitySchema('user');
-    $this->installConfig(array('user'));
+    $this->installConfig(['user']);
     parent::setUpFixtures();
 
     // Create a record for uid 1.
@@ -48,13 +48,13 @@ protected function setUpFixtures() {
   protected function schemaDefinition() {
     $schema = parent::schemaDefinition();
 
-    $schema['views_test_data']['fields']['uid'] = array(
+    $schema['views_test_data']['fields']['uid'] = [
       'description' => "The {users_field_data}.uid of the author of the beatle entry.",
       'type' => 'int',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => 0
-    );
+    ];
 
     return $schema;
   }
@@ -66,15 +66,15 @@ protected function schemaDefinition() {
    */
   protected function viewsData() {
     $data = parent::viewsData();
-    $data['views_test_data']['uid'] = array(
+    $data['views_test_data']['uid'] = [
       'title' => t('UID'),
       'help' => t('The test data UID'),
-      'relationship' => array(
+      'relationship' => [
         'id' => 'standard',
         'base' => 'users_field_data',
         'base field' => 'uid'
-      )
-    );
+      ]
+    ];
 
     return $data;
   }
diff --git a/core/modules/views/tests/src/Kernel/Plugin/RelationshipTest.php b/core/modules/views/tests/src/Kernel/Plugin/RelationshipTest.php
index 846da66..802befe 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/RelationshipTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/RelationshipTest.php
@@ -19,17 +19,17 @@ class RelationshipTest extends RelationshipJoinTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Maps between the key in the expected result and the query result.
    *
    * @var array
    */
-  protected $columnMap = array(
+  protected $columnMap = [
     'views_test_data_name' => 'name',
     'users_field_data_views_test_data_uid' => 'uid',
-  );
+  ];
 
   /**
    * Tests the query result of a view with a relationship.
@@ -42,53 +42,53 @@ public function testRelationshipQuery() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('relationships', array(
-      'uid' => array(
+    $view->displayHandlers->get('default')->overrideOption('relationships', [
+      'uid' => [
         'id' => 'uid',
         'table' => 'views_test_data',
         'field' => 'uid',
-      ),
-    ));
+      ],
+    ]);
 
-    $view->displayHandlers->get('default')->overrideOption('filters', array(
-      'uid' => array(
+    $view->displayHandlers->get('default')->overrideOption('filters', [
+      'uid' => [
         'id' => 'uid',
         'table' => 'users_field_data',
         'field' => 'uid',
         'relationship' => 'uid',
-      ),
-    ));
+      ],
+    ]);
 
     $fields = $view->displayHandlers->get('default')->getOption('fields');
-    $view->displayHandlers->get('default')->overrideOption('fields', $fields + array(
-      'uid' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', $fields + [
+      'uid' => [
         'id' => 'uid',
         'table' => 'users_field_data',
         'field' => 'uid',
         'relationship' => 'uid',
-      ),
-    ));
+      ],
+    ]);
 
     $view->initHandlers();
 
     // Check for all beatles created by admin.
-    $view->filter['uid']->value = array(1);
+    $view->filter['uid']->value = [1];
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'John',
         'uid' => 1
-      )
-    );
+      ]
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
     $view->destroy();
 
     // Check for all beatles created by another user, which so doesn't exist.
     $view->initHandlers();
-    $view->filter['uid']->value = array(3);
+    $view->filter['uid']->value = [3];
     $this->executeView($view);
-    $expected_result = array();
+    $expected_result = [];
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
     $view->destroy();
 
@@ -98,12 +98,12 @@ public function testRelationshipQuery() {
     $view->relationship['uid']->options['required'] = TRUE;
     $this->executeView($view);
 
-    $expected_result = array(
-      array(
+    $expected_result = [
+      [
         'name' => 'John',
         'uid' => 1
-      )
-    );
+      ]
+    ];
     $this->assertIdenticalResultset($view, $expected_result, $this->columnMap);
     $view->destroy();
 
diff --git a/core/modules/views/tests/src/Kernel/Plugin/RowEntityTest.php b/core/modules/views/tests/src/Kernel/Plugin/RowEntityTest.php
index 8d2d866..b4ac0be 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/RowEntityTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/RowEntityTest.php
@@ -28,7 +28,7 @@ class RowEntityTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_entity_row');
+  public static $testViews = ['test_entity_row'];
 
   /**
    * {@inheritdoc}
@@ -37,7 +37,7 @@ protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
     $this->installEntitySchema('taxonomy_term');
-    $this->installConfig(array('taxonomy'));
+    $this->installConfig(['taxonomy']);
     \Drupal::service('router.builder')->rebuild();
   }
 
@@ -57,7 +57,7 @@ public function testEntityRow() {
     $this->assertText($term->getName(), 'The rendered entity appears as row in the view.');
 
     // Tests the available view mode options.
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $form_state->set('view', $view->storage);
     $view->rowPlugin->buildOptionsForm($form, $form_state);
diff --git a/core/modules/views/tests/src/Kernel/Plugin/RowRenderCacheTest.php b/core/modules/views/tests/src/Kernel/Plugin/RowRenderCacheTest.php
index ac85c77..223963e 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/RowRenderCacheTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/RowRenderCacheTest.php
@@ -24,14 +24,14 @@ class RowRenderCacheTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('user', 'node');
+  public static $modules = ['user', 'node'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_row_render_cache', 'test_row_render_cache_none');
+  public static $testViews = ['test_row_render_cache', 'test_row_render_cache_none'];
 
   /**
    * An editor user account.
diff --git a/core/modules/views/tests/src/Kernel/Plugin/SqlQueryTest.php b/core/modules/views/tests/src/Kernel/Plugin/SqlQueryTest.php
index ca7ba5b..6846f77 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/SqlQueryTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/SqlQueryTest.php
@@ -18,7 +18,7 @@ class SqlQueryTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * {@inheritdoc}
@@ -26,7 +26,7 @@ class SqlQueryTest extends ViewsKernelTestBase {
   protected function viewsData() {
     $data = parent::viewsData();
     $data['views_test_data']['table']['base']['access query tag'] = 'test_tag';
-    $data['views_test_data']['table']['base']['query metadata'] = array('key1' => 'test_metadata', 'key2' => 'test_metadata2');
+    $data['views_test_data']['table']['base']['query metadata'] = ['key1' => 'test_metadata', 'key2' => 'test_metadata2'];
 
     return $data;
   }
@@ -45,7 +45,7 @@ public function testExecuteMetadata() {
     /** @var \Drupal\Core\Database\Query\Select $count_query */
     $count_query = $view->build_info['count_query'];
 
-    foreach (array($main_query, $count_query) as $query) {
+    foreach ([$main_query, $count_query] as $query) {
       // Check query access tags.
       $this->assertTrue($query->hasTag('test_tag'));
 
@@ -69,7 +69,7 @@ public function testExecuteMetadata() {
     /** @var \Drupal\Core\Database\Query\Select $count_query */
     $count_query = $view->build_info['count_query'];
 
-    foreach (array($main_query, $count_query) as $query) {
+    foreach ([$main_query, $count_query] as $query) {
       // Check query access tags.
       $this->assertFalse($query->hasTag('test_tag'));
 
diff --git a/core/modules/views/tests/src/Kernel/Plugin/StyleHtmlListTest.php b/core/modules/views/tests/src/Kernel/Plugin/StyleHtmlListTest.php
index f1f1fb1..717403d 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/StyleHtmlListTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/StyleHtmlListTest.php
@@ -18,7 +18,7 @@ class StyleHtmlListTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_style_html_list');
+  public static $testViews = ['test_style_html_list'];
 
   /**
    * Make sure that the HTML list style markup is correct.
diff --git a/core/modules/views/tests/src/Kernel/Plugin/StyleMappingTest.php b/core/modules/views/tests/src/Kernel/Plugin/StyleMappingTest.php
index 1cb4400..d0683de 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/StyleMappingTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/StyleMappingTest.php
@@ -11,14 +11,14 @@
  */
 class StyleMappingTest extends StyleTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_style_mapping');
+  public static $testViews = ['test_style_mapping'];
 
   /**
    * Verifies that the fields were mapped correctly.
@@ -68,7 +68,7 @@ protected function mappedOutputHelper($view) {
         // separated by ':'.
         $expected_result = $name . ':' . $data_set[$count][$field_id];
         $actual_result = (string) $field;
-        $this->assertIdentical($expected_result, $actual_result, format_string('The fields were mapped successfully: %name => %field_id', array('%name' => $name, '%field_id' => $field_id)));
+        $this->assertIdentical($expected_result, $actual_result, format_string('The fields were mapped successfully: %name => %field_id', ['%name' => $name, '%field_id' => $field_id]));
       }
 
       $count++;
diff --git a/core/modules/views/tests/src/Kernel/Plugin/StyleTableUnitTest.php b/core/modules/views/tests/src/Kernel/Plugin/StyleTableUnitTest.php
index f7ede52..365b0c7 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/StyleTableUnitTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/StyleTableUnitTest.php
@@ -19,7 +19,7 @@ class StyleTableUnitTest extends PluginKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_table');
+  public static $testViews = ['test_table'];
 
   /**
    * Tests the table style.
@@ -101,7 +101,7 @@ public function testTable() {
     $view->destroy();
 
     // Use a existing field, and sort both ascending and descending.
-    foreach (array('asc', 'desc') as $order) {
+    foreach (['asc', 'desc'] as $order) {
       $this->prepareView($view);
       $style_plugin = $view->style_plugin;
       $request->query->set('sort', $order);
@@ -133,7 +133,7 @@ public function testTable() {
     // Render an empty result, and ensure that the area handler is rendered.
     $view->setDisplay('default');
     $view->executed = TRUE;
-    $view->result = array();
+    $view->result = [];
     $output = $view->preview();
     $output = \Drupal::service('renderer')->renderRoot($output);
 
diff --git a/core/modules/views/tests/src/Kernel/Plugin/StyleUnformattedTest.php b/core/modules/views/tests/src/Kernel/Plugin/StyleUnformattedTest.php
index 14e5895..f1b254c 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/StyleUnformattedTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/StyleUnformattedTest.php
@@ -16,7 +16,7 @@ class StyleUnformattedTest extends StyleTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Make sure that the default css classes works as expected.
diff --git a/core/modules/views/tests/src/Kernel/Plugin/ViewsBlockTest.php b/core/modules/views/tests/src/Kernel/Plugin/ViewsBlockTest.php
index d06ae66..879f6d4 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/ViewsBlockTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/ViewsBlockTest.php
@@ -19,14 +19,14 @@ class ViewsBlockTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'block_test_views');
+  public static $modules = ['block', 'block_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view_block');
+  public static $testViews = ['test_view_block'];
 
   /**
    * {@inheritdoc}
@@ -34,7 +34,7 @@ class ViewsBlockTest extends ViewsKernelTestBase {
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
-    ViewTestData::createTestViews(get_class($this), array('block_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['block_test_views']);
   }
 
   /**
@@ -43,11 +43,11 @@ protected function setUp($import_test_views = TRUE) {
    * @see \Drupal\views\Plugin\Block::getmachineNameSuggestion()
    */
   public function testMachineNameSuggestion() {
-    $plugin_definition = array(
+    $plugin_definition = [
       'provider' => 'views',
-    );
+    ];
     $plugin_id = 'views_block:test_view_block-block_1';
-    $views_block = ViewsBlock::create($this->container, array(), $plugin_id, $plugin_definition);
+    $views_block = ViewsBlock::create($this->container, [], $plugin_id, $plugin_definition);
 
     $this->assertEqual($views_block->getMachineNameSuggestion(), 'views_block__test_view_block_block_1');
   }
@@ -96,8 +96,8 @@ public function testBuildWithTitleOverride() {
     $view->setDisplay();
 
     // Add a fixed argument that sets a title and save the view.
-    $view->displayHandlers->get('default')->overrideOption('arguments', array(
-      'name' => array(
+    $view->displayHandlers->get('default')->overrideOption('arguments', [
+      'name' => [
         'default_action' => 'default',
         'title_enable' => TRUE,
         'title' => 'Overridden title',
@@ -105,16 +105,16 @@ public function testBuildWithTitleOverride() {
         'default_argument_options' => [
           'argument' => 'fixed'
         ],
-        'validate' => array(
+        'validate' => [
           'type' => 'none',
           'fail' => 'not found',
-        ),
+        ],
         'id' => 'name',
         'table' => 'views_test_data',
         'field' => 'name',
         'plugin_id' => 'string',
-      )
-    ));
+      ]
+    ]);
     $view->save();
 
     $plugin_definition = [
diff --git a/core/modules/views/tests/src/Kernel/PluginInstanceTest.php b/core/modules/views/tests/src/Kernel/PluginInstanceTest.php
index f5c61ee..b120400 100644
--- a/core/modules/views/tests/src/Kernel/PluginInstanceTest.php
+++ b/core/modules/views/tests/src/Kernel/PluginInstanceTest.php
@@ -16,7 +16,7 @@ class PluginInstanceTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  protected $pluginTypes = array(
+  protected $pluginTypes = [
     'access',
     'area',
     'argument',
@@ -36,7 +36,7 @@ class PluginInstanceTest extends ViewsKernelTestBase {
     'sort',
     'style',
     'wizard',
-  );
+  ];
 
   /**
    * An array of plugin definitions, keyed by plugin type.
@@ -60,8 +60,8 @@ public function testPluginData() {
 
     // Check all plugin types.
     foreach ($this->pluginTypes as $type) {
-      $this->assertTrue(array_key_exists($type, $this->definitions), format_string('Key for plugin type @type found.', array('@type' => $type)));
-      $this->assertTrue(is_array($this->definitions[$type]) && !empty($this->definitions[$type]), format_string('Plugin type @type has an array of plugins.', array('@type' => $type)));
+      $this->assertTrue(array_key_exists($type, $this->definitions), format_string('Key for plugin type @type found.', ['@type' => $type]));
+      $this->assertTrue(is_array($this->definitions[$type]) && !empty($this->definitions[$type]), format_string('Plugin type @type has an array of plugins.', ['@type' => $type]));
     }
 
     // Tests that the plugin list has not missed any types.
@@ -87,7 +87,7 @@ public function testPluginInstances() {
           // good to check they can be created but for throwing any notices for
           // method signatures etc. too.
           $instance = $manager->createInstance($id);
-          $this->assertTrue($instance instanceof $definition['class'], format_string('Instance of @type:@id created', array('@type' => $type, '@id' => $id)));
+          $this->assertTrue($instance instanceof $definition['class'], format_string('Instance of @type:@id created', ['@type' => $type, '@id' => $id]));
         }
       }
     }
diff --git a/core/modules/views/tests/src/Kernel/QueryGroupByTest.php b/core/modules/views/tests/src/Kernel/QueryGroupByTest.php
index 594bd62..e4a0884 100644
--- a/core/modules/views/tests/src/Kernel/QueryGroupByTest.php
+++ b/core/modules/views/tests/src/Kernel/QueryGroupByTest.php
@@ -20,14 +20,14 @@ class QueryGroupByTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_group_by_in_filters', 'test_aggregate_count', 'test_group_by_count', 'test_group_by_count_multicardinality', 'test_group_by_field_not_within_bundle');
+  public static $testViews = ['test_group_by_in_filters', 'test_aggregate_count', 'test_group_by_count', 'test_group_by_count_multicardinality', 'test_group_by_field_not_within_bundle'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('entity_test', 'system', 'field', 'user', 'language');
+  public static $modules = ['entity_test', 'system', 'field', 'user', 'language'];
 
   /**
    * The storage for the test entity type.
@@ -63,7 +63,7 @@ public function testAggregateCount() {
 
     $this->assertEqual(count($view->result), 2, 'Make sure the count of items is right.');
 
-    $types = array();
+    $types = [];
     foreach ($view->result as $item) {
       // num_records is a alias for id.
       $types[$item->entity_test_name] = $item->num_records;
@@ -101,12 +101,12 @@ public function groupByTestHelper($aggregation_function, $values) {
 
     $this->assertEqual(count($view->result), 2, 'Make sure the count of items is right.');
     // Group by name to identify the right count.
-    $results = array();
+    $results = [];
     foreach ($view->result as $item) {
       $results[$item->entity_test_name] = $item->id;
     }
-    $this->assertEqual($results['name1'], $values[0], format_string('Aggregation with @aggregation_function and groupby name: name1 returned the expected amount of results', array('@aggregation_function' => $aggregation_function)));
-    $this->assertEqual($results['name2'], $values[1], format_string('Aggregation with @aggregation_function and groupby name: name2 returned the expected amount of results', array('@aggregation_function' => $aggregation_function)));
+    $this->assertEqual($results['name1'], $values[0], format_string('Aggregation with @aggregation_function and groupby name: name1 returned the expected amount of results', ['@aggregation_function' => $aggregation_function]));
+    $this->assertEqual($results['name2'], $values[1], format_string('Aggregation with @aggregation_function and groupby name: name2 returned the expected amount of results', ['@aggregation_function' => $aggregation_function]));
   }
 
   /**
@@ -114,18 +114,18 @@ public function groupByTestHelper($aggregation_function, $values) {
    */
   protected function setupTestEntities() {
     // Create 4 entities with name1 and 3 entities with name2.
-    $entity_1 = array(
+    $entity_1 = [
       'name' => 'name1',
-    );
+    ];
 
     $this->storage->create($entity_1)->save();
     $this->storage->create($entity_1)->save();
     $this->storage->create($entity_1)->save();
     $this->storage->create($entity_1)->save();
 
-    $entity_2 = array(
+    $entity_2 = [
       'name' => 'name2',
-    );
+    ];
     $this->storage->create($entity_2)->save();
     $this->storage->create($entity_2)->save();
     $this->storage->create($entity_2)->save();
@@ -135,42 +135,42 @@ protected function setupTestEntities() {
    * Tests the count aggregation function.
    */
   public function testGroupByCount() {
-    $this->groupByTestHelper('count', array(4, 3));
+    $this->groupByTestHelper('count', [4, 3]);
   }
 
   /**
    * Tests the sum aggregation function.
    */
   public function testGroupBySum() {
-    $this->groupByTestHelper('sum', array(10, 18));
+    $this->groupByTestHelper('sum', [10, 18]);
   }
 
   /**
    * Tests the average aggregation function.
    */
   public function testGroupByAverage() {
-    $this->groupByTestHelper('avg', array(2.5, 6));
+    $this->groupByTestHelper('avg', [2.5, 6]);
   }
 
   /**
    * Tests the min aggregation function.
    */
   public function testGroupByMin() {
-    $this->groupByTestHelper('min', array(1, 5));
+    $this->groupByTestHelper('min', [1, 5]);
   }
 
   /**
    * Tests the max aggregation function.
    */
   public function testGroupByMax() {
-    $this->groupByTestHelper('max', array(4, 7));
+    $this->groupByTestHelper('max', [4, 7]);
   }
 
   /**
    * Tests aggregation with no specific function.
    */
   public function testGroupByNone() {
-    $this->groupByTestHelper(NULL, array(1, 5));
+    $this->groupByTestHelper(NULL, [1, 5]);
   }
 
   /**
@@ -181,7 +181,7 @@ public function testGroupByCountOnlyFilters() {
     // doesn't display SUM, COUNT, MAX, etc. functions in SELECT statement.
 
     for ($x = 0; $x < 10; $x++) {
-      $this->storage->create(array('name' => 'name1'))->save();
+      $this->storage->create(['name' => 'name1'])->save();
     }
 
     $view = Views::getView('test_group_by_in_filters');
diff --git a/core/modules/views/tests/src/Kernel/TestViewsTest.php b/core/modules/views/tests/src/Kernel/TestViewsTest.php
index 79d8819..f9aa673 100644
--- a/core/modules/views/tests/src/Kernel/TestViewsTest.php
+++ b/core/modules/views/tests/src/Kernel/TestViewsTest.php
@@ -22,7 +22,7 @@ class TestViewsTest extends KernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_test_data');
+  public static $modules = ['views_test_data'];
 
   /**
    * Tests default configuration data type.
diff --git a/core/modules/views/tests/src/Kernel/TokenReplaceTest.php b/core/modules/views/tests/src/Kernel/TokenReplaceTest.php
index 160f4e2..41f2cf0 100644
--- a/core/modules/views/tests/src/Kernel/TokenReplaceTest.php
+++ b/core/modules/views/tests/src/Kernel/TokenReplaceTest.php
@@ -12,14 +12,14 @@
  */
 class TokenReplaceTest extends ViewsKernelTestBase {
 
-  public static $modules = array('system');
+  public static $modules = ['system'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_tokens', 'test_invalid_tokens');
+  public static $testViews = ['test_tokens', 'test_invalid_tokens'];
 
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
@@ -37,7 +37,7 @@ function testTokenReplacement() {
     $view->display_handler->getPlugin('pager')->setItemsPerPage(4);
     $this->executeView($view);
 
-    $expected = array(
+    $expected = [
       '[view:label]' => 'Test tokens',
       '[view:description]' => 'Test view to token replacement tests.',
       '[view:id]' => 'test_tokens',
@@ -49,7 +49,7 @@ function testTokenReplacement() {
       '[view:items-per-page]' => '4',
       '[view:current-page]' => '1',
       '[view:page-count]' => '2',
-    );
+    ];
 
     $base_bubbleable_metadata = BubbleableMetadata::createFromObject($view->storage);
     $metadata_tests = [];
@@ -67,8 +67,8 @@ function testTokenReplacement() {
 
     foreach ($expected as $token => $expected_output) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_handler->replace($token, array('view' => $view), [], $bubbleable_metadata);
-      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', array('%token' => $token)));
+      $output = $token_handler->replace($token, ['view' => $view], [], $bubbleable_metadata);
+      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', ['%token' => $token]));
       $this->assertEqual($bubbleable_metadata, $metadata_tests[$token]);
     }
   }
@@ -84,7 +84,7 @@ function testTokenReplacementWithMiniPager() {
 
     $this->assertSame(TRUE, $view->get_total_rows, 'The query was set to calculate the total number of rows.');
 
-    $expected = array(
+    $expected = [
       '[view:label]' => 'Test tokens',
       '[view:description]' => 'Test view to token replacement tests.',
       '[view:id]' => 'test_tokens',
@@ -98,13 +98,13 @@ function testTokenReplacementWithMiniPager() {
       '[view:items-per-page]' => '2',
       '[view:current-page]' => '1',
       '[view:page-count]' => '3',
-    );
+    ];
 
     $base_bubbleable_metadata = BubbleableMetadata::createFromObject($view->storage);
 
     foreach ($expected as $token => $expected_output) {
       $bubbleable_metadata = new BubbleableMetadata();
-      $output = $token_handler->replace($token, array('view' => $view), [], $bubbleable_metadata);
+      $output = $token_handler->replace($token, ['view' => $view], [], $bubbleable_metadata);
       $this->assertSame($expected_output, $output, sprintf('Token %s replaced correctly.', $token));
       $this->assertEquals($base_bubbleable_metadata, $bubbleable_metadata);
     }
@@ -119,13 +119,13 @@ function testTokenReplacementNoResults() {
     $view->setDisplay('page_2');
     $this->executeView($view);
 
-    $expected = array(
+    $expected = [
       '[view:page-count]' => '1',
-    );
+    ];
 
     foreach ($expected as $token => $expected_output) {
-      $output = $token_handler->replace($token, array('view' => $view));
-      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', array('%token' => $token)));
+      $output = $token_handler->replace($token, ['view' => $view]);
+      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', ['%token' => $token]));
     }
   }
 
@@ -138,13 +138,13 @@ function testTokenReplacementNoPath() {
     $view->setDisplay('block_1');
     $this->executeView($view);
 
-    $expected = array(
+    $expected = [
       '[view:url]' => '',
-    );
+    ];
 
     foreach ($expected as $token => $expected_output) {
-      $output = $token_handler->replace($token, array('view' => $view));
-      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', array('%token' => $token)));
+      $output = $token_handler->replace($token, ['view' => $view]);
+      $this->assertIdentical($output, $expected_output, format_string('Token %token replaced correctly.', ['%token' => $token]));
     }
   }
 
diff --git a/core/modules/views/tests/src/Kernel/ViewExecutableTest.php b/core/modules/views/tests/src/Kernel/ViewExecutableTest.php
index 01057b4..f843892 100644
--- a/core/modules/views/tests/src/Kernel/ViewExecutableTest.php
+++ b/core/modules/views/tests/src/Kernel/ViewExecutableTest.php
@@ -38,14 +38,14 @@ class ViewExecutableTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_destroy', 'test_executable_displays');
+  public static $testViews = ['test_destroy', 'test_executable_displays'];
 
   /**
    * Properties that should be stored in the configuration.
    *
    * @var array
    */
-  protected $configProperties = array(
+  protected $configProperties = [
     'disabled',
     'name',
     'description',
@@ -54,14 +54,14 @@ class ViewExecutableTest extends ViewsKernelTestBase {
     'label',
     'core',
     'display',
-  );
+  ];
 
   /**
    * Properties that should be stored in the executable.
    *
    * @var array
    */
-  protected $executableProperties = array(
+  protected $executableProperties = [
     'storage',
     'built',
     'executed',
@@ -74,14 +74,14 @@ class ViewExecutableTest extends ViewsKernelTestBase {
     'exposed_raw_input',
     'old_view',
     'parent_views',
-  );
+  ];
 
   protected function setUpFixtures() {
     $this->installEntitySchema('user');
     $this->installEntitySchema('node');
     $this->installEntitySchema('comment');
-    $this->installSchema('comment', array('comment_entity_statistics'));
-    $this->installConfig(array('system', 'field', 'node', 'comment'));
+    $this->installSchema('comment', ['comment_entity_statistics']);
+    $this->installConfig(['system', 'field', 'node', 'comment']);
 
     NodeType::create([
       'type' => 'page',
@@ -90,7 +90,7 @@ protected function setUpFixtures() {
     $this->addDefaultCommentField('node', 'page');
     parent::setUpFixtures();
 
-    $this->installConfig(array('filter'));
+    $this->installConfig(['filter']);
   }
 
   /**
@@ -123,7 +123,7 @@ public function testInitMethods() {
       if ($type == 'relationship') {
         continue;
       }
-      $this->assertTrue(count($view->$type), format_string('Make sure a %type instance got instantiated.', array('%type' => $type)));
+      $this->assertTrue(count($view->$type), format_string('Make sure a %type instance got instantiated.', ['%type' => $type]));
     }
 
     // initHandlers() should create display handlers automatically as well.
@@ -256,7 +256,7 @@ public function testDisplays() {
     $this->assertTrue($view->rowPlugin instanceof Fields);
 
     // Test the newDisplay() method.
-    $view = $this->container->get('entity.manager')->getStorage('view')->create(array('id' => 'test_executable_displays'));
+    $view = $this->container->get('entity.manager')->getStorage('view')->create(['id' => 'test_executable_displays']);
     $executable = $view->getExecutable();
 
     $executable->newDisplay('page');
@@ -289,10 +289,10 @@ public function testPropertyMethods() {
     $this->assertNull($view->usePager());
 
     // Add a pager, initialize, and test.
-    $view->displayHandlers->get('default')->overrideOption('pager', array(
+    $view->displayHandlers->get('default')->overrideOption('pager', [
       'type' => 'full',
-      'options' => array('items_per_page' => 10),
-    ));
+      'options' => ['items_per_page' => 10],
+    ]);
     $view->initPager();
     $this->assertTrue($view->usePager());
 
@@ -302,10 +302,10 @@ public function testPropertyMethods() {
     $this->assertEqual($view->getOffset(), $rand);
 
     // Test the getBaseTable() method.
-    $expected = array(
+    $expected = [
       'views_test_data' => TRUE,
       '#global' => TRUE,
-    );
+    ];
     $this->assertIdentical($view->getBaseTables(), $expected);
 
     // Test response methods.
@@ -386,7 +386,7 @@ protected function getProtectedProperty($instance, $property) {
    */
   public function testGetHandlerTypes() {
     $types = ViewExecutable::getHandlerTypes();
-    foreach (array('field', 'filter', 'argument', 'sort', 'header', 'footer', 'empty') as $type) {
+    foreach (['field', 'filter', 'argument', 'sort', 'header', 'footer', 'empty'] as $type) {
       $this->assertTrue(isset($types[$type]));
       // @todo The key on the display should be footers, headers and empties
       //   or something similar instead of the singular, but so long check for
@@ -430,7 +430,7 @@ public function testValidate() {
       $match = function($value) use ($display) {
         return strpos($value, $display->display['display_title']) !== FALSE;
       };
-      $this->assertTrue(array_filter($validate[$id], $match), format_string('Error message found for @id display', array('@id' => $id)));
+      $this->assertTrue(array_filter($validate[$id], $match), format_string('Error message found for @id display', ['@id' => $id]));
       $count++;
     }
 
diff --git a/core/modules/views/tests/src/Kernel/ViewStorageTest.php b/core/modules/views/tests/src/Kernel/ViewStorageTest.php
index fa264bd..29f1996 100644
--- a/core/modules/views/tests/src/Kernel/ViewStorageTest.php
+++ b/core/modules/views/tests/src/Kernel/ViewStorageTest.php
@@ -21,7 +21,7 @@ class ViewStorageTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  protected $configProperties = array(
+  protected $configProperties = [
     'status',
     'module',
     'id',
@@ -31,7 +31,7 @@ class ViewStorageTest extends ViewsKernelTestBase {
     'label',
     'core',
     'display',
-  );
+  ];
 
   /**
    * The entity type definition.
@@ -52,7 +52,7 @@ class ViewStorageTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_storage');
+  public static $testViews = ['test_view_storage'];
 
   /**
    * Tests CRUD operations.
@@ -85,11 +85,11 @@ protected function loadTests() {
     // expected properties.
     $this->assertTrue($view instanceof View, 'Single View instance loaded.');
     foreach ($this->configProperties as $property) {
-      $this->assertTrue($view->get($property) !== NULL, format_string('Property: @property loaded onto View.', array('@property' => $property)));
+      $this->assertTrue($view->get($property) !== NULL, format_string('Property: @property loaded onto View.', ['@property' => $property]));
     }
 
     // Check the displays have been loaded correctly from config display data.
-    $expected_displays = array('default', 'block_1', 'page_1');
+    $expected_displays = ['default', 'block_1', 'page_1'];
     $this->assertEqual(array_keys($view->get('display')), $expected_displays, 'The correct display names are present.');
 
     // Check each ViewDisplay object and confirm that it has the correct key and
@@ -101,7 +101,7 @@ protected function loadTests() {
       // exists.
       $original_options = $data['display'][$key];
       foreach ($original_options as $orig_key => $value) {
-        $this->assertIdentical($display[$orig_key], $value, format_string('@key is identical to saved data', array('@key' => $key)));
+        $this->assertIdentical($display[$orig_key], $value, format_string('@key is identical to saved data', ['@key' => $key]));
       }
     }
 
@@ -115,12 +115,12 @@ protected function loadTests() {
    */
   protected function createTests() {
     // Create a new View instance with empty values.
-    $created = $this->controller->create(array());
+    $created = $this->controller->create([]);
 
     $this->assertTrue($created instanceof View, 'Created object is a View.');
     // Check that the View contains all of the properties.
     foreach ($this->configProperties as $property) {
-      $this->assertTrue(property_exists($created, $property), format_string('Property: @property created on View.', array('@property' => $property)));
+      $this->assertTrue(property_exists($created, $property), format_string('Property: @property created on View.', ['@property' => $property]));
     }
 
     // Create a new View instance with config values.
@@ -137,8 +137,8 @@ protected function createTests() {
 
     // Test all properties except displays.
     foreach ($properties as $property) {
-      $this->assertTrue($created->get($property) !== NULL, format_string('Property: @property created on View.', array('@property' => $property)));
-      $this->assertIdentical($values[$property], $created->get($property), format_string('Property value: @property matches configuration value.', array('@property' => $property)));
+      $this->assertTrue($created->get($property) !== NULL, format_string('Property: @property created on View.', ['@property' => $property]));
+      $this->assertIdentical($values[$property], $created->get($property), format_string('Property value: @property matches configuration value.', ['@property' => $property]));
     }
 
     // Check the UUID of the loaded View.
@@ -177,44 +177,44 @@ protected function displayTests() {
    * Tests the display related functions like getDisplaysList().
    */
   protected function displayMethodTests() {
-    $config['display'] = array(
-      'page_1' => array(
-        'display_options' => array('path' => 'test'),
+    $config['display'] = [
+      'page_1' => [
+        'display_options' => ['path' => 'test'],
         'display_plugin' => 'page',
         'id' => 'page_2',
         'display_title' => 'Page 1',
         'position' => 1
-      ),
-      'feed_1' => array(
-        'display_options' => array('path' => 'test.xml'),
+      ],
+      'feed_1' => [
+        'display_options' => ['path' => 'test.xml'],
         'display_plugin' => 'feed',
         'id' => 'feed',
         'display_title' => 'Feed',
         'position' => 2
-      ),
-      'page_2' => array(
-        'display_options' => array('path' => 'test/%/extra'),
+      ],
+      'page_2' => [
+        'display_options' => ['path' => 'test/%/extra'],
         'display_plugin' => 'page',
         'id' => 'page_2',
         'display_title' => 'Page 2',
         'position' => 3
-      )
-    );
+      ]
+    ];
     $view = $this->controller->create($config);
 
     // Tests Drupal\views\Entity\View::addDisplay()
-    $view = $this->controller->create(array());
+    $view = $this->controller->create([]);
     $random_title = $this->randomMachineName();
 
     $id = $view->addDisplay('page', $random_title);
-    $this->assertEqual($id, 'page_1', format_string('Make sure the first display (%id_new) has the expected ID (%id)', array('%id_new' => $id, '%id' => 'page_1')));
+    $this->assertEqual($id, 'page_1', format_string('Make sure the first display (%id_new) has the expected ID (%id)', ['%id_new' => $id, '%id' => 'page_1']));
     $display = $view->get('display');
     $this->assertEqual($display[$id]['display_title'], $random_title);
 
     $random_title = $this->randomMachineName();
     $id = $view->addDisplay('page', $random_title);
     $display = $view->get('display');
-    $this->assertEqual($id, 'page_2', format_string('Make sure the second display (%id_new) has the expected ID (%id)', array('%id_new' => $id, '%id' => 'page_2')));
+    $this->assertEqual($id, 'page_2', format_string('Make sure the second display (%id_new) has the expected ID (%id)', ['%id_new' => $id, '%id' => 'page_2']));
     $this->assertEqual($display[$id]['display_title'], $random_title);
 
     $id = $view->addDisplay('page');
@@ -233,7 +233,7 @@ protected function displayMethodTests() {
     // Tests Drupal\views\Entity\View::generateDisplayId(). Since
     // generateDisplayId() is protected, we have to use reflection to unit-test
     // it.
-    $view = $this->controller->create(array());
+    $view = $this->controller->create([]);
     $ref_generate_display_id = new \ReflectionMethod($view, 'generateDisplayId');
     $ref_generate_display_id->setAccessible(TRUE);
     $this->assertEqual(
@@ -254,38 +254,38 @@ protected function displayMethodTests() {
     );
 
     // Tests item related methods().
-    $view = $this->controller->create(array('base_table' => 'views_test_data'));
+    $view = $this->controller->create(['base_table' => 'views_test_data']);
     $view->addDisplay('default');
     $view = $view->getExecutable();
 
     $display_id = 'default';
-    $expected_items = array();
+    $expected_items = [];
     // Tests addHandler with getItem.
     // Therefore add one item without any options and one item with some
     // options.
     $id1 = $view->addHandler($display_id, 'field', 'views_test_data', 'id');
     $item1 = $view->getHandler($display_id, 'field', 'id');
-    $expected_items[$id1] = $expected_item = array(
+    $expected_items[$id1] = $expected_item = [
       'id' => 'id',
       'table' => 'views_test_data',
       'field' => 'id',
       'plugin_id' => 'numeric',
-    );
+    ];
     $this->assertEqual($item1, $expected_item);
 
-    $options = array(
-      'alter' => array(
+    $options = [
+      'alter' => [
         'text' => $this->randomMachineName()
-      )
-    );
+      ]
+    ];
     $id2 = $view->addHandler($display_id, 'field', 'views_test_data', 'name', $options);
     $item2 = $view->getHandler($display_id, 'field', 'name');
-    $expected_items[$id2] = $expected_item = array(
+    $expected_items[$id2] = $expected_item = [
       'id' => 'name',
       'table' => 'views_test_data',
       'field' => 'name',
       'plugin_id' => 'standard',
-    ) + $options;
+    ] + $options;
     $this->assertEqual($item2, $expected_item);
 
     // Tests the expected fields from the previous additions.
@@ -293,11 +293,11 @@ protected function displayMethodTests() {
 
     // Alter an existing item via setItem and check the result via getItem
     // and getItems.
-    $item = array(
-      'alter' => array(
+    $item = [
+      'alter' => [
         'text' => $this->randomMachineName(),
-      )
-    ) + $item1;
+      ]
+    ] + $item1;
     $expected_items[$id1] = $item;
     $view->setHandler($display_id, 'field', $id1, $item);
     $this->assertEqual($view->getHandler($display_id, 'field', 'id'), $item);
@@ -327,24 +327,24 @@ public function testCreateDuplicate() {
 
     // Check the other properties.
     // @todo Create a reusable property on the base test class for these?
-    $config_properties = array(
+    $config_properties = [
       'disabled',
       'description',
       'tag',
       'base_table',
       'label',
       'core',
-    );
+    ];
 
     foreach ($config_properties as $property) {
-      $this->assertIdentical($view->storage->get($property), $copy->get($property), format_string('@property property is identical.', array('@property' => $property)));
+      $this->assertIdentical($view->storage->get($property), $copy->get($property), format_string('@property property is identical.', ['@property' => $property]));
     }
 
     // Check the displays are the same.
     $copy_display = $copy->get('display');
     foreach ($view->storage->get('display') as $id => $display) {
       // assertIdentical will not work here.
-      $this->assertEqual($display, $copy_display[$id], format_string('The @display display has been copied correctly.', array('@display' => $id)));
+      $this->assertEqual($display, $copy_display[$id], format_string('The @display display has been copied correctly.', ['@display' => $id]));
     }
   }
 
diff --git a/core/modules/views/tests/src/Kernel/ViewsHooksTest.php b/core/modules/views/tests/src/Kernel/ViewsHooksTest.php
index e048454..612934e 100644
--- a/core/modules/views/tests/src/Kernel/ViewsHooksTest.php
+++ b/core/modules/views/tests/src/Kernel/ViewsHooksTest.php
@@ -19,14 +19,14 @@ class ViewsHooksTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * An array of available views hooks to test.
    *
    * @var array
    */
-  protected static $hooks = array (
+  protected static $hooks =  [
     'views_data' => 'all',
     'views_data_alter' => 'alter',
     'views_query_substitutions' => 'view',
@@ -41,7 +41,7 @@ class ViewsHooksTest extends ViewsKernelTestBase {
     'views_post_render' => 'view',
     'views_query_alter'  => 'view',
     'views_invalidate_cache' => 'all',
-  );
+  ];
 
   /**
    * The module handler to use for invoking hooks.
@@ -65,28 +65,28 @@ public function testHooks() {
 
     // Test each hook is found in the implementations array and is invoked.
     foreach (static::$hooks as $hook => $type) {
-      $this->assertTrue($this->moduleHandler->implementsHook('views_test_data', $hook), format_string('The hook @hook was registered.', array('@hook' => $hook)));
+      $this->assertTrue($this->moduleHandler->implementsHook('views_test_data', $hook), format_string('The hook @hook was registered.', ['@hook' => $hook]));
 
       if ($hook == 'views_post_render') {
-        $this->moduleHandler->invoke('views_test_data', $hook, array($view, &$view->display_handler->output, $view->display_handler->getPlugin('cache')));
+        $this->moduleHandler->invoke('views_test_data', $hook, [$view, &$view->display_handler->output, $view->display_handler->getPlugin('cache')]);
         continue;
       }
 
       switch ($type) {
         case 'view':
-          $this->moduleHandler->invoke('views_test_data', $hook, array($view));
+          $this->moduleHandler->invoke('views_test_data', $hook, [$view]);
           break;
 
         case 'alter':
-          $data = array();
-          $this->moduleHandler->invoke('views_test_data', $hook, array($data));
+          $data = [];
+          $this->moduleHandler->invoke('views_test_data', $hook, [$data]);
           break;
 
         default:
           $this->moduleHandler->invoke('views_test_data', $hook);
       }
 
-      $this->assertTrue($this->container->get('state')->get('views_hook_test_' . $hook), format_string('The %hook hook was invoked.', array('%hook' => $hook)));
+      $this->assertTrue($this->container->get('state')->get('views_hook_test_' . $hook), format_string('The %hook hook was invoked.', ['%hook' => $hook]));
       // Reset the module implementations cache, so we ensure that the
       // .views.inc file is loaded actively.
       $this->moduleHandler->resetImplementations();
diff --git a/core/modules/views/tests/src/Kernel/Wizard/WizardPluginBaseKernelTest.php b/core/modules/views/tests/src/Kernel/Wizard/WizardPluginBaseKernelTest.php
index 27f21c2..beb7b48 100644
--- a/core/modules/views/tests/src/Kernel/Wizard/WizardPluginBaseKernelTest.php
+++ b/core/modules/views/tests/src/Kernel/Wizard/WizardPluginBaseKernelTest.php
@@ -20,7 +20,7 @@ class WizardPluginBaseKernelTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('language', 'system', 'user', 'views_ui');
+  public static $modules = ['language', 'system', 'user', 'views_ui'];
 
   /**
    * Contains thw wizard plugin manager.
@@ -32,9 +32,9 @@ class WizardPluginBaseKernelTest extends ViewsKernelTestBase {
   protected function setUp($import_test_views = TRUE) {
     parent::setUp();
 
-    $this->installConfig(array('language'));
+    $this->installConfig(['language']);
 
-    $this->wizard = $this->container->get('plugin.manager.views.wizard')->createInstance('standard:views_test_data', array());
+    $this->wizard = $this->container->get('plugin.manager.views.wizard')->createInstance('standard:views_test_data', []);
   }
 
   /**
@@ -43,7 +43,7 @@ protected function setUp($import_test_views = TRUE) {
    * @see \Drupal\views\Plugin\views\wizard\WizardPluginBase
    */
   public function testCreateView() {
-    $form = array();
+    $form = [];
     $form_state = new FormState();
     $form = $this->wizard->buildForm($form, $form_state);
     $random_id = strtolower($this->randomMachineName());
diff --git a/core/modules/views/tests/src/Unit/Controller/ViewAjaxControllerTest.php b/core/modules/views/tests/src/Unit/Controller/ViewAjaxControllerTest.php
index d6b2a1e..5483ee4 100644
--- a/core/modules/views/tests/src/Unit/Controller/ViewAjaxControllerTest.php
+++ b/core/modules/views/tests/src/Unit/Controller/ViewAjaxControllerTest.php
@@ -228,7 +228,7 @@ public function testAjaxViewWithArguments() {
     list($view, $executable) = $this->setupValidMocks();
     $executable->expects($this->once())
       ->method('preview')
-      ->with('page_1', array('arg1', 'arg2'));
+      ->with('page_1', ['arg1', 'arg2']);
 
     $response = $this->viewAjaxController->ajaxView($request);
     $this->assertTrue($response instanceof ViewAjaxResponse);
@@ -249,7 +249,7 @@ public function testAjaxViewWithEmptyArguments() {
     list($view, $executable) = $this->setupValidMocks();
     $executable->expects($this->once())
       ->method('preview')
-      ->with('page_1', $this->identicalTo(array('arg1', NULL)));
+      ->with('page_1', $this->identicalTo(['arg1', NULL]));
 
     $response = $this->viewAjaxController->ajaxView($request);
     $this->assertTrue($response instanceof ViewAjaxResponse);
@@ -317,14 +317,14 @@ protected function setupValidMocks() {
       ->will($this->returnValue(TRUE));
     $executable->expects($this->once())
       ->method('preview')
-      ->will($this->returnValue(array('#markup' => 'View result')));
+      ->will($this->returnValue(['#markup' => 'View result']));
 
     $this->executableFactory->expects($this->once())
       ->method('get')
       ->with($view)
       ->will($this->returnValue($executable));
 
-    return array($view, $executable);
+    return [$view, $executable];
   }
 
   /**
diff --git a/core/modules/views/tests/src/Unit/EntityViewsDataTest.php b/core/modules/views/tests/src/Unit/EntityViewsDataTest.php
index 276fc5c..74bcc08 100644
--- a/core/modules/views/tests/src/Unit/EntityViewsDataTest.php
+++ b/core/modules/views/tests/src/Unit/EntityViewsDataTest.php
@@ -92,7 +92,7 @@ protected function setUp() {
     $typed_data_manager->expects($this->any())
       ->method('getDefinition')
       ->with($this->equalTo('field_item:string_long'))
-      ->willReturn(array('class' => '\Drupal\Core\Field\Plugin\Field\FieldType\StringLongItem'));
+      ->willReturn(['class' => '\Drupal\Core\Field\Plugin\Field\FieldType\StringLongItem']);
 
     $this->baseEntityType = new TestEntityType([
       'base_table' => 'entity_test',
@@ -147,16 +147,16 @@ protected function setupBaseFields(array $base_fields) {
       ->setLabel('Description')
       ->setDescription('A description of the term.')
       ->setTranslatable(TRUE)
-      ->setDisplayOptions('view', array(
+      ->setDisplayOptions('view', [
           'label' => 'hidden',
           'type' => 'text_default',
           'weight' => 0,
-        ))
+        ])
       ->setDisplayConfigurable('view', TRUE)
-      ->setDisplayOptions('form', array(
+      ->setDisplayOptions('form', [
           'type' => 'text_textfield',
           'weight' => 0,
-        ))
+        ])
       ->setDisplayConfigurable('form', TRUE);
 
     // Add a URL field; this example is from the Comment entity.
diff --git a/core/modules/views/tests/src/Unit/EventSubscriber/RouteSubscriberTest.php b/core/modules/views/tests/src/Unit/EventSubscriber/RouteSubscriberTest.php
index f9d3add..c89554a 100644
--- a/core/modules/views/tests/src/Unit/EventSubscriber/RouteSubscriberTest.php
+++ b/core/modules/views/tests/src/Unit/EventSubscriber/RouteSubscriberTest.php
@@ -68,16 +68,16 @@ public function testRouteRebuildFinished() {
 
     $display_1->expects($this->once())
       ->method('collectRoutes')
-      ->will($this->returnValue(array('test_id.page_1' => 'views.test_id.page_1')));
+      ->will($this->returnValue(['test_id.page_1' => 'views.test_id.page_1']));
     $display_2->expects($this->once())
       ->method('collectRoutes')
-      ->will($this->returnValue(array('test_id.page_2' => 'views.test_id.page_2')));
+      ->will($this->returnValue(['test_id.page_2' => 'views.test_id.page_2']));
 
     $this->routeSubscriber->routes();
 
     $this->state->expects($this->once())
       ->method('set')
-      ->with('views.view_route_names', array('test_id.page_1' => 'views.test_id.page_1', 'test_id.page_2' => 'views.test_id.page_2'));
+      ->with('views.view_route_names', ['test_id.page_1' => 'views.test_id.page_1', 'test_id.page_2' => 'views.test_id.page_2']);
     $this->routeSubscriber->routeRebuildFinished();
   }
 
@@ -89,8 +89,8 @@ public function testRouteRebuildFinished() {
   public function testOnAlterRoutes() {
     $collection = new RouteCollection();
     // The first route will be overridden later.
-    $collection->add('test_route', new Route('test_route', array('_controller' => 'Drupal\Tests\Core\Controller\TestController')));
-    $route_2 = new Route('test_route/example', array('_controller' => 'Drupal\Tests\Core\Controller\TestController'));
+    $collection->add('test_route', new Route('test_route', ['_controller' => 'Drupal\Tests\Core\Controller\TestController']));
+    $route_2 = new Route('test_route/example', ['_controller' => 'Drupal\Tests\Core\Controller\TestController']);
     $collection->add('test_route_2', $route_2);
 
     $route_event = new RouteBuildEvent($collection, 'views');
@@ -128,7 +128,7 @@ public function testOnAlterRoutes() {
 
     $this->state->expects($this->once())
       ->method('set')
-      ->with('views.view_route_names', array('test_id.page_1' => 'test_route', 'test_id.page_2' => 'views.test_id.page_2'));
+      ->with('views.view_route_names', ['test_id.page_1' => 'test_route', 'test_id.page_2' => 'views.test_id.page_2']);
 
     $collection = $route_event->getRouteCollection();
     $this->assertEquals(['test_route', 'test_route_2', 'views.test_id.page_2'], array_keys($collection->all()));
@@ -163,11 +163,11 @@ protected function setupMocks() {
 
     $executable->expects($this->any())
       ->method('setDisplay')
-      ->will($this->returnValueMap(array(
-        array('page_1', TRUE),
-        array('page_2', TRUE),
-        array('page_3', FALSE),
-      )));
+      ->will($this->returnValueMap([
+        ['page_1', TRUE],
+        ['page_2', TRUE],
+        ['page_3', FALSE],
+      ]));
 
     // Ensure that only the first two displays are actually called.
     $display_1 = $this->getMock('Drupal\views\Plugin\views\display\DisplayRouterInterface');
@@ -178,18 +178,18 @@ protected function setupMocks() {
       ->getMock();
     $display_collection->expects($this->any())
       ->method('get')
-      ->will($this->returnValueMap(array(
-        array('page_1', $display_1),
-        array('page_2', $display_2),
-      )));
+      ->will($this->returnValueMap([
+        ['page_1', $display_1],
+        ['page_2', $display_2],
+      ]));
     $executable->displayHandlers = $display_collection;
 
-    $this->routeSubscriber->applicableViews = array();
-    $this->routeSubscriber->applicableViews[] = array('test_id', 'page_1');
-    $this->routeSubscriber->applicableViews[] = array('test_id', 'page_2');
-    $this->routeSubscriber->applicableViews[] = array('test_id', 'page_3');
+    $this->routeSubscriber->applicableViews = [];
+    $this->routeSubscriber->applicableViews[] = ['test_id', 'page_1'];
+    $this->routeSubscriber->applicableViews[] = ['test_id', 'page_2'];
+    $this->routeSubscriber->applicableViews[] = ['test_id', 'page_3'];
 
-    return array($display_1, $display_2);
+    return [$display_1, $display_2];
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/Block/ViewsBlockTest.php b/core/modules/views/tests/src/Unit/Plugin/Block/ViewsBlockTest.php
index b269f9b..cbe6ade 100644
--- a/core/modules/views/tests/src/Unit/Plugin/Block/ViewsBlockTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/Block/ViewsBlockTest.php
@@ -62,7 +62,7 @@ protected function setUp() {
     $condition_plugin_manager = $this->getMock('Drupal\Core\Executable\ExecutableManagerInterface');
     $condition_plugin_manager->expects($this->any())
       ->method('getDefinitions')
-      ->will($this->returnValue(array()));
+      ->will($this->returnValue([]));
     $container = new ContainerBuilder();
     $container->set('plugin.manager.condition', $condition_plugin_manager);
     \Drupal::setContainer($container);
@@ -136,15 +136,15 @@ protected function setUp() {
    */
   public function testBuild() {
     $output = $this->randomMachineName(100);
-    $build = array('view_build' => $output, '#view_id' => 'test_view', '#view_display_plugin_class' => '\Drupal\views\Plugin\views\display\Block', '#view_display_show_admin_links' => FALSE, '#view_display_plugin_id' => 'block', '#pre_rendered' => TRUE);
+    $build = ['view_build' => $output, '#view_id' => 'test_view', '#view_display_plugin_class' => '\Drupal\views\Plugin\views\display\Block', '#view_display_show_admin_links' => FALSE, '#view_display_plugin_id' => 'block', '#pre_rendered' => TRUE];
     $this->executable->expects($this->once())
       ->method('buildRenderable')
       ->with('block_1', [])
       ->willReturn($build);
 
     $block_id = 'views_block:test_view-block_1';
-    $config = array();
-    $definition = array();
+    $config = [];
+    $definition = [];
 
     $definition['provider'] = 'views';
     $plugin = new ViewsBlock($config, $block_id, $definition, $this->executableFactory, $this->storage, $this->account);
@@ -187,13 +187,13 @@ public function testBuildFailed() {
       ->willReturn($output);
 
     $block_id = 'views_block:test_view-block_1';
-    $config = array();
-    $definition = array();
+    $config = [];
+    $definition = [];
 
     $definition['provider'] = 'views';
     $plugin = new ViewsBlock($config, $block_id, $definition, $this->executableFactory, $this->storage, $this->account);
 
-    $this->assertEquals(array(), $plugin->build());
+    $this->assertEquals([], $plugin->build());
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/Derivative/ViewsLocalTaskTest.php b/core/modules/views/tests/src/Unit/Plugin/Derivative/ViewsLocalTaskTest.php
index af9a683..7ecf9ef 100644
--- a/core/modules/views/tests/src/Unit/Plugin/Derivative/ViewsLocalTaskTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/Derivative/ViewsLocalTaskTest.php
@@ -37,10 +37,10 @@ class ViewsLocalTaskTest extends UnitTestCase {
    */
   protected $viewStorage;
 
-  protected $baseDefinition = array(
+  protected $baseDefinition = [
     'class' => '\Drupal\views\Plugin\Menu\LocalTask\ViewsLocalTask',
     'deriver' => '\Drupal\views\Plugin\Derivative\ViewsLocalTask'
-  );
+  ];
 
   /**
    * The tested local task derivative class.
@@ -63,11 +63,11 @@ protected function setUp() {
    * @see \Drupal\views\Plugin\Derivative\ViewsLocalTask::getDerivativeDefinitions()
    */
   public function testGetDerivativeDefinitionsWithoutHookMenuViews() {
-    $result = array();
+    $result = [];
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     $definitions = $this->localTaskDerivative->getDerivativeDefinitions($this->baseDefinition);
-    $this->assertEquals(array(), $definitions);
+    $this->assertEquals([], $definitions);
   }
 
   /**
@@ -78,13 +78,13 @@ public function testGetDerivativeDefinitionsWithoutLocalTask() {
       ->disableOriginalConstructor()
       ->getMock();
     $display_plugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setMethods(array('getOption'))
+      ->setMethods(['getOption'])
       ->disableOriginalConstructor()
       ->getMockForAbstractClass();
     $display_plugin->expects($this->once())
       ->method('getOption')
       ->with('menu')
-      ->will($this->returnValue(array('type' => 'normal')));
+      ->will($this->returnValue(['type' => 'normal']));
     $executable->display_handler = $display_plugin;
 
     $storage = $this->getMockBuilder('Drupal\views\Entity\View')
@@ -106,7 +106,7 @@ public function testGetDerivativeDefinitionsWithoutLocalTask() {
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     $definitions = $this->localTaskDerivative->getDerivativeDefinitions($this->baseDefinition);
-    $this->assertEquals(array(), $definitions);
+    $this->assertEquals([], $definitions);
   }
 
   /**
@@ -133,20 +133,20 @@ public function testGetDerivativeDefinitionsWithLocalTask() {
       ->willReturn($storage);
 
     $display_plugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setMethods(array('getOption'))
+      ->setMethods(['getOption'])
       ->disableOriginalConstructor()
       ->getMockForAbstractClass();
     $display_plugin->expects($this->once())
       ->method('getOption')
       ->with('menu')
-      ->will($this->returnValue(array('type' => 'tab', 'weight' => 12, 'title' => 'Example title')));
+      ->will($this->returnValue(['type' => 'tab', 'weight' => 12, 'title' => 'Example title']));
     $executable->display_handler = $display_plugin;
 
     $result = [['example_view', 'page_1']];
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     // Mock the view route names state.
-    $view_route_names = array();
+    $view_route_names = [];
     $view_route_names['example_view.page_1'] = 'view.example_view.page_1';
     $this->state->expects($this->once())
       ->method('get')
@@ -186,20 +186,20 @@ public function testGetDerivativeDefinitionsWithOverrideRoute() {
       ->willReturn($storage);
 
     $display_plugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setMethods(array('getOption'))
+      ->setMethods(['getOption'])
       ->disableOriginalConstructor()
       ->getMockForAbstractClass();
     $display_plugin->expects($this->once())
       ->method('getOption')
       ->with('menu')
-      ->will($this->returnValue(array('type' => 'tab', 'weight' => 12)));
+      ->will($this->returnValue(['type' => 'tab', 'weight' => 12]));
     $executable->display_handler = $display_plugin;
 
     $result = [['example_view', 'page_1']];
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     // Mock the view route names state.
-    $view_route_names = array();
+    $view_route_names = [];
     // Setup a view which overrides an existing route.
     $view_route_names['example_view.page_1'] = 'example_overridden_route';
     $this->state->expects($this->once())
@@ -235,20 +235,20 @@ public function testGetDerivativeDefinitionsWithDefaultLocalTask() {
       ->willReturn($storage);
 
     $display_plugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setMethods(array('getOption'))
+      ->setMethods(['getOption'])
       ->disableOriginalConstructor()
       ->getMockForAbstractClass();
     $display_plugin->expects($this->exactly(2))
       ->method('getOption')
       ->with('menu')
-      ->will($this->returnValue(array('type' => 'default tab', 'weight' => 12, 'title' => 'Example title')));
+      ->will($this->returnValue(['type' => 'default tab', 'weight' => 12, 'title' => 'Example title']));
     $executable->display_handler = $display_plugin;
 
     $result = [['example_view', 'page_1']];
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     // Mock the view route names state.
-    $view_route_names = array();
+    $view_route_names = [];
     $view_route_names['example_view.page_1'] = 'view.example_view.page_1';
     $this->state->expects($this->exactly(2))
       ->method('get')
@@ -304,13 +304,13 @@ public function testGetDerivativeDefinitionsWithExistingLocalTask() {
       ->willReturn($storage);
 
     $display_plugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setMethods(array('getOption', 'getPath'))
+      ->setMethods(['getOption', 'getPath'])
       ->disableOriginalConstructor()
       ->getMockForAbstractClass();
     $display_plugin->expects($this->exactly(2))
       ->method('getOption')
       ->with('menu')
-      ->will($this->returnValue(array('type' => 'tab', 'weight' => 12, 'title' => 'Example title')));
+      ->will($this->returnValue(['type' => 'tab', 'weight' => 12, 'title' => 'Example title']));
     $display_plugin->expects($this->once())
       ->method('getPath')
       ->will($this->returnValue('path/example'));
@@ -320,7 +320,7 @@ public function testGetDerivativeDefinitionsWithExistingLocalTask() {
     $this->localTaskDerivative->setApplicableMenuViews($result);
 
     // Mock the view route names state.
-    $view_route_names = array();
+    $view_route_names = [];
     $view_route_names['example_view.page_1'] = 'view.example_view.page_1';
     $this->state->expects($this->exactly(2))
       ->method('get')
@@ -336,11 +336,11 @@ public function testGetDerivativeDefinitionsWithExistingLocalTask() {
       ->will($this->returnValue($route_collection));
 
     // Setup the existing local task of the test_route.
-    $definitions['test_route_tab'] = $other_tab = array(
+    $definitions['test_route_tab'] = $other_tab = [
       'route_name' => 'test_route',
       'title' => 'Test route',
       'base_route' => 'test_route',
-    );
+    ];
 
     $definitions += $this->localTaskDerivative->getDerivativeDefinitions($this->baseDefinition);
 
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php b/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
index 3b0aebf..556aef9 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
@@ -82,7 +82,7 @@ protected function setUp() {
       ->getMock();
     $this->executable->style_plugin = $this->stylePlugin;
 
-    $this->entityHandler = new Entity(array(), 'entity', array('entity_type' => 'entity_test'), $this->entityManager);
+    $this->entityHandler = new Entity([], 'entity', ['entity_type' => 'entity_test'], $this->entityManager);
 
     $this->display->expects($this->any())
       ->method('getPlugin')
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/MessagesTest.php b/core/modules/views/tests/src/Unit/Plugin/area/MessagesTest.php
index 07dca65..1c6728d 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/MessagesTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/MessagesTest.php
@@ -31,7 +31,7 @@ class MessagesTest extends UnitTestCase {
   protected function setUp() {
     parent::setUp();
 
-    $this->messagesHandler = new Messages(array(), 'result', array());
+    $this->messagesHandler = new Messages([], 'result', []);
   }
 
   /**
@@ -43,15 +43,15 @@ protected function setUp() {
   public function testRender() {
     // The handler is configured to show with empty views by default, so should
     // appear.
-    $this->assertSame(array('#type' => 'status_messages'), $this->messagesHandler->render());
+    $this->assertSame(['#type' => 'status_messages'], $this->messagesHandler->render());
 
     // Turn empty off, and make sure it isn't rendered.
     $this->messagesHandler->options['empty'] = FALSE;
     // $empty parameter passed to render will still be FALSE, so should still
     // appear.
-    $this->assertSame(array('#type' => 'status_messages'), $this->messagesHandler->render());
+    $this->assertSame(['#type' => 'status_messages'], $this->messagesHandler->render());
     // Should now be empty as both the empty option and parameter are empty.
-    $this->assertSame(array(), $this->messagesHandler->render(TRUE));
+    $this->assertSame([], $this->messagesHandler->render(TRUE));
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php b/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
index 164d411..a94b672 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
@@ -79,7 +79,7 @@ public function testQuery() {
   public function testResultArea($content, $expected, $items_per_page = 0) {
     $this->setupViewPager($items_per_page);
     $this->resultHandler->options['content'] = $content;
-    $this->assertEquals(array('#markup' => $expected), $this->resultHandler->render());
+    $this->assertEquals(['#markup' => $expected], $this->resultHandler->render());
   }
 
   /**
@@ -88,25 +88,25 @@ public function testResultArea($content, $expected, $items_per_page = 0) {
    * @return array
    */
   public function providerTestResultArea() {
-    return array(
-      array('@label', 'ResultTest'),
-      array('@start', '1'),
-      array('@start', '1', 1),
-      array('@end', '100'),
-      array('@end', '1', 1),
-      array('@total', '100'),
-      array('@total', '100', 1),
-      array('@per_page', '0'),
-      array('@per_page', '1', 1),
-      array('@current_page', '1'),
-      array('@current_page', '1', 1),
-      array('@current_record_count', '100'),
-      array('@current_record_count', '1', 1),
-      array('@page_count', '1'),
-      array('@page_count', '100', 1),
-      array('@start | @end | @total', '1 | 100 | 100'),
-      array('@start | @end | @total', '1 | 1 | 100', 1),
-    );
+    return [
+      ['@label', 'ResultTest'],
+      ['@start', '1'],
+      ['@start', '1', 1],
+      ['@end', '100'],
+      ['@end', '1', 1],
+      ['@total', '100'],
+      ['@total', '100', 1],
+      ['@per_page', '0'],
+      ['@per_page', '1', 1],
+      ['@current_page', '1'],
+      ['@current_page', '1', 1],
+      ['@current_record_count', '100'],
+      ['@current_record_count', '1', 1],
+      ['@page_count', '1'],
+      ['@page_count', '100', 1],
+      ['@start | @end | @total', '1 | 100 | 100'],
+      ['@start | @end | @total', '1 | 1 | 100', 1],
+    ];
   }
 
   /**
@@ -127,7 +127,7 @@ protected function setupViewPager($items_per_page = 0) {
     $this->view->pager = $pager->reveal();
     $this->view->style_plugin = new \stdClass();
     $this->view->total_rows = 100;
-    $this->view->result = array(1, 2, 3, 4, 5);
+    $this->view->result = [1, 2, 3, 4, 5];
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/ViewTest.php b/core/modules/views/tests/src/Unit/Plugin/area/ViewTest.php
index f472ab2..91d5282 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/ViewTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/ViewTest.php
@@ -31,7 +31,7 @@ class ViewTest extends UnitTestCase {
   protected function setUp() {
     parent::setUp();
     $this->entityStorage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
-    $this->viewHandler = new ViewAreaPlugin(array(), 'view', array(), $this->entityStorage);
+    $this->viewHandler = new ViewAreaPlugin([], 'view', [], $this->entityStorage);
     $this->viewHandler->view = $this->getMockBuilder('Drupal\views\ViewExecutable')
       ->disableOriginalConstructor()
       ->getMock();
@@ -60,10 +60,10 @@ public function testCalculateDependencies() {
 
 
     $this->viewHandler->options['view_to_insert'] = 'other:default';
-    $this->assertArrayEquals(array('config' => array('view.other')), $this->viewHandler->calculateDependencies());
+    $this->assertArrayEquals(['config' => ['view.other']], $this->viewHandler->calculateDependencies());
 
     $this->viewHandler->options['view_to_insert'] = 'this:default';
-    $this->assertArrayEquals(array(), $this->viewHandler->calculateDependencies());
+    $this->assertArrayEquals([], $this->viewHandler->calculateDependencies());
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php b/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
index 4001694..8bacd3d 100644
--- a/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
@@ -28,7 +28,7 @@ public function testGetArgument($options, Request $request, $expected) {
       ->disableOriginalConstructor()
       ->getMock();
 
-    $raw = new QueryParameter(array(), 'query_parameter', array());
+    $raw = new QueryParameter([], 'query_parameter', []);
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals($expected, $raw->getArgument());
   }
diff --git a/core/modules/views/tests/src/Unit/Plugin/argument_default/RawTest.php b/core/modules/views/tests/src/Unit/Plugin/argument_default/RawTest.php
index 365e469..62c89a9 100644
--- a/core/modules/views/tests/src/Unit/Plugin/argument_default/RawTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/argument_default/RawTest.php
@@ -39,34 +39,34 @@ public function testGetArgument() {
 
     // Don't use aliases. Check against NULL and nonexistent path component
     // values in addition to valid ones.
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => FALSE,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals(NULL, $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => FALSE,
       'index' => 0,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals('test', $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => FALSE,
       'index' => 1,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals('example', $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => FALSE,
       'index' => 2,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals(NULL, $raw->getArgument());
 
@@ -77,34 +77,34 @@ public function testGetArgument() {
       ->with($this->equalTo('/test/example'))
       ->will($this->returnValue('/other/example'));
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => TRUE,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals(NULL, $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => TRUE,
       'index' => 0,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals('other', $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => TRUE,
       'index' => 1,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals('example', $raw->getArgument());
 
-    $raw = new Raw(array(), 'raw', array(), $alias_manager, $current_path);
-    $options = array(
+    $raw = new Raw([], 'raw', [], $alias_manager, $current_path);
+    $options = [
       'use_alias' => TRUE,
       'index' => 2,
-    );
+    ];
     $raw->init($view, $display_plugin, $options);
     $this->assertEquals(NULL, $raw->getArgument());
   }
diff --git a/core/modules/views/tests/src/Unit/Plugin/argument_validator/EntityTest.php b/core/modules/views/tests/src/Unit/Plugin/argument_validator/EntityTest.php
index f9ca7d8..13a7bc9 100644
--- a/core/modules/views/tests/src/Unit/Plugin/argument_validator/EntityTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/argument_validator/EntityTest.php
@@ -47,43 +47,43 @@ protected function setUp() {
 
     $this->entityManager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface');
 
-    $mock_entity = $this->getMockForAbstractClass('Drupal\Core\Entity\Entity', array(), '', FALSE, TRUE, TRUE, array('bundle', 'access'));
+    $mock_entity = $this->getMockForAbstractClass('Drupal\Core\Entity\Entity', [], '', FALSE, TRUE, TRUE, ['bundle', 'access']);
     $mock_entity->expects($this->any())
       ->method('bundle')
       ->will($this->returnValue('test_bundle'));
     $mock_entity->expects($this->any())
       ->method('access')
-      ->will($this->returnValueMap(array(
-        array('test_op', NULL, FALSE, TRUE),
-        array('test_op_2', NULL, FALSE, FALSE),
-        array('test_op_3', NULL, FALSE, TRUE),
-      )));
+      ->will($this->returnValueMap([
+        ['test_op', NULL, FALSE, TRUE],
+        ['test_op_2', NULL, FALSE, FALSE],
+        ['test_op_3', NULL, FALSE, TRUE],
+      ]));
 
-    $mock_entity_bundle_2 = $this->getMockForAbstractClass('Drupal\Core\Entity\Entity', array(), '', FALSE, TRUE, TRUE, array('bundle', 'access'));
+    $mock_entity_bundle_2 = $this->getMockForAbstractClass('Drupal\Core\Entity\Entity', [], '', FALSE, TRUE, TRUE, ['bundle', 'access']);
     $mock_entity_bundle_2->expects($this->any())
       ->method('bundle')
       ->will($this->returnValue('test_bundle_2'));
     $mock_entity_bundle_2->expects($this->any())
       ->method('access')
-      ->will($this->returnValueMap(array(
-        array('test_op', NULL, FALSE, FALSE),
-        array('test_op_2', NULL, FALSE, FALSE),
-        array('test_op_3', NULL, FALSE, TRUE),
-      )));
+      ->will($this->returnValueMap([
+        ['test_op', NULL, FALSE, FALSE],
+        ['test_op_2', NULL, FALSE, FALSE],
+        ['test_op_3', NULL, FALSE, TRUE],
+      ]));
 
 
     $storage = $this->getMock('Drupal\Core\Entity\EntityStorageInterface');
 
     // Setup values for IDs passed as strings or numbers.
-    $value_map = array(
-      array(array(), array()),
-      array(array(1), array(1 => $mock_entity)),
-      array(array('1'), array(1 => $mock_entity)),
-      array(array(1, 2), array(1 => $mock_entity, 2 => $mock_entity_bundle_2)),
-      array(array('1', '2'), array(1 => $mock_entity, 2 => $mock_entity_bundle_2)),
-      array(array(2), array(2 => $mock_entity_bundle_2)),
-      array(array('2'), array(2 => $mock_entity_bundle_2)),
-    );
+    $value_map = [
+      [[], []],
+      [[1], [1 => $mock_entity]],
+      [['1'], [1 => $mock_entity]],
+      [[1, 2], [1 => $mock_entity, 2 => $mock_entity_bundle_2]],
+      [['1', '2'], [1 => $mock_entity, 2 => $mock_entity_bundle_2]],
+      [[2], [2 => $mock_entity_bundle_2]],
+      [['2'], [2 => $mock_entity_bundle_2]],
+    ];
     $storage->expects($this->any())
       ->method('loadMultiple')
       ->will($this->returnValueMap($value_map));
@@ -100,11 +100,11 @@ protected function setUp() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    $definition = array(
+    $definition = [
       'entity_type' => 'entity_test',
-    );
+    ];
 
-    $this->argumentValidator = new Entity(array(), 'entity_test', $definition, $this->entityManager);
+    $this->argumentValidator = new Entity([], 'entity_test', $definition, $this->entityManager);
   }
 
   /**
@@ -113,9 +113,9 @@ protected function setUp() {
    * @see \Drupal\views\Plugin\views\argument_validator\Entity::validateArgument()
    */
   public function testValidateArgumentNoAccess() {
-    $options = array();
+    $options = [];
     $options['access'] = FALSE;
-    $options['bundles'] = array();
+    $options['bundles'] = [];
     $this->argumentValidator->init($this->executable, $this->display, $options);
 
     $this->assertFalse($this->argumentValidator->validateArgument(3));
@@ -132,9 +132,9 @@ public function testValidateArgumentNoAccess() {
    * @see \Drupal\views\Plugin\views\argument_validator\Entity::validateArgument()
    */
   public function testValidateArgumentAccess() {
-    $options = array();
+    $options = [];
     $options['access'] = TRUE;
-    $options['bundles'] = array();
+    $options['bundles'] = [];
     $options['operation'] = 'test_op';
     $this->argumentValidator->init($this->executable, $this->display, $options);
 
@@ -143,9 +143,9 @@ public function testValidateArgumentAccess() {
 
     $this->assertTrue($this->argumentValidator->validateArgument(1));
 
-    $options = array();
+    $options = [];
     $options['access'] = TRUE;
-    $options['bundles'] = array();
+    $options['bundles'] = [];
     $options['operation'] = 'test_op_2';
     $this->argumentValidator->init($this->executable, $this->display, $options);
 
@@ -160,9 +160,9 @@ public function testValidateArgumentAccess() {
    * Tests the validate argument method with bundle checking.
    */
   public function testValidateArgumentBundle() {
-    $options = array();
+    $options = [];
     $options['access'] = FALSE;
-    $options['bundles'] = array('test_bundle' => 1);
+    $options['bundles'] = ['test_bundle' => 1];
     $this->argumentValidator->init($this->executable, $this->display, $options);
 
     $this->assertTrue($this->argumentValidator->validateArgument(1));
@@ -208,10 +208,10 @@ public function testCalculateDependencies() {
       ->willReturn($storage);
 
     // Set up the argument validator.
-    $argumentValidator = new Entity(array(), 'entity_test', ['entity_type' => 'entity_test'], $entityManager);
-    $options = array();
+    $argumentValidator = new Entity([], 'entity_test', ['entity_type' => 'entity_test'], $entityManager);
+    $options = [];
     $options['access'] = FALSE;
-    $options['bundles'] = array('test_bundle' => 1);
+    $options['bundles'] = ['test_bundle' => 1];
     $argumentValidator->init($this->executable, $this->display, $options);
 
     $this->assertEquals(['config' => ['test_bundle']], $argumentValidator->calculateDependencies());
@@ -221,9 +221,9 @@ public function testCalculateDependencies() {
    * Tests the validate argument method with multiple argument splitting.
    */
   public function testValidateArgumentMultiple() {
-    $options = array();
+    $options = [];
     $options['access'] = TRUE;
-    $options['bundles'] = array();
+    $options['bundles'] = [];
     $options['operation'] = 'test_op';
     $options['multiple'] = TRUE;
     $this->argumentValidator->init($this->executable, $this->display, $options);
@@ -234,9 +234,9 @@ public function testValidateArgumentMultiple() {
     $this->assertFalse($this->argumentValidator->validateArgument('1,2'));
     $this->assertFalse($this->argumentValidator->validateArgument('1+2'));
 
-    $options = array();
+    $options = [];
     $options['access'] = TRUE;
-    $options['bundles'] = array();
+    $options['bundles'] = [];
     $options['operation'] = 'test_op_3';
     $options['multiple'] = TRUE;
     $this->argumentValidator->init($this->executable, $this->display, $options);
diff --git a/core/modules/views/tests/src/Unit/Plugin/display/PathPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/display/PathPluginBaseTest.php
index b028b9d..08ec780 100644
--- a/core/modules/views/tests/src/Unit/Plugin/display/PathPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/display/PathPluginBaseTest.php
@@ -55,7 +55,7 @@ protected function setUp() {
     $this->routeProvider = $this->getMock('Drupal\Core\Routing\RouteProviderInterface');
     $this->state = $this->getMock('\Drupal\Core\State\StateInterface');
     $this->pathPlugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setConstructorArgs(array(array(), 'path_base', array(), $this->routeProvider, $this->state))
+      ->setConstructorArgs([[], 'path_base', [], $this->routeProvider, $this->state])
       ->setMethods(NULL)
       ->getMock();
     $this->setupContainer();
@@ -71,12 +71,12 @@ public function setupContainer() {
     $container = new ContainerBuilder();
     $container->set('plugin.manager.views.access', $this->accessPluginManager);
 
-    $config = array(
-      'views.settings' => array(
+    $config = [
+      'views.settings' => [
         'skip_cache' => TRUE,
-        'display_extenders' => array(),
-      ),
-    );
+        'display_extenders' => [],
+      ],
+    ];
 
     $container->set('config.factory', $this->getConfigFactoryStub($config));
 
@@ -91,17 +91,17 @@ public function setupContainer() {
   public function testCollectRoutes() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $collection = new RouteCollection();
     $result = $this->pathPlugin->collectRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'view.test_id.page_1'), $result);
+    $this->assertEquals(['test_id.page_1' => 'view.test_id.page_1'], $result);
 
     $route = $collection->get('view.test_id.page_1');
     $this->assertTrue($route instanceof Route);
@@ -119,14 +119,14 @@ public function testCollectRoutes() {
   public function testCollectRoutesWithDisplayReturnResponse() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
-    );
+    ];
     $this->pathPlugin = $this->getMockBuilder('Drupal\views\Plugin\views\display\PathPluginBase')
-      ->setConstructorArgs(array(array(), 'path_base', array('returns_response' => TRUE), $this->routeProvider, $this->state))
+      ->setConstructorArgs([[], 'path_base', ['returns_response' => TRUE], $this->routeProvider, $this->state])
       ->setMethods(NULL)
       ->getMock();
     $this->pathPlugin->initDisplay($view, $display);
@@ -146,23 +146,23 @@ public function testCollectRoutesWithDisplayReturnResponse() {
   public function testCollectRoutesWithArguments() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route/%/example',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $collection = new RouteCollection();
     $result = $this->pathPlugin->collectRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'view.test_id.page_1'), $result);
+    $this->assertEquals(['test_id.page_1' => 'view.test_id.page_1'], $result);
 
     $route = $collection->get('view.test_id.page_1');
     $this->assertTrue($route instanceof Route);
     $this->assertEquals('test_id', $route->getDefault('view_id'));
     $this->assertEquals('page_1', $route->getDefault('display_id'));
-    $this->assertEquals(array('arg_0' => 'arg_0'), $route->getOption('_view_argument_map'));
+    $this->assertEquals(['arg_0' => 'arg_0'], $route->getOption('_view_argument_map'));
     $this->assertEquals('my views title', $route->getDefault('_title'));
   }
 
@@ -174,26 +174,26 @@ public function testCollectRoutesWithArguments() {
   public function testCollectRoutesWithArgumentsNotSpecifiedInPath() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_with_arguments',
-    );
-    $display['display_options']['arguments'] = array(
-      'test_id' => array(),
-    );
+    ];
+    $display['display_options']['arguments'] = [
+      'test_id' => [],
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $collection = new RouteCollection();
     $result = $this->pathPlugin->collectRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'view.test_id.page_1'), $result);
+    $this->assertEquals(['test_id.page_1' => 'view.test_id.page_1'], $result);
 
     $route = $collection->get('view.test_id.page_1');
     $this->assertTrue($route instanceof Route);
     $this->assertEquals('test_id', $route->getDefault('view_id'));
     $this->assertEquals('page_1', $route->getDefault('display_id'));
-    $this->assertEquals(array('arg_0' => 'arg_0'), $route->getOption('_view_argument_map'));
+    $this->assertEquals(['arg_0' => 'arg_0'], $route->getOption('_view_argument_map'));
     $this->assertEquals('my views title', $route->getDefault('_title'));
   }
 
@@ -203,18 +203,18 @@ public function testCollectRoutesWithArgumentsNotSpecifiedInPath() {
   public function testCollectRoutesWithSpecialRouteName() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
       'route_name' => 'test_route',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $collection = new RouteCollection();
     $result = $this->pathPlugin->collectRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'test_route'), $result);
+    $this->assertEquals(['test_id.page_1' => 'test_route'], $result);
 
     $route = $collection->get('test_route');
     $this->assertTrue($route instanceof Route);
@@ -228,22 +228,22 @@ public function testCollectRoutesWithSpecialRouteName() {
    */
   public function testAlterRoute() {
     $collection = new RouteCollection();
-    $collection->add('test_route', new Route('test_route', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content')));
-    $route_2 = new Route('test_route/example', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content'));
+    $collection->add('test_route', new Route('test_route', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content']));
+    $route_2 = new Route('test_route/example', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content']);
     $collection->add('test_route_2', $route_2);
 
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $view_route_names = $this->pathPlugin->alterRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'test_route'), $view_route_names);
+    $this->assertEquals(['test_id.page_1' => 'test_route'], $view_route_names);
 
     // Ensure that the test_route is overridden.
     $route = $collection->get('test_route');
@@ -342,22 +342,22 @@ public function testGetRestRoute() {
    */
   public function testAlterRouteWithAlterCallback() {
     $collection = new RouteCollection();
-    $collection->add('test_route', new Route('test_route', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content', '_title_callback' => '\Drupal\Tests\views\Unit\Plugin\display\TestController::testTitle')));
-    $route_2 = new Route('test_route/example', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content'));
+    $collection->add('test_route', new Route('test_route', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content', '_title_callback' => '\Drupal\Tests\views\Unit\Plugin\display\TestController::testTitle']));
+    $route_2 = new Route('test_route/example', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content']);
     $collection->add('test_route_2', $route_2);
 
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $view_route_names = $this->pathPlugin->alterRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'test_route'), $view_route_names);
+    $this->assertEquals(['test_id.page_1' => 'test_route'], $view_route_names);
 
     // Ensure that the test_route is overridden.
     $route = $collection->get('test_route');
@@ -384,22 +384,22 @@ public function testCollectRoutesWithNamedParameters() {
     /** @var \Drupal\views\ViewExecutable|\PHPUnit_Framework_MockObject_MockObject $view */
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $view->argument = array();
+    $view->argument = [];
     $view->argument['nid'] = $this->getMockBuilder('Drupal\views\Plugin\views\argument\ArgumentPluginBase')
       ->disableOriginalConstructor()
       ->getMock();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route/%node/example',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $collection = new RouteCollection();
     $result = $this->pathPlugin->collectRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'view.test_id.page_1'), $result);
+    $this->assertEquals(['test_id.page_1' => 'view.test_id.page_1'], $result);
 
     $route = $collection->get('view.test_id.page_1');
     $this->assertTrue($route instanceof Route);
@@ -407,7 +407,7 @@ public function testCollectRoutesWithNamedParameters() {
     $this->assertEquals('test_id', $route->getDefault('view_id'));
     $this->assertEquals('page_1', $route->getDefault('display_id'));
     $this->assertEquals('my views title', $route->getDefault('_title'));
-    $this->assertEquals(array('arg_0' => 'node'), $route->getOption('_view_argument_map'));
+    $this->assertEquals(['arg_0' => 'node'], $route->getOption('_view_argument_map'));
   }
 
   /**
@@ -415,7 +415,7 @@ public function testCollectRoutesWithNamedParameters() {
    */
   public function testAlterRoutesWithParameters() {
     $collection = new RouteCollection();
-    $collection->add('test_route', new Route('test_route/{parameter}', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content')));
+    $collection->add('test_route', new Route('test_route/{parameter}', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content']));
 
     list($view) = $this->setupViewExecutableAccessPlugin();
 
@@ -425,16 +425,16 @@ public function testAlterRoutesWithParameters() {
       ->getMock();
     $view->argument['test_id'] = $argument;
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route/%',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $view_route_names = $this->pathPlugin->alterRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'test_route'), $view_route_names);
+    $this->assertEquals(['test_id.page_1' => 'test_route'], $view_route_names);
 
     // Ensure that the test_route is overridden.
     $route = $collection->get('test_route');
@@ -443,7 +443,7 @@ public function testAlterRoutesWithParameters() {
     $this->assertEquals('page_1', $route->getDefault('display_id'));
     // Ensure that the path did not changed and placeholders are respected.
     $this->assertEquals('/test_route/{parameter}', $route->getPath());
-    $this->assertEquals(array('arg_0' => 'parameter'), $route->getOption('_view_argument_map'));
+    $this->assertEquals(['arg_0' => 'parameter'], $route->getOption('_view_argument_map'));
     $this->assertEquals('my views title', $route->getDefault('_title'));
   }
 
@@ -462,7 +462,7 @@ public function testAlterRoutesWithParametersAndUpcasting() {
       ->getMock();
     $view->argument['test_id'] = $argument;
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
     $display['display_options'] = [
@@ -490,24 +490,24 @@ public function testAlterRoutesWithParametersAndUpcasting() {
    */
   public function testAlterRoutesWithOptionalParameters() {
     $collection = new RouteCollection();
-    $collection->add('test_route', new Route('test_route/{parameter}', array('_controller' => 'Drupal\Tests\Core\Controller\TestController::content')));
+    $collection->add('test_route', new Route('test_route/{parameter}', ['_controller' => 'Drupal\Tests\Core\Controller\TestController::content']));
 
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route/%',
-    );
-    $display['display_options']['arguments'] = array(
-      'test_id' => array(),
-      'test_id2' => array(),
-    );
+    ];
+    $display['display_options']['arguments'] = [
+      'test_id' => [],
+      'test_id2' => [],
+    ];
     $this->pathPlugin->initDisplay($view, $display);
 
     $view_route_names = $this->pathPlugin->alterRoutes($collection);
-    $this->assertEquals(array('test_id.page_1' => 'test_route'), $view_route_names);
+    $this->assertEquals(['test_id.page_1' => 'test_route'], $view_route_names);
 
     // Ensure that the test_route is overridden.
     $route = $collection->get('test_route');
@@ -516,7 +516,7 @@ public function testAlterRoutesWithOptionalParameters() {
     $this->assertEquals('page_1', $route->getDefault('display_id'));
     // Ensure that the path did not changed and placeholders are respected.
     $this->assertEquals('/test_route/{parameter}/{arg_1}', $route->getPath());
-    $this->assertEquals(array('arg_0' => 'parameter'), $route->getOption('_view_argument_map'));
+    $this->assertEquals(['arg_0' => 'parameter'], $route->getOption('_view_argument_map'));
     $this->assertEquals('my views title', $route->getDefault('_title'));
   }
 
@@ -526,12 +526,12 @@ public function testAlterRoutesWithOptionalParameters() {
   public function testGetRouteName() {
     list($view) = $this->setupViewExecutableAccessPlugin();
 
-    $display = array();
+    $display = [];
     $display['display_plugin'] = 'page';
     $display['id'] = 'page_1';
-    $display['display_options'] = array(
+    $display['display_options'] = [
       'path' => 'test_route',
-    );
+    ];
     $this->pathPlugin->initDisplay($view, $display);
     $route_name = $this->pathPlugin->getRouteName();
     // Ensure that the expected routename is returned.
@@ -568,7 +568,7 @@ protected function setupViewExecutableAccessPlugin() {
       ->method('createInstance')
       ->will($this->returnValue($access_plugin));
 
-    return array($view, $view_entity, $access_plugin);
+    return [$view, $view_entity, $access_plugin];
   }
 
 }
diff --git a/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php b/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
index e6afa89..4d67c00 100644
--- a/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
@@ -41,7 +41,7 @@ class CounterTest extends UnitTestCase {
    *
    * @var array
    */
-  protected $testData = array();
+  protected $testData = [];
 
   /**
    * The handler definition of the counter field.
@@ -57,12 +57,12 @@ protected function setUp() {
     parent::setUp();
 
     // Setup basic stuff like the view and the display.
-    $config = array();
-    $config['display']['default'] = array(
+    $config = [];
+    $config['display']['default'] = [
       'id' => 'default',
       'display_plugin' => 'default',
       'display_title' => 'Default',
-    );
+    ];
 
     $storage = new View($config, 'view');
     $user = $this->getMock('Drupal\Core\Session\AccountInterface');
@@ -70,7 +70,7 @@ protected function setUp() {
       ->disableOriginalConstructor()
       ->getMock();
     $route_provider = $this->getMock('Drupal\Core\Routing\RouteProviderInterface');
-    $this->view = $this->getMock('Drupal\views\ViewExecutable', NULL, array($storage, $user, $views_data, $route_provider));
+    $this->view = $this->getMock('Drupal\views\ViewExecutable', NULL, [$storage, $user, $views_data, $route_provider]);
 
     $this->display = $this->getMockBuilder('Drupal\views\Plugin\views\display\DisplayPluginBase')
       ->disableOriginalConstructor()
@@ -88,7 +88,7 @@ protected function setUp() {
       $this->testData[] = new ResultRow($set + ['index' => $index]);
     }
 
-    $this->definition = array('title' => 'counter field', 'plugin_type' => 'field');
+    $this->definition = ['title' => 'counter field', 'plugin_type' => 'field'];
   }
 
   /**
@@ -98,11 +98,11 @@ protected function setUp() {
    *   Returns an array of row index to test.
    */
   public function providerRowIndexes() {
-    return array(
-      array(0),
-      array(1),
-      array(2),
-    );
+    return [
+      [0],
+      [1],
+      [2],
+    ];
   }
 
   /**
@@ -111,8 +111,8 @@ public function providerRowIndexes() {
    * @dataProvider providerRowIndexes
    */
   public function testSimpleCounter($i) {
-    $counter_handler = new Counter(array(), 'counter', $this->definition);
-    $options = array();
+    $counter_handler = new Counter([], 'counter', $this->definition);
+    $options = [];
     $counter_handler->init($this->view, $this->display, $options);
 
     $this->view->row_index = $i;
@@ -135,10 +135,10 @@ public function testSimpleCounter($i) {
   public function testCounterRandomStart($i) {
     // Setup a counter field with a random start.
     $rand_start = rand(5, 10);
-    $counter_handler = new Counter(array(), 'counter', $this->definition);
-    $options = array(
+    $counter_handler = new Counter([], 'counter', $this->definition);
+    $options = [
       'counter_start' => $rand_start,
-    );
+    ];
     $counter_handler->init($this->view, $this->display, $options);
 
     $this->view->row_index = $i;
@@ -164,10 +164,10 @@ public function testCounterRandomPagerOffset($i) {
     $this->pager->setOffset($offset);
 
     $rand_start = rand(5, 10);
-    $counter_handler = new Counter(array(), 'counter', $this->definition);
-    $options = array(
+    $counter_handler = new Counter([], 'counter', $this->definition);
+    $options = [
       'counter_start' => $rand_start,
-    );
+    ];
     $counter_handler->init($this->view, $this->display, $options);
 
     $this->view->row_index = $i;
@@ -197,10 +197,10 @@ public function testCounterSecondPage($i) {
     $this->pager->setCurrentPage($current_page);
 
     $rand_start = rand(5, 10);
-    $counter_handler = new Counter(array(), 'counter', $this->definition);
-    $options = array(
+    $counter_handler = new Counter([], 'counter', $this->definition);
+    $options = [
       'counter_start' => $rand_start,
-    );
+    ];
     $counter_handler->init($this->view, $this->display, $options);
 
     $this->view->row_index = $i;
diff --git a/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
index f137105..555c8a4 100644
--- a/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
@@ -35,10 +35,10 @@ protected function setUp() {
       ->disableOriginalConstructor()
       ->getMock();
 
-    $options = array(
+    $options = [
       'items_per_page' => 5,
       'offset' => 1,
-    );
+    ];
 
     $this->pager->init($view, $display, $options);
 
@@ -183,20 +183,20 @@ public function testHasMoreRecords($items_per_page, $total_items, $current_page,
    * @see self::testHasMoreRecords
    */
   public function providerTestHasMoreRecords() {
-    return array(
+    return [
       // No items per page, so there can't be more available records.
-      array(0, 0, 0, FALSE),
-      array(0, 10, 0, FALSE),
+      [0, 0, 0, FALSE],
+      [0, 10, 0, FALSE],
       // The amount of total items equals the items per page, so there is no
       // next page available.
-      array(5, 5, 0, FALSE),
+      [5, 5, 0, FALSE],
       // There is one more item, and we are at the first page.
-      array(5, 6, 0, TRUE),
+      [5, 6, 0, TRUE],
       // Now we are on the second page, which has just a single one left.
-      array(5, 6, 1, FALSE),
+      [5, 6, 1, FALSE],
       // Increase the total items, so we have some available on the third page.
-      array(5, 12, 1, TRUE)
-    );
+      [5, 12, 1, TRUE]
+    ];
   }
 
   /**
diff --git a/core/modules/views/tests/src/Unit/Plugin/views/display/BlockTest.php b/core/modules/views/tests/src/Unit/Plugin/views/display/BlockTest.php
index a3e86a1..21af7bf 100644
--- a/core/modules/views/tests/src/Unit/Plugin/views/display/BlockTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/views/display/BlockTest.php
@@ -39,7 +39,7 @@ protected function setUp() {
 
     $this->executable = $this->getMockBuilder('Drupal\views\ViewExecutable')
       ->disableOriginalConstructor()
-      ->setMethods(array('executeDisplay', 'setDisplay', 'setItemsPerPage'))
+      ->setMethods(['executeDisplay', 'setDisplay', 'setItemsPerPage'])
       ->getMock();
     $this->executable->expects($this->any())
       ->method('setDisplay')
@@ -67,7 +67,7 @@ public function testBuildNoOverride() {
 
     $this->blockPlugin->expects($this->once())
       ->method('getConfiguration')
-      ->will($this->returnValue(array('items_per_page' => 'none')));
+      ->will($this->returnValue(['items_per_page' => 'none']));
 
     $this->blockDisplay->preBlockBuild($this->blockPlugin);
   }
@@ -82,7 +82,7 @@ public function testBuildOverride() {
 
     $this->blockPlugin->expects($this->once())
       ->method('getConfiguration')
-      ->will($this->returnValue(array('items_per_page' => 5)));
+      ->will($this->returnValue(['items_per_page' => 5]));
 
     $this->blockDisplay->preBlockBuild($this->blockPlugin);
   }
diff --git a/core/modules/views/tests/src/Unit/Plugin/views/field/EntityOperationsUnitTest.php b/core/modules/views/tests/src/Unit/Plugin/views/field/EntityOperationsUnitTest.php
index 5457baa..0900df6 100644
--- a/core/modules/views/tests/src/Unit/Plugin/views/field/EntityOperationsUnitTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/views/field/EntityOperationsUnitTest.php
@@ -42,11 +42,11 @@ protected function setUp() {
     $this->entityManager = $this->getMock('\Drupal\Core\Entity\EntityManagerInterface');
     $this->languageManager = $this->getMock('\Drupal\Core\Language\LanguageManagerInterface');
 
-    $configuration = array();
+    $configuration = [];
     $plugin_id = $this->randomMachineName();
-    $plugin_definition = array(
+    $plugin_definition = [
       'title' => $this->randomMachineName(),
-    );
+    ];
     $this->plugin = new EntityOperations($configuration, $plugin_id, $plugin_definition, $this->entityManager, $this->languageManager);
 
     $redirect_service = $this->getMock('Drupal\Core\Routing\RedirectDestinationInterface');
@@ -93,11 +93,11 @@ public function testRenderWithDestination() {
       ->method('getEntityTypeId')
       ->will($this->returnValue($entity_type_id));
 
-    $operations = array(
-      'foo' => array(
+    $operations = [
+      'foo' => [
         'title' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $list_builder = $this->getMock('\Drupal\Core\Entity\EntityListBuilderInterface');
     $list_builder->expects($this->once())
       ->method('getOperations')
@@ -114,10 +114,10 @@ public function testRenderWithDestination() {
     $result = new ResultRow();
     $result->_entity = $entity;
 
-    $expected_build = array(
+    $expected_build = [
       '#type' => 'operations',
       '#links' => $operations
-    );
+    ];
     $expected_build['#links']['foo']['query'] = ['destination' => 'foobar'];
     $build = $this->plugin->render($result);
     $this->assertSame($expected_build, $build);
@@ -135,11 +135,11 @@ public function testRenderWithoutDestination() {
       ->method('getEntityTypeId')
       ->will($this->returnValue($entity_type_id));
 
-    $operations = array(
-      'foo' => array(
+    $operations = [
+      'foo' => [
         'title' => $this->randomMachineName(),
-      ),
-    );
+      ],
+    ];
     $list_builder = $this->getMock('\Drupal\Core\Entity\EntityListBuilderInterface');
     $list_builder->expects($this->once())
       ->method('getOperations')
@@ -156,10 +156,10 @@ public function testRenderWithoutDestination() {
     $result = new ResultRow();
     $result->_entity = $entity;
 
-    $expected_build = array(
+    $expected_build = [
       '#type' => 'operations',
       '#links' => $operations
-    );
+    ];
     $build = $this->plugin->render($result);
     $this->assertSame($expected_build, $build);
   }
diff --git a/core/modules/views/tests/src/Unit/PluginBaseTest.php b/core/modules/views/tests/src/Unit/PluginBaseTest.php
index ef19e11..718cf44 100644
--- a/core/modules/views/tests/src/Unit/PluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/PluginBaseTest.php
@@ -24,7 +24,7 @@ class PluginBaseTest extends UnitTestCase {
   protected function setUp() {
     parent::setUp();
 
-    $this->testHelperPlugin = new TestHelperPlugin(array(), 'default', array());
+    $this->testHelperPlugin = new TestHelperPlugin([], 'default', []);
   }
 
   /**
@@ -73,148 +73,148 @@ public function testSetOptionDefault($storage, $definition, $expected) {
    * @return array
    */
   public function providerTestUnpackOptions() {
-    $test_parameters = array();
+    $test_parameters = [];
     // Set a storage but no value, so the storage value should be kept.
-    $test_parameters[] = array(
-      'storage' => array(
+    $test_parameters[] = [
+      'storage' => [
         'key' => 'value',
-      ),
-      'options' => array(
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value2'),
-      ),
-      'expected' => array(
+      ],
+      'options' => [
+      ],
+      'definition' => [
+        'key' => ['default' => 'value2'],
+      ],
+      'expected' => [
         'key' => 'value',
-      ),
-    );
+      ],
+    ];
     // Set a storage and a option value, so the option value should be kept.
-    $test_parameters[] = array(
-      'storage' => array(
+    $test_parameters[] = [
+      'storage' => [
         'key' => 'value',
-      ),
-      'options' => array(
+      ],
+      'options' => [
         'key' => 'value2',
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value3'),
-      ),
-      'expected' => array(
+      ],
+      'definition' => [
+        'key' => ['default' => 'value3'],
+      ],
+      'expected' => [
         'key' => 'value2',
-      ),
+      ],
       ''
-    );
+    ];
     // Set no storage but an options value, so the options value should be kept.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
         'key' => 'value',
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value2'),
-      ),
-      'expected' => array(
+      ],
+      'definition' => [
+        'key' => ['default' => 'value2'],
+      ],
+      'expected' => [
         'key' => 'value',
-      ),
-    );
+      ],
+    ];
     // Set additional options, which aren't part of the definition, so they
     // should be ignored if all is set.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
         'key' => 'value',
         'key2' => 'value2',
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value2'),
-      ),
-      'expected' => array(
+      ],
+      'definition' => [
+        'key' => ['default' => 'value2'],
+      ],
+      'expected' => [
         'key' => 'value',
-      ),
-    );
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
+      ],
+    ];
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
         'key' => 'value',
         'key2' => 'value2',
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value2'),
-      ),
-      'expected' => array(
+      ],
+      'definition' => [
+        'key' => ['default' => 'value2'],
+      ],
+      'expected' => [
         'key' => 'value',
         'key2' => 'value2',
-      ),
+      ],
       'all' => TRUE,
-    );
+    ];
     // Provide multiple options with their corresponding definition.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
         'key' => 'value',
         'key2' => 'value2',
-      ),
-      'definition' => array(
-        'key' => array('default' => 'value2'),
-        'key2' => array('default' => 'value3'),
-      ),
-      'expected' => array(
+      ],
+      'definition' => [
+        'key' => ['default' => 'value2'],
+        'key2' => ['default' => 'value3'],
+      ],
+      'expected' => [
         'key' => 'value',
         'key2' => 'value2',
-      ),
-    );
+      ],
+    ];
     // Set a complex definition structure with a zero and a one level structure.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
         'key0' => 'value',
-        'key1' => array('key1:1' => 'value1', 'key1:2' => 'value2'),
-      ),
-      'definition' => array(
-        'key0' => array('default' => 'value0'),
-        'key1' => array('contains' => array(
-          'key1:1' => array('default' => 'value1:1'),
-        )),
-      ),
-      'expected' => array(
+        'key1' => ['key1:1' => 'value1', 'key1:2' => 'value2'],
+      ],
+      'definition' => [
+        'key0' => ['default' => 'value0'],
+        'key1' => ['contains' => [
+          'key1:1' => ['default' => 'value1:1'],
+        ]],
+      ],
+      'expected' => [
         'key0' => 'value',
-        'key1' => array('key1:1' => 'value1'),
-      ),
-    );
+        'key1' => ['key1:1' => 'value1'],
+      ],
+    ];
     // Setup a two level structure.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'options' => array(
-        'key2' => array(
-          'key2:1' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'options' => [
+        'key2' => [
+          'key2:1' => [
             'key2:1:1' => 'value0',
-            'key2:1:2' => array(
+            'key2:1:2' => [
               'key2:1:2:1' => 'value1',
-            ),
-          ),
-        ),
-      ),
-      'definition' => array(
-        'key2' => array('contains' => array(
-          'key2:1' => array('contains' => array(
-            'key2:1:1' => array('default' => 'value2:1:2:1'),
-            'key2:1:2' => array('contains' => array(
-              'key2:1:2:1' => array('default' => 'value2:1:2:1'),
-            )),
-          )),
-        )),
-      ),
-      'expected' => array(
-        'key2' => array(
-          'key2:1' => array(
+            ],
+          ],
+        ],
+      ],
+      'definition' => [
+        'key2' => ['contains' => [
+          'key2:1' => ['contains' => [
+            'key2:1:1' => ['default' => 'value2:1:2:1'],
+            'key2:1:2' => ['contains' => [
+              'key2:1:2:1' => ['default' => 'value2:1:2:1'],
+            ]],
+          ]],
+        ]],
+      ],
+      'expected' => [
+        'key2' => [
+          'key2:1' => [
             'key2:1:1' => 'value0',
-            'key2:1:2' => array(
+            'key2:1:2' => [
               'key2:1:2:1' => 'value1',
-            ),
-          ),
-        ),
-      ),
-    );
+            ],
+          ],
+        ],
+      ],
+    ];
 
     return $test_parameters;
   }
@@ -225,55 +225,55 @@ public function providerTestUnpackOptions() {
    * @return array
    */
   public function providerTestSetOptionDefault() {
-    $test_parameters = array();
+    $test_parameters = [];
     // No definition should change anything on the storage.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'definition' => array(),
-      'expected' => array(),
-    );
+    $test_parameters[] = [
+      'storage' => [],
+      'definition' => [],
+      'expected' => [],
+    ];
     // Set a single definition, which should be picked up.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'definition' => array(
-        'key' => array('default' => 'value'),
-      ),
-      'expected' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'definition' => [
+        'key' => ['default' => 'value'],
+      ],
+      'expected' => [
         'key' => 'value',
-      ),
-    );
+      ],
+    ];
     // Set multiple keys, all should be picked up.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'definition' => array(
-        'key' => array('default' => 'value'),
-        'key2' => array('default' => 'value2'),
-        'key3' => array('default' => 'value3'),
-      ),
-      'expected' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'definition' => [
+        'key' => ['default' => 'value'],
+        'key2' => ['default' => 'value2'],
+        'key3' => ['default' => 'value3'],
+      ],
+      'expected' => [
         'key' => 'value',
         'key2' => 'value2',
         'key3' => 'value3',
-      ),
-    );
+      ],
+    ];
     // Setup a definition with multiple levels.
-    $test_parameters[] = array(
-      'storage' => array(),
-      'definition' => array(
-        'key' => array('default' => 'value'),
-        'key2' => array('contains' => array(
-          'key2:1' => array('default' => 'value2:1'),
-          'key2:2' => array('default' => 'value2:2'),
-        )),
-      ),
-      'expected' => array(
+    $test_parameters[] = [
+      'storage' => [],
+      'definition' => [
+        'key' => ['default' => 'value'],
+        'key2' => ['contains' => [
+          'key2:1' => ['default' => 'value2:1'],
+          'key2:2' => ['default' => 'value2:2'],
+        ]],
+      ],
+      'expected' => [
         'key' => 'value',
-        'key2' => array(
+        'key2' => [
           'key2:1' => 'value2:1',
           'key2:2' => 'value2:2',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
     return $test_parameters;
   }
diff --git a/core/modules/views/tests/src/Unit/PluginTypeListTest.php b/core/modules/views/tests/src/Unit/PluginTypeListTest.php
index 32b46d5..29da6b3 100644
--- a/core/modules/views/tests/src/Unit/PluginTypeListTest.php
+++ b/core/modules/views/tests/src/Unit/PluginTypeListTest.php
@@ -16,7 +16,7 @@ class PluginTypeListTest extends UnitTestCase {
    * Tests the plugins list is correct.
    */
   public function testPluginList() {
-    $plugin_list = array(
+    $plugin_list = [
       'access',
       'area',
       'argument',
@@ -36,7 +36,7 @@ public function testPluginList() {
       'sort',
       'style',
       'wizard',
-    );
+    ];
 
     $diff = array_diff($plugin_list, ViewExecutable::getPluginTypes());
     $this->assertTrue(empty($diff), 'The plugin list is correct');
diff --git a/core/modules/views/tests/src/Unit/Routing/ViewPageControllerTest.php b/core/modules/views/tests/src/Unit/Routing/ViewPageControllerTest.php
index 971c1c4..9242545 100644
--- a/core/modules/views/tests/src/Unit/Routing/ViewPageControllerTest.php
+++ b/core/modules/views/tests/src/Unit/Routing/ViewPageControllerTest.php
@@ -148,7 +148,7 @@ public function testHandleWithArgumentsOnOverriddenRouteWithUpcasting() {
     $request->attributes->set('display_id', 'page_1');
     // Add the argument to the request.
     $request->attributes->set('test_entity', $this->getMock('Drupal\Core\Entity\EntityInterface'));
-    $raw_variables = new ParameterBag(array('test_entity' => 'example_id'));
+    $raw_variables = new ParameterBag(['test_entity' => 'example_id']);
     $request->attributes->set('_raw_variables', $raw_variables);
     $options = [
       '_view_argument_map' => [
diff --git a/core/modules/views/tests/src/Unit/ViewExecutableTest.php b/core/modules/views/tests/src/Unit/ViewExecutableTest.php
index fe64ec2..6abcd99 100644
--- a/core/modules/views/tests/src/Unit/ViewExecutableTest.php
+++ b/core/modules/views/tests/src/Unit/ViewExecutableTest.php
@@ -476,7 +476,7 @@ public function testAttachDisplays() {
    *   Returns the view executable and default display.
    */
   protected function setupBaseViewAndDisplay() {
-    $config = array(
+    $config = [
       'id' => 'test_view',
       'tag' => 'OnE, TWO, and three',
       'display' => [
@@ -486,7 +486,7 @@ protected function setupBaseViewAndDisplay() {
           'display_title' => 'Default',
         ],
       ],
-    );
+    ];
 
     $storage = new View($config, 'view');
     $view = new ViewExecutable($storage, $this->user, $this->viewsData, $this->routeProvider);
@@ -516,7 +516,7 @@ protected function setupBaseViewAndDisplay() {
       $view->$type = [];
     }
 
-    return array($view, $display);
+    return [$view, $display];
   }
 
   /**
diff --git a/core/modules/views/tests/src/Unit/ViewsDataHelperTest.php b/core/modules/views/tests/src/Unit/ViewsDataHelperTest.php
index 97153f5..2289f23 100644
--- a/core/modules/views/tests/src/Unit/ViewsDataHelperTest.php
+++ b/core/modules/views/tests/src/Unit/ViewsDataHelperTest.php
@@ -30,7 +30,7 @@ protected function viewsData() {
     $data['views_test_data']['age']['area']['id'] = 'text';
     $data['views_test_data']['age']['area']['sub_type'] = 'header';
     $data['views_test_data']['job']['area']['id'] = 'text';
-    $data['views_test_data']['job']['area']['sub_type'] = array('header', 'footer');
+    $data['views_test_data']['job']['area']['sub_type'] = ['header', 'footer'];
 
     return $data;
   }
@@ -48,52 +48,52 @@ public function testFetchFields() {
 
     $data_helper = new ViewsDataHelper($views_data);
 
-    $expected = array(
-      'field' => array(
+    $expected = [
+      'field' => [
         'age',
         'created',
         'job',
         'name',
         'status',
-      ),
-      'argument' => array(
+      ],
+      'argument' => [
         'age',
         'created',
         'id',
         'job',
-      ),
-      'filter' => array(
+      ],
+      'filter' => [
         'created',
         'id',
         'job',
         'name',
         'status',
-      ),
-      'sort' => array(
+      ],
+      'sort' => [
         'age',
         'created',
         'id',
         'name',
         'status',
-      ),
-      'area' => array(
+      ],
+      'area' => [
         'age',
         'created',
         'job',
-      ),
-      'header' => array(
+      ],
+      'header' => [
         'age',
         'created',
         'job',
-      ),
-      'footer' => array(
+      ],
+      'footer' => [
         'age',
         'created',
         'job',
-      ),
-    );
+      ],
+    ];
 
-    $handler_types = array('field', 'argument', 'filter', 'sort', 'area');
+    $handler_types = ['field', 'argument', 'filter', 'sort', 'area'];
     foreach ($handler_types as $handler_type) {
       $fields = $data_helper->fetchFields('views_test_data', $handler_type);
       $expected_keys = $expected[$handler_type];
@@ -104,7 +104,7 @@ public function testFetchFields() {
     }
 
     // Check for subtype filtering, so header and footer.
-    foreach (array('header', 'footer') as $sub_type) {
+    foreach (['header', 'footer'] as $sub_type) {
       $fields = $data_helper->fetchFields('views_test_data', 'area', FALSE, $sub_type);
 
       $expected_keys = $expected[$sub_type];
diff --git a/core/modules/views/tests/src/Unit/ViewsDataTest.php b/core/modules/views/tests/src/Unit/ViewsDataTest.php
index 2351892..a145538 100644
--- a/core/modules/views/tests/src/Unit/ViewsDataTest.php
+++ b/core/modules/views/tests/src/Unit/ViewsDataTest.php
@@ -63,14 +63,14 @@ protected function setUp() {
     $this->cacheBackend = $this->getMock('Drupal\Core\Cache\CacheBackendInterface');
     $this->getContainerWithCacheTagsInvalidator($this->cacheTagsInvalidator);
 
-    $configs = array();
+    $configs = [];
     $configs['views.settings']['skip_cache'] = FALSE;
     $this->configFactory = $this->getConfigFactoryStub($configs);
     $this->moduleHandler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
     $this->languageManager = $this->getMock('Drupal\Core\Language\LanguageManagerInterface');
     $this->languageManager->expects($this->any())
       ->method('getCurrentLanguage')
-      ->will($this->returnValue(new Language(array('id' => 'en'))));
+      ->will($this->returnValue(new Language(['id' => 'en'])));
 
     $this->viewsData = new ViewsData($this->cacheBackend, $this->configFactory, $this->moduleHandler, $this->languageManager);
   }
@@ -90,7 +90,7 @@ protected function viewsData() {
     $data['views_test_data']['age']['area']['id'] = 'text';
     $data['views_test_data']['age']['area']['sub_type'] = 'header';
     $data['views_test_data']['job']['area']['id'] = 'text';
-    $data['views_test_data']['job']['area']['sub_type'] = array('header', 'footer');
+    $data['views_test_data']['job']['area']['sub_type'] = ['header', 'footer'];
 
     // Duplicate the example views test data for different weight, different title,
     // and matching data.
@@ -136,7 +136,7 @@ protected function setupMockedModuleHandler() {
     $this->moduleHandler->expects($this->at(0))
       ->method('getImplementations')
       ->with('views_data')
-      ->willReturn(array('views_test_data'));
+      ->willReturn(['views_test_data']);
     $this->moduleHandler->expects($this->at(1))
       ->method('invoke')
       ->with('views_test_data', 'views_data')
@@ -167,11 +167,11 @@ public function testFetchBaseTables() {
     }
 
     // Test the values returned for each base table.
-    $defaults = array(
+    $defaults = [
       'title' => '',
       'help' => '',
       'weight' => 0,
-    );
+    ];
     foreach ($base_tables as $base_table => $info) {
       // Merge in default values as in fetchBaseTables().
       $expected = $data[$base_table]['table']['base'] += $defaults;
@@ -215,7 +215,7 @@ public function testFullAndTableGetCache() {
     $this->moduleHandler->expects($this->at(0))
       ->method('getImplementations')
       ->with('views_data')
-      ->willReturn(array('views_test_data'));
+      ->willReturn(['views_test_data']);
     $this->moduleHandler->expects($this->at(1))
       ->method('invoke')
       ->with('views_test_data', 'views_data')
@@ -227,7 +227,7 @@ public function testFullAndTableGetCache() {
     $this->moduleHandler->expects($this->at(3))
       ->method('getImplementations')
       ->with('views_data')
-      ->willReturn(array('views_test_data'));
+      ->willReturn(['views_test_data']);
     $this->moduleHandler->expects($this->at(4))
       ->method('invoke')
       ->with('views_test_data', 'views_data')
@@ -252,7 +252,7 @@ public function testFullAndTableGetCache() {
       ->will($this->returnValue(FALSE));
     $this->cacheBackend->expects($this->at(3))
       ->method('set')
-      ->with("views_data:$random_table_name:en", array());
+      ->with("views_data:$random_table_name:en", []);
     $this->cacheTagsInvalidator->expects($this->once())
       ->method('invalidateTags')
       ->with(['views_data']);
@@ -269,7 +269,7 @@ public function testFullAndTableGetCache() {
       ->will($this->returnValue(FALSE));
     $this->cacheBackend->expects($this->at(7))
       ->method('set')
-      ->with("views_data:$random_table_name:en", array());
+      ->with("views_data:$random_table_name:en", []);
 
     $views_data = $this->viewsData->getAll();
     $this->assertSame($expected_views_data, $views_data);
@@ -283,7 +283,7 @@ public function testFullAndTableGetCache() {
     $this->assertSame($expected_views_data[$table_name_2], $views_data);
 
     $views_data = $this->viewsData->get($random_table_name);
-    $this->assertSame(array(), $views_data);
+    $this->assertSame([], $views_data);
 
     $this->viewsData->clear();
 
@@ -379,11 +379,11 @@ public function testNonExistingTableGetCache() {
 
     // All views data should be requested on the first try.
     $views_data = $this->viewsData->get($random_table_name);
-    $this->assertSame(array(), $views_data, 'Make sure fetching views data for an invalid table returns an empty array.');
+    $this->assertSame([], $views_data, 'Make sure fetching views data for an invalid table returns an empty array.');
 
     // Test no data is rebuilt when requesting an invalid table again.
     $views_data = $this->viewsData->get($random_table_name);
-    $this->assertSame(array(), $views_data, 'Make sure fetching views data for an invalid table returns an empty array.');
+    $this->assertSame([], $views_data, 'Make sure fetching views data for an invalid table returns an empty array.');
   }
 
   /**
@@ -433,7 +433,7 @@ public function testCacheCallsWithSameTableMultipleTimesAndWarmCache() {
     $this->cacheBackend->expects($this->once())
       ->method('get')
       ->with('views_data:views_test_data:en')
-      ->will($this->returnValue((object) array('data' => $expected_views_data['views_test_data'])));
+      ->will($this->returnValue((object) ['data' => $expected_views_data['views_test_data']]));
     $this->cacheBackend->expects($this->never())
       ->method('set');
 
@@ -466,7 +466,7 @@ public function testCacheCallsWithWarmCacheAndDifferentTable() {
     $this->cacheBackend->expects($this->at(1))
       ->method('get')
       ->with('views_data:en')
-      ->will($this->returnValue((object) array('data' => $expected_views_data)));
+      ->will($this->returnValue((object) ['data' => $expected_views_data]));
     $this->cacheBackend->expects($this->at(2))
       ->method('set')
       ->with('views_data:views_test_data_2:en', $expected_views_data['views_test_data_2']);
@@ -502,10 +502,10 @@ public function testCacheCallsWithWarmCacheAndInvalidTable() {
     $this->cacheBackend->expects($this->at(1))
       ->method('get')
       ->with('views_data:en')
-      ->will($this->returnValue((object) array('data' => $expected_views_data)));
+      ->will($this->returnValue((object) ['data' => $expected_views_data]));
     $this->cacheBackend->expects($this->at(2))
       ->method('set')
-      ->with("views_data:$non_existing_table:en", array());
+      ->with("views_data:$non_existing_table:en", []);
 
     // Initialize the views data cache and request a non-existing table. This
     // will result in the same cache requests as we explicitly write an empty
@@ -514,7 +514,7 @@ public function testCacheCallsWithWarmCacheAndInvalidTable() {
     // check if the table does exist or not.
     for ($i = 0; $i < 5; $i++) {
       $views_data = $this->viewsData->get($non_existing_table);
-      $this->assertSame(array(), $views_data);
+      $this->assertSame([], $views_data);
     }
   }
 
@@ -535,7 +535,7 @@ public function testCacheCallsWithWarmCacheForInvalidTable() {
     $this->cacheBackend->expects($this->once())
       ->method('get')
       ->with("views_data:$non_existing_table:en")
-      ->will($this->returnValue((object) array('data' => array())));
+      ->will($this->returnValue((object) ['data' => []]));
     $this->cacheBackend->expects($this->never())
       ->method('set');
 
@@ -546,7 +546,7 @@ public function testCacheCallsWithWarmCacheForInvalidTable() {
     // check if the table does exist or not.
     for ($i = 0; $i < 5; $i++) {
       $views_data = $this->viewsData->get($non_existing_table);
-      $this->assertSame(array(), $views_data);
+      $this->assertSame([], $views_data);
     }
   }
 
@@ -588,7 +588,7 @@ public function testCacheCallsWithWarmCacheAndGetAllTables() {
     $this->cacheBackend->expects($this->once())
       ->method('get')
       ->with("views_data:en")
-      ->will($this->returnValue((object) array('data' => $expected_views_data)));
+      ->will($this->returnValue((object) ['data' => $expected_views_data]));
     $this->cacheBackend->expects($this->never())
       ->method('set');
 
@@ -618,7 +618,7 @@ public function testCacheCallsWithoutWarmCacheAndGetMultipleTables() {
     $this->cacheBackend->expects($this->at(1))
       ->method('get')
       ->with('views_data:en')
-      ->will($this->returnValue((object) array('data' => $expected_views_data)));
+      ->will($this->returnValue((object) ['data' => $expected_views_data]));
     $this->cacheBackend->expects($this->at(2))
       ->method('set')
       ->with("views_data:$table_name:en", $expected_views_data[$table_name]);
diff --git a/core/modules/views/tests/src/Unit/ViewsHandlerManagerTest.php b/core/modules/views/tests/src/Unit/ViewsHandlerManagerTest.php
index efbbe49..c181b94 100644
--- a/core/modules/views/tests/src/Unit/ViewsHandlerManagerTest.php
+++ b/core/modules/views/tests/src/Unit/ViewsHandlerManagerTest.php
@@ -48,7 +48,7 @@ protected function setUp() {
       ->getMock();
     $cache_backend = $this->getMock('Drupal\Core\Cache\CacheBackendInterface');
     $this->moduleHandler = $this->getMock('Drupal\Core\Extension\ModuleHandlerInterface');
-    $this->handlerManager = new ViewsHandlerManager('test', new \ArrayObject(array()), $this->viewsData, $cache_backend, $this->moduleHandler);
+    $this->handlerManager = new ViewsHandlerManager('test', new \ArrayObject([]), $this->viewsData, $cache_backend, $this->moduleHandler);
   }
 
   /**
@@ -72,7 +72,7 @@ protected function setupMockedFactory() {
   public function testAlterHookInvocation() {
     $this->moduleHandler->expects($this->once())
       ->method('alter')
-      ->with('views_plugins_test', array());
+      ->with('views_plugins_test', []);
 
     $this->handlerManager->getDefinitions();
   }
diff --git a/core/modules/views/views.api.php b/core/modules/views/views.api.php
index 345ecc9..c21b9c5 100644
--- a/core/modules/views/views.api.php
+++ b/core/modules/views/views.api.php
@@ -93,7 +93,7 @@
  *   to the user following analysis of the view.
  */
 function hook_views_analyze(Drupal\views\ViewExecutable $view) {
-  $messages = array();
+  $messages = [];
 
   if ($view->display_handler->options['pager']['type'] == 'none') {
     $messages[] = Drupal\views\Analyzer::formatMessage(t('This view has no pager. This could cause performance issues when the view contains many items.'), 'warning');
@@ -144,15 +144,15 @@ function hook_views_data() {
   // );
 
   // Define the return array.
-  $data = array();
+  $data = [];
 
   // The outermost keys of $data are Views table names, which should usually
   // be the same as the hook_schema() table names.
-  $data['example_table'] = array();
+  $data['example_table'] = [];
 
   // The value corresponding to key 'table' gives properties of the table
   // itself.
-  $data['example_table']['table'] = array();
+  $data['example_table']['table'] = [];
 
   // Within 'table', the value of 'group' (translated string) is used as a
   // prefix in Views UI for this table's fields, filters, etc. When adding
@@ -169,7 +169,7 @@ function hook_views_data() {
   // for views. Non-base tables can only be brought in via relationships in
   // views based on other tables. To define a table to be a base table, add
   // key 'base' to the 'table' array:
-  $data['example_table']['table']['base'] = array(
+  $data['example_table']['table']['base'] = [
     // Identifier (primary) field in this table for Views.
     'field' => 'nid',
     // Label in the UI.
@@ -177,7 +177,7 @@ function hook_views_data() {
     // Longer description in the UI. Required.
     'help' => t('Example table contains example content and can be related to nodes.'),
     'weight' => -10,
-  );
+  ];
 
   // Some tables have an implicit, automatic relationship to other tables,
   // meaning that when the other table is available in a view (either as the
@@ -196,7 +196,7 @@ function hook_views_data() {
   //   ... FROM example_table et ... JOIN node_field_data nfd
   //   ON et.nid = nfd.nid AND ('extra' clauses will be here) ...
   // although the table aliases will be different.
-  $data['example_table']['table']['join'] = array(
+  $data['example_table']['table']['join'] = [
     // Within the 'join' section, list one or more tables to automatically
     // join to. In this example, every time 'node_field_data' is available in
     // a view, 'example_table' will be too. The array keys here are the array
@@ -204,36 +204,36 @@ function hook_views_data() {
     // implementations. If the table listed here is from another module's
     // hook_views_data() implementation, make sure your module depends on that
     // other module.
-    'node_field_data' => array(
+    'node_field_data' => [
       // Primary key field in node_field_data to use in the join.
       'left_field' => 'nid',
       // Foreign key field in example_table to use in the join.
       'field' => 'nid',
       // 'extra' is an array of additional conditions on the join.
-      'extra' => array(
-        0 => array(
+      'extra' => [
+        0 => [
           // Adds AND node_field_data.published = TRUE to the join.
           'field' => 'published',
           'value' => TRUE,
-        ),
-        1 => array(
+        ],
+        1 => [
           // Adds AND example_table.numeric_field = 1 to the join.
           'left_field' => 'numeric_field',
           'value' => 1,
           // If true, the value will not be surrounded in quotes.
           'numeric' => TRUE,
-        ),
-        2 => array(
+        ],
+        2 => [
           // Adds AND example_table.boolean_field <>
           // node_field_data.published to the join.
           'field' => 'published',
           'left_field' => 'boolean_field',
           // The operator used, Defaults to "=".
           'operator' => '!=',
-        ),
-      ),
-    ),
-  );
+        ],
+      ],
+    ],
+  ];
 
   // You can also do a more complex join, where in order to get to a certain
   // base table defined in a hook_views_data() implementation, you will join
@@ -248,7 +248,7 @@ function hook_views_data() {
   //   JOIN node_field_data nfd ON (definition of the join from the foo
   //   module goes here) ...
   // although the table aliases will be different.
-  $data['example_table']['table']['join']['node_field_data'] = array(
+  $data['example_table']['table']['join']['node_field_data'] = [
     // 'node_field_data' above is the base we're joining to in Views.
     // 'left_table' is the table we're actually joining to, in order to get to
     // 'node_field_data'. It has to be something that Views knows how to join
@@ -257,16 +257,16 @@ function hook_views_data() {
     'left_field' => 'nid',
     'field' => 'nid',
     // 'extra' is an array of additional conditions on the join.
-    'extra' => array(
+    'extra' => [
       // This syntax matches additional fields in the two tables:
       // ... AND foo.langcode = example_table.langcode ...
-      array('left_field' => 'langcode', 'field' => 'langcode'),
+      ['left_field' => 'langcode', 'field' => 'langcode'],
       // This syntax adds a condition on our table. 'operator' defaults to
       // '=' for non-array values, or 'IN' for array values.
       // ... AND example_table.numeric_field > 0 ...
-      array('field' => 'numeric_field', 'value' => 0, 'numeric' => TRUE, 'operator' => '>'),
-    ),
-  );
+      ['field' => 'numeric_field', 'value' => 0, 'numeric' => TRUE, 'operator' => '>'],
+    ],
+  ];
 
   // Other array elements at the top level of your table's array describe
   // individual database table fields made available to Views. The array keys
@@ -296,7 +296,7 @@ function hook_views_data() {
 
   // Node ID field, exposed as relationship only, since it is a foreign key
   // in this table.
-  $data['example_table']['nid'] = array(
+  $data['example_table']['nid'] = [
     'title' => t('Example content'),
     'help' => t('Relate example content to the node content'),
 
@@ -306,7 +306,7 @@ function hook_views_data() {
     // - Use hook_views_data_alter() -- see the function body example on that
     //   hook for details.
     // - Use the implicit join method described above.
-    'relationship' => array(
+    'relationship' => [
       // Views name of the table to join to for the relationship.
       'base' => 'node_field_data',
       // Database field name in the other table to join on.
@@ -315,78 +315,78 @@ function hook_views_data() {
       'id' => 'standard',
       // Default label for relationship in the UI.
       'label' => t('Example node'),
-    ),
-  );
+    ],
+  ];
 
   // Plain text field, exposed as a field, sort, filter, and argument.
-  $data['example_table']['plain_text_field'] = array(
+  $data['example_table']['plain_text_field'] = [
     'title' => t('Plain text field'),
     'help' => t('Just a plain text field.'),
 
-    'field' => array(
+    'field' => [
       // ID of field handler plugin to use.
       'id' => 'standard',
-    ),
+    ],
 
-    'sort' => array(
+    'sort' => [
       // ID of sort handler plugin to use.
       'id' => 'standard',
-    ),
+    ],
 
-    'filter' => array(
+    'filter' => [
       // ID of filter handler plugin to use.
       'id' => 'string',
-    ),
+    ],
 
-    'argument' => array(
+    'argument' => [
       // ID of argument handler plugin to use.
       'id' => 'string',
-    ),
-  );
+    ],
+  ];
 
   // Numeric field, exposed as a field, sort, filter, and argument.
-  $data['example_table']['numeric_field'] = array(
+  $data['example_table']['numeric_field'] = [
     'title' => t('Numeric field'),
     'help' => t('Just a numeric field.'),
 
-    'field' => array(
+    'field' => [
       // ID of field handler plugin to use.
       'id' => 'numeric',
-    ),
+    ],
 
-    'sort' => array(
+    'sort' => [
       // ID of sort handler plugin to use.
       'id' => 'standard',
-    ),
+    ],
 
-    'filter' => array(
+    'filter' => [
       // ID of filter handler plugin to use.
       'id' => 'numeric',
-    ),
+    ],
 
-    'argument' => array(
+    'argument' => [
       // ID of argument handler plugin to use.
       'id' => 'numeric',
-    ),
-  );
+    ],
+  ];
 
   // Boolean field, exposed as a field, sort, and filter. The filter section
   // illustrates overriding various settings.
-  $data['example_table']['boolean_field'] = array(
+  $data['example_table']['boolean_field'] = [
     'title' => t('Boolean field'),
     'help' => t('Just an on/off field.'),
 
-    'field' => array(
+    'field' => [
       // ID of field handler plugin to use.
       'id' => 'boolean',
-    ),
+    ],
 
-    'sort' => array(
+    'sort' => [
       // ID of sort handler plugin to use.
       'id' => 'standard',
-    ),
+    ],
 
-    'filter' => array(
+    'filter' => [
       // ID of filter handler plugin to use.
       'id' => 'boolean',
       // Override the generic field title, so that the filter uses a different
@@ -398,43 +398,43 @@ function hook_views_data() {
       // Override the default Boolean filter handler's 'use_equal' setting, to
       // make the query use 'boolean_field = 1' instead of 'boolean_field <> 0'.
       'use_equal' => TRUE,
-    ),
-  );
+    ],
+  ];
 
   // Integer timestamp field, exposed as a field, sort, and filter.
-  $data['example_table']['timestamp_field'] = array(
+  $data['example_table']['timestamp_field'] = [
     'title' => t('Timestamp field'),
     'help' => t('Just a timestamp field.'),
 
-    'field' => array(
+    'field' => [
       // ID of field handler plugin to use.
       'id' => 'date',
-    ),
+    ],
 
-    'sort' => array(
+    'sort' => [
       // ID of sort handler plugin to use.
       'id' => 'date',
-    ),
+    ],
 
-    'filter' => array(
+    'filter' => [
       // ID of filter handler plugin to use.
       'id' => 'date',
-    ),
-  );
+    ],
+  ];
 
   // Area example. Areas are not generally associated with actual data
   // tables and fields. This example is from views_views_data(), which defines
   // the "Global" table (not really a table, but a group of Fields, Filters,
   // etc. that are grouped into section "Global" in the UI). Here's the
   // definition of the generic "Text area":
-  $data['views']['area'] = array(
+  $data['views']['area'] = [
     'title' => t('Text area'),
     'help' => t('Provide markup text for the area.'),
-    'area' => array(
+    'area' => [
       // ID of the area handler plugin to use.
       'id' => 'text',
-    ),
-  );
+    ],
+  ];
 
   return $data;
 }
@@ -453,15 +453,15 @@ function hook_views_data_alter(array &$data) {
   $data['node_field_data']['nid']['title'] = t('Node-Nid');
 
   // Add an additional field to the users_field_data table.
-  $data['users_field_data']['example_field'] = array(
+  $data['users_field_data']['example_field'] = [
     'title' => t('Example field'),
     'help' => t('Some example content that references a user'),
 
-    'field' => array(
+    'field' => [
       // ID of the field handler to use.
       'id' => 'example_field',
-    ),
-  );
+    ],
+  ];
 
   // Change the handler of the node title field, presumably to a handler plugin
   // you define in your module. Give the ID of this plugin.
@@ -479,11 +479,11 @@ function hook_views_data_alter(array &$data) {
   // rather than adding this relationship directly to the $data['foo']['fid']
   // field entry, which could overwrite an existing relationship, we define
   // a dummy field key to handle the relationship.
-  $data['foo']['unique_dummy_name'] = array(
+  $data['foo']['unique_dummy_name'] = [
     'title' => t('Title seen while adding relationship'),
     'help' => t('More information about the relationship'),
 
-    'relationship' => array(
+    'relationship' => [
       // Views name of the table being joined to from foo.
       'base' => 'example_table',
       // Database field name in example_table for the join.
@@ -494,8 +494,8 @@ function hook_views_data_alter(array &$data) {
       // ID of relationship handler plugin to use.
       'id' => 'standard',
       'label' => t('Default label for relationship'),
-    ),
-  );
+    ],
+  ];
 
   // Note that the $data array is not returned – it is modified by reference.
 }
@@ -525,12 +525,12 @@ function hook_field_views_data(\Drupal\field\FieldStorageConfigInterface $field_
   $data = views_field_default_views_data($field_storage);
   foreach ($data as $table_name => $table_data) {
     // Add the relationship only on the target_id field.
-    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = array(
+    $data[$table_name][$field_storage->getName() . '_target_id']['relationship'] = [
       'id' => 'standard',
       'base' => 'file_managed',
       'base field' => 'target_id',
-      'label' => t('image from @field_name', array('@field_name' => $field_storage->getName())),
-    );
+      'label' => t('image from @field_name', ['@field_name' => $field_storage->getName()]),
+    ];
   }
 
   return $data;
@@ -563,9 +563,9 @@ function hook_field_views_data_alter(array &$data, \Drupal\field\FieldStorageCon
 
   list($label) = views_entity_field_label($entity_type_id, $field_name);
 
-  $data['file_managed'][$pseudo_field_name]['relationship'] = array(
-    'title' => t('@entity using @field', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
-    'help' => t('Relate each @entity with a @field set to the image.', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
+  $data['file_managed'][$pseudo_field_name]['relationship'] = [
+    'title' => t('@entity using @field', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
+    'help' => t('Relate each @entity with a @field set to the image.', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
     'id' => 'entity_reverse',
     'field_name' => $field_name,
     'entity_type' => $entity_type_id,
@@ -574,14 +574,14 @@ function hook_field_views_data_alter(array &$data, \Drupal\field\FieldStorageCon
     'base' => $entity_type->getBaseTable(),
     'base field' => $entity_type->getKey('id'),
     'label' => $field_name,
-    'join_extra' => array(
-      0 => array(
+    'join_extra' => [
+      0 => [
         'field' => 'deleted',
         'value' => 0,
         'numeric' => TRUE,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
@@ -620,9 +620,9 @@ function hook_field_views_data_views_data_alter(array &$data, \Drupal\field\Fiel
   $table_mapping = \Drupal::entityManager()->getStorage($entity_type_id)->getTableMapping();
 
   // Views data for this field is in $data[$data_key].
-  $data[$data_key][$pseudo_field_name]['relationship'] = array(
-    'title' => t('@entity using @field', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
-    'help' => t('Relate each @entity with a @field set to the term.', array('@entity' => $entity_type->getLabel(), '@field' => $label)),
+  $data[$data_key][$pseudo_field_name]['relationship'] = [
+    'title' => t('@entity using @field', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
+    'help' => t('Relate each @entity with a @field set to the term.', ['@entity' => $entity_type->getLabel(), '@field' => $label]),
     'id' => 'entity_reverse',
     'field_name' => $field_name,
     'entity_type' => $entity_type_id,
@@ -631,14 +631,14 @@ function hook_field_views_data_views_data_alter(array &$data, \Drupal\field\Fiel
     'base' => $entity_type->getBaseTable(),
     'base field' => $entity_type->getKey('id'),
     'label' => $field_name,
-    'join_extra' => array(
-      0 => array(
+    'join_extra' => [
+      0 => [
         'field' => 'deleted',
         'value' => 0,
         'numeric' => TRUE,
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 }
 
 /**
@@ -659,12 +659,12 @@ function hook_field_views_data_views_data_alter(array &$data, \Drupal\field\Fiel
  */
 function hook_views_query_substitutions(ViewExecutable $view) {
   // Example from views_views_query_substitutions().
-  return array(
+  return [
     '***CURRENT_VERSION***' => \Drupal::VERSION,
     '***CURRENT_TIME***' => REQUEST_TIME,
     '***LANGUAGE_language_content***' => \Drupal::languageManager()->getCurrentLanguage(LanguageInterface::TYPE_CONTENT)->getId(),
     PluginBase::VIEWS_QUERY_LANGUAGE_SITE_DEFAULT => \Drupal::languageManager()->getDefaultLanguage()->getId(),
-  );
+  ];
 }
 
 /**
@@ -676,9 +676,9 @@ function hook_views_query_substitutions(ViewExecutable $view) {
  *   is already marked safe.
  */
 function hook_views_form_substitutions() {
-  return array(
+  return [
     '<!--views-form-example-substitutions-->' => 'Example Substitution',
-  );
+  ];
 }
 
 /**
@@ -771,7 +771,7 @@ function hook_views_pre_execute(ViewExecutable $view) {
   $account = \Drupal::currentUser();
 
   if (count($view->query->tables) > 2 && $account->hasPermission('administer views')) {
-    drupal_set_message(t('The view %view may be heavy to execute.', array('%view' => $view->id())), 'warning');
+    drupal_set_message(t('The view %view may be heavy to execute.', ['%view' => $view->id()]), 'warning');
   }
 }
 
@@ -882,11 +882,11 @@ function hook_views_query_alter(ViewExecutable $view, QueryPluginBase $query) {
         // If this is the part of the query filtering on title, chang the
         // condition to filter on node ID.
         if ($condition['field'] == 'node.title') {
-          $condition = array(
+          $condition = [
             'field' => 'node.nid',
             'value' => $view->exposed_raw_input['title'],
             'operator' => '=',
-          );
+          ];
         }
       }
     }
@@ -915,10 +915,10 @@ function hook_views_query_alter(ViewExecutable $view, QueryPluginBase $query) {
 function hook_views_preview_info_alter(array &$rows, ViewExecutable $view) {
   // Adds information about the tables being queried by the view to the query
   // part of the info box.
-  $rows['query'][] = array(
+  $rows['query'][] = [
     t('<strong>Table queue</strong>'),
     count($view->query->table_queue) . ': (' . implode(', ', array_keys($view->query->table_queue)) . ')',
-  );
+  ];
 }
 
 /**
@@ -938,7 +938,7 @@ function hook_views_preview_info_alter(array &$rows, ViewExecutable $view) {
 function hook_views_ui_display_top_links_alter(array &$links, ViewExecutable $view, $display_id) {
   // Put the export link first in the list.
   if (isset($links['export'])) {
-    $links = array('export' => $links['export']) + $links;
+    $links = ['export' => $links['export']] + $links;
   }
 }
 
@@ -953,7 +953,7 @@ function hook_views_ui_display_top_links_alter(array &$links, ViewExecutable $vi
  * @see views_invalidate_cache()
  */
 function hook_views_invalidate_cache() {
-  \Drupal\Core\Cache\Cache::invalidateTags(array('views'));
+  \Drupal\Core\Cache\Cache::invalidateTags(['views']);
 }
 
 /**
diff --git a/core/modules/views/views.module b/core/modules/views/views.module
index 96e6dd3..f9bd098 100644
--- a/core/modules/views/views.module
+++ b/core/modules/views/views.module
@@ -28,14 +28,14 @@ function views_help($route_name, RouteMatchInterface $route_match) {
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
       $output .= '<p>' . t('The Views module provides a back end to fetch information from content, user accounts, taxonomy terms, and other entities from the database and present it to the user as a grid, HTML list, table, unformatted list, etc. The resulting displays are known generally as <em>views</em>.') . '</p>';
-      $output .= '<p>' . t('For more information, see the <a href=":views">online documentation for the Views module</a>.', array(':views' => 'https://www.drupal.org/documentation/modules/views')) . '</p>';
-      $output .= '<p>' . t('In order to create and modify your own views using the administration and configuration user interface, you will need to enable either the Views UI module in core or a contributed module that provides a user interface for Views. See the <a href=":views-ui">Views UI module help page</a> for more information.', array(':views-ui' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('help.page', array('name' => 'views_ui')) : '#')) . '</p>';
+      $output .= '<p>' . t('For more information, see the <a href=":views">online documentation for the Views module</a>.', [':views' => 'https://www.drupal.org/documentation/modules/views']) . '</p>';
+      $output .= '<p>' . t('In order to create and modify your own views using the administration and configuration user interface, you will need to enable either the Views UI module in core or a contributed module that provides a user interface for Views. See the <a href=":views-ui">Views UI module help page</a> for more information.', [':views-ui' => (\Drupal::moduleHandler()->moduleExists('views_ui')) ? \Drupal::url('help.page', ['name' => 'views_ui']) : '#']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Adding functionality to administrative pages') . '</dt>';
       $output .= '<dd>' . t('The Views module adds functionality to some core administration pages. For example, <em>admin/content</em> uses Views to filter and sort content. With Views uninstalled, <em>admin/content</em> is more limited.') . '</dd>';
       $output .= '<dt>' . t('Expanding Views functionality') . '</dt>';
-      $output .= '<dd>' . t('Contributed projects that support the Views module can be found in the <a href=":node">online documentation for Views-related contributed modules</a>.', array(':node' => 'https://www.drupal.org/documentation/modules/views/add-ons')) . '</dd>';
+      $output .= '<dd>' . t('Contributed projects that support the Views module can be found in the <a href=":node">online documentation for Views-related contributed modules</a>.', [':node' => 'https://www.drupal.org/documentation/modules/views/add-ons']) . '</dd>';
       $output .= '<dt>' . t('Improving table accessibility') . '</dt>';
       $output .= '<dd>' . t('Views tables include semantic markup to improve accessibility. Data cells are automatically associated with header cells through id and header attributes. To improve the accessibility of your tables you can add descriptive elements within the Views table settings. The <em>caption</em> element can introduce context for a table, making it easier to understand. The <em>summary</em> element can provide an overview of how the data has been organized and how to navigate the table. Both the caption and summary are visible by default and also implemented according to HTML5 guidelines.') . '</dd>';
       $output .= '<dt>' . t('Working with multilingual views') . '</dt>';
@@ -53,10 +53,10 @@ function views_help($route_name, RouteMatchInterface $route_match) {
 function views_views_pre_render($view) {
   // If using AJAX, send identifying data about this view.
   if ($view->ajaxEnabled() && empty($view->is_attachment) && empty($view->live_preview)) {
-    $view->element['#attached']['drupalSettings']['views'] = array(
+    $view->element['#attached']['drupalSettings']['views'] = [
       'ajax_path' => \Drupal::url('views.ajax'),
-      'ajaxViews' => array(
-        'views_dom_id:' . $view->dom_id => array(
+      'ajaxViews' => [
+        'views_dom_id:' . $view->dom_id => [
           'view_name' => $view->storage->id(),
           'view_display_id' => $view->current_display,
           'view_args' => Html::escape(implode('/', $view->args)),
@@ -66,9 +66,9 @@ function views_views_pre_render($view) {
           // To fit multiple views on a page, the programmer may have
           // overridden the display's pager_element.
           'pager_element' => isset($view->pager) ? $view->pager->getPagerId() : 0,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     $view->element['#attached']['library'][] = 'views/views.ajax';
   }
 
@@ -85,50 +85,50 @@ function views_theme($existing, $type, $theme, $path) {
   \Drupal::moduleHandler()->loadInclude('views', 'inc', 'views.theme');
 
   // Some quasi clever array merging here.
-  $base = array(
+  $base = [
     'file' => 'views.theme.inc',
-  );
+  ];
 
   // Our extra version of pager from pager.inc
-  $hooks['views_mini_pager'] = $base + array(
-    'variables' => array('tags' => array(), 'quantity' => 9, 'element' => 0, 'parameters' => array()),
-  );
+  $hooks['views_mini_pager'] = $base + [
+    'variables' => ['tags' => [], 'quantity' => 9, 'element' => 0, 'parameters' => []],
+  ];
 
-  $variables = array(
+  $variables = [
     // For displays, we pass in a dummy array as the first parameter, since
     // $view is an object but the core contextual_preprocess() function only
     // attaches contextual links when the primary theme argument is an array.
-    'display' => array(
-      'view_array' => array(),
+    'display' => [
+      'view_array' => [],
       'view' => NULL,
-      'rows' => array(),
-      'header' => array(),
-      'footer' => array(),
-      'empty' => array(),
-      'exposed' => array(),
-      'more' => array(),
-      'feed_icons' => array(),
-      'pager' => array(),
+      'rows' => [],
+      'header' => [],
+      'footer' => [],
+      'empty' => [],
+      'exposed' => [],
+      'more' => [],
+      'feed_icons' => [],
+      'pager' => [],
       'title' => '',
-      'attachment_before' => array(),
-      'attachment_after' => array(),
-    ),
-    'style' => array('view' => NULL, 'options' => NULL, 'rows' => NULL, 'title' => NULL),
-    'row' => array('view' => NULL, 'options' => NULL, 'row' => NULL, 'field_alias' => NULL),
-    'exposed_form' => array('view' => NULL, 'options' => NULL),
-    'pager' => array(
+      'attachment_before' => [],
+      'attachment_after' => [],
+    ],
+    'style' => ['view' => NULL, 'options' => NULL, 'rows' => NULL, 'title' => NULL],
+    'row' => ['view' => NULL, 'options' => NULL, 'row' => NULL, 'field_alias' => NULL],
+    'exposed_form' => ['view' => NULL, 'options' => NULL],
+    'pager' => [
       'view' => NULL, 'options' => NULL,
-      'tags' => array(), 'quantity' => 9, 'element' => 0, 'parameters' => array()
-    ),
-  );
+      'tags' => [], 'quantity' => 9, 'element' => 0, 'parameters' => []
+    ],
+  ];
 
   // Default view themes
-  $hooks['views_view_field'] = $base + array(
-    'variables' => array('view' => NULL, 'field' => NULL, 'row' => NULL),
-  );
-  $hooks['views_view_grouping'] = $base + array(
-    'variables' => array('view' => NULL, 'grouping' => NULL, 'grouping_level' => NULL, 'rows' => NULL, 'title' => NULL),
-  );
+  $hooks['views_view_field'] = $base + [
+    'variables' => ['view' => NULL, 'field' => NULL, 'row' => NULL],
+  ];
+  $hooks['views_view_grouping'] = $base + [
+    'variables' => ['view' => NULL, 'grouping' => NULL, 'grouping_level' => NULL, 'rows' => NULL, 'title' => NULL],
+  ];
 
   // Only display, pager, row, and style plugins can provide theme hooks.
   $plugin_types = [
@@ -138,7 +138,7 @@ function views_theme($existing, $type, $theme, $path) {
     'style',
     'exposed_form',
   ];
-  $plugins = array();
+  $plugins = [];
   foreach ($plugin_types as $plugin_type) {
     $plugins[$plugin_type] = Views::pluginManager($plugin_type)->getDefinitions();
   }
@@ -164,9 +164,9 @@ function views_theme($existing, $type, $theme, $path) {
         continue;
       }
 
-      $hooks[$def['theme']] = array(
+      $hooks[$def['theme']] = [
         'variables' => $variables[$type],
-      );
+      ];
 
       // We always use the module directory as base dir.
       $module_dir = drupal_get_path('module', $def['provider']);
@@ -175,7 +175,7 @@ function views_theme($existing, $type, $theme, $path) {
       // For the views module we ensure views.theme.inc is included.
       if ($def['provider'] == 'views') {
         if (!isset($hooks[$def['theme']]['includes'])) {
-          $hooks[$def['theme']]['includes'] = array();
+          $hooks[$def['theme']]['includes'] = [];
         }
         if (!in_array('views.theme.inc', $hooks[$def['theme']]['includes'])) {
           $hooks[$def['theme']]['includes'][] = $module_dir . '/views.theme.inc';
@@ -210,13 +210,13 @@ function views_theme($existing, $type, $theme, $path) {
     }
   }
 
-  $hooks['views_form_views_form'] = $base + array(
+  $hooks['views_form_views_form'] = $base + [
     'render element' => 'form',
-  );
+  ];
 
-  $hooks['views_exposed_form'] = $base + array(
+  $hooks['views_exposed_form'] = $base + [
     'render element' => 'form',
-  );
+  ];
 
   return $hooks;
 }
@@ -378,13 +378,13 @@ function views_add_contextual_links(&$render_element, $location, $display_id, ar
     // set 'contextual_links_locations' to, e.g., {""}.)
 
     if (!isset($plugin['contextual_links_locations'])) {
-      $plugin['contextual_links_locations'] = array('view');
+      $plugin['contextual_links_locations'] = ['view'];
     }
-    elseif ($plugin['contextual_links_locations'] == array() || $plugin['contextual_links_locations'] == array('')) {
-      $plugin['contextual_links_locations'] = array();
+    elseif ($plugin['contextual_links_locations'] == [] || $plugin['contextual_links_locations'] == ['']) {
+      $plugin['contextual_links_locations'] = [];
     }
     else {
-      $plugin += array('contextual_links_locations' => array('view'));
+      $plugin += ['contextual_links_locations' => ['view']];
     }
 
     // On exposed_forms blocks contextual links should always be visible.
@@ -392,7 +392,7 @@ function views_add_contextual_links(&$render_element, $location, $display_id, ar
     $has_links = !empty($plugin['contextual links']) && !empty($plugin['contextual_links_locations']);
     if ($has_links && in_array($location, $plugin['contextual_links_locations'])) {
       foreach ($plugin['contextual links'] as $group => $link) {
-        $args = array();
+        $args = [];
         $valid = TRUE;
         if (!empty($link['route_parameters_names'])) {
           $view_storage = \Drupal::entityManager()
@@ -416,14 +416,14 @@ function views_add_contextual_links(&$render_element, $location, $display_id, ar
         // array.
         if ($valid) {
           $render_element['#views_contextual_links'] = TRUE;
-          $render_element['#contextual_links'][$group] = array(
+          $render_element['#contextual_links'][$group] = [
             'route_parameters' => $args,
-            'metadata' => array(
+            'metadata' => [
               'location' => $location,
               'name' => $view_id,
               'display_id' => $display_id,
-            ),
-          );
+            ],
+          ];
           // If we're setting contextual links on a page, for a page view, for a
           // user that may use contextual links, attach Views' contextual links
           // JavaScript.
@@ -508,23 +508,23 @@ function &views_get_current_view() {
  * Implements hook_hook_info().
  */
 function views_hook_info() {
-  $hooks = array();
+  $hooks = [];
 
-  $hooks += array_fill_keys(array(
+  $hooks += array_fill_keys([
     'views_data',
     'views_data_alter',
     'views_analyze',
     'views_invalidate_cache',
-  ), array('group' => 'views'));
+  ], ['group' => 'views']);
 
   // Register a views_plugins alter hook for all plugin types.
   foreach (ViewExecutable::getPluginTypes() as $type) {
-    $hooks['views_plugins_' . $type . '_alter'] = array(
+    $hooks['views_plugins_' . $type . '_alter'] = [
       'group' => 'views',
-    );
+    ];
   }
 
-  $hooks += array_fill_keys(array(
+  $hooks += array_fill_keys([
     'views_query_substitutions',
     'views_form_substitutions',
     'views_pre_view',
@@ -535,14 +535,14 @@ function views_hook_info() {
     'views_pre_render',
     'views_post_render',
     'views_query_alter',
-  ), array('group' => 'views_execution'));
+  ], ['group' => 'views_execution']);
 
-  $hooks['field_views_data'] = array(
+  $hooks['field_views_data'] = [
     'group' => 'views',
-  );
-  $hooks['field_views_data_alter'] = array(
+  ];
+  $hooks['field_views_data_alter'] = [
     'group' => 'views',
-  );
+  ];
 
   return $hooks;
 }
@@ -605,8 +605,8 @@ function views_disable_view(View $view) {
  */
 function views_pre_render_views_form_views_form($element) {
   // Placeholders and their substitutions (usually rendered form elements).
-  $search = array();
-  $replace = array();
+  $search = [];
+  $replace = [];
 
   // Add in substitutions provided by the form.
   foreach ($element['#substitutions']['#value'] as $substitution) {
@@ -788,7 +788,7 @@ function views_get_view_result($name, $display_id = NULL) {
     return $view->result;
   }
   else {
-    return array();
+    return [];
   }
 }
 
diff --git a/core/modules/views/views.theme.inc b/core/modules/views/views.theme.inc
index 8dcdf67..4866d1c 100644
--- a/core/modules/views/views.theme.inc
+++ b/core/modules/views/views.theme.inc
@@ -90,7 +90,7 @@ function template_preprocess_views_view_fields(&$variables) {
 
   // Loop through the fields for this view.
   $previous_inline = FALSE;
-  $variables['fields'] = array(); // ensure it's at least an empty array.
+  $variables['fields'] = []; // ensure it's at least an empty array.
   /** @var \Drupal\views\ResultRow $row */
   $row = $variables['row'];
   foreach ($view->field as $id => $field) {
@@ -107,7 +107,7 @@ function template_preprocess_views_view_fields(&$variables) {
 
       $object->element_type = $object->handler->elementType(TRUE, !$variables['options']['default_field_elements'], $object->inline);
       if ($object->element_type) {
-        $attributes = array();
+        $attributes = [];
         if ($object->handler->options['element_default_classes']) {
           $attributes['class'][] = 'field-content';
         }
@@ -141,7 +141,7 @@ function template_preprocess_views_view_fields(&$variables) {
 
       // Set up field wrapper attributes if field wrapper was set.
       if ($object->wrapper_element) {
-        $attributes = array();
+        $attributes = [];
         if ($object->handler->options['element_default_classes']) {
           $attributes['class'][] = 'views-field';
           $attributes['class'][] = 'views-field-' . $object->class;
@@ -169,7 +169,7 @@ function template_preprocess_views_view_fields(&$variables) {
 
         // Set up label attributes.
         if ($object->label_element) {
-          $attributes = array();
+          $attributes = [];
           if ($object->handler->options['element_default_classes']) {
             $attributes['class'][] = 'views-label';
             $attributes['class'][] = 'views-label-' . $object->class;
@@ -241,13 +241,13 @@ function template_preprocess_views_view_summary(&$variables) {
   $view = $variables['view'];
   $argument = $view->argument[$view->build_info['summary_level']];
 
-  $url_options = array();
+  $url_options = [];
 
   if (!empty($view->exposed_raw_input)) {
     $url_options['query'] = $view->exposed_raw_input;
   }
 
-  $active_urls = array(
+  $active_urls = [
     // Force system path.
     \Drupal::url('<current>', [], ['alias' => TRUE]),
     // Force system path.
@@ -256,13 +256,13 @@ function template_preprocess_views_view_summary(&$variables) {
     \Drupal::url('<current>'),
     // Could be an alias.
     Url::fromRouteMatch(\Drupal::routeMatch())->toString(),
-  );
+  ];
   $active_urls = array_combine($active_urls, $active_urls);
 
   // Collect all arguments foreach row, to be able to alter them for example
   // by the validator. This is not done per single argument value, because this
   // could cause performance problems.
-  $row_args = array();
+  $row_args = [];
 
   foreach ($variables['rows'] as $id => $row) {
     $row_args[$id] = $argument->summaryArgument($row);
@@ -270,7 +270,7 @@ function template_preprocess_views_view_summary(&$variables) {
   $argument->processSummaryArguments($row_args);
 
   foreach ($variables['rows'] as $id => $row) {
-    $variables['rows'][$id]->attributes = array();
+    $variables['rows'][$id]->attributes = [];
     $variables['rows'][$id]->link = $argument->summaryName($row);
     $args = $view->args;
     $args[$argument->position] = $row_args[$id];
@@ -329,25 +329,25 @@ function template_preprocess_views_view_summary_unformatted(&$variables) {
   $view = $variables['view'];
   $argument = $view->argument[$view->build_info['summary_level']];
 
-  $url_options = array();
+  $url_options = [];
 
   if (!empty($view->exposed_raw_input)) {
     $url_options['query'] = $view->exposed_raw_input;
   }
 
   $count = 0;
-  $active_urls = array(
+  $active_urls = [
     // Force system path.
     \Drupal::url('<current>', [], ['alias' => TRUE]),
     // Could be an alias.
     \Drupal::url('<current>'),
-  );
+  ];
   $active_urls = array_combine($active_urls, $active_urls);
 
   // Collect all arguments for each row, to be able to alter them for example
   // by the validator. This is not done per single argument value, because
   // this could cause performance problems.
-  $row_args = array();
+  $row_args = [];
   foreach ($variables['rows'] as $id => $row) {
     $row_args[$id] = $argument->summaryArgument($row);
   }
@@ -358,7 +358,7 @@ function template_preprocess_views_view_summary_unformatted(&$variables) {
     if ($count++) {
       $variables['rows'][$id]->separator = Xss::filterAdmin($variables['options']['separator']);
     }
-    $variables['rows'][$id]->attributes = array();
+    $variables['rows'][$id]->attributes = [];
     $variables['rows'][$id]->link = $argument->summaryName($row);
     $args = $view->args;
     $args[$argument->position] = $row_args[$id];
@@ -417,8 +417,8 @@ function template_preprocess_views_view_table(&$variables) {
   // so that it can get rebuilt.
   // Store rows so that they may be used by further preprocess functions.
   $result = $variables['result'] = $variables['rows'];
-  $variables['rows'] = array();
-  $variables['header'] = array();
+  $variables['rows'] = [];
+  $variables['header'] = [];
 
   $options = $view->style_plugin->options;
   $handler = $view->style_plugin;
@@ -466,19 +466,19 @@ function template_preprocess_views_view_table(&$variables) {
           $initial = ($order == 'asc') ? 'desc' : 'asc';
         }
 
-        $title = t('sort by @s', array('@s' => $label));
+        $title = t('sort by @s', ['@s' => $label]);
         if ($active == $field) {
-          $variables['header'][$field]['sort_indicator'] = array(
+          $variables['header'][$field]['sort_indicator'] = [
             '#theme' => 'tablesort_indicator',
             '#style' => $initial,
-          );
+          ];
         }
 
         $query['order'] = $field;
         $query['sort'] = $initial;
-        $link_options = array(
+        $link_options = [
           'query' => $query,
-        );
+        ];
         $url = new Url($route_name, [], $link_options);
         $variables['header'][$field]['url'] = $url->toString();
         $variables['header'][$field]['content'] = $label;
@@ -487,7 +487,7 @@ function template_preprocess_views_view_table(&$variables) {
 
       $variables['header'][$field]['default_classes'] = $fields[$field]->options['element_default_classes'];
       // Set up the header label class.
-      $variables['header'][$field]['attributes'] = array();
+      $variables['header'][$field]['attributes'] = [];
       $class = $fields[$field]->elementLabelClasses(0);
       if ($class) {
         $variables['header'][$field]['attributes']['class'][] = $class;
@@ -543,7 +543,7 @@ function template_preprocess_views_view_table(&$variables) {
 
       // Add field classes.
       if (!isset($column_reference['attributes'])) {
-        $column_reference['attributes'] = array();
+        $column_reference['attributes'] = [];
       }
 
       if ($classes = $fields[$field]->elementClasses($num)) {
@@ -557,7 +557,7 @@ function template_preprocess_views_view_table(&$variables) {
 
       // Improves accessibility of complex tables.
       if (isset($variables['header'][$field]['attributes']['id'])) {
-        $column_reference['attributes']['headers'] = array($variables['header'][$field]['attributes']['id']);
+        $column_reference['attributes']['headers'] = [$variables['header'][$field]['attributes']['id']];
       }
 
       if (!empty($fields[$field])) {
@@ -604,11 +604,11 @@ function template_preprocess_views_view_table(&$variables) {
 
   // Hide table header if all labels are empty.
   if (!$has_header_labels) {
-    $variables['header'] = array();
+    $variables['header'] = [];
   }
 
   foreach ($variables['rows'] as $num => $row) {
-    $variables['rows'][$num]['attributes'] = array();
+    $variables['rows'][$num]['attributes'] = [];
     if ($row_class = $handler->getRowClass($num)) {
       $variables['rows'][$num]['attributes']['class'][] = $row_class;
     }
@@ -620,10 +620,10 @@ function template_preprocess_views_view_table(&$variables) {
     $variables['rows'][0]['columns'][0]['content'][0]['field_output'] = $build;
     $variables['rows'][0]['attributes'] = new Attribute(['class' => ['odd']]);
     // Calculate the amounts of rows with output.
-    $variables['rows'][0]['columns'][0]['attributes'] = new Attribute(array(
+    $variables['rows'][0]['columns'][0]['attributes'] = new Attribute([
       'colspan' => count($variables['header']),
       'class' => ['views-empty'],
-    ));
+    ]);
   }
 
   $variables['sticky'] = FALSE;
@@ -678,7 +678,7 @@ function template_preprocess_views_view_grid(&$variables) {
 
   $col = 0;
   $row = 0;
-  $items = array();
+  $items = [];
   $remainders = count($variables['rows']) % $options['columns'];
   $num_rows = floor(count($variables['rows']) / $options['columns']);
 
@@ -695,7 +695,7 @@ function template_preprocess_views_view_grid(&$variables) {
 
     // Create attributes for rows.
     if (!$horizontal || ($horizontal && empty($items[$row]['attributes']))) {
-      $row_attributes = array('class' => array());
+      $row_attributes = ['class' => []];
       // Add custom row classes.
       $row_class = array_filter(explode(' ', $variables['view']->style_plugin->getCustomClass($result_index, 'row')));
       if (!empty($row_class)) {
@@ -712,7 +712,7 @@ function template_preprocess_views_view_grid(&$variables) {
 
     // Create attributes for columns.
     if ($horizontal || (!$horizontal && empty($items[$col]['attributes']))) {
-      $col_attributes = array('class' => array());
+      $col_attributes = ['class' => []];
       // Add default views column classes.
       // Add custom column classes.
       $col_class = array_filter(explode(' ', $variables['view']->style_plugin->getCustomClass($result_index, 'col')));
@@ -781,7 +781,7 @@ function template_preprocess_views_view_unformatted(&$variables) {
 
   $variables['default_row_class'] = !empty($options['default_row_class']);
   foreach ($rows as $id => $row) {
-    $variables['rows'][$id] = array();
+    $variables['rows'][$id] = [];
     $variables['rows'][$id]['content'] = $row;
     $variables['rows'][$id]['attributes'] = new Attribute();
     if ($row_class = $view->style_plugin->getRowClass($id)) {
@@ -808,7 +808,7 @@ function template_preprocess_views_view_list(&$variables) {
     $class = array_map('\Drupal\Component\Utility\Html::cleanCssIdentifier', $class);
 
     // Initialize a new attribute class for $class.
-    $variables['list']['attributes'] = new Attribute(array('class' => $class));
+    $variables['list']['attributes'] = new Attribute(['class' => $class]);
   }
 
   // Fetch wrapper classes from handler options.
@@ -864,7 +864,7 @@ function template_preprocess_views_view_rss(&$variables) {
 
   /** @var \Drupal\Core\Url $url */
   if ($url) {
-    $url_options = array('absolute' => TRUE);
+    $url_options = ['absolute' => TRUE];
     if (!empty($view->exposed_raw_input)) {
       $url_options['query'] = $view->exposed_raw_input;
     }
@@ -913,7 +913,7 @@ function template_preprocess_views_view_row_rss(&$variables) {
     $variables['description'] = (string) \Drupal::service('renderer')->render($item->description);
   }
 
-  $variables['item_elements'] = array();
+  $variables['item_elements'] = [];
   foreach ($item->elements as $element) {
     if (isset($element['attributes']) && is_array($element['attributes'])) {
       $element['attributes'] = new Attribute($element['attributes']);
@@ -1022,9 +1022,9 @@ function template_preprocess_views_mini_pager(&$variables) {
   $variables['items']['current'] = $pager_page_array[$element] + 1;
 
   if ($pager_total[$element] > 1 && $pager_page_array[$element] > 0) {
-    $options = array(
+    $options = [
       'query' => pager_query_add_page($parameters, $element, $pager_page_array[$element] - 1),
-    );
+    ];
     $variables['items']['previous']['href'] = \Drupal::url('<current>', [], $options);
     if (isset($tags[1])) {
       $variables['items']['previous']['text'] = $tags[1];
@@ -1033,9 +1033,9 @@ function template_preprocess_views_mini_pager(&$variables) {
   }
 
   if ($pager_page_array[$element] < ($pager_total[$element] - 1)) {
-    $options = array(
+    $options = [
       'query' => pager_query_add_page($parameters, $element, $pager_page_array[$element] + 1),
-    );
+    ];
     $variables['items']['next']['href'] = \Drupal::url('<current>', [], $options);
     if (isset($tags[3])) {
       $variables['items']['next']['text'] = $tags[3];
diff --git a/core/modules/views/views.tokens.inc b/core/modules/views/views.tokens.inc
index defd34f..9bf5470 100644
--- a/core/modules/views/views.tokens.inc
+++ b/core/modules/views/views.tokens.inc
@@ -11,56 +11,56 @@
  * Implements hook_token_info().
  */
 function views_token_info() {
-  $info['types']['view'] = array(
+  $info['types']['view'] = [
     'name' => t('View', [], ['context' => 'View entity type']),
     'description' => t('Tokens related to views.'),
     'needs-data' => 'view',
-  );
-  $info['tokens']['view']['label'] = array(
+  ];
+  $info['tokens']['view']['label'] = [
     'name' => t('Label'),
     'description' => t('The label of the view.'),
-  );
-  $info['tokens']['view']['description'] = array(
+  ];
+  $info['tokens']['view']['description'] = [
     'name' => t('Description'),
     'description' => t('The description of the view.'),
-  );
-  $info['tokens']['view']['id'] = array(
+  ];
+  $info['tokens']['view']['id'] = [
     'name' => t('ID'),
     'description' => t('The machine-readable ID of the view.'),
-  );
-  $info['tokens']['view']['title'] = array(
+  ];
+  $info['tokens']['view']['title'] = [
     'name' => t('Title'),
     'description' => t('The title of current display of the view.'),
-  );
-  $info['tokens']['view']['url'] = array(
+  ];
+  $info['tokens']['view']['url'] = [
     'name' => t('URL'),
     'description' => t('The URL of the view.'),
     'type' => 'url',
-  );
-  $info['tokens']['view']['base-table'] = array(
+  ];
+  $info['tokens']['view']['base-table'] = [
     'name' => t('Base table'),
     'description' => t('The base table used for this view.'),
-  );
-  $info['tokens']['view']['base-field'] = array(
+  ];
+  $info['tokens']['view']['base-field'] = [
     'name' => t('Base field'),
     'description' => t('The base field used for this view.'),
-  );
-  $info['tokens']['view']['total-rows'] = array(
+  ];
+  $info['tokens']['view']['total-rows'] = [
     'name' => t('Total rows'),
     'description' => t('The total amount of results returned from the view. The current display will be used.'),
-  );
-  $info['tokens']['view']['items-per-page'] = array(
+  ];
+  $info['tokens']['view']['items-per-page'] = [
     'name' => t('Items per page'),
     'description' => t('The number of items per page.'),
-  );
-  $info['tokens']['view']['current-page'] = array(
+  ];
+  $info['tokens']['view']['current-page'] = [
     'name' => t('Current page'),
     'description' => t('The current page of results the view is on.'),
-  );
-  $info['tokens']['view']['page-count'] = array(
+  ];
+  $info['tokens']['view']['page-count'] = [
     'name' => t('Page count'),
     'description' => t('The total page count.'),
-  );
+  ];
 
   return $info;
 }
@@ -69,11 +69,11 @@ function views_token_info() {
  * Implements hook_tokens().
  */
 function views_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
-  $url_options = array('absolute' => TRUE);
+  $url_options = ['absolute' => TRUE];
   if (isset($options['language'])) {
     $url_options['language'] = $options['language'];
   }
-  $replacements = array();
+  $replacements = [];
 
   if ($type == 'view' && !empty($data['view'])) {
     /** @var \Drupal\views\ViewExecutable $view */
diff --git a/core/modules/views/views.views.inc b/core/modules/views/views.views.inc
index 93a659c..0bd5f27 100644
--- a/core/modules/views/views.views.inc
+++ b/core/modules/views/views.views.inc
@@ -18,129 +18,129 @@
  */
 function views_views_data() {
   $data['views']['table']['group'] = t('Global');
-  $data['views']['table']['join'] = array(
+  $data['views']['table']['join'] = [
   // #global is a special flag which allows a table to appear all the time.
-  '#global' => array(),
-  );
+  '#global' => [],
+  ];
 
-  $data['views']['random'] = array(
+  $data['views']['random'] = [
   'title' => t('Random'),
   'help' => t('Randomize the display order.'),
-  'sort' => array(
+  'sort' => [
     'id' => 'random',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['null'] = array(
+  $data['views']['null'] = [
     'title' => t('Null'),
     'help' => t('Allow a contextual filter value to be ignored. The query will not be altered by this contextual filter value. Can be used when contextual filter values come from the URL, and a part of the URL needs to be ignored.'),
-    'argument' => array(
+    'argument' => [
       'id' => 'null',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['nothing'] = array(
+  $data['views']['nothing'] = [
     'title' => t('Custom text'),
     'help' => t('Provide custom text or link.'),
-    'field' => array(
+    'field' => [
       'id' => 'custom',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['counter'] = array(
+  $data['views']['counter'] = [
     'title' => t('View result counter'),
     'help' => t('Displays the actual position of the view result'),
-    'field' => array(
+    'field' => [
       'id' => 'counter',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['area'] = array(
+  $data['views']['area'] = [
     'title' => t('Text area'),
     'help' => t('Provide markup text for the area.'),
-    'area' => array(
+    'area' => [
       'id' => 'text',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['area_text_custom'] = array(
+  $data['views']['area_text_custom'] = [
     'title' => t('Unfiltered text'),
     'help' => t('Add unrestricted, custom text or markup. This is similar to the custom text field.'),
-    'area' => array(
+    'area' => [
       'id' => 'text_custom',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['title'] = array(
+  $data['views']['title'] = [
     'title' => t('Title override'),
     'help' => t('Override the default view title for this view. This is useful to display an alternative title when a view is empty.'),
-    'area' => array(
+    'area' => [
       'id' => 'title',
       'sub_type' => 'empty',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['view'] = array(
+  $data['views']['view'] = [
     'title' => t('View area'),
     'help' => t('Insert a view inside an area.'),
-    'area' => array(
+    'area' => [
       'id' => 'view',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['result'] = array(
+  $data['views']['result'] = [
     'title' => t('Result summary'),
     'help' => t('Shows result summary, for example the items per page.'),
-    'area' => array(
+    'area' => [
       'id' => 'result',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['messages'] = array(
+  $data['views']['messages'] = [
     'title' => t('Messages'),
     'help' => t('Displays messages in an area.'),
-    'area' => array(
+    'area' => [
       'id' => 'messages',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['http_status_code'] = array(
+  $data['views']['http_status_code'] = [
     'title' => t('Response status code'),
     'help' => t('Alter the HTTP response status code used by this view, mostly helpful for empty results.'),
-    'area' => array(
+    'area' => [
       'id' => 'http_status_code',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['combine'] = array(
+  $data['views']['combine'] = [
    'title' => t('Combine fields filter'),
     'help' => t('Combine multiple fields together and search by them.'),
-    'filter' => array(
+    'filter' => [
       'id' => 'combine',
-    ),
-  );
+    ],
+  ];
 
-  $data['views']['dropbutton'] = array(
+  $data['views']['dropbutton'] = [
     'title' => t('Dropbutton'),
     'help' => t('Display fields in a dropbutton.'),
-    'field' => array(
+    'field' => [
       'id' => 'dropbutton',
-    ),
-  );
+    ],
+  ];
 
   // Registers an entity area handler per entity type.
   foreach (\Drupal::entityManager()->getDefinitions() as $entity_type_id => $entity_type) {
     // Excludes entity types, which cannot be rendered.
     if ($entity_type->hasViewBuilderClass()) {
       $label = $entity_type->getLabel();
-      $data['views']['entity_' . $entity_type_id] = array(
-        'title' => t('Rendered entity - @label', array('@label' => $label)),
-        'help' => t('Displays a rendered @label entity in an area.', array('@label' => $label)),
-        'area' => array(
+      $data['views']['entity_' . $entity_type_id] = [
+        'title' => t('Rendered entity - @label', ['@label' => $label]),
+        'help' => t('Displays a rendered @label entity in an area.', ['@label' => $label]),
+        'area' => [
           'entity_type' => $entity_type_id,
           'id' => 'entity',
-        ),
-      );
+        ],
+      ];
     }
   }
 
@@ -152,13 +152,13 @@ function views_views_data() {
     if (empty($actions)) {
       continue;
     }
-    $data[$entity_info->getBaseTable()][$entity_type . '_bulk_form'] = array(
+    $data[$entity_info->getBaseTable()][$entity_type . '_bulk_form'] = [
       'title' => t('Bulk update'),
       'help' => t('Allows users to apply an action to one or more items.'),
-      'field' => array(
+      'field' => [
         'id' => 'bulk_form',
-      ),
-    );
+      ],
+    ];
   }
 
   // Registers views data for the entity itself.
@@ -180,7 +180,7 @@ function views_views_data() {
     /** @var \Drupal\field\FieldStorageConfigInterface $field_storage */
     foreach ($entity_manager->getStorage('field_storage_config')->loadMultiple() as $field_storage) {
       if (_views_field_get_entity_type_storage($field_storage)) {
-        $result = (array) $module_handler->invoke($field_storage->getTypeProvider(), 'field_views_data', array($field_storage));
+        $result = (array) $module_handler->invoke($field_storage->getTypeProvider(), 'field_views_data', [$field_storage]);
         if (empty($result)) {
           $result = views_field_default_views_data($field_storage);
         }
@@ -245,8 +245,8 @@ function _views_field_get_entity_type_storage(FieldStorageConfigInterface $field
  * Therefore it looks up in all bundles to find the most used field.
  */
 function views_entity_field_label($entity_type, $field_name) {
-  $label_counter = array();
-  $all_labels = array();
+  $label_counter = [];
+  $all_labels = [];
   // Count the amount of fields per label per field storage.
   foreach (array_keys(\Drupal::entityManager()->getBundleInfo($entity_type)) as $bundle) {
     $bundle_fields = array_filter(\Drupal::entityManager()->getFieldDefinitions($entity_type, $bundle), function ($field_definition) {
@@ -260,7 +260,7 @@ function views_entity_field_label($entity_type, $field_name) {
     }
   }
   if (empty($label_counter)) {
-    return array($field_name, $all_labels);
+    return [$field_name, $all_labels];
   }
   // Sort the field labels by it most used label and return the most used one.
   // If the counts are equal, sort by the label to ensure the result is
@@ -272,7 +272,7 @@ function views_entity_field_label($entity_type, $field_name) {
     return $label_counter[$a] > $label_counter[$b] ? -1 : 1;
   });
   $label_counter = array_keys($label_counter);
-  return array($label_counter[0], $all_labels);
+  return [$label_counter[0], $all_labels];
 }
 
 /**
@@ -285,7 +285,7 @@ function views_entity_field_label($entity_type, $field_name) {
  *   The default views data for the field.
  */
 function views_field_default_views_data(FieldStorageConfigInterface $field_storage) {
-  $data = array();
+  $data = [];
 
   // Check the field type is available.
   if (!\Drupal::service('plugin.manager.field.field_type')->hasDefinition($field_storage->getType())) {
@@ -319,7 +319,7 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
     // We cannot do anything if for some reason there is no base table.
     return $data;
   }
-  $entity_tables = array($base_table => $entity_type_id);
+  $entity_tables = [$base_table => $entity_type_id];
   // Some entities may not have a data table.
   $data_table = $entity_type->getDataTable();
   if ($data_table) {
@@ -339,69 +339,69 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
   // @todo Generalize this code to make it work with any table layout. See
   //   https://www.drupal.org/node/2079019.
   $table_mapping = $storage->getTableMapping();
-  $field_tables = array(
-    EntityStorageInterface::FIELD_LOAD_CURRENT => array(
+  $field_tables = [
+    EntityStorageInterface::FIELD_LOAD_CURRENT => [
       'table' => $table_mapping->getDedicatedDataTableName($field_storage),
       'alias' => "{$entity_type_id}__{$field_name}",
-    ),
-  );
+    ],
+  ];
   if ($supports_revisions) {
-    $field_tables[EntityStorageInterface::FIELD_LOAD_REVISION] = array(
+    $field_tables[EntityStorageInterface::FIELD_LOAD_REVISION] = [
       'table' => $table_mapping->getDedicatedRevisionTableName($field_storage),
       'alias' => "{$entity_type_id}_revision__{$field_name}",
-    );
+    ];
   }
 
   // Build the relationships between the field table and the entity tables.
   $table_alias = $field_tables[EntityStorageInterface::FIELD_LOAD_CURRENT]['alias'];
   if ($data_table) {
     // Tell Views how to join to the base table, via the data table.
-    $data[$table_alias]['table']['join'][$data_table] = array(
+    $data[$table_alias]['table']['join'][$data_table] = [
       'table' => $table_mapping->getDedicatedDataTableName($field_storage),
       'left_field' => $entity_type->getKey('id'),
       'field' => 'entity_id',
-      'extra' => array(
-        array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-        array('left_field' => 'langcode', 'field' => 'langcode'),
-      ),
-    );
+      'extra' => [
+        ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+        ['left_field' => 'langcode', 'field' => 'langcode'],
+      ],
+    ];
   }
   else {
     // If there is no data table, just join directly.
-    $data[$table_alias]['table']['join'][$base_table] = array(
+    $data[$table_alias]['table']['join'][$base_table] = [
       'table' => $table_mapping->getDedicatedDataTableName($field_storage),
       'left_field' => $entity_type->getKey('id'),
       'field' => 'entity_id',
-      'extra' => array(
-        array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-      ),
-    );
+      'extra' => [
+        ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+      ],
+    ];
   }
 
   if ($supports_revisions) {
     $table_alias = $field_tables[EntityStorageInterface::FIELD_LOAD_REVISION]['alias'];
     if ($entity_revision_data_table) {
       // Tell Views how to join to the revision table, via the data table.
-      $data[$table_alias]['table']['join'][$entity_revision_data_table] = array(
+      $data[$table_alias]['table']['join'][$entity_revision_data_table] = [
         'table' => $table_mapping->getDedicatedRevisionTableName($field_storage),
         'left_field' => $entity_type->getKey('revision'),
         'field' => 'revision_id',
-        'extra' => array(
-          array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-          array('left_field' => 'langcode', 'field' => 'langcode'),
-        ),
-      );
+        'extra' => [
+          ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+          ['left_field' => 'langcode', 'field' => 'langcode'],
+        ],
+      ];
     }
     else {
       // If there is no data table, just join directly.
-      $data[$table_alias]['table']['join'][$entity_revision_table] = array(
+      $data[$table_alias]['table']['join'][$entity_revision_table] = [
         'table' => $table_mapping->getDedicatedRevisionTableName($field_storage),
         'left_field' => $entity_type->getKey('revision'),
         'field' => 'revision_id',
-        'extra' => array(
-          array('field' => 'deleted', 'value' => 0, 'numeric' => TRUE),
-        ),
-      );
+        'extra' => [
+          ['field' => 'deleted', 'value' => 0, 'numeric' => TRUE],
+        ],
+      ];
     }
   }
 
@@ -409,7 +409,7 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
   // Get the list of bundles the field appears in.
   $bundles_names = $field_storage->getBundles();
   // Build the list of additional fields to add to queries.
-  $add_fields = array('delta', 'langcode', 'bundle');
+  $add_fields = ['delta', 'langcode', 'bundle'];
   foreach (array_keys($field_columns) as $column) {
     $add_fields[] = $table_mapping->getFieldColumnName($field_storage, $column);
   }
@@ -428,41 +428,41 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
       $field_alias = $field_name;
     }
     else {
-      $group = t('@group (historical data)', array('@group' => $group_name));
+      $group = t('@group (historical data)', ['@group' => $group_name]);
       $field_alias = $field_name . '-revision_id';
     }
 
-    $data[$table_alias][$field_alias] = array(
+    $data[$table_alias][$field_alias] = [
       'group' => $group,
       'title' => $label,
       'title short' => $label,
-      'help' => t('Appears in: @bundles.', array('@bundles' => implode(', ', $bundles_names))),
-    );
+      'help' => t('Appears in: @bundles.', ['@bundles' => implode(', ', $bundles_names)]),
+    ];
 
     // Go through and create a list of aliases for all possible combinations of
     // entity type + name.
-    $aliases = array();
-    $also_known = array();
+    $aliases = [];
+    $also_known = [];
     foreach ($all_labels as $label_name => $true) {
       if ($type == EntityStorageInterface::FIELD_LOAD_CURRENT) {
         if ($label != $label_name) {
-          $aliases[] = array(
+          $aliases[] = [
             'base' => $base_table,
             'group' => $group_name,
             'title' => $label_name,
-            'help' => t('This is an alias of @group: @field.', array('@group' => $group_name, '@field' => $label)),
-          );
-          $also_known[] = t('@group: @field', array('@group' => $group_name, '@field' => $label_name));
+            'help' => t('This is an alias of @group: @field.', ['@group' => $group_name, '@field' => $label]),
+          ];
+          $also_known[] = t('@group: @field', ['@group' => $group_name, '@field' => $label_name]);
         }
       }
       elseif ($supports_revisions && $label != $label_name) {
-        $aliases[] = array(
+        $aliases[] = [
           'base' => $table,
-          'group' => t('@group (historical data)', array('@group' => $group_name)),
+          'group' => t('@group (historical data)', ['@group' => $group_name]),
           'title' => $label_name,
-          'help' => t('This is an alias of @group: @field.', array('@group' => $group_name, '@field' => $label)),
-        );
-        $also_known[] = t('@group (historical data): @field', array('@group' => $group_name, '@field' => $label_name));
+          'help' => t('This is an alias of @group: @field.', ['@group' => $group_name, '@field' => $label]),
+        ];
+        $also_known[] = t('@group (historical data): @field', ['@group' => $group_name, '@field' => $label_name]);
       }
     }
     if ($aliases) {
@@ -481,7 +481,7 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
 
     $keys = array_keys($field_columns);
     $real_field = reset($keys);
-    $data[$table_alias][$field_alias]['field'] = array(
+    $data[$table_alias][$field_alias]['field'] = [
       'table' => $table,
       'id' => 'field',
       'field_name' => $field_name,
@@ -492,7 +492,7 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
       // Default the element type to div, let the UI change it if necessary.
       'element type' => 'div',
       'is revision' => $type == EntityStorageInterface::FIELD_LOAD_REVISION,
-    );
+    ];
   }
 
   // Expose data for each field property individually.
@@ -527,12 +527,12 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
     }
 
     if (count($field_columns) == 1 || $column == 'value') {
-      $title = t('@label (@name)', array('@label' => $label, '@name' => $field_name));
+      $title = t('@label (@name)', ['@label' => $label, '@name' => $field_name]);
       $title_short = $label;
     }
     else {
-      $title = t('@label (@name:@column)', array('@label' => $label, '@name' => $field_name, '@column' => $column));
-      $title_short = t('@label:@column', array('@label' => $label, '@column' => $column));
+      $title = t('@label (@name:@column)', ['@label' => $label, '@name' => $field_name, '@column' => $column]);
+      $title_short = t('@label:@column', ['@label' => $label, '@column' => $column]);
     }
 
     // Expose data for the property.
@@ -544,38 +544,38 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
         $group = $group_name;
       }
       else {
-        $group = t('@group (historical data)', array('@group' => $group_name));
+        $group = t('@group (historical data)', ['@group' => $group_name]);
       }
       $column_real_name = $table_mapping->getFieldColumnName($field_storage, $column);
 
       // Load all the fields from the table by default.
       $additional_fields = $table_mapping->getAllColumns($table);
 
-      $data[$table_alias][$column_real_name] = array(
+      $data[$table_alias][$column_real_name] = [
         'group' => $group,
         'title' => $title,
         'title short' => $title_short,
-        'help' => t('Appears in: @bundles.', array('@bundles' => implode(', ', $bundles_names))),
-      );
+        'help' => t('Appears in: @bundles.', ['@bundles' => implode(', ', $bundles_names)]),
+      ];
 
       // Go through and create a list of aliases for all possible combinations of
       // entity type + name.
-      $aliases = array();
-      $also_known = array();
+      $aliases = [];
+      $also_known = [];
       foreach ($all_labels as $label_name => $true) {
         if ($label != $label_name) {
           if (count($field_columns) == 1 || $column == 'value') {
-            $alias_title = t('@label (@name)', array('@label' => $label_name, '@name' => $field_name));
+            $alias_title = t('@label (@name)', ['@label' => $label_name, '@name' => $field_name]);
           }
           else {
-            $alias_title = t('@label (@name:@column)', array('@label' => $label_name, '@name' => $field_name, '@column' => $column));
+            $alias_title = t('@label (@name:@column)', ['@label' => $label_name, '@name' => $field_name, '@column' => $column]);
           }
-          $aliases[] = array(
+          $aliases[] = [
             'group' => $group_name,
             'title' => $alias_title,
-            'help' => t('This is an alias of @group: @field.', array('@group' => $group_name, '@field' => $title)),
-          );
-          $also_known[] = t('@group: @field', array('@group' => $group_name, '@field' => $title));
+            'help' => t('This is an alias of @group: @field.', ['@group' => $group_name, '@field' => $title]),
+          ];
+          $also_known[] = t('@group: @field', ['@group' => $group_name, '@field' => $title]);
         }
       }
       if ($aliases) {
@@ -592,7 +592,7 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
         $data[$table_alias][$column_real_name]['help'] = Markup::create($data[$table_alias][$column_real_name]['help'] . ' ' . t('Also known as:') . ' ' . implode(', ', $also_known));
       }
 
-      $data[$table_alias][$column_real_name]['argument'] = array(
+      $data[$table_alias][$column_real_name]['argument'] = [
         'field' => $column_real_name,
         'table' => $table,
         'id' => $argument,
@@ -600,8 +600,8 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
         'field_name' => $field_name,
         'entity_type' => $entity_type_id,
         'empty field name' => t('- No value -'),
-      );
-      $data[$table_alias][$column_real_name]['filter'] = array(
+      ];
+      $data[$table_alias][$column_real_name]['filter'] = [
         'field' => $column_real_name,
         'table' => $table,
         'id' => $filter,
@@ -609,16 +609,16 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
         'field_name' => $field_name,
         'entity_type' => $entity_type_id,
         'allow empty' => TRUE,
-      );
+      ];
       if (!empty($allow_sort)) {
-        $data[$table_alias][$column_real_name]['sort'] = array(
+        $data[$table_alias][$column_real_name]['sort'] = [
           'field' => $column_real_name,
           'table' => $table,
           'id' => $sort,
           'additional fields' => $additional_fields,
           'field_name' => $field_name,
           'entity_type' => $entity_type_id,
-        );
+        ];
       }
 
       // Set click sortable if there is a field definition.
@@ -628,19 +628,19 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
 
       // Expose additional delta column for multiple value fields.
       if ($field_storage->isMultiple()) {
-        $title_delta = t('@label (@name:delta)', array('@label' => $label, '@name' => $field_name));
-        $title_short_delta = t('@label:delta', array('@label' => $label));
+        $title_delta = t('@label (@name:delta)', ['@label' => $label, '@name' => $field_name]);
+        $title_short_delta = t('@label:delta', ['@label' => $label]);
 
-        $data[$table_alias]['delta'] = array(
+        $data[$table_alias]['delta'] = [
           'group' => $group,
           'title' => $title_delta,
           'title short' => $title_short_delta,
-          'help' => t('Delta - Appears in: @bundles.', array('@bundles' => implode(', ', $bundles_names))),
-        );
-        $data[$table_alias]['delta']['field'] = array(
+          'help' => t('Delta - Appears in: @bundles.', ['@bundles' => implode(', ', $bundles_names)]),
+        ];
+        $data[$table_alias]['delta']['field'] = [
           'id' => 'numeric',
-        );
-        $data[$table_alias]['delta']['argument'] = array(
+        ];
+        $data[$table_alias]['delta']['argument'] = [
           'field' => 'delta',
           'table' => $table,
           'id' => 'numeric',
@@ -648,8 +648,8 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
           'empty field name' => t('- No value -'),
           'field_name' => $field_name,
           'entity_type' => $entity_type_id,
-        );
-        $data[$table_alias]['delta']['filter'] = array(
+        ];
+        $data[$table_alias]['delta']['filter'] = [
           'field' => 'delta',
           'table' => $table,
           'id' => 'numeric',
@@ -657,15 +657,15 @@ function views_field_default_views_data(FieldStorageConfigInterface $field_stora
           'field_name' => $field_name,
           'entity_type' => $entity_type_id,
           'allow empty' => TRUE,
-        );
-        $data[$table_alias]['delta']['sort'] = array(
+        ];
+        $data[$table_alias]['delta']['sort'] = [
           'field' => 'delta',
           'table' => $table,
           'id' => 'standard',
           'additional fields' => $additional_fields,
           'field_name' => $field_name,
           'entity_type' => $entity_type_id,
-        );
+        ];
       }
     }
   }
@@ -704,30 +704,30 @@ function core_field_views_data(FieldStorageConfigInterface $field_storage) {
 
     // Provide a relationship for the entity type with the entity reference
     // field.
-    $args = array(
+    $args = [
       '@label' => $target_entity_type->getLabel(),
       '@field_name' => $field_name,
-    );
-    $data[$table_name][$field_name]['relationship'] = array(
+    ];
+    $data[$table_name][$field_name]['relationship'] = [
       'title' => t('@label referenced from @field_name', $args),
       'label' => t('@field_name: @label', $args),
       'group' => $entity_type->getLabel(),
-      'help' => t('Appears in: @bundles.', array('@bundles' => implode(', ', $field_storage->getBundles()))),
+      'help' => t('Appears in: @bundles.', ['@bundles' => implode(', ', $field_storage->getBundles())]),
       'id' => 'standard',
       'base' => $target_base_table,
       'entity type' => $target_entity_type_id,
       'base field' => $target_entity_type->getKey('id'),
       'relationship field' => $field_name . '_target_id',
-    );
+    ];
 
     // Provide a reverse relationship for the entity type that is referenced by
     // the field.
     $args['@entity'] = $entity_type->getLabel();
     $args['@label'] = $target_entity_type->getLowercaseLabel();
     $pseudo_field_name = 'reverse__' . $entity_type_id . '__' . $field_name;
-    $data[$target_base_table][$pseudo_field_name]['relationship'] = array(
+    $data[$target_base_table][$pseudo_field_name]['relationship'] = [
       'title' => t('@entity using @field_name', $args),
-      'label' => t('@field_name', array('@field_name' => $field_name)),
+      'label' => t('@field_name', ['@field_name' => $field_name]),
       'group' => $target_entity_type->getLabel(),
       'help' => t('Relate each @entity with a @field_name set to the @label.', $args),
       'id' => 'entity_reverse',
@@ -737,14 +737,14 @@ function core_field_views_data(FieldStorageConfigInterface $field_storage) {
       'field_name' => $field_name,
       'field table' => $table_mapping->getDedicatedDataTableName($field_storage),
       'field field' => $field_name . '_target_id',
-      'join_extra' => array(
-        array(
+      'join_extra' => [
+        [
           'field' => 'deleted',
           'value' => 0,
           'numeric' => TRUE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   return $data;
diff --git a/core/modules/views/views.views_execution.inc b/core/modules/views/views.views_execution.inc
index 91dead5..8b324a3 100644
--- a/core/modules/views/views.views_execution.inc
+++ b/core/modules/views/views.views_execution.inc
@@ -18,10 +18,10 @@
  *   \Drupal\views\Plugin\views\PluginBase::listLanguages().
  */
 function views_views_query_substitutions(ViewExecutable $view) {
-  $substitutions = array(
+  $substitutions = [
     '***CURRENT_VERSION***' => \Drupal::VERSION,
     '***CURRENT_TIME***' => REQUEST_TIME,
-  ) + PluginBase::queryLanguageSubstitutions();
+  ] + PluginBase::queryLanguageSubstitutions();
 
   return $substitutions;
 }
diff --git a/core/modules/views_ui/admin.inc b/core/modules/views_ui/admin.inc
index fd031d2..a2d9fed 100644
--- a/core/modules/views_ui/admin.inc
+++ b/core/modules/views_ui/admin.inc
@@ -41,8 +41,8 @@
  *   array('dynamic_content', 'section') for this parameter.
  */
 function views_ui_add_ajax_trigger(&$wrapping_element, $trigger_key, $refresh_parents) {
-  $seen_ids = &drupal_static(__FUNCTION__ . ':seen_ids', array());
-  $seen_buttons = &drupal_static(__FUNCTION__ . ':seen_buttons', array());
+  $seen_ids = &drupal_static(__FUNCTION__ . ':seen_ids', []);
+  $seen_buttons = &drupal_static(__FUNCTION__ . ':seen_buttons', []);
 
   // Add the AJAX behavior to the triggering element.
   $triggering_element = &$wrapping_element[$trigger_key];
@@ -60,28 +60,28 @@ function views_ui_add_ajax_trigger(&$wrapping_element, $trigger_key, $refresh_pa
   // should be displayed next to the triggering element on the form.
   $button_key = $trigger_key . '_trigger_update';
   $element_info = \Drupal::service('element_info');
-  $wrapping_element[$button_key] = array(
+  $wrapping_element[$button_key] = [
     '#type' => 'submit',
     // Hide this button when JavaScript is enabled.
-    '#attributes' => array('class' => array('js-hide')),
-    '#submit' => array('views_ui_nojs_submit'),
+    '#attributes' => ['class' => ['js-hide']],
+    '#submit' => ['views_ui_nojs_submit'],
     // Add a process function to limit this button's validation errors to the
     // triggering element only. We have to do this in #process since until the
     // form API has added the #parents property to the triggering element for
     // us, we don't have any (easy) way to find out where its submitted values
     // will eventually appear in $form_state->getValues().
-    '#process' => array_merge(array('views_ui_add_limited_validation'), $element_info->getInfoProperty('submit', '#process', array())),
+    '#process' => array_merge(['views_ui_add_limited_validation'], $element_info->getInfoProperty('submit', '#process', [])),
     // Add an after-build function that inserts a wrapper around the region of
     // the form that needs to be refreshed by AJAX (so that the AJAX system can
     // detect and dynamically update it). This is done in #after_build because
     // it's a convenient place where we have automatic access to the complete
     // form array, but also to minimize the chance that the HTML we add will
     // get clobbered by code that runs after we have added it.
-    '#after_build' => array_merge($element_info->getInfoProperty('submit', '#after_build', array()), array('views_ui_add_ajax_wrapper')),
-  );
+    '#after_build' => array_merge($element_info->getInfoProperty('submit', '#after_build', []), ['views_ui_add_ajax_wrapper']),
+  ];
   // Copy #weight and #access from the triggering element to the button, so
   // that the two elements will be displayed together.
-  foreach (array('#weight', '#access') as $property) {
+  foreach (['#weight', '#access'] as $property) {
     if (isset($triggering_element[$property])) {
       $wrapping_element[$button_key][$property] = $triggering_element[$property];
     }
@@ -92,25 +92,25 @@ function views_ui_add_ajax_trigger(&$wrapping_element, $trigger_key, $refresh_pa
   // key and it may be a TranslatableMarkup.
   $button_title = !empty($triggering_element['#title']) ? (string) $triggering_element['#title'] : $trigger_key;
   if (empty($seen_buttons[$button_title])) {
-    $wrapping_element[$button_key]['#value'] = t('Update "@title" choice', array(
+    $wrapping_element[$button_key]['#value'] = t('Update "@title" choice', [
       '@title' => $button_title,
-    ));
+    ]);
     $seen_buttons[$button_title] = 1;
   }
   else {
-    $wrapping_element[$button_key]['#value'] = t('Update "@title" choice (@number)', array(
+    $wrapping_element[$button_key]['#value'] = t('Update "@title" choice (@number)', [
       '@title' => $button_title,
       '@number' => ++$seen_buttons[$button_title],
-    ));
+    ]);
   }
 
   // Attach custom data to the triggering element and submit button, so we can
   // use it in both the process function and AJAX callback.
-  $ajax_data = array(
+  $ajax_data = [
     'wrapper' => $triggering_element['#ajax']['wrapper'],
     'trigger_key' => $trigger_key,
     'refresh_parents' => $refresh_parents,
-  );
+  ];
   $seen_ids[$triggering_element['#ajax']['wrapper']] = TRUE;
   $triggering_element['#views_ui_ajax_data'] = $ajax_data;
   $wrapping_element[$button_key]['#views_ui_ajax_data'] = $ajax_data;
@@ -132,7 +132,7 @@ function views_ui_add_limited_validation($element, FormStateInterface $form_stat
   // Limit this button's validation to the AJAX triggering element, so it can
   // update the form for that change without requiring that the rest of the
   // form be filled out properly yet.
-  $element['#limit_validation_errors'] = array($ajax_triggering_element['#parents']);
+  $element['#limit_validation_errors'] = [$ajax_triggering_element['#parents']];
 
   // If we are in the process of a form submission and this is the button that
   // was clicked, the form API workflow in \Drupal::formBuilder()->doBuildForm()
@@ -165,10 +165,10 @@ function views_ui_add_ajax_wrapper($element, FormStateInterface $form_state) {
   // The HTML ID that AJAX expects was also stored in a property on the
   // element, so use that information to insert the wrapper <div> here.
   $id = $element['#views_ui_ajax_data']['wrapper'];
-  $refresh_element += array(
+  $refresh_element += [
     '#prefix' => '',
     '#suffix' => '',
-  );
+  ];
   $refresh_element['#prefix'] = '<div id="' . $id . '" class="views-ui-ajax-wrapper">' . $refresh_element['#prefix'];
   $refresh_element['#suffix'] .= '</div>';
 
@@ -213,16 +213,16 @@ function views_ui_standard_display_dropdown(&$form, FormStateInterface $form_sta
 
   // @todo Move this to a separate function if it's needed on any forms that
   // don't have the display dropdown.
-  $form['override'] = array(
+  $form['override'] = [
     '#prefix' => '<div class="views-override clearfix form--inline views-offset-top" data-drupal-views-offset="top">',
     '#suffix' => '</div>',
     '#weight' => -1000,
     '#tree' => TRUE,
-  );
+  ];
 
   // Add the "2 of 3" progress indicator.
   if ($form_progress = $view->getFormProgress()) {
-    $form['progress']['#markup'] = '<div id="views-progress-indicator" class="views-progress-indicator">' . t('@current of @total', array('@current' => $form_progress['current'], '@total' => $form_progress['total'])) . '</div>';
+    $form['progress']['#markup'] = '<div id="views-progress-indicator" class="views-progress-indicator">' . t('@current of @total', ['@current' => $form_progress['current'], '@total' => $form_progress['total']]) . '</div>';
     $form['progress']['#weight'] = -1001;
   }
 
@@ -247,17 +247,17 @@ function views_ui_standard_display_dropdown(&$form, FormStateInterface $form_sta
   }
 
   $display_dropdown['default'] = ($section_overrides ? t('All displays (except overridden)') : t('All displays'));
-  $display_dropdown[$display_id] = t('This @display_type (override)', array('@display_type' => $current_display->getPluginId()));
+  $display_dropdown[$display_id] = t('This @display_type (override)', ['@display_type' => $current_display->getPluginId()]);
   // Only display the revert option if we are in a overridden section.
   if (!$section_defaulted) {
     $display_dropdown['default_revert'] = t('Revert to default');
   }
 
-  $form['override']['dropdown'] = array(
+  $form['override']['dropdown'] = [
     '#type' => 'select',
     '#title' => t('For'), // @TODO: Translators may need more context than this.
     '#options' => $display_dropdown,
-  );
+  ];
   if ($current_display->isDefaulted($section)) {
     $form['override']['dropdown']['#default_value'] = 'defaults';
   }
diff --git a/core/modules/views_ui/src/Ajax/SetFormCommand.php b/core/modules/views_ui/src/Ajax/SetFormCommand.php
index ffafde6..3910eb2 100644
--- a/core/modules/views_ui/src/Ajax/SetFormCommand.php
+++ b/core/modules/views_ui/src/Ajax/SetFormCommand.php
@@ -32,10 +32,10 @@ public function __construct($url) {
    * {@inheritdoc}
    */
   public function render() {
-    return array(
+    return [
       'command' => 'viewsSetForm',
       'url' => $this->url,
-    );
+    ];
   }
 
 }
diff --git a/core/modules/views_ui/src/Controller/ViewsUIController.php b/core/modules/views_ui/src/Controller/ViewsUIController.php
index f36e912..9794762 100644
--- a/core/modules/views_ui/src/Controller/ViewsUIController.php
+++ b/core/modules/views_ui/src/Controller/ViewsUIController.php
@@ -58,7 +58,7 @@ public function reportFields() {
 
     // Fetch all fieldapi fields which are used in views
     // Therefore search in all views, displays and handler-types.
-    $fields = array();
+    $fields = [];
     $handler_types = ViewExecutable::getHandlerTypes();
     foreach ($views as $view) {
       $executable = $view->getExecutable();
@@ -81,12 +81,12 @@ public function reportFields() {
       }
     }
 
-    $header = array(t('Field name'), t('Used in'));
-    $rows = array();
+    $header = [t('Field name'), t('Used in')];
+    $rows = [];
     foreach ($fields as $field_name => $views) {
       $rows[$field_name]['data'][0]['data']['#plain_text'] = $field_name;
       foreach ($views as $view) {
-        $rows[$field_name]['data'][1][] = $this->l($view, new Url('entity.view.edit_form', array('view' => $view)));
+        $rows[$field_name]['data'][1][] = $this->l($view, new Url('entity.view.edit_form', ['view' => $view]));
       }
       $item_list = [
         '#theme' => 'item_list',
@@ -98,12 +98,12 @@ public function reportFields() {
 
     // Sort rows by field name.
     ksort($rows);
-    $output = array(
+    $output = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $rows,
       '#empty' => t('No fields have been used in views yet.'),
-    );
+    ];
 
     return $output;
   }
@@ -120,7 +120,7 @@ public function reportPlugins() {
       $views = [];
       // Link each view name to the view itself.
       foreach ($row['views'] as $row_name => $view) {
-        $views[] = $this->l($view, new Url('entity.view.edit_form', array('view' => $view)));
+        $views[] = $this->l($view, new Url('entity.view.edit_form', ['view' => $view]));
       }
       unset($row['views']);
       $row['views']['data'] = [
@@ -132,12 +132,12 @@ public function reportPlugins() {
 
     // Sort rows by field name.
     ksort($rows);
-    return array(
+    return [
       '#type' => 'table',
-      '#header' => array(t('Type'), t('Name'), t('Provided by'), t('Used in')),
+      '#header' => [t('Type'), t('Name'), t('Provided by'), t('Used in')],
       '#rows' => $rows,
       '#empty' => t('There are no enabled views.'),
-    );
+    ];
   }
 
   /**
@@ -180,7 +180,7 @@ public function ajaxOperation(ViewEntityInterface $view, $op, Request $request)
    *   A JSON response containing the autocomplete suggestions for Views tags.
    */
   public function autocompleteTag(Request $request) {
-    $matches = array();
+    $matches = [];
     $string = $request->query->get('q');
     // Get matches from default views.
     $views = $this->entityManager()->getStorage('view')->loadMultiple();
@@ -223,8 +223,8 @@ public function edit(ViewUI $view, $display_id = NULL) {
     }
     $build['#title'] = $name;
 
-    $build['edit'] = $this->entityFormBuilder()->getForm($view, 'edit', array('display_id' => $display_id));
-    $build['preview'] = $this->entityFormBuilder()->getForm($view, 'preview', array('display_id' => $display_id));
+    $build['edit'] = $this->entityFormBuilder()->getForm($view, 'edit', ['display_id' => $display_id]);
+    $build['preview'] = $this->entityFormBuilder()->getForm($view, 'preview', ['display_id' => $display_id]);
     return $build;
   }
 
diff --git a/core/modules/views_ui/src/Form/AdvancedSettingsForm.php b/core/modules/views_ui/src/Form/AdvancedSettingsForm.php
index 88661a7..36f34c2 100644
--- a/core/modules/views_ui/src/Form/AdvancedSettingsForm.php
+++ b/core/modules/views_ui/src/Form/AdvancedSettingsForm.php
@@ -32,52 +32,52 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $form = parent::buildForm($form, $form_state);
 
     $config = $this->config('views.settings');
-    $form['cache'] = array(
+    $form['cache'] = [
       '#type' => 'details',
       '#title' => $this->t('Caching'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['cache']['skip_cache'] = array(
+    $form['cache']['skip_cache'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Disable views data caching'),
       '#description' => $this->t("Views caches data about tables, modules and views available, to increase performance. By checking this box, Views will skip this cache and always rebuild this data when needed. This can have a serious performance impact on your site."),
       '#default_value' => $config->get('skip_cache'),
-    );
+    ];
 
-    $form['cache']['clear_cache'] = array(
+    $form['cache']['clear_cache'] = [
       '#type' => 'submit',
       '#value' => $this->t("Clear Views' cache"),
-      '#submit' => array('::cacheSubmit'),
-    );
+      '#submit' => ['::cacheSubmit'],
+    ];
 
-    $form['debug'] = array(
+    $form['debug'] = [
       '#type' => 'details',
       '#title' => $this->t('Debugging'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['debug']['sql_signature'] = array(
+    $form['debug']['sql_signature'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Add Views signature to all SQL queries'),
       '#description' => $this->t("All Views-generated queries will include the name of the views and display 'view-name:display-name' as a string at the end of the SELECT clause. This makes identifying Views queries in database server logs simpler, but should only be used when troubleshooting."),
 
       '#default_value' => $config->get('sql_signature'),
-    );
+    ];
 
     $options = Views::fetchPluginNames('display_extender');
     if (!empty($options)) {
-      $form['extenders'] = array(
+      $form['extenders'] = [
         '#type' => 'details',
         '#open' => TRUE,
-      );
-      $form['extenders']['display_extenders'] = array(
+      ];
+      $form['extenders']['display_extenders'] = [
         '#title' => $this->t('Display extenders'),
         '#default_value' => array_filter($config->get('display_extenders')),
         '#options' => $options,
         '#type' => 'checkboxes',
         '#description' => $this->t('Select extensions of the views interface.')
-      );
+      ];
     }
 
     return $form;
@@ -90,7 +90,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $this->config('views.settings')
       ->set('skip_cache', $form_state->getValue('skip_cache'))
       ->set('sql_signature', $form_state->getValue('sql_signature'))
-      ->set('display_extenders', $form_state->getValue('display_extenders', array()))
+      ->set('display_extenders', $form_state->getValue('display_extenders', []))
       ->save();
 
     parent::submitForm($form, $form_state);
diff --git a/core/modules/views_ui/src/Form/Ajax/AddHandler.php b/core/modules/views_ui/src/Form/Ajax/AddHandler.php
index ada0ccd..0a04000 100644
--- a/core/modules/views_ui/src/Form/Ajax/AddHandler.php
+++ b/core/modules/views_ui/src/Form/Ajax/AddHandler.php
@@ -49,16 +49,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $display_id = $form_state->get('display_id');
     $type = $form_state->get('type');
 
-    $form = array(
-      'options' => array(
-        '#theme_wrappers' => array('container'),
-        '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-      ),
-    );
+    $form = [
+      'options' => [
+        '#theme_wrappers' => ['container'],
+        '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+      ],
+    ];
 
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
     $display = &$executable->displayHandlers->get($display_id);
@@ -71,7 +71,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       $type = $types[$type]['type'];
     }
 
-    $form['#title'] = $this->t('Add @type', array('@type' => $ltitle));
+    $form['#title'] = $this->t('Add @type', ['@type' => $ltitle]);
     $form['#section'] = $display_id . 'add-handler';
 
     // Add the display override dropdown.
@@ -82,36 +82,36 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $options = Views::viewsDataHelper()->fetchFields(array_keys($base_tables), $type, $display->useGroupBy(), $form_state->get('type'));
 
     if (!empty($options)) {
-      $form['override']['controls'] = array(
-        '#theme_wrappers' => array('container'),
+      $form['override']['controls'] = [
+        '#theme_wrappers' => ['container'],
         '#id' => 'views-filterable-options-controls',
         '#attributes' => ['class' => ['form--inline', 'views-filterable-options-controls']],
-      );
-      $form['override']['controls']['options_search'] = array(
+      ];
+      $form['override']['controls']['options_search'] = [
         '#type' => 'textfield',
         '#title' => $this->t('Search'),
-      );
+      ];
 
-      $groups = array('all' => $this->t('- All -'));
-      $form['override']['controls']['group'] = array(
+      $groups = ['all' => $this->t('- All -')];
+      $form['override']['controls']['group'] = [
         '#type' => 'select',
         '#title' => $this->t('Category'),
-        '#options' => array(),
-      );
+        '#options' => [],
+      ];
 
-      $form['options']['name'] = array(
+      $form['options']['name'] = [
         '#prefix' => '<div class="views-radio-box form-checkboxes views-filterable-options">',
         '#suffix' => '</div>',
         '#type' => 'tableselect',
-        '#header' => array(
+        '#header' => [
           'title' => $this->t('Title'),
           'group' => $this->t('Category'),
           'help' => $this->t('Description'),
-        ),
+        ],
         '#js_select' => FALSE,
-      );
+      ];
 
-      $grouped_options = array();
+      $grouped_options = [];
       foreach ($options as $key => $option) {
         $group = preg_replace('/[^a-z0-9]/', '-', strtolower($option['group']));
         $groups[$group] = $option['group'];
@@ -136,50 +136,50 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
       foreach ($grouped_options as $group => $group_options) {
         foreach ($group_options as $key => $option) {
-          $form['options']['name']['#options'][$key] = array(
-            '#attributes' => array(
-              'class' => array('filterable-option', $group),
-            ),
-            'title' => array(
-              'data' => array(
+          $form['options']['name']['#options'][$key] = [
+            '#attributes' => [
+              'class' => ['filterable-option', $group],
+            ],
+            'title' => [
+              'data' => [
                 '#title' => $option['title'],
                 '#plain_text' => $option['title'],
-              ),
-              'class' => array('title'),
-            ),
+              ],
+              'class' => ['title'],
+            ],
             'group' => $option['group'],
-            'help' => array(
+            'help' => [
               'data' => $option['help'],
-              'class' => array('description'),
-            ),
-          );
+              'class' => ['description'],
+            ],
+          ];
         }
       }
 
       $form['override']['controls']['group']['#options'] = $groups;
     }
     else {
-      $form['options']['markup'] = array(
-        '#markup' => '<div class="js-form-item form-item">' . $this->t('There are no @types available to add.', array('@types' => $ltitle)) . '</div>',
-      );
+      $form['options']['markup'] = [
+        '#markup' => '<div class="js-form-item form-item">' . $this->t('There are no @types available to add.', ['@types' => $ltitle]) . '</div>',
+      ];
     }
     // Add a div to show the selected items
-    $form['selected'] = array(
+    $form['selected'] = [
       '#type' => 'item',
       '#markup' => '<span class="views-ui-view-title">' . $this->t('Selected:') . '</span> ' . '<div class="views-selected-options"></div>',
-      '#theme_wrappers' => array('form_element', 'views_ui_container'),
-      '#attributes' => array(
-        'class' => array('container-inline', 'views-add-form-selected', 'views-offset-bottom'),
+      '#theme_wrappers' => ['form_element', 'views_ui_container'],
+      '#attributes' => [
+        'class' => ['container-inline', 'views-add-form-selected', 'views-offset-bottom'],
         'data-drupal-views-offset' => 'bottom',
-      ),
-    );
-    $view->getStandardButtons($form, $form_state, 'views_ui_add_handler_form', $this->t('Add and configure @types', array('@types' => $ltitle)));
+      ],
+    ];
+    $view->getStandardButtons($form, $form_state, 'views_ui_add_handler_form', $this->t('Add and configure @types', ['@types' => $ltitle]));
 
     // Remove the default submit function.
     $form['actions']['submit']['#submit'] = array_filter($form['actions']['submit']['#submit'], function($var) {
       return !(is_array($var) && isset($var[1]) && $var[1] == 'standardSubmit');
     });
-    $form['actions']['submit']['#submit'][] = array($view, 'submitItemAdd');
+    $form['actions']['submit']['#submit'][] = [$view, 'submitItemAdd'];
 
     return $form;
   }
diff --git a/core/modules/views_ui/src/Form/Ajax/Analyze.php b/core/modules/views_ui/src/Form/Ajax/Analyze.php
index 458575d..52784d3 100644
--- a/core/modules/views_ui/src/Form/Ajax/Analyze.php
+++ b/core/modules/views_ui/src/Form/Ajax/Analyze.php
@@ -36,11 +36,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $analyzer = Views::analyzer();
     $messages = $analyzer->getMessages($view->getExecutable());
 
-    $form['analysis'] = array(
+    $form['analysis'] = [
       '#prefix' => '<div class="js-form-item form-item">',
       '#suffix' => '</div>',
       '#markup' => $analyzer->formatMessages($messages),
-    );
+    ];
 
     // Inform the standard button function that we want an OK button.
     $form_state->set('ok_button', TRUE);
diff --git a/core/modules/views_ui/src/Form/Ajax/ConfigHandler.php b/core/modules/views_ui/src/Form/Ajax/ConfigHandler.php
index 819cb75..972b4b9 100644
--- a/core/modules/views_ui/src/Form/Ajax/ConfigHandler.php
+++ b/core/modules/views_ui/src/Form/Ajax/ConfigHandler.php
@@ -54,17 +54,17 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
     $type = $form_state->get('type');
     $id = $form_state->get('id');
 
-    $form = array(
-      'options' => array(
+    $form = [
+      'options' => [
         '#tree' => TRUE,
-        '#theme_wrappers' => array('container'),
-        '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-      ),
-    );
+        '#theme_wrappers' => ['container'],
+        '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+      ],
+    ];
     $executable = $view->getExecutable();
     $save_ui_cache = FALSE;
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
     $item = $executable->getHandler($display_id, $type, $id);
@@ -72,7 +72,7 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
     if ($item) {
       $handler = $executable->display_handler->getHandler($type, $id);
       if (empty($handler)) {
-        $form['markup'] = array('#markup' => $this->t("Error: handler for @table > @field doesn't exist!", array('@table' => $item['table'], '@field' => $item['field'])));
+        $form['markup'] = ['#markup' => $this->t("Error: handler for @table > @field doesn't exist!", ['@table' => $item['table'], '@field' => $item['field']])];
       }
       else {
         $types = ViewExecutable::getHandlerTypes();
@@ -88,7 +88,7 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
         // A whole bunch of code to figure out what relationships are valid for
         // this item.
         $relationships = $executable->display_handler->getOption('relationships');
-        $relationship_options = array();
+        $relationship_options = [];
 
         foreach ($relationships as $relationship) {
           // relationships can't link back to self. But also, due to ordering,
@@ -118,7 +118,7 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
           // it to none.
           $base_fields = Views::viewsDataHelper()->fetchFields($view->get('base_table'), $type, $executable->display_handler->useGroupBy());
           if (isset($base_fields[$item['table'] . '.' . $item['field']])) {
-            $relationship_options = array_merge(array('none' => $this->t('Do not use a relationship')), $relationship_options);
+            $relationship_options = array_merge(['none' => $this->t('Do not use a relationship')], $relationship_options);
           }
           $rel = empty($item['relationship']) ? 'none' : $item['relationship'];
           if (empty($relationship_options[$rel])) {
@@ -133,30 +133,30 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
             $handler->init($executable, $executable->display_handler, $item);
           }
 
-          $form['options']['relationship'] = array(
+          $form['options']['relationship'] = [
             '#type' => 'select',
             '#title' => $this->t('Relationship'),
             '#options' => $relationship_options,
             '#default_value' => $rel,
             '#weight' => -500,
-          );
+          ];
         }
         else {
-          $form['options']['relationship'] = array(
+          $form['options']['relationship'] = [
             '#type' => 'value',
             '#value' => 'none',
-          );
+          ];
         }
 
-        $form['#title'] = $this->t('Configure @type: @item', array('@type' => $types[$type]['lstitle'], '@item' => $handler->adminLabel()));
+        $form['#title'] = $this->t('Configure @type: @item', ['@type' => $types[$type]['lstitle'], '@item' => $handler->adminLabel()]);
 
         if (!empty($handler->definition['help'])) {
-          $form['options']['form_description'] = array(
+          $form['options']['form_description'] = [
             '#markup' => $handler->definition['help'],
-            '#theme_wrappers' => array('container'),
-            '#attributes' => array('class' => array('js-form-item form-item description')),
+            '#theme_wrappers' => ['container'],
+            '#attributes' => ['class' => ['js-form-item form-item description']],
             '#weight' => -1000,
-          );
+          ];
         }
 
         $form['#section'] = $display_id . '-' . $type . '-' . $id;
@@ -170,13 +170,13 @@ public function buildForm(array $form, FormStateInterface $form_state, Request $
 
       $view->getStandardButtons($form, $form_state, 'views_ui_config_item_form', $name);
       // Add a 'remove' button.
-      $form['actions']['remove'] = array(
+      $form['actions']['remove'] = [
         '#type' => 'submit',
         '#value' => $this->t('Remove'),
-        '#submit' => array(array($this, 'remove')),
-        '#limit_validation_errors' => array(array('override')),
+        '#submit' => [[$this, 'remove']],
+        '#limit_validation_errors' => [['override']],
         '#button_type' => 'danger',
-      );
+      ];
     }
 
     if ($save_ui_cache) {
diff --git a/core/modules/views_ui/src/Form/Ajax/ConfigHandlerExtra.php b/core/modules/views_ui/src/Form/Ajax/ConfigHandlerExtra.php
index 0c10fb1..a79d031 100644
--- a/core/modules/views_ui/src/Form/Ajax/ConfigHandlerExtra.php
+++ b/core/modules/views_ui/src/Form/Ajax/ConfigHandlerExtra.php
@@ -51,16 +51,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $type = $form_state->get('type');
     $id = $form_state->get('id');
 
-    $form = array(
-      'options' => array(
+    $form = [
+      'options' => [
         '#tree' => TRUE,
-        '#theme_wrappers' => array('container'),
-        '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-      ),
-    );
+        '#theme_wrappers' => ['container'],
+        '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+      ],
+    ];
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
     $item = $executable->getHandler($display_id, $type, $id);
@@ -68,13 +68,13 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     if ($item) {
       $handler = $executable->display_handler->getHandler($type, $id);
       if (empty($handler)) {
-        $form['markup'] = array('#markup' => $this->t("Error: handler for @table > @field doesn't exist!", array('@table' => $item['table'], '@field' => $item['field'])));
+        $form['markup'] = ['#markup' => $this->t("Error: handler for @table > @field doesn't exist!", ['@table' => $item['table'], '@field' => $item['field']])];
       }
       else {
         $handler->init($executable, $executable->display_handler, $item);
         $types = ViewExecutable::getHandlerTypes();
 
-        $form['#title'] = $this->t('Configure extra settings for @type %item', array('@type' => $types[$type]['lstitle'], '%item' => $handler->adminLabel()));
+        $form['#title'] = $this->t('Configure extra settings for @type %item', ['@type' => $types[$type]['lstitle'], '%item' => $handler->adminLabel()]);
 
         $form['#section'] = $display_id . '-' . $type . '-' . $id;
 
diff --git a/core/modules/views_ui/src/Form/Ajax/ConfigHandlerGroup.php b/core/modules/views_ui/src/Form/Ajax/ConfigHandlerGroup.php
index e7c7a83..b4d0f13 100644
--- a/core/modules/views_ui/src/Form/Ajax/ConfigHandlerGroup.php
+++ b/core/modules/views_ui/src/Form/Ajax/ConfigHandlerGroup.php
@@ -52,16 +52,16 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $type = $form_state->get('type');
     $id = $form_state->get('id');
 
-    $form = array(
-      'options' => array(
+    $form = [
+      'options' => [
         '#tree' => TRUE,
-        '#theme_wrappers' => array('container'),
-        '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-      ),
-    );
+        '#theme_wrappers' => ['container'],
+        '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+      ],
+    ];
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
 
@@ -72,13 +72,13 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     if ($item) {
       $handler = $executable->display_handler->getHandler($type, $id);
       if (empty($handler)) {
-        $form['markup'] = array('#markup' => $this->t("Error: handler for @table > @field doesn't exist!", array('@table' => $item['table'], '@field' => $item['field'])));
+        $form['markup'] = ['#markup' => $this->t("Error: handler for @table > @field doesn't exist!", ['@table' => $item['table'], '@field' => $item['field']])];
       }
       else {
         $handler->init($executable, $executable->display_handler, $item);
         $types = ViewExecutable::getHandlerTypes();
 
-        $form['#title'] = $this->t('Configure aggregation settings for @type %item', array('@type' => $types[$type]['lstitle'], '%item' => $handler->adminLabel()));
+        $form['#title'] = $this->t('Configure aggregation settings for @type %item', ['@type' => $types[$type]['lstitle'], '%item' => $handler->adminLabel()]);
 
         $handler->buildGroupByForm($form['options'], $form_state);
         $form_state->set('handler', $handler);
diff --git a/core/modules/views_ui/src/Form/Ajax/Display.php b/core/modules/views_ui/src/Form/Ajax/Display.php
index bd129af..302d759 100644
--- a/core/modules/views_ui/src/Form/Ajax/Display.php
+++ b/core/modules/views_ui/src/Form/Ajax/Display.php
@@ -60,15 +60,15 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
 
     // Get form from the handler.
-    $form['options'] = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-    );
+    $form['options'] = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+    ];
     $executable->display_handler->buildOptionsForm($form['options'], $form_state);
 
     // The handler options form sets $form['#title'], which we need on the entire
diff --git a/core/modules/views_ui/src/Form/Ajax/EditDetails.php b/core/modules/views_ui/src/Form/Ajax/EditDetails.php
index ced4044..07b1625 100644
--- a/core/modules/views_ui/src/Form/Ajax/EditDetails.php
+++ b/core/modules/views_ui/src/Form/Ajax/EditDetails.php
@@ -33,33 +33,33 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $form['#title'] = $this->t('Name and description');
     $form['#section'] = 'details';
 
-    $form['details'] = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('class' => array('scroll'), 'data-drupal-views-scroll' => TRUE),
-    );
-    $form['details']['label'] = array(
+    $form['details'] = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['class' => ['scroll'], 'data-drupal-views-scroll' => TRUE],
+    ];
+    $form['details']['label'] = [
       '#type' => 'textfield',
       '#title' => t('Administrative name'),
       '#default_value' => $view->label(),
-    );
-    $form['details']['langcode'] = array(
+    ];
+    $form['details']['langcode'] = [
       '#type' => 'language_select',
       '#title' => $this->t('View language'),
       '#description' => $this->t('Language of labels and other textual elements in this view.'),
       '#default_value' => $view->get('langcode'),
-    );
-    $form['details']['description'] = array(
+    ];
+    $form['details']['description'] = [
        '#type' => 'textfield',
        '#title' => t('Administrative description'),
        '#default_value' => $view->get('description'),
-     );
-    $form['details']['tag'] = array(
+     ];
+    $form['details']['tag'] = [
       '#type' => 'textfield',
       '#title' => t('Administrative tags'),
       '#description' => t('Enter a comma-separated list of words to describe your view.'),
       '#default_value' => $view->get('tag'),
       '#autocomplete_route_name' => 'views_ui.autocomplete',
-    );
+    ];
 
     $view->getStandardButtons($form, $form_state, 'views_ui_edit_details_form');
     return $form;
diff --git a/core/modules/views_ui/src/Form/Ajax/Rearrange.php b/core/modules/views_ui/src/Form/Ajax/Rearrange.php
index 0487769..2a46120 100644
--- a/core/modules/views_ui/src/Form/Ajax/Rearrange.php
+++ b/core/modules/views_ui/src/Form/Ajax/Rearrange.php
@@ -53,11 +53,11 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $types = ViewExecutable::getHandlerTypes();
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
     $display = &$executable->displayHandlers->get($display_id);
-    $form['#title'] = $this->t('Rearrange @type', array('@type' => $types[$type]['ltitle']));
+    $form['#title'] = $this->t('Rearrange @type', ['@type' => $types[$type]['ltitle']]);
     $form['#section'] = $display_id . 'rearrange-item';
 
     if ($display->defaultableSections($types[$type]['plural'])) {
@@ -69,31 +69,31 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $count = 0;
 
     // Get relationship labels
-    $relationships = array();
+    $relationships = [];
     foreach ($display->getHandlers('relationship') as $id => $handler) {
       $relationships[$id] = $handler->adminLabel();
     }
 
-    $form['fields'] = array(
+    $form['fields'] = [
       '#type' => 'table',
-      '#header' => array('', $this->t('Weight'), $this->t('Remove')),
+      '#header' => ['', $this->t('Weight'), $this->t('Remove')],
       '#empty' => $this->t('No fields available.'),
-      '#tabledrag' => array(
-        array(
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'weight',
-        )
-      ),
+        ]
+      ],
       '#tree' => TRUE,
       '#prefix' => '<div class="scroll" data-drupal-views-scroll>',
       '#suffix' => '</div>',
-    );
+    ];
 
     foreach ($display->getOption($types[$type]['plural']) as $id => $field) {
-      $form['fields'][$id] = array();
+      $form['fields'][$id] = [];
 
-      $form['fields'][$id]['#attributes'] = array('class' => array('draggable'), 'id' => 'views-row-' . $id);
+      $form['fields'][$id]['#attributes'] = ['class' => ['draggable'], 'id' => 'views-row-' . $id];
 
       $handler = $display->getHandler($type, $id);
       if ($handler) {
@@ -105,34 +105,34 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       }
       else {
         $name = $id;
-        $markup = $this->t('Broken field @id', array('@id' => $id));
+        $markup = $this->t('Broken field @id', ['@id' => $id]);
       }
-      $form['fields'][$id]['name'] = array('#markup' => $markup);
+      $form['fields'][$id]['name'] = ['#markup' => $markup];
 
-      $form['fields'][$id]['weight'] = array(
+      $form['fields'][$id]['weight'] = [
         '#type' => 'textfield',
         '#default_value' => ++$count,
-        '#attributes' => array('class' => array('weight')),
-        '#title' => t('Weight for @title', array('@title' => $name)),
+        '#attributes' => ['class' => ['weight']],
+        '#title' => t('Weight for @title', ['@title' => $name]),
         '#title_display' => 'invisible',
-      );
+      ];
 
-      $form['fields'][$id]['removed'] = array(
+      $form['fields'][$id]['removed'] = [
         '#type' => 'checkbox',
-        '#title' => t('Remove @title', array('@title' => $name)),
+        '#title' => t('Remove @title', ['@title' => $name]),
         '#title_display' => 'invisible',
         '#id' => 'views-removed-' . $id,
-        '#attributes' => array('class' => array('views-remove-checkbox')),
+        '#attributes' => ['class' => ['views-remove-checkbox']],
         '#default_value' => 0,
-        '#suffix' => \Drupal::l(SafeMarkup::format('<span>@text</span>', array('@text' => $this->t('Remove'))),
-          Url::fromRoute('<none>', array(), array('attributes' => array(
+        '#suffix' => \Drupal::l(SafeMarkup::format('<span>@text</span>', ['@text' => $this->t('Remove')]),
+          Url::fromRoute('<none>', [], ['attributes' => [
             'id' => 'views-remove-link-' . $id,
-            'class' => array('views-hidden', 'views-button-remove', 'views-remove-link'),
+            'class' => ['views-hidden', 'views-button-remove', 'views-remove-link'],
             'alt' => $this->t('Remove this item'),
-            'title' => $this->t('Remove this item')),
-          ))
+            'title' => $this->t('Remove this item')],
+          ])
         ),
-      );
+      ];
     }
 
     $view->getStandardButtons($form, $form_state, 'views_ui_rearrange_form');
@@ -152,7 +152,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $display = &$view->getExecutable()->displayHandlers->get($display_id);
 
     $old_fields = $display->getOption($types[$type]['plural']);
-    $new_fields = $order = array();
+    $new_fields = $order = [];
 
     // Make an array with the weights
     foreach ($form_state->getValue('fields') as $field => $info) {
diff --git a/core/modules/views_ui/src/Form/Ajax/RearrangeFilter.php b/core/modules/views_ui/src/Form/Ajax/RearrangeFilter.php
index ea2235b..3298681 100644
--- a/core/modules/views_ui/src/Form/Ajax/RearrangeFilter.php
+++ b/core/modules/views_ui/src/Form/Ajax/RearrangeFilter.php
@@ -43,12 +43,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $types = ViewExecutable::getHandlerTypes();
     $executable = $view->getExecutable();
     if (!$executable->setDisplay($display_id)) {
-      $form['markup'] = array('#markup' => $this->t('Invalid display id @display', array('@display' => $display_id)));
+      $form['markup'] = ['#markup' => $this->t('Invalid display id @display', ['@display' => $display_id])];
       return $form;
     }
     $display = $executable->displayHandlers->get($display_id);
     $form['#title'] = Html::escape($display->display['display_title']) . ': ';
-    $form['#title'] .= $this->t('Rearrange @type', array('@type' => $types[$type]['ltitle']));
+    $form['#title'] .= $this->t('Rearrange @type', ['@type' => $types[$type]['ltitle']]);
     $form['#section'] = $display_id . 'rearrange-item';
 
     if ($display->defaultableSections($types[$type]['plural'])) {
@@ -68,12 +68,12 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $count = 0;
 
     // Get relationship labels
-    $relationships = array();
+    $relationships = [];
     foreach ($display->getHandlers('relationship') as $id => $handler) {
       $relationships[$id] = $handler->adminLabel();
     }
 
-    $group_options = array();
+    $group_options = [];
 
     /**
      * Filter groups is an array that contains:
@@ -88,59 +88,59 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $grouping = count(array_keys($groups['groups'])) > 1;
 
     $form['filter_groups']['#tree'] = TRUE;
-    $form['filter_groups']['operator'] = array(
+    $form['filter_groups']['operator'] = [
       '#type' => 'select',
-      '#options' => array(
+      '#options' => [
         'AND' => $this->t('And'),
         'OR' => $this->t('Or'),
-      ),
+      ],
       '#default_value' => $groups['operator'],
-      '#attributes' => array(
-        'class' => array('warning-on-change'),
-      ),
+      '#attributes' => [
+        'class' => ['warning-on-change'],
+      ],
       '#title' => $this->t('Operator to use on all groups'),
       '#description' => $this->t('Either "group 0 AND group 1 AND group 2" or "group 0 OR group 1 OR group 2", etc'),
       '#access' => $grouping,
-    );
+    ];
 
     $form['remove_groups']['#tree'] = TRUE;
 
     foreach ($groups['groups'] as $id => $group) {
-      $form['filter_groups']['groups'][$id] = array(
+      $form['filter_groups']['groups'][$id] = [
         '#title' => $this->t('Operator'),
         '#type' => 'select',
-        '#options' => array(
+        '#options' => [
           'AND' => $this->t('And'),
           'OR' => $this->t('Or'),
-        ),
+        ],
         '#default_value' => $group,
-        '#attributes' => array(
-          'class' => array('warning-on-change'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['warning-on-change'],
+        ],
+      ];
 
-      $form['remove_groups'][$id] = array(); // to prevent a notice
+      $form['remove_groups'][$id] = []; // to prevent a notice
       if ($id != 1) {
-        $form['remove_groups'][$id] = array(
+        $form['remove_groups'][$id] = [
           '#type' => 'submit',
-          '#value' => $this->t('Remove group @group', array('@group' => $id)),
+          '#value' => $this->t('Remove group @group', ['@group' => $id]),
           '#id' => "views-remove-group-$id",
-          '#attributes' => array(
-            'class' => array('views-remove-group'),
-          ),
+          '#attributes' => [
+            'class' => ['views-remove-group'],
+          ],
           '#group' => $id,
           '#ajax' => ['url' => NULL],
-        );
+        ];
       }
-      $group_options[$id] = $id == 1 ? $this->t('Default group') : $this->t('Group @group', array('@group' => $id));
-      $form['#group_renders'][$id] = array();
+      $group_options[$id] = $id == 1 ? $this->t('Default group') : $this->t('Group @group', ['@group' => $id]);
+      $form['#group_renders'][$id] = [];
     }
 
     $form['#group_options'] = $group_options;
     $form['#groups'] = $groups;
     // We don't use getHandlers() because we want items without handlers to
     // appear and show up as 'broken' so that the user can see them.
-    $form['filters'] = array('#tree' => TRUE);
+    $form['filters'] = ['#tree' => TRUE];
     foreach ($handlers as $id => $field) {
       // If the group does not exist, move the filters to the default group.
       if (empty($field['group']) || empty($groups['groups'][$field['group']])) {
@@ -162,24 +162,24 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       // Place this item into the proper group for rendering.
       $form['#group_renders'][$field['group']][] = $id;
 
-      $form['filters'][$id]['weight'] = array(
-        '#title' => t('Weight for @id', array('@id' => $id)),
+      $form['filters'][$id]['weight'] = [
+        '#title' => t('Weight for @id', ['@id' => $id]),
         '#title_display' => 'invisible',
         '#type' => 'textfield',
         '#default_value' => ++$count,
         '#size' => 8,
-      );
-      $form['filters'][$id]['group'] = array(
-        '#title' => t('Group for @id', array('@id' => $id)),
+      ];
+      $form['filters'][$id]['group'] = [
+        '#title' => t('Group for @id', ['@id' => $id]),
         '#title_display' => 'invisible',
         '#type' => 'select',
         '#options' => $group_options,
         '#default_value' => $field['group'],
-        '#attributes' => array(
-          'class' => array('views-region-select', 'views-region-' . $id),
-        ),
+        '#attributes' => [
+          'class' => ['views-region-select', 'views-region-' . $id],
+        ],
         '#access' => $field['group'] !== 'ungroupable',
-      );
+      ];
 
       if ($handler) {
         $name = $handler->adminLabel() . ' ' . $handler->adminSummary();
@@ -187,34 +187,34 @@ public function buildForm(array $form, FormStateInterface $form_state) {
           $name = '(' . $relationships[$field['relationship']] . ') ' . $name;
         }
 
-        $form['filters'][$id]['name'] = array(
+        $form['filters'][$id]['name'] = [
           '#markup' => $name,
-        );
+        ];
       }
       else {
-        $form['filters'][$id]['name'] = array('#markup' => $this->t('Broken field @id', array('@id' => $id)));
+        $form['filters'][$id]['name'] = ['#markup' => $this->t('Broken field @id', ['@id' => $id])];
       }
-      $form['filters'][$id]['removed'] = array(
-        '#title' => t('Remove @id', array('@id' => $id)),
+      $form['filters'][$id]['removed'] = [
+        '#title' => t('Remove @id', ['@id' => $id]),
         '#title_display' => 'invisible',
         '#type' => 'checkbox',
         '#id' => 'views-removed-' . $id,
-        '#attributes' => array('class' => array('views-remove-checkbox')),
+        '#attributes' => ['class' => ['views-remove-checkbox']],
         '#default_value' => 0,
-      );
+      ];
     }
 
     $view->getStandardButtons($form, $form_state, 'views_ui_rearrange_filter_form');
-    $form['actions']['add_group'] = array(
+    $form['actions']['add_group'] = [
       '#type' => 'submit',
       '#value' => $this->t('Create new filter group'),
       '#id' => 'views-add-group',
       '#group' => 'add',
-      '#attributes' => array(
-        'class' => array('views-add-group'),
-      ),
+      '#attributes' => [
+        'class' => ['views-add-group'],
+      ],
       '#ajax' => ['url' => NULL],
-    );
+    ];
 
     return $form;
   }
@@ -226,7 +226,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
     $types = ViewExecutable::getHandlerTypes();
     $view = $form_state->get('view');
     $display = &$view->getExecutable()->displayHandlers->get($form_state->get('display_id'));
-    $remember_groups = array();
+    $remember_groups = [];
 
     if (!empty($view->form_cache)) {
       $old_fields = $view->form_cache['handlers'];
@@ -237,7 +237,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
 
     $groups = $form_state->getValue('filter_groups');
     // Whatever button was clicked, re-calculate field information.
-    $new_fields = $order = array();
+    $new_fields = $order = [];
 
     // Make an array with the weights
     foreach ($form_state->getValue('filters') as $field => $info) {
diff --git a/core/modules/views_ui/src/Form/Ajax/ReorderDisplays.php b/core/modules/views_ui/src/Form/Ajax/ReorderDisplays.php
index 7d1285f..377a3d5 100644
--- a/core/modules/views_ui/src/Form/Ajax/ReorderDisplays.php
+++ b/core/modules/views_ui/src/Form/Ajax/ReorderDisplays.php
@@ -40,10 +40,10 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       'view' => $view->id(),
       'display_id' => $display_id,
     ]);
-    $form['view'] = array(
+    $form['view'] = [
       '#type' => 'value',
       '#value' => $view
-    );
+    ];
 
     $displays = $view->get('display');
     $count = count($displays);
@@ -56,82 +56,82 @@ public function buildForm(array $form, FormStateInterface $form_state) {
       return 0;
     });
 
-    $form['displays'] = array(
+    $form['displays'] = [
       '#type' => 'table',
       '#id' => 'reorder-displays',
-      '#header' => array($this->t('Display'), $this->t('Weight'), $this->t('Remove')),
+      '#header' => [$this->t('Display'), $this->t('Weight'), $this->t('Remove')],
       '#empty' => $this->t('No displays available.'),
-      '#tabledrag' => array(
-        array(
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'weight',
-        )
-      ),
+        ]
+      ],
       '#tree' => TRUE,
       '#prefix' => '<div class="scroll" data-drupal-views-scroll>',
       '#suffix' => '</div>',
-    );
+    ];
 
     foreach ($displays as $id => $display) {
-      $form['displays'][$id] = array(
+      $form['displays'][$id] = [
         '#display' => $display,
-        '#attributes' => array(
+        '#attributes' => [
           'id' => 'display-row-' . $id,
-        ),
+        ],
         '#weight' => $display['position'],
-      );
+      ];
 
       // Only make row draggable if it's not the default display.
       if ($id !== 'default') {
         $form['displays'][$id]['#attributes']['class'][] = 'draggable';
       }
 
-      $form['displays'][$id]['title'] = array(
+      $form['displays'][$id]['title'] = [
         '#markup' => $display['display_title'],
-      );
+      ];
 
-      $form['displays'][$id]['weight'] = array(
+      $form['displays'][$id]['weight'] = [
         '#type' => 'weight',
         '#value' => $display['position'],
         '#delta' => $count,
-        '#title' => $this->t('Weight for @display', array('@display' => $display['display_title'])),
+        '#title' => $this->t('Weight for @display', ['@display' => $display['display_title']]),
         '#title_display' => 'invisible',
-        '#attributes' => array(
-          'class' => array('weight'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['weight'],
+        ],
+      ];
 
-      $form['displays'][$id]['removed'] = array(
-        'checkbox' => array(
-          '#title' => t('Remove @id', array('@id' => $id)),
+      $form['displays'][$id]['removed'] = [
+        'checkbox' => [
+          '#title' => t('Remove @id', ['@id' => $id]),
           '#title_display' => 'invisible',
           '#type' => 'checkbox',
           '#id' => 'display-removed-' . $id,
-          '#attributes' => array(
-            'class' => array('views-remove-checkbox'),
-          ),
+          '#attributes' => [
+            'class' => ['views-remove-checkbox'],
+          ],
           '#default_value' => !empty($display['deleted']),
-        ),
-        'link' => array(
+        ],
+        'link' => [
           '#type' => 'link',
-          '#title' => SafeMarkup::format('<span>@text</span>', array('@text' => $this->t('Remove'))),
+          '#title' => SafeMarkup::format('<span>@text</span>', ['@text' => $this->t('Remove')]),
           '#url' => Url::fromRoute('<none>'),
-          '#attributes' => array(
+          '#attributes' => [
             'id' => 'display-remove-link-' . $id,
-            'class' => array('views-button-remove', 'display-remove-link'),
+            'class' => ['views-button-remove', 'display-remove-link'],
             'alt' => $this->t('Remove this display'),
             'title' => $this->t('Remove this display'),
-          ),
-        ),
+          ],
+        ],
         '#access' => ($id !== 'default'),
-      );
+      ];
 
       if (!empty($display['deleted'])) {
-        $form['displays'][$id]['deleted'] = array(
+        $form['displays'][$id]['deleted'] = [
           '#type' => 'value',
           '#value' => TRUE,
-        );
+        ];
 
         $form['displays'][$id]['#attributes']['class'][] = 'hidden';
       }
@@ -149,7 +149,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     /** @var $view \Drupal\views_ui\ViewUI */
     $view = $form_state->get('view');
-    $order = array();
+    $order = [];
 
     $user_input = $form_state->getUserInput();
     foreach ($user_input['displays'] as $display => $info) {
diff --git a/core/modules/views_ui/src/Form/Ajax/ViewsFormBase.php b/core/modules/views_ui/src/Form/Ajax/ViewsFormBase.php
index 93bd049..375766a 100644
--- a/core/modules/views_ui/src/Form/Ajax/ViewsFormBase.php
+++ b/core/modules/views_ui/src/Form/Ajax/ViewsFormBase.php
@@ -108,7 +108,7 @@ public function getForm(ViewEntityInterface $view, $display_id, $js) {
       unset($view->stack[$key]);
 
       if (array_shift($top) != $identifier) {
-        $view->stack = array();
+        $view->stack = [];
       }
     }
 
@@ -138,7 +138,7 @@ public function getForm(ViewEntityInterface $view, $display_id, $js) {
       $form_state = $reflection->newInstanceArgs(array_slice($top, 3, 2))->getFormState($view, $top[2], $form_state->get('ajax'));
       $form_class = get_class($form_state->getFormObject());
 
-      $form_state->setUserInput(array());
+      $form_state->setUserInput([]);
       $form_url = views_ui_build_form_url($form_state);
       if (!$form_state->get('ajax')) {
         return new RedirectResponse($form_url->setAbsolute()->toString());
@@ -234,16 +234,16 @@ protected function ajaxFormWrapper($form_class, FormStateInterface &$form_state)
       $response->setAttachments($form['#attached']);
 
       $display = '';
-      $status_messages = array('#type' => 'status_messages');
+      $status_messages = ['#type' => 'status_messages'];
       if ($messages = $renderer->renderRoot($status_messages)) {
         $display = '<div class="views-messages">' . $messages . '</div>';
       }
       $display .= $output;
 
-      $options = array(
+      $options = [
         'dialogClass' => 'views-ui-dialog js-views-ui-dialog',
         'width' => '75%',
-      );
+      ];
 
       $response->addCommand(new OpenModalDialogCommand($title, $display, $options));
 
diff --git a/core/modules/views_ui/src/Form/BasicSettingsForm.php b/core/modules/views_ui/src/Form/BasicSettingsForm.php
index 6150196..bcd5336 100644
--- a/core/modules/views_ui/src/Form/BasicSettingsForm.php
+++ b/core/modules/views_ui/src/Form/BasicSettingsForm.php
@@ -65,7 +65,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
     $form = parent::buildForm($form, $form_state);
 
     $config = $this->config('views.settings');
-    $options = array();
+    $options = [];
     foreach ($this->themeHandler->listInfo() as $name => $theme) {
       if ($theme->status) {
         $options[$name] = $theme->info['name'];
@@ -74,94 +74,94 @@ public function buildForm(array $form, FormStateInterface $form_state) {
 
     // This is not currently a fieldset but we may want it to be later,
     // so this will make it easier to change if we do.
-    $form['basic'] = array();
+    $form['basic'] = [];
 
-    $form['basic']['ui_show_master_display'] = array(
+    $form['basic']['ui_show_master_display'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Always show the master (default) display'),
       '#default_value' => $config->get('ui.show.master_display'),
-    );
+    ];
 
-    $form['basic']['ui_show_advanced_column'] = array(
+    $form['basic']['ui_show_advanced_column'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Always show advanced display settings'),
       '#default_value' => $config->get('ui.show.advanced_column'),
-    );
+    ];
 
-    $form['basic']['ui_show_display_embed'] = array(
+    $form['basic']['ui_show_display_embed'] = [
       '#type' => 'checkbox',
       '#title' => t('Allow embedded displays'),
       '#description' => t('Embedded displays can be used in code via views_embed_view().'),
       '#default_value' => $config->get('ui.show.display_embed'),
-    );
+    ];
 
-    $form['basic']['ui_exposed_filter_any_label'] = array(
+    $form['basic']['ui_exposed_filter_any_label'] = [
       '#type' => 'select',
       '#title' => $this->t('Label for "Any" value on non-required single-select exposed filters'),
-      '#options' => array('old_any' => '<Any>', 'new_any' => $this->t('- Any -')),
+      '#options' => ['old_any' => '<Any>', 'new_any' => $this->t('- Any -')],
       '#default_value' => $config->get('ui.exposed_filter_any_label'),
-    );
+    ];
 
-    $form['live_preview'] = array(
+    $form['live_preview'] = [
       '#type' => 'details',
       '#title' => $this->t('Live preview settings'),
       '#open' => TRUE,
-    );
+    ];
 
-    $form['live_preview']['ui_always_live_preview'] = array(
+    $form['live_preview']['ui_always_live_preview'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Automatically update preview on changes'),
       '#default_value' => $config->get('ui.always_live_preview'),
-    );
+    ];
 
-    $form['live_preview']['ui_show_preview_information'] = array(
+    $form['live_preview']['ui_show_preview_information'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show information and statistics about the view during live preview'),
       '#default_value' => $config->get('ui.show.preview_information'),
-    );
+    ];
 
-    $form['live_preview']['options'] = array(
+    $form['live_preview']['options'] = [
       '#type' => 'container',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="ui_show_preview_information"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="ui_show_preview_information"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
-    $form['live_preview']['options']['ui_show_sql_query_enabled'] = array(
+    $form['live_preview']['options']['ui_show_sql_query_enabled'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show the SQL query'),
       '#default_value' => $config->get('ui.show.sql_query.enabled'),
-    );
+    ];
 
-    $form['live_preview']['options']['ui_show_sql_query_where'] = array(
+    $form['live_preview']['options']['ui_show_sql_query_where'] = [
       '#type' => 'radios',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="ui_show_sql_query_enabled"]' => array('checked' => TRUE),
-        ),
-      ),
+      '#states' => [
+        'visible' => [
+          ':input[name="ui_show_sql_query_enabled"]' => ['checked' => TRUE],
+        ],
+      ],
       '#title' => t('Show SQL query'),
-      '#options' => array(
+      '#options' => [
         'above' => $this->t('Above the preview'),
         'below' => $this->t('Below the preview'),
-      ),
+      ],
       '#default_value' => $config->get('ui.show.sql_query.where'),
-    );
+    ];
 
-    $form['live_preview']['options']['ui_show_performance_statistics'] = array(
+    $form['live_preview']['options']['ui_show_performance_statistics'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show performance statistics'),
       '#default_value' => $config->get('ui.show.performance_statistics'),
-    );
+    ];
 
-    $form['live_preview']['options']['ui_show_additional_queries'] = array(
+    $form['live_preview']['options']['ui_show_additional_queries'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Show other queries run during render during live preview'),
       '#description' => $this->t("Drupal has the potential to run many queries while a view is being rendered. Checking this box will display every query run during view render as part of the live preview."),
       '#default_value' => $config->get('ui.show.additional_queries'),
-    );
+    ];
 
     return $form;
   }
diff --git a/core/modules/views_ui/src/Form/BreakLockForm.php b/core/modules/views_ui/src/Form/BreakLockForm.php
index 12a3e3e..94a626f 100644
--- a/core/modules/views_ui/src/Form/BreakLockForm.php
+++ b/core/modules/views_ui/src/Form/BreakLockForm.php
@@ -61,7 +61,7 @@ public function getFormId() {
    * {@inheritdoc}
    */
   public function getQuestion() {
-    return $this->t('Do you want to break the lock on view %name?', array('%name' => $this->entity->id()));
+    return $this->t('Do you want to break the lock on view %name?', ['%name' => $this->entity->id()]);
   }
 
   /**
@@ -70,11 +70,11 @@ public function getQuestion() {
   public function getDescription() {
     $locked = $this->tempStore->getMetadata($this->entity->id());
     $account = $this->entityManager->getStorage('user')->load($locked->owner);
-    $username = array(
+    $username = [
       '#theme' => 'username',
       '#account' => $account,
-    );
-    return $this->t('By breaking this lock, any unsaved changes made by @user will be lost.', array('@user' => drupal_render($username)));
+    ];
+    return $this->t('By breaking this lock, any unsaved changes made by @user will be lost.', ['@user' => drupal_render($username)]);
   }
 
   /**
@@ -96,7 +96,7 @@ public function getConfirmText() {
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
     if (!$this->tempStore->getMetadata($this->entity->id())) {
-      $form['message']['#markup'] = $this->t('There is no lock on view %name to break.', array('%name' => $this->entity->id()));
+      $form['message']['#markup'] = $this->t('There is no lock on view %name to break.', ['%name' => $this->entity->id()]);
       return $form;
     }
     return parent::buildForm($form, $form_state);
diff --git a/core/modules/views_ui/src/Tests/AnalyzeTest.php b/core/modules/views_ui/src/Tests/AnalyzeTest.php
index 6cc9203..ef1744b 100644
--- a/core/modules/views_ui/src/Tests/AnalyzeTest.php
+++ b/core/modules/views_ui/src/Tests/AnalyzeTest.php
@@ -16,14 +16,14 @@ class AnalyzeTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui');
+  public static $modules = ['views_ui'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   protected function setUp() {
     parent::setUp();
@@ -31,7 +31,7 @@ protected function setUp() {
     $this->enableViewsTestModule();
 
     // Add an admin user will full rights;
-    $this->admin = $this->drupalCreateUser(array('administer views'));
+    $this->admin = $this->drupalCreateUser(['administer views']);
   }
 
   /**
@@ -47,13 +47,13 @@ function testAnalyzeBasic() {
     $this->clickLink(t('Analyze view'));
     $this->assertText(t('View analysis'));
 
-    foreach (array('ok', 'warning', 'error') as $type) {
-      $xpath = $this->xpath('//div[contains(@class, :class)]', array(':class' => $type));
-      $this->assertTrue(count($xpath), format_string('Analyse messages with @type found', array('@type' => $type)));
+    foreach (['ok', 'warning', 'error'] as $type) {
+      $xpath = $this->xpath('//div[contains(@class, :class)]', [':class' => $type]);
+      $this->assertTrue(count($xpath), format_string('Analyse messages with @type found', ['@type' => $type]));
     }
 
     // This redirects the user back to the main views edit page.
-    $this->drupalPostForm(NULL, array(), t('Ok'));
+    $this->drupalPostForm(NULL, [], t('Ok'));
   }
 
 }
diff --git a/core/modules/views_ui/src/Tests/ArgumentValidatorTest.php b/core/modules/views_ui/src/Tests/ArgumentValidatorTest.php
index b62f876..d94e682 100644
--- a/core/modules/views_ui/src/Tests/ArgumentValidatorTest.php
+++ b/core/modules/views_ui/src/Tests/ArgumentValidatorTest.php
@@ -16,7 +16,7 @@ class ArgumentValidatorTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_argument');
+  public static $testViews = ['test_argument'];
 
   /**
    * Tests the 'Specify validation criteria' checkbox functionality.
@@ -46,12 +46,12 @@ public function testSpecifyValidation() {
    * @param bool $specify_validation
    */
   protected function saveArgumentHandlerWithValidationOptions($specify_validation) {
-    $options = array(
+    $options = [
       'options[validate][type]' => 'entity---node',
       'options[specify_validation]' => $specify_validation,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_argument/default/argument/id', $options, t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/test_argument', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/test_argument', [], t('Save'));
   }
 
 }
diff --git a/core/modules/views_ui/src/Tests/CachedDataUITest.php b/core/modules/views_ui/src/Tests/CachedDataUITest.php
index 1f69b19..a605d0f 100644
--- a/core/modules/views_ui/src/Tests/CachedDataUITest.php
+++ b/core/modules/views_ui/src/Tests/CachedDataUITest.php
@@ -14,7 +14,7 @@ class CachedDataUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the user tempstore views data in the UI.
@@ -28,7 +28,7 @@ public function testCacheData() {
 
     $this->drupalGet('admin/structure/views/view/test_view/edit');
     // Make sure we have 'changes' to the view.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', array(), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', [], t('Apply'));
     $this->assertText('You have unsaved changes.');
     $this->assertEqual($temp_store->getMetadata('test_view')->owner, $views_admin_user_uid, 'View cache has been saved.');
 
@@ -39,13 +39,13 @@ public function testCacheData() {
     $this->assertEqual($temp_store->getMetadata('test_view')->owner, $views_admin_user_uid, 'The view is locked.');
 
     // Cancel the view edit and make sure the cache is deleted.
-    $this->drupalPostForm(NULL, array(), t('Cancel'));
+    $this->drupalPostForm(NULL, [], t('Cancel'));
     $this->assertEqual($temp_store->getMetadata('test_view'), NULL, 'User tempstore data has been removed.');
     // Test we are redirected to the view listing page.
-    $this->assertUrl('admin/structure/views', array(), 'Redirected back to the view listing page.');
+    $this->assertUrl('admin/structure/views', [], 'Redirected back to the view listing page.');
 
     // Log in with another user and make sure the view is locked and break.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', array(), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', [], t('Apply'));
     $this->drupalLogin($this->adminUser);
 
     $this->drupalGet('admin/structure/views/view/test_view/edit');
@@ -56,17 +56,17 @@ public function testCacheData() {
     $this->assertLinkByHref('admin/structure/views/view/test_view/break-lock');
     // Break the lock.
     $this->clickLink(t('break this lock'));
-    $this->drupalPostForm(NULL, array(), t('Break lock'));
+    $this->drupalPostForm(NULL, [], t('Break lock'));
     // Test that save and cancel buttons are shown.
     $this->assertFieldById('edit-actions-submit', t('Save'));
     $this->assertFieldById('edit-actions-cancel', t('Cancel'));
     // Test we can save the view.
-    $this->drupalPostForm('admin/structure/views/view/test_view/edit', array(), t('Save'));
-    $this->assertRaw(t('The view %view has been saved.', array('%view' => 'Test view')));
+    $this->drupalPostForm('admin/structure/views/view/test_view/edit', [], t('Save'));
+    $this->assertRaw(t('The view %view has been saved.', ['%view' => 'Test view']));
 
     // Test that a deleted view has no tempstore data.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', array(), t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/test_view/delete', array(), t('Delete'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/default/title', [], t('Apply'));
+    $this->drupalPostForm('admin/structure/views/view/test_view/delete', [], t('Delete'));
     // No view tempstore data should be returned for this view after deletion.
     $this->assertEqual($temp_store->getMetadata('test_view'), NULL, 'View tempstore data has been removed after deletion.');
   }
diff --git a/core/modules/views_ui/src/Tests/CustomBooleanTest.php b/core/modules/views_ui/src/Tests/CustomBooleanTest.php
index ecde493..adae59a 100644
--- a/core/modules/views_ui/src/Tests/CustomBooleanTest.php
+++ b/core/modules/views_ui/src/Tests/CustomBooleanTest.php
@@ -18,7 +18,7 @@ class CustomBooleanTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * \Drupal\views\Tests\ViewTestBase::viewsData().
@@ -47,15 +47,15 @@ public function testCustomOption() {
     $view = Views::getView('test_view');
     $view->setDisplay();
 
-    $view->displayHandlers->get('default')->overrideOption('fields', array(
-      'age' => array(
+    $view->displayHandlers->get('default')->overrideOption('fields', [
+      'age' => [
         'id' => 'age',
         'table' => 'views_test_data',
         'field' => 'age',
         'relationship' => 'none',
         'plugin_id' => 'boolean',
-      ),
-    ));
+      ],
+    ]);
     $view->save();
 
     $this->executeView($view);
@@ -64,35 +64,35 @@ public function testCustomOption() {
     $custom_false = 'Nay';
 
     // Set up some custom value mappings for different types.
-    $custom_values = array(
-      'plain' => array(
+    $custom_values = [
+      'plain' => [
         'true' => $custom_true,
         'false' => $custom_false,
         'test' => 'assertTrue',
-      ),
-      'allowed tag' => array(
+      ],
+      'allowed tag' => [
         'true' => '<p>' . $custom_true . '</p>',
         'false' => '<p>' . $custom_false . '</p>',
         'test' => 'assertTrue',
-      ),
-      'disallowed tag' => array(
+      ],
+      'disallowed tag' => [
         'true' => '<script>' . $custom_true . '</script>',
         'false' => '<script>' . $custom_false . '</script>',
         'test' => 'assertFalse',
-      ),
-    );
+      ],
+    ];
 
     // Run the same tests on each type.
     foreach ($custom_values as $type => $values) {
-      $options = array(
+      $options = [
         'options[type]' => 'custom',
         'options[type_custom_true]' => $values['true'],
         'options[type_custom_false]' => $values['false'],
-      );
+      ];
       $this->drupalPostForm('admin/structure/views/nojs/handler/test_view/default/field/age', $options, 'Apply');
 
       // Save the view.
-      $this->drupalPostForm('admin/structure/views/view/test_view', array(), 'Save');
+      $this->drupalPostForm('admin/structure/views/view/test_view', [], 'Save');
 
       $view = Views::getView('test_view');
       $output = $view->preview();
@@ -136,35 +136,35 @@ public function testCustomOptionTemplate() {
     $custom_false = 'Nay';
 
     // Set up some custom value mappings for different types.
-    $custom_values = array(
-      'plain' => array(
+    $custom_values = [
+      'plain' => [
         'true' => $custom_true,
         'false' => $custom_false,
         'test' => 'assertTrue',
-      ),
-      'allowed tag' => array(
+      ],
+      'allowed tag' => [
         'true' => '<p>' . $custom_true . '</p>',
         'false' => '<p>' . $custom_false . '</p>',
         'test' => 'assertTrue',
-      ),
-      'disallowed tag' => array(
+      ],
+      'disallowed tag' => [
         'true' => '<script>' . $custom_true . '</script>',
         'false' => '<script>' . $custom_false . '</script>',
         'test' => 'assertFalse',
-      ),
-    );
+      ],
+    ];
 
     // Run the same tests on each type.
     foreach ($custom_values as $type => $values) {
-      $options = array(
+      $options = [
         'options[type]' => 'custom',
         'options[type_custom_true]' => $values['true'],
         'options[type_custom_false]' => $values['false'],
-      );
+      ];
       $this->drupalPostForm('admin/structure/views/nojs/handler/test_view/default/field/age', $options, 'Apply');
 
       // Save the view.
-      $this->drupalPostForm('admin/structure/views/view/test_view', array(), 'Save');
+      $this->drupalPostForm('admin/structure/views/view/test_view', [], 'Save');
 
       $view = Views::getView('test_view');
       $output = $view->preview();
diff --git a/core/modules/views_ui/src/Tests/DefaultViewsTest.php b/core/modules/views_ui/src/Tests/DefaultViewsTest.php
index 08fcae8..855cbda 100644
--- a/core/modules/views_ui/src/Tests/DefaultViewsTest.php
+++ b/core/modules/views_ui/src/Tests/DefaultViewsTest.php
@@ -18,7 +18,7 @@ class DefaultViewsTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view_status', 'test_page_display_menu', 'test_page_display_arguments');
+  public static $testViews = ['test_view_status', 'test_page_display_menu', 'test_page_display_arguments'];
 
 
   protected function setUp() {
@@ -55,16 +55,16 @@ function testDefaultViews() {
     // Edit the view and change the title. Make sure that the new title is
     // displayed.
     $new_title = $this->randomMachineName(16);
-    $edit = array('title' => $new_title);
+    $edit = ['title' => $new_title];
     $this->drupalPostForm('admin/structure/views/nojs/display/glossary/page_1/title', $edit, t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/glossary/edit/page_1', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/glossary/edit/page_1', [], t('Save'));
     $this->drupalGet('glossary');
     $this->assertResponse(200);
     $this->assertText($new_title);
 
     // Save another view in the UI.
-    $this->drupalPostForm('admin/structure/views/nojs/display/archive/page_1/title', array(), t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/archive/edit/page_1', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/archive/page_1/title', [], t('Apply'));
+    $this->drupalPostForm('admin/structure/views/view/archive/edit/page_1', [], t('Save'));
 
     // Check there is an enable link. i.e. The view has not been enabled after
     // editing.
@@ -85,19 +85,19 @@ function testDefaultViews() {
     // Duplicate the view and check that the normal schema of duplicated views is used.
     $this->drupalGet('admin/structure/views');
     $this->clickViewsOperationLink(t('Duplicate'), '/glossary');
-    $edit = array(
+    $edit = [
       'id' => 'duplicate_of_glossary',
-    );
-    $this->assertTitle(t('Duplicate of @label | @site-name', array('@label' => 'Glossary', '@site-name' => $this->config('system.site')->get('name'))));
+    ];
+    $this->assertTitle(t('Duplicate of @label | @site-name', ['@label' => 'Glossary', '@site-name' => $this->config('system.site')->get('name')]));
     $this->drupalPostForm(NULL, $edit, t('Duplicate'));
-    $this->assertUrl('admin/structure/views/view/duplicate_of_glossary', array(), 'The normal duplicating name schema is applied.');
+    $this->assertUrl('admin/structure/views/view/duplicate_of_glossary', [], 'The normal duplicating name schema is applied.');
 
     // Duplicate a view and set a custom name.
     $this->drupalGet('admin/structure/views');
     $this->clickViewsOperationLink(t('Duplicate'), '/glossary');
     $random_name = strtolower($this->randomMachineName());
-    $this->drupalPostForm(NULL, array('id' => $random_name), t('Duplicate'));
-    $this->assertUrl("admin/structure/views/view/$random_name", array(), 'The custom view name got saved.');
+    $this->drupalPostForm(NULL, ['id' => $random_name], t('Duplicate'));
+    $this->assertUrl("admin/structure/views/view/$random_name", [], 'The custom view name got saved.');
 
     // Now disable the view, and make sure it stops appearing on the main view
     // listing page but instead goes back to displaying on the disabled views
@@ -129,7 +129,7 @@ function testDefaultViews() {
     $this->drupalGet('admin/structure/views');
     $this->clickViewsOperationLink(t('Delete'), '/glossary/');
     // Submit the confirmation form.
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     // Ensure the view is no longer listed.
     $this->assertUrl('admin/structure/views');
     $this->assertNoLinkByHref($edit_href);
@@ -142,7 +142,7 @@ function testDefaultViews() {
     $this->drupalGet('admin/structure/views');
     $this->clickViewsOperationLink(t('Delete'), 'duplicate_of_glossary');
     // Submit the confirmation form.
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
 
     $this->drupalGet('glossary');
     $this->assertResponse(200);
@@ -150,7 +150,7 @@ function testDefaultViews() {
     $this->drupalGet('admin/structure/views');
     $this->clickViewsOperationLink(t('Delete'), $random_name);
     // Submit the confirmation form.
-    $this->drupalPostForm(NULL, array(), t('Delete'));
+    $this->drupalPostForm(NULL, [], t('Delete'));
     $this->drupalGet('glossary');
     $this->assertResponse(404);
     $this->assertText('Page not found');
@@ -163,10 +163,10 @@ function testSplitListing() {
     // Build a re-usable xpath query.
     $xpath = '//div[@id="views-entity-list"]/div[@class = :status]/table//td/text()[contains(., :title)]';
 
-    $arguments = array(
+    $arguments = [
       ':status' => 'views-list-section enabled',
       ':title' => 'test_view_status',
-    );
+    ];
 
     $this->drupalGet('admin/structure/views');
 
@@ -228,7 +228,7 @@ public function testPathDestination() {
    *   failure. Failure also results in a failed assertion.
    */
   function clickViewsOperationLink($label, $unique_href_part) {
-    $links = $this->xpath('//a[normalize-space(text())=:label]', array(':label' => $label));
+    $links = $this->xpath('//a[normalize-space(text())=:label]', [':label' => $label]);
     foreach ($links as $link_index => $link) {
       $position = strpos($link['href'], $unique_href_part);
       if ($position !== FALSE) {
@@ -236,7 +236,7 @@ function clickViewsOperationLink($label, $unique_href_part) {
         break;
       }
     }
-    $this->assertTrue(isset($index), format_string('Link to "@label" containing @part found.', array('@label' => $label, '@part' => $unique_href_part)));
+    $this->assertTrue(isset($index), format_string('Link to "@label" containing @part found.', ['@label' => $label, '@part' => $unique_href_part]));
     if (isset($index)) {
       return $this->clickLink($label, $index);
     }
diff --git a/core/modules/views_ui/src/Tests/DisplayAttachmentTest.php b/core/modules/views_ui/src/Tests/DisplayAttachmentTest.php
index 9cff06e..480172b 100644
--- a/core/modules/views_ui/src/Tests/DisplayAttachmentTest.php
+++ b/core/modules/views_ui/src/Tests/DisplayAttachmentTest.php
@@ -17,7 +17,7 @@ class DisplayAttachmentTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_attachment_ui');
+  public static $testViews = ['test_attachment_ui'];
 
   /**
    * Tests the attachment UI.
@@ -31,31 +31,31 @@ public function testAttachmentUI() {
     // Display labels should be escaped.
     $this->assertEscaped('<em>Page</em>');
 
-    foreach (array('default', 'page-1') as $display_id) {
-      $this->assertNoFieldChecked("edit-displays-$display_id", format_string('Make sure the @display_id can be marked as attached', array('@display_id' => $display_id)));
+    foreach (['default', 'page-1'] as $display_id) {
+      $this->assertNoFieldChecked("edit-displays-$display_id", format_string('Make sure the @display_id can be marked as attached', ['@display_id' => $display_id]));
     }
 
     // Save the attachments and test the value on the view.
-    $this->drupalPostForm($attachment_display_url, array('displays[page_1]' => 1), t('Apply'));
+    $this->drupalPostForm($attachment_display_url, ['displays[page_1]' => 1], t('Apply'));
     // Options summary should be escaped.
     $this->assertEscaped('<em>Page</em>');
     $this->assertNoRaw('<em>Page</em>');
-    $result = $this->xpath('//a[@id = :id]', array(':id' => 'views-attachment-1-displays'));
+    $result = $this->xpath('//a[@id = :id]', [':id' => 'views-attachment-1-displays']);
     $this->assertEqual($result[0]->attributes()->title, t('Page'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView('test_attachment_ui');
     $view->initDisplay();
-    $this->assertEqual(array_keys(array_filter($view->displayHandlers->get('attachment_1')->getOption('displays'))), array('page_1'), 'The attached displays got saved as expected');
+    $this->assertEqual(array_keys(array_filter($view->displayHandlers->get('attachment_1')->getOption('displays'))), ['page_1'], 'The attached displays got saved as expected');
 
-    $this->drupalPostForm($attachment_display_url, array('displays[default]' => 1, 'displays[page_1]' => 1), t('Apply'));
-    $result = $this->xpath('//a[@id = :id]', array(':id' => 'views-attachment-1-displays'));
+    $this->drupalPostForm($attachment_display_url, ['displays[default]' => 1, 'displays[page_1]' => 1], t('Apply'));
+    $result = $this->xpath('//a[@id = :id]', [':id' => 'views-attachment-1-displays']);
     $this->assertEqual($result[0]->attributes()->title, t('Multiple displays'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView('test_attachment_ui');
     $view->initDisplay();
-    $this->assertEqual(array_keys($view->displayHandlers->get('attachment_1')->getOption('displays')), array('default', 'page_1'), 'The attached displays got saved as expected');
+    $this->assertEqual(array_keys($view->displayHandlers->get('attachment_1')->getOption('displays')), ['default', 'page_1'], 'The attached displays got saved as expected');
   }
 
   /**
@@ -69,21 +69,21 @@ public function testRemoveAttachedDisplay() {
 
     // Open the Page display and create the attachment display.
     $this->drupalGet($path_prefix . '/page_1');
-    $this->drupalPostForm(NULL, array(), 'Add Attachment');
+    $this->drupalPostForm(NULL, [], 'Add Attachment');
     $this->assertText(t('Not defined'), 'The right text appears if there is no attachment selection yet.');
 
     // Attach the Attachment to the Page display.
-    $this->drupalPostForm($attachment_display_url, array('displays[page_1]' => 1), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($attachment_display_url, ['displays[page_1]' => 1], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Open the Page display and mark it as deleted.
     $this->drupalGet($path_prefix . '/page_1');
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-delete', 'Delete Page', 'Make sure there is a delete button on the page display.');
-    $this->drupalPostForm($path_prefix . '/page_1', array(), 'Delete Page');
+    $this->drupalPostForm($path_prefix . '/page_1', [], 'Delete Page');
 
     // Open the attachment display and save it.
     $this->drupalGet($path_prefix . '/attachment_1');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Check that there is no warning for the removed page display.
     $this->assertNoText("Plugin ID &#039;page_1&#039; was not found.");
diff --git a/core/modules/views_ui/src/Tests/DisplayCRUDTest.php b/core/modules/views_ui/src/Tests/DisplayCRUDTest.php
index 1e060dc..e29f0a9 100644
--- a/core/modules/views_ui/src/Tests/DisplayCRUDTest.php
+++ b/core/modules/views_ui/src/Tests/DisplayCRUDTest.php
@@ -16,14 +16,14 @@ class DisplayCRUDTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display');
+  public static $testViews = ['test_display'];
 
   /**
    * Modules to enable
    *
    * @var array
    */
-  public static $modules = array('contextual');
+  public static $modules = ['contextual'];
 
   /**
    * Tests adding a display.
@@ -39,14 +39,14 @@ public function testAddDisplay() {
     $this->drupalGet($path_prefix);
 
     // Add a new display.
-    $this->drupalPostForm(NULL, array(), 'Add Page');
+    $this->drupalPostForm(NULL, [], 'Add Page');
     $this->assertLinkByHref($path_prefix . '/page_1', 0, 'Make sure after adding a display the new display appears in the UI');
 
     $this->assertNoLink('Master*', 'Make sure the master display is not marked as changed.');
     $this->assertLink('Page*', 0, 'Make sure the added display is marked as changed.');
 
-    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/path", array('path' => 'test/path'), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/path", ['path' => 'test/path'], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
   }
 
   /**
@@ -63,22 +63,22 @@ public function testRemoveDisplay() {
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-delete', 'Delete Page', 'Make sure there is a delete button on the page display.');
 
     // Delete the page, so we can test the undo process.
-    $this->drupalPostForm($path_prefix . '/page_1', array(), 'Delete Page');
+    $this->drupalPostForm($path_prefix . '/page_1', [], 'Delete Page');
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-undo-delete', 'Undo delete of Page', 'Make sure there a undo button on the page display after deleting.');
-    $element = $this->xpath('//a[contains(@href, :href) and contains(@class, :class)]', array(':href' => $path_prefix . '/page_1', ':class' => 'views-display-deleted-link'));
+    $element = $this->xpath('//a[contains(@href, :href) and contains(@class, :class)]', [':href' => $path_prefix . '/page_1', ':class' => 'views-display-deleted-link']);
     $this->assertTrue(!empty($element), 'Make sure the display link is marked as to be deleted.');
 
-    $element = $this->xpath('//a[contains(@href, :href) and contains(@class, :class)]', array(':href' => $path_prefix . '/page_1', ':class' => 'views-display-deleted-link'));
+    $element = $this->xpath('//a[contains(@href, :href) and contains(@class, :class)]', [':href' => $path_prefix . '/page_1', ':class' => 'views-display-deleted-link']);
     $this->assertTrue(!empty($element), 'Make sure the display link is marked as to be deleted.');
 
     // Undo the deleting of the display.
-    $this->drupalPostForm($path_prefix . '/page_1', array(), 'Undo delete of Page');
+    $this->drupalPostForm($path_prefix . '/page_1', [], 'Undo delete of Page');
     $this->assertNoFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-undo-delete', 'Undo delete of Page', 'Make sure there is no undo button on the page display after reverting.');
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-delete', 'Delete Page', 'Make sure there is a delete button on the page display after the reverting.');
 
     // Now delete again and save the view.
-    $this->drupalPostForm($path_prefix . '/page_1', array(), 'Delete Page');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($path_prefix . '/page_1', [], 'Delete Page');
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $this->assertNoLinkByHref($path_prefix . '/page_1', 'Make sure there is no display tab for the deleted display.');
 
@@ -86,9 +86,9 @@ public function testRemoveDisplay() {
     $view = $this->randomView();
     $machine_name = 'new_machine_name';
     $path_prefix = 'admin/structure/views/view/' . $view['id'] . '/edit';
-    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/display_id", array('display_id' => $machine_name), 'Apply');
-    $this->drupalPostForm(NULL, array(), 'Delete Page');
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/display_id", ['display_id' => $machine_name], 'Apply');
+    $this->drupalPostForm(NULL, [], 'Delete Page');
+    $this->drupalPostForm(NULL, [], t('Save'));
     $this->assertResponse(200);
     $this->assertNoLinkByHref($path_prefix . '/new_machine_name', 'Make sure there is no display tab for the deleted display.');
   }
@@ -111,24 +111,24 @@ public function testDuplicateDisplay() {
     $path = $view['page[path]'];
 
     $this->drupalGet($path_prefix);
-    $this->drupalPostForm(NULL, array(), 'Duplicate Page');
+    $this->drupalPostForm(NULL, [], 'Duplicate Page');
     $this->assertLinkByHref($path_prefix . '/page_2', 0, 'Make sure after duplicating the new display appears in the UI');
-    $this->assertUrl($path_prefix . '/page_2', array(), 'The user got redirected to the new display.');
+    $this->assertUrl($path_prefix . '/page_2', [], 'The user got redirected to the new display.');
 
     // Set the title and override the css classes.
     $random_title = $this->randomMachineName();
     $random_css = $this->randomMachineName();
-    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_2/title", array('title' => $random_title), t('Apply'));
-    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_2/css_class", array('override[dropdown]' => 'page_2', 'css_class' => $random_css), t('Apply'));
+    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_2/title", ['title' => $random_title], t('Apply'));
+    $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_2/css_class", ['override[dropdown]' => 'page_2', 'css_class' => $random_css], t('Apply'));
 
     // Duplicate as a different display type.
-    $this->drupalPostForm(NULL, array(), 'Duplicate as Block');
+    $this->drupalPostForm(NULL, [], 'Duplicate as Block');
     $this->assertLinkByHref($path_prefix . '/block_1', 0, 'Make sure after duplicating the new display appears in the UI');
-    $this->assertUrl($path_prefix . '/block_1', array(), 'The user got redirected to the new display.');
+    $this->assertUrl($path_prefix . '/block_1', [], 'The user got redirected to the new display.');
     $this->assertText(t('Block settings'));
     $this->assertNoText(t('Page settings'));
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $view = Views::getView($view['id']);
     $view->initDisplay();
 
diff --git a/core/modules/views_ui/src/Tests/DisplayExtenderUITest.php b/core/modules/views_ui/src/Tests/DisplayExtenderUITest.php
index 7e26dff..e8eff0a 100644
--- a/core/modules/views_ui/src/Tests/DisplayExtenderUITest.php
+++ b/core/modules/views_ui/src/Tests/DisplayExtenderUITest.php
@@ -16,13 +16,13 @@ class DisplayExtenderUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the display extender UI.
    */
   public function testDisplayExtenderUI() {
-    $this->config('views.settings')->set('display_extenders', array('display_extender_test'))->save();
+    $this->config('views.settings')->set('display_extenders', ['display_extender_test'])->save();
 
     $view = Views::getView('test_view');
     $view_edit_url = "admin/structure/views/view/{$view->storage->id()}/edit";
@@ -32,9 +32,9 @@ public function testDisplayExtenderUI() {
     $this->assertLinkByHref($display_option_url, 0, 'Make sure the option defined by the test display extender appears in the UI.');
 
     $random_text = $this->randomMachineName();
-    $this->drupalPostForm($display_option_url, array('test_extender_test_option' => $random_text), t('Apply'));
+    $this->drupalPostForm($display_option_url, ['test_extender_test_option' => $random_text], t('Apply'));
     $this->assertLink($random_text);
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $view = Views::getView($view->storage->id());
     $view->initDisplay();
     $display_extender_options = $view->display_handler->getOption('display_extenders');
diff --git a/core/modules/views_ui/src/Tests/DisplayFeedTest.php b/core/modules/views_ui/src/Tests/DisplayFeedTest.php
index 4e7bf8a..d8d0031 100644
--- a/core/modules/views_ui/src/Tests/DisplayFeedTest.php
+++ b/core/modules/views_ui/src/Tests/DisplayFeedTest.php
@@ -15,14 +15,14 @@ class DisplayFeedTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display_feed', 'test_style_opml');
+  public static $testViews = ['test_display_feed', 'test_style_opml'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'aggregator');
+  public static $modules = ['views_ui', 'aggregator'];
 
   /**
    * Tests feed display admin UI.
@@ -55,7 +55,7 @@ protected function checkFeedViewUi($view_name) {
 
     // Load all the options of the checkbox.
     $result = $this->xpath('//div[@id="edit-displays"]/div');
-    $options = array();
+    $options = [];
     foreach ($result as $item) {
       foreach ($item->input->attributes() as $attribute => $value) {
         if ($attribute == 'value') {
@@ -64,10 +64,10 @@ protected function checkFeedViewUi($view_name) {
       }
     }
 
-    $this->assertEqual($options, array('default', 'page'), 'Make sure all displays appears as expected.');
+    $this->assertEqual($options, ['default', 'page'], 'Make sure all displays appears as expected.');
 
     // Post and save this and check the output.
-    $this->drupalPostForm('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays', array('displays[page]' => 'page'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays', ['displays[page]' => 'page'], t('Apply'));
     // Options summary should be escaped.
     $this->assertEscaped('<em>Page</em>');
     $this->assertNoRaw('<em>Page</em>');
@@ -76,7 +76,7 @@ protected function checkFeedViewUi($view_name) {
     $this->assertFieldByXpath('//*[@id="views-feed-1-displays"]', '<em>Page</em>');
 
     // Add the default display, so there should now be multiple displays.
-    $this->drupalPostForm('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays', array('displays[default]' => 'default'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays', ['displays[default]' => 'default'], t('Apply'));
     $this->drupalGet('admin/structure/views/view/' . $view_name . '/edit/feed_1');
     $this->assertFieldByXpath('//*[@id="views-feed-1-displays"]', 'Multiple displays');
   }
diff --git a/core/modules/views_ui/src/Tests/DisplayPathTest.php b/core/modules/views_ui/src/Tests/DisplayPathTest.php
index 8baa506..d1d1732 100644
--- a/core/modules/views_ui/src/Tests/DisplayPathTest.php
+++ b/core/modules/views_ui/src/Tests/DisplayPathTest.php
@@ -21,14 +21,14 @@ protected function setUp() {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('menu_ui');
+  public static $modules = ['menu_ui'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_page_display_menu');
+  public static $testViews = ['test_view', 'test_page_display_menu'];
 
   /**
    * Runs the tests.
@@ -46,9 +46,9 @@ protected function doBasicPathUITest() {
     $this->drupalGet('admin/structure/views/view/test_view');
 
     // Add a new page display and check the appearing text.
-    $this->drupalPostForm(NULL, array(), 'Add Page');
+    $this->drupalPostForm(NULL, [], 'Add Page');
     $this->assertText(t('No path is set'), 'The right text appears if no path was set.');
-    $this->assertNoLink(t('View @display', array('@display' => 'page')), 'No view page link found on the page.');
+    $this->assertNoLink(t('View @display', ['@display' => 'page']), 'No view page link found on the page.');
 
     // Save a path and make sure the summary appears as expected.
     $random_path = $this->randomMachineName();
@@ -56,7 +56,7 @@ protected function doBasicPathUITest() {
     //   longer use Url::fromUri(), and this path will be able to contain ':'.
     $random_path = str_replace(':', '', $random_path);
 
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', array('path' => $random_path), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', ['path' => $random_path], t('Apply'));
     $this->assertText('/' . $random_path, 'The custom path appears in the summary.');
     $display_link_text = t('View @display', ['@display' => 'Page']);
     $this->assertLink($display_link_text, 0, 'view page link found on the page.');
@@ -69,13 +69,13 @@ protected function doBasicPathUITest() {
    */
   public function doPathXssFilterTest() {
     $this->drupalGet('admin/structure/views/view/test_view');
-    $this->drupalPostForm(NULL, array(), 'Add Page');
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_2/path', array('path' => '<object>malformed_path</object>'), t('Apply'));
-    $this->drupalPostForm(NULL, array(), 'Add Page');
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_3/path', array('path' => '<script>alert("hello");</script>'), t('Apply'));
-    $this->drupalPostForm(NULL, array(), 'Add Page');
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_4/path', array('path' => '<script>alert("hello I have placeholders %");</script>'), t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/test_view', array(), t('Save'));
+    $this->drupalPostForm(NULL, [], 'Add Page');
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_2/path', ['path' => '<object>malformed_path</object>'], t('Apply'));
+    $this->drupalPostForm(NULL, [], 'Add Page');
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_3/path', ['path' => '<script>alert("hello");</script>'], t('Apply'));
+    $this->drupalPostForm(NULL, [], 'Add Page');
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_4/path', ['path' => '<script>alert("hello I have placeholders %");</script>'], t('Apply'));
+    $this->drupalPostForm('admin/structure/views/view/test_view', [], t('Save'));
     $this->drupalGet('admin/structure/views');
     // The anchor text should be escaped.
     $this->assertEscaped('/<object>malformed_path</object>');
@@ -92,11 +92,11 @@ public function doPathXssFilterTest() {
   protected function doAdvancedPathsValidationTest() {
     $url = 'admin/structure/views/nojs/display/test_view/page_1/path';
 
-    $this->drupalPostForm($url, array('path' => '%/magrathea'), t('Apply'));
+    $this->drupalPostForm($url, ['path' => '%/magrathea'], t('Apply'));
     $this->assertUrl($url);
     $this->assertText('"%" may not be used for the first segment of a path.');
 
-    $this->drupalPostForm($url, array('path' => 'user/%1/example'), t('Apply'));
+    $this->drupalPostForm($url, ['path' => 'user/%1/example'], t('Apply'));
     $this->assertUrl($url);
     $this->assertText("Numeric placeholders may not be used. Please use plain placeholders (%).");
   }
@@ -106,51 +106,51 @@ protected function doAdvancedPathsValidationTest() {
    */
   public function testDeleteWithNoPath() {
     $this->drupalGet('admin/structure/views/view/test_view');
-    $this->drupalPostForm(NULL, array(), t('Add Page'));
-    $this->drupalPostForm(NULL, array(), t('Delete Page'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
-    $this->assertRaw(t('The view %view has been saved.', array('%view' => 'Test view')));
+    $this->drupalPostForm(NULL, [], t('Add Page'));
+    $this->drupalPostForm(NULL, [], t('Delete Page'));
+    $this->drupalPostForm(NULL, [], t('Save'));
+    $this->assertRaw(t('The view %view has been saved.', ['%view' => 'Test view']));
   }
 
   /**
    * Tests the menu and tab option form.
    */
   public function testMenuOptions() {
-    $this->container->get('module_installer')->install(array('menu_ui'));
+    $this->container->get('module_installer')->install(['menu_ui']);
     $this->drupalGet('admin/structure/views/view/test_view');
 
     // Add a new page display.
-    $this->drupalPostForm(NULL, array(), 'Add Page');
+    $this->drupalPostForm(NULL, [], 'Add Page');
 
     // Add an invalid path (only fragment).
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', array('path' => '#foo'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', ['path' => '#foo'], t('Apply'));
     $this->assertText('Path is empty');
 
     // Add an invalid path with a query.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', array('path' => 'foo?bar'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', ['path' => 'foo?bar'], t('Apply'));
     $this->assertText('No query allowed.');
 
     // Add an invalid path with just a query.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', array('path' => '?bar'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', ['path' => '?bar'], t('Apply'));
     $this->assertText('Path is empty');
 
     // Provide a random, valid path string.
     $random_string = $this->randomMachineName();
 
     // Save a path.
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', array('path' => $random_string), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/path', ['path' => $random_string], t('Apply'));
     $this->drupalGet('admin/structure/views/view/test_view');
 
-    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/menu', array('menu[type]' => 'default tab', 'menu[title]' => 'Test tab title'), t('Apply'));
+    $this->drupalPostForm('admin/structure/views/nojs/display/test_view/page_1/menu', ['menu[type]' => 'default tab', 'menu[title]' => 'Test tab title'], t('Apply'));
     $this->assertResponse(200);
     $this->assertUrl('admin/structure/views/nojs/display/test_view/page_1/tab_options');
 
-    $this->drupalPostForm(NULL, array('tab_options[type]' => 'tab', 'tab_options[title]' => $this->randomString()), t('Apply'));
+    $this->drupalPostForm(NULL, ['tab_options[type]' => 'tab', 'tab_options[title]' => $this->randomString()], t('Apply'));
     $this->assertResponse(200);
     $this->assertUrl('admin/structure/views/view/test_view/edit/page_1');
 
     $this->drupalGet('admin/structure/views/view/test_view');
-    $this->assertLink(t('Tab: @title', array('@title' => 'Test tab title')));
+    $this->assertLink(t('Tab: @title', ['@title' => 'Test tab title']));
     // If it's a default tab, it should also have an additional settings link.
     $this->assertLinkByHref('admin/structure/views/nojs/display/test_view/page_1/tab_options');
 
diff --git a/core/modules/views_ui/src/Tests/DisplayTest.php b/core/modules/views_ui/src/Tests/DisplayTest.php
index 7f5f125..afb2c7f 100644
--- a/core/modules/views_ui/src/Tests/DisplayTest.php
+++ b/core/modules/views_ui/src/Tests/DisplayTest.php
@@ -20,14 +20,14 @@ class DisplayTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_display');
+  public static $testViews = ['test_display'];
 
   /**
    * Modules to enable
    *
    * @var array
    */
-  public static $modules = array('contextual');
+  public static $modules = ['contextual'];
 
   /**
    * Tests adding a display.
@@ -53,9 +53,9 @@ public function testAddDisplay() {
    * Tests reordering of displays.
    */
   public function testReorderDisplay() {
-    $view = array(
+    $view = [
       'block[create]' => TRUE
-    );
+    ];
     $view = $this->randomView($view);
 
     $this->clickLink(t('Reorder displays'));
@@ -64,15 +64,15 @@ public function testReorderDisplay() {
     $this->assertTrue($this->xpath('//tr[@id="display-row-block_1"]'), 'Make sure the block display appears on the reorder listing');
 
     // Ensure the view displays are in the expected order in configuration.
-    $expected_display_order = array('default', 'block_1', 'page_1');
+    $expected_display_order = ['default', 'block_1', 'page_1'];
     $this->assertEqual(array_keys(Views::getView($view['id'])->storage->get('display')), $expected_display_order, 'The correct display names are present.');
     // Put the block display in front of the page display.
-    $edit = array(
+    $edit = [
       'displays[page_1][weight]' => 2,
       'displays[block_1][weight]' => 1
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView($view['id']);
     $displays = $view->storage->get('display');
@@ -92,17 +92,17 @@ public function testDisableDisplay() {
     $path_prefix = 'admin/structure/views/view/' . $view['id'] . '/edit';
 
     $this->drupalGet($path_prefix);
-    $this->assertFalse($this->xpath('//div[contains(@class, :class)]', array(':class' => 'views-display-disabled')), 'Make sure the disabled display css class does not appear after initial adding of a view.');
+    $this->assertFalse($this->xpath('//div[contains(@class, :class)]', [':class' => 'views-display-disabled']), 'Make sure the disabled display css class does not appear after initial adding of a view.');
 
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-disable', '', 'Make sure the disable button is visible.');
     $this->assertNoFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-enable', '', 'Make sure the enable button is not visible.');
-    $this->drupalPostForm(NULL, array(), 'Disable Page');
-    $this->assertTrue($this->xpath('//div[contains(@class, :class)]', array(':class' => 'views-display-disabled')), 'Make sure the disabled display css class appears once the display is marked as such.');
+    $this->drupalPostForm(NULL, [], 'Disable Page');
+    $this->assertTrue($this->xpath('//div[contains(@class, :class)]', [':class' => 'views-display-disabled']), 'Make sure the disabled display css class appears once the display is marked as such.');
 
     $this->assertNoFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-disable', '', 'Make sure the disable button is not visible.');
     $this->assertFieldById('edit-displays-settings-settings-content-tab-content-details-top-actions-enable', '', 'Make sure the enable button is visible.');
-    $this->drupalPostForm(NULL, array(), 'Enable Page');
-    $this->assertFalse($this->xpath('//div[contains(@class, :class)]', array(':class' => 'views-display-disabled')), 'Make sure the disabled display css class does not appears once the display is enabled again.');
+    $this->drupalPostForm(NULL, [], 'Enable Page');
+    $this->assertFalse($this->xpath('//div[contains(@class, :class)]', [':class' => 'views-display-disabled']), 'Make sure the disabled display css class does not appears once the display is enabled again.');
   }
 
   /**
@@ -111,10 +111,10 @@ public function testDisableDisplay() {
   public function testDisplayPluginsAlter() {
     $definitions = Views::pluginManager('display')->getDefinitions();
 
-    $expected = array(
+    $expected = [
       'route_name' => 'entity.view.edit_form',
-      'route_parameters_names' => array('view' => 'id'),
-    );
+      'route_parameters_names' => ['view' => 'id'],
+    ];
 
     // Test the expected views_ui array exists on each definition.
     foreach ($definitions as $definition) {
@@ -136,16 +136,16 @@ public function testDisplayAreas() {
 
     $this->drupalGet('admin/structure/views/view/test_display/edit/display_no_area_test_1');
 
-    $areas = array(
+    $areas = [
       'header',
       'footer',
       'empty',
-    );
+    ];
 
     // Assert that the expected text is found in each area category.
     foreach ($areas as $type) {
-      $element = $this->xpath('//div[contains(@class, :class)]/div', array(':class' => $type));
-      $this->assertEqual((string) $element[0], SafeMarkup::format('The selected display type does not use @type plugins', array('@type' => $type)));
+      $element = $this->xpath('//div[contains(@class, :class)]/div', [':class' => $type]);
+      $this->assertEqual((string) $element[0], SafeMarkup::format('The selected display type does not use @type plugins', ['@type' => $type]));
     }
   }
 
@@ -159,28 +159,28 @@ public function testLinkDisplay() {
 
     // Test the link text displays 'None' and not 'Block 1'
     $this->drupalGet($path);
-    $result = $this->xpath("//a[contains(@href, :path)]", array(':path' => $link_display_path));
+    $result = $this->xpath("//a[contains(@href, :path)]", [':path' => $link_display_path]);
     $this->assertEqual($result[0], t('None'), 'Make sure that the link option summary shows "None" by default.');
 
     $this->drupalGet($link_display_path);
     $this->assertFieldChecked('edit-link-display-0');
 
     // Test the default radio option on the link display form.
-    $this->drupalPostForm($link_display_path, array('link_display' => 'page_1'), t('Apply'));
+    $this->drupalPostForm($link_display_path, ['link_display' => 'page_1'], t('Apply'));
     // The form redirects to the master display.
     $this->drupalGet($path);
 
-    $result = $this->xpath("//a[contains(@href, :path)]", array(':path' => $link_display_path));
+    $result = $this->xpath("//a[contains(@href, :path)]", [':path' => $link_display_path]);
     $this->assertEqual($result[0], 'Page', 'Make sure that the link option summary shows the right linked display.');
 
-    $this->drupalPostForm($link_display_path, array('link_display' => 'custom_url', 'link_url' => 'a-custom-url'), t('Apply'));
+    $this->drupalPostForm($link_display_path, ['link_display' => 'custom_url', 'link_url' => 'a-custom-url'], t('Apply'));
     // The form redirects to the master display.
     $this->drupalGet($path);
 
     $this->assertLink(t('Custom URL'), 0, 'The link option has custom URL as summary.');
 
     // Test the default link_url value for new display
-    $this->drupalPostForm(NULL, array(), t('Add Block'));
+    $this->drupalPostForm(NULL, [], t('Add Block'));
     $this->assertUrl('admin/structure/views/view/test_display/edit/block_2');
     $this->clickLink(t('Custom URL'));
     $this->assertFieldByName('link_url', 'a-custom-url');
@@ -190,7 +190,7 @@ public function testLinkDisplay() {
    * Tests contextual links on Views page displays.
    */
   public function testPageContextualLinks() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer views', 'access contextual links')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views', 'access contextual links']));
     $view = View::load('test_display');
     $view->enable()->save();
     $this->container->get('router.builder')->rebuildIfNeeded();
@@ -200,12 +200,12 @@ public function testPageContextualLinks() {
     $this->drupalGet('test-display');
     $id = 'entity.view.edit_form:view=test_display:location=page&name=test_display&display_id=page_1&langcode=en';
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:assertContextualLinkPlaceHolder()
-    $this->assertRaw('<div' . new Attribute(array('data-contextual-id' => $id)) . '></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $id)));
+    $this->assertRaw('<div' . new Attribute(['data-contextual-id' => $id]) . '></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $id]));
 
     // Get server-rendered contextual links.
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:renderContextualLinks()
-    $post = array('ids[0]' => $id);
-    $response = $this->drupalPostWithFormat('contextual/render', 'json', $post, array('query' => array('destination' => 'test-display')));
+    $post = ['ids[0]' => $id];
+    $response = $this->drupalPostWithFormat('contextual/render', 'json', $post, ['query' => ['destination' => 'test-display']]);
     $this->assertResponse(200);
     $json = Json::decode($response);
     $this->assertIdentical($json[$id], '<ul class="contextual-links"><li class="entityviewedit-form"><a href="' . base_path() . 'admin/structure/views/view/test_display/edit/page_1">Edit view</a></li></ul>');
@@ -217,7 +217,7 @@ public function testPageContextualLinks() {
     $this->drupalGet('test-display');
     $id = 'entity.view.edit_form:view=test_display:location=page&name=test_display&display_id=page_1&langcode=en';
     // @see \Drupal\contextual\Tests\ContextualDynamicContextTest:assertContextualLinkPlaceHolder()
-    $this->assertRaw('<div' . new Attribute(array('data-contextual-id' => $id)) . '></div>', format_string('Contextual link placeholder with id @id exists.', array('@id' => $id)));
+    $this->assertRaw('<div' . new Attribute(['data-contextual-id' => $id]) . '></div>', format_string('Contextual link placeholder with id @id exists.', ['@id' => $id]));
   }
 
   /**
@@ -229,14 +229,14 @@ public function testViewStatus() {
 
     // The view should initially have the enabled class on it's form wrapper.
     $this->drupalGet('admin/structure/views/view/' . $id);
-    $elements = $this->xpath('//div[contains(@class, :edit) and contains(@class, :status)]', array(':edit' => 'views-edit-view', ':status' => 'enabled'));
+    $elements = $this->xpath('//div[contains(@class, :edit) and contains(@class, :status)]', [':edit' => 'views-edit-view', ':status' => 'enabled']);
     $this->assertTrue($elements, 'The enabled class was found on the form wrapper');
 
     $view = Views::getView($id);
     $view->storage->disable()->save();
 
     $this->drupalGet('admin/structure/views/view/' . $id);
-    $elements = $this->xpath('//div[contains(@class, :edit) and contains(@class, :status)]', array(':edit' => 'views-edit-view', ':status' => 'disabled'));
+    $elements = $this->xpath('//div[contains(@class, :edit) and contains(@class, :status)]', [':edit' => 'views-edit-view', ':status' => 'disabled']);
     $this->assertTrue($elements, 'The disabled class was found on the form wrapper.');
   }
 
@@ -278,7 +278,7 @@ public function testActionLinks() {
     $display_title = "'<test>'";
     $this->drupalGet('admin/structure/views/view/test_display');
     $display_title_path = 'admin/structure/views/nojs/display/test_display/block_1/display_title';
-    $this->drupalPostForm($display_title_path, array('display_title' => $display_title), t('Apply'));
+    $this->drupalPostForm($display_title_path, ['display_title' => $display_title], t('Apply'));
 
     // Ensure that the title is escaped as expected.
     $this->assertEscaped($display_title);
diff --git a/core/modules/views_ui/src/Tests/DuplicateTest.php b/core/modules/views_ui/src/Tests/DuplicateTest.php
index a6948f0..1096ab4 100644
--- a/core/modules/views_ui/src/Tests/DuplicateTest.php
+++ b/core/modules/views_ui/src/Tests/DuplicateTest.php
@@ -24,7 +24,7 @@ public function testDuplicateView() {
     $random_view = $this->randomView();
 
     // Initialize array for duplicated view.
-    $view = array();
+    $view = [];
 
     // Generate random label and id for new view.
     $view['label'] = $this->randomMachineName(255);
@@ -34,7 +34,7 @@ public function testDuplicateView() {
     $this->drupalPostForm('admin/structure/views/view/' . $random_view['id'] . '/duplicate', $view, t('Duplicate'));
 
     // Assert that the page url is correct.
-    $this->assertUrl('admin/structure/views/view/' . $view['id'], array(), 'Make sure the view saving was successful and the browser got redirected to the edit page.');
+    $this->assertUrl('admin/structure/views/view/' . $view['id'], [], 'Make sure the view saving was successful and the browser got redirected to the edit page.');
 
     // Assert that the page title is correctly displayed.
     $this->assertText($view['label']);
diff --git a/core/modules/views_ui/src/Tests/ExposedFormUITest.php b/core/modules/views_ui/src/Tests/ExposedFormUITest.php
index 66280b1..d1e3a66 100644
--- a/core/modules/views_ui/src/Tests/ExposedFormUITest.php
+++ b/core/modules/views_ui/src/Tests/ExposedFormUITest.php
@@ -16,12 +16,12 @@ class ExposedFormUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_exposed_admin_ui');
+  public static $testViews = ['test_exposed_admin_ui'];
 
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('node', 'views_ui', 'block', 'taxonomy', 'field_ui', 'datetime');
+  public static $modules = ['node', 'views_ui', 'block', 'taxonomy', 'field_ui', 'datetime'];
 
   /**
    * Array of error message strings raised by the grouped form.
@@ -35,8 +35,8 @@ class ExposedFormUITest extends UITestBase {
   protected function setUp() {
     parent::setUp();
 
-    $this->drupalCreateContentType(array('type' => 'article'));
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'article']);
+    $this->drupalCreateContentType(['type' => 'page']);
 
     // Create some random nodes.
     for ($i = 0; $i < 5; $i++) {
@@ -53,7 +53,7 @@ protected function setUp() {
    * Tests the admin interface of exposed filter and sort items.
    */
   function testExposedAdminUi() {
-    $edit = array();
+    $edit = [];
 
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
     // Be sure that the button is called exposed.
@@ -78,12 +78,12 @@ function testExposedAdminUi() {
     $this->assertFieldById('edit-options-value-article', '', 'Checkbox for Article exists');
 
     // Check the validations of the filter handler.
-    $edit = array();
+    $edit = [];
     $edit['options[expose][identifier]'] = '';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->assertText(t('The identifier is required if the filter is exposed.'));
 
-    $edit = array();
+    $edit = [];
     $edit['options[expose][identifier]'] = 'value';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->assertText(t('This identifier is not allowed.'));
@@ -95,7 +95,7 @@ function testExposedAdminUi() {
 
     // Un-expose the filter.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
-    $this->drupalPostForm(NULL, array(), t('Hide filter'));
+    $this->drupalPostForm(NULL, [], t('Hide filter'));
 
     // After Un-exposing the filter, Operator and Value should be shown again.
     $this->assertFieldById('edit-options-operator-in', '', 'Operator In exists after hide filter');
@@ -104,7 +104,7 @@ function testExposedAdminUi() {
     $this->assertFieldById('edit-options-value-article', '', 'Checkbox for Article exists after hide filter');
 
     // Click the Expose sort button.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/sort/created', $edit, t('Expose sort'));
     // Check the label of the expose button.
     $this->helperButtonHasLabel('edit-options-expose-button-button', t('Hide sort'));
@@ -135,7 +135,7 @@ function testExposedAdminUi() {
    * Tests the admin interface of exposed grouped filters.
    */
   function testGroupedFilterAdminUi() {
-    $edit = array();
+    $edit = [];
 
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
 
@@ -146,7 +146,7 @@ function testGroupedFilterAdminUi() {
 
     // Click the Grouped Filters button.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
-    $this->drupalPostForm(NULL, array(), t('Grouped filters'));
+    $this->drupalPostForm(NULL, [], t('Grouped filters'));
 
     // After click on 'Grouped Filters', the standard operator and value should
     // not be displayed.
@@ -161,7 +161,7 @@ function testGroupedFilterAdminUi() {
 
     // Validate a single entry for a grouped filter.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = 'Is Article';
     $edit["options[group_info][group_items][1][value][article]"] = 'article';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
@@ -170,7 +170,7 @@ function testGroupedFilterAdminUi() {
 
     // Validate multiple entries for grouped filters.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = 'Is Article';
     $edit["options[group_info][group_items][1][value][article]"] = 'article';
     $edit["options[group_info][group_items][2][title]"] = 'Is Page';
@@ -179,28 +179,28 @@ function testGroupedFilterAdminUi() {
     $edit["options[group_info][group_items][3][value][article]"] = 'article';
     $edit["options[group_info][group_items][3][value][page]"] = 'page';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', array(), 'Correct validation of the node type filter.');
+    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', [], 'Correct validation of the node type filter.');
     $this->assertNoGroupedFilterErrors();
 
     // Validate an "is empty" filter -- title without value is valid.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/body_value');
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = 'No body';
     $edit["options[group_info][group_items][1][operator]"] = 'empty';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', array(), 'The "empty" operator validates correctly.');
+    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', [], 'The "empty" operator validates correctly.');
     $this->assertNoGroupedFilterErrors();
 
     // Ensure the string "0" can be used as a value for numeric filters.
-    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_exposed_admin_ui/default/filter', array('name[node_field_data.nid]' => TRUE), t('Add and configure @handler', array('@handler' => t('filter criteria'))));
-    $this->drupalPostForm(NULL, array(), t('Expose filter'));
-    $this->drupalPostForm(NULL, array(), t('Grouped filters'));
-    $edit = array();
+    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_exposed_admin_ui/default/filter', ['name[node_field_data.nid]' => TRUE], t('Add and configure @handler', ['@handler' => t('filter criteria')]));
+    $this->drupalPostForm(NULL, [], t('Expose filter'));
+    $this->drupalPostForm(NULL, [], t('Grouped filters'));
+    $edit = [];
     $edit['options[group_info][group_items][1][title]'] = 'Testing zero';
     $edit['options[group_info][group_items][1][operator]'] = '>';
     $edit['options[group_info][group_items][1][value][value]'] = '0';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', array(), 'A string "0" is a valid value.');
+    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', [], 'A string "0" is a valid value.');
     $this->assertNoGroupedFilterErrors();
 
     // Ensure "between" filters validate correctly.
@@ -210,14 +210,14 @@ function testGroupedFilterAdminUi() {
     $edit['options[group_info][group_items][1][value][min]'] = '0';
     $edit['options[group_info][group_items][1][value][max]'] = '10';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', array(), 'The "between" filter validates correctly.');
+    $this->assertUrl('admin/structure/views/view/test_exposed_admin_ui/edit/default', [], 'The "between" filter validates correctly.');
     $this->assertNoGroupedFilterErrors();
   }
 
   public function testGroupedFilterAdminUiErrors() {
     // Select the empty operator without a title specified.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/body_value');
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = '';
     $edit["options[group_info][group_items][1][operator]"] = 'empty';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
@@ -227,14 +227,14 @@ public function testGroupedFilterAdminUiErrors() {
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type', [], t('Expose filter'));
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type', [], t('Grouped filters'));
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = 'Is Article';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->assertText($this->groupFormUiErrors['missing_value']);
 
     // Specify a value without a title.
     $this->drupalGet('admin/structure/views/nojs/handler/test_exposed_admin_ui/default/filter/type');
-    $edit = array();
+    $edit = [];
     $edit["options[group_info][group_items][1][title]"] = '';
     $edit["options[group_info][group_items][1][value][article]"] = 'article';
     $this->drupalPostForm(NULL, $edit, t('Apply'));
diff --git a/core/modules/views_ui/src/Tests/FieldUITest.php b/core/modules/views_ui/src/Tests/FieldUITest.php
index 8c486d8..4e87323 100644
--- a/core/modules/views_ui/src/Tests/FieldUITest.php
+++ b/core/modules/views_ui/src/Tests/FieldUITest.php
@@ -18,7 +18,7 @@ class FieldUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the UI of field handlers.
@@ -31,7 +31,7 @@ public function testFieldUI() {
 
     // Hides the field and check whether the hidden label is appended.
     $edit_handler_url = 'admin/structure/views/nojs/handler/test_view/default/field/name';
-    $this->drupalPostForm($edit_handler_url, array('options[exclude]' => TRUE), t('Apply'));
+    $this->drupalPostForm($edit_handler_url, ['options[exclude]' => TRUE], t('Apply'));
 
     $this->assertText('Views test: Name [' . t('hidden') . ']');
 
@@ -62,9 +62,9 @@ public function testFieldUI() {
     $this->assertNoLinkByHref($edit_groupby_url, 0, 'No aggregation link found.');
 
     // Enable aggregation on the view.
-    $edit = array(
+    $edit = [
       'group_by' => TRUE,
-    );
+    ];
     $this->drupalPostForm('/admin/structure/views/nojs/display/test_view/default/group_by', $edit, t('Apply'));
 
     $this->assertLinkByHref($edit_groupby_url, 0, 'Aggregation link found.');
@@ -81,7 +81,7 @@ public function testFieldUI() {
   public function testFieldLabel() {
     // Create a view with unformatted style and make sure the fields have no
     // labels by default.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
diff --git a/core/modules/views_ui/src/Tests/FilterBooleanWebTest.php b/core/modules/views_ui/src/Tests/FilterBooleanWebTest.php
index 668cc4c..a3e58d7 100644
--- a/core/modules/views_ui/src/Tests/FilterBooleanWebTest.php
+++ b/core/modules/views_ui/src/Tests/FilterBooleanWebTest.php
@@ -15,22 +15,22 @@ class FilterBooleanWebTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the filter boolean UI.
    */
   public function testFilterBooleanUI() {
-    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_view/default/filter', array('name[views_test_data.status]' => TRUE), t('Add and configure @handler', array('@handler' => t('filter criteria'))));
+    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_view/default/filter', ['name[views_test_data.status]' => TRUE], t('Add and configure @handler', ['@handler' => t('filter criteria')]));
 
     // Check the field widget label. 'title' should be used as a fallback.
     $result = $this->cssSelect('#edit-options-value--wrapper legend span');
     $this->assertEqual((string) $result[0], 'Status');
 
-    $this->drupalPostForm(NULL, array(), t('Expose filter'));
-    $this->drupalPostForm(NULL, array(), t('Grouped filters'));
+    $this->drupalPostForm(NULL, [], t('Expose filter'));
+    $this->drupalPostForm(NULL, [], t('Grouped filters'));
 
-    $edit = array();
+    $edit = [];
     $edit['options[group_info][group_items][1][title]'] = 'Published';
     $edit['options[group_info][group_items][1][operator]'] = '=';
     $edit['options[group_info][group_items][1][value]'] = 1;
@@ -56,7 +56,7 @@ public function testFilterBooleanUI() {
     $this->assertEqual(count($this->cssSelect('a.views-remove-link')), 3);
 
     // Test selecting a default and removing an item.
-    $edit = array();
+    $edit = [];
     $edit['options[group_info][default_group]'] = 2;
     $edit['options[group_info][group_items][3][remove]'] = 1;
     $this->drupalPostForm(NULL, $edit, t('Apply'));
diff --git a/core/modules/views_ui/src/Tests/FilterNumericWebTest.php b/core/modules/views_ui/src/Tests/FilterNumericWebTest.php
index 1964f1e..104d62f 100644
--- a/core/modules/views_ui/src/Tests/FilterNumericWebTest.php
+++ b/core/modules/views_ui/src/Tests/FilterNumericWebTest.php
@@ -18,18 +18,18 @@ class FilterNumericWebTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests the filter numeric UI.
    */
   public function testFilterNumericUI() {
-    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_view/default/filter', array('name[views_test_data.age]' => TRUE), t('Add and configure @handler', array('@handler' => t('filter criteria'))));
+    $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_view/default/filter', ['name[views_test_data.age]' => TRUE], t('Add and configure @handler', ['@handler' => t('filter criteria')]));
 
-    $this->drupalPostForm(NULL, array(), t('Expose filter'));
-    $this->drupalPostForm(NULL, array(), t('Grouped filters'));
+    $this->drupalPostForm(NULL, [], t('Expose filter'));
+    $this->drupalPostForm(NULL, [], t('Grouped filters'));
 
-    $edit = array();
+    $edit = [];
     $edit['options[group_info][group_items][1][title]'] = 'Old';
     $edit['options[group_info][group_items][1][operator]'] = '>';
     $edit['options[group_info][group_items][1][value][value]'] = 27;
@@ -48,17 +48,17 @@ public function testFilterNumericUI() {
       $this->assertFieldByName($name, $value);
     }
 
-    $this->drupalPostForm('admin/structure/views/view/test_view', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/test_view', [], t('Save'));
     $this->assertConfigSchemaByName('views.view.test_view');
 
     // Test that the exposed filter works as expected.
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     $this->assertText('John');
     $this->assertText('Paul');
     $this->assertText('Ringo');
     $this->assertText('George');
     $this->assertText('Meredith');
-    $this->drupalPostForm(NULL, array('age' => '2'), t('Update preview'));
+    $this->drupalPostForm(NULL, ['age' => '2'], t('Update preview'));
     $this->assertText('John');
     $this->assertText('Paul');
     $this->assertNoText('Ringo');
@@ -67,21 +67,21 @@ public function testFilterNumericUI() {
 
     // Change the filter to a single filter to test the schema when the operator
     // is not exposed.
-    $this->drupalPostForm('admin/structure/views/nojs/handler/test_view/default/filter/age', array(), t('Single filter'));
-    $edit = array();
+    $this->drupalPostForm('admin/structure/views/nojs/handler/test_view/default/filter/age', [], t('Single filter'));
+    $edit = [];
     $edit['options[value][value]'] = 25;
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/test_view', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/test_view', [], t('Save'));
     $this->assertConfigSchemaByName('views.view.test_view');
 
     // Test that the filter works as expected.
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     $this->assertText('John');
     $this->assertNoText('Paul');
     $this->assertNoText('Ringo');
     $this->assertNoText('George');
     $this->assertNoText('Meredith');
-    $this->drupalPostForm(NULL, array('age' => '26'), t('Update preview'));
+    $this->drupalPostForm(NULL, ['age' => '26'], t('Update preview'));
     $this->assertNoText('John');
     $this->assertText('Paul');
     $this->assertNoText('Ringo');
@@ -91,17 +91,17 @@ public function testFilterNumericUI() {
     // Change the filter to a 'between' filter to test if the label and
     // description are set for the 'minimum' filter element.
     $this->drupalGet('admin/structure/views/nojs/handler/test_view/default/filter/age');
-    $edit = array();
+    $edit = [];
     $edit['options[expose][label]'] = 'Age between';
     $edit['options[expose][description]'] = 'Description of the exposed filter';
     $edit['options[operator]'] = 'between';
     $edit['options[value][min]'] = 26;
     $edit['options[value][max]'] = 28;
     $this->drupalPostForm(NULL, $edit, t('Apply'));
-    $this->drupalPostForm('admin/structure/views/view/test_view', array(), t('Save'));
+    $this->drupalPostForm('admin/structure/views/view/test_view', [], t('Save'));
     $this->assertConfigSchemaByName('views.view.test_view');
 
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     // Check the max field label.
     $this->assertRaw('<label for="edit-age-max">And</label>', 'Max field label found');
     $this->assertRaw('<label for="edit-age-min">Age between</label>', 'Min field label found');
diff --git a/core/modules/views_ui/src/Tests/FilterUITest.php b/core/modules/views_ui/src/Tests/FilterUITest.php
index 371800f..1197fc6 100644
--- a/core/modules/views_ui/src/Tests/FilterUITest.php
+++ b/core/modules/views_ui/src/Tests/FilterUITest.php
@@ -17,21 +17,21 @@ class FilterUITest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_filter_in_operator_ui', 'test_filter_groups');
+  public static $testViews = ['test_filter_in_operator_ui', 'test_filter_groups'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'node');
+  public static $modules = ['views_ui', 'node'];
 
   /**
    * {@inheritdoc}
    */
   protected function setUp() {
     parent::setUp();
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->enableViewsTestModule();
   }
 
@@ -39,7 +39,7 @@ protected function setUp() {
    * Tests that an option for a filter is saved as expected from the UI.
    */
   public function testFilterInOperatorUi() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     $path = 'admin/structure/views/nojs/handler/test_filter_in_operator_ui/default/filter/type';
@@ -48,9 +48,9 @@ public function testFilterInOperatorUi() {
     $this->assertFieldByName('options[expose][reduce]', FALSE);
 
     // Select "Limit list to selected items" option and apply.
-    $edit = array(
+    $edit = [
       'options[expose][reduce]' => TRUE,
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
 
     // Verifies that the option was saved as expected.
@@ -62,7 +62,7 @@ public function testFilterInOperatorUi() {
    * Tests the filters from the UI.
    */
   public function testFiltersUI() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
 
     $this->drupalGet('admin/structure/views/view/test_filter_groups');
@@ -94,28 +94,28 @@ public function testFiltersUI() {
    * Tests the identifier settings and restrictions.
    */
   public function testFilterIdentifier() {
-    $admin_user = $this->drupalCreateUser(array('administer views', 'administer site configuration'));
+    $admin_user = $this->drupalCreateUser(['administer views', 'administer site configuration']);
     $this->drupalLogin($admin_user);
     $path = 'admin/structure/views/nojs/handler/test_filter_in_operator_ui/default/filter/type';
 
     // Set an empty identifier.
-    $edit = array(
+    $edit = [
       'options[expose][identifier]' => '',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
     $this->assertText('The identifier is required if the filter is exposed.');
 
     // Set the identifier to 'value'.
-    $edit = array(
+    $edit = [
       'options[expose][identifier]' => 'value',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
     $this->assertText('This identifier is not allowed.');
 
     // Set the identifier to a value with a restricted character.
-    $edit = array(
+    $edit = [
       'options[expose][identifier]' => 'value value',
-    );
+    ];
     $this->drupalPostForm($path, $edit, t('Apply'));
     $this->assertText('This identifier has illegal characters.');
   }
diff --git a/core/modules/views_ui/src/Tests/GroupByTest.php b/core/modules/views_ui/src/Tests/GroupByTest.php
index 8d0ae3a..1bf8f01 100644
--- a/core/modules/views_ui/src/Tests/GroupByTest.php
+++ b/core/modules/views_ui/src/Tests/GroupByTest.php
@@ -14,7 +14,7 @@ class GroupByTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_views_groupby_save');
+  public static $testViews = ['test_views_groupby_save'];
 
   /**
    * Tests whether basic saving works.
@@ -28,18 +28,18 @@ function testGroupBySave() {
     $this->assertNoLinkByHref($edit_groupby_url, 0, 'No aggregation link found.');
 
     // Enable aggregation on the view.
-    $edit = array(
+    $edit = [
       'group_by' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_views_groupby_save/default/group_by', $edit, t('Apply'));
 
     $this->assertLinkByHref($edit_groupby_url, 0, 'Aggregation link found.');
 
     // Change the groupby type in the UI.
-    $this->drupalPostForm($edit_groupby_url, array('options[group_type]' => 'count'), t('Apply'));
+    $this->drupalPostForm($edit_groupby_url, ['options[group_type]' => 'count'], t('Apply'));
     $this->assertLink('COUNT(Views test: ID)', 0, 'The count setting is displayed in the UI');
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = $this->container->get('entity.manager')->getStorage('view')->load('test_views_groupby_save');
     $display = $view->getDisplay('default');
diff --git a/core/modules/views_ui/src/Tests/HandlerTest.php b/core/modules/views_ui/src/Tests/HandlerTest.php
index bc61a37..8fb29f9 100644
--- a/core/modules/views_ui/src/Tests/HandlerTest.php
+++ b/core/modules/views_ui/src/Tests/HandlerTest.php
@@ -19,14 +19,14 @@ class HandlerTest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('node_test_views');
+  public static $modules = ['node_test_views'];
 
   /**
    * Views used by this test.
    *
    * @var array
    */
-  public static $testViews = array('test_view_empty', 'test_view_broken', 'node', 'test_node_view');
+  public static $testViews = ['test_view_empty', 'test_view_broken', 'node', 'test_node_view'];
 
   /**
    * {@inheritdoc}
@@ -35,7 +35,7 @@ protected function setUp() {
     parent::setUp();
 
     $this->drupalPlaceBlock('page_title_block');
-    ViewTestData::createTestViews(get_class($this), array('node_test_views'));
+    ViewTestData::createTestViews(get_class($this), ['node_test_views']);
   }
 
   /**
@@ -46,13 +46,13 @@ protected function setUp() {
   protected function schemaDefinition() {
     $schema = parent::schemaDefinition();
 
-    $schema['views_test_data']['fields']['uid'] = array(
+    $schema['views_test_data']['fields']['uid'] = [
       'description' => "The {users}.uid of the author of the beatle entry.",
       'type' => 'int',
       'unsigned' => TRUE,
       'not null' => TRUE,
       'default' => 0
-    );
+    ];
 
     return $schema;
   }
@@ -66,15 +66,15 @@ protected function schemaDefinition() {
    */
   protected function viewsData() {
     $data = parent::viewsData();
-    $data['views_test_data']['uid'] = array(
+    $data['views_test_data']['uid'] = [
       'title' => t('UID'),
       'help' => t('The test data UID'),
-      'relationship' => array(
+      'relationship' => [
         'id' => 'standard',
         'base' => 'users_field_data',
         'base field' => 'uid'
-      )
-    );
+      ]
+    ];
 
     // Create a dummy field with no help text.
     $data['views_test_data']['no_help'] = $data['views_test_data']['name'];
@@ -95,43 +95,43 @@ public function testUICRUD() {
       $add_handler_url = "admin/structure/views/nojs/add-handler/test_view_empty/default/$type";
 
       // Area handler types need to use a different handler.
-      if (in_array($type, array('header', 'footer', 'empty'))) {
-        $this->drupalPostForm($add_handler_url, array('name[views.area]' => TRUE), t('Add and configure @handler', array('@handler' => $type_info['ltitle'])));
+      if (in_array($type, ['header', 'footer', 'empty'])) {
+        $this->drupalPostForm($add_handler_url, ['name[views.area]' => TRUE], t('Add and configure @handler', ['@handler' => $type_info['ltitle']]));
         $id = 'area';
         $edit_handler_url = "admin/structure/views/nojs/handler/test_view_empty/default/$type/$id";
       }
       elseif ($type == 'relationship') {
-        $this->drupalPostForm($add_handler_url, array('name[views_test_data.uid]' => TRUE), t('Add and configure @handler', array('@handler' => $type_info['ltitle'])));
+        $this->drupalPostForm($add_handler_url, ['name[views_test_data.uid]' => TRUE], t('Add and configure @handler', ['@handler' => $type_info['ltitle']]));
         $id = 'uid';
         $edit_handler_url = "admin/structure/views/nojs/handler/test_view_empty/default/$type/$id";
       }
       else {
-        $this->drupalPostForm($add_handler_url, array('name[views_test_data.job]' => TRUE), t('Add and configure @handler', array('@handler' => $type_info['ltitle'])));
+        $this->drupalPostForm($add_handler_url, ['name[views_test_data.job]' => TRUE], t('Add and configure @handler', ['@handler' => $type_info['ltitle']]));
         $id = 'job';
         $edit_handler_url = "admin/structure/views/nojs/handler/test_view_empty/default/$type/$id";
       }
 
-      $this->assertUrl($edit_handler_url, array(), 'The user got redirected to the handler edit form.');
+      $this->assertUrl($edit_handler_url, [], 'The user got redirected to the handler edit form.');
       $random_label = $this->randomMachineName();
-      $this->drupalPostForm(NULL, array('options[admin_label]' => $random_label), t('Apply'));
+      $this->drupalPostForm(NULL, ['options[admin_label]' => $random_label], t('Apply'));
 
-      $this->assertUrl('admin/structure/views/view/test_view_empty/edit/default', array(), 'The user got redirected to the views edit form.');
+      $this->assertUrl('admin/structure/views/view/test_view_empty/edit/default', [], 'The user got redirected to the views edit form.');
 
       $this->assertLinkByHref($edit_handler_url, 0, 'The handler edit link appears in the UI.');
-      $links = $this->xpath('//a[starts-with(normalize-space(text()), :label)]', array(':label' => $random_label));
+      $links = $this->xpath('//a[starts-with(normalize-space(text()), :label)]', [':label' => $random_label]);
       $this->assertTrue(isset($links[0]), 'The handler edit link has the right label');
 
       // Save the view and have a look whether the handler was added as expected.
-      $this->drupalPostForm(NULL, array(), t('Save'));
+      $this->drupalPostForm(NULL, [], t('Save'));
       $view = $this->container->get('entity.manager')->getStorage('view')->load('test_view_empty');
       $display = $view->getDisplay('default');
       $this->assertTrue(isset($display['display_options'][$type_info['plural']][$id]), 'Ensure the field was added to the view itself.');
 
       // Remove the item and check that it's removed
-      $this->drupalPostForm($edit_handler_url, array(), t('Remove'));
+      $this->drupalPostForm($edit_handler_url, [], t('Remove'));
       $this->assertNoLinkByHref($edit_handler_url, 0, 'The handler edit link does not appears in the UI after removing.');
 
-      $this->drupalPostForm(NULL, array(), t('Save'));
+      $this->drupalPostForm(NULL, [], t('Save'));
       $view = $this->container->get('entity.manager')->getStorage('view')->load('test_view_empty');
       $display = $view->getDisplay('default');
       $this->assertFalse(isset($display['display_options'][$type_info['plural']][$id]), 'Ensure the field was removed from the view itself.');
@@ -140,19 +140,19 @@ public function testUICRUD() {
     // Test adding a field of the user table using the uid relationship.
     $type_info = $handler_types['relationship'];
     $add_handler_url = "admin/structure/views/nojs/add-handler/test_view_empty/default/relationship";
-    $this->drupalPostForm($add_handler_url, array('name[views_test_data.uid]' => TRUE), t('Add and configure @handler', array('@handler' => $type_info['ltitle'])));
+    $this->drupalPostForm($add_handler_url, ['name[views_test_data.uid]' => TRUE], t('Add and configure @handler', ['@handler' => $type_info['ltitle']]));
 
     $add_handler_url = "admin/structure/views/nojs/add-handler/test_view_empty/default/field";
     $type_info = $handler_types['field'];
-    $this->drupalPostForm($add_handler_url, array('name[users_field_data.name]' => TRUE), t('Add and configure @handler', array('@handler' => $type_info['ltitle'])));
+    $this->drupalPostForm($add_handler_url, ['name[users_field_data.name]' => TRUE], t('Add and configure @handler', ['@handler' => $type_info['ltitle']]));
     $id = 'name';
     $edit_handler_url = "admin/structure/views/nojs/handler/test_view_empty/default/field/$id";
 
-    $this->assertUrl($edit_handler_url, array(), 'The user got redirected to the handler edit form.');
+    $this->assertUrl($edit_handler_url, [], 'The user got redirected to the handler edit form.');
     $this->assertFieldByName('options[relationship]', 'uid', 'Ensure the relationship select is filled with the UID relationship.');
-    $this->drupalPostForm(NULL, array(), t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Apply'));
 
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
     $view = $this->container->get('entity.manager')->getStorage('view')->load('test_view_empty');
     $display = $view->getDisplay('default');
     $this->assertTrue(isset($display['display_options'][$type_info['plural']][$id]), 'Ensure the field was added to the view itself.');
@@ -203,8 +203,8 @@ public function testBrokenHandlers() {
 
       $href = "admin/structure/views/nojs/handler/test_view_broken/default/$type/id_broken";
 
-      $result = $this->xpath('//a[contains(@href, :href)]', array(':href' => $href));
-      $this->assertEqual(count($result), 1, SafeMarkup::format('Handler (%type) edit link found.', array('%type' => $type)));
+      $result = $this->xpath('//a[contains(@href, :href)]', [':href' => $href]);
+      $this->assertEqual(count($result), 1, SafeMarkup::format('Handler (%type) edit link found.', ['%type' => $type]));
 
       $text = 'Broken/missing handler';
 
@@ -223,7 +223,7 @@ public function testBrokenHandlers() {
       ];
 
       foreach ($original_configuration as $key => $value) {
-        $this->assertText(SafeMarkup::format('@key: @value', array('@key' => $key, '@value' => $value)));
+        $this->assertText(SafeMarkup::format('@key: @value', ['@key' => $key, '@value' => $value]));
       }
     }
   }
diff --git a/core/modules/views_ui/src/Tests/NewViewConfigSchemaTest.php b/core/modules/views_ui/src/Tests/NewViewConfigSchemaTest.php
index a01e24b..3318f0b 100644
--- a/core/modules/views_ui/src/Tests/NewViewConfigSchemaTest.php
+++ b/core/modules/views_ui/src/Tests/NewViewConfigSchemaTest.php
@@ -16,16 +16,16 @@ class NewViewConfigSchemaTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'node', 'comment', 'file', 'taxonomy', 'dblog', 'aggregator');
+  public static $modules = ['views_ui', 'node', 'comment', 'file', 'taxonomy', 'dblog', 'aggregator'];
 
   /**
    * Tests creating brand new views.
    */
   public function testNewViews() {
-    $this->drupalLogin($this->drupalCreateUser(array('administer views')));
+    $this->drupalLogin($this->drupalCreateUser(['administer views']));
 
     // Create views with all core Views wizards.
-    $wizards = array(
+    $wizards = [
       // Wizard with their own classes.
       'node',
       'node_revision',
@@ -37,9 +37,9 @@ public function testNewViews() {
       // Standard derivative classes.
       'standard:aggregator_feed',
       'standard:aggregator_item',
-    );
+    ];
     foreach ($wizards as $wizard_key) {
-      $edit = array();
+      $edit = [];
       $edit['label'] = $this->randomString();
       $edit['id'] = strtolower($this->randomMachineName());
       $edit['show[wizard_key]'] = $wizard_key;
diff --git a/core/modules/views_ui/src/Tests/OverrideDisplaysTest.php b/core/modules/views_ui/src/Tests/OverrideDisplaysTest.php
index 98576ad..fdd73e1 100644
--- a/core/modules/views_ui/src/Tests/OverrideDisplaysTest.php
+++ b/core/modules/views_ui/src/Tests/OverrideDisplaysTest.php
@@ -33,15 +33,15 @@ function testOverrideDisplays() {
     // same (empty) title in the views wizard, we expect the wizard to have set
     // things up so that they both inherit from the default display, and we
     // therefore only need to change that to have it take effect for both.
-    $edit = array();
+    $edit = [];
     $edit['title'] = $original_title = $this->randomMachineName(16);
     $edit['override[dropdown]'] = 'default';
     $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/title", $edit, t('Apply'));
-    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", [], t('Save'));
 
     // Add a node that will appear in the view, so that the block will actually
     // be displayed.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->drupalCreateNode();
 
     // Make sure the title appears in the page.
@@ -63,11 +63,11 @@ function testOverrideDisplays() {
 
     // Change the title for the page display only, and make sure that the
     // original title still appears on the page.
-    $edit = array();
+    $edit = [];
     $edit['title'] = $new_title = $this->randomMachineName(16);
     $edit['override[dropdown]'] = 'page_1';
     $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/title", $edit, t('Apply'));
-    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", [], t('Save'));
     $this->drupalGet($view_path);
     $this->assertResponse(200);
     $this->assertText($new_title);
@@ -95,7 +95,7 @@ function testWizardMixedDefaultOverriddenDisplays() {
 
     // Add a node that will appear in the view, so that the block will actually
     // be displayed.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     $this->drupalCreateNode();
 
     // Make sure that the feed, page and block all start off with the correct
@@ -117,14 +117,14 @@ function testWizardMixedDefaultOverriddenDisplays() {
     // Put the block into the first sidebar region, and make sure it will not
     // display on the view's page display (since we will be searching for the
     // presence/absence of the view's title in both the page and the block).
-    $this->drupalPlaceBlock("views_block:{$view['id']}-block_1", array(
-      'visibility' => array(
-        'request_path' => array(
+    $this->drupalPlaceBlock("views_block:{$view['id']}-block_1", [
+      'visibility' => [
+        'request_path' => [
           'pages' => '/' . $view['page[path]'],
           'negate' => TRUE,
-        ),
-      ),
-    ));
+        ],
+      ],
+    ]);
 
     $this->drupalGet('');
     $this->assertText($view['block[title]']);
@@ -132,10 +132,10 @@ function testWizardMixedDefaultOverriddenDisplays() {
 
     // Edit the page and change the title. This should automatically change
     // the feed's title also, but not the block.
-    $edit = array();
+    $edit = [];
     $edit['title'] = $new_default_title = $this->randomMachineName(16);
     $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/page_1/title", $edit, t('Apply'));
-    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/page_1", [], t('Save'));
     $this->drupalGet($view['page[path]']);
     $this->assertResponse(200);
     $this->assertText($new_default_title);
@@ -153,10 +153,10 @@ function testWizardMixedDefaultOverriddenDisplays() {
 
     // Edit the block and change the title. This should automatically change
     // the block title only, and leave the defaults alone.
-    $edit = array();
+    $edit = [];
     $edit['title'] = $new_block_title = $this->randomMachineName(16);
     $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/block_1/title", $edit, t('Apply'));
-    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/block_1", array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/block_1", [], t('Save'));
     $this->drupalGet($view['page[path]']);
     $this->assertResponse(200);
     $this->assertText($new_default_title);
@@ -187,12 +187,12 @@ function testRevertAllDisplays() {
 
     // Revert the title of the block to the default ones, but submit some new
     // values to be sure that the new value is not stored.
-    $edit = array();
+    $edit = [];
     $edit['title'] = $new_block_title = $this->randomMachineName();
     $edit['override[dropdown]'] = 'default_revert';
 
     $this->drupalPostForm("admin/structure/views/nojs/display/{$view['id']}/block_1/title", $edit, t('Apply'));
-    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/block_1", array(), t('Save'));
+    $this->drupalPostForm("admin/structure/views/view/{$view['id']}/edit/block_1", [], t('Save'));
     $this->assertText($view['page[title]']);
   }
 
diff --git a/core/modules/views_ui/src/Tests/PreviewTest.php b/core/modules/views_ui/src/Tests/PreviewTest.php
index d2dcd12..48e0ada 100644
--- a/core/modules/views_ui/src/Tests/PreviewTest.php
+++ b/core/modules/views_ui/src/Tests/PreviewTest.php
@@ -17,23 +17,23 @@ class PreviewTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_preview', 'test_preview_error', 'test_pager_full', 'test_mini_pager', 'test_click_sort');
+  public static $testViews = ['test_preview', 'test_preview_error', 'test_pager_full', 'test_mini_pager', 'test_click_sort'];
 
   /**
    * Tests contextual links in the preview form.
    */
   public function testPreviewContextual() {
-    \Drupal::service('module_installer')->install(array('contextual'));
+    \Drupal::service('module_installer')->install(['contextual']);
     $this->resetAll();
 
     $this->drupalGet('admin/structure/views/view/test_preview/edit');
     $this->assertResponse(200);
-    $this->drupalPostForm(NULL, $edit = array(), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = [], t('Update preview'));
 
-    $elements = $this->xpath('//div[@id="views-live-preview"]//ul[contains(@class, :ul-class)]/li[contains(@class, :li-class)]', array(':ul-class' => 'contextual-links', ':li-class' => 'filter-add'));
+    $elements = $this->xpath('//div[@id="views-live-preview"]//ul[contains(@class, :ul-class)]/li[contains(@class, :li-class)]', [':ul-class' => 'contextual-links', ':li-class' => 'filter-add']);
     $this->assertEqual(count($elements), 1, 'The contextual link to add a new field is shown.');
 
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '100'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '100'], t('Update preview'));
 
     // Test that area text and exposed filters are present and rendered.
     $this->assertFieldByName('id', NULL, 'ID exposed filter field found.');
@@ -49,19 +49,19 @@ function testPreviewUI() {
     $this->drupalGet('admin/structure/views/view/test_preview/edit');
     $this->assertResponse(200);
 
-    $this->drupalPostForm(NULL, $edit = array(), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = [], t('Update preview'));
 
     $elements = $this->xpath('//div[@class = "view-content"]/div[contains(@class, views-row)]');
     $this->assertEqual(count($elements), 5);
 
     // Filter just the first result.
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '1'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '1'], t('Update preview'));
 
     $elements = $this->xpath('//div[@class = "view-content"]/div[contains(@class, views-row)]');
     $this->assertEqual(count($elements), 1);
 
     // Filter for no results.
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '100'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '100'], t('Update preview'));
 
     $elements = $this->xpath('//div[@class = "view-content"]/div[contains(@class, views-row)]');
     $this->assertEqual(count($elements), 0);
@@ -73,7 +73,7 @@ function testPreviewUI() {
     $this->assertText('Test empty text', 'Rendered empty text found.');
 
     // Test feed preview.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['page[create]'] = 1;
@@ -83,7 +83,7 @@ function testPreviewUI() {
     $view['page[feed_properties][path]'] = $this->randomMachineName(16);
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
     $this->clickLink(t('Feed'));
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     $result = $this->xpath('//div[@id="views-live-preview"]/pre');
     $this->assertTrue(strpos($result[0], '<title>' . $view['page[title]'] . '</title>'), 'The Feed RSS preview was rendered.');
 
@@ -92,7 +92,7 @@ function testPreviewUI() {
     $settings = \Drupal::configFactory()->getEditable('views.settings');
     $settings->set('ui.show.performance_statistics', TRUE)->save();
     $this->drupalGet('admin/structure/views/view/test_preview/edit');
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '100'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '100'], t('Update preview'));
     $this->assertText(t('Query build time'));
     $this->assertText(t('Query execute time'));
     $this->assertText(t('View render time'));
@@ -100,7 +100,7 @@ function testPreviewUI() {
 
     // Statistics and query.
     $settings->set('ui.show.sql_query.enabled', TRUE)->save();
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '100'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '100'], t('Update preview'));
     $this->assertText(t('Query build time'));
     $this->assertText(t('Query execute time'));
     $this->assertText(t('View render time'));
@@ -112,7 +112,7 @@ function testPreviewUI() {
 
     // Test that statistics and query rendered below the preview.
     $settings->set('ui.show.sql_query.where', 'below')->save();
-    $this->drupalPostForm(NULL, $edit = array('view_args' => '100'), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = ['view_args' => '100'], t('Update preview'));
     $this->assertTrue(strpos($this->getRawContent(), 'view-test-preview') < strpos($this->getRawContent(), 'views-query-info'), 'Statistics shown below the preview.');
   }
 
@@ -124,7 +124,7 @@ function testPreviewUI() {
    * @see https://www.drupal.org/node/2452659
    */
   public function testTaxonomyAJAX() {
-    \Drupal::service('module_installer')->install(array('taxonomy'));
+    \Drupal::service('module_installer')->install(['taxonomy']);
     $this->getPreviewAJAX('taxonomy_term', 'page_1', 0);
   }
 
@@ -134,7 +134,7 @@ public function testTaxonomyAJAX() {
   public function testPreviewWithPagersUI() {
 
     // Create 11 nodes and make sure that everyone is returned.
-    $this->drupalCreateContentType(array('type' => 'page'));
+    $this->drupalCreateContentType(['type' => 'page']);
     for ($i = 0; $i < 11; $i++) {
       $this->drupalCreateNode();
     }
@@ -143,7 +143,7 @@ public function testPreviewWithPagersUI() {
     $this->getPreviewAJAX('test_pager_full', 'default', 5);
 
     // Test that the pager is present and rendered.
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Full pager found.');
 
     // Verify elements and links to pages.
@@ -165,11 +165,11 @@ public function testPreviewWithPagersUI() {
     $this->assertTrue($elements[4]->a, 'Link to last page found.');
 
     // Navigate to next page.
-    $elements = $this->xpath('//li[contains(@class, :class)]/a', array(':class' => 'pager__item--next'));
+    $elements = $this->xpath('//li[contains(@class, :class)]/a', [':class' => 'pager__item--next']);
     $this->clickPreviewLinkAJAX($elements[0]['href'], 5);
 
     // Test that the pager is present and rendered.
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Full pager found.');
 
     // Verify elements and links to pages.
@@ -201,7 +201,7 @@ public function testPreviewWithPagersUI() {
     $this->getPreviewAJAX('test_mini_pager', 'default', 3);
 
     // Test that the pager is present and rendered.
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Mini pager found.');
 
     // Verify elements and links to pages.
@@ -213,11 +213,11 @@ public function testPreviewWithPagersUI() {
     $this->assertTrue($elements[1]->a, 'Link to next page found.');
 
     // Navigate to next page.
-    $elements = $this->xpath('//li[contains(@class, :class)]/a', array(':class' => 'pager__item--next'));
+    $elements = $this->xpath('//li[contains(@class, :class)]/a', [':class' => 'pager__item--next']);
     $this->clickPreviewLinkAJAX($elements[0]['href'], 3);
 
     // Test that the pager is present and rendered.
-    $elements = $this->xpath('//ul[contains(@class, :class)]/li', array(':class' => 'pager__items'));
+    $elements = $this->xpath('//ul[contains(@class, :class)]/li', [':class' => 'pager__items']);
     $this->assertTrue(!empty($elements), 'Mini pager found.');
 
     // Verify elements and links to pages.
@@ -237,17 +237,17 @@ public function testPreviewWithPagersUI() {
    * Tests the additional information query info area.
    */
   public function testPreviewAdditionalInfo() {
-    \Drupal::service('module_installer')->install(array('views_ui_test'));
+    \Drupal::service('module_installer')->install(['views_ui_test']);
     $this->resetAll();
 
     $this->drupalGet('admin/structure/views/view/test_preview/edit');
     $this->assertResponse(200);
 
-    $this->drupalPostForm(NULL, $edit = array(), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = [], t('Update preview'));
 
     // Check for implementation of hook_views_preview_info_alter().
     // @see views_ui_test.module
-    $elements = $this->xpath('//div[@id="views-live-preview"]/div[contains(@class, views-query-info)]//td[text()=:text]', array(':text' => t('Test row count')));
+    $elements = $this->xpath('//div[@id="views-live-preview"]/div[contains(@class, views-query-info)]//td[text()=:text]', [':text' => t('Test row count')]);
     $this->assertEqual(count($elements), 1, 'Views Query Preview Info area altered.');
     // Check that additional assets are attached.
     $this->assertTrue(strpos($this->getDrupalSettings()['ajaxPageState']['libraries'], 'views_ui_test/views_ui_test.test') !== FALSE, 'Attached library found.');
@@ -261,7 +261,7 @@ public function testPreviewError() {
     $this->drupalGet('admin/structure/views/view/test_preview_error/edit');
     $this->assertResponse(200);
 
-    $this->drupalPostForm(NULL, $edit = array(), t('Update preview'));
+    $this->drupalPostForm(NULL, $edit = [], t('Update preview'));
 
     $this->assertText('Unable to preview due to validation errors.', 'Preview error text found.');
   }
@@ -275,7 +275,7 @@ public function testPreviewSortLink() {
     $this->getPreviewAJAX('test_click_sort', 'page_1', 0);
 
     // Test that the header label is present.
-    $elements = $this->xpath('//th[contains(@class, :class)]/a', array(':class' => 'views-field views-field-name'));
+    $elements = $this->xpath('//th[contains(@class, :class)]/a', [':class' => 'views-field views-field-name']);
     $this->assertTrue(!empty($elements), 'The header label is present.');
 
     // Verify link.
@@ -285,7 +285,7 @@ public function testPreviewSortLink() {
     $this->clickPreviewLinkAJAX($elements[0]['href'], 0);
 
     // Test that the header label is present.
-    $elements = $this->xpath('//th[contains(@class, :class)]/a', array(':class' => 'views-field views-field-name is-active'));
+    $elements = $this->xpath('//th[contains(@class, :class)]/a', [':class' => 'views-field views-field-name is-active']);
     $this->assertTrue(!empty($elements), 'The header label is present.');
 
     // Verify link.
@@ -304,7 +304,7 @@ public function testPreviewSortLink() {
    */
   protected function getPreviewAJAX($view_name, $panel_id, $row_count) {
     $this->drupalGet('admin/structure/views/view/' . $view_name . '/preview/' . $panel_id);
-    $result = $this->drupalPostAjaxForm(NULL, array(), array('op' => t('Update preview')));
+    $result = $this->drupalPostAjaxForm(NULL, [], ['op' => t('Update preview')]);
     $this->assertPreviewAJAX($result, $row_count);
   }
 
@@ -319,12 +319,12 @@ protected function getPreviewAJAX($view_name, $panel_id, $row_count) {
   protected function clickPreviewLinkAJAX($url, $row_count) {
     $content = $this->content;
     $drupal_settings = $this->drupalSettings;
-    $ajax_settings = array(
+    $ajax_settings = [
       'wrapper' => 'views-preview-wrapper',
       'method' => 'replaceWith',
-    );
+    ];
     $url = $this->getAbsoluteUrl($url);
-    $post = array('js' => 'true') + $this->getAjaxPageStatePostData();
+    $post = ['js' => 'true'] + $this->getAjaxPageStatePostData();
     $result = Json::decode($this->drupalPost($url, '', $post, ['query' => [MainContentViewSubscriber::WRAPPER_FORMAT => 'drupal_ajax']]));
     if (!empty($result)) {
       $this->drupalProcessAjaxResponse($content, $result, $ajax_settings, $drupal_settings);
@@ -343,7 +343,7 @@ protected function clickPreviewLinkAJAX($url, $row_count) {
   protected function assertPreviewAJAX($result, $row_count) {
     // Has AJAX callback replied with an insert command? If so, we can
     // assume that the page content was updated with AJAX returned data.
-    $result_commands = array();
+    $result_commands = [];
     foreach ($result as $command) {
       $result_commands[$command['command']] = $command;
     }
diff --git a/core/modules/views_ui/src/Tests/QueryTest.php b/core/modules/views_ui/src/Tests/QueryTest.php
index 351859b..066be3e 100644
--- a/core/modules/views_ui/src/Tests/QueryTest.php
+++ b/core/modules/views_ui/src/Tests/QueryTest.php
@@ -17,7 +17,7 @@ class QueryTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * {@inheritdoc}
@@ -41,8 +41,8 @@ public function testQueryUI() {
     // Save some query settings.
     $query_settings_path = "admin/structure/views/nojs/display/test_view/default/query";
     $random_value = $this->randomMachineName();
-    $this->drupalPostForm($query_settings_path, array('query[options][test_setting]' => $random_value), t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm($query_settings_path, ['query[options][test_setting]' => $random_value], t('Apply'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     // Check that the settings are saved into the view itself.
     $view = Views::getView('test_view');
diff --git a/core/modules/views_ui/src/Tests/RearrangeFieldsTest.php b/core/modules/views_ui/src/Tests/RearrangeFieldsTest.php
index 35c229b..7d5eddf 100644
--- a/core/modules/views_ui/src/Tests/RearrangeFieldsTest.php
+++ b/core/modules/views_ui/src/Tests/RearrangeFieldsTest.php
@@ -17,7 +17,7 @@ class RearrangeFieldsTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Gets the fields from the View.
@@ -25,7 +25,7 @@ class RearrangeFieldsTest extends UITestBase {
   protected function getViewFields($view_name = 'test_view', $display_id = 'default') {
     $view = Views::getView($view_name);
     $view->setDisplay($display_id);
-    $fields = array();
+    $fields = [];
     foreach ($view->displayHandlers->get('default')->getHandlers('field') as $field => $handler) {
       $fields[] = $field;
     }
@@ -58,13 +58,13 @@ public function testRearrangeFields() {
     $this->assertFieldOrder($view_name, $this->getViewFields($view_name));
 
     // Checks that a field is not deleted if a value is not passed back.
-    $fields = array();
+    $fields = [];
     $this->drupalPostForm('admin/structure/views/nojs/rearrange/' . $view_name . '/default/field', $fields, t('Apply'));
     $this->assertFieldOrder($view_name, $this->getViewFields($view_name));
 
     // Checks that revers the new field order is respected.
     $reversedFields = array_reverse($this->getViewFields($view_name));
-    $fields = array();
+    $fields = [];
     foreach ($reversedFields as $delta => $field) {
       $fields['fields[' . $field . '][weight]'] = $delta;
     }
diff --git a/core/modules/views_ui/src/Tests/RedirectTest.php b/core/modules/views_ui/src/Tests/RedirectTest.php
index 7a01959..cc5d246 100644
--- a/core/modules/views_ui/src/Tests/RedirectTest.php
+++ b/core/modules/views_ui/src/Tests/RedirectTest.php
@@ -14,7 +14,7 @@ class RedirectTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_redirect_view');
+  public static $testViews = ['test_view', 'test_redirect_view'];
 
   /**
    * Tests the redirecting.
@@ -25,8 +25,8 @@ public function testRedirect() {
     $random_destination = $this->randomMachineName();
     $edit_path = "admin/structure/views/view/$view_name/edit";
 
-    $this->drupalPostForm($edit_path, array(), t('Save'), array('query' => array('destination' => $random_destination)));
-    $this->assertUrl($random_destination, array(), 'Make sure the user got redirected to the expected page defined in the destination.');
+    $this->drupalPostForm($edit_path, [], t('Save'), ['query' => ['destination' => $random_destination]]);
+    $this->assertUrl($random_destination, [], 'Make sure the user got redirected to the expected page defined in the destination.');
 
     // Setup a view with a certain page display path. If you change the path
     // but have the old url in the destination the user should be redirected to
@@ -37,9 +37,9 @@ public function testRedirect() {
     $edit_path = "admin/structure/views/view/$view_name/edit";
     $path_edit_path = "admin/structure/views/nojs/display/$view_name/page_1/path";
 
-    $this->drupalPostForm($path_edit_path, array('path' => $new_path), t('Apply'));
-    $this->drupalPostForm($edit_path, array(), t('Save'), array('query' => array('destination' => 'test-redirect-view')));
-    $this->assertUrl($new_path, array(), 'Make sure the user got redirected to the expected page after changing the URL of a page display.');
+    $this->drupalPostForm($path_edit_path, ['path' => $new_path], t('Apply'));
+    $this->drupalPostForm($edit_path, [], t('Save'), ['query' => ['destination' => 'test-redirect-view']]);
+    $this->assertUrl($new_path, [], 'Make sure the user got redirected to the expected page after changing the URL of a page display.');
   }
 
 }
diff --git a/core/modules/views_ui/src/Tests/ReportTest.php b/core/modules/views_ui/src/Tests/ReportTest.php
index d7228f1..0162519 100644
--- a/core/modules/views_ui/src/Tests/ReportTest.php
+++ b/core/modules/views_ui/src/Tests/ReportTest.php
@@ -15,7 +15,7 @@ class ReportTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'views_ui');
+  public static $modules = ['views', 'views_ui'];
 
   /**
    * Stores an admin user used by the different tests.
@@ -26,7 +26,7 @@ class ReportTest extends WebTestBase {
 
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('administer views'));
+    $this->adminUser = $this->drupalCreateUser(['administer views']);
   }
 
   /**
diff --git a/core/modules/views_ui/src/Tests/RowUITest.php b/core/modules/views_ui/src/Tests/RowUITest.php
index 188e0b5..5689009 100644
--- a/core/modules/views_ui/src/Tests/RowUITest.php
+++ b/core/modules/views_ui/src/Tests/RowUITest.php
@@ -18,7 +18,7 @@ class RowUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests changing the row plugin and changing some options of a row.
@@ -33,20 +33,20 @@ public function testRowUI() {
     $this->drupalGet($row_plugin_url);
     $this->assertFieldByName('row[type]', 'fields', 'The default row plugin selected in the UI should be fields.');
 
-    $edit = array(
+    $edit = [
       'row[type]' => 'test_row'
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->assertFieldByName('row_options[test_option]', NULL, 'Make sure the custom settings form from the test plugin appears.');
     $random_name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'row_options[test_option]' => $random_name
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->drupalGet($row_options_url);
     $this->assertFieldByName('row_options[test_option]', $random_name, 'Make sure the custom settings form field has the expected value stored.');
 
-    $this->drupalPostForm($view_edit_url, array(), t('Save'));
+    $this->drupalPostForm($view_edit_url, [], t('Save'));
     $this->assertLink(t('Test row plugin'), 0, 'Make sure the test row plugin is shown in the UI');
 
     $view = Views::getView($view_name);
diff --git a/core/modules/views_ui/src/Tests/SettingsTest.php b/core/modules/views_ui/src/Tests/SettingsTest.php
index 30397f4..40a52e9 100644
--- a/core/modules/views_ui/src/Tests/SettingsTest.php
+++ b/core/modules/views_ui/src/Tests/SettingsTest.php
@@ -35,16 +35,16 @@ function testEditUI() {
     $this->assertLinkByHref('admin/structure/views/settings');
 
     // Test the confirmation message.
-    $this->drupalPostForm('admin/structure/views/settings', array(), t('Save configuration'));
+    $this->drupalPostForm('admin/structure/views/settings', [], t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
 
     // Configure to always show the master display.
-    $edit = array(
+    $edit = [
       'ui_show_master_display' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['description'] = $this->randomMachineName(16);
@@ -56,9 +56,9 @@ function testEditUI() {
     // Configure to not always show the master display.
     // If you have a view without a page or block the master display should be
     // still shown.
-    $edit = array(
+    $edit = [
       'ui_show_master_display' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
     $view['page[create]'] = FALSE;
@@ -75,45 +75,45 @@ function testEditUI() {
     // @todo It doesn't seem to be a way to test this as this works just on js.
 
     // Configure to show the embeddable display.
-    $edit = array(
+    $edit = [
       'ui_show_display_embed' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
     $view['id'] = strtolower($this->randomMachineName());
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
     $this->assertFieldById('edit-displays-top-add-display-embed');
 
-    $edit = array(
+    $edit = [
       'ui_show_display_embed' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
     $this->assertNoFieldById('edit-displays-top-add-display-embed');
 
     // Configure to hide/show the sql at the preview.
-    $edit = array(
+    $edit = [
       'ui_show_sql_query_enabled' => FALSE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
     $view['id'] = strtolower($this->randomMachineName());
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
 
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     $xpath = $this->xpath('//div[@class="views-query-info"]/pre');
     $this->assertEqual(count($xpath), 0, 'The views sql is hidden.');
 
-    $edit = array(
+    $edit = [
       'ui_show_sql_query_enabled' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings', $edit, t('Save configuration'));
 
     $view['id'] = strtolower($this->randomMachineName());
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
 
-    $this->drupalPostForm(NULL, array(), t('Update preview'));
+    $this->drupalPostForm(NULL, [], t('Update preview'));
     $xpath = $this->xpath('//div[@class="views-query-info"]//pre');
     $this->assertEqual(count($xpath), 1, 'The views sql is shown.');
     $this->assertFalse(strpos($xpath[0], 'db_condition_placeholder') !== FALSE, 'No placeholders are shown in the views sql.');
@@ -122,20 +122,20 @@ function testEditUI() {
     // Test the advanced settings form.
 
     // Test the confirmation message.
-    $this->drupalPostForm('admin/structure/views/settings/advanced', array(), t('Save configuration'));
+    $this->drupalPostForm('admin/structure/views/settings/advanced', [], t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'));
 
-    $edit = array(
+    $edit = [
       'skip_cache' => TRUE,
       'sql_signature' => TRUE,
-    );
+    ];
     $this->drupalPostForm('admin/structure/views/settings/advanced', $edit, t('Save configuration'));
 
     $this->assertFieldChecked('edit-skip-cache', 'The skip_cache option is checked.');
     $this->assertFieldChecked('edit-sql-signature', 'The sql_signature option is checked.');
 
     // Test the "Clear Views' cache" button.
-    $this->drupalPostForm('admin/structure/views/settings/advanced', array(), t("Clear Views' cache"));
+    $this->drupalPostForm('admin/structure/views/settings/advanced', [], t("Clear Views' cache"));
     $this->assertText(t('The cache has been cleared.'));
   }
 
diff --git a/core/modules/views_ui/src/Tests/StorageTest.php b/core/modules/views_ui/src/Tests/StorageTest.php
index f01a136..fa33b8f 100644
--- a/core/modules/views_ui/src/Tests/StorageTest.php
+++ b/core/modules/views_ui/src/Tests/StorageTest.php
@@ -17,14 +17,14 @@ class StorageTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'language');
+  public static $modules = ['views_ui', 'language'];
 
   /**
    * Tests changing label, description and tag.
@@ -36,20 +36,20 @@ public function testDetails() {
 
     ConfigurableLanguage::createFromLangcode('fr')->save();
 
-    $edit = array(
+    $edit = [
       'label' => $this->randomMachineName(),
       'tag' => $this->randomMachineName(),
       'description' => $this->randomMachineName(30),
       'langcode' => 'fr',
-    );
+    ];
 
     $this->drupalPostForm("admin/structure/views/nojs/edit-details/$view_name/default", $edit, t('Apply'));
-    $this->drupalPostForm(NULL, array(), t('Save'));
+    $this->drupalPostForm(NULL, [], t('Save'));
 
     $view = Views::getView($view_name);
 
-    foreach (array('label', 'tag', 'description', 'langcode') as $property) {
-      $this->assertEqual($view->storage->get($property), $edit[$property], format_string('Make sure the property @property got probably saved.', array('@property' => $property)));
+    foreach (['label', 'tag', 'description', 'langcode'] as $property) {
+      $this->assertEqual($view->storage->get($property), $edit[$property], format_string('Make sure the property @property got probably saved.', ['@property' => $property]));
     }
   }
 
diff --git a/core/modules/views_ui/src/Tests/StyleTableTest.php b/core/modules/views_ui/src/Tests/StyleTableTest.php
index 7eb757c..d6b757e 100644
--- a/core/modules/views_ui/src/Tests/StyleTableTest.php
+++ b/core/modules/views_ui/src/Tests/StyleTableTest.php
@@ -17,7 +17,7 @@ class StyleTableTest extends UITestBase {
    */
   public function testWizard() {
     // Create a new view and check that the first field has a label.
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(16);
     $view['id'] = strtolower($this->randomMachineName(16));
     $view['show[wizard_key]'] = 'node';
diff --git a/core/modules/views_ui/src/Tests/StyleUITest.php b/core/modules/views_ui/src/Tests/StyleUITest.php
index f83cb03..3fc2ae0 100644
--- a/core/modules/views_ui/src/Tests/StyleUITest.php
+++ b/core/modules/views_ui/src/Tests/StyleUITest.php
@@ -17,7 +17,7 @@ class StyleUITest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view');
+  public static $testViews = ['test_view'];
 
   /**
    * Tests changing the style plugin and changing some options of a style.
@@ -32,20 +32,20 @@ public function testStyleUI() {
     $this->drupalGet($style_plugin_url);
     $this->assertFieldByName('style[type]', 'default', 'The default style plugin selected in the UI should be unformatted list.');
 
-    $edit = array(
+    $edit = [
       'style[type]' => 'test_style'
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->assertFieldByName('style_options[test_option]', NULL, 'Make sure the custom settings form from the test plugin appears.');
     $random_name = $this->randomMachineName();
-    $edit = array(
+    $edit = [
       'style_options[test_option]' => $random_name
-    );
+    ];
     $this->drupalPostForm(NULL, $edit, t('Apply'));
     $this->drupalGet($style_options_url);
     $this->assertFieldByName('style_options[test_option]', $random_name, 'Make sure the custom settings form field has the expected value stored.');
 
-    $this->drupalPostForm($view_edit_url, array(), t('Save'));
+    $this->drupalPostForm($view_edit_url, [], t('Save'));
     $this->assertLink(t('Test style plugin'), 0, 'Make sure the test style plugin is shown in the UI');
 
     $view = Views::getView($view_name);
@@ -56,8 +56,8 @@ public function testStyleUI() {
 
     // Test that fields are working correctly in the UI for style plugins when
     // a field row plugin is selected.
-    $this->drupalPostForm("admin/structure/views/view/$view_name/edit", array(), 'Add Page');
-    $this->drupalPostForm("admin/structure/views/nojs/display/$view_name/page_1/row", array('row[type]' => 'fields'), t('Apply'));
+    $this->drupalPostForm("admin/structure/views/view/$view_name/edit", [], 'Add Page');
+    $this->drupalPostForm("admin/structure/views/nojs/display/$view_name/page_1/row", ['row[type]' => 'fields'], t('Apply'));
     // If fields are being used this text will not be shown.
     $this->assertNoText(t('The selected style or row format does not use fields.'));
   }
diff --git a/core/modules/views_ui/src/Tests/UITestBase.php b/core/modules/views_ui/src/Tests/UITestBase.php
index 74b6f4f..0b90e04 100644
--- a/core/modules/views_ui/src/Tests/UITestBase.php
+++ b/core/modules/views_ui/src/Tests/UITestBase.php
@@ -28,7 +28,7 @@
    *
    * @var array
    */
-  public static $modules = array('node', 'views_ui', 'block', 'taxonomy');
+  public static $modules = ['node', 'views_ui', 'block', 'taxonomy'];
 
   /**
    * {@inheritdoc}
@@ -38,24 +38,24 @@ protected function setUp() {
 
     $this->enableViewsTestModule();
 
-    $this->adminUser = $this->drupalCreateUser(array('administer views'));
+    $this->adminUser = $this->drupalCreateUser(['administer views']);
 
-    $this->fullAdminUser = $this->drupalCreateUser(array('administer views',
+    $this->fullAdminUser = $this->drupalCreateUser(['administer views',
       'administer blocks',
       'bypass node access',
       'access user profiles',
       'view all revisions',
       'administer permissions',
-    ));
+    ]);
     $this->drupalLogin($this->fullAdminUser);
   }
 
   /**
    * A helper method which creates a random view.
    */
-  public function randomView(array $view = array()) {
+  public function randomView(array $view = []) {
     // Create a new view in the UI.
-    $default = array();
+    $default = [];
     $default['label'] = $this->randomMachineName(16);
     $default['id'] = strtolower($this->randomMachineName(16));
     $default['description'] = $this->randomMachineName(16);
@@ -72,7 +72,7 @@ public function randomView(array $view = array()) {
   /**
    * {@inheritdoc}
    */
-  protected function drupalGet($path, array $options = array(), array $headers = array()) {
+  protected function drupalGet($path, array $options = [], array $headers = []) {
     $url = $this->buildUrl($path, $options);
 
     // Ensure that each nojs page is accessible via ajax as well.
diff --git a/core/modules/views_ui/src/Tests/UnsavedPreviewTest.php b/core/modules/views_ui/src/Tests/UnsavedPreviewTest.php
index 4652dac..6418fc0 100644
--- a/core/modules/views_ui/src/Tests/UnsavedPreviewTest.php
+++ b/core/modules/views_ui/src/Tests/UnsavedPreviewTest.php
@@ -28,7 +28,7 @@ class UnsavedPreviewTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  public static $modules = array('node', 'views_ui');
+  public static $modules = ['node', 'views_ui'];
 
   /**
    * Sets up a Drupal site for running functional and integration tests.
diff --git a/core/modules/views_ui/src/Tests/ViewEditTest.php b/core/modules/views_ui/src/Tests/ViewEditTest.php
index afa21df..08c5cfe 100644
--- a/core/modules/views_ui/src/Tests/ViewEditTest.php
+++ b/core/modules/views_ui/src/Tests/ViewEditTest.php
@@ -17,7 +17,7 @@ class ViewEditTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = array('test_view', 'test_display', 'test_groupwise_term_ui');
+  public static $testViews = ['test_view', 'test_display', 'test_groupwise_term_ui'];
 
   /**
    * Tests the delete link on a views UI.
@@ -30,8 +30,8 @@ public function testDeleteLink() {
     $this->assertTrue($view instanceof View);
     $this->clickLink(t('Delete view'));
     $this->assertUrl('admin/structure/views/view/test_view/delete');
-    $this->drupalPostForm(NULL, array(), t('Delete'));
-    $this->assertRaw(t('The view %name has been deleted.', array('%name' => $view->label())));
+    $this->drupalPostForm(NULL, [], t('Delete'));
+    $this->assertRaw(t('The view %name has been deleted.', ['%name' => $view->label()]));
 
     $this->assertUrl('admin/structure/views');
     $view = $this->container->get('entity.manager')->getStorage('view')->load('test_view');
@@ -44,20 +44,20 @@ public function testDeleteLink() {
   public function testOtherOptions() {
     $this->drupalGet('admin/structure/views/view/test_view');
     // Add a new attachment display.
-    $this->drupalPostForm(NULL, array(), 'Add Attachment');
+    $this->drupalPostForm(NULL, [], 'Add Attachment');
 
     // Test that a long administrative comment is truncated.
-    $edit = array('display_comment' => 'one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen');
+    $edit = ['display_comment' => 'one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen'];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view/attachment_1/display_comment', $edit, 'Apply');
     $this->assertText('one two three four five six seven eight nine ten eleven twelve thirteen fourteen...');
 
     // Change the machine name for the display from page_1 to test_1.
-    $edit = array('display_id' => 'test_1');
+    $edit = ['display_id' => 'test_1'];
     $this->drupalPostForm('admin/structure/views/nojs/display/test_view/attachment_1/display_id', $edit, 'Apply');
     $this->assertLink(t('test_1'));
 
     // Save the view, and test the new ID has been saved.
-    $this->drupalPostForm(NULL, array(), 'Save');
+    $this->drupalPostForm(NULL, [], 'Save');
     $view = \Drupal::entityManager()->getStorage('view')->load('test_view');
     $displays = $view->get('display');
     $this->assertTrue(!empty($displays['test_1']), 'Display data found for new display ID key.');
@@ -72,16 +72,16 @@ public function testOtherOptions() {
     $this->drupalGet('admin/structure/views/ajax/handler/test_view/fake_display_name/filter/title');
     $this->assertText('Invalid display id fake_display_name');
 
-    $edit = array('display_id' => 'test 1');
+    $edit = ['display_id' => 'test 1'];
     $this->drupalPostForm($machine_name_edit_url, $edit, 'Apply');
     $this->assertText($error_text);
 
-    $edit = array('display_id' => 'test_1#');
+    $edit = ['display_id' => 'test_1#'];
     $this->drupalPostForm($machine_name_edit_url, $edit, 'Apply');
     $this->assertText($error_text);
 
     // Test using an existing display ID.
-    $edit = array('display_id' => 'default');
+    $edit = ['display_id' => 'default'];
     $this->drupalPostForm($machine_name_edit_url, $edit, 'Apply');
     $this->assertText(t('Display id should be unique.'));
 
@@ -97,10 +97,10 @@ public function testOtherOptions() {
     $fields['fields[id][removed]'] = 1;
     $fields['fields[name][removed]'] = 1;
     $this->drupalPostForm('admin/structure/views/nojs/rearrange/test_view/default/field', $fields, t('Apply'));
-    $this->drupalPostForm(NULL, array(), 'Save');
-    $this->drupalPostForm(NULL, array(), t('Cancel'));
+    $this->drupalPostForm(NULL, [], 'Save');
+    $this->drupalPostForm(NULL, [], t('Cancel'));
     $this->assertNoFieldByXpath('//div[contains(@class, "error")]', FALSE, 'No error message is displayed.');
-    $this->assertUrl('admin/structure/views', array(), 'Redirected back to the view listing page..');
+    $this->assertUrl('admin/structure/views', [], 'Redirected back to the view listing page..');
   }
 
   /**
@@ -108,21 +108,21 @@ public function testOtherOptions() {
    */
   public function testEditFormLanguageOptions() {
     // Language options should not exist without language module.
-    $test_views = array(
+    $test_views = [
       'test_view' => 'default',
       'test_display' => 'page_1',
-    );
+    ];
     foreach ($test_views as $view_name => $display) {
       $this->drupalGet('admin/structure/views/view/' . $view_name);
       $this->assertResponse(200);
       $langcode_url = 'admin/structure/views/nojs/display/' . $view_name . '/' . $display . '/rendering_language';
       $this->assertNoLinkByHref($langcode_url);
-      $this->assertNoLink(t('@type language selected for page', array('@type' => t('Content'))));
+      $this->assertNoLink(t('@type language selected for page', ['@type' => t('Content')]));
       $this->assertNoLink(t('Content language of view row'));
     }
 
     // Make the site multilingual and test the options again.
-    $this->container->get('module_installer')->install(array('language', 'content_translation'));
+    $this->container->get('module_installer')->install(['language', 'content_translation']);
     ConfigurableLanguage::createFromLangcode('hu')->save();
     $this->resetAll();
     $this->rebuildContainer();
@@ -134,12 +134,12 @@ public function testEditFormLanguageOptions() {
       $langcode_url = 'admin/structure/views/nojs/display/' . $view_name . '/' . $display . '/rendering_language';
       if ($view_name == 'test_view') {
         $this->assertNoLinkByHref($langcode_url);
-        $this->assertNoLink(t('@type language selected for page', array('@type' => t('Content'))));
+        $this->assertNoLink(t('@type language selected for page', ['@type' => t('Content')]));
         $this->assertNoLink(t('Content language of view row'));
       }
       else {
         $this->assertLinkByHref($langcode_url);
-        $this->assertNoLink(t('@type language selected for page', array('@type' => t('Content'))));
+        $this->assertNoLink(t('@type language selected for page', ['@type' => t('Content')]));
         $this->assertLink(t('Content language of view row'));
       }
 
@@ -152,14 +152,14 @@ public function testEditFormLanguageOptions() {
         $this->assertFieldByName('rendering_language', '***LANGUAGE_entity_translation***');
         // Test that the order of the language list is similar to other language
         // lists, such as in the content translation settings.
-        $expected_elements = array(
+        $expected_elements = [
           '***LANGUAGE_entity_translation***',
           '***LANGUAGE_entity_default***',
           '***LANGUAGE_site_default***',
           '***LANGUAGE_language_interface***',
           'en',
           'hu',
-        );
+        ];
         $elements = $this->xpath('//select[@id="edit-rendering-language"]/option');
         // Compare values inside the option elements with expected values.
         for ($i = 0; $i < count($elements); $i++) {
@@ -202,7 +202,7 @@ public function testEditFormLanguageOptions() {
         $this->drupalGet($langcode_url);
         $this->assertResponse(200);
 
-        $expected_elements = array(
+        $expected_elements = [
           'all',
           '***LANGUAGE_site_default***',
           '***LANGUAGE_language_interface***',
@@ -211,7 +211,7 @@ public function testEditFormLanguageOptions() {
           'hu',
           'und',
           'zxx',
-        );
+        ];
         $elements = $this->xpath('//div[@id="edit-options-value"]//input');
         // Compare values inside the option elements with expected values.
         for ($i = 0; $i < count($elements); $i++) {
@@ -229,7 +229,7 @@ public function testRelationRepresentativeNode() {
     $edit["name[taxonomy_term_field_data.tid_representative]"] = TRUE;
     $this->drupalPostForm('admin/structure/views/nojs/add-handler/test_groupwise_term_ui/default/relationship', $edit, 'Add and configure relationships');
     // Apply changes.
-    $edit = array();
+    $edit = [];
     $this->drupalPostForm('admin/structure/views/nojs/handler/test_groupwise_term_ui/default/relationship/tid_representative', $edit, 'Apply');
   }
 
diff --git a/core/modules/views_ui/src/Tests/ViewsListTest.php b/core/modules/views_ui/src/Tests/ViewsListTest.php
index 768e449..5178674 100644
--- a/core/modules/views_ui/src/Tests/ViewsListTest.php
+++ b/core/modules/views_ui/src/Tests/ViewsListTest.php
@@ -18,7 +18,7 @@ class ViewsListTest extends WebTestBase {
    *
    * @var array
    */
-  public static $modules = array('block', 'views_ui');
+  public static $modules = ['block', 'views_ui'];
 
   /**
    * A user with permission to administer views.
diff --git a/core/modules/views_ui/src/Tests/ViewsUITourTest.php b/core/modules/views_ui/src/Tests/ViewsUITourTest.php
index ccc0f29..31748e8 100644
--- a/core/modules/views_ui/src/Tests/ViewsUITourTest.php
+++ b/core/modules/views_ui/src/Tests/ViewsUITourTest.php
@@ -31,11 +31,11 @@ class ViewsUITourTest extends TourTestBase {
    *
    * @var array
    */
-  public static $modules = array('views_ui', 'tour', 'language', 'locale');
+  public static $modules = ['views_ui', 'tour', 'language', 'locale'];
 
   protected function setUp() {
     parent::setUp();
-    $this->adminUser = $this->drupalCreateUser(array('administer views', 'access tour'));
+    $this->adminUser = $this->drupalCreateUser(['administer views', 'access tour']);
     $this->drupalLogin($this->adminUser);
   }
 
@@ -66,18 +66,18 @@ public function testViewsUiTourTipsTranslated() {
     ConfigurableLanguage::createFromLangcode($langcode)->save();
 
     // Handler titles that need translations.
-    $handler_titles = array(
+    $handler_titles = [
       'Format',
       'Fields',
       'Sort criteria',
       'Filter criteria',
-    );
+    ];
 
     foreach ($handler_titles as $handler_title) {
       // Create source string.
-      $source = $this->localeStorage->createString(array(
+      $source = $this->localeStorage->createString([
         'source' => $handler_title
-      ));
+      ]);
       $source->save();
       $this->createTranslation($source, $langcode);
     }
@@ -101,11 +101,11 @@ public function testViewsUiTourTipsTranslated() {
    * Creates single translation for source string.
    */
   public function createTranslation($source, $langcode) {
-    return $this->localeStorage->createTranslation(array(
+    return $this->localeStorage->createTranslation([
         'lid' => $source->lid,
         'language' => $langcode,
         'translation' => $this->randomMachineName(100),
-      ))->save();
+      ])->save();
   }
 
 }
diff --git a/core/modules/views_ui/src/Tests/WizardTest.php b/core/modules/views_ui/src/Tests/WizardTest.php
index 58cf97c..4e57e8f 100644
--- a/core/modules/views_ui/src/Tests/WizardTest.php
+++ b/core/modules/views_ui/src/Tests/WizardTest.php
@@ -18,7 +18,7 @@ class WizardTest extends WizardTestBase {
    * Tests filling in the wizard with really long strings.
    */
   public function testWizardFieldLength() {
-    $view = array();
+    $view = [];
     $view['label'] = $this->randomMachineName(256);
     $view['id'] = strtolower($this->randomMachineName(129));
     $view['page[create]'] = TRUE;
@@ -54,7 +54,7 @@ public function testWizardFieldLength() {
     $view['rest_export[path]'] = $this->randomMachineName(254);
 
     $this->drupalPostForm('admin/structure/views/add', $view, t('Save and edit'));
-    $this->assertUrl('admin/structure/views/view/' . $view['id'], array(), 'Make sure the view saving was successful and the browser got redirected to the edit page.');
+    $this->assertUrl('admin/structure/views/view/' . $view['id'], [], 'Make sure the view saving was successful and the browser got redirected to the edit page.');
     // Assert that the page title is correctly truncated.
     $this->assertText(views_ui_truncate($view['page[title]'], 32));
   }
diff --git a/core/modules/views_ui/src/Tests/XssTest.php b/core/modules/views_ui/src/Tests/XssTest.php
index 1d61f19..1c3cef6 100644
--- a/core/modules/views_ui/src/Tests/XssTest.php
+++ b/core/modules/views_ui/src/Tests/XssTest.php
@@ -14,7 +14,7 @@ class XssTest extends UITestBase {
    *
    * @var array
    */
-  public static $modules = array('node', 'user', 'views_ui', 'views_ui_test');
+  public static $modules = ['node', 'user', 'views_ui', 'views_ui_test'];
 
   public function testViewsUi() {
     $this->drupalGet('admin/structure/views/view/sa_contrib_2013_035');
diff --git a/core/modules/views_ui/src/ViewAddForm.php b/core/modules/views_ui/src/ViewAddForm.php
index c3d5c77..429032c 100644
--- a/core/modules/views_ui/src/ViewAddForm.php
+++ b/core/modules/views_ui/src/ViewAddForm.php
@@ -51,83 +51,83 @@ protected function prepareEntity() {
    */
   public function form(array $form, FormStateInterface $form_state) {
     $form['#attached']['library'][] = 'views_ui/views_ui.admin';
-    $form['#attributes']['class'] = array('views-admin');
+    $form['#attributes']['class'] = ['views-admin'];
 
-    $form['name'] = array(
+    $form['name'] = [
       '#type' => 'fieldset',
       '#title' => t('View basic information'),
-      '#attributes' => array('class' => array('fieldset-no-legend')),
-    );
+      '#attributes' => ['class' => ['fieldset-no-legend']],
+    ];
 
-    $form['name']['label'] = array(
+    $form['name']['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('View name'),
       '#required' => TRUE,
       '#size' => 32,
       '#default_value' => '',
       '#maxlength' => 255,
-    );
-    $form['name']['id'] = array(
+    ];
+    $form['name']['id'] = [
       '#type' => 'machine_name',
       '#maxlength' => 128,
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\views\Views::getView',
-        'source' => array('name', 'label'),
-      ),
+        'source' => ['name', 'label'],
+      ],
       '#description' => $this->t('A unique machine-readable name for this View. It must only contain lowercase letters, numbers, and underscores.'),
-    );
+    ];
 
-    $form['name']['description_enable'] = array(
+    $form['name']['description_enable'] = [
       '#type' => 'checkbox',
       '#title' => $this->t('Description'),
-    );
-    $form['name']['description'] = array(
+    ];
+    $form['name']['description'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Provide description'),
       '#title_display' => 'invisible',
       '#size' => 64,
       '#default_value' => '',
-      '#states' => array(
-        'visible' => array(
-          ':input[name="description_enable"]' => array('checked' => TRUE),
-        ),
-      ),
-    );
+      '#states' => [
+        'visible' => [
+          ':input[name="description_enable"]' => ['checked' => TRUE],
+        ],
+      ],
+    ];
 
     // Create a wrapper for the entire dynamic portion of the form. Everything
     // that can be updated by AJAX goes somewhere inside here. For example, this
     // is needed by "Show" dropdown (below); it changes the base table of the
     // view and therefore potentially requires all options on the form to be
     // dynamically updated.
-    $form['displays'] = array();
+    $form['displays'] = [];
 
     // Create the part of the form that allows the user to select the basic
     // properties of what the view will display.
-    $form['displays']['show'] = array(
+    $form['displays']['show'] = [
       '#type' => 'fieldset',
       '#title' => t('View settings'),
       '#tree' => TRUE,
-      '#attributes' => array('class' => array('container-inline')),
-    );
+      '#attributes' => ['class' => ['container-inline']],
+    ];
 
     // Create the "Show" dropdown, which allows the base table of the view to be
     // selected.
     $wizard_plugins = $this->wizardManager->getDefinitions();
-    $options = array();
+    $options = [];
     foreach ($wizard_plugins as $key => $wizard) {
       $options[$key] = $wizard['title'];
     }
-    $form['displays']['show']['wizard_key'] = array(
+    $form['displays']['show']['wizard_key'] = [
       '#type' => 'select',
       '#title' => $this->t('Show'),
       '#options' => $options,
-    );
+    ];
     $show_form = &$form['displays']['show'];
     $default_value = \Drupal::moduleHandler()->moduleExists('node') ? 'node' : 'users';
-    $show_form['wizard_key']['#default_value'] = WizardPluginBase::getSelected($form_state, array('show', 'wizard_key'), $default_value, $show_form['wizard_key']);
+    $show_form['wizard_key']['#default_value'] = WizardPluginBase::getSelected($form_state, ['show', 'wizard_key'], $default_value, $show_form['wizard_key']);
     // Changing this dropdown updates the entire content of $form['displays'] via
     // AJAX.
-    views_ui_add_ajax_trigger($show_form, 'wizard_key', array('displays'));
+    views_ui_add_ajax_trigger($show_form, 'wizard_key', ['displays']);
 
     // Build the rest of the form based on the currently selected wizard plugin.
     $wizard_key = $show_form['wizard_key']['#default_value'];
@@ -144,13 +144,13 @@ protected function actions(array $form, FormStateInterface $form_state) {
     $actions = parent::actions($form, $form_state);
     $actions['submit']['#value'] = $this->t('Save and edit');
     // Remove EntityFormController::save() form the submission handlers.
-    $actions['submit']['#submit'] = array(array($this, 'submitForm'));
-    $actions['cancel'] = array(
+    $actions['submit']['#submit'] = [[$this, 'submitForm']];
+    $actions['cancel'] = [
       '#type' => 'submit',
       '#value' => $this->t('Cancel'),
-      '#submit' => array('::cancel'),
-      '#limit_validation_errors' => array(),
-    );
+      '#submit' => ['::cancel'],
+      '#limit_validation_errors' => [],
+    ];
     return $actions;
   }
 
@@ -158,7 +158,7 @@ protected function actions(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   public function validateForm(array &$form, FormStateInterface $form_state) {
-    $wizard_type = $form_state->getValue(array('show', 'wizard_key'));
+    $wizard_type = $form_state->getValue(['show', 'wizard_key']);
     $wizard_instance = $this->wizardManager->createInstance($wizard_type);
     $form_state->set('wizard', $wizard_instance->getPluginDefinition());
     $form_state->set('wizard_instance', $wizard_instance);
@@ -187,7 +187,7 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
       return;
     }
     $this->entity->save();
-    drupal_set_message($this->t('The view %name has been saved.', array('%name' => $form_state->getValue('label'))));
+    drupal_set_message($this->t('The view %name has been saved.', ['%name' => $form_state->getValue('label')]));
     $form_state->setRedirectUrl($this->entity->urlInfo('edit-form'));
   }
 
diff --git a/core/modules/views_ui/src/ViewDuplicateForm.php b/core/modules/views_ui/src/ViewDuplicateForm.php
index 9870d8e..fa2db60 100644
--- a/core/modules/views_ui/src/ViewDuplicateForm.php
+++ b/core/modules/views_ui/src/ViewDuplicateForm.php
@@ -22,26 +22,26 @@ protected function prepareEntity() {
   public function form(array $form, FormStateInterface $form_state) {
     parent::form($form, $form_state);
 
-    $form['#title'] = $this->t('Duplicate of @label', array('@label' => $this->entity->label()));
+    $form['#title'] = $this->t('Duplicate of @label', ['@label' => $this->entity->label()]);
 
-    $form['label'] = array(
+    $form['label'] = [
       '#type' => 'textfield',
       '#title' => $this->t('View name'),
       '#required' => TRUE,
       '#size' => 32,
       '#maxlength' => 255,
-      '#default_value' => $this->t('Duplicate of @label', array('@label' => $this->entity->label())),
-    );
-    $form['id'] = array(
+      '#default_value' => $this->t('Duplicate of @label', ['@label' => $this->entity->label()]),
+    ];
+    $form['id'] = [
       '#type' => 'machine_name',
       '#maxlength' => 128,
-      '#machine_name' => array(
+      '#machine_name' => [
         'exists' => '\Drupal\views\Views::getView',
-        'source' => array('label'),
-      ),
+        'source' => ['label'],
+      ],
       '#default_value' => '',
       '#description' => $this->t('A unique machine-readable name for this View. It must only contain lowercase letters, numbers, and underscores.'),
-    );
+    ];
 
     return $form;
   }
@@ -50,10 +50,10 @@ public function form(array $form, FormStateInterface $form_state) {
    * {@inheritdoc}
    */
   protected function actions(array $form, FormStateInterface $form_state) {
-    $actions['submit'] = array(
+    $actions['submit'] = [
       '#type' => 'submit',
       '#value' => $this->t('Duplicate'),
-    );
+    ];
     return $actions;
   }
 
diff --git a/core/modules/views_ui/src/ViewEditForm.php b/core/modules/views_ui/src/ViewEditForm.php
index 6e81939..67d1229 100644
--- a/core/modules/views_ui/src/ViewEditForm.php
+++ b/core/modules/views_ui/src/ViewEditForm.php
@@ -98,7 +98,7 @@ public function form(array $form, FormStateInterface $form_state) {
 
     if ($display_id) {
       if (!$view->getExecutable()->setDisplay($display_id)) {
-        $form['#markup'] = $this->t('Invalid display id @display', array('@display' => $display_id));
+        $form['#markup'] = $this->t('Invalid display id @display', ['@display' => $display_id]);
         return $form;
       }
     }
@@ -112,55 +112,55 @@ public function form(array $form, FormStateInterface $form_state) {
     $form['#attached']['library'][] = 'views_ui/views_ui.admin';
     $form['#attached']['library'][] = 'views_ui/admin.styling';
 
-    $form += array(
+    $form += [
       '#prefix' => '',
       '#suffix' => '',
-    );
+    ];
 
     $view_status = $view->status() ? 'enabled' : 'disabled';
     $form['#prefix'] .= '<div class="views-edit-view views-admin ' . $view_status . ' clearfix">';
     $form['#suffix'] = '</div>' . $form['#suffix'];
 
-    $form['#attributes']['class'] = array('form-edit');
+    $form['#attributes']['class'] = ['form-edit'];
 
     if ($view->isLocked()) {
-      $username = array(
+      $username = [
         '#theme' => 'username',
         '#account' => $this->entityManager->getStorage('user')->load($view->lock->owner),
-      );
-      $lock_message_substitutions = array(
+      ];
+      $lock_message_substitutions = [
         '@user' => drupal_render($username),
         '@age' => $this->dateFormatter->formatTimeDiffSince($view->lock->updated),
         ':url' => $view->url('break-lock-form'),
-      );
-      $form['locked'] = array(
+      ];
+      $form['locked'] = [
         '#type' => 'container',
-        '#attributes' => array('class' => array('view-locked', 'messages', 'messages--warning')),
+        '#attributes' => ['class' => ['view-locked', 'messages', 'messages--warning']],
         '#children' => $this->t('This view is being edited by user @user, and is therefore locked from editing by others. This lock is @age old. Click here to <a href=":url">break this lock</a>.', $lock_message_substitutions),
         '#weight' => -10,
-      );
+      ];
     }
     else {
-      $form['changed'] = array(
+      $form['changed'] = [
         '#type' => 'container',
-        '#attributes' => array('class' => array('view-changed', 'messages', 'messages--warning')),
+        '#attributes' => ['class' => ['view-changed', 'messages', 'messages--warning']],
         '#children' => $this->t('You have unsaved changes.'),
         '#weight' => -10,
-      );
+      ];
       if (empty($view->changed)) {
         $form['changed']['#attributes']['class'][] = 'js-hide';
       }
     }
 
-    $form['displays'] = array(
+    $form['displays'] = [
       '#prefix' => '<h1 class="unit-title clearfix">' . $this->t('Displays') . '</h1>',
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array(
+      '#attributes' => [
+        'class' => [
           'views-displays',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
 
 
     $form['displays']['top'] = $this->renderDisplayTop($view);
@@ -170,13 +170,13 @@ public function form(array $form, FormStateInterface $form_state) {
       $form_state->set('display_id', $display_id);
 
       // The part of the page where editing will take place.
-      $form['displays']['settings'] = array(
+      $form['displays']['settings'] = [
         '#type' => 'container',
         '#id' => 'edit-display-settings',
-        '#attributes' => array(
-          'class' => array('edit-display-settings'),
-        ),
-      );
+        '#attributes' => [
+          'class' => ['edit-display-settings'],
+        ],
+      ];
 
       // Add a text that the display is disabled.
       if ($view->getExecutable()->displayHandlers->has($display_id)) {
@@ -187,8 +187,8 @@ public function form(array $form, FormStateInterface $form_state) {
 
       // Add the edit display content
       $tab_content = $this->getDisplayTab($view);
-      $tab_content['#theme_wrappers'] = array('container');
-      $tab_content['#attributes'] = array('class' => array('views-display-tab'));
+      $tab_content['#theme_wrappers'] = ['container'];
+      $tab_content['#attributes'] = ['class' => ['views-display-tab']];
       $tab_content['#id'] = 'views-tab-' . $display_id;
       // Mark deleted displays as such.
       $display = $view->get('display');
@@ -200,10 +200,10 @@ public function form(array $form, FormStateInterface $form_state) {
       if ($view->getExecutable()->displayHandlers->has($display_id) && !$view->getExecutable()->displayHandlers->get($display_id)->isEnabled()) {
         $tab_content['#attributes']['class'][] = 'views-display-disabled';
       }
-      $form['displays']['settings']['settings_content'] = array(
+      $form['displays']['settings']['settings_content'] = [
         '#type' => 'container',
         'tab_content' => $tab_content,
-      );
+      ];
     }
 
     return $form;
@@ -216,12 +216,12 @@ protected function actions(array $form, FormStateInterface $form_state) {
     $actions = parent::actions($form, $form_state);
     unset($actions['delete']);
 
-    $actions['cancel'] = array(
+    $actions['cancel'] = [
       '#type' => 'submit',
       '#value' => $this->t('Cancel'),
-      '#submit' => array('::cancel'),
-      '#limit_validation_errors' => array(),
-    );
+      '#submit' => ['::cancel'],
+      '#limit_validation_errors' => [],
+    ];
     if ($this->entity->isLocked()) {
       $actions['submit']['#access'] = FALSE;
       $actions['cancel']['#access'] = FALSE;
@@ -285,10 +285,10 @@ public function save(array $form, FormStateInterface $form_state) {
         unset($displays[$id]);
 
         // Redirect the user to the renamed display to be sure that the page itself exists and doesn't throw errors.
-        $form_state->setRedirect('entity.view.edit_display_form', array(
+        $form_state->setRedirect('entity.view.edit_display_form', [
           'view' => $view->id(),
           'display_id' => $new_id,
-        ));
+        ]);
       }
     }
     $view->set('display', $displays);
@@ -320,7 +320,7 @@ public function save(array $form, FormStateInterface $form_state) {
 
     $view->save();
 
-    drupal_set_message($this->t('The view %name has been saved.', array('%name' => $view->label())));
+    drupal_set_message($this->t('The view %name has been saved.', ['%name' => $view->label()]));
 
     // Remove this view from cache so we can edit it properly.
     $this->tempStore->delete($view->id());
@@ -345,14 +345,14 @@ public function cancel(array $form, FormStateInterface $form_state) {
    * Returns a renderable array representing the edit page for one display.
    */
   public function getDisplayTab($view) {
-    $build = array();
+    $build = [];
     $display_id = $this->displayID;
     $display = $view->getExecutable()->displayHandlers->get($display_id);
     // If the plugin doesn't exist, display an error message instead of an edit
     // page.
     if (empty($display)) {
       // @TODO: Improved UX for the case where a plugin is missing.
-      $build['#markup'] = $this->t("Error: Display @display refers to a plugin named '@plugin', but that plugin is not available.", array('@display' => $display->display['id'], '@plugin' => $display->display['display_plugin']));
+      $build['#markup'] = $this->t("Error: Display @display refers to a plugin named '@plugin', but that plugin is not available.", ['@display' => $display->display['id'], '@plugin' => $display->display['display_plugin']]);
     }
     // Build the content of the edit page.
     else {
@@ -374,10 +374,10 @@ public function getDisplayTab($view) {
    */
   public function getDisplayDetails($view, $display) {
     $display_title = $this->getDisplayLabel($view, $display['id'], FALSE);
-    $build = array(
-      '#theme_wrappers' => array('container'),
-      '#attributes' => array('id' => 'edit-display-settings-details'),
-    );
+    $build = [
+      '#theme_wrappers' => ['container'],
+      '#attributes' => ['id' => 'edit-display-settings-details'],
+    ];
 
     $is_display_deleted = !empty($display['deleted']);
     // The master display cannot be duplicated.
@@ -386,14 +386,14 @@ public function getDisplayDetails($view, $display) {
     $is_enabled = $view->getExecutable()->displayHandlers->get($display['id'])->isEnabled();
 
     if ($display['id'] != 'default') {
-      $build['top']['#theme_wrappers'] = array('container');
+      $build['top']['#theme_wrappers'] = ['container'];
       $build['top']['#attributes']['id'] = 'edit-display-settings-top';
-      $build['top']['#attributes']['class'] = array('views-ui-display-tab-actions', 'edit-display-settings-top', 'views-ui-display-tab-bucket', 'clearfix');
+      $build['top']['#attributes']['class'] = ['views-ui-display-tab-actions', 'edit-display-settings-top', 'views-ui-display-tab-bucket', 'clearfix'];
 
       // The Delete, Duplicate and Undo Delete buttons.
-      $build['top']['actions'] = array(
-        '#theme_wrappers' => array('dropbutton_wrapper'),
-      );
+      $build['top']['actions'] = [
+        '#theme_wrappers' => ['dropbutton_wrapper'],
+      ];
 
       // Because some of the 'links' are actually submit buttons, we have to
       // manually wrap each item in <li> and the whole list in <ul>.
@@ -401,14 +401,14 @@ public function getDisplayDetails($view, $display) {
 
       if (!$is_display_deleted) {
         if (!$is_enabled) {
-          $build['top']['actions']['enable'] = array(
+          $build['top']['actions']['enable'] = [
             '#type' => 'submit',
             '#value' => $this->t('Enable @display_title', ['@display_title' => $display_title]),
-            '#limit_validation_errors' => array(),
-            '#submit' => array('::submitDisplayEnable', '::submitDelayDestination'),
+            '#limit_validation_errors' => [],
+            '#submit' => ['::submitDisplayEnable', '::submitDelayDestination'],
             '#prefix' => '<li class="enable">',
             "#suffix" => '</li>',
-          );
+          ];
         }
         // Add a link to view the page unless the view is disabled or has no
         // path.
@@ -423,118 +423,118 @@ public function getDisplayDetails($view, $display) {
             else {
               $url = Url::fromUri("base:$path");
             }
-            $build['top']['actions']['path'] = array(
+            $build['top']['actions']['path'] = [
               '#type' => 'link',
               '#title' => $this->t('View @display_title', ['@display_title' => $display_title]),
-              '#options' => array('alt' => array($this->t("Go to the real page for this display"))),
+              '#options' => ['alt' => [$this->t("Go to the real page for this display")]],
               '#url' => $url,
               '#prefix' => '<li class="view">',
               "#suffix" => '</li>',
-            );
+            ];
           }
         }
         if (!$is_default) {
-          $build['top']['actions']['duplicate'] = array(
+          $build['top']['actions']['duplicate'] = [
             '#type' => 'submit',
             '#value' => $this->t('Duplicate @display_title', ['@display_title' => $display_title]),
-            '#limit_validation_errors' => array(),
-            '#submit' => array('::submitDisplayDuplicate', '::submitDelayDestination'),
+            '#limit_validation_errors' => [],
+            '#submit' => ['::submitDisplayDuplicate', '::submitDelayDestination'],
             '#prefix' => '<li class="duplicate">',
             "#suffix" => '</li>',
-          );
+          ];
         }
         // Always allow a display to be deleted.
-        $build['top']['actions']['delete'] = array(
+        $build['top']['actions']['delete'] = [
           '#type' => 'submit',
           '#value' => $this->t('Delete @display_title', ['@display_title' => $display_title]),
-          '#limit_validation_errors' => array(),
-          '#submit' => array('::submitDisplayDelete', '::submitDelayDestination'),
+          '#limit_validation_errors' => [],
+          '#submit' => ['::submitDisplayDelete', '::submitDelayDestination'],
           '#prefix' => '<li class="delete">',
           "#suffix" => '</li>',
-        );
+        ];
 
-        foreach (Views::fetchPluginNames('display', NULL, array($view->get('storage')->get('base_table'))) as $type => $label) {
+        foreach (Views::fetchPluginNames('display', NULL, [$view->get('storage')->get('base_table')]) as $type => $label) {
           if ($type == $display['display_plugin']) {
             continue;
           }
 
-          $build['top']['actions']['duplicate_as'][$type] = array(
+          $build['top']['actions']['duplicate_as'][$type] = [
             '#type' => 'submit',
             '#value' => $this->t('Duplicate as @type', ['@type' => $label]),
-            '#limit_validation_errors' => array(),
-            '#submit' => array('::submitDuplicateDisplayAsType', '::submitDelayDestination'),
+            '#limit_validation_errors' => [],
+            '#submit' => ['::submitDuplicateDisplayAsType', '::submitDelayDestination'],
             '#prefix' => '<li class="duplicate">',
             '#suffix' => '</li>',
-          );
+          ];
         }
       }
       else {
-        $build['top']['actions']['undo_delete'] = array(
+        $build['top']['actions']['undo_delete'] = [
           '#type' => 'submit',
           '#value' => $this->t('Undo delete of @display_title', ['@display_title' => $display_title]),
-          '#limit_validation_errors' => array(),
-          '#submit' => array('::submitDisplayUndoDelete', '::submitDelayDestination'),
+          '#limit_validation_errors' => [],
+          '#submit' => ['::submitDisplayUndoDelete', '::submitDelayDestination'],
           '#prefix' => '<li class="undo-delete">',
           "#suffix" => '</li>',
-        );
+        ];
       }
       if ($is_enabled) {
-        $build['top']['actions']['disable'] = array(
+        $build['top']['actions']['disable'] = [
           '#type' => 'submit',
           '#value' => $this->t('Disable @display_title', ['@display_title' => $display_title]),
-          '#limit_validation_errors' => array(),
-          '#submit' => array('::submitDisplayDisable', '::submitDelayDestination'),
+          '#limit_validation_errors' => [],
+          '#submit' => ['::submitDisplayDisable', '::submitDelayDestination'],
           '#prefix' => '<li class="disable">',
           "#suffix" => '</li>',
-        );
+        ];
       }
       $build['top']['actions']['suffix']['#markup'] = '</ul>';
 
       // The area above the three columns.
-      $build['top']['display_title'] = array(
+      $build['top']['display_title'] = [
         '#theme' => 'views_ui_display_tab_setting',
         '#description' => $this->t('Display name'),
         '#link' => $view->getExecutable()->displayHandlers->get($display['id'])->optionLink($display_title, 'display_title'),
-      );
+      ];
     }
 
-    $build['columns'] = array();
-    $build['columns']['#theme_wrappers'] = array('container');
-    $build['columns']['#attributes'] = array('id' => 'edit-display-settings-main', 'class' => array('clearfix', 'views-display-columns'));
+    $build['columns'] = [];
+    $build['columns']['#theme_wrappers'] = ['container'];
+    $build['columns']['#attributes'] = ['id' => 'edit-display-settings-main', 'class' => ['clearfix', 'views-display-columns']];
 
-    $build['columns']['first']['#theme_wrappers'] = array('container');
-    $build['columns']['first']['#attributes'] = array('class' => array('views-display-column', 'first'));
+    $build['columns']['first']['#theme_wrappers'] = ['container'];
+    $build['columns']['first']['#attributes'] = ['class' => ['views-display-column', 'first']];
 
-    $build['columns']['second']['#theme_wrappers'] = array('container');
-    $build['columns']['second']['#attributes'] = array('class' => array('views-display-column', 'second'));
+    $build['columns']['second']['#theme_wrappers'] = ['container'];
+    $build['columns']['second']['#attributes'] = ['class' => ['views-display-column', 'second']];
 
-    $build['columns']['second']['settings'] = array();
-    $build['columns']['second']['header'] = array();
-    $build['columns']['second']['footer'] = array();
-    $build['columns']['second']['empty'] = array();
-    $build['columns']['second']['pager'] = array();
+    $build['columns']['second']['settings'] = [];
+    $build['columns']['second']['header'] = [];
+    $build['columns']['second']['footer'] = [];
+    $build['columns']['second']['empty'] = [];
+    $build['columns']['second']['pager'] = [];
 
     // The third column buckets are wrapped in details.
-    $build['columns']['third'] = array(
+    $build['columns']['third'] = [
       '#type' => 'details',
       '#title' => $this->t('Advanced'),
-      '#theme_wrappers' => array('details'),
-      '#attributes' => array(
-        'class' => array(
+      '#theme_wrappers' => ['details'],
+      '#attributes' => [
+        'class' => [
           'views-display-column',
           'third',
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
     // Collapse the details by default.
     $build['columns']['third']['#open'] = \Drupal::config('views.settings')->get('ui.show.advanced_column');
 
     // Each option (e.g. title, access, display as grid/table/list) fits into one
     // of several "buckets," or boxes (Format, Fields, Sort, and so on).
-    $buckets = array();
+    $buckets = [];
 
     // Fetch options from the display plugin, with a list of buckets they go into.
-    $options = array();
+    $options = [];
     $view->getExecutable()->displayHandlers->get($display['id'])->optionsSummary($buckets, $options);
 
     // Place each option into its bucket.
@@ -589,10 +589,10 @@ public function submitDisplayUndoDelete($form, FormStateInterface $form_state) {
     $view->cacheSet();
 
     // Redirect to the top-level edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $id,
-    ));
+    ]);
   }
 
   /**
@@ -608,10 +608,10 @@ public function submitDisplayEnable($form, FormStateInterface $form_state) {
     $view->cacheSet();
 
     // Redirect to the top-level edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $id,
-    ));
+    ]);
   }
 
   /**
@@ -626,10 +626,10 @@ public function submitDisplayDisable($form, FormStateInterface $form_state) {
     $view->cacheSet();
 
     // Redirect to the top-level edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $id,
-    ));
+    ]);
   }
 
   /**
@@ -681,43 +681,43 @@ public function rebuildCurrentTab(ViewUI $view, AjaxResponse $response, $display
   public function renderDisplayTop(ViewUI $view) {
     $display_id = $this->displayID;
     $element['#theme_wrappers'][] = 'views_ui_container';
-    $element['#attributes']['class'] = array('views-display-top', 'clearfix');
-    $element['#attributes']['id'] = array('views-display-top');
+    $element['#attributes']['class'] = ['views-display-top', 'clearfix'];
+    $element['#attributes']['id'] = ['views-display-top'];
 
     // Extra actions for the display
-    $element['extra_actions'] = array(
+    $element['extra_actions'] = [
       '#type' => 'dropbutton',
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'views-display-extra-actions',
-      ),
-      '#links' => array(
-        'edit-details' => array(
+      ],
+      '#links' => [
+        'edit-details' => [
           'title' => $this->t('Edit view name/description'),
           'url' => Url::fromRoute('views_ui.form_edit_details', ['js' => 'nojs', 'view' => $view->id(), 'display_id' => $display_id]),
-          'attributes' => array('class' => array('views-ajax-link')),
-        ),
-        'analyze' => array(
+          'attributes' => ['class' => ['views-ajax-link']],
+        ],
+        'analyze' => [
           'title' => $this->t('Analyze view'),
           'url' => Url::fromRoute('views_ui.form_analyze', ['js' => 'nojs', 'view' => $view->id(), 'display_id' => $display_id]),
-          'attributes' => array('class' => array('views-ajax-link')),
-        ),
-        'duplicate' => array(
+          'attributes' => ['class' => ['views-ajax-link']],
+        ],
+        'duplicate' => [
           'title' => $this->t('Duplicate view'),
           'url' => $view->urlInfo('duplicate-form'),
-        ),
-        'reorder' => array(
+        ],
+        'reorder' => [
           'title' => $this->t('Reorder displays'),
           'url' => Url::fromRoute('views_ui.form_reorder_displays', ['js' => 'nojs', 'view' => $view->id(), 'display_id' => $display_id]),
-          'attributes' => array('class' => array('views-ajax-link')),
-        ),
-      ),
-    );
+          'attributes' => ['class' => ['views-ajax-link']],
+        ],
+      ],
+    ];
 
     if ($view->access('delete')) {
-      $element['extra_actions']['#links']['delete'] = array(
+      $element['extra_actions']['#links']['delete'] = [
         'title' => $this->t('Delete view'),
         'url' => $view->urlInfo('delete-form'),
-      );
+      ];
     }
 
     // Let other modules add additional links here.
@@ -725,17 +725,17 @@ public function renderDisplayTop(ViewUI $view) {
 
     if (isset($view->type) && $view->type != $this->t('Default')) {
       if ($view->type == $this->t('Overridden')) {
-        $element['extra_actions']['#links']['revert'] = array(
+        $element['extra_actions']['#links']['revert'] = [
           'title' => $this->t('Revert view'),
           'href' => "admin/structure/views/view/{$view->id()}/revert",
-          'query' => array('destination' => $view->url('edit-form')),
-        );
+          'query' => ['destination' => $view->url('edit-form')],
+        ];
       }
       else {
-        $element['extra_actions']['#links']['delete'] = array(
+        $element['extra_actions']['#links']['delete'] = [
           'title' => $this->t('Delete view'),
           'url' => $view->urlInfo('delete-form'),
-        );
+        ];
       }
     }
 
@@ -750,18 +750,18 @@ public function renderDisplayTop(ViewUI $view) {
     }
 
     // Buttons for adding a new display.
-    foreach (Views::fetchPluginNames('display', NULL, array($view->get('base_table'))) as $type => $label) {
-      $element['add_display'][$type] = array(
+    foreach (Views::fetchPluginNames('display', NULL, [$view->get('base_table')]) as $type => $label) {
+      $element['add_display'][$type] = [
         '#type' => 'submit',
-        '#value' => $this->t('Add @display', array('@display' => $label)),
-        '#limit_validation_errors' => array(),
-        '#submit' => array('::submitDisplayAdd', '::submitDelayDestination'),
-        '#attributes' => array('class' => array('add-display')),
+        '#value' => $this->t('Add @display', ['@display' => $label]),
+        '#limit_validation_errors' => [],
+        '#submit' => ['::submitDisplayAdd', '::submitDelayDestination'],
+        '#attributes' => ['class' => ['add-display']],
         // Allow JavaScript to remove the 'Add ' prefix from the button label when
         // placing the button in a "Add" dropdown menu.
-        '#process' => array_merge(array('views_ui_form_button_was_clicked'), $this->elementInfo->getInfoProperty('submit', '#process', array())),
-        '#values' => array($this->t('Add @display', array('@display' => $label)), $label),
-      );
+        '#process' => array_merge(['views_ui_form_button_was_clicked'], $this->elementInfo->getInfoProperty('submit', '#process', [])),
+        '#values' => [$this->t('Add @display', ['@display' => $label]), $label],
+      ];
     }
 
     return $element;
@@ -824,10 +824,10 @@ public function submitDisplayDuplicate($form, FormStateInterface $form_state) {
     $view->cacheSet();
 
     // Redirect to the new display's edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $new_display_id,
-    ));
+    ]);
   }
 
   /**
@@ -846,10 +846,10 @@ public function submitDisplayAdd($form, FormStateInterface $form_state) {
     $view->cacheSet();
 
     // Redirect to the new display's edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $display_id,
-    ));
+    ]);
   }
 
   /**
@@ -872,10 +872,10 @@ public function submitDuplicateDisplayAsType($form, FormStateInterface $form_sta
     $view->cacheSet();
 
     // Redirect to the new display's edit page.
-    $form_state->setRedirect('entity.view.edit_display_form', array(
+    $form_state->setRedirect('entity.view.edit_display_form', [
       'view' => $view->id(),
       'display_id' => $new_display_id,
-    ));
+    ]);
   }
 
   /**
@@ -885,14 +885,14 @@ public function submitDuplicateDisplayAsType($form, FormStateInterface $form_sta
    * object emerges out of refactoring.
    */
   public function buildOptionForm(ViewUI $view, $id, $option, $display) {
-    $option_build = array();
+    $option_build = [];
     $option_build['#theme'] = 'views_ui_display_tab_setting';
 
     $option_build['#description'] = $option['title'];
 
     $option_build['#link'] = $view->getExecutable()->displayHandlers->get($display['id'])->optionLink($option['value'], $id, '', empty($option['desc']) ? '' : $option['desc']);
 
-    $option_build['#links'] = array();
+    $option_build['#links'] = [];
     if (!empty($option['links']) && is_array($option['links'])) {
       foreach ($option['links'] as $link_id => $link_value) {
         $option_build['#settings_links'][] = $view->getExecutable()->displayHandlers->get($display['id'])->optionLink($option['setting'], $link_id, 'views-button-configure', $link_value);
@@ -925,9 +925,9 @@ public function getFormBucket(ViewUI $view, $type, $display) {
 
     $types = $executable->getHandlerTypes();
 
-    $build = array(
-      '#theme_wrappers' => array('views_ui_display_tab_bucket'),
-    );
+    $build = [
+      '#theme_wrappers' => ['views_ui_display_tab_bucket'],
+    ];
 
     $build['#overridden'] = FALSE;
     $build['#defaulted'] = FALSE;
@@ -953,11 +953,11 @@ public function getFormBucket(ViewUI $view, $type, $display) {
         $style_plugin = $executable->style_plugin;
         $uses_fields = $style_plugin && $style_plugin->usesFields();
         if (!$uses_fields) {
-          $build['fields'][] = array(
+          $build['fields'][] = [
             '#markup' => $this->t('The selected style or row format does not use fields.'),
-            '#theme_wrappers' => array('views_ui_container'),
-            '#attributes' => array('class' => array('views-display-setting')),
-          );
+            '#theme_wrappers' => ['views_ui_container'],
+            '#attributes' => ['class' => ['views-display-setting']],
+          ];
           return $build;
         }
         break;
@@ -965,47 +965,47 @@ public function getFormBucket(ViewUI $view, $type, $display) {
       case 'footer':
       case 'empty':
         if (!$executable->display_handler->usesAreas()) {
-          $build[$type][] = array(
-            '#markup' => $this->t('The selected display type does not use @type plugins', array('@type' => $type)),
-            '#theme_wrappers' => array('views_ui_container'),
-            '#attributes' => array('class' => array('views-display-setting')),
-          );
+          $build[$type][] = [
+            '#markup' => $this->t('The selected display type does not use @type plugins', ['@type' => $type]),
+            '#theme_wrappers' => ['views_ui_container'],
+            '#attributes' => ['class' => ['views-display-setting']],
+          ];
           return $build;
         }
         break;
     }
 
     // Create an array of actions to pass to links template.
-    $actions = array();
+    $actions = [];
     $count_handlers = count($executable->display_handler->getHandlers($type));
 
     // Create the add text variable for the add action.
-    $add_text = $this->t('Add <span class="visually-hidden">@type</span>', array('@type' => $types[$type]['ltitle']));
+    $add_text = $this->t('Add <span class="visually-hidden">@type</span>', ['@type' => $types[$type]['ltitle']]);
 
-    $actions['add'] = array(
+    $actions['add'] = [
       'title' => $add_text,
       'url' => Url::fromRoute('views_ui.form_add_handler', ['js' => 'nojs', 'view' => $view->id(), 'display_id' => $display['id'], 'type' => $type]),
-      'attributes' => array('class' => array('icon compact add', 'views-ajax-link'), 'id' => 'views-add-' . $type),
-    );
+      'attributes' => ['class' => ['icon compact add', 'views-ajax-link'], 'id' => 'views-add-' . $type],
+    ];
     if ($count_handlers > 0) {
       // Create the rearrange text variable for the rearrange action.
-      $rearrange_text = $type == 'filter' ? $this->t('And/Or Rearrange <span class="visually-hidden">filter criteria</span>') : $this->t('Rearrange <span class="visually-hidden">@type</span>', array('@type' => $types[$type]['ltitle']));
+      $rearrange_text = $type == 'filter' ? $this->t('And/Or Rearrange <span class="visually-hidden">filter criteria</span>') : $this->t('Rearrange <span class="visually-hidden">@type</span>', ['@type' => $types[$type]['ltitle']]);
 
-      $actions['rearrange'] = array(
+      $actions['rearrange'] = [
         'title' => $rearrange_text,
         'url' => $rearrange_url,
-        'attributes' => array('class' => array($class, 'views-ajax-link'), 'id' => 'views-rearrange-' . $type),
-      );
+        'attributes' => ['class' => [$class, 'views-ajax-link'], 'id' => 'views-rearrange-' . $type],
+      ];
     }
 
     // Render the array of links
-    $build['#actions'] = array(
+    $build['#actions'] = [
       '#type' => 'dropbutton',
       '#links' => $actions,
-      '#attributes' => array(
-        'class' => array('views-ui-settings-bucket-operations'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['views-ui-settings-bucket-operations'],
+      ],
+    ];
 
     if (!$executable->display_handler->isDefaultDisplay()) {
       if (!$executable->display_handler->isDefaulted($types[$type]['plural'])) {
@@ -1019,14 +1019,14 @@ public function getFormBucket(ViewUI $view, $type, $display) {
     static $relationships = NULL;
     if (!isset($relationships)) {
       // Get relationship labels.
-      $relationships = array();
+      $relationships = [];
       foreach ($executable->display_handler->getHandlers('relationship') as $id => $handler) {
         $relationships[$id] = $handler->adminLabel();
       }
     }
 
     // Filters can now be grouped so we do a little bit extra:
-    $groups = array();
+    $groups = [];
     $grouping = FALSE;
     if ($type == 'filter') {
       $group_info = $executable->display_handler->getOption('filter_groups');
@@ -1035,28 +1035,28 @@ public function getFormBucket(ViewUI $view, $type, $display) {
       // "OR" label next to items within the group.
       if (!empty($group_info['groups']) && (count($group_info['groups']) > 1 || current($group_info['groups']) == 'OR')) {
         $grouping = TRUE;
-        $groups = array(0 => array());
+        $groups = [0 => []];
       }
     }
 
-    $build['fields'] = array();
+    $build['fields'] = [];
 
     foreach ($executable->display_handler->getOption($types[$type]['plural']) as $id => $field) {
       // Build the option link for this handler ("Node: ID = article").
-      $build['fields'][$id] = array();
+      $build['fields'][$id] = [];
       $build['fields'][$id]['#theme'] = 'views_ui_display_tab_setting';
 
       $handler = $executable->display_handler->getHandler($type, $id);
       if ($handler->broken()) {
         $build['fields'][$id]['#class'][] = 'broken';
         $field_name = $handler->adminLabel();
-        $build['fields'][$id]['#link'] = $this->l($field_name, new Url('views_ui.form_handler', array(
+        $build['fields'][$id]['#link'] = $this->l($field_name, new Url('views_ui.form_handler', [
           'js' => 'nojs',
           'view' => $view->id(),
           'display_id' => $display['id'],
           'type' => $type,
           'id' => $id,
-        ), array('attributes' => array('class' => array('views-ajax-link')))));
+        ], ['attributes' => ['class' => ['views-ajax-link']]]));
         continue;
       }
 
@@ -1067,39 +1067,39 @@ public function getFormBucket(ViewUI $view, $type, $display) {
 
       $description = $handler->adminSummary();
       $link_text = $field_name . (empty($description) ? '' : " ($description)");
-      $link_attributes = array('class' => array('views-ajax-link'));
+      $link_attributes = ['class' => ['views-ajax-link']];
       if (!empty($field['exclude'])) {
         $link_attributes['class'][] = 'views-field-excluded';
         // Add a [hidden] marker, if the field is excluded.
         $link_text .= ' [' . $this->t('hidden') . ']';
       }
-      $build['fields'][$id]['#link'] = $this->l($link_text, new Url('views_ui.form_handler', array(
+      $build['fields'][$id]['#link'] = $this->l($link_text, new Url('views_ui.form_handler', [
         'js' => 'nojs',
         'view' => $view->id(),
         'display_id' => $display['id'],
         'type' => $type,
         'id' => $id,
-      ), array('attributes' => $link_attributes)));
+      ], ['attributes' => $link_attributes]));
       $build['fields'][$id]['#class'][] = Html::cleanCssIdentifier($display['id'] . '-' . $type . '-' . $id);
 
       if ($executable->display_handler->useGroupBy() && $handler->usesGroupBy()) {
-        $build['fields'][$id]['#settings_links'][] = $this->l(SafeMarkup::format('<span class="label">@text</span>', array('@text' => $this->t('Aggregation settings'))), new Url('views_ui.form_handler_group', array(
+        $build['fields'][$id]['#settings_links'][] = $this->l(SafeMarkup::format('<span class="label">@text</span>', ['@text' => $this->t('Aggregation settings')]), new Url('views_ui.form_handler_group', [
           'js' => 'nojs',
           'view' => $view->id(),
           'display_id' => $display['id'],
           'type' => $type,
           'id' => $id,
-        ), array('attributes' => array('class' => array('views-button-configure', 'views-ajax-link'), 'title' => $this->t('Aggregation settings')))));
+        ], ['attributes' => ['class' => ['views-button-configure', 'views-ajax-link'], 'title' => $this->t('Aggregation settings')]]));
       }
 
       if ($handler->hasExtraOptions()) {
-        $build['fields'][$id]['#settings_links'][] = $this->l(SafeMarkup::format('<span class="label">@text</span>', array('@text' => $this->t('Settings'))), new Url('views_ui.form_handler_extra', array(
+        $build['fields'][$id]['#settings_links'][] = $this->l(SafeMarkup::format('<span class="label">@text</span>', ['@text' => $this->t('Settings')]), new Url('views_ui.form_handler_extra', [
           'js' => 'nojs',
           'view' => $view->id(),
           'display_id' => $display['id'],
           'type' => $type,
           'id' => $id,
-        ), array('attributes' => array('class' => array('views-button-configure', 'views-ajax-link'), 'title' => $this->t('Settings')))));
+        ], ['attributes' => ['class' => ['views-button-configure', 'views-ajax-link'], 'title' => $this->t('Settings')]]));
       }
 
       if ($grouping) {
@@ -1116,15 +1116,15 @@ public function getFormBucket(ViewUI $view, $type, $display) {
     // If using grouping, re-order fields so that they show up properly in the list.
     if ($type == 'filter' && $grouping) {
       $store = $build['fields'];
-      $build['fields'] = array();
+      $build['fields'] = [];
       foreach ($groups as $gid => $contents) {
         // Display an operator between each group.
         if (!empty($build['fields'])) {
-          $build['fields'][] = array(
+          $build['fields'][] = [
             '#theme' => 'views_ui_display_tab_setting',
-            '#class' => array('views-group-text'),
+            '#class' => ['views-group-text'],
             '#link' => ($group_info['operator'] == 'OR' ? $this->t('OR') : $this->t('AND')),
-          );
+          ];
         }
         // Display an operator between each pair of filters within the group.
         $keys = array_keys($contents);
diff --git a/core/modules/views_ui/src/ViewFormBase.php b/core/modules/views_ui/src/ViewFormBase.php
index 1533b80..49cdc49 100644
--- a/core/modules/views_ui/src/ViewFormBase.php
+++ b/core/modules/views_ui/src/ViewFormBase.php
@@ -88,7 +88,7 @@ public function getDisplayTabs(ViewUI $view) {
     $executable = $view->getExecutable();
     $executable->initDisplay();
     $display_id = $this->displayID;
-    $tabs = array();
+    $tabs = [];
 
     // Create a tab for each display.
     foreach ($view->get('display') as $id => $display) {
@@ -99,15 +99,15 @@ public function getDisplayTabs(ViewUI $view) {
         continue;
       }
 
-      $tabs[$id] = array(
+      $tabs[$id] = [
         '#theme' => 'menu_local_task',
         '#weight' => $display['position'],
-        '#link' => array(
+        '#link' => [
           'title' => $this->getDisplayLabel($view, $id),
-          'localized_options' => array(),
+          'localized_options' => [],
           'url' => $view->urlInfo('edit-display-form')->setRouteParameter('display_id', $id),
-        ),
-      );
+        ],
+      ];
       if (!empty($display['deleted'])) {
         $tabs[$id]['#link']['localized_options']['attributes']['class'][] = 'views-display-deleted-link';
       }
diff --git a/core/modules/views_ui/src/ViewListBuilder.php b/core/modules/views_ui/src/ViewListBuilder.php
index b38a15f..604426c 100644
--- a/core/modules/views_ui/src/ViewListBuilder.php
+++ b/core/modules/views_ui/src/ViewListBuilder.php
@@ -65,10 +65,10 @@ public function __construct(EntityTypeInterface $entity_type, EntityStorageInter
    * {@inheritdoc}
    */
   public function load() {
-    $entities = array(
-      'enabled' => array(),
-      'disabled' => array(),
-    );
+    $entities = [
+      'enabled' => [],
+      'disabled' => [],
+    ];
     foreach (parent::load() as $entity) {
       if ($entity->status()) {
         $entities['enabled'][] = $entity;
@@ -85,73 +85,73 @@ public function load() {
    */
   public function buildRow(EntityInterface $view) {
     $row = parent::buildRow($view);
-    return array(
-      'data' => array(
-        'view_name' => array(
-          'data' => array(
+    return [
+      'data' => [
+        'view_name' => [
+          'data' => [
             '#plain_text' => $view->label(),
-          ),
-        ),
-        'machine_name' => array(
-          'data' => array(
+          ],
+        ],
+        'machine_name' => [
+          'data' => [
             '#plain_text' => $view->id(),
-          ),
-        ),
-        'description' => array(
-          'data' => array(
+          ],
+        ],
+        'description' => [
+          'data' => [
             '#plain_text' => $view->get('description'),
-          ),
-        ),
-        'displays' => array(
-          'data' => array(
+          ],
+        ],
+        'displays' => [
+          'data' => [
             '#theme' => 'views_ui_view_displays_list',
             '#displays' => $this->getDisplaysList($view),
-          ),
-        ),
+          ],
+        ],
         'operations' => $row['operations'],
-      ),
-      '#attributes' => array(
-        'class' => array($view->status() ? 'views-ui-list-enabled' : 'views-ui-list-disabled'),
-      ),
-    );
+      ],
+      '#attributes' => [
+        'class' => [$view->status() ? 'views-ui-list-enabled' : 'views-ui-list-disabled'],
+      ],
+    ];
   }
 
   /**
    * {@inheritdoc}
    */
   public function buildHeader() {
-    return array(
-      'view_name' => array(
+    return [
+      'view_name' => [
         'data' => $this->t('View name'),
-        '#attributes' => array(
-          'class' => array('views-ui-name'),
-        ),
-      ),
-      'machine_name' => array(
+        '#attributes' => [
+          'class' => ['views-ui-name'],
+        ],
+      ],
+      'machine_name' => [
         'data' => $this->t('Machine name'),
-        '#attributes' => array(
-          'class' => array('views-ui-machine-name'),
-        ),
-      ),
-      'description' => array(
+        '#attributes' => [
+          'class' => ['views-ui-machine-name'],
+        ],
+      ],
+      'description' => [
         'data' => $this->t('Description'),
-        '#attributes' => array(
-          'class' => array('views-ui-description'),
-        ),
-      ),
-      'displays' => array(
+        '#attributes' => [
+          'class' => ['views-ui-description'],
+        ],
+      ],
+      'displays' => [
         'data' => $this->t('Displays'),
-        '#attributes' => array(
-          'class' => array('views-ui-displays'),
-        ),
-      ),
-      'operations' => array(
+        '#attributes' => [
+          'class' => ['views-ui-displays'],
+        ],
+      ],
+      'operations' => [
         'data' => $this->t('Operations'),
-        '#attributes' => array(
-          'class' => array('views-ui-operations'),
-        ),
-      ),
-    );
+        '#attributes' => [
+          'class' => ['views-ui-operations'],
+        ],
+      ],
+    ];
   }
 
   /**
@@ -161,15 +161,15 @@ public function getDefaultOperations(EntityInterface $entity) {
     $operations = parent::getDefaultOperations($entity);
 
     if ($entity->hasLinkTemplate('duplicate-form')) {
-      $operations['duplicate'] = array(
+      $operations['duplicate'] = [
         'title' => $this->t('Duplicate'),
         'weight' => 15,
         'url' => $entity->urlInfo('duplicate-form'),
-      );
+      ];
     }
 
     // Add AJAX functionality to enable/disable operations.
-    foreach (array('enable', 'disable') as $op) {
+    foreach (['enable', 'disable'] as $op) {
       if (isset($operations[$op])) {
         $operations[$op]['url'] = $entity->urlInfo($op);
         // Enable and disable operations should use AJAX.
@@ -191,37 +191,37 @@ public function render() {
     $list['#attached']['library'][] = 'core/drupal.ajax';
     $list['#attached']['library'][] = 'views_ui/views_ui.listing';
 
-    $form['filters'] = array(
+    $form['filters'] = [
       '#type' => 'container',
-      '#attributes' => array(
-        'class' => array('table-filter', 'js-show'),
-      ),
-    );
+      '#attributes' => [
+        'class' => ['table-filter', 'js-show'],
+      ],
+    ];
 
-    $list['filters']['text'] = array(
+    $list['filters']['text'] = [
       '#type' => 'search',
       '#title' => $this->t('Filter'),
       '#title_display' => 'invisible',
       '#size' => 60,
       '#placeholder' => $this->t('Filter by view name, machine name, description, or display path'),
-      '#attributes' => array(
-        'class' => array('views-filter-text'),
+      '#attributes' => [
+        'class' => ['views-filter-text'],
         'data-table' => '.views-listing-table',
         'autocomplete' => 'off',
         'title' => $this->t('Enter a part of the view name, machine name, description, or display path to filter by.'),
-      ),
-    );
+      ],
+    ];
 
-    $list['enabled']['heading']['#markup'] = '<h2>' . $this->t('Enabled', array(), array('context' => 'Plural')) . '</h2>';
-    $list['disabled']['heading']['#markup'] = '<h2>' . $this->t('Disabled', array(), array('context' => 'Plural')) . '</h2>';
-    foreach (array('enabled', 'disabled') as $status) {
+    $list['enabled']['heading']['#markup'] = '<h2>' . $this->t('Enabled', [], ['context' => 'Plural']) . '</h2>';
+    $list['disabled']['heading']['#markup'] = '<h2>' . $this->t('Disabled', [], ['context' => 'Plural']) . '</h2>';
+    foreach (['enabled', 'disabled'] as $status) {
       $list[$status]['#type'] = 'container';
-      $list[$status]['#attributes'] = array('class' => array('views-list-section', $status));
-      $list[$status]['table'] = array(
+      $list[$status]['#attributes'] = ['class' => ['views-list-section', $status]];
+      $list[$status]['table'] = [
         '#theme' => 'views_ui_views_listing_table',
         '#headers' => $this->buildHeader(),
-        '#attributes' => array('class' => array('views-listing-table', $status)),
-      );
+        '#attributes' => ['class' => ['views-listing-table', $status]],
+      ];
       foreach ($entities[$status] as $entity) {
         $list[$status]['table']['#rows'][$entity->id()] = $this->buildRow($entity);
       }
@@ -244,7 +244,7 @@ public function render() {
    *   An array of display types that this view includes.
    */
   protected function getDisplaysList(EntityInterface $view) {
-    $displays = array();
+    $displays = [];
 
     $executable = $view->getExecutable();
     $executable->initDisplay();
@@ -263,10 +263,10 @@ protected function getDisplaysList(EntityInterface $view) {
             $rendered_path = '/' . $path;
           }
         }
-        $displays[] = array(
+        $displays[] = [
           'display' => $definition['admin'],
           'path' => $rendered_path,
-        );
+        ];
       }
     }
 
diff --git a/core/modules/views_ui/src/ViewPreviewForm.php b/core/modules/views_ui/src/ViewPreviewForm.php
index 7b77929..2cc2533 100644
--- a/core/modules/views_ui/src/ViewPreviewForm.php
+++ b/core/modules/views_ui/src/ViewPreviewForm.php
@@ -22,43 +22,43 @@ public function form(array $form, FormStateInterface $form_state) {
 
     $form_state->disableCache();
 
-    $form['controls']['#attributes'] = array('class' => array('clearfix'));
+    $form['controls']['#attributes'] = ['class' => ['clearfix']];
 
-    $form['controls']['title'] = array(
+    $form['controls']['title'] = [
       '#prefix' => '<h2 class="view-preview-form__title">',
       '#markup' => $this->t('Preview'),
       '#suffix' => '</h2>',
-    );
+    ];
 
     // Add a checkbox controlling whether or not this display auto-previews.
-    $form['controls']['live_preview'] = array(
+    $form['controls']['live_preview'] = [
       '#type' => 'checkbox',
       '#id' => 'edit-displays-live-preview',
       '#title' => $this->t('Auto preview'),
       '#default_value' => \Drupal::config('views.settings')->get('ui.always_live_preview'),
-    );
+    ];
 
     // Add the arguments textfield
-    $form['controls']['view_args'] = array(
+    $form['controls']['view_args'] = [
       '#type' => 'textfield',
       '#title' => $this->t('Preview with contextual filters:'),
-      '#description' => $this->t('Separate contextual filter values with a "/". For example, %example.', array('%example' => '40/12/10')),
+      '#description' => $this->t('Separate contextual filter values with a "/". For example, %example.', ['%example' => '40/12/10']),
       '#id' => 'preview-args',
-    );
+    ];
 
-    $args = array();
+    $args = [];
     if (!$form_state->isValueEmpty('view_args')) {
       $args = explode('/', $form_state->getValue('view_args'));
     }
 
     $user_input = $form_state->getUserInput();
     if ($form_state->get('show_preview') || !empty($user_input['js'])) {
-      $form['preview'] = array(
+      $form['preview'] = [
         '#weight' => 110,
-        '#theme_wrappers' => array('container'),
+        '#theme_wrappers' => ['container'],
         '#attributes' => ['id' => 'views-live-preview', 'class' => ['views-live-preview']],
         'preview' => $view->renderPreview($this->displayID, $args),
-      );
+      ];
     }
     $uri = $view->urlInfo('preview-form');
     $uri->setRouteParameter('display_id', $this->displayID);
@@ -72,27 +72,27 @@ public function form(array $form, FormStateInterface $form_state) {
    */
   protected function actions(array $form, FormStateInterface $form_state) {
     $view = $this->entity;
-    return array(
-      '#attributes' => array(
+    return [
+      '#attributes' => [
         'id' => 'preview-submit-wrapper',
-        'class' => array('preview-submit-wrapper')
-      ),
-      'button' => array(
+        'class' => ['preview-submit-wrapper']
+      ],
+      'button' => [
         '#type' => 'submit',
         '#value' => $this->t('Update preview'),
-        '#attributes' => array('class' => array('arguments-preview')),
-        '#submit' => array('::submitPreview'),
+        '#attributes' => ['class' => ['arguments-preview']],
+        '#submit' => ['::submitPreview'],
         '#id' => 'preview-submit',
-        '#ajax' => array(
+        '#ajax' => [
           'url' => Url::fromRoute('entity.view.preview_form', ['view' => $view->id(), 'display_id' => $this->displayID]),
           'wrapper' => 'views-preview-wrapper',
           'event' => 'click',
-          'progress' => array('type' => 'fullscreen'),
+          'progress' => ['type' => 'fullscreen'],
           'method' => 'replaceWith',
           'disable-refocus' => TRUE,
-        ),
-      ),
-    );
+        ],
+      ],
+    ];
   }
 
   /**
diff --git a/core/modules/views_ui/src/ViewUI.php b/core/modules/views_ui/src/ViewUI.php
index cb222b0..b6841a8 100644
--- a/core/modules/views_ui/src/ViewUI.php
+++ b/core/modules/views_ui/src/ViewUI.php
@@ -107,7 +107,7 @@ class ViewUI implements ViewEntityInterface {
    *
    * @var array
    */
-  public static $forms = array(
+  public static $forms = [
     'add-handler' => '\Drupal\views_ui\Form\Ajax\AddItem',
     'analyze' => '\Drupal\views_ui\Form\Ajax\Analyze',
     'handler' => '\Drupal\views_ui\Form\Ajax\ConfigHandler',
@@ -118,7 +118,7 @@ class ViewUI implements ViewEntityInterface {
     'rearrange' => '\Drupal\views_ui\Form\Ajax\Rearrange',
     'rearrange-filter' => '\Drupal\views_ui\Form\Ajax\RearrangeFilter',
     'reorder-displays' => '\Drupal\views_ui\Form\Ajax\ReorderDisplays',
-  );
+  ];
 
   /**
    * Whether the config is being created, updated or deleted through the
@@ -277,22 +277,22 @@ public function standardCancel($form, FormStateInterface $form_state) {
    * docblock outdated?
    */
   public function getStandardButtons(&$form, FormStateInterface $form_state, $form_id, $name = NULL) {
-    $form['actions'] = array(
+    $form['actions'] = [
       '#type' => 'actions',
-    );
+    ];
 
     if (empty($name)) {
       $name = t('Apply');
       if (!empty($this->stack) && count($this->stack) > 1) {
         $name = t('Apply and continue');
       }
-      $names = array(t('Apply'), t('Apply and continue'));
+      $names = [t('Apply'), t('Apply and continue')];
     }
 
     // Forms that are purely informational set an ok_button flag, so we know not
     // to create an "Apply" button for them.
     if (!$form_state->get('ok_button')) {
-      $form['actions']['submit'] = array(
+      $form['actions']['submit'] = [
         '#type' => 'submit',
         '#value' => $name,
         '#id' => 'edit-submit-' . Html::getUniqueId($form_id),
@@ -301,9 +301,9 @@ public function getStandardButtons(&$form, FormStateInterface $form_state, $form
         // the current display. Since we have no way of knowing at this point
         // which display the user wants to update, views_ui_standard_submit will
         // take care of running the regular submit handler as appropriate.
-        '#submit' => array(array($this, 'standardSubmit')),
+        '#submit' => [[$this, 'standardSubmit']],
         '#button_type' => 'primary',
-      );
+      ];
       // Form API button click detection requires the button's #value to be the
       // same between the form build of the initial page request, and the
       // initial form build of the request processing the form submission.
@@ -315,21 +315,21 @@ public function getStandardButtons(&$form, FormStateInterface $form_state, $form
       // button labels.
       if (isset($names)) {
         $form['actions']['submit']['#values'] = $names;
-        $form['actions']['submit']['#process'] = array_merge(array('views_ui_form_button_was_clicked'), \Drupal::service('element_info')->getInfoProperty($form['actions']['submit']['#type'], '#process', array()));
+        $form['actions']['submit']['#process'] = array_merge(['views_ui_form_button_was_clicked'], \Drupal::service('element_info')->getInfoProperty($form['actions']['submit']['#type'], '#process', []));
       }
       // If a validation handler exists for the form, assign it to this button.
       $form['actions']['submit']['#validate'][] = [$form_state->getFormObject(), 'validateForm'];
     }
 
     // Create a "Cancel" button. For purely informational forms, label it "OK".
-    $cancel_submit = function_exists($form_id . '_cancel') ? $form_id . '_cancel' : array($this, 'standardCancel');
-    $form['actions']['cancel'] = array(
+    $cancel_submit = function_exists($form_id . '_cancel') ? $form_id . '_cancel' : [$this, 'standardCancel'];
+    $form['actions']['cancel'] = [
       '#type' => 'submit',
       '#value' => !$form_state->get('ok_button') ? t('Cancel') : t('Ok'),
-      '#submit' => array($cancel_submit),
-      '#validate' => array(),
-      '#limit_validation_errors' => array(),
-    );
+      '#submit' => [$cancel_submit],
+      '#validate' => [],
+      '#limit_validation_errors' => [],
+    ];
 
     // Compatibility, to be removed later: // TODO: When is "later"?
     // We used to set these items on the form, but now we want them on the $form_state:
@@ -348,11 +348,11 @@ public function getStandardButtons(&$form, FormStateInterface $form_state, $form
    */
   public function getOverrideValues($form, FormStateInterface $form_state) {
     // Make sure the dropdown exists in the first place.
-    if ($form_state->hasValue(array('override', 'dropdown'))) {
+    if ($form_state->hasValue(['override', 'dropdown'])) {
       // #default_value is used to determine whether it was the default value or not.
       // So the available options are: $display, 'default' and 'default_revert', not 'defaults'.
       $was_defaulted = ($form['override']['dropdown']['#default_value'] === 'defaults');
-      $dropdown = $form_state->getValue(array('override', 'dropdown'));
+      $dropdown = $form_state->getValue(['override', 'dropdown']);
       $is_defaulted = ($dropdown === 'default');
       $revert = ($dropdown === 'default_revert');
 
@@ -369,7 +369,7 @@ public function getOverrideValues($form, FormStateInterface $form_state) {
       $revert = FALSE;
     }
 
-    return array($was_defaulted, $is_defaulted, $revert);
+    return [$was_defaulted, $is_defaulted, $revert];
   }
 
   /**
@@ -383,10 +383,10 @@ public function addFormToStack($key, $display_id, $type, $id = NULL, $top = FALS
     Html::resetSeenIds();
 
     if (empty($this->stack)) {
-      $this->stack = array();
+      $this->stack = [];
     }
 
-    $stack = array(implode('-', array_filter(array($key, $this->id(), $display_id, $type, $id))), $key, $display_id, $type, $id);
+    $stack = [implode('-', array_filter([$key, $this->id(), $display_id, $type, $id])), $key, $display_id, $type, $id];
     // If we're being asked to add this form to the bottom of the stack, no
     // special logic is required. Our work is equally easy if we were asked to add
     // to the top of the stack, but there's nothing in it yet.
@@ -463,10 +463,10 @@ public function submitItemAdd($form, FormStateInterface $form_state) {
         if (isset($types[$type]['type'])) {
           $key = $types[$type]['type'];
         }
-        $item = array(
+        $item = [
           'table' => $table,
           'field' => $field,
-        );
+        ];
         $handler = Views::handlerManager($key)->getHandler($item);
         if ($this->getExecutable()->displayHandlers->get('default')->useGroupBy() && $handler->usesGroupBy()) {
           $this->addFormToStack('handler-group', $display_id, $type, $id);
@@ -512,7 +512,7 @@ public function endQueryCapture() {
     $this->additionalQueries = $queries;
   }
 
-  public function renderPreview($display_id, $args = array()) {
+  public function renderPreview($display_id, $args = []) {
     // Save the current path so it can be restored before returning from this function.
     $request_stack = \Drupal::requestStack();
     $current_request = $request_stack->getCurrentRequest();
@@ -531,7 +531,7 @@ public function renderPreview($display_id, $args = array()) {
 
     $combined = $show_query && $show_stats;
 
-    $rows = array('query' => array(), 'statistics' => array());
+    $rows = ['query' => [], 'statistics' => []];
 
     $errors = $executable->validate();
     $executable->destroy();
@@ -545,7 +545,7 @@ public function renderPreview($display_id, $args = array()) {
       // have some input in the query parameters, so we merge request() and
       // query() to ensure we get it all.
       $exposed_input = array_merge(\Drupal::request()->request->all(), \Drupal::request()->query->all());
-      foreach (array('view_name', 'view_display_id', 'view_args', 'view_path', 'view_dom_id', 'pager_element', 'view_base_path', AjaxResponseSubscriber::AJAX_REQUEST_PARAMETER, 'ajax_page_state', 'form_id', 'form_build_id', 'form_token') as $key) {
+      foreach (['view_name', 'view_display_id', 'view_args', 'view_path', 'view_dom_id', 'pager_element', 'view_base_path', AjaxResponseSubscriber::AJAX_REQUEST_PARAMETER, 'ajax_page_state', 'form_id', 'form_build_id', 'form_token'] as $key) {
         if (isset($exposed_input[$key])) {
           unset($exposed_input[$key]);
         }
@@ -554,7 +554,7 @@ public function renderPreview($display_id, $args = array()) {
 
       if (!$executable->setDisplay($display_id)) {
         return [
-          '#markup' => t('Invalid display id @display', array('@display' => $display_id)),
+          '#markup' => t('Invalid display id @display', ['@display' => $display_id]),
         ];
       }
 
@@ -620,76 +620,76 @@ public function renderPreview($display_id, $args = array()) {
           if ($show_query) {
             $query_string = $executable->build_info['query'];
             // Only the sql default class has a method getArguments.
-            $quoted = array();
+            $quoted = [];
 
             if ($executable->query instanceof Sql) {
               $quoted = $query_string->getArguments();
               $connection = Database::getConnection();
               foreach ($quoted as $key => $val) {
                 if (is_array($val)) {
-                  $quoted[$key] = implode(', ', array_map(array($connection, 'quote'), $val));
+                  $quoted[$key] = implode(', ', array_map([$connection, 'quote'], $val));
                 }
                 else {
                   $quoted[$key] = $connection->quote($val);
                 }
               }
             }
-            $rows['query'][] = array(
-              array(
-                'data' => array(
+            $rows['query'][] = [
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => "<strong>{% trans 'Query' %}</strong>",
-                ),
-              ),
-              array(
-                'data' => array(
+                ],
+              ],
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => '<pre>{{ query }}</pre>',
-                  '#context' => array('query' => strtr($query_string, $quoted)),
-                ),
-              ),
-            );
+                  '#context' => ['query' => strtr($query_string, $quoted)],
+                ],
+              ],
+            ];
             if (!empty($this->additionalQueries)) {
-              $queries[] = array(
+              $queries[] = [
                 '#prefix' => '<strong>',
                 '#markup' => t('These queries were run during view rendering:'),
                 '#suffix' => '</strong>',
-              );
+              ];
               foreach ($this->additionalQueries as $query) {
                 $query_string = strtr($query['query'], $query['args']);
-                $queries[] = array(
+                $queries[] = [
                   '#prefix' => "\n",
-                  '#markup' => t('[@time ms] @query', array('@time' => round($query['time'] * 100000, 1) / 100000.0, '@query' => $query_string)),
-                );
+                  '#markup' => t('[@time ms] @query', ['@time' => round($query['time'] * 100000, 1) / 100000.0, '@query' => $query_string]),
+                ];
               }
 
-              $rows['query'][] = array(
-                array(
-                  'data' => array(
+              $rows['query'][] = [
+                [
+                  'data' => [
                     '#type' => 'inline_template',
                     '#template' => "<strong>{% trans 'Other queries' %}</strong>",
-                  ),
-                ),
-                array(
-                  'data' => array(
+                  ],
+                ],
+                [
+                  'data' => [
                     '#prefix' => '<pre>',
                      'queries' => $queries,
                      '#suffix' => '</pre>',
-                    ),
-                ),
-              );
+                    ],
+                ],
+              ];
             }
           }
           if ($show_info) {
-            $rows['query'][] = array(
-              array(
-                'data' => array(
+            $rows['query'][] = [
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => "<strong>{% trans 'Title' %}</strong>",
-                ),
-              ),
+                ],
+              ],
               Xss::filterAdmin($executable->getTitle()),
-            );
+            ];
             if (isset($path)) {
               // @todo Views should expect and store a leading /. See:
               //   https://www.drupal.org/node/2423913
@@ -698,51 +698,51 @@ public function renderPreview($display_id, $args = array()) {
             else {
               $path = t('This display has no path.');
             }
-            $rows['query'][] = array(
-              array(
-                'data' => array(
+            $rows['query'][] = [
+              [
+                'data' => [
                   '#prefix' => '<strong>',
                   '#markup' => t('Path'),
                   '#suffix' => '</strong>',
-                ),
-              ),
-              array(
-                'data' => array(
+                ],
+              ],
+              [
+                'data' => [
                   '#markup' => $path,
-                ),
-              )
-            );
+                ],
+              ]
+            ];
           }
           if ($show_stats) {
-            $rows['statistics'][] = array(
-              array(
-                'data' => array(
+            $rows['statistics'][] = [
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => "<strong>{% trans 'Query build time' %}</strong>",
-                ),
-              ),
-              t('@time ms', array('@time' => intval($executable->build_time * 100000) / 100)),
-            );
+                ],
+              ],
+              t('@time ms', ['@time' => intval($executable->build_time * 100000) / 100]),
+            ];
 
-            $rows['statistics'][] = array(
-              array(
-                'data' => array(
+            $rows['statistics'][] = [
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => "<strong>{% trans 'Query execute time' %}</strong>",
-                ),
-              ),
-              t('@time ms', array('@time' => intval($executable->execute_time * 100000) / 100)),
-            );
+                ],
+              ],
+              t('@time ms', ['@time' => intval($executable->execute_time * 100000) / 100]),
+            ];
 
-            $rows['statistics'][] = array(
-              array(
-                'data' => array(
+            $rows['statistics'][] = [
+              [
+                'data' => [
                   '#type' => 'inline_template',
                   '#template' => "<strong>{% trans 'View render time' %}</strong>",
-                ),
-              ),
-              t('@time ms', array('@time' => intval($this->render_time * 100) / 100)),
-            );
+                ],
+              ],
+              t('@time ms', ['@time' => intval($this->render_time * 100) / 100]),
+            ];
           }
           \Drupal::moduleHandler()->alter('views_preview_info', $rows, $executable);
         }
@@ -750,36 +750,36 @@ public function renderPreview($display_id, $args = array()) {
           // No query was run. Display that information in place of either the
           // query or the performance statistics, whichever comes first.
           if ($combined || ($show_location === 'above')) {
-            $rows['query'][] = array(
-              array(
-                'data' => array(
+            $rows['query'][] = [
+              [
+                'data' => [
                   '#prefix' => '<strong>',
                   '#markup' => t('Query'),
                   '#suffix' => '</strong>',
-                ),
-              ),
-              array(
-                'data' => array(
+                ],
+              ],
+              [
+                'data' => [
                   '#markup' => t('No query was run'),
-                ),
-              ),
-            );
+                ],
+              ],
+            ];
           }
           else {
-            $rows['statistics'][] = array(
-              array(
-                'data' => array(
+            $rows['statistics'][] = [
+              [
+                'data' => [
                   '#prefix' => '<strong>',
                   '#markup' => t('Query'),
                   '#suffix' => '</strong>',
-                ),
-              ),
-              array(
-                'data' => array(
+                ],
+              ],
+              [
+                'data' => [
                   '#markup' => t('No query was run'),
-                ),
-              ),
-            );
+                ],
+              ],
+            ];
           }
         }
       }
@@ -795,12 +795,12 @@ public function renderPreview($display_id, $args = array()) {
 
     // Assemble the preview, the query info, and the query statistics in the
     // requested order.
-    $table = array(
+    $table = [
       '#type' => 'table',
       '#prefix' => '<div class="views-query-info">',
       '#suffix' => '</div>',
       '#rows' => array_merge($rows['query'], $rows['statistics']),
-    );
+    ];
 
     if ($show_location == 'above') {
       $output = [
@@ -843,7 +843,7 @@ public function getFormProgress() {
       $current = reset($keys) + 1;
       $total = end($keys) + 1;
       if ($total > 1) {
-        $progress = array();
+        $progress = [];
         $progress['current'] = $current;
         $progress['total'] = $total;
       }
@@ -892,7 +892,7 @@ public function isLocked() {
    * Passes through all unknown calls onto the storage object.
    */
   public function __call($method, $args) {
-    return call_user_func_array(array($this->storage, $method), $args);
+    return call_user_func_array([$this->storage, $method], $args);
   }
 
   /**
@@ -968,7 +968,7 @@ public static function loadMultiple(array $ids = NULL) {
   /**
    * {@inheritdoc}
    */
-  public static function create(array $values = array()) {
+  public static function create(array $values = []) {
     return View::create($values);
   }
 
@@ -1167,7 +1167,7 @@ public function referencedEntities() {
   /**
    * {@inheritdoc}
    */
-  public function url($rel = 'edit-form', $options = array()) {
+  public function url($rel = 'edit-form', $options = []) {
     return $this->storage->url($rel, $options);
   }
 
diff --git a/core/modules/views_ui/tests/src/Kernel/TagTest.php b/core/modules/views_ui/tests/src/Kernel/TagTest.php
index fda2e28..294e481 100644
--- a/core/modules/views_ui/tests/src/Kernel/TagTest.php
+++ b/core/modules/views_ui/tests/src/Kernel/TagTest.php
@@ -19,7 +19,7 @@ class TagTest extends ViewsKernelTestBase {
    *
    * @var array
    */
-  public static $modules = array('views', 'views_ui', 'user');
+  public static $modules = ['views', 'views_ui', 'user'];
 
   /**
    * Tests the views_ui_autocomplete_tag function.
@@ -28,12 +28,12 @@ public function testViewsUiAutocompleteTag() {
     \Drupal::moduleHandler()->loadInclude('views_ui', 'inc', 'admin');
 
     // Save 15 views with a tag.
-    $tags = array();
+    $tags = [];
     for ($i = 0; $i < 16; $i++) {
       $suffix = $i % 2 ? 'odd' : 'even';
       $tag = 'autocomplete_tag_test_' . $suffix . $this->randomMachineName();
       $tags[] = $tag;
-      View::create(array('tag' => $tag, 'id' => $this->randomMachineName()))->save();
+      View::create(['tag' => $tag, 'id' => $this->randomMachineName()])->save();
     }
 
     // Make sure just ten results are returns.
@@ -46,7 +46,7 @@ public function testViewsUiAutocompleteTag() {
 
     // Make sure the returned array has the proper format.
     $suggestions = array_map(function ($tag) {
-      return array('value' => $tag, 'label' => Html::escape($tag));
+      return ['value' => $tag, 'label' => Html::escape($tag)];
     }, $tags);
     foreach ($matches as $match) {
       $this->assertTrue(in_array($match, $suggestions), 'Make sure the returned array has the proper format.');
@@ -59,7 +59,7 @@ public function testViewsUiAutocompleteTag() {
     $matches = (array) json_decode($result->getContent(), TRUE);
     $this->assertEqual(count($matches), 8, 'Make sure that only a subset is returned.');
     foreach ($matches as $tag) {
-      $this->assertTrue(array_search($tag['value'], $tags) !== FALSE, format_string('Make sure the returned tag @tag actually exists.', array('@tag' => $tag['value'])));
+      $this->assertTrue(array_search($tag['value'], $tags) !== FALSE, format_string('Make sure the returned tag @tag actually exists.', ['@tag' => $tag['value']]));
     }
 
     // Make sure an invalid result doesn't return anything.
diff --git a/core/modules/views_ui/tests/src/Unit/Form/Ajax/RearrangeFilterTest.php b/core/modules/views_ui/tests/src/Unit/Form/Ajax/RearrangeFilterTest.php
index bb8eb77..b2d3f96 100644
--- a/core/modules/views_ui/tests/src/Unit/Form/Ajax/RearrangeFilterTest.php
+++ b/core/modules/views_ui/tests/src/Unit/Form/Ajax/RearrangeFilterTest.php
@@ -17,8 +17,8 @@ class RearrangeFilterTest extends UnitTestCase {
    */
   public function testStaticMethods() {
     // Test the RearrangeFilter::arrayKeyPlus method.
-    $original = array(0 => 'one', 1 => 'two', 2 => 'three');
-    $expected = array(1 => 'one', 2 => 'two', 3 => 'three');
+    $original = [0 => 'one', 1 => 'two', 2 => 'three'];
+    $expected = [1 => 'one', 2 => 'two', 3 => 'three'];
     $this->assertSame(RearrangeFilter::arrayKeyPlus($original), $expected);
   }
 
diff --git a/core/modules/views_ui/tests/src/Unit/ViewListBuilderTest.php b/core/modules/views_ui/tests/src/Unit/ViewListBuilderTest.php
index 9b64696..23cc7a8 100644
--- a/core/modules/views_ui/tests/src/Unit/ViewListBuilderTest.php
+++ b/core/modules/views_ui/tests/src/Unit/ViewListBuilderTest.php
@@ -38,54 +38,54 @@ public function testBuildRowEntityList() {
 
     $display_manager->expects($this->any())
       ->method('getDefinition')
-      ->will($this->returnValueMap(array(
-        array(
+      ->will($this->returnValueMap([
+        [
           'default',
           TRUE,
-          array(
+          [
             'id' => 'default',
             'title' => 'Master',
             'theme' => 'views_view',
             'no_ui' => TRUE,
             'admin' => '',
-          )
-        ),
-        array(
+          ]
+        ],
+        [
           'page',
           TRUE,
-          array(
+          [
             'id' => 'page',
             'title' => 'Page',
             'uses_menu_links' => TRUE,
             'uses_route' => TRUE,
-            'contextual_links_locations' => array('page'),
+            'contextual_links_locations' => ['page'],
             'theme' => 'views_view',
             'admin' => 'Page admin label',
-          )
-        ),
-        array(
+          ]
+        ],
+        [
           'embed',
           TRUE,
-          array(
+          [
             'id' => 'embed',
             'title' => 'embed',
             'theme' => 'views_view',
             'admin' => 'Embed admin label',
-          )
-        ),
-      )));
+          ]
+        ],
+      ]));
 
 
     $default_display = $this->getMock('Drupal\views\Plugin\views\display\DefaultDisplay',
-      array('initDisplay'),
-      array(array(), 'default', $display_manager->getDefinition('default'))
+      ['initDisplay'],
+      [[], 'default', $display_manager->getDefinition('default')]
     );
     $route_provider = $this->getMock('Drupal\Core\Routing\RouteProviderInterface');
     $state = $this->getMock('\Drupal\Core\State\StateInterface');
     $menu_storage = $this->getMock('\Drupal\Core\Entity\EntityStorageInterface');
     $page_display = $this->getMock('Drupal\views\Plugin\views\display\Page',
-      array('initDisplay', 'getPath'),
-      array(array(), 'default', $display_manager->getDefinition('page'), $route_provider, $state, $menu_storage)
+      ['initDisplay', 'getPath'],
+      [[], 'default', $display_manager->getDefinition('page'), $route_provider, $state, $menu_storage]
     );
     $page_display->expects($this->any())
       ->method('getPath')
@@ -94,11 +94,11 @@ public function testBuildRowEntityList() {
         $this->returnValue('<object>malformed_path</object>'),
         $this->returnValue('<script>alert("placeholder_page/%")</script>')));
 
-    $embed_display = $this->getMock('Drupal\views\Plugin\views\display\Embed', array('initDisplay'),
-      array(array(), 'default', $display_manager->getDefinition('embed'))
+    $embed_display = $this->getMock('Drupal\views\Plugin\views\display\Embed', ['initDisplay'],
+      [[], 'default', $display_manager->getDefinition('embed')]
     );
 
-    $values = array();
+    $values = [];
     $values['status'] = FALSE;
     $values['display']['default']['id'] = 'default';
     $values['display']['default']['display_title'] = 'Display';
@@ -125,13 +125,13 @@ public function testBuildRowEntityList() {
 
     $display_manager->expects($this->any())
       ->method('createInstance')
-      ->will($this->returnValueMap(array(
-        array('default', $values['display']['default'], $default_display),
-        array('page', $values['display']['page_1'], $page_display),
-        array('page', $values['display']['page_2'], $page_display),
-        array('page', $values['display']['page_3'], $page_display),
-        array('embed', $values['display']['embed'], $embed_display),
-      )));
+      ->will($this->returnValueMap([
+        ['default', $values['display']['default'], $default_display],
+        ['page', $values['display']['page_1'], $page_display],
+        ['page', $values['display']['page_2'], $page_display],
+        ['page', $values['display']['page_3'], $page_display],
+        ['embed', $values['display']['embed'], $embed_display],
+      ]));
 
     $container = new ContainerBuilder();
     $user = $this->getMock('Drupal\Core\Session\AccountInterface');
@@ -159,24 +159,24 @@ public function testBuildRowEntityList() {
     $row = $view_list_builder->buildRow($view);
 
     // Expected output array for view's displays.
-    $expected_displays = array(
-      '0' => array(
+    $expected_displays = [
+      '0' => [
         'display' => 'Embed admin label',
         'path' => FALSE,
-      ),
-      '1' => array(
+      ],
+      '1' => [
         'display' => 'Page admin label',
         'path' => '/<object>malformed_path</object>',
-      ),
-      '2' => array(
+      ],
+      '2' => [
         'display' => 'Page admin label',
         'path' => '/<script>alert("placeholder_page/%")</script>',
-      ),
-      '3' => array(
+      ],
+      '3' => [
         'display' => 'Page admin label',
         'path' => '/test_page',
-      ),
-    );
+      ],
+    ];
 
     // Compare the expected and generated output.
     $this->assertEquals($expected_displays, $row['data']['displays']['data']['#displays']);
@@ -187,7 +187,7 @@ public function testBuildRowEntityList() {
 class TestViewListBuilder extends ViewListBuilder {
 
   public function buildOperations(EntityInterface $entity) {
-    return array();
+    return [];
   }
 
 }
diff --git a/core/modules/views_ui/tests/src/Unit/ViewUIObjectTest.php b/core/modules/views_ui/tests/src/Unit/ViewUIObjectTest.php
index 293bfeb..f49b25a 100644
--- a/core/modules/views_ui/tests/src/Unit/ViewUIObjectTest.php
+++ b/core/modules/views_ui/tests/src/Unit/ViewUIObjectTest.php
@@ -18,14 +18,14 @@ class ViewUIObjectTest extends UnitTestCase {
    * Tests entity method decoration.
    */
   public function testEntityDecoration() {
-    $method_args = array();
-    $method_args['setOriginalId'] = array(12);
-    $method_args['setStatus'] = array(TRUE);
-    $method_args['enforceIsNew'] = array(FALSE);
-    $method_args['label'] = array(LanguageInterface::LANGCODE_NOT_SPECIFIED);
+    $method_args = [];
+    $method_args['setOriginalId'] = [12];
+    $method_args['setStatus'] = [TRUE];
+    $method_args['enforceIsNew'] = [FALSE];
+    $method_args['label'] = [LanguageInterface::LANGCODE_NOT_SPECIFIED];
 
     $reflection = new \ReflectionClass('Drupal\Core\Config\Entity\ConfigEntityInterface');
-    $interface_methods = array();
+    $interface_methods = [];
     foreach ($reflection->getMethods() as $reflection_method) {
       $interface_methods[] = $reflection_method->getName();
 
@@ -38,15 +38,15 @@ public function testEntityDecoration() {
       // dependency management.
       if (!in_array($reflection_method->getName(), ['isNew', 'isSyncing', 'isUninstalling', 'getConfigDependencyKey', 'getConfigDependencyName', 'calculateDependencies'])) {
         if (count($reflection_method->getParameters()) == 0) {
-          $method_args[$reflection_method->getName()] = array();
+          $method_args[$reflection_method->getName()] = [];
         }
       }
     }
 
-    $storage = $this->getMock('Drupal\views\Entity\View', $interface_methods, array(array(), 'view'));
+    $storage = $this->getMock('Drupal\views\Entity\View', $interface_methods, [[], 'view']);
     $executable = $this->getMockBuilder('Drupal\views\ViewExecutable')
       ->disableOriginalConstructor()
-      ->setConstructorArgs(array($storage))
+      ->setConstructorArgs([$storage])
       ->getMock();
     $storage->set('executable', $executable);
 
@@ -58,7 +58,7 @@ public function testEntityDecoration() {
       foreach ($args as $arg) {
         $method_mock->with($this->equalTo($arg));
       }
-      call_user_func_array(array($view_ui, $method), $args);
+      call_user_func_array([$view_ui, $method], $args);
     }
 
     $storage->expects($this->once())
@@ -70,10 +70,10 @@ public function testEntityDecoration() {
    * Tests the isLocked method.
    */
   public function testIsLocked() {
-    $storage = $this->getMock('Drupal\views\Entity\View', array(), array(array(), 'view'));
+    $storage = $this->getMock('Drupal\views\Entity\View', [], [[], 'view']);
     $executable = $this->getMockBuilder('Drupal\views\ViewExecutable')
       ->disableOriginalConstructor()
-      ->setConstructorArgs(array($storage))
+      ->setConstructorArgs([$storage])
       ->getMock();
     $storage->set('executable', $executable);
     $account = $this->getMock('Drupal\Core\Session\AccountInterface');
@@ -91,20 +91,20 @@ public function testIsLocked() {
     $this->assertFalse($view_ui->isLocked());
 
     // Set the lock object with a different owner than the mocked account above.
-    $lock = (object) array(
+    $lock = (object) [
       'owner' => 2,
-      'data' => array(),
+      'data' => [],
       'updated' => (int) $_SERVER['REQUEST_TIME'],
-    );
+    ];
     $view_ui->lock = $lock;
     $this->assertTrue($view_ui->isLocked());
 
     // Set a different lock object with the same object as the mocked account.
-    $lock = (object) array(
+    $lock = (object) [
       'owner' => 1,
-      'data' => array(),
+      'data' => [],
       'updated' => (int) $_SERVER['REQUEST_TIME'],
-    );
+    ];
     $view_ui->lock = $lock;
     $this->assertFalse($view_ui->isLocked());
   }
diff --git a/core/modules/views_ui/views_ui.module b/core/modules/views_ui/views_ui.module
index 511bcf9..15f85e3 100644
--- a/core/modules/views_ui/views_ui.module
+++ b/core/modules/views_ui/views_ui.module
@@ -19,15 +19,15 @@ function views_ui_help($route_name, RouteMatchInterface $route_match) {
     case 'help.page.views_ui':
       $output = '';
       $output .= '<h3>' . t('About') . '</h3>';
-      $output .= '<p>' . t('The Views UI module provides an interface for managing views for the <a href=":views">Views module</a>. For more information, see the <a href=":handbook">online documentation for the Views UI module</a>.', array(':views' => \Drupal::url('help.page', array('name' => 'views')), ':handbook' => 'https://www.drupal.org/documentation/modules/views_ui')) . '</p>';
+      $output .= '<p>' . t('The Views UI module provides an interface for managing views for the <a href=":views">Views module</a>. For more information, see the <a href=":handbook">online documentation for the Views UI module</a>.', [':views' => \Drupal::url('help.page', ['name' => 'views']), ':handbook' => 'https://www.drupal.org/documentation/modules/views_ui']) . '</p>';
       $output .= '<h3>' . t('Uses') . '</h3>';
       $output .= '<dl>';
       $output .= '<dt>' . t('Creating and managing views') . '</dt>';
-      $output .= '<dd>' . t('Views can be created from the <a href=":list">Views list page</a> by using the "Add view" action. Existing views can be managed from the <a href=":list">Views list page</a> by locating the view in the "Enabled" or "Disabled" list and selecting the desired operation action, for example "Edit".', array(':list' => \Drupal::url('entity.view.collection', array('name' => 'views_ui')))) . '</dd>';
+      $output .= '<dd>' . t('Views can be created from the <a href=":list">Views list page</a> by using the "Add view" action. Existing views can be managed from the <a href=":list">Views list page</a> by locating the view in the "Enabled" or "Disabled" list and selecting the desired operation action, for example "Edit".', [':list' => \Drupal::url('entity.view.collection', ['name' => 'views_ui'])]) . '</dd>';
       $output .= '<dt>' . t('Enabling and disabling views') . '<dt>';
-      $output .= '<dd>' . t('Views can be enabled or disabled from the <a href=":list">Views list page</a>. To enable a view, find the view within the "Disabled" list and select the "Enable" operation. To disable a view find the view within the "Enabled" list and select the "Disable" operation.', array(':list' => \Drupal::url('entity.view.collection', array('name' => 'views_ui')))) . '</dd>';
+      $output .= '<dd>' . t('Views can be enabled or disabled from the <a href=":list">Views list page</a>. To enable a view, find the view within the "Disabled" list and select the "Enable" operation. To disable a view find the view within the "Enabled" list and select the "Disable" operation.', [':list' => \Drupal::url('entity.view.collection', ['name' => 'views_ui'])]) . '</dd>';
       $output .= '<dt>' . t('Exporting and importing views') . '</dt>';
-      $output .= '<dd>' . t('Views can be exported and imported as configuration files by using the <a href=":config">Configuration Manager module</a>.', array(':config' => (\Drupal::moduleHandler()->moduleExists('config')) ? \Drupal::url('help.page', array('name' => 'config')) : '#')) . '</dd>';
+      $output .= '<dd>' . t('Views can be exported and imported as configuration files by using the <a href=":config">Configuration Manager module</a>.', [':config' => (\Drupal::moduleHandler()->moduleExists('config')) ? \Drupal::url('help.page', ['name' => 'config']) : '#']) . '</dd>';
       $output .= '</dl>';
       return $output;
   }
@@ -61,69 +61,69 @@ function views_ui_entity_type_build(array &$entity_types) {
  * Implements hook_theme().
  */
 function views_ui_theme() {
-  return array(
+  return [
     // edit a view
-    'views_ui_display_tab_setting' => array(
-      'variables' => array('description' => '', 'link' => '', 'settings_links' => array(), 'overridden' => FALSE, 'defaulted' => FALSE, 'description_separator' => TRUE, 'class' => array()),
+    'views_ui_display_tab_setting' => [
+      'variables' => ['description' => '', 'link' => '', 'settings_links' => [], 'overridden' => FALSE, 'defaulted' => FALSE, 'description_separator' => TRUE, 'class' => []],
       'file' => 'views_ui.theme.inc',
-    ),
-    'views_ui_display_tab_bucket' => array(
+    ],
+    'views_ui_display_tab_bucket' => [
       'render element' => 'element',
       'file' => 'views_ui.theme.inc',
-    ),
-    'views_ui_rearrange_filter_form' => array(
+    ],
+    'views_ui_rearrange_filter_form' => [
       'render element' => 'form',
       'file' => 'views_ui.theme.inc',
-    ),
-    'views_ui_expose_filter_form' => array(
+    ],
+    'views_ui_expose_filter_form' => [
       'render element' => 'form',
       'file' => 'views_ui.theme.inc',
-    ),
+    ],
 
     // Legacy theme hook for displaying views info.
-    'views_ui_view_info' => array(
-      'variables' => array('view' => NULL, 'displays' => NULL),
+    'views_ui_view_info' => [
+      'variables' => ['view' => NULL, 'displays' => NULL],
       'file' => 'views_ui.theme.inc',
-    ),
+    ],
 
     // List views.
-    'views_ui_views_listing_table' => array(
-      'variables' => array(
+    'views_ui_views_listing_table' => [
+      'variables' => [
         'headers' => NULL,
         'rows' => NULL,
-        'attributes' => array(),
-      ),
+        'attributes' => [],
+      ],
       'file' => 'views_ui.theme.inc',
-    ),
-    'views_ui_view_displays_list' => array(
-      'variables' => array('displays' => array()),
-    ),
+    ],
+    'views_ui_view_displays_list' => [
+      'variables' => ['displays' => []],
+    ],
 
     // Group of filters.
-    'views_ui_build_group_filter_form' => array(
+    'views_ui_build_group_filter_form' => [
       'render element' => 'form',
       'file' => 'views_ui.theme.inc',
-    ),
+    ],
 
     // On behalf of a plugin
-    'views_ui_style_plugin_table' => array(
+    'views_ui_style_plugin_table' => [
       'render element' => 'form',
       'file' => 'views_ui.theme.inc',
-    ),
+    ],
 
     // When previewing a view.
-    'views_ui_view_preview_section' => array(
-      'variables' => array('view' => NULL, 'section' => NULL, 'content' => NULL, 'links' => ''),
+    'views_ui_view_preview_section' => [
+      'variables' => ['view' => NULL, 'section' => NULL, 'content' => NULL, 'links' => ''],
       'file' => 'views_ui.theme.inc',
-    ),
+    ],
 
     // Generic container wrapper, to use instead of theme_container when an id
     // is not desired.
-    'views_ui_container' => array(
-      'variables' => array('children' => NULL, 'attributes' => array()),
+    'views_ui_container' => [
+      'variables' => ['children' => NULL, 'attributes' => []],
       'file' => 'views_ui.theme.inc',
-    ),
-  );
+    ],
+  ];
 }
 
 /**
@@ -141,16 +141,16 @@ function views_ui_preprocess_views_view(&$variables) {
 
   if (!empty($view->live_preview) && \Drupal::moduleHandler()->moduleExists('contextual')) {
     $view->setShowAdminLinks(FALSE);
-    foreach (array('title', 'header', 'exposed', 'rows', 'pager', 'more', 'footer', 'empty', 'attachment_after', 'attachment_before') as $section) {
+    foreach (['title', 'header', 'exposed', 'rows', 'pager', 'more', 'footer', 'empty', 'attachment_after', 'attachment_before'] as $section) {
       if (!empty($variables[$section])) {
-        $variables[$section] = array(
+        $variables[$section] = [
           '#theme' => 'views_ui_view_preview_section',
           '#view' => $view,
           '#section' => $section,
           '#content' => $variables[$section],
-          '#theme_wrappers' => array('views_ui_container'),
-          '#attributes' => array('class' => array('contextual-region')),
-        );
+          '#theme_wrappers' => ['views_ui_container'],
+          '#attributes' => ['class' => ['contextual-region']],
+        ];
       }
     }
   }
@@ -169,28 +169,28 @@ function views_ui_preprocess_views_view(&$variables) {
 function views_ui_view_preview_section_handler_links(ViewExecutable $view, $type, $title = FALSE) {
   $display = $view->display_handler->display;
   $handlers = $view->display_handler->getHandlers($type);
-  $links = array();
+  $links = [];
 
   $types = ViewExecutable::getHandlerTypes();
   if ($title) {
-    $links[$type . '-title'] = array(
+    $links[$type . '-title'] = [
       'title' => $types[$type]['title'],
-    );
+    ];
   }
 
   foreach ($handlers as $id => $handler) {
     $field_name = $handler->adminLabel(TRUE);
-    $links[$type . '-edit-' . $id] = array(
-      'title' => t('Edit @section', array('@section' => $field_name)),
+    $links[$type . '-edit-' . $id] = [
+      'title' => t('Edit @section', ['@section' => $field_name]),
       'url' => Url::fromRoute('views_ui.form_handler', ['js' => 'nojs', 'view' => $view->storage->id(), 'display_id' => $display['id'], 'type' => $type, 'id' => $id]),
-      'attributes' => array('class' => array('views-ajax-link')),
-    );
+      'attributes' => ['class' => ['views-ajax-link']],
+    ];
   }
-  $links[$type . '-add'] = array(
+  $links[$type . '-add'] = [
     'title' => t('Add new'),
     'url' => Url::fromRoute('views_ui.form_add_handler', ['js' => 'nojs', 'view' => $view->storage->id(), 'display_id' => $display['id'], 'type' => $type]),
-    'attributes' => array('class' => array('views-ajax-link')),
-  );
+    'attributes' => ['class' => ['views-ajax-link']],
+  ];
 
   return $links;
 }
@@ -200,13 +200,13 @@ function views_ui_view_preview_section_handler_links(ViewExecutable $view, $type
  */
 function views_ui_view_preview_section_display_category_links(ViewExecutable $view, $type, $title) {
   $display = $view->display_handler->display;
-  $links = array(
-    $type . '-edit' => array(
-      'title' => t('Edit @section', array('@section' => $title)),
+  $links = [
+    $type . '-edit' => [
+      'title' => t('Edit @section', ['@section' => $title]),
       'url' => Url::fromRoute('views_ui.form_display', ['js' => 'nojs', 'view' => $view->storage->id(), 'display_id' => $display['id'], 'type' => $type]),
-      'attributes' => array('class' => array('views-ajax-link')),
-    ),
-  );
+      'attributes' => ['class' => ['views-ajax-link']],
+    ],
+  ];
 
   return $links;
 }
@@ -215,7 +215,7 @@ function views_ui_view_preview_section_display_category_links(ViewExecutable $vi
  * Returns all contextual links for the main content part of the view.
  */
 function views_ui_view_preview_section_rows_links(ViewExecutable $view) {
-  $links = array();
+  $links = [];
   $links = array_merge($links, views_ui_view_preview_section_handler_links($view, 'filter', TRUE));
   $links = array_merge($links, views_ui_view_preview_section_handler_links($view, 'field', TRUE));
   $links = array_merge($links, views_ui_view_preview_section_handler_links($view, 'sort', TRUE));
@@ -233,10 +233,10 @@ function views_ui_views_plugins_display_alter(&$plugins) {
   // paths underneath "admin/structure/views/view/{$view->id()}" (i.e., paths
   // for editing and performing other contextual actions on the view).
   foreach ($plugins as &$display) {
-    $display['contextual links']['entity.view.edit_form'] = array(
+    $display['contextual links']['entity.view.edit_form'] = [
       'route_name' => 'entity.view.edit_form',
-      'route_parameters_names' => array('view' => 'id'),
-    );
+      'route_parameters_names' => ['view' => 'id'],
+    ];
   }
 }
 
@@ -247,7 +247,7 @@ function views_ui_contextual_links_view_alter(&$element, $items) {
   // Remove contextual links from being rendered, when so desired, such as
   // within a View preview.
   if (views_ui_contextual_links_suppress()) {
-    $element['#links'] = array();
+    $element['#links'] = [];
   }
   // Append the display ID to the Views UI edit links, so that clicking on the
   // contextual link takes you directly to the correct display tab on the edit
@@ -305,7 +305,7 @@ function views_ui_contextual_links_suppress_pop() {
  * node.views.inc as well.
  */
 function views_ui_views_analyze(ViewExecutable $view) {
-  $ret = array();
+  $ret = [];
   // Check for something other than the default display:
   if (count($view->displayHandlers) < 2) {
     $ret[] = Analyzer::formatMessage(t('This view has only a default display and therefore will not be placed anywhere on your site; perhaps you want to add a page or a block display.'), 'warning');
@@ -320,7 +320,7 @@ function views_ui_views_analyze(ViewExecutable $view) {
     if ($display->hasPath() && $path = $display->getOption('path')) {
       $normal_path = \Drupal::service('path.alias_manager')->getPathByAlias($path);
       if ($path != $normal_path) {
-        $ret[] = Analyzer::formatMessage(t('You have configured display %display with a path which is an path alias as well. This might lead to unwanted effects so better use an internal path.', array('%display' => $display->display['display_title'])), 'warning');
+        $ret[] = Analyzer::formatMessage(t('You have configured display %display with a path which is an path alias as well. This might lead to unwanted effects so better use an internal path.', ['%display' => $display->display['display_title']]), 'warning');
       }
     }
   }
diff --git a/core/modules/views_ui/views_ui.theme.inc b/core/modules/views_ui/views_ui.theme.inc
index 926f82a..e6ef875 100644
--- a/core/modules/views_ui/views_ui.theme.inc
+++ b/core/modules/views_ui/views_ui.theme.inc
@@ -89,7 +89,7 @@ function template_preprocess_views_ui_display_tab_bucket(&$variables) {
   $variables['overridden'] = isset($element['#overridden']) ? $element['#overridden'] : NULL;
   $variables['content'] = $element['#children'];
   $variables['title'] = $element['#title'];
-  $variables['actions'] = !empty($element['#actions']) ? $element['#actions'] : array();
+  $variables['actions'] = !empty($element['#actions']) ? $element['#actions'] : [];
 }
 
 /**
@@ -105,14 +105,14 @@ function template_preprocess_views_ui_build_group_filter_form(&$variables) {
   $form = $variables['form'];
 
   // Prepare table of options.
-  $header = array(
+  $header = [
     t('Default'),
     t('Weight'),
     t('Label'),
     t('Operator'),
     t('Value'),
     t('Operations'),
-  );
+  ];
 
   // Prepare default selectors.
   $form_state = new FormState();
@@ -120,15 +120,15 @@ function template_preprocess_views_ui_build_group_filter_form(&$variables) {
   $form['default_group_multiple'] = Checkboxes::processCheckboxes($form['default_group_multiple'], $form_state, $form);
   $form['default_group']['All']['#title'] = '';
 
-  $rows[] = array(
+  $rows[] = [
     ['data' => $form['default_group']['All']],
     '',
-    array(
+    [
       'data' => \Drupal::config('views.settings')->get('ui.exposed_filter_any_label') == 'old_any' ? t('&lt;Any&gt;') : t('- Any -'),
       'colspan' => 4,
-      'class' => array('class' => 'any-default-radios-row'),
-    ),
-  );
+      'class' => ['class' => 'any-default-radios-row'],
+    ],
+  ];
   // Remove the 'All' default_group form element because it's added to the
   // table row.
   unset($variables['form']['default_group']['All']);
@@ -161,32 +161,32 @@ function template_preprocess_views_ui_build_group_filter_form(&$variables) {
       '#title' => SafeMarkup::format('<span>@text</span>', ['@text' => t('Remove')]),
     ];
     $remove = [$form['group_items'][$group_id]['remove'], $link];
-    $data = array(
+    $data = [
       'default' => ['data' => $default],
       'weight' => ['data' => $form['group_items'][$group_id]['weight']],
       'title' => ['data' => $form['group_items'][$group_id]['title']],
       'operator' => ['data' => $form['group_items'][$group_id]['operator']],
       'value' => ['data' => $form['group_items'][$group_id]['value']],
       'remove' => ['data' => $remove],
-    );
-    $rows[] = array('data' => $data, 'id' => 'views-row-' . $group_id, 'class' => array('draggable'));
+    ];
+    $rows[] = ['data' => $data, 'id' => 'views-row-' . $group_id, 'class' => ['draggable']];
   }
-  $variables['table'] = array(
+  $variables['table'] = [
     '#type' => 'table',
     '#header' => $header,
     '#rows' => $rows,
-    '#attributes' => array(
-      'class' => array('views-filter-groups'),
+    '#attributes' => [
+      'class' => ['views-filter-groups'],
       'id' => 'views-filter-groups',
-    ),
-    '#tabledrag' => array(
-      array(
+    ],
+    '#tabledrag' => [
+      [
         'action' => 'order',
         'relationship' => 'sibling',
         'group' => 'weight',
-      )
-    ),
-  );
+      ]
+    ],
+  ];
 
   // Hide fields used in table.
   unset($variables['form']['group_items']);
@@ -203,7 +203,7 @@ function template_preprocess_views_ui_build_group_filter_form(&$variables) {
  */
 function template_preprocess_views_ui_rearrange_filter_form(&$variables) {
   $form = &$variables['form'];
-  $rows = $ungroupable_rows = array();
+  $rows = $ungroupable_rows = [];
   // Enable grouping only if > 1 group.
   $variables['grouping'] = count(array_keys($form['#group_options'])) > 1;
 
@@ -212,41 +212,41 @@ function template_preprocess_views_ui_rearrange_filter_form(&$variables) {
     if ($group_id !== 'ungroupable') {
       // Set up tabledrag so that it changes the group dropdown when rows are
       // dragged between groups.
-      $options = array(
+      $options = [
         'table_id' => 'views-rearrange-filters',
         'action' => 'match',
         'relationship' => 'sibling',
         'group' => 'views-group-select',
         'subgroup' => 'views-group-select-' . $group_id,
-      );
+      ];
       drupal_attach_tabledrag($form['override'], $options);
 
       // Title row, spanning all columns.
-      $row = array();
+      $row = [];
       // Add a cell to the first row, containing the group operator.
-      $row[] = array(
-        'class' => array('group', 'group-operator', 'container-inline'),
+      $row[] = [
+        'class' => ['group', 'group-operator', 'container-inline'],
         'data' => $form['filter_groups']['groups'][$group_id],
-        'rowspan' => max(array(2, count($contents) + 1)),
-      );
+        'rowspan' => max([2, count($contents) + 1]),
+      ];
       // Title.
-      $row[] = array(
-        'class' => array('group', 'group-title'),
-        'data' => array(
+      $row[] = [
+        'class' => ['group', 'group-title'],
+        'data' => [
           '#prefix' => '<span>',
           '#markup' => $form['#group_options'][$group_id],
           '#suffix' => '</span>',
-        ),
+        ],
         'colspan' => 4,
-      );
-      $rows[] = array(
-        'class' => array('views-group-title'),
+      ];
+      $rows[] = [
+        'class' => ['views-group-title'],
         'data' => $row,
         'id' => 'views-group-title-' . $group_id,
-      );
+      ];
 
       // Row which will only appear if the group has nothing in it.
-      $row = array();
+      $row = [];
       $class = 'group-' . (count($contents) ? 'populated' : 'empty');
       $instructions = '<span>' . t('No filters have been added.') . '</span> <span class="js-only">' . t('Drag to add filters.') . '</span>';
       // When JavaScript is enabled, the button for removing the group (if it's
@@ -255,63 +255,63 @@ function template_preprocess_views_ui_rearrange_filter_form(&$variables) {
       if (!empty($form['remove_groups'][$group_id]['#type']) && $form['remove_groups'][$group_id]['#type'] == 'submit') {
         $form['remove_groups'][$group_id]['#attributes']['class'][] = 'js-hide';
       }
-      $row[] = array(
+      $row[] = [
         'colspan' => 5,
-        'data' => array(
-          array('#markup' => $instructions),
+        'data' => [
+          ['#markup' => $instructions],
           $form['remove_groups'][$group_id],
-        ),
-      );
-      $rows[] = array(
-        'class' => array(
+        ],
+      ];
+      $rows[] = [
+        'class' => [
           'group-message',
           'group-' . $group_id . '-message',
           $class,
-        ),
+        ],
         'data' => $row,
         'id' => 'views-group-' . $group_id,
-      );
+      ];
     }
 
     foreach ($contents as $id) {
       if (isset($form['filters'][$id]['name'])) {
-        $row = array();
+        $row = [];
         $row[]['data'] = $form['filters'][$id]['name'];
-        $form['filters'][$id]['weight']['#attributes']['class'] = array('weight');
+        $form['filters'][$id]['weight']['#attributes']['class'] = ['weight'];
         $row[]['data'] = $form['filters'][$id]['weight'];
-        $form['filters'][$id]['group']['#attributes']['class'] = array('views-group-select views-group-select-' . $group_id);
+        $form['filters'][$id]['group']['#attributes']['class'] = ['views-group-select views-group-select-' . $group_id];
         $row[]['data'] = $form['filters'][$id]['group'];
         $form['filters'][$id]['removed']['#attributes']['class'][] = 'js-hide';
 
-        $remove_link = array(
+        $remove_link = [
           '#type' => 'link',
           '#url' => Url::fromRoute('<none>'),
-          '#title' => SafeMarkup::format('<span>@text</span>', array('@text' => t('Remove'))),
+          '#title' => SafeMarkup::format('<span>@text</span>', ['@text' => t('Remove')]),
           '#weight' => '1',
-          '#options' => array(
-            'attributes' => array(
+          '#options' => [
+            'attributes' => [
               'id' => 'views-remove-link-' . $id,
-              'class' => array(
+              'class' => [
                 'views-hidden',
                 'views-button-remove',
                 'views-groups-remove-link',
                 'views-remove-link',
-              ),
+              ],
               'alt' => t('Remove this item'),
               'title' => t('Remove this item'),
-            ),
-          ),
-        );
-        $row[]['data'] = array(
+            ],
+          ],
+        ];
+        $row[]['data'] = [
           $form['filters'][$id]['removed'],
           $remove_link,
-        );
+        ];
 
-        $row = array(
+        $row = [
           'data' => $row,
-          'class' => array('draggable'),
+          'class' => ['draggable'],
           'id' => 'views-row-' . $id,
-        );
+        ];
 
         if ($group_id !== 'ungroupable') {
           $rows[] = $row;
@@ -328,56 +328,56 @@ function template_preprocess_views_ui_rearrange_filter_form(&$variables) {
   }
 
   if (!empty($ungroupable_rows)) {
-    $header = array(
+    $header = [
       t('Ungroupable filters'),
       t('Weight'),
-      array(
+      [
         'data' => t('Group'),
-        'class' => array('views-hide-label'),
-      ),
-      array(
+        'class' => ['views-hide-label'],
+      ],
+      [
         'data' => t('Remove'),
-        'class' => array('views-hide-label'),
-      ),
-    );
-    $variables['ungroupable_table'] = array(
+        'class' => ['views-hide-label'],
+      ],
+    ];
+    $variables['ungroupable_table'] = [
       '#type' => 'table',
       '#header' => $header,
       '#rows' => $ungroupable_rows,
-      '#attributes' => array(
+      '#attributes' => [
         'id' => 'views-rearrange-filters-ungroupable',
-        'class' => array('arrange'),
-      ),
-      '#tabledrag' => array(
-        array(
+        'class' => ['arrange'],
+      ],
+      '#tabledrag' => [
+        [
           'action' => 'order',
           'relationship' => 'sibling',
           'group' => 'weight',
-        )
-      ),
-    );
+        ]
+      ],
+    ];
   }
 
   if (empty($rows)) {
-    $rows[] = array(array('data' => t('No fields available.'), 'colspan' => '2'));
+    $rows[] = [['data' => t('No fields available.'), 'colspan' => '2']];
   }
 
   // Set up tabledrag so that the weights are changed when rows are dragged.
-  $variables['table'] = array(
+  $variables['table'] = [
     '#type' => 'table',
     '#rows' => $rows,
-    '#attributes' => array(
+    '#attributes' => [
       'id' => 'views-rearrange-filters',
-      'class' => array('arrange'),
-    ),
-    '#tabledrag' => array(
-      array(
+      'class' => ['arrange'],
+    ],
+    '#tabledrag' => [
+      [
         'action' => 'order',
         'relationship' => 'sibling',
         'group' => 'weight',
-      ),
-    ),
-  );
+      ],
+    ],
+  ];
 
   // When JavaScript is enabled, the button for adding a new group should be
   // hidden, since it will be replaced by a link on the client side.
@@ -397,72 +397,72 @@ function template_preprocess_views_ui_rearrange_filter_form(&$variables) {
 function template_preprocess_views_ui_style_plugin_table(&$variables) {
   $form = $variables['form'];
 
-  $header = array(
+  $header = [
     t('Field'),
     t('Column'),
     t('Align'),
     t('Separator'),
-    array(
+    [
       'data' => t('Sortable'),
       'align' => 'center',
-    ),
-    array(
+    ],
+    [
       'data' => t('Default order'),
       'align' => 'center',
-    ),
-    array(
+    ],
+    [
       'data' => t('Default sort'),
       'align' => 'center',
-    ),
-    array(
+    ],
+    [
       'data' => t('Hide empty column'),
       'align' => 'center',
-    ),
-    array(
+    ],
+    [
       'data' => t('Responsive'),
       'align' => 'center',
-    ),
-  );
-  $rows = array();
+    ],
+  ];
+  $rows = [];
   foreach (Element::children($form['columns']) as $id) {
-    $row = array();
+    $row = [];
     $row[]['data'] = $form['info'][$id]['name'];
     $row[]['data'] = $form['columns'][$id];
     $row[]['data'] = $form['info'][$id]['align'];
     $row[]['data'] = $form['info'][$id]['separator'];
 
     if (!empty($form['info'][$id]['sortable'])) {
-      $row[] = array(
+      $row[] = [
         'data' => $form['info'][$id]['sortable'],
         'align' => 'center',
-      );
-      $row[] = array(
+      ];
+      $row[] = [
         'data' => $form['info'][$id]['default_sort_order'],
         'align' => 'center',
-      );
-      $row[] = array(
+      ];
+      $row[] = [
         'data' => $form['default'][$id],
         'align' => 'center',
-      );
+      ];
     }
     else {
       $row[] = '';
       $row[] = '';
       $row[] = '';
     }
-    $row[] = array(
+    $row[] = [
       'data' => $form['info'][$id]['empty_column'],
       'align' => 'center',
-    );
-    $row[] = array(
+    ];
+    $row[] = [
       'data' => $form['info'][$id]['responsive'],
       'align' => 'center',
-    );
+    ];
     $rows[] = $row;
   }
 
   // Add the special 'None' row.
-  $rows[] = array(array('data' => t('None'), 'colspan' => 6), array('align' => 'center', 'data' => $form['default'][-1]), array('colspan' => 2));
+  $rows[] = [['data' => t('None'), 'colspan' => 6], ['align' => 'center', 'data' => $form['default'][-1]], ['colspan' => 2]];
 
   // Unset elements from the form array that are used to build the table so that
   // they are not rendered twice.
@@ -470,12 +470,12 @@ function template_preprocess_views_ui_style_plugin_table(&$variables) {
   unset($form['info']);
   unset($form['columns']);
 
-  $variables['table'] = array(
+  $variables['table'] = [
     '#type' => 'table',
     '#theme' => 'table__views_ui_style_plugin_table',
     '#header' => $header,
     '#rows' => $rows,
-  );
+  ];
   $variables['form'] = $form;
 }
 
@@ -536,14 +536,14 @@ function template_preprocess_views_ui_view_preview_section(&$variables) {
   }
 
   if (isset($links)) {
-    $build = array(
+    $build = [
       '#theme' => 'links__contextual',
       '#links' => $links,
-      '#attributes' => array('class' => array('contextual-links')),
-      '#attached' => array(
-        'library' => array('contextual/drupal.contextual-links'),
-      ),
-    );
+      '#attributes' => ['class' => ['contextual-links']],
+      '#attached' => [
+        'library' => ['contextual/drupal.contextual-links'],
+      ],
+    ];
     $variables['links'] = $build;
   }
 }
@@ -552,5 +552,5 @@ function template_preprocess_views_ui_view_preview_section(&$variables) {
  * Implements hook_theme_suggestions_HOOK().
  */
 function views_ui_theme_suggestions_views_ui_view_preview_section(array $variables) {
-  return array('views_ui_view_preview_section__' . $variables['section']);
+  return ['views_ui_view_preview_section__' . $variables['section']];
 }
